Files
tvbox_collect/catvod/douer/index.js
T
2026-07-20 12:37:14 +00:00

10800 lines
4.3 MiB
Plaintext

globalThis.websiteBundle = function() {
return `
(function() {
const exports = {};
const module = { exports };
${"var mi=Object.create;var kt=Object.defineProperty,gi=Object.defineProperties,hi=Object.getOwnPropertyDescriptor,xi=Object.getOwnPropertyDescriptors,bi=Object.getOwnPropertyNames,Zt=Object.getOwnPropertySymbols,yi=Object.getPrototypeOf,Yn=Object.prototype.hasOwnProperty,zr=Object.prototype.propertyIsEnumerable;var $r=(e,t,n)=>t in e?kt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,k=(e,t)=>{for(var n in t||(t={}))Yn.call(t,n)&&$r(e,n,t[n]);if(Zt)for(var n of Zt(t))zr.call(t,n)&&$r(e,n,t[n]);return e},$=(e,t)=>gi(e,xi(t));var Wn=(e,t)=>{var n={};for(var o in e)Yn.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(e!=null&&Zt)for(var o of Zt(e))t.indexOf(o)<0&&zr.call(e,o)&&(n[o]=e[o]);return n};var Ge=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),vi=(e,t)=>{for(var n in t)kt(e,n,{get:t[n],enumerable:!0})},Hr=(e,t,n,o)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let a of bi(t))!Yn.call(e,a)&&a!==n&&kt(e,a,{get:()=>t[a],enumerable:!(o=hi(t,a))||o.enumerable});return e};var Z=(e,t,n)=>(n=e!=null?mi(yi(e)):{},Hr(t||!e||!e.__esModule?kt(n,\"default\",{value:e,enumerable:!0}):n,e)),wi=e=>Hr(kt({},\"__esModule\",{value:!0}),e);var ne=Ge((Hd,qr)=>{qr.exports=window.React});var Xn=Ge((qd,Gr)=>{Gr.exports=window.ReactDOM});var jr=Ge(Kn=>{\"use strict\";var Vr=Xn();Kn.createRoot=Vr.createRoot,Kn.hydrateRoot=Vr.hydrateRoot;var Gd});var Yr=Ge((jd,Ur)=>{Ur.exports=window.antd});var Xr=Ge((Ud,Wr)=>{Wr.exports=window.axios});var Zr=Ge((Yd,Kr)=>{Kr.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],o=0;o<e.rangeCount;o++)n.push(e.getRangeAt(o));switch(t.tagName.toUpperCase()){case\"INPUT\":case\"TEXTAREA\":t.blur();break;default:t=null;break}return e.removeAllRanges(),function(){e.type===\"Caret\"&&e.removeAllRanges(),e.rangeCount||n.forEach(function(a){e.addRange(a)}),t&&t.focus()}}});var Rr=Ge((Wd,Qr)=>{\"use strict\";var Ci=Zr(),Jr={\"text/plain\":\"Text\",\"text/html\":\"Url\",default:\"Text\"},Si=\"Copy to clipboard: #{key}, Enter\";function Oi(e){var t=(/mac os x/i.test(navigator.userAgent)?\"\\u2318\":\"Ctrl\")+\"+C\";return e.replace(/#{\\s*key\\s*}/g,t)}function ki(e,t){var n,o,a,i,l,u,f=!1;t||(t={}),n=t.debug||!1;try{a=Ci(),i=document.createRange(),l=document.getSelection(),u=document.createElement(\"span\"),u.textContent=e,u.ariaHidden=\"true\",u.style.all=\"unset\",u.style.position=\"fixed\",u.style.top=0,u.style.clip=\"rect(0, 0, 0, 0)\",u.style.whiteSpace=\"pre\",u.style.webkitUserSelect=\"text\",u.style.MozUserSelect=\"text\",u.style.msUserSelect=\"text\",u.style.userSelect=\"text\",u.addEventListener(\"copy\",function(m){if(m.stopPropagation(),t.format)if(m.preventDefault(),typeof m.clipboardData>\"u\"){n&&console.warn(\"unable to use e.clipboardData\"),n&&console.warn(\"trying IE specific stuff\"),window.clipboardData.clearData();var d=Jr[t.format]||Jr.default;window.clipboardData.setData(d,e)}else m.clipboardData.clearData(),m.clipboardData.setData(t.format,e);t.onCopy&&(m.preventDefault(),t.onCopy(m.clipboardData))}),document.body.appendChild(u),i.selectNodeContents(u),l.addRange(i);var c=document.execCommand(\"copy\");if(!c)throw new Error(\"copy command was unsuccessful\");f=!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),f=!0}catch(d){n&&console.error(\"unable to copy using clipboardData: \",d),n&&console.error(\"falling back to prompt\"),o=Oi(\"message\"in t?t.message:Si),window.prompt(o,e)}}finally{l&&(typeof l.removeRange==\"function\"?l.removeRange(i):l.removeAllRanges()),u&&document.body.removeChild(u),a()}return f}Qr.exports=ki});var lo=Ge((bu,en)=>{(function(){\"use strict\";var e={}.hasOwnProperty;function t(){for(var a=\"\",i=0;i<arguments.length;i++){var l=arguments[i];l&&(a=o(a,n(l)))}return a}function n(a){if(typeof a==\"string\"||typeof a==\"number\")return a;if(typeof a!=\"object\")return\"\";if(Array.isArray(a))return t.apply(null,a);if(a.toString!==Object.prototype.toString&&!a.toString.toString().includes(\"[native code]\"))return a.toString();var i=\"\";for(var l in a)e.call(a,l)&&a[l]&&(i=o(i,l));return i}function o(a,i){return i?a?a+\" \"+i:a+i:a}typeof en<\"u\"&&en.exports?(t.default=t,en.exports=t):typeof define==\"function\"&&typeof define.amd==\"object\"&&define.amd?define(\"classnames\",[],function(){return t}):window.classNames=t})()});var $d={};vi($d,{renderClient:()=>Bd});module.exports=wi($d);var r=Z(ne(),1),si=Z(jr(),1),s=Z(Yr(),1),bt=Z(Xr(),1),Mr=Z(Rr(),1);var eo=Z(ne()),Ti=(0,eo.createContext)({}),Jt=Ti;function J(){return J=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)({}).hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},J.apply(null,arguments)}function to(e){if(Array.isArray(e))return e}function no(e,t){var n=e==null?null:typeof Symbol<\"u\"&&e[Symbol.iterator]||e[\"@@iterator\"];if(n!=null){var o,a,i,l,u=[],f=!0,c=!1;try{if(i=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;f=!1}else for(;!(f=(o=i.call(n)).done)&&(u.push(o.value),u.length!==t);f=!0);}catch(m){c=!0,a=m}finally{try{if(!f&&n.return!=null&&(l=n.return(),Object(l)!==l))return}finally{if(c)throw a}}return u}}function Zn(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n<t;n++)o[n]=e[n];return o}function ro(e,t){if(e){if(typeof e==\"string\")return Zn(e,t);var n={}.toString.call(e).slice(8,-1);return n===\"Object\"&&e.constructor&&(n=e.constructor.name),n===\"Map\"||n===\"Set\"?Array.from(e):n===\"Arguments\"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Zn(e,t):void 0}}function oo(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}function Qt(e,t){return to(e)||no(e,t)||ro(e,t)||oo()}function De(e){\"@babel/helpers - typeof\";return De=typeof Symbol==\"function\"&&typeof Symbol.iterator==\"symbol\"?function(t){return typeof t}:function(t){return t&&typeof Symbol==\"function\"&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t},De(e)}function ao(e,t){if(De(e)!=\"object\"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var o=n.call(e,t||\"default\");if(De(o)!=\"object\")return o;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(t===\"string\"?String:Number)(e)}function io(e){var t=ao(e,\"string\");return De(t)==\"symbol\"?t:t+\"\"}function se(e,t,n){return(t=io(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function so(e,t){if(e==null)return{};var n={};for(var o in e)if({}.hasOwnProperty.call(e,o)){if(t.indexOf(o)!==-1)continue;n[o]=e[o]}return n}function Rt(e,t){if(e==null)return{};var n,o,a=so(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(o=0;o<i.length;o++)n=i[o],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var Xe=Z(ne()),ra=Z(lo());var le=Math.round;function Jn(e,t){let n=e.replace(/^[^(]*\\((.*)/,\"$1\").replace(/\\).*/,\"\").match(/\\d*\\.?\\d+%?/g)||[],o=n.map(a=>parseFloat(a));for(let a=0;a<3;a+=1)o[a]=t(o[a]||0,n[a]||\"\",a);return n[3]?o[3]=n[3].includes(\"%\")?o[3]/100:o[3]:o[3]=1,o}var uo=(e,t,n)=>n===0?e:e/100;function Tt(e,t){let n=t||255;return e>n?n:e<0?0:e}var Ye=class e{constructor(t){se(this,\"isValid\",!0),se(this,\"r\",0),se(this,\"g\",0),se(this,\"b\",0),se(this,\"a\",1),se(this,\"_h\",void 0),se(this,\"_s\",void 0),se(this,\"_l\",void 0),se(this,\"_v\",void 0),se(this,\"_max\",void 0),se(this,\"_min\",void 0),se(this,\"_brightness\",void 0);function n(o){return o[0]in t&&o[1]in t&&o[2]in t}if(t)if(typeof t==\"string\"){let a=function(i){return o.startsWith(i)},o=t.trim();/^#?[A-F\\d]{3,8}$/i.test(o)?this.fromHexString(o):a(\"rgb\")?this.fromRgbString(o):a(\"hsl\")?this.fromHslString(o):(a(\"hsv\")||a(\"hsb\"))&&this.fromHsvString(o)}else if(t instanceof e)this.r=t.r,this.g=t.g,this.b=t.b,this.a=t.a,this._h=t._h,this._s=t._s,this._l=t._l,this._v=t._v;else if(n(\"rgb\"))this.r=Tt(t.r),this.g=Tt(t.g),this.b=Tt(t.b),this.a=typeof t.a==\"number\"?Tt(t.a,1):1;else if(n(\"hsl\"))this.fromHsl(t);else if(n(\"hsv\"))this.fromHsv(t);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(t))}setR(t){return this._sc(\"r\",t)}setG(t){return this._sc(\"g\",t)}setB(t){return this._sc(\"b\",t)}setA(t){return this._sc(\"a\",t,1)}setHue(t){let n=this.toHsv();return n.h=t,this._c(n)}getLuminance(){function t(i){let l=i/255;return l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4)}let n=t(this.r),o=t(this.g),a=t(this.b);return .2126*n+.7152*o+.0722*a}getHue(){if(typeof this._h>\"u\"){let t=this.getMax()-this.getMin();t===0?this._h=0:this._h=le(60*(this.r===this.getMax()?(this.g-this.b)/t+(this.g<this.b?6:0):this.g===this.getMax()?(this.b-this.r)/t+2:(this.r-this.g)/t+4))}return this._h}getSaturation(){if(typeof this._s>\"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:le(i(\"r\")),g:le(i(\"g\")),b:le(i(\"b\")),a:le(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=>le((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=le(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=le(this.getSaturation()*100),o=le(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(t,n,o){let a=this.clone();return a[t]=Tt(n,o),a}_c(t){return new this.constructor(t)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(t){let n=t.replace(\"#\",\"\");function o(a,i){return parseInt(n[a]+n[i||a],16)}n.length<6?(this.r=o(0),this.g=o(1),this.b=o(2),this.a=n[3]?o(3)/255:1):(this.r=o(0,1),this.g=o(2,3),this.b=o(4,5),this.a=n[6]?o(6,7)/255:1)}fromHsl({h:t,s:n,l:o,a}){if(this._h=t%360,this._s=n,this._l=o,this.a=typeof a==\"number\"?a:1,n<=0){let g=le(o*255);this.r=g,this.g=g,this.b=g}let i=0,l=0,u=0,f=t/60,c=(1-Math.abs(2*o-1))*n,m=c*(1-Math.abs(f%2-1));f>=0&&f<1?(i=c,l=m):f>=1&&f<2?(i=m,l=c):f>=2&&f<3?(l=c,u=m):f>=3&&f<4?(l=m,u=c):f>=4&&f<5?(i=m,u=c):f>=5&&f<6&&(i=c,u=m);let d=o-c/2;this.r=le((i+d)*255),this.g=le((l+d)*255),this.b=le((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=le(o*255);if(this.r=i,this.g=i,this.b=i,n<=0)return;let l=t/60,u=Math.floor(l),f=l-u,c=le(o*(1-n)*255),m=le(o*(1-n*f)*255),d=le(o*(1-n*(1-f))*255);switch(u){case 0:this.g=d,this.b=c;break;case 1:this.r=m,this.b=c;break;case 2:this.r=c,this.b=d;break;case 3:this.r=c,this.g=m;break;case 4:this.r=d,this.g=c;break;case 5:default:this.g=c,this.b=m;break}}fromHsvString(t){let n=Jn(t,uo);this.fromHsv({h:n[0],s:n[1],v:n[2],a:n[3]})}fromHslString(t){let n=Jn(t,uo);this.fromHsl({h:n[0],s:n[1],l:n[2],a:n[3]})}fromRgbString(t){let n=Jn(t,(o,a)=>a.includes(\"%\")?le(o/100*255):o);this.r=n[0],this.g=n[1],this.b=n[2],this.a=n[3]}};var tn=2,co=.16,Fi=.05,Ei=.05,Ni=.15,go=5,ho=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)-tn*t:Math.round(e.h)+tn*t:o=n?Math.round(e.h)+tn*t:Math.round(e.h)-tn*t,o<0?o+=360:o>=360&&(o-=360),o}function po(e,t,n){if(e.h===0&&e.s===0)return e.s;var o;return n?o=e.s-co*t:t===ho?o=e.s+co:o=e.s+Fi*t,o>1&&(o=1),n&&t===go&&o>.1&&(o=.1),o<.06&&(o=.06),Math.round(o*100)/100}function mo(e,t,n){var o;return n?o=e.v+Ei*t:o=e.v-Ni*t,o=Math.max(0,Math.min(1,o)),Math.round(o*100)/100}function nn(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<=ho;u+=1){var f=new Ye({h:fo(a,u),s:po(a,u),v:mo(a,u)});n.push(f)}return t.theme===\"dark\"?Ii.map(function(c){var m=c.index,d=c.amount;return new Ye(t.backgroundColor||\"#141414\").mix(n[m],d).toHexString()}):n.map(function(c){return c.toHexString()})}var xo=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];xo.primary=xo[5];var bo=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];bo.primary=bo[5];var yo=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];yo.primary=yo[5];var vo=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];vo.primary=vo[5];var wo=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];wo.primary=wo[5];var Co=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];Co.primary=Co[5];var So=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];So.primary=So[5];var Oo=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Oo.primary=Oo[5];var rn=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];rn.primary=rn[5];var ko=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];ko.primary=ko[5];var To=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];To.primary=To[5];var Fo=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];Fo.primary=Fo[5];var Eo=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];Eo.primary=Eo[5];var No=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];No.primary=No[5];var Io=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];Io.primary=Io[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 Ho=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];Ho.primary=Ho[5];var qo=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];qo.primary=qo[5];function Go(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,o)}return n}function be(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?Go(Object(n),!0).forEach(function(o){se(e,o,n[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Go(Object(n)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(n,o))})}return e}var ta=Z(ne());function Qn(){return!!(typeof window<\"u\"&&window.document&&window.document.createElement)}function Rn(e,t){if(!e)return!1;if(e.contains)return e.contains(t);for(var n=t;n;){if(n===e)return!0;n=n.parentNode}return!1}var Vo=\"data-rc-order\",jo=\"data-rc-priority\",Di=\"rc-util-key\",er=new Map;function Uo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.mark;return t?t.startsWith(\"data-\")?t:\"data-\".concat(t):Di}function tr(e){if(e.attachTo)return e.attachTo;var t=document.querySelector(\"head\");return t||document.body}function Ai(e){return e===\"queue\"?\"prependQueue\":e?\"prepend\":\"append\"}function nr(e){return Array.from((er.get(e)||e).children).filter(function(t){return t.tagName===\"STYLE\"})}function Yo(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!Qn())return null;var n=t.csp,o=t.prepend,a=t.priority,i=a===void 0?0:a,l=Ai(o),u=l===\"prependQueue\",f=document.createElement(\"style\");f.setAttribute(Vo,l),u&&i&&f.setAttribute(jo,\"\".concat(i)),n!=null&&n.nonce&&(f.nonce=n==null?void 0:n.nonce),f.innerHTML=e;var c=tr(t),m=c.firstChild;if(o){if(u){var d=(t.styles||nr(c)).filter(function(g){if(![\"prepend\",\"prependQueue\"].includes(g.getAttribute(Vo)))return!1;var p=Number(g.getAttribute(jo)||0);return i>=p});if(d.length)return c.insertBefore(f,d[d.length-1].nextSibling),f}c.insertBefore(f,m)}else c.appendChild(f);return f}function _i(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=tr(t);return(t.styles||nr(n)).find(function(o){return o.getAttribute(Uo(t))===e})}function Mi(e,t){var n=er.get(e);if(!n||!Rn(document,n)){var o=Yo(\"\",t),a=o.parentNode;er.set(e,a),e.removeChild(o)}}function Wo(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=tr(n),a=nr(o),i=be(be({},n),{},{styles:a});Mi(o,i);var l=_i(t,i);if(l){var u,f;if((u=i.csp)!==null&&u!==void 0&&u.nonce&&l.nonce!==((f=i.csp)===null||f===void 0?void 0:f.nonce)){var c;l.nonce=(c=i.csp)===null||c===void 0?void 0:c.nonce}return l.innerHTML!==e&&(l.innerHTML=e),l}var m=Yo(e,i);return m.setAttribute(Uo(i),t),m}function Xo(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}function Pi(e){return Xo(e)instanceof ShadowRoot}function Ko(e){return Pi(e)?Xo(e):null}var rr={},Li=[],Bi=function(t){Li.push(t)};function $i(e,t){if(0)var n}function zi(e,t){if(0)var n}function Hi(){rr={}}function Zo(e,t,n){!t&&!rr[n]&&(e(!1,n),rr[n]=!0)}function on(e,t){Zo($i,e,t)}function qi(e,t){Zo(zi,e,t)}on.preMessage=Bi;on.resetWarned=Hi;on.noteOnce=qi;var Jo=on;var We=Z(ne());function Gi(e){return e.replace(/-(.)/g,function(t,n){return n.toUpperCase()})}function Ro(e,t){Jo(e,\"[@ant-design/icons] \".concat(t))}function or(e){return De(e)===\"object\"&&typeof e.name==\"string\"&&typeof e.theme==\"string\"&&(De(e.icon)===\"object\"||typeof e.icon==\"function\")}function Qo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(e).reduce(function(t,n){var o=e[n];switch(n){case\"class\":t.className=o,delete t.class;break;default:delete t[n],t[Gi(n)]=o}return t},{})}function an(e,t,n){return n?We.default.createElement(e.tag,be(be({key:t},Qo(e.attrs)),n),(e.children||[]).map(function(o,a){return an(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))})):We.default.createElement(e.tag,be({key:t},Qo(e.attrs)),(e.children||[]).map(function(o,a){return an(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))}))}function ar(e){return nn(e)[0]}function sn(e){return e?Array.isArray(e)?e:[e]:[]}var Vi=\"\\n.anticon {\\n display: inline-flex;\\n align-items: center;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\",ea=function(t){var n=(0,We.useContext)(Jt),o=n.csp,a=n.prefixCls,i=n.layer,l=Vi;a&&(l=l.replace(/anticon/g,a)),i&&(l=\"@layer \".concat(i,\" {\\n\").concat(l,\"\\n}\")),(0,We.useEffect)(function(){var u=t.current,f=Ko(u);Wo(l,\"@ant-design-icons\",{prepend:!i,csp:o,attachTo:f})},[])};var ji=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],Ft={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function Ui(e){var t=e.primaryColor,n=e.secondaryColor;Ft.primaryColor=t,Ft.secondaryColor=n||ar(t),Ft.calculated=!!n}function Yi(){return be({},Ft)}var ln=function(t){var n=t.icon,o=t.className,a=t.onClick,i=t.style,l=t.primaryColor,u=t.secondaryColor,f=Rt(t,ji),c=ta.useRef(),m=Ft;if(l&&(m={primaryColor:l,secondaryColor:u||ar(l)}),ea(c),Ro(or(n),\"icon should be icon definiton, but got \".concat(n)),!or(n))return null;var d=n;return d&&typeof d.icon==\"function\"&&(d=be(be({},d),{},{icon:d.icon(m.primaryColor,m.secondaryColor)})),an(d.icon,\"svg-\".concat(d.name),be(be({className:o,onClick:a,style:i,\"data-icon\":d.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},f),{},{ref:c}))};ln.displayName=\"IconReact\";ln.getTwoToneColors=Yi;ln.setTwoToneColors=Ui;var Et=ln;function ir(e){var t=sn(e),n=Qt(t,2),o=n[0],a=n[1];return Et.setTwoToneColors({primaryColor:o,secondaryColor:a})}function na(){var e=Et.getTwoToneColors();return e.calculated?[e.primaryColor,e.secondaryColor]:e.primaryColor}var Wi=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];ir(rn.primary);var dn=Xe.forwardRef(function(e,t){var n=e.className,o=e.icon,a=e.spin,i=e.rotate,l=e.tabIndex,u=e.onClick,f=e.twoToneColor,c=Rt(e,Wi),m=Xe.useContext(Jt),d=m.prefixCls,g=d===void 0?\"anticon\":d,p=m.rootClassName,v=(0,ra.default)(p,g,se(se({},\"\".concat(g,\"-\").concat(o.name),!!o.name),\"\".concat(g,\"-spin\"),!!a||o.name===\"loading\"),n),x=l;x===void 0&&u&&(x=-1);var O=i?{msTransform:\"rotate(\".concat(i,\"deg)\"),transform:\"rotate(\".concat(i,\"deg)\")}:void 0,N=sn(f),b=Qt(N,2),I=b[0],T=b[1];return Xe.createElement(\"span\",J({role:\"img\",\"aria-label\":o.name},c,{ref:t,tabIndex:x,onClick:u,className:v}),Xe.createElement(Et,{icon:o,primaryColor:I,secondaryColor:T,style:O}))});dn.displayName=\"AntdIcon\";dn.getTwoToneColor=na;dn.setTwoToneColor=ir;var ee=dn;var un=Z(ne());var Xi={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"check-circle\",theme:\"outlined\"},oa=Xi;var Ki=function(t,n){return un.createElement(ee,J({},t,{ref:n,icon:oa}))},Zi=un.forwardRef(Ki),cn=Zi;var fn=Z(ne());var Ji={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z\"}}]},name:\"copy\",theme:\"outlined\"},aa=Ji;var Qi=function(t,n){return fn.createElement(ee,J({},t,{ref:n,icon:aa}))},Ri=fn.forwardRef(Qi),sr=Ri;var pn=Z(ne());var es={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z\"}}]},name:\"edit\",theme:\"outlined\"},ia=es;var ts=function(t,n){return pn.createElement(ee,J({},t,{ref:n,icon:ia}))},ns=pn.forwardRef(ts),ct=ns;var mn=Z(ne());var rs={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM770.87 199.13l-52.2-52.2a8.01 8.01 0 014.7-13.6l179.4-21c5.1-.6 9.5 3.7 8.9 8.9l-21 179.4c-.8 6.6-8.9 9.4-13.6 4.7l-52.4-52.4-256.2 256.2a8.03 8.03 0 01-11.3 0l-42.4-42.4a8.03 8.03 0 010-11.3l256.1-256.3z\"}}]},name:\"export\",theme:\"outlined\"},sa=rs;var os=function(t,n){return mn.createElement(ee,J({},t,{ref:n,icon:sa}))},as=mn.forwardRef(os),lr=as;var gn=Z(ne());var is={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z\"}}]},name:\"holder\",theme:\"outlined\"},la=is;var ss=function(t,n){return gn.createElement(ee,J({},t,{ref:n,icon:la}))},ls=gn.forwardRef(ss),dr=ls;var hn=Z(ne());var ds={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM653.3 424.6l52.2 52.2a8.01 8.01 0 01-4.7 13.6l-179.4 21c-5.1.6-9.5-3.7-8.9-8.9l21-179.4c.8-6.6 8.9-9.4 13.6-4.7l52.4 52.4 256.2-256.2c3.1-3.1 8.2-3.1 11.3 0l42.4 42.4c3.1 3.1 3.1 8.2 0 11.3L653.3 424.6z\"}}]},name:\"import\",theme:\"outlined\"},da=ds;var us=function(t,n){return hn.createElement(ee,J({},t,{ref:n,icon:da}))},cs=hn.forwardRef(us),Ke=cs;var xn=Z(ne());var fs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M574 665.4a8.03 8.03 0 00-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 00-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 000 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 000 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 00-11.3 0L372.3 598.7a8.03 8.03 0 000 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z\"}}]},name:\"link\",theme:\"outlined\"},ua=fs;var ps=function(t,n){return xn.createElement(ee,J({},t,{ref:n,icon:ua}))},ms=xn.forwardRef(ps),ur=ms;var bn=Z(ne());var gs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"minus-circle\",theme:\"outlined\"},ca=gs;var hs=function(t,n){return bn.createElement(ee,J({},t,{ref:n,icon:ca}))},xs=bn.forwardRef(hs),Ze=xs;var yn=Z(ne());var bs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z\"}},{tag:\"path\",attrs:{d:\"M192 474h672q8 0 8 8v60q0 8-8 8H160q-8 0-8-8v-60q0-8 8-8z\"}}]},name:\"plus\",theme:\"outlined\"},fa=bs;var ys=function(t,n){return yn.createElement(ee,J({},t,{ref:n,icon:fa}))},vs=yn.forwardRef(ys),ve=vs;var vn=Z(ne());var ws={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z\"}}]},name:\"setting\",theme:\"outlined\"},pa=ws;var Cs=function(t,n){return vn.createElement(ee,J({},t,{ref:n,icon:pa}))},Ss=vn.forwardRef(Cs),Nt=Ss;var wn=Z(ne());var Os={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z\"}}]},name:\"user\",theme:\"outlined\"},ma=Os;var ks=function(t,n){return wn.createElement(ee,J({},t,{ref:n,icon:ma}))},Ts=wn.forwardRef(ks),cr=Ts;var h=Z(ne()),nt=Z(Xn());var re=Z(ne());function ha(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,re.useMemo)(()=>o=>{t.forEach(a=>a(o))},t)}var It=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 Cn(e){return\"nodeType\"in e}function me(e){var t,n;return e?Je(e)?e:Cn(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function Sn(e){let{Document:t}=me(e);return e instanceof t}function ft(e){return Je(e)?!1:e instanceof me(e).HTMLElement}function pr(e){return e instanceof me(e).SVGElement}function Qe(e){return e?Je(e)?e.document:Cn(e)?Sn(e)?e:ft(e)||pr(e)?e.ownerDocument:document:document:document}var we=It?re.useLayoutEffect:re.useEffect;function On(e){let t=(0,re.useRef)(e);return we(()=>{t.current=e}),(0,re.useCallback)(function(){for(var n=arguments.length,o=new Array(n),a=0;a<n;a++)o[a]=arguments[a];return t.current==null?void 0:t.current(...o)},[])}function xa(){let e=(0,re.useRef)(null),t=(0,re.useCallback)((o,a)=>{e.current=setInterval(o,a)},[]),n=(0,re.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,re.useRef)(e);return we(()=>{n.current!==e&&(n.current=e)},t),n}function mt(e,t){let n=(0,re.useRef)();return(0,re.useMemo)(()=>{let o=e(n.current);return n.current=o,o},[...t])}function Dt(e){let t=On(e),n=(0,re.useRef)(null),o=(0,re.useCallback)(a=>{a!==n.current&&(t==null||t(a,n.current)),n.current=a},[]);return[n,o]}function kn(e){let t=(0,re.useRef)();return(0,re.useEffect)(()=>{t.current=e},[e]),t.current}var fr={};function Re(e,t){return(0,re.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<n;a++)o[a-1]=arguments[a];return o.reduce((i,l)=>{let u=Object.entries(l);for(let[f,c]of u){let m=i[f];m!=null&&(i[f]=m+e*c)}return i},k({},t))}}var et=ba(1),gt=ba(-1);function Fs(e){return\"clientX\"in e&&\"clientY\"in e}function At(e){if(!e)return!1;let{KeyboardEvent:t}=me(e.target);return t&&e instanceof t}function Es(e){if(!e)return!1;let{TouchEvent:t}=me(e.target);return t&&e instanceof t}function _t(e){if(Es(e)){if(e.touches&&e.touches.length){let{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}else if(e.changedTouches&&e.changedTouches.length){let{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return Fs(e)?{x:e.clientX,y:e.clientY}:null}var Ve=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return\"translate3d(\"+(t?Math.round(t):0)+\"px, \"+(n?Math.round(n):0)+\"px, 0)\"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return\"scaleX(\"+t+\") scaleY(\"+n+\")\"}},Transform:{toString(e){if(e)return[Ve.Translate.toString(e),Ve.Scale.toString(e)].join(\" \")}},Transition:{toString(e){let{property:t,duration:n,easing:o}=e;return t+\" \"+n+\"ms \"+o}}}),ga=\"a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]\";function ya(e){return e.matches(ga)?e:e.querySelector(ga)}var tt=Z(ne()),Ns={display:\"none\"};function va(e){let{id:t,value:n}=e;return tt.default.createElement(\"div\",{id:t,style:Ns},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,h.createContext)(null);function Is(e){let t=(0,h.useContext)(_a);(0,h.useEffect)(()=>{if(!t)throw new Error(\"useDndMonitor must be used within a children of <DndContext>\");return t(e)},[e,t])}function Ds(){let[e]=(0,h.useState)(()=>new Set),t=(0,h.useCallback)(o=>(e.add(o),()=>e.delete(o)),[e]);return[(0,h.useCallback)(o=>{let{type:a,event:i}=o;e.forEach(l=>{var u;return(u=l[a])==null?void 0:u.call(l,i)})},[e]),t]}var As={draggable:\"\\n To pick up a draggable item, press the space bar.\\n While dragging, use the arrow keys to move the item.\\n Press space again to drop the item in its new position, or press escape to cancel.\\n \"},_s={onDragStart(e){let{active:t}=e;return\"Picked up draggable item \"+t.id+\".\"},onDragOver(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was moved over droppable area \"+n.id+\".\":\"Draggable item \"+t.id+\" is no longer over a droppable area.\"},onDragEnd(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was dropped over droppable area \"+n.id:\"Draggable item \"+t.id+\" was dropped.\"},onDragCancel(e){let{active:t}=e;return\"Dragging was cancelled. Draggable item \"+t.id+\" was dropped.\"}};function Ms(e){let{announcements:t=_s,container:n,hiddenTextDescribedById:o,screenReaderInstructions:a=As}=e,{announce:i,announcement:l}=Ca(),u=Re(\"DndLiveRegion\"),[f,c]=(0,h.useState)(!1);if((0,h.useEffect)(()=>{c(!0)},[]),Is((0,h.useMemo)(()=>({onDragStart(d){let{active:g}=d;i(t.onDragStart({active:g}))},onDragMove(d){let{active:g,over:p}=d;t.onDragMove&&i(t.onDragMove({active:g,over:p}))},onDragOver(d){let{active:g,over:p}=d;i(t.onDragOver({active:g,over:p}))},onDragEnd(d){let{active:g,over:p}=d;i(t.onDragEnd({active:g,over:p}))},onDragCancel(d){let{active:g,over:p}=d;i(t.onDragCancel({active:g,over:p}))}}),[i,t])),!f)return null;let m=h.default.createElement(h.default.Fragment,null,h.default.createElement(va,{id:o,value:a.draggable}),h.default.createElement(wa,{id:u,announcement:l}));return n?(0,nt.createPortal)(m,n):m}var ie;(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\"})(ie||(ie={}));function Fn(){}function $t(e,t){return(0,h.useMemo)(()=>({sensor:e,options:t!=null?t:{}}),[e,t])}function wr(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,h.useMemo)(()=>[...t].filter(o=>o!=null),[...t])}var Te=Object.freeze({x:0,y:0});function Ps(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 Ls(e,t){let n=Math.max(t.top,e.top),o=Math.max(t.left,e.left),a=Math.min(t.left+t.width,e.left+e.width),i=Math.min(t.top+t.height,e.top+e.height),l=a-o,u=i-n;if(o<a&&n<i){let f=t.width*t.height,c=e.width*e.height,m=l*u,d=m/(f+c-m);return Number(d.toFixed(4))}return 0}var Bs=e=>{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 f=Ls(u,t);f>0&&a.push({id:l,data:{droppableContainer:i,value:f}})}}return a.sort(Ps)};function $s(e,t,n){return $(k({},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 zs(e){return function(n){for(var o=arguments.length,a=new Array(o>1?o-1:0),i=1;i<o;i++)a[i-1]=arguments[i];return a.reduce((l,u)=>$(k({},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}),k({},n))}}var Hs=zs(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 Gs(e,t,n){let o=qs(t);if(!o)return e;let{scaleX:a,scaleY:i,x:l,y:u}=o,f=e.left-l-(1-a)*parseFloat(n),c=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:c,right:f+m,bottom:c+d,left:f}}var Vs={ignoreTransform:!1};function it(e,t){t===void 0&&(t=Vs);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:c,transformOrigin:m}=me(e).getComputedStyle(e);c&&(n=Gs(n,c,m))}let{top:o,left:a,width:i,height:l,bottom:u,right:f}=n;return{top:o,left:a,width:i,height:l,bottom:u,right:f}}function Sa(e){return it(e,{ignoreTransform:!0})}function js(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function Us(e,t){return t===void 0&&(t=me(e).getComputedStyle(e)),t.position===\"fixed\"}function Ys(e,t){t===void 0&&(t=me(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(Sn(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=me(e).getComputedStyle(a);return a!==e&&Ys(a,i)&&n.push(a),Us(a,i)?n:o(a.parentNode)}return e?o(e):n}function La(e){let[t]=In(e,1);return t!=null?t:null}function mr(e){return!It||!e?null:Je(e)?e:Cn(e)?Sn(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 xr(e){return{x:Ba(e),y:$a(e)}}var de;(function(e){e[e.Forward=1]=\"Forward\",e[e.Backward=-1]=\"Backward\"})(de||(de={}));function za(e){return!It||!e?!1:e===document.scrollingElement}function Ha(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 Ws={x:.2,y:.2};function Xs(e,t,n,o,a){let{top:i,left:l,right:u,bottom:f}=n;o===void 0&&(o=10),a===void 0&&(a=Ws);let{isTop:c,isBottom:m,isLeft:d,isRight:g}=Ha(e),p={x:0,y:0},v={x:0,y:0},x={height:t.height*a.y,width:t.width*a.x};return!c&&i<=t.top+x.height?(p.y=de.Backward,v.y=o*Math.abs((t.top+x.height-i)/x.height)):!m&&f>=t.bottom-x.height&&(p.y=de.Forward,v.y=o*Math.abs((t.bottom-x.height-f)/x.height)),!g&&u>=t.right-x.width?(p.x=de.Forward,v.x=o*Math.abs((t.right-x.width-u)/x.width)):!d&&l<=t.left+x.width&&(p.x=de.Backward,v.x=o*Math.abs((t.left+x.width-l)/x.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 qa(e){return e.reduce((t,n)=>et(t,xr(n)),Te)}function Zs(e){return e.reduce((t,n)=>t+Ba(n),0)}function Js(e){return e.reduce((t,n)=>t+$a(n),0)}function Qs(e,t){if(t===void 0&&(t=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 Rs=[[\"x\",[\"left\",\"right\"],Zs],[\"y\",[\"top\",\"bottom\"],Js]],Pt=class{constructor(t,n){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let o=In(n),a=qa(o);this.rect=k({},t),this.width=t.width,this.height=t.height;for(let[i,l,u]of Rs)for(let f of l)Object.defineProperty(this,f,{get:()=>{let c=u(o),m=a[i]-c;return this.rect[f]+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 el(e){let{EventTarget:t}=me(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 Ce;(function(e){e.Click=\"click\",e.DragStart=\"dragstart\",e.Keydown=\"keydown\",e.ContextMenu=\"contextmenu\",e.Resize=\"resize\",e.SelectionChange=\"selectionchange\",e.VisibilityChange=\"visibilitychange\"})(Ce||(Ce={}));function Oa(e){e.preventDefault()}function tl(e){e.stopPropagation()}var V;(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\"})(V||(V={}));var Ga={start:[V.Space,V.Enter],cancel:[V.Esc],end:[V.Space,V.Enter,V.Tab]},nl=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case V.Right:return $(k({},n),{x:n.x+25});case V.Left:return $(k({},n),{x:n.x-25});case V.Down:return $(k({},n),{y:n.y+25});case V.Up:return $(k({},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(me(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(Ce.Resize,this.handleCancel),this.windowListeners.add(Ce.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(Ce.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:t,onStart:n}=this.props,o=t.node.current;o&&Qs(o),n(Te)}handleKeyDown(t){if(At(t)){let{active:n,context:o,options:a}=this.props,{keyboardCodes:i=Ga,coordinateGetter:l=nl,scrollBehavior:u=\"smooth\"}=a,{code:f}=t;if(i.end.includes(f)){this.handleEnd(t);return}if(i.cancel.includes(f)){this.handleCancel(t);return}let{collisionRect:c}=o.current,m=c?{x:c.left,y:c.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 x of v){let O=t.code,{isTop:N,isRight:b,isLeft:I,isBottom:T,maxScroll:D,minScroll:_}=Ha(x),M=Ks(x),z={x:Math.min(O===V.Right?M.right-M.width/2:M.right,Math.max(O===V.Right?M.left:M.left+M.width/2,d.x)),y:Math.min(O===V.Down?M.bottom-M.height/2:M.bottom,Math.max(O===V.Down?M.top:M.top+M.height/2,d.y))},j=O===V.Right&&!b||O===V.Left&&!I,w=O===V.Down&&!T||O===V.Up&&!N;if(j&&z.x!==d.x){let S=x.scrollLeft+g.x,G=O===V.Right&&S<=D.x||O===V.Left&&S>=_.x;if(G&&!g.y){x.scrollTo({left:S,behavior:u});return}G?p.x=x.scrollLeft-S:p.x=O===V.Right?x.scrollLeft-D.x:x.scrollLeft-_.x,p.x&&x.scrollBy({left:-p.x,behavior:u});break}else if(w&&z.y!==d.y){let S=x.scrollTop+g.y,G=O===V.Down&&S<=D.y||O===V.Up&&S>=_.y;if(G&&!g.x){x.scrollTo({top:S,behavior:u});return}G?p.y=x.scrollTop-S:p.y=O===V.Down?x.scrollTop-D.y:x.scrollTop-_.y,p.y&&x.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=Ga,onActivation:a}=t,{active:i}=n,{code:l}=e.nativeEvent;if(o.start.includes(l)){let u=i.activatorNode.current;return u&&e.target!==u?!1:(e.preventDefault(),a==null||a({event:e.nativeEvent}),!0)}return!1}}];function ka(e){return!!(e&&\"distance\"in e)}function Ta(e){return!!(e&&\"delay\"in e)}var Lt=class{constructor(t,n,o){var a;o===void 0&&(o=el(t.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=t,this.events=n;let{event:i}=t,{target:l}=i;this.props=t,this.events=n,this.document=Qe(l),this.documentListeners=new rt(this.document),this.listeners=new rt(o),this.windowListeners=new rt(me(l)),this.initialCoordinates=(a=_t(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(Ce.Resize,this.handleCancel),this.windowListeners.add(Ce.DragStart,Oa),this.windowListeners.add(Ce.VisibilityChange,this.handleCancel),this.windowListeners.add(Ce.ContextMenu,Oa),this.documentListeners.add(Ce.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(Ce.Click,tl,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(Ce.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 f=(n=_t(t))!=null?n:Te,c=gt(a,f);if(!o&&u){if(ka(u)){if(u.tolerance!=null&&gr(c,u.tolerance))return this.handleCancel();if(gr(c,u.distance))return this.handleStart()}if(Ta(u)&&gr(c,u.tolerance))return this.handleCancel();this.handlePending(u,c);return}t.cancelable&&t.preventDefault(),l(f)}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===V.Esc&&this.handleCancel()}removeTextSelection(){var t;(t=this.document.getSelection())==null||t.removeAllRanges()}},rl={cancel:{name:\"pointercancel\"},move:{name:\"pointermove\"},end:{name:\"pointerup\"}},at=class extends Lt{constructor(t){let{event:n}=t,o=Qe(n.target);super(t,rl,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 ol={move:{name:\"mousemove\"},end:{name:\"mouseup\"}},br;(function(e){e[e.RightClick=2]=\"RightClick\"})(br||(br={}));var yr=class extends Lt{constructor(t){super(t,ol,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 hr={cancel:{name:\"touchcancel\"},move:{name:\"touchmove\"},end:{name:\"touchend\"}},ht=class extends Lt{constructor(t){super(t,hr)}static setup(){return window.addEventListener(hr.move.name,t,{capture:!1,passive:!1}),function(){window.removeEventListener(hr.move.name,t)};function t(){}}};ht.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 Mt;(function(e){e[e.Pointer=0]=\"Pointer\",e[e.DraggableRect=1]=\"DraggableRect\"})(Mt||(Mt={}));var Nn;(function(e){e[e.TreeOrder=0]=\"TreeOrder\",e[e.ReversedTreeOrder=1]=\"ReversedTreeOrder\"})(Nn||(Nn={}));function al(e){let{acceleration:t,activator:n=Mt.Pointer,canScroll:o,draggingRect:a,enabled:i,interval:l=5,order:u=Nn.TreeOrder,pointerCoordinates:f,scrollableAncestors:c,scrollableAncestorRects:m,delta:d,threshold:g}=e,p=sl({delta:d,disabled:!i}),[v,x]=xa(),O=(0,h.useRef)({x:0,y:0}),N=(0,h.useRef)({x:0,y:0}),b=(0,h.useMemo)(()=>{switch(n){case Mt.Pointer:return f?{top:f.y,bottom:f.y,left:f.x,right:f.x}:null;case Mt.DraggableRect:return a}},[n,a,f]),I=(0,h.useRef)(null),T=(0,h.useCallback)(()=>{let _=I.current;if(!_)return;let M=O.current.x*N.current.x,z=O.current.y*N.current.y;_.scrollBy(M,z)},[]),D=(0,h.useMemo)(()=>u===Nn.TreeOrder?[...c].reverse():c,[u,c]);(0,h.useEffect)(()=>{if(!i||!c.length||!b){x();return}for(let _ of D){if((o==null?void 0:o(_))===!1)continue;let M=c.indexOf(_),z=m[M];if(!z)continue;let{direction:j,speed:w}=Xs(_,z,b,t,g);for(let S of[\"x\",\"y\"])p[S][j[S]]||(w[S]=0,j[S]=0);if(w.x>0||w.y>0){x(),I.current=_,v(T,l),O.current=w,N.current=j;return}}O.current={x:0,y:0},N.current={x:0,y:0},x()},[t,T,o,x,i,l,JSON.stringify(b),JSON.stringify(p),v,c,D,m,JSON.stringify(g)])}var il={x:{[de.Backward]:!1,[de.Forward]:!1},y:{[de.Backward]:!1,[de.Forward]:!1}};function sl(e){let{delta:t,disabled:n}=e,o=kn(t);return mt(a=>{if(n||!o||!a)return il;let i={x:Math.sign(t.x-o.x),y:Math.sign(t.y-o.y)};return{x:{[de.Backward]:a.x[de.Backward]||i.x===-1,[de.Forward]:a.x[de.Forward]||i.x===1},y:{[de.Backward]:a.y[de.Backward]||i.y===-1,[de.Forward]:a.y[de.Forward]||i.y===1}}},[n,t,o])}function ll(e,t){let n=t!=null?e.get(t):void 0,o=n?n.node.current:null;return mt(a=>{var i;return t==null?null:(i=o!=null?o:a)!=null?i:null},[o,t])}function dl(e,t){return(0,h.useMemo)(()=>e.reduce((n,o)=>{let{sensor:a}=o,i=a.activators.map(l=>({eventName:l.eventName,handler:t(l.handler,o)}));return[...n,...i]},[]),[e,t])}var Bt;(function(e){e[e.Always=0]=\"Always\",e[e.BeforeDragging=1]=\"BeforeDragging\",e[e.WhileDragging=2]=\"WhileDragging\"})(Bt||(Bt={}));var vr;(function(e){e.Optimized=\"optimized\"})(vr||(vr={}));var Fa=new Map;function ul(e,t){let{dragging:n,dependencies:o,config:a}=t,[i,l]=(0,h.useState)(null),{frequency:u,measure:f,strategy:c}=a,m=(0,h.useRef)(e),d=O(),g=pt(d),p=(0,h.useCallback)(function(N){N===void 0&&(N=[]),!g.current&&l(b=>b===null?N:b.concat(N.filter(I=>!b.includes(I))))},[g]),v=(0,h.useRef)(null),x=mt(N=>{if(d&&!n)return Fa;if(!N||N===Fa||m.current!==e||i!=null){let b=new Map;for(let I of e){if(!I)continue;if(i&&i.length>0&&!i.includes(I.id)&&I.rect.current){b.set(I.id,I.rect.current);continue}let T=I.node.current,D=T?new Pt(f(T),T):null;I.rect.current=D,D&&b.set(I.id,D)}return b}return N},[e,i,n,d,f]);return(0,h.useEffect)(()=>{m.current=e},[e]),(0,h.useEffect)(()=>{d||p()},[n,d]),(0,h.useEffect)(()=>{i&&i.length>0&&l(null)},[JSON.stringify(i)]),(0,h.useEffect)(()=>{d||typeof u!=\"number\"||v.current!==null||(v.current=setTimeout(()=>{p(),v.current=null},u))},[u,d,p,...o]),{droppableRects:x,measureDroppableContainers:p,measuringScheduled:i!=null};function O(){switch(c){case Bt.Always:return!1;case Bt.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 cl(e,t){return Va(e,t)}function fl(e){let{callback:t,disabled:n}=e,o=On(t),a=(0,h.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.MutationObserver>\"u\")return;let{MutationObserver:i}=window;return new i(o)},[o,n]);return(0,h.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function Dn(e){let{callback:t,disabled:n}=e,o=On(t),a=(0,h.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.ResizeObserver>\"u\")return;let{ResizeObserver:i}=window;return new i(o)},[n]);return(0,h.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function pl(e){return new Pt(it(e),e)}function Ea(e,t,n){t===void 0&&(t=pl);let[o,a]=(0,h.useState)(null);function i(){a(f=>{if(!e)return null;if(e.isConnected===!1){var c;return(c=f!=null?f:n)!=null?c:null}let m=t(e);return JSON.stringify(f)===JSON.stringify(m)?f:m})}let l=fl({callback(f){if(e)for(let c of f){let{type:m,target:d}=c;if(m===\"childList\"&&d instanceof HTMLElement&&d.contains(e)){i();break}}}}),u=Dn({callback:i});return we(()=>{i(),e?(u==null||u.observe(e),l==null||l.observe(document.body,{childList:!0,subtree:!0})):(u==null||u.disconnect(),l==null||l.disconnect())},[e]),o}function ml(e){let t=Va(e);return Pa(e,t)}var Na=[];function gl(e){let t=(0,h.useRef)(e),n=mt(o=>e?o&&o!==Na&&e&&t.current&&e.parentNode===t.current.parentNode?o:In(e):Na,[e]);return(0,h.useEffect)(()=>{t.current=e},[e]),n}function hl(e){let[t,n]=(0,h.useState)(null),o=(0,h.useRef)(e),a=(0,h.useCallback)(i=>{let l=mr(i.target);l&&n(u=>u?(u.set(l,xr(l)),new Map(u)):null)},[]);return(0,h.useEffect)(()=>{let i=o.current;if(e!==i){l(i);let u=e.map(f=>{let c=mr(f);return c?(c.addEventListener(\"scroll\",a,{passive:!0}),[c,xr(c)]):null}).filter(f=>f!=null);n(u.length?new Map(u):null),o.current=e}return()=>{l(e),l(i)};function l(u){u.forEach(f=>{let c=mr(f);c==null||c.removeEventListener(\"scroll\",a)})}},[a,e]),(0,h.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((i,l)=>et(i,l),Te):qa(e):Te,[e,t])}function Ia(e,t){t===void 0&&(t=[]);let n=(0,h.useRef)(null);return(0,h.useEffect)(()=>{n.current=null},t),(0,h.useEffect)(()=>{let o=e!==Te;o&&!n.current&&(n.current=e),!o&&n.current&&(n.current=null)},[e]),n.current?gt(e,n.current):Te}function xl(e){(0,h.useEffect)(()=>{if(!It)return;let t=e.map(n=>{let{sensor:o}=n;return o.setup==null?void 0:o.setup()});return()=>{for(let n of t)n==null||n()}},e.map(t=>{let{sensor:n}=t;return n}))}function bl(e,t){return(0,h.useMemo)(()=>e.reduce((n,o)=>{let{eventName:a,handler:i}=o;return n[a]=l=>{i(l,t)},n},{}),[e,t])}function ja(e){return(0,h.useMemo)(()=>e?js(e):null,[e])}var Da=[];function yl(e,t){t===void 0&&(t=it);let[n]=e,o=ja(n?me(n):null),[a,i]=(0,h.useState)(Da);function l(){i(()=>e.length?e.map(f=>za(f)?o:new Pt(t(f),f)):Da)}let u=Dn({callback:l});return we(()=>{u==null||u.disconnect(),l(),e.forEach(f=>u==null?void 0:u.observe(f))},[e]),a}function vl(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return ft(t)?t:e}function wl(e){let{measure:t}=e,[n,o]=(0,h.useState)(null),a=(0,h.useCallback)(c=>{for(let{target:m}of c)if(ft(m)){o(d=>{let g=t(m);return d?$(k({},d),{width:g.width,height:g.height}):g});break}},[t]),i=Dn({callback:a}),l=(0,h.useCallback)(c=>{let m=vl(c);i==null||i.disconnect(),m&&(i==null||i.observe(m)),o(m?t(m):null)},[t,i]),[u,f]=Dt(l);return(0,h.useMemo)(()=>({nodeRef:u,rect:n,setRef:f}),[n,u,f])}var Cl=[{sensor:at,options:{}},{sensor:En,options:{}}],Sl={current:{}},Tn={draggable:{measure:Sa},droppable:{measure:Sa,strategy:Bt.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}},Ol={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:Fn},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:Tn,measureDroppableContainers:Fn,windowRect:null,measuringScheduled:!1},kl={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:\"\"},dispatch:Fn,draggableNodes:new Map,over:null,measureDroppableContainers:Fn},An=(0,h.createContext)(kl),Ua=(0,h.createContext)(Ol);function Tl(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new ot}}}function Fl(e,t){switch(t.type){case ie.DragStart:return $(k({},e),{draggable:$(k({},e.draggable),{initialCoordinates:t.initialCoordinates,active:t.active})});case ie.DragMove:return e.draggable.active==null?e:$(k({},e),{draggable:$(k({},e.draggable),{translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}})});case ie.DragEnd:case ie.DragCancel:return $(k({},e),{draggable:$(k({},e.draggable),{active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}})});case ie.RegisterDroppable:{let{element:n}=t,{id:o}=n,a=new ot(e.droppable.containers);return a.set(o,n),$(k({},e),{droppable:$(k({},e.droppable),{containers:a})})}case ie.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,$(k({},i),{disabled:a})),$(k({},e),{droppable:$(k({},e.droppable),{containers:l})})}case ie.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),$(k({},e),{droppable:$(k({},e.droppable),{containers:i})})}default:return e}}function El(e){let{disabled:t}=e,{active:n,activatorEvent:o,draggableNodes:a}=(0,h.useContext)(An),i=kn(o),l=kn(n==null?void 0:n.id);return(0,h.useEffect)(()=>{if(!t&&!o&&i&&l!=null){if(!At(i)||document.activeElement===i.target)return;let u=a.get(l);if(!u)return;let{activatorNode:f,node:c}=u;if(!f.current&&!c.current)return;requestAnimationFrame(()=>{for(let m of[f.current,c.current]){if(!m)continue;let d=ya(m);if(d){d.focus();break}}})}},[o,t,a,l,i]),null}function Nl(e,t){let a=t,{transform:n}=a,o=Wn(a,[\"transform\"]);return e!=null&&e.length?e.reduce((i,l)=>l(k({transform:i},o)),n):n}function Il(e){return(0,h.useMemo)(()=>({draggable:k(k({},Tn.draggable),e==null?void 0:e.draggable),droppable:k(k({},Tn.droppable),e==null?void 0:e.droppable),dragOverlay:k(k({},Tn.dragOverlay),e==null?void 0:e.dragOverlay)}),[e==null?void 0:e.draggable,e==null?void 0:e.droppable,e==null?void 0:e.dragOverlay])}function Dl(e){let{activeNode:t,measure:n,initialRect:o,config:a=!0}=e,i=(0,h.useRef)(!1),{x:l,y:u}=typeof a==\"boolean\"?{x:a,y:a}:a;we(()=>{if(!l&&!u||!t){i.current=!1;return}if(i.current||!o)return;let c=t==null?void 0:t.node.current;if(!c||c.isConnected===!1)return;let m=n(c),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(c);g&&g.scrollBy({top:d.y,left:d.x})}},[t,l,u,o,n])}var Ya=(0,h.createContext)($(k({},Te),{scaleX:1,scaleY:1})),je;(function(e){e[e.Uninitialized=0]=\"Uninitialized\",e[e.Initializing=1]=\"Initializing\",e[e.Initialized=2]=\"Initialized\"})(je||(je={}));var Cr=(0,h.memo)(function(t){var n,o,a,i;let y=t,{id:l,accessibility:u,autoScroll:f=!0,children:c,sensors:m=Cl,collisionDetection:d=Bs,measuring:g,modifiers:p}=y,v=Wn(y,[\"id\",\"accessibility\",\"autoScroll\",\"children\",\"sensors\",\"collisionDetection\",\"measuring\",\"modifiers\"]),x=(0,h.useReducer)(Fl,void 0,Tl),[O,N]=x,[b,I]=Ds(),[T,D]=(0,h.useState)(je.Uninitialized),_=T===je.Initialized,{draggable:{active:M,nodes:z,translate:j},droppable:{containers:w}}=O,S=M!=null?z.get(M):null,G=(0,h.useRef)({initial:null,translated:null}),q=(0,h.useMemo)(()=>{var C;return M!=null?{id:M,data:(C=S==null?void 0:S.data)!=null?C:Sl,rect:G}:null},[M,S]),L=(0,h.useRef)(null),[K,Se]=(0,h.useState)(null),[te,Fe]=(0,h.useState)(null),ce=pt(v,Object.values(v)),F=Re(\"DndDescribedBy\",l),P=(0,h.useMemo)(()=>w.getEnabled(),[w]),H=Il(g),{droppableRects:Y,measureDroppableContainers:he,measuringScheduled:ye}=ul(P,{dragging:_,dependencies:[j.x,j.y],config:H.droppable}),fe=ll(z,M),Me=(0,h.useMemo)(()=>te?_t(te):null,[te]),Oe=jn(),xe=cl(fe,H.draggable.measure);Dl({activeNode:M!=null?z.get(M):null,config:Oe.layoutShiftCompensation,initialRect:xe,measure:H.draggable.measure});let U=Ea(fe,H.draggable.measure,xe),Ae=Ea(fe?fe.parentElement:null),R=(0,h.useRef)({activatorEvent:null,active:null,activeNode:fe,collisionRect:null,collisions:null,droppableRects:Y,draggableNodes:z,draggingNode:null,draggingNodeRect:null,droppableContainers:w,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),Pe=w.getNodeFor((n=R.current.over)==null?void 0:n.id),ke=wl({measure:H.dragOverlay.measure}),Le=(o=ke.nodeRef.current)!=null?o:fe,Be=_?(a=ke.rect)!=null?a:U:null,yt=!!(ke.nodeRef.current&&ke.rect),Vt=ml(yt?null:U),vt=ja(Le?me(Le):null),Ee=gl(_?Pe!=null?Pe:fe:null),lt=yl(Ee),dt=Nl(p,{transform:{x:j.x-Vt.x,y:j.y-Vt.y,scaleX:1,scaleY:1},activatorEvent:te,active:q,activeNodeRect:U,containerNodeRect:Ae,draggingNodeRect:Be,over:R.current.over,overlayNodeRect:ke.rect,scrollableAncestors:Ee,scrollableAncestorRects:lt,windowRect:vt}),jt=Me?et(Me,j):null,Ut=hl(Ee),$n=Ia(Ut),zn=Ia(Ut,[U]),$e=et(dt,$n),ze=Be?Hs(Be,dt):null,Ue=q&&ze?d({active:q,collisionRect:ze,droppableRects:Y,droppableContainers:P,pointerCoordinates:jt}):null,Yt=Ma(Ue,\"id\"),[Ne,Wt]=(0,h.useState)(null),Hn=yt?dt:et(dt,zn),qn=$s(Hn,(i=Ne==null?void 0:Ne.rect)!=null?i:null,U),wt=(0,h.useRef)(null),Xt=(0,h.useCallback)((C,A)=>{let{sensor:B,options:X}=A;if(L.current==null)return;let ae=z.get(L.current);if(!ae)return;let W=C.nativeEvent,ge=new B({active:L.current,activeNode:ae,event:W,options:X,context:R,onAbort(ue){if(!z.get(ue))return;let{onDragAbort:Ie}=ce.current,_e={id:ue};Ie==null||Ie(_e),b({type:\"onDragAbort\",event:_e})},onPending(ue,He,Ie,_e){if(!z.get(ue))return;let{onDragPending:St}=ce.current,qe={id:ue,constraint:He,initialCoordinates:Ie,offset:_e};St==null||St(qe),b({type:\"onDragPending\",event:qe})},onStart(ue){let He=L.current;if(He==null)return;let Ie=z.get(He);if(!Ie)return;let{onDragStart:_e}=ce.current,Ct={activatorEvent:W,active:{id:He,data:Ie.data,rect:G}};(0,nt.unstable_batchedUpdates)(()=>{_e==null||_e(Ct),D(je.Initializing),N({type:ie.DragStart,initialCoordinates:ue,active:He}),b({type:\"onDragStart\",event:Ct}),Se(wt.current),Fe(W)})},onMove(ue){N({type:ie.DragMove,coordinates:ue})},onEnd:ut(ie.DragEnd),onCancel:ut(ie.DragCancel)});wt.current=ge;function ut(ue){return async function(){let{active:Ie,collisions:_e,over:Ct,scrollAdjustedTranslate:St}=R.current,qe=null;if(Ie&&St){let{cancelDrop:Ot}=ce.current;qe={activatorEvent:W,active:Ie,collisions:_e,delta:St,over:Ct},ue===ie.DragEnd&&typeof Ot==\"function\"&&await Promise.resolve(Ot(qe))&&(ue=ie.DragCancel)}L.current=null,(0,nt.unstable_batchedUpdates)(()=>{N({type:ue}),D(je.Uninitialized),Wt(null),Se(null),Fe(null),wt.current=null;let Ot=ue===ie.DragEnd?\"onDragEnd\":\"onDragCancel\";if(qe){let Un=ce.current[Ot];Un==null||Un(qe),b({type:Ot,event:qe})}})}}},[z]),Gn=(0,h.useCallback)((C,A)=>(B,X)=>{let ae=B.nativeEvent,W=z.get(X);if(L.current!==null||!W||ae.dndKit||ae.defaultPrevented)return;let ge={active:W};C(B,A.options,ge)===!0&&(ae.dndKit={capturedBy:A.sensor},L.current=X,Xt(B,A))},[z,Xt]),Kt=dl(m,Gn);xl(m),we(()=>{U&&T===je.Initializing&&D(je.Initialized)},[U,T]),(0,h.useEffect)(()=>{let{onDragMove:C}=ce.current,{active:A,activatorEvent:B,collisions:X,over:ae}=R.current;if(!A||!B)return;let W={active:A,activatorEvent:B,collisions:X,delta:{x:$e.x,y:$e.y},over:ae};(0,nt.unstable_batchedUpdates)(()=>{C==null||C(W),b({type:\"onDragMove\",event:W})})},[$e.x,$e.y]),(0,h.useEffect)(()=>{let{active:C,activatorEvent:A,collisions:B,droppableContainers:X,scrollAdjustedTranslate:ae}=R.current;if(!C||L.current==null||!A||!ae)return;let{onDragOver:W}=ce.current,ge=X.get(Yt),ut=ge&&ge.rect.current?{id:ge.id,rect:ge.rect.current,data:ge.data,disabled:ge.disabled}:null,ue={active:C,activatorEvent:A,collisions:B,delta:{x:ae.x,y:ae.y},over:ut};(0,nt.unstable_batchedUpdates)(()=>{Wt(ut),W==null||W(ue),b({type:\"onDragOver\",event:ue})})},[Yt]),we(()=>{R.current={activatorEvent:te,active:q,activeNode:fe,collisionRect:ze,collisions:Ue,droppableRects:Y,draggableNodes:z,draggingNode:Le,draggingNodeRect:Be,droppableContainers:w,over:Ne,scrollableAncestors:Ee,scrollAdjustedTranslate:$e},G.current={initial:Be,translated:ze}},[q,fe,Ue,ze,z,Le,Be,Y,w,Ne,Ee,$e]),al($(k({},Oe),{delta:j,draggingRect:ze,pointerCoordinates:jt,scrollableAncestors:Ee,scrollableAncestorRects:lt}));let pe=(0,h.useMemo)(()=>({active:q,activeNode:fe,activeNodeRect:U,activatorEvent:te,collisions:Ue,containerNodeRect:Ae,dragOverlay:ke,draggableNodes:z,droppableContainers:w,droppableRects:Y,over:Ne,measureDroppableContainers:he,scrollableAncestors:Ee,scrollableAncestorRects:lt,measuringConfiguration:H,measuringScheduled:ye,windowRect:vt}),[q,fe,U,te,Ue,Ae,ke,z,w,Y,Ne,he,Ee,lt,H,ye,vt]),Vn=(0,h.useMemo)(()=>({activatorEvent:te,activators:Kt,active:q,activeNodeRect:U,ariaDescribedById:{draggable:F},dispatch:N,draggableNodes:z,over:Ne,measureDroppableContainers:he}),[te,Kt,q,U,N,F,z,Ne,he]);return h.default.createElement(_a.Provider,{value:I},h.default.createElement(An.Provider,{value:Vn},h.default.createElement(Ua.Provider,{value:pe},h.default.createElement(Ya.Provider,{value:qn},c)),h.default.createElement(El,{disabled:(u==null?void 0:u.restoreFocus)===!1})),h.default.createElement(Ms,$(k({},u),{hiddenTextDescribedById:F})));function jn(){let C=(K==null?void 0:K.autoScrollEnabled)===!1,A=typeof f==\"object\"?f.enabled===!1:f===!1,B=_&&!C&&!A;return typeof f==\"object\"?$(k({},f),{enabled:B}):{enabled:B}}}),Al=(0,h.createContext)(null),Aa=\"button\",_l=\"Draggable\";function Wa(e){let{id:t,data:n,disabled:o=!1,attributes:a}=e,i=Re(_l),{activators:l,activatorEvent:u,active:f,activeNodeRect:c,ariaDescribedById:m,draggableNodes:d,over:g}=(0,h.useContext)(An),{role:p=Aa,roleDescription:v=\"draggable\",tabIndex:x=0}=a!=null?a:{},O=(f==null?void 0:f.id)===t,N=(0,h.useContext)(O?Ya:Al),[b,I]=Dt(),[T,D]=Dt(),_=bl(l,t),M=pt(n);we(()=>(d.set(t,{id:t,key:i,node:b,activatorNode:T,data:M}),()=>{let j=d.get(t);j&&j.key===i&&d.delete(t)}),[d,t]);let z=(0,h.useMemo)(()=>({role:p,tabIndex:x,\"aria-disabled\":o,\"aria-pressed\":O&&p===Aa?!0:void 0,\"aria-roledescription\":v,\"aria-describedby\":m.draggable}),[o,p,x,O,v,m.draggable]);return{active:f,activatorEvent:u,activeNodeRect:c,attributes:z,isDragging:O,listeners:o?void 0:_,node:b,over:g,setNodeRef:I,setActivatorNodeRef:D,transform:N}}function Xa(){return(0,h.useContext)(Ua)}var Ml=\"Droppable\",Pl={timeout:25};function Ka(e){let{data:t,disabled:n=!1,id:o,resizeObserverConfig:a}=e,i=Re(Ml),{active:l,dispatch:u,over:f,measureDroppableContainers:c}=(0,h.useContext)(An),m=(0,h.useRef)({disabled:n}),d=(0,h.useRef)(!1),g=(0,h.useRef)(null),p=(0,h.useRef)(null),{disabled:v,updateMeasurementsFor:x,timeout:O}=k(k({},Pl),a),N=pt(x!=null?x:o),b=(0,h.useCallback)(()=>{if(!d.current){d.current=!0;return}p.current!=null&&clearTimeout(p.current),p.current=setTimeout(()=>{c(Array.isArray(N.current)?N.current:[N.current]),p.current=null},O)},[O]),I=Dn({callback:b,disabled:v||!l}),T=(0,h.useCallback)((z,j)=>{I&&(j&&(I.unobserve(j),d.current=!1),z&&I.observe(z))},[I]),[D,_]=Dt(T),M=pt(t);return(0,h.useEffect)(()=>{!I||!D.current||(I.disconnect(),d.current=!1,I.observe(D.current))},[D,I]),(0,h.useEffect)(()=>(u({type:ie.RegisterDroppable,element:{id:o,key:i,disabled:n,node:D,rect:g,data:M}}),()=>u({type:ie.UnregisterDroppable,key:i,id:o})),[o]),(0,h.useEffect)(()=>{n!==m.current.disabled&&(u({type:ie.SetDroppableDisabled,id:o,key:i,disabled:n}),m.current.disabled=n)},[o,i,n,u]),{active:l,rect:g,isOver:(f==null?void 0:f.id)===o,node:D,over:f,setNodeRef:_}}var Sr=e=>{let{transform:t}=e;return $(k({},t),{x:0})};var oe=Z(ne());function zt(e,t,n){let o=e.slice();return o.splice(n<0?o.length+n:n,0,o.splice(t,1)[0]),o}function Ll(e,t){return e.reduce((n,o,a)=>{let i=t.get(o);return i&&(n[a]=i),n},Array(e.length))}function _n(e){return e!==null&&e>=0}function Bl(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function $l(e){return typeof e==\"boolean\"?{draggable:e,droppable:e}:e}var Za=e=>{let{rects:t,activeIndex:n,overIndex:o,index:a}=e,i=zt(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 Mn={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 c=i[l];return c?k({x:0,y:n<l?c.top+c.height-(u.top+u.height):c.top-u.top},Mn):null}let f=zl(i,a,n);return a>n&&a<=l?k({x:0,y:-u.height-f},Mn):a<n&&a>=l?k({x:0,y:u.height+f},Mn):k({x:0,y:0},Mn)};function zl(e,t,n){let o=e[t],a=e[t-1],i=e[t+1];return o?n<t?a?o.top-(a.top+a.height):i?i.top-(o.top+o.height):0:i?i.top-(o.top+o.height):a?o.top-(a.top+a.height):0:0}var Ja=\"Sortable\",Qa=oe.default.createContext({activeIndex:-1,containerId:Ja,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:Za,disabled:{draggable:!1,droppable:!1}});function kr(e){let{children:t,id:n,items:o,strategy:a=Za,disabled:i=!1}=e,{active:l,dragOverlay:u,droppableRects:f,over:c,measureDroppableContainers:m}=Xa(),d=Re(Ja,n),g=u.rect!==null,p=(0,oe.useMemo)(()=>o.map(_=>typeof _==\"object\"&&\"id\"in _?_.id:_),[o]),v=l!=null,x=l?p.indexOf(l.id):-1,O=c?p.indexOf(c.id):-1,N=(0,oe.useRef)(p),b=!Bl(p,N.current),I=O!==-1&&x===-1||b,T=$l(i);we(()=>{b&&v&&m(p)},[b,p,v,m]),(0,oe.useEffect)(()=>{N.current=p},[p]);let D=(0,oe.useMemo)(()=>({activeIndex:x,containerId:d,disabled:T,disableTransforms:I,items:p,overIndex:O,useDragOverlay:g,sortedRects:Ll(p,f),strategy:a}),[x,d,T.draggable,T.droppable,I,p,O,f,g,a]);return oe.default.createElement(Qa.Provider,{value:D},t)}var Hl=e=>{let{id:t,items:n,activeIndex:o,overIndex:a}=e;return zt(n,o,a).indexOf(t)},ql=e=>{let{containerId:t,isSorting:n,wasDragging:o,index:a,items:i,newIndex:l,previousItems:u,previousContainerId:f,transition:c}=e;return!c||!o||u!==i&&a===l?!1:n?!0:l!==a&&t===f},Gl={duration:200,easing:\"ease\"},Ra=\"transform\",Vl=Ve.Transition.toString({property:Ra,duration:0,easing:\"linear\"}),jl={roleDescription:\"sortable\"};function Ul(e){let{disabled:t,index:n,node:o,rect:a}=e,[i,l]=(0,oe.useState)(null),u=(0,oe.useRef)(n);return we(()=>{if(!t&&n!==u.current&&o.current){let f=a.current;if(f){let c=it(o.current,{ignoreTransform:!0}),m={x:f.left-c.left,y:f.top-c.top,scaleX:f.width/c.width,scaleY:f.height/c.height};(m.x||m.y)&&l(m)}}n!==u.current&&(u.current=n)},[t,n,o,a]),(0,oe.useEffect)(()=>{i&&l(null)},[i]),i}function Tr(e){let{animateLayoutChanges:t=ql,attributes:n,disabled:o,data:a,getNewIndex:i=Hl,id:l,strategy:u,resizeObserverConfig:f,transition:c=Gl}=e,{items:m,containerId:d,activeIndex:g,disabled:p,disableTransforms:v,sortedRects:x,overIndex:O,useDragOverlay:N,strategy:b}=(0,oe.useContext)(Qa),I=Yl(o,p),T=m.indexOf(l),D=(0,oe.useMemo)(()=>k({sortable:{containerId:d,index:T,items:m}},a),[d,a,T,m]),_=(0,oe.useMemo)(()=>m.slice(m.indexOf(l)),[m,l]),{rect:M,node:z,isOver:j,setNodeRef:w}=Ka({id:l,data:D,disabled:I.droppable,resizeObserverConfig:k({updateMeasurementsFor:_},f)}),{active:S,activatorEvent:G,activeNodeRect:q,attributes:L,setNodeRef:K,listeners:Se,isDragging:te,over:Fe,setActivatorNodeRef:ce,transform:F}=Wa({id:l,data:D,attributes:k(k({},jl),n),disabled:I.draggable}),P=ha(w,K),H=!!S,Y=H&&!v&&_n(g)&&_n(O),he=!N&&te,ye=he&&Y?F:null,fe=u!=null?u:b,Me=Y?ye!=null?ye:fe({rects:x,activeNodeRect:q,activeIndex:g,overIndex:O,index:T}):null,Oe=_n(g)&&_n(O)?i({id:l,items:m,activeIndex:g,overIndex:O}):T,xe=S==null?void 0:S.id,U=(0,oe.useRef)({activeId:xe,items:m,newIndex:Oe,containerId:d}),Ae=m!==U.current.items,R=t({active:S,containerId:d,isDragging:te,isSorting:H,id:l,index:T,items:m,newIndex:U.current.newIndex,previousItems:U.current.items,previousContainerId:U.current.containerId,transition:c,wasDragging:U.current.activeId!=null}),Pe=Ul({disabled:!R,index:T,node:z,rect:M});return(0,oe.useEffect)(()=>{H&&U.current.newIndex!==Oe&&(U.current.newIndex=Oe),d!==U.current.containerId&&(U.current.containerId=d),m!==U.current.items&&(U.current.items=m)},[H,Oe,d,m]),(0,oe.useEffect)(()=>{if(xe===U.current.activeId)return;if(xe!=null&&U.current.activeId==null){U.current.activeId=xe;return}let Le=setTimeout(()=>{U.current.activeId=xe},50);return()=>clearTimeout(Le)},[xe]),{active:S,activeIndex:g,attributes:L,data:D,rect:M,index:T,newIndex:Oe,items:m,isOver:j,isSorting:H,isDragging:te,listeners:Se,node:z,overIndex:O,over:Fe,setNodeRef:P,setActivatorNodeRef:ce,setDroppableNodeRef:w,setDraggableNodeRef:K,transform:Pe!=null?Pe:Me,transition:ke()};function ke(){if(Pe||Ae&&U.current.newIndex===T)return Vl;if(!(he&&!At(G)||!c)&&(H||R))return Ve.Transition.toString($(k({},c),{property:Ra}))}}function Yl(e,t){var n,o;return typeof e==\"boolean\"?{draggable:e,droppable:!1}:{draggable:(n=e==null?void 0:e.draggable)!=null?n:t.draggable,droppable:(o=e==null?void 0:e.droppable)!=null?o:t.droppable}}var zf=[V.Down,V.Right,V.Up,V.Left];if(typeof window<\"u\"){let e=document.createElement(\"style\");e.textContent=\".container {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n flex: 1;\\n width: 100%;\\n padding: 16px;\\n box-sizing: border-box;\\n background: #F2F2F7;\\n}\\n.qrcode-card {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n max-width: 360px;\\n margin: 0 auto;\\n padding: 24px 20px;\\n}\\n.qrcode-wrapper {\\n position: relative;\\n cursor: pointer;\\n margin-bottom: 24px;\\n display: flex;\\n justify-content: center;\\n}\\n.qrcode-wrapper:hover .qrcode-glow {\\n opacity: 0.4;\\n}\\n.qrcode-glow {\\n position: absolute;\\n inset: -4px;\\n background: linear-gradient(135deg, #60a5fa 0%, #a78bfa 100%);\\n border-radius: 24px;\\n filter: blur(12px);\\n opacity: 0.2;\\n transition: opacity 0.3s ease;\\n z-index: 0;\\n}\\n.qrcode-container {\\n position: relative;\\n background: #fff;\\n padding: 16px;\\n border-radius: 20px;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n z-index: 1;\\n}\\n.qrcode-image {\\n width: 160px;\\n height: 160px;\\n border-radius: 12px;\\n object-fit: cover;\\n transition: opacity 0.3s ease;\\n}\\n.qrcode-image--loading {\\n opacity: 0.3;\\n}\\n.qrcode-overlay {\\n position: absolute;\\n inset: 0;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(4px);\\n border-radius: 20px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 12px;\\n z-index: 10;\\n}\\n.qrcode-overlay span {\\n font-size: 12px;\\n font-weight: 500;\\n color: #8E8E93;\\n letter-spacing: 0.5px;\\n}\\n.qrcode-spinner {\\n width: 32px;\\n height: 32px;\\n border: 2px solid rgba(59, 130, 246, 0.2);\\n border-top-color: #3b82f6;\\n border-radius: 50%;\\n animation: spin 0.8s linear infinite;\\n}\\n@keyframes spin {\\n to {\\n transform: rotate(360deg);\\n }\\n}\\n.qrcode-status {\\n position: absolute;\\n bottom: -14px;\\n left: 50%;\\n transform: translateX(-50%);\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 4px 12px;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(8px);\\n border-radius: 12px;\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);\\n z-index: 20;\\n white-space: nowrap;\\n}\\n.status-dot {\\n width: 6px;\\n height: 6px;\\n border-radius: 50%;\\n flex-shrink: 0;\\n transition: background-color 0.3s ease;\\n}\\n.status-dot--pulse {\\n animation: pulse 1.5s ease-in-out infinite;\\n}\\n@keyframes pulse {\\n 0%,\\n 100% {\\n opacity: 1;\\n }\\n 50% {\\n opacity: 0.5;\\n }\\n}\\n.status-text {\\n font-size: 10px;\\n font-weight: 600;\\n color: #8E8E93;\\n text-transform: uppercase;\\n letter-spacing: 0.5px;\\n white-space: nowrap;\\n}\\n.cookie-result-wrapper {\\n width: 100%;\\n margin-bottom: 20px;\\n}\\n.cookie-result {\\n width: 100%;\\n height: 120px;\\n padding: 14px;\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 16px;\\n font-size: 12px;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n color: #1C1C1E;\\n resize: none;\\n outline: none;\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04);\\n transition: background-color 0.2s ease, box-shadow 0.2s ease;\\n box-sizing: border-box;\\n}\\n.cookie-result::placeholder {\\n color: #8E8E93;\\n}\\n.cookie-result:focus {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04), 0 0 0 2px rgba(59, 130, 246, 0.2);\\n}\\n.action-buttons {\\n display: grid;\\n grid-template-columns: 1fr 1fr;\\n gap: 12px;\\n width: 100%;\\n}\\n.action-buttons__full {\\n grid-column: 1 / -1;\\n}\\n.auth-source-btn {\\n min-height: 48px;\\n}\\n.auth-source-icon {\\n display: block;\\n flex-shrink: 0;\\n width: 22px;\\n height: 22px;\\n object-fit: contain;\\n}\\n.action-btn {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n padding: 14px 20px;\\n border-radius: 16px;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n border: none;\\n outline: none;\\n}\\n.action-btn:active {\\n transform: scale(0.98);\\n}\\n.action-btn:disabled {\\n cursor: not-allowed;\\n opacity: 0.62;\\n transform: none;\\n}\\n.action-btn--primary {\\n background: #1C1C1E;\\n color: #fff;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\\n}\\n.action-btn--primary:hover {\\n background: #2C2C2E;\\n}\\n.action-btn--secondary {\\n background: #fff;\\n color: #1C1C1E;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\\n}\\n.action-btn--secondary:hover {\\n background: #F9F9F9;\\n}\\n.btn-icon {\\n display: block;\\n flex-shrink: 0;\\n width: 18px;\\n height: 18px;\\n opacity: 0.7;\\n}\\n.anticon.btn-icon {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n width: 18px;\\n height: 18px;\\n font-size: 16px;\\n line-height: 1;\\n}\\n.btn-icon--login {\\n transform: translateY(1px);\\n}\\n.dynamic-delete-button {\\n position: relative;\\n top: 2px;\\n margin: 0 8px;\\n color: #555;\\n font-size: 18px;\\n cursor: pointer;\\n transition: all 0.3s;\\n}\\n.dynamic-delete-button:hover {\\n color: #777;\\n}\\n.dynamic-delete-button[disabled] {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n.domain-edit-modal {\\n --domain-action-size: 32px;\\n --domain-action-gap: 8px;\\n --domain-action-total: calc(var(--domain-action-size) + var(--domain-action-gap));\\n --domain-row-gap: 12px;\\n --domain-label-width: 72px;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label {\\n flex: 0 0 var(--domain-label-width) !important;\\n max-width: var(--domain-label-width) !important;\\n padding-left: 8px;\\n padding-right: 12px;\\n padding-bottom: 0 !important;\\n display: flex !important;\\n align-items: center !important;\\n height: 32px !important;\\n text-align: right;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label > label {\\n height: 32px !important;\\n line-height: 32px !important;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-control {\\n flex: 1 1 auto !important;\\n max-width: calc(100% - var(--domain-label-width)) !important;\\n min-width: 0;\\n}\\n.domain-edit-modal .domain-edit-aligned-input {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .domain-edit-full-input {\\n width: 100%;\\n}\\n.domain-edit-modal .domain-edit-add-button {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .ant-form-item {\\n margin-bottom: var(--domain-row-gap);\\n}\\n.domain-edit-modal .ant-form-item:last-child {\\n margin-bottom: 0;\\n}\\n.domain-list-row {\\n display: flex;\\n align-items: center;\\n gap: var(--domain-action-gap, 8px);\\n width: 100%;\\n}\\n.domain-list-input {\\n flex: 1;\\n min-width: 0;\\n}\\n.domain-list-action {\\n width: var(--domain-action-size, 32px);\\n flex: 0 0 var(--domain-action-size, 32px);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.domain-list-action--placeholder {\\n visibility: hidden;\\n}\\n.domain-list-row .dynamic-delete-button {\\n margin: 0;\\n}\\n.sites-table .ant-table-tbody > tr > td {\\n padding: 8px 16px;\\n}\\n.sites-table .ant-table-thead > tr > th {\\n white-space: nowrap;\\n}\\n.sites-list-toolbar {\\n display: flex;\\n justify-content: flex-end;\\n margin: -2px 0 12px;\\n}\\n.sites-list-toolbar .sites-add-button,\\n.sites-list-toolbar .sites-manage-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}\\n.sites-list-toolbar .sites-add-button {\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.sites-list-toolbar .sites-manage-button {\\n min-width: 104px;\\n border-radius: 16px;\\n color: #1C1C1E;\\n background: rgba(255, 255, 255, 0.82);\\n border-color: rgba(0, 0, 0, 0.08);\\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.cms-manager-modal {\\n max-width: 720px;\\n}\\n.cms-manager-modal .ant-modal-body {\\n padding-top: 16px;\\n}\\n.cms-manager-toolbar {\\n display: flex;\\n flex-direction: column;\\n gap: 10px;\\n margin-bottom: 12px;\\n}\\n.cms-manager-selection {\\n min-height: 32px;\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n gap: 12px;\\n padding: 0 4px;\\n color: #8E8E93;\\n font-size: 13px;\\n}\\n.cms-manager-list {\\n display: flex;\\n flex-direction: column;\\n gap: 8px;\\n min-height: 180px;\\n max-height: min(52vh, 460px);\\n overflow-y: auto;\\n padding: 2px 4px 2px 2px;\\n}\\n.cms-manager-item.ant-checkbox-wrapper {\\n width: 100%;\\n min-height: 58px;\\n display: flex;\\n align-items: center;\\n margin-inline-start: 0;\\n padding: 10px 12px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 12px;\\n background: rgba(255, 255, 255, 0.76);\\n cursor: pointer;\\n transition: background 0.2s ease, border-color 0.2s ease;\\n}\\n.cms-manager-item.ant-checkbox-wrapper:hover {\\n background: #fff;\\n border-color: rgba(0, 0, 0, 0.14);\\n}\\n.cms-manager-item.ant-checkbox-wrapper.ant-checkbox-wrapper-checked {\\n background: rgba(28, 28, 30, 0.04);\\n border-color: rgba(28, 28, 30, 0.35);\\n}\\n.cms-manager-item.ant-checkbox-wrapper > span:last-child {\\n flex: 1;\\n min-width: 0;\\n padding-inline-start: 10px;\\n}\\n.cms-manager-item__content {\\n display: flex;\\n flex-direction: column;\\n gap: 3px;\\n min-width: 0;\\n}\\n.cms-manager-item__name,\\n.cms-manager-item__address {\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.cms-manager-item__name {\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 600;\\n}\\n.cms-manager-item__address {\\n color: #8E8E93;\\n font-size: 12px;\\n}\\n.cms-manager-empty {\\n min-height: 180px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n padding: 24px;\\n color: #8E8E93;\\n font-size: 13px;\\n text-align: center;\\n}\\n.cms-manager-actions {\\n display: flex;\\n justify-content: space-between;\\n gap: 12px;\\n margin-top: 16px;\\n padding-top: 16px;\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.cms-manager-actions .ant-btn {\\n flex: 1;\\n min-width: 0;\\n min-height: 40px;\\n border-radius: 12px;\\n font-weight: 600;\\n}\\n.ant-message .ant-message-notice-content {\\n background: rgba(255, 255, 255, 0.85);\\n backdrop-filter: blur(20px);\\n border-radius: 16px;\\n padding: 12px 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);\\n border: 1px solid rgba(255, 255, 255, 0.5);\\n}\\n.ios-alert {\\n background: rgba(59, 130, 246, 0.08);\\n border: none;\\n border-radius: 12px;\\n}\\n.ios-alert .ant-alert-message {\\n color: #1C1C1E;\\n font-weight: 500;\\n}\\n.ios-alert .ant-alert-description {\\n color: #8E8E93;\\n}\\n.ant-switch {\\n background: rgba(120, 120, 128, 0.16);\\n min-width: 51px;\\n height: 31px;\\n}\\n.ant-switch .ant-switch-handle {\\n width: 27px;\\n height: 27px;\\n top: 2px;\\n inset-inline-start: 2px;\\n}\\n.ant-switch .ant-switch-handle::before {\\n border-radius: 50%;\\n box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), 0 1px 1px rgba(0, 0, 0, 0.16);\\n}\\n.ant-switch:hover:not(.ant-switch-disabled) {\\n background: rgba(120, 120, 128, 0.24);\\n}\\n.ant-switch:focus {\\n box-shadow: none;\\n}\\n.ant-switch.ant-switch-checked {\\n background: #34C759;\\n}\\n.ant-switch.ant-switch-checked .ant-switch-handle {\\n inset-inline-start: calc(100% - 29px);\\n}\\n.ant-switch.ant-switch-checked:hover:not(.ant-switch-disabled) {\\n background: #2DB84E;\\n}\\n.ios-edit-btn {\\n color: #8E8E93;\\n padding: 4px 8px;\\n border-radius: 8px;\\n transition: all 0.2s ease;\\n}\\n.ios-edit-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.ios-edit-btn .anticon {\\n font-size: 16px;\\n}\\n.ios-tag {\\n background: rgba(118, 118, 128, 0.12);\\n border: none;\\n border-radius: 6px;\\n color: #8E8E93;\\n font-size: 11px;\\n font-weight: 500;\\n padding: 2px 8px;\\n line-height: 1.4;\\n}\\n.ant-space-compact .ant-input {\\n border-radius: 12px 0 0 12px;\\n}\\n.ant-space-compact .ant-btn {\\n border-radius: 0 12px 12px 0;\\n}\\n.ant-space-compact .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n}\\n.ant-space-compact .ant-btn-primary:hover,\\n.ant-space-compact .ant-btn-primary:focus,\\n.ant-space-compact .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n}\\n.xunlei-verify-compact .ant-input,\\n.xunlei-verify-compact .ant-btn {\\n height: 44px;\\n}\\n.xunlei-verify-compact .ant-input {\\n line-height: 22px;\\n}\\n.xunlei-verify-compact .xunlei-verify-send-btn {\\n min-width: 126px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-color: rgba(0, 0, 0, 0.12);\\n box-shadow: none;\\n}\\n.ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n}\\n.ant-btn-primary:hover,\\n.ant-btn-primary:focus,\\n.ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.ant-btn-dashed {\\n border-radius: 12px;\\n border-color: rgba(0, 0, 0, 0.15) !important;\\n color: #8E8E93;\\n}\\n.ant-btn-dashed:hover,\\n.ant-btn-dashed:focus,\\n.ant-btn-dashed:active {\\n color: #1C1C1E !important;\\n border-color: rgba(0, 0, 0, 0.3) !important;\\n background: rgba(0, 0, 0, 0.02) !important;\\n}\\n.ant-btn-text:hover,\\n.ant-btn-text:focus,\\n.ant-btn-text:active {\\n background: rgba(0, 0, 0, 0.04) !important;\\n color: #1C1C1E !important;\\n}\\n.ant-btn-link {\\n color: #1C1C1E;\\n}\\n.ant-btn-link:hover,\\n.ant-btn-link:focus,\\n.ant-btn-link:active {\\n color: #3C3C3E !important;\\n background: transparent !important;\\n}\\n.ant-btn-dangerous.ant-btn-text {\\n color: #ef4444;\\n}\\n.ant-btn-dangerous.ant-btn-text:hover,\\n.ant-btn-dangerous.ant-btn-text:focus,\\n.ant-btn-dangerous.ant-btn-text:active {\\n color: #dc2626 !important;\\n background: rgba(239, 68, 68, 0.04) !important;\\n}\\n.action-btn--secondary-outline {\\n background: #fff;\\n color: #8E8E93;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.action-btn--secondary-outline:hover {\\n color: #1C1C1E;\\n background: #F9F9F9;\\n}\\n.pansou-add-channel .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n font-weight: 500;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.pansou-add-channel .ant-btn-primary:hover,\\n.pansou-add-channel .ant-btn-primary:focus,\\n.pansou-add-channel .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 8px 14px;\\n}\\n.pansou-add-channel .ant-input:focus,\\n.pansou-add-channel .ant-input:hover {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.pansou-add-channel .ant-input-clear-icon {\\n color: #8E8E93;\\n}\\n.pansou-add-channel .ant-input-clear-icon:hover {\\n color: #1C1C1E;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 4px 14px;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper:focus,\\n.pansou-add-channel .ant-input-affix-wrapper:hover,\\n.pansou-add-channel .ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n box-shadow: none;\\n padding: 4px 0;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:focus,\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n\",document.head.appendChild(e)}var Ht=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAICAgICAQICAgIDAgIDAwYEAwMDAwcFBQQGCAcJCAgHCAgJCg0LCQoMCggICw8LDA0ODg8OCQsQERAOEQ0ODg7/2wBDAQIDAwMDAwcEBAcOCQgJDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg7/wgARCAE8ATwDAREAAhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAABQYABAIDBwEJCP/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAPv4QhCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCGsoFU8IQhD0tG80FgtEKxQNRkXDMpmZfNpSMDcVDQQhCEMi6XTIgMEEWzI9IQ8MRjGQCh4PngtCKUjaN4QE43j6XRQKwZFIEGw9IQxMhyHcskARycDjCbTwhrF4KnRCsEzSUgOIxsKQ6DaI4MOgGg58XxsEQ2B0h4ZFUXRyOpF8gBOVG8cwQVS2FhPKZ1MLGAqi0aSoYC8Nw5iUKoyEFMNDeJo1B0DGkIlwRAudSL5ACcsLQZObgcMHRwQUTpZZN4KEYrjMLwCD4SFwGF8JgAuDaKA0mk50UxoH0UwmdSL5ACcrLZeOVAINnVimUB5BBbKQjBU6gQBAI2hw1A4UxYGkchPGcGnLiiNx00WQodSL5ACcrLYaObgcLnRgUDzo5SAZgBDadRLQiA4bS+JwpgMrDsMwljSaDnhTGgfRSCZ1IvkAJyosDoCCoWguJxTOpF0DmIugo6EbTlwROjmIiCEHBlDJpOejQMAFNISLYhhc6kXyAI5OCBjNp4emoXQmdFKhdK4tFUMhYQQoOJTKolDOGDEhzY2h8hD0pi4OZ1EvkBggCyZEPTwxMRlGUWzQYFQEgsNgkZxtKBfF0rgUuDqLIJNh4Q9MT0cx5LRDWUCmDikXCkDz0NBUWheChVOaAQ3mY8DuXw8UxFEIvHSxhNhrBZgFCA0JDAbiEIaxXF0Oi+KxiHw2AjaNYHOTAAtFsJlwJHRBgFk5iLA2HSxqKghFEfC0IxfH4tkIeFcDlIJgoAlYqmstlMOBQRBaGcPmAsi0NQ7C6c6F8vj8dEBRzUqj0NgmhA6WXiHhVForDQXweJgvmQZChzsEjGbzwtDQaRbAIDLwJF01Bk6CPYrimGA+MgOLo0FghVFoVi2PATA5ycXx6HwrHIRHDZ0UKCGfk8/aAUMjmgFChTNQ1DiNoIF0sG4Ih8Mlg9IUBNF03h8aiockBR0YZxVOXiyO510rn5DPnEdwPrGBxbK5vF8rDYHBwCAqiQBxpOhDGbCEKgpHOxUGE6oZHPwSOQYOZiWXjpB0c+UQiC+GD6oHIjs5fAInggYB7GUtmYnCmP4yBAKGZAac+Ofi+FDpRmbS4XzE5WKI1HRT8bCcfvA+cZ+0wOfJA+uYfDYCE0zD4YN4xm0EjoUy8OJZIVRbF0VBaCw2jiUCsMQrHNCiHD5Gn1dL4GD46HzfOjHeguagSaCyNhrKIyDUMhqLodNpCFMVBTAYujKdHIahqB5yAQTSfJY+shsLZ086afOUJH6cB5vGMoi2XSuL4WGwPDeMhZIQhWE8VwUKgUG8vhkaTQIApAU+c53s/RAYG4JHxmPqAdjKgPGYuCKJhiaAWQJj8dGGQ2kIYA8UxHBwYMimNA5lYFG0FiCfJs/Yp+rDn583DrR+8jqxvFY9DgKEM2l8WACYhw6mdLLpDQCjM2AkEi0XS4Q3goqhYsGAKPw4cFLR+nTvYYG4yNhSFAEA0Oj4Czm5QGU6idELZAYJRBtLwuHPhiN4pGYeCYIF0ohYegSaQ6bAOKgTHQXzlANIOJ1ACnJzadJH8MmZCkKQtBIKCSLI/B0ClA0jSbgCK5VOmFosjEeigcvMx7BwiBADGZ04ggjGPofLZ6QoCaADwFCYUxvD54CRdDYeNYvnh0o2F0ZgYJYIMjEAgULAYHnShxFoolsbRtN5AaJx6bRSA54bzaQGi8Fg0CgeMAwkGAMCUKAbCArAYMF4rAcLjaCRJKx086gXiFQWigQpGshD0IGsVw4XxIA4WBwcGYCnPQKEAyVAudFN56JAhHhqK4eOoHRC4QEHNRYNxmeEMTSMw8mgsCocxBZdPTaZlEDmgJDsaS+PwNCYqHOSgUy6dEOmDKbiAE5OUhqMzE9PBULI/AkKi0c0KQYGEXgCeFYxLQfPBgOjEN4ogUyFA0jUdKHUskAJystDcLZQLwxiqDxtFcaS+LZXMQaKxZN4qFQ3HpmHhqLpkCg+M4vFIsjWNJvIATlhaChzACBo6eDSgPpSDodNRpFg5ULR0EIHNDEZgebyyLpsG8YRnGQzMTAsFk9IATlZbLxysBBs6qUygdCNQWDgJFwDCwK4bLIlhk6gazeDzngbOkDCDD0YCAE3h42kAJywtDAIIICo/AMHjyBS6NILEY0l8Ai+ajANHVC8bBcEkeg8UBMKo6m0BhsdSyQAnKTMdioVzeXBLK5000CuXg8UhcAYXAgICxoHA9CRrFMYQGKIJNocN4yD2MhuIAzlIBDJtIQ1gUOnVwgLItF4vCMBB9BwnG4qBwaxqN4rCsKYFPRkDwACJ0gdCwQoiaL5D0hDwgwDkXSsLJXLItGI0lYWDUeF8bw+ZgcTwOYGYfDAuFMaxpN5DE0GkhCEIQ2lgyPDSYmRpIbzE0nhDIsG0hgVjAhDabTSYG43npCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCEIf/8QAJRAAAwEBAAIBBAMBAQEAAAAAAwQFAgEAFRAGBwgUERITFiBQ/9oACAEBAAECAP8Ax/P/AMTWyudpez9n7P2fs80xu9Y64I/O+EPqj7PNIbWmdUBviL3RGcN9Y297P2fs/Z+z9nikFnPfhwtOn2xyr7T2ntO1c2ZtTTO3J7GD6YpOtWPcAszaDLLVNCqgydl+qpTI49W5Y9p7T2ntO1QWZNBbXxS7Y0sqGT6r1XJJZLCsjQA6nLrsOZpUzmHxPuImiBpKJ9ns0aTtCSYu3/EUMSPU+q5JPKICDpHvxT8p8kC5wz3sgPfxVFM5Mx/gQVEGu71+qXRSRO6PVZwym+31kEfhvD5kBNsj/KSzZ8URwvEfml5S8k+PHoUPZzqSJ6nk7xE3aGWniPMpbyo8lxBHhWmgeuXW/lzcnw3hvJfazTdPNSS+MtLyH4j80vKfknyn5T+Jfkzyn5O8Foxl3X3Wyx+ohYnHTNxUI521D5fc23E0bw3k3y3455nyJ4Dyj5D8R+aXlPyT48ChO9ZOnIAqcm+JhbnbB1ZudLHM8c1QeW8RQNig4zSNwU6Omzg3kvlZVubmXJQwKl5D8R+aflTskvPDo+tAh5VLM7N6bwifFqGVOTDUCUiRfE+sdrLFDOnCkKJUsH7IMYZJ/JqybG6BYXiPzS5Yyq0Gv7X2vKpa7LUjK5SUQONunPzSVM7lDUbv7PH3emDJ4Zxag/p/xF/Ff2vteVmKuzwcI/LYqkzUfkz13rfXdnYkzJul2QjZITvG3BU8VzNxO7GNXSjKHDN0pbWBvSeSPWeu9d63ssEiSitj41gqeph1MiyqbHS4MmTenddwqpRDRPw+XAsxnQ0AHDhtKoo1iYxNawt6vUwwBBFOLO1hLQf/ACTyj0exapbIXBkGtvHOpxbFYNRXi40BzgB/bQqzKGiU8Vs8ZlVZlITDbVKolXn0GmHnpTimvnvSFYwOdhNyaSX2eQeNfraPPpH3USwghMxFJIoId5Koip1ar729pmkOpsVXX2VdymtboBjCS58mM5QWeV7/AFa6+/qtgic86tYitMFnm/1FmVWm2T8bn/3xWdcJ5nCSshAK9bGUV5CU8YDzkJ4MfBiPOHMhlLXNUe2DLeSVU16Pbu+mn+Sk2122efmWq8qo4vUGHOEzprqIpodBp9T/AAw3iovTV0IXOfDPHx70GinWVYo9r+Jbkl4zVqVW88hLzFao/uF9+/uz9Ufjb+QYGm2jIYk9E4RUqpVcIYMCgm/zB5uJuB9+T9pFpuEpSH5rD7NAIUpYWt2G9lSUiIDN+RH5P/b38R/vL9CfYD7FaY+iPvMm0QreXc8NPdnuBpZq6JXXECUvg67Y9fDfa2nQlVlaSdKYCfEFgvBsp5Xk4n7/ADP+7f4i/Zl/dL8SJAfrL6ZBqP8AUS9UZqWDeAMrSE8KghUdKsqoJnc7a3yYbk1iRQndGm9P2sJwyjORVZb6yzwrn5B/U/03o1rTUtMET85fov8AGuiDAmzn2r1VYai7QwvJuIjF5tNREWfj+D8fMfrae+yHUmWAqpqipCuAKP8An7ucXa/unmBhXz8+af4ny8yjopoBhuRCLAcba1tF1WyrbnuB7z/wfNFbYnDm8nhWbxVScX25inNNCZk/l39vfxl+uupIzk/D/Uf3x+5P24+mU1HJgAJbOpTmGCMBk9dy0m/IrTnxa+e+HXopOJDngAXOBzMgMeh1rIHJ31h9ufqX6P8Atz+U0j6l+ufvZ96/yT/Gz7LSdzNN6Y4sUVB9pzafDKuIkHjc9mAdPvwQhXgtEXJJZmG8UBpQR9UDGHpdzT+HPqn6V+uPwaf/ABRl/h79ufxczFSRWZ0cSromaRK3WZnFEqiDwxDmow0lc/DfXSpOKtdLTaOab4905VyKi/RbXMTrk+guZzqyoZHYzqJmZ51uWeP44rgMXCGLWXxT0I8pJIefhjL4N6SeJSq1xuyTl4VEogvpPnywi8sjybkqya4R77W09meVF2qzvI02xTnJLlTBUpaKPgS878M7fZ7jo23XTL9QexX7Vbo6cQqZrkrNvIdnlM8iyIjrjjnU+TdlefwXDTpFuwi7Cyrx5e5Nog38N4bVVRYScmai8h4lev8AXNI7WSS4gyDAUlhtc3PGRupX7TTolovu4wvJ5JNH2jOcFYepuPKNfT5Uu/B+tF4/ultn/b/b/bJQjamkkIS2AUdgJ+zp6e4KhRrPUP2Vmx7NiSBRTo9LWVzMZpbf52ajDTUz8PErPfv5Y/2/3/36xx6U+HWh55Ycfew5hr+uGe1z0SE8T8Sw1mRwXdkBq3xlbSmsJ8jYm4Fz4p+V+IJAk9meu5MLIdSlcwclIDNkTaeU0kuIvg6Loe58AQFDb0c6pOh/tU0FBmS1PAtMLJYX78U/KfkjOzM1vdq1hnq5n+b4XEsTU00D/nuzGmTnTQYmMiyPgP4HlEq9nNvdUhZS+5rEH/nl4c5EGfin5S8k+US0m/3Zjc4tPyd4AO5yCvAdW0CpivoPY+KOX+JLiknmKSzTzEV2gmCOgkLH6vU+Ljxn5p+U/JPlLlPP9ZmZnKfk7xbemkjc202eyd91MiyDrdFncYaSbMlaVUVOrKkzJvFztLUgGOY1FR4Wvil5S8k+NrPyvSoSU1qnJ3gsn4i4Buh42IGO8cUKPnnUpQZvSbHux4MUpfrLFejWSrJ2D1dlmZW58U/KnZTA2CY/XEPZ6jEvqIXUDDSazoyTmeNgFSUWFoQNJukaS3QDkC7dGuewR5Yo2x0Jxp2Q8+KObAQ7FQ9j7D2G6BtxwTMGC9PKJNg56Z18Tw1wf16bnUiKKKInRcQb235pYac6ZuQdScSQdfvwyKhK1C5E9L6X0nYmIU6UqL+DBbngnmRZjrRFUHZpYXofQKxkURi7hxRyRqB/zo/p5CPqa3FDEnogz8dzpf8AS/R/R/R/R/R4lhfPPO86Hi/Q9U4pkOgdS/R/R4ngXx3HVf0f0eJYW/y6rxLAOc/+T//EAD0QAAICAQMCAgkCBQEGBwAAAAECAAMRBBIhBTEGEwcQIiMkQVFScRQyCCBCYYFiM1BykbLRJVNzgqGiwv/aAAgBAQADPwD+Qf7lABipnmL90T74n3xPvi/fE++J90V/nBjvFz3gccTI9QQHJirnmL9win+oRXHeALmICfaiv85uEwIEzFPzgwYqkjdE++J98X7hF+4RfuEX74pz7UDjvMj1lK2jV2MA0sNh9qWkZ3GW/cZb9xlv3GWgdzLBZgtGsIBaHyMywXEZhIEATvBsPMKI5Bjq7ANLT2Yx9+C0a2vvGFBliWNzHawDdN9Q5ipSeZsdhuhezvCNOTmMljYaWsT7Ut+plv3GW/cZb9xlw+Zj7+WjW/Obq/WRU8Y6lxHusjGuGGExhWcR6rTGF4ENmljG3OIaq4awRCcjML0NiO95h8omGu+EgCb9KYQ7EQ16qBaO8IrYZjPe3MZrYf0ZjPewj2w7O0Pq4PEZEaPVqSIdwmafX7p5nVtAbOZXXpsmVIx5Ep+olT/MSuzT5ihyQJjWCA6cZiRfLOIeSIa3OTPNXEO/diLXURA2omMRV0h5ilmxNt+YfKxmNdWYwvmLRPgz+IDqz+YvlCV1VSlWPIlJ+YlTnGYjUGAaoz3onufVwZ7p58Y359RTSHB+UcWtzH+6O1wG6F9JM7p8ZBXpgYofG6B07xBW0QOcGeZbN2nJx8o/OBHFxJENCQtSQDLLWbvLd2dssSBasGIXMzcJ8GfxPjD+ZimFKG5jC1vaj7/3RnsXmF9JPfme+nufVwZ7p58W3q+Fb8T3rww+eJ8H/ifunxkb9HxLFuMIQjMY1Ngx2uOYTesD6fGIhydsrr3cCYsIEax4uzJWVITwJUiGbNwBhe88zc4nwZ/E+MP5nw09y0PnNPbE96s+DP8Awz3899Pc+v3Tz4tvzOYX0bcRmub2Y/2x1tHswpo5jdM6yb9LOWOI9bECNYhBmCTNmqE9wIErYzFrAGefbAFzieXScDtGrLR2yMx78yw3Z2xkI4m3SET4w/mZoheo8RzY3Ebd+0xksHEKaMz35nvp7n1+6eY1bQC2V2abBlTk8CVZ7CVI3YSuvTEQGxpnWCAacZlbAxXcnERKzkRfam3VQCkQGh8Q/q2mXERaIj1sJlHMP6kwWAZErVclJXX8oF0zTGrP5i+UORK7aj2lTEnAlOewlVbdhETTmBtUZ70T3PrJqeMNQ5jU3QhMZ9ePnCayAY9tpjG8GGvSwi0jMVk5MCocTzCYK2zAh25i2aU8wNqmnIhr08LORPM07GfEHj5xUrGZXWmAYrEjdPM0zRk1LGNXDtxn1kdjGesjMa3Uw7hMU+vfWY1ljkLLRYeJaBLZb9JbLCOxjl+RCjjiEUERltYwoCMxrYyAsYEU8zbd3gOnILQWXzOIX08fzoxohFhOJ+nRhCXIDQvd3nm6SM7khZaGOAZcPkZb9JbLvoZaR2MfzORDXjiba/WCDFfPEr5O2VpngSrfjAlRTtKkzwJSD8pTnuJWe0XyYh3YM32nEJr5E8uhoQ7CEGMEPMJsgQDmVmrlpW7dxFsrilDgRl34jrecwV3DJiPWBmV3DOIh/pErUH2ZUhPAlLuRK3XsJWiHgSpHifKe7/l90YQGxLPPMbyJYC2Jd5h5Mu39zHU8mZoPMZrDzAX5i+TC1D4EIufiEtGcdo4/pMsq+REtq+ZjC4ZaB6hkwPVEKNmIHcieXf3hV1BaBkGWitXnMVKm5myxsNM38vFdO8zSxBjLeRmF7AMzdV/JgQAERbcwb84mKyIHzxEBPErWCrIEdzjMOzM8i6Bl27pXdpzEYtxPf9ojJyJWU/bEVD7MCbsR6ruIUIBMHkfugCsN0NrtzM2E5jK4wZZkDJjHTRlpbmWW2NzLUtBlvAJMZ9LHOoJjC4ZmKf5AqmbGbmeZZiB0girW0WpmEDOQDDqGhLZxBXpjDXe+IaruTN1eN0/UzZlsRKnxKzTECHE84tOCwEOmu+mIRURmWW5IMcucws8LuJ2mzSRiGENlxyINucQVvB5OILLO0FR7Tanr2qZgMMw2WGe9zAKoCJil43nvHfUQtgkRESKtLQeY+IRcZZZYBGKjImzTNPIvcs2FHJM8NaX+IhOgrovO8CLmi/rg3GwXZ/2qp86R2PG49x9DR1TplGs0Wor1mjvrWym+lwyWIwyrKw4IIIOYc8iKunaEXPtlhYxnryRNmeJmyBecRa8CB6MQuCcQUuZXXxmVgkboH+cW2ALkTA9ZNZjbmgrY5ldZ7iKxwGgdJmh5794BqIu0QJSYAjjdBa74MLXzdauRFGmBxMUPPRh4K6pqdH1DxCnUup1Eh9D0pP1NqkdwSDsU/wBmYTwD429IbeIvBXQeoeH9TqWLdRq1IrWq9/8AzVVGOxj/AFckHv3zm/0c9Wo8J+ML7NX4F1FmKruXfpTk/vUdzUTyyDt3HzB0l/SaNbo769VpL6ltouqcMliMMqykcEEEEERXyoM/UMx7zyyTtgprIIi7jEF0UpgQs8wgzFaqEZKiWVFpYbTzLHIhWsZg2fyDaYih4ELbWj+ccNGe4DM9z3gNJGYbnbEsF5OJYAIyaU/iNvcZMNlhhstyFzCrqcTTdP6LfrNZeml0mnqa2+61gqVooJZiT2AAJnWfHvVtf4V8Bau7pHglSarNVVmvU9U7gknulR+SdyOW+g8eeMtBR1fxFangrolwD1fqqTZrLVPIIpyNoP1dgf7Gein0ZXp4W8NdX6t4m8aIwPUbrtTUNLoR9hVKwTYfpu9n5zXelPxGOsdZFvTfAmjtxqtSOH1rDvTUf+p/lOm9C8J6bp2gSrp/Sen6VKaKwdqUU1rtVeewVQJ4K9Ifijr3TPDPVf1mq6VdstDDaL07edV99e7K5/7qTWaxkypk4xCwbEdXaFLJ7QBaV7O8qRe4iNxuiXVGLtcwHVxVpBi1DvA/zmV9ZFbSzc0sdmjhicGeXcIBph7UNpwDPM7iVp3ErXgTNDYjF3OIVu5iAjMqrQciX9H8D9M9GXRtSab+sV/q+sOh5/SqxFdX4d1JP9q8dmnTdf04elfxTpE1QS8p4d0lyZUMhw2qI7EhgVT6FSZU9Vg3cEYO0kH/AJieZ/EvbqT1p7fR3a51dpsuLa0sWydOSe+Sf9qecf3mi6N4c0fR+j6Ovp/TNJUKtNpqF2pWo7ACabxr6NOteGOpW31aLqWmNFtmntKOueQQR9CBweD2IIJB8VegX+KX28jqfRdZtuVSVr12nb/82IQR9CfqJpuqeF+ndY6df5+g12mr1Oms7b63UMp/5EQscFottPMTa0xa0KHvHXsZay9zLFfljMpgtPOqMLarIHzhTTSwOY5cZnu/XuUwWE8RAG9mKqtgRqbeIwwpMFuMmKKMiFMxzbiedR2gKOdsFFrcdjPJc8wqmN01fij+NHxed5sNWsr6fpq88KKkWvA/LBj+TNN4Z9H/AEXw9oMJo+m6GrS1BRjIRQufycZMLg+3DdaeZ5xEDU5KSjp3jTwV4ppqxZrtLfotSQPnSwdP8kWvL+rfwhdFS5za/T9Tfo8nvtV96j/CuBHV49aRrlMdmPEcAw74DTBUpIhrt7zzgATKzgxPLxBa3Amwzah/kAUxU3CC4mDYxhpumCOYHoEFomLYBVAaXh32YlgtMtEv6L/GZ4vuvTc1XXP1e36qxFo/+CINVoKdVQ4sourWytx2ZSMgx/qYxsEAAzKv0v8AiaUaD0d9GRwdSbNZqXX7VArRf+ZLS2r+Eim+wYTWdX1N1X91G2v/AKq2hNZOI6ORiGw4Igas8TYjcQ0W9psrIm9DHFuYa25MCJ3gZsbolqxCn8uUMdt0atyTAKmnmXGOpzDTUATFPBaJY8BSB62nmu/EJJ9mNXu9majp3pD6T4701HwHU6V0escDtqKwdhP/ABV8D/0jKPGnoQo8OazUA+JegVCiyt29u/TDiq0fUAYQ/QgfcIwsxiHvtn6VOZpen9K1Or1mpTTaSio2XXWuFStFBLMSewABJmq9M/8AFFqtf0am7VaIunTeg6YD23rDEKcfV3Zm/wDcBNN4N9EHhrwpQwcdO0SVWuOz2n2rH/y5YxX0/aDk4i02SsjES2huJhmIEet2EawQqpOI1bx1jq3eYCgtBag5m5f5AYrq0O18CWFmG0xhZlli1pCVO2W+ZHDDM2VcmIMjMrscyqxIjA8Tonj30bdW8K9doL6DW17d6Ab6XHKWIfkykAiekT+Hn08U2h7endQ0thfpvVaUzp9fV9RnhgRwyHt2M8D+JNHptF43x4O67gK9zBrNHe3zYOBmvP0fgfcZ4L1/TF1PT/FnRtdQV3CyjqdLjH+Gnos8HaCx+p+Nem3XqONJoLxqryfkNlWSM/VsCdd9JNV/h3oNN3QPCBf26i2dRrsHjzSOAv8AoBI+pM1nRNXV6QfGOhbT9UKf+DaC8YegMCDdYp7MQcKD2GTC165g8gRPLMzYcRq35iCrBaVvW3Ii+e0Umb6TgQqWO2bSZiMLBHYCZp9e0GBGIzBaMZi3IYrEkrEqRjibLiILRyJWgyRK6TAUIDR3JwZaGOcwoOTEKcmVB+4nhTx/4Nv6B4s6Pp+tdLtO7y7hzW3IDo4wyNyfaUg8zVfrr9b6OvFNL6Y8p07rmVZPqBdWp3f2yg/M9OeivNdXhKjXJ99HWdIF/wDvYpnpY6peB1duleHKP6zfrPOcD+wqDA/5YTwX4A11HVLxZ4p8RVkMmt1tYFdLfWqrkL+SWI+RlgP7TDQ4JE8urGY1sLgkieTUTGqYgNHcEbobLDzHZxC+n5EC0tkTZawE3EgRnsBxCgHE21+sipsR1taMtnJissTYYgreBtWcGZqHzhFJxLRaY5bmK8U15AjVA4lqsZYpjGxQTN+lzH3kCG1+REZOViYPswUoxAhrtIzBYYp00HkWRmveWEQq/MXeuYn6aDyXm+9oXccQYU7YK6+02r68oYuWMNVp2wqeTAKG9qcuN08zU8njMQ0gZldlUqYkxKQYK7duYllQ5lVqSshjEQnE26oTdpxFJiKYuyIqGA1PG89o9bz4fkwNQ3MD3mVmntEqc4nl3YzC9HeGyhoW1ZyPnK0xkSutB2ibcCZHr2o09phDa5j1KTLFrYCW2WMY4uzzHqUAw7CJlTCyNG87OYyiHZBtIzBbnEJ1IMCaaAPibzB5PJi1o0Wx2BMFxzBXyJ5CYz2hcEZh87MIpxGfdGF8ygzFt00StyYunzzBvxunm45m5PWTW0ZrjPrB5DYjMx4jN/TCD+2Onylv0Mtlqo3Bji7tLGHAMtFWcGWV5jvbNgDQVptzGteFBmCqk8wDeA0zectK9nLSvyjzAzMFj33R2GdssC42x9hysNFhyIKDgtK/JI3xGRsNCXbBlhvjttmafWNhiI7ZlSEgNK2XGZS2ZT9RKfqJT9RKT9JVbFepsCe/PswImSJXVQZWC0TzTESmYt7xCMkytKe4g8pgHhd25h3d43YGWPXH3kmBrhkRBR2lQOJW1JgQNiGu04jgY3GOwOWhsMLuOIUA4m2r17amjJa+DLWc4aWkdzLvqZd9TLvqZaB3MsV+TGZwMxX0/Mr82KlJIhrrbmMbH5h3HmO64zHJzzHo+ccKRujWAjMLE+rLyvyOYgc4g88YhGj4j+eY3kczKNC1jcRlXsYRBviELE2CAL68VPCdS8820RfLyREHylX0EQ/IRfKOFnlWtCl4nl6OEakjMNtEZ62lnnNxHh3jMUUHiBS2I5c4jiEerYYUqxum9+8BuERtPKy5MSug8wOWAi2seJigkLHV24joe0srIEZkEzX6uDPdPPi2g8yJVpoiMeYn3RHfvFs00GWmNTCdBx9JZ+rP5jNSAZ5tU3OfZgH9MFGTiLUjCC21p5wmyljibHYQtGjiOXj0nM8tMFoD84XrIBjXWmZ7iCzTniBnPsz/AEwo/aGqbU9funnxjfn1FdK2DHFz8mPnuY5uHJhbRT90+MgfSRWuJIgQRTX2lXOQJTsPAiCt8Rw7gRjfzE8kZiDStB+oYCeY+JupziMjdoW+UNVLGWVuRLbGllqRu5EFWMiIUxEb5CV4PEqWIO0wvr908+Lf8/8Af1fCt+IfNeH6Q+eJjRj8T90+MgGkieZFaDycwVAwKSN089WGZ5oY4hpvPEFKYzBZp2G6F7zM3iLZphxAzdoFTtFTTtxN97AD5wsw9mKlYyolVdRldLkZis+N0Vl7wKp5gRyMwWPNyev3Tz4xvzOYbNGY72NhY/2mOloO2GvSYmN0+Mjfo+JYtxzChwTA9MZ62xLfNPeOG5itURN24gRqnMezKxic4my8QCgRIhrOJmp4G1cRagYlCd8RBWw3zLnDwi7looqHtRWU4eNbacHMfMIrHr908xqmirbyZW9HJlLse0olKStKCMwNYwzM6sQPphBtY7Y1NxxCDgmLbVKyGOBEpDYgNxGYLqIqk8RRdE8qKmpgWjvGYnBjskNlJhTVQVafvMbgHjlj7caxv3Rt8tRP3Ry+GaLYRkxNkG315qeN57y2q0y1V7mW/WWSyWFSMyy14/nAmYpED1mAhjiNRacRxxCNO0sYvLHvhGlEJVsCOlxlhQiWC3MsPEa0Amba4HqORNhc4j1hgJa7NLSZYX7GM57Qig8R6rTLK3xGZBM1+vejTzXYhYd54jj5R/oY/wBDH+2P9Id/InlPyJsT1BkPE3scCFW7QmojEZ3bibH/AGzZTjE81GhLn2Yfthz+2FH7QVqMiKqwFDA6NxC7txCSfZn+iYblYK/6YDSeJudsLCr9oasTCevIitE+giRIkSJEip8oF9WRAYBAYh+URfkIAICDEPyiRIg+QgX1giKc5ESJEirBiISciIPkIEmB/ur/xAAUEQEAAAAAAAAAAAAAAAAAAACg/9oACAECAQE/AEgf/8QAFBEBAAAAAAAAAAAAAAAAAAAAoP/aAAgBAwEBPwBIH//Z\";var Fr=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAMe0lEQVR4AezdbXYTORMFYHUGclhG2EHCCuAXsAtYCbASZheEX7ADsoNkdjEH5qTH13E5bafdX5JaVaXLoSInsdXSlR7S1ry8nAX+YgJM4GQCBHIyGn6DCYRAINwFTGAgAQIZCIffYgIEwj3ABAYSyAhk4Kr8FhMwkgCBGFkoDrNMAgRSJnde1UgCBGJkoTjMMgkQSJnceVUjCdgEYiRcDtN+AgRifw05g4wJEEjGcNm1/QQIxP4acgYZEyCQjOGya/sJEMjRGvJTJtBNgEC6aWR+/OLb5UXmS7D7xAkQSOJAT3X37Nvl6/umuT3/fvnp1HP4dX0JEMgKawIcZ03zY3uptvlMJNskTHw4MzFKw4M8wCHzIBJJQn1LIBmX6AjH4ZWI5DAPpZ8RSKaFGcQh1yQSSUJtSyAZlmYSDrkukUgSKlsCSbwss3DItYlEklDXEkjCJVmEQ65PJJKEqpZAEi1HFA4Zw2Ik0gHb1AkQSIJEk+CQcRCJJKGiJZDIZUiKQ8ZCJJJE8ZZAIpYgCw4ZD5FIEkVbAlkYf1YcMiYikSSKtQSyIPpVcMi4SiORcVTaEsjMhV8Vh4yNSCSJ1VsCmRF5ERwyPiKRJFZtCWRi3EVxyBiJRJJYrSWQCVGrwCHjJBJJYpWWQEZiVoVDxuoEiUxHc0sgA6ujEoeMl0gkiawtgZyIVzUOGTORSBLZWgLpidYEDhk3kUgSWVoCOYrVFA4ZO5FIEslbAulEahKHjJ9IJAm0yYpAdlGaxrGbQyASSSJZSyCbKF3g2Mxj+5tItjGk+lA9EFc4ZFcQiSQR3VYNxCUO2RJEIklEtdUCcY1DtgSRSBKL26dAFndl54VV4JDlIBJJYlFbHZCqcMiWIBJJYnZbFZAqcciWIBJJYlZbDZCqcciWIBJJYnJbBRDi6OyHBEjOr199RaadXt0+XBVIiRSxkPt/vKbEADReMwLJ8+urHyG0HzaZVoHENRDiGNC5AAlwNCG8Dg+/LmpA4hYIcTzs4sGPM5Ac4ZBu3SNxCYQ4ZP9OaCcgOYFDOneNxB0Q4pB9O6MdQDKCQy7iFokXINuFIo5tDMs+9CCZiEOu5xKJGyDEIfs0ou0gmYlDLuoOiRsgTdN8klViG5EAkFxf3XZOq+Z25gqJGyB/te3HNoSfgb9SJHAR2YkbJG6A/Pv+5o5IIrd12pe7QOIGCNY2DxL0zFqYgHkkroBgEYkEKagq00jcAcHWIBKkoKrMInEJBFuDSJCCqjKJxC0QbA0iQQqqyhwS10CwNQTJ5vHdpnT9rnM0ppC4B4I9eN+c4T8ixp7toytWmgTMIHEPBH/7LYT2Q5p1ZS8JEzCBxDUQ4ki4nfN0pR6JWyDEkWdHZ+hVNRKXQIrhaNrPAZVhF83t0tjz1SJxB6QYjs2ObO/DP7/f3nw5a9uXhLIJZN5vlUhcASmJo7sXcLS8hxICj5fD5F/qkLgBogVHdysAyuanyRv+NOmmMvpYFRIXQDTikG0AJPufJnx/IrGMtWqQmAeiGUd3F3ShtCFY/otdYaVfKpCYBmIFR3dDAcqfd7/etG37cfN1vj/ZhDDwuzgSs0As4uhuhD/vb/7m+5NuIicfF0ViEoh1HLIV8NOE708kjcG2GBJzQLzg6G6HAyg8Fu5G031cBIkpIB5xdHcAoNR929VNo/fx6kjMAPGOQ7YDkPC2S9LobVdFYgJILTi626ELhcfC3WS2j1dDoh5IjTi2W2D3AVB4LLwL47BZBYlqILXj6O4HHgt309g/zo5ELRDi2G+C/QP8NOH7k30c8mAaEnn2zFYlEOIYXsUDKDwWRljZkKgDQhxY72kFKDwW3meVBYkqIMSxX+zJD4CEt137uJIjUQOEOPaLvOhBF0rlx8JJkagAQhyLTPS+CFB4LBy2SF58u4z+/0KbAqR3IVJ9kThSJXnYT+3Hwm3bfsEfFoepzP+sKBDimL9gc16BDVLj+5MNjo/4A2JOVqeeWwwIcZxakvRfP4Di/Fg4JQ6sRBEgxIHo1y9A8XwsnBoHVmh1IMSB2MsVkHi87cqBA6u0KpCnODAEVokEulCsHwvnwoF1WQ0IcSBufQUolo+Fc+LAaq0ChDgQte7CqY+19ye5cWDFsgMhDsRso/DTxMZIQ1gDB7LICoQ4ELGNevbt8vX59VUb2uaz9hGvhQM5ZANSHAdmxxpNAP9zjOfXVz/OmubH6JMVPGFNHJhuFiDEgWh1F2Ccf7/8dN80t00Ir4OBX2vjQCTJgRAHYtVdAsPC7ZQkWQIHrp0UCHEgUr21e59xawkG0iyFA9dOBoQ4EKfO2t5OXb/6unufcaFzlP2jKokDI0oCpDYcCM5K7W+nQvvByphlnKVxYBzRQPCn0+ZU2lz4mLzn2t1OtdZup2RNNODAWKKB4D8ubf4L7Et0xiqfAP7AsnRs25eYFhwYWzQQdEIkSKFsAYbcTlk5tu1LTBMOjC8JEHREJEihTAkMq7dTkpo2HBhXMiDojEiQQlTNevHufYa5Y9u+SWrEgXEmBYIOiQQp5K3t7ZTRY9u+ZLTiwFiTA0GnRIIU8tT+dsrgsW1fIppxYLxZgKBjIkEK6Wp3O2X22LYvCe04MOZsQNA5kSCFuMLtlPVj274ELODAuLMCwQWIBCnML8CQ26k0x7bzx5DrFVZwYP7ZgeAiRIIUppfAsH5s2zdjSzgw/lWA4EJEghSGa/c+w8Wxbd9MreHAHFYDgosRCVJ4WtvbKUfHtk9nGFb7O+R914752qpAMFAiQQqPtb+dcnJs+zizx0cWf3LI6FcHggsTSQi72ykfx7ZY1BNlGQemdIYPJapWJLid8nhs27eHrOPAnIoBwcVrQgIYcjvl7dgWa3lcHnBgTkWBYAA1IBEYHo9tsYbH5QUH5lUcCAbhFcnufYbbY1us3XF5woG5qQCCgXhCsr2dcn5sizU7rhw4jq+x9udqgGDiHpDsb6ccH9tirY7LIw7MURUQDMgykqZpvtbyPgNrJeUVB+anDggGZRkJxl9TecaBdVQJBAMjEqSgu7zjQPpqgWBwRIIUdJYDHJOCVQ0EMyASpKCu7vAvUqkbVYYBqQeCORMJUlBVF+fXV7eqRpRpMCaAYO5EghRUVRVIzADB1iASpKCq3CMxBQRbg0iQgqpyjWQZkMLrQySFF+Dp5d0iMQkE60MkSEFVuURiFgi2BpEgBVXlDolpINgaCZHcoT9WdAKukJgHguWMRdKG8PP3u18vQ9N+Rn+suATu2/ZjXA96Xq0OyNJoliJpNzj+vPv1Btf9/fbmC5EgieW1wfHmv/c3P5f3oOuVboAg1rlIujjwehSRIIVl5Q0HUnAFBBOaiqQPB16PIhKkMK884kAC7oBgUmNIhnDg9SgiQQrTyisOzN4lEEzsFJIpOPB6FJEgheHyjAMzdwsEkztCEubgwOtRRIIU+ss7DszaNRBMUJAswYHXo4gEKRxWDTgwY/dAMEkgkaNcfL6kiOQxtVpwYMZVAMFEUxSRhFATDuwZAkEKM6pmJLXhwLYgEKQws54imdmBwafXiAPLRCBIYUHVhKRWHNgWBIIUFlYNSGrGgW1BIEghojwjqR0HtgWBIIXI8oiEOB42BYE85BD9MRuS6JHN74A4HjMjkMcsoh95QEIch9uAQA7ziP7MMhLieLr8BPI0k+ivWERCHP3LTiD9uUR/1RIS4ji93ARyOpvo72hHggkSB1I4XQRyOpsk39GMhDjGl5hAxjOKfoZGJMQxbVkJZFpO0c/ShIQ4pi8ngUzPKvqZGpAQx7xlJJB5eUU/uySSFXFE56SlAwIpsBIlkBDHsoUmkGW5Rb9qTSTEsXy5CGR5dtGvXAMJccQtE4HE5Rf96pxIiCN6eQKBxGcY3UMOJH5xRMc9qwMCmRVXvienREIc6daJQNJlGd1TCiTEEb0MBx0QyEEc5T+JQUIc6dePQNJnGt3jEiTEER17bwcE0htL+S/OQUIcidarpxsC6QlFy5emICGOvKtFIHnzje59CAlxRMc72gGBjEZU/gl9SIhjnXUhkHVyjr5KFwlxRMc5uQMCmRxV+ScCyVnbvvT075CXT3V4BKmADF+F302WAP61rGSdsaPRBAhkNCI+oeYECKTm1efcRxMgkNGI+ISaEyCQmlefcx9NwACQ0TnwCUwgWwIEki1aduwhAQLxsIqcQ7YECCRbtOzYQwIE4mEVOYdsCdQNJFus7NhLAgTiZSU5jywJEEiWWNmplwQIxMtKch5ZEiCQLLGyUy8JEEimlWS3PhL4HwAA//9O44MMAAAABklEQVQDAGCL7+uOGrzfAAAAAElFTkSuQmCC\";var ei=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO8AAADICAYAAAAA2bY3AAAQAElEQVR4AexdbZLbNhYENTnE1marlv7l+Aje1NaONgex5gZzgxnfwDeYyUESTVUq9hG8+8vaqnUqh4gHeQ9DWR9DSADZIAGyVaREgfh4aKCJhyZELQxfRIAIFIkAyVtks9FoImAMycteQAQKRYDkLbThaDYRIHl3fYBHRKAoBEjeopqLxhKBHQIk7w4LHhGBohAgeYtqLhpLBHYIkLw7LHi0Q4BHBSBA8hbQSDSRCLQhQPK2ocIwIlAAAiRvAY1EE4lAGwIkbxsqDCMCOwSyPSJ5s20aGkYETiNA8p7Gh2eJQLYIkLzZNg0NIwKnESB5T+PDs0QgWwRGIG+2WNAwIlAUAiRvUc1FY4nADgGSd4cFj4hAUQiQvEU1F40lAjsESN4dFiMcsUgi0B0Bkrc7dkxJBEZFgOQdFX4WTgS6I0DydseOKYnAqAiQvKPCz8J3CPAoFgGSNxYxxicCmSBA8mbSECnNuP6wrq9/WV/qZ8pymPewCJC8w+I9WGlKVNlvrt//bI21n8yFXeunfP/kwoXQgxnDgpIgQPImgXXcTK9//WmlRJX9tsWS2oVbu3bxWiIwaGwEwsonecNwKiaWjqqmqu4CDK4l3o2LHxCZUfJDgOTNr006W+SIaG3baOvLU0fhFUdgHzx5hy/yNo/WhSKggpRzh0MT7OJtR+B6F8SjEhAgeUtopRAbVZAKidceR0fgEFe7PTVDR0FgHuQdBdrhChUFeQ0o7ZLuMwDFAbMgeQcEO0VRzl025tIgXlWlAlaNyIp5pEeA5E2PcdoSLuwNsAAlLjI/oGnM6hgBkvcYkYK+N24uZtTd1tvaVTOab0P4mSkCJG+mDXPOLLktVMt92niR6VzGev7CpslX8+YOQ4DkhUE5cEY2KcHqZlQfuFIsLgYBkjcGrUziNm4t1l0+rpuIV8dB/J4XAiRvXu0RZg1WpPKVWYtrTvfZh04G4SRvBo0QY4IQStXgtKPu1iBrL5tRfhsyrc/Ca0PyFtSAQlxdCRWzdrlv7WpD8aovhsnSk7zJoE2QcVqRymcwxSsfMiOHk7wjN0Bo8Y37Ooy7fGwUxatjRLL4TvJm0QwBRgwjUvkMoXjlQ2bEcCh5R6zHpIuWue5wIpUPSYpXPmRGCyd5R4M+rGAh7tAilc8wilc+ZEYKJ3lHAj642HFEKp95FK98yIwQTvKOAHpokaOKVD4jKV75kBk8nORNBDkk23FFKl8VKF75kBk4nOQdGPDQ4mSuO75I5TOW4pUPmUHDSd5B4Y4oLO4pkBEZQ6KqeKUXF0hmzKQbAiRvN9ySpgI9k+rQxqq6Nbofhvb5xmde9UEPkJbkBYCIzCKJSPWlWr57vXyru7H2CmZvoHgFK48ZHSBA8h7AkcEXtEhVVffv/rl82Nbs3fc/3MsIfL/93vOzlrk5fzbYE8SuyUnersglSNc8vQK5fnkjo23bSPsWZj7FKxiUsRmRvLGIpYwf9h9D4RZ8qdqIa4TQG6D7TPEqvEWgMUleKJzdM0vgfj7su8vPLFss1JXePAvvFkDxKhA3ZLQFMjPm1Q0BJ1JZu+qW2pOqah91t7Hd6OsZmbdxoj4pXkXBhYhM8iJQ7JsHXqS6deQ8Y1czMusIfCZm0GmKV0Ew4SKRvDgsO+WUSKQKF6TOjNBRlaJ4FQVX38gkb18E+6YfSKTymelGaNziDYpXPqAThJdO3gSQDJfl4CKVv2o/yimKVwJCSRvJO1JrjSFS+arqRl9rw11tX0bbcIpXWySSfpK8SeE9kflIIpXPIrfyyhiKV6acF8k7QluNLlL56kzxyodMluEk7xjNkkak6l0T5z5XFWzds0F7F71rOK0MSN6B2zMjkcpXc9zc15hLN7f3lcTwXgiQvL3gi0vsOvLAK6niLDTodc9GRt+7WBsYPwwBkjcMJ0wstBsp92edq4uxbpfL07pnpHjFp27s0IUdkbwwKE9nlK1I1WK2uyB8qXDus3gbMl2oW4pKFTSLfEneoZoZfe8T+aOCFgzQ655NXs+fbqlxeUEk7wBtJqOOzvuQI8/pn/uh6oS8dWQoXqGaZZsPybtFItGnEFf/rmQFzR7p0p4wzLnPMq8+ESXuFP/rNw6vM7FJ3jMA9T6NdhflPmzj0vY2LTAD5Lpn/dkgxatA4M9FCyTvuWx4vg2BBCKV3sppfbRNW/mIMDf6Itc9U7xCNIvLg+R1MCR6w4tUy0SWnswWve5ZCuPoKyD03Ujevgh60stcVzto7TndJXgYkcpnGVK80tH3lzXyKZk+qycdTvImaF4hropUt9CsBxKpfDY791nm277z0eEUr6IhO05A8h4jcvZ7QITyRSpfJXELN4ypG03AVxbDzyBA8p4BKPa0W79sDNQllFFvUJHKeF5ix8ZYi7NFNAHnpXjKY/BpBEje0/jEn0W7g0iyxNfmeQrwumcpQLUB+eAWiwDJG4vYifgyimhHrE9EiT310Ci9semSxXejL3L+be2q8VaS2TzVjEleUMsKcScnUvmgcYtEnHjlixEZjvZWIosvNTrJi2q56YpUPoQoXvmQGSic5AUA3bh9kxSpfPA499lixStfWQxvR4DkbcclLhT9I3skKeJqEhcbLF7J1OMuzoB5xyZ5e7Z/c68SOepmJ1L5IHKjL1a8KviZVz6U0oWTvH2xxT8JEjmX7Fu7s+mdeGUM7JE5Bu3FmOm+SN4ebXv9/ud1j+TPk4qC25Dh+bmcQ5Drno25bLyZnGuchW0kb8dmSCFSiSlFjbpir9uc+4z80X5V6f1ylzff/AiQvH5sTp9Bu3ciUjkSnC41+uzf7j5eHu/RmYQlQP9on+LVGdzzJe8Zw8c83bh1SJFqg15J9e3dx9W39//5ZKtqfbxL+FrP/+XuY43C0V14rMV5DtZSvDrTOCTvGYBaT+NFKtxifzFYyWmebPSR81LPX1TVJx2VJQlkay5AFK8gaJ7PhOQ9j9FBDPi9SLBI5YhrzKUJfFkZmZEjsFwUkBcijr4n2pHkPQHO8SknUlm7Og7v+R3mav71x/+q0BNM3K3dMgKvUQR27rNckLZ59/7kumcvhCSvF5qWE2iRShRa19lbijoICvii7m9lbdend9QXEaN1gDmwC5KUpU+cpHglQBxvJO8xIp7vSUSq10tYJxf3t18Hr6o3nqpHB7sLkrU495niVWsbkLytsLQEou89Av+upHGX6xarY4IuUa6zKxS87pkrrxyqB28k7wEc7V8akaovOfYzhz0JUgnXw13etwl67EZf5LpnYyheHbUQyXsEyPHXJCIVcDmhiE393OW9Cv9+9Wqz97X3oVvqiRavels1nQxI3nNtmblIJeZHq8uSpm2DEnevANi8XvJU8UoVdTnkRvKe6AOTF6kO6l6hFlcc5OrcZ6x4tZJpTH1QyEy/kLynGn76ItXX2lf2Udcmf/0OPXgSr1AjuxKXo680EMkrILRtcnXXDqIdpe10l7CcRarN/69eJRl5FSg3+gLVdWPtymkRmvmM98WM6+6tuhC3lg7SdcFDe75A5RUpUqmxlQXek9UMW3YnXhmDu0Bw5ZXhyGtaXvgnQd42nbelsLggXUklKVAilWRlHlKOulrA1x2oskuesxevSF7pBftb444hybERtxGmuNqnXwvtm9zr+MsAo+7WQMFhY6oK59FYcZ8/rJFTm62pRXySvMfNhHbHgHM90EqqrzWWC8Et+t7u18z9ByqMbfyno84ocVWbiEo0lcgk715LylxXO4J2iL3QXodZi1S/vXkJ8whCUXKjr7W4cnX0/WWN9JRCqzJ6PJK3aQIhbuYi1UIvLI21/T8scuVTpDngH+0bg/aWIuszVnSSd4s8XqS6x4pUdrU1FfC5GWPUPbAbLV79+hMSnwNTc/1C8krLJBCpjLiHsJ/EySgJW78s1TUiUi31c8xd8NmIeHUPs6Gqbpz3BMsw/4xIXm0j9Ppla2HEHUukUlgG2HFzX2NUq4BOLUzmr9mTV67W2uBIwQP2dyUJfu43vru8Rwg3+gIvdMbKraMZiVezJ680OO6+o3ZM4EqqxWLxRrNE7XZEkcpbh6d1z1x55QXIf2LW5M3570qmPupuu6QbfYEXPMm3bn4NJofT3mZL3txFqouqWiO73hDrl7va26jyuNFXxKuutrSlyzVstuSVe4M618W1i7VZi1SDrV/uiij61tGHNVSh71qtlOlmSd7GraJIlbJnRebt3GfsuufJP/NqluSV+4vYqzJwzjYLkcpPbOy6Z/QtQL/do5yZHXnl1hCWuKLgNnO23g04F5HKB5Qbfa1F3vud9H/9jkFeX9slD3cilYUuM1SbYZ1NRCrohSVnkUqBa9vh654nLF7NirwpRCo3WrT1wsiwZiUVcB5e3WcvUvkwonjlQ+YgfDbknZtI9Xn1EqZ+7/cYmXa4J1jI541i6ryZ/QiAY3dBlOkIIKunLCb6dymzIS9Fqqd+3PXdkfX9z5+Mtbrfyuetw/TCrq8lXIncNW9POth0RPKv4V6XZDr2NgvySseDziWl06J+7mdyF6kEu1rIuXZkfVr839Zna8HkTuLC7p270ddapPdwmcJLaANjqLDJk9c1mLXo33rCRoWcRSohYy2k/SSdMWwubu2tI7okgGxc93wSxsmTF+4uVdWtGxVOwhp28tu7j3pRCSNGWJbYJ0F2e0AB7PaMwxl4D10grOWChPXCJNOxtkmTt5mHIcmxkQ4FGXXVXVZXE9nwn1ffwX5k34yg3bAD3p5x99DR4tVEnjg5afIKOWBzMEcy4JMgE6ykunU2At7cVMOYbsQ17lU3ebgvgW+nokEumE0BtXxi+4VkOMY2WfKKe6QNpA2FwnU+T4JEPNBt8QjDXrydjcy9ceKVaCDgiwuqj0XlM0nyCnFVaIGNRA5R4MKBzEWqO6kvjHiSF2ajePUMx0mSV67S2gGfVbZzAFCkyvnvSpqLnoponaFKldCNvmjxqvAnTk6OvI071Ge+dtz/YCKVZmxz/ruSbuqyVuv5/rjYPA/sF+LEK2MeDOolwpq7YKHyw+UTlNMiKFZJkRDztf36AkWqZv0yzCWVCwHs70rQynxDtH0kMcfA6YsYpG2h2ogclrdNirxyFdWG0AZBtcR8RCoZhVCgicp/D8vrKCPnPss05ii4+9eC1z1PhrxCXIpUHbuwYIe96P1h9Ef1Ha0JSqb5o9zyGr6QJ6gK/SNNhrwUqbp1BiEu+qIH81Z8NXKjr7XIe7+wVWE+m1OET4K850WqaOgoUkVD1iTAKsJNps8/+KN9YyZBXnF7sLeG5iJSPf27AE6ZryrYr62e07UlBCxeiReC7UctJiODiievAI6dr8mtCJRSquuXK2uRi0Wwf1eCVubTz3UP+r5zn+WCcRDY50th4lXR5BXioudrxgDdPvT6ZZnXw+Z5gh32oickQl30IvkHw0TKLUq8Kpq80pmxbg6wAyYYdR8+X70C3IIxRoiLv+gNPOoK0dwGH32NuWw0I2r0sgAABSFJREFUFJd/zm/FkrcBGDdfk1aSjgBb/H4B/ruSL9bCbINf9IBTDWmGLhty9DWioahX0sWOQdMUS144wF+qJQr5rFdSoUUqBa2qUPdcNbfoXS66Wj5u2aQx+qP9OtqQgRMUSV70Uj7BHHZvMoG7nLdIJeDJSD5qR3fTAGOQXlhtjHkje9ZbkeQ14MX9OYtUVubhqB4knVzdQe2YqCy3+Vxe6xMkP6zvpIw7vbgOsn9Y30h5N3Lx0OdsmfjXiRTWrk6czeJUceSVxpqTSIUddbG3rY47cC0kWrldL65D7Fof3Y8twXxPcZHDWNbkUhR5nUgFviLKfAkmBIlIBb2wiEgFm4fDL3pNB5ryh2CWNYGLIi9cpLIWRlyd60pHhs27bFXhfu6nD1yz+buBgl9e2x+G5DWAl86hJBsYOSSvh2Z9rBz238CjLtpdhnoE/dFiDggEsCMvwiJfHlX1xneqUzhwJVWCUReyGENxaVw/5EVPs+WeAQLlkNcYXAcUBRe5lA+8DBI76j4+4nAzM3t9Y/T+scn1VQR5G5cZhiFSpNJRF/njA8kLNg93gC0W/3KffItGQPoJyRuN2nGCxeLvx0Gdv1uLJUdnQ54ntCJSwf9T11Koeo50UAhyxVZQgbGRihh5pVK17IgNKlKpQd8Y026biX5h3WUp3t1ak09uHRCwVh+10yHhcElKIS/GfQGKVOgmsjIPR+dpMp+zwesLzBB5JwJo1kFWZZD38fF/B1Z3+SLkQIpUWxNAbi581FX7cp+zqY1Z7jJ9ydKuI6MKIe+i98grHTnlXLeXfciVVEftq1+zn7upkRntD9JXsD8xTFS5RaJ8odm6EVNGzs6ZAn/u12ZDH5dX0sJWUrXZZrDPeWot4mxgOREe3v3j37AlqamrXQR5GxC6XQ3FBXLkbzJJ8fHbm5dqW4cRrrpv0qYwy+Upo8hGCIx8jpbLd4JvRRFX8S+GvE0nfCFGb2QP26y9knRKrLD4PWKJ66tueTCBdcT9vHqpaXqUGpz0RxLYi9XGiGdW0oi7rUkx5FWDhYgb6YRL2c+NJE8N8v0PsGWGWv6p/ferV5vPq++WSkqJt5Hdt20qa5epR9z9whU32d8auZhJePAFRuJOedtoPxLSvkjtmaUCsSjyKgjSCTeyvxXgX7jOqHPh3X4rjVHJPlqDKCmFxC+UoMZUevFQsshe3WuYngMp1Cb2pbc/BBu9+O2wM0Zsc/vGGDPl/UH6zL3suz7yevnWDP0Cllccebd1FwJvXGd8vVTXeLtn0xhKUHWLhazLp/3llYZt7R/z8wA7EWiU0LK/mPi+lHprP8mmj/TtA8WSt2/FmZ4IlI4AyVt6C9L+2SJA8s626Vnx0hEonrylNwDtJwJdESB5uyLHdERgZARI3pEbgMUTga4IkLxdkWM6IjAyAiTvyA2ALJ55zQsBknde7c3aTggBkndCjcmqzAsBknde7c3aTggBkndCjcmq7BCYwxHJO4dWZh0niQDJO8lmZaXmgADJO4dWZh0niQDJO8lmZaXmgEAoeeeABetIBIpCgOQtqrloLBHYIUDy7rDgEREoCgGSt6jmorFEYIcAybvDIvSI8YhAFgiQvFk0A40gAvEIkLzxmDEFEcgCAZI3i2agEUQgHgGSNx4zptghwKMRESB5RwSfRROBPgiQvH3QY1oiMCICJO+I4LNoItAHAZK3D3pMSwR2CAx+RPIODjkLJAIYBEheDI7MhQgMjgDJOzjkLJAIYBD4EwAA///Fol1bAAAABklEQVQDADi0p/r9hNzAAAAAAElFTkSuQmCC\";var ti=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAMAAABrrFhUAAABOFBMVEVHcEy97COy3y1yoi603zhfjlp3pTJ4p0mpz27a6tcuY6Gz4S9pmS297CQgV50dVJ4nXKGWuuqdzCey4SOevuudwfSLuiVqmNdThMeSwiX///+exPdfjyuZwPSLuyRomCqOtuy04x0lXKZjkyqw4B6OviRxnNaVu+6BsSWVxCKr2h+byiGYxyJSgsKezSGo1x+SwSN5qSdKe71tnSm76hxxoSl1pSh9rSYbU6B+SBgtY6yj0iG+7hyHtySBquGg0CCGruSEtCV8pt13odpqltFZiMdlkc43bLVfjcqKsee56By35h2l1SCt3R5Ddbk+cLU0aK95quuRvPSEsu9roOWycCVdld9NidjBeyk4ec/RiC74+/Hq8efh7cXL2rJ2OwHO3u7Bl2+ty3+tzNbRtZzJ6HSWumCTaUlth7IzAAAAGnRSTlMA3GegQkJuEicObYnMry3To3G00EOj1K3c6e9b4CAAABpASURBVHic7V0JQxrJEsYTEI3GJCa7iqCgEHVRHwi7ind2s3hsEjVegBqJ7v//B6/Pme6ePqZhEHX9BpjTnq5vqquranrGUOgFL3jBC17wghe0HeFOV6DDiHZ1d7oKHUW4q1zu7XQlOomhcqHcFel0LTqHoQJA+U200/XoFGIFjKFOV6RD6N6j+G8awu79vX2Mva7/oiHsndp38abTtXl49E5B7E8RxDpdn4dG5M0Ui3RzfWG496m2nXBXWoBtTxDt7R4CXtRT7UBiovzptM21DAPhC2WIJ2s8ut8cCnjjNyyKdg/tQ/8JuRBdba1lW9F9MAdxOEfhzxnojU0V9goUe0+YgFDvmzkOflSgd2h/j8NTJiAUGl3kYFSB3jf7AqaeNgGh2AELg0ELDwG/ATsOeAZ+n7wHFVs7WENAM60KdKenJHiq3aCDGBR8cxP+rK1pLmdkKD3l7TrT6dGHq2qbMLqJkIPfnNIX6J0DHWUa95dpt+tMHz59Fzo8lnOhup6xOdFroHgGgXRkYd6FvCeMzalw8FRjARa9CwDz8wtwkl5Qobdk8eZZ5BNHFxyMSXbzfSWHzafeC2KEf/lIseS9orE1DZ6+DUToX3LgaQO9uU011N3GE8PYDMLSzIzYBiI5HeY7Uts2oHdyhoLvB8Kj8zo8fTeIomeSglfq7gUtnksLAJq+TjDZw24Of9RhYewZ3VoepQxwWh2DdhF2Dksfl/AXb1jCa8/ADXQQyW4jZEvMVe2bEbGEf/Hsl2ekAEAFsgDb4NPnbuvxEMDhOSkAuNrZbAlykO13NkWQVVyfVOA5WQCIsRKGawX717Xo1xT2FNG/vFwCU9GxguGxbTXW13t0hT1FRIrLCIPOhqwWz6wBAPQUi5CDorNeQmahVMqiicyyWbzy3BoAQF8Rg17awZIGz1D+UDgPpF8prpCIOEyahAylQX1RTxQ9KwjEEehDohbJx53AWvHZGUCMvpV8Pu8Q0F9UYXnw+RlAhHAegRBA9AEAtgs8x3im1x+ghyVgcEWB5yt/qD+RSOQTlIC8HM/R/lNEEpABQoBc/MFnkQdXITwIGcAEhKEyeND/TM0fRU8ikUo5BHjQ86wvP0R/CgBfZC8Bg32Gv34GeAXknyAEpHj8F8QHgATgJY6Aif+I+KDvm5igbv5ECk5A+InB5276GPRMTFA/B3ABMdj/7C0fi76JCeroAC4Ge/r+O9eeoM919IzNPhyO9PX1I/T2RcKPmqswqGgPRH9A1xQU2DM4VlwulWCOCGYJx8ZG+x/jrbJwpL9nbBsmsgBQML8y2CINoMTBlSLOFGACsjBLur4+OTMzFut9TJoQhcKvb8MbHkT+ZRjQg5BucLBJEsL9IEqCETLOIDoqAOVH95iXxmKPxGxGusdAjSbX1+EdL5jJJPKTuB5GNj2WJj7Sj2JEnB2QEoDvJY52vi2Ee0d/AdLDOzuEANoCkAKsoNAOObi+LX20rycFIiTCgEoDIAELC/Njnb1vFon9gu5fIvl5ApYFAkD0AzgwPzoZ7R9MJYj8eZUGTDoE5OY7qAWRUXQne4bTgKxrA3gCIAWpCQMH4X7gFOKjgfj5FWwENATM5zZzo52xBZHRBTTeyyVgXWwCgIL8iqsBCeLwqosEThERP8FqQFFHQC63Od+BdhBBg/4QAUscATINyDsagCiYkPr8oOlP4CMoASsmAj4SAjbXHloJojE47hUxICOAsYJIA4gKYAYmUjLHHzT9CSR/IuUqAFSBoktACXlCggbMIwIONh/UEnQv5HKIANoEZqQaQFUA57xSVANSJPhxrEG0rx9FRClGAYgOuFYQ3TNUErB2cPBwYykjozkiv9MEZiQawHQDCbYJYPkRB8A/AJ7z4CDdQORPuSrANQE9AYujD+QadufgiH+WAZMGYApSCV4FPEjxKsAaAacbYAlY+riArSAhYO7NQzSDyOjmmksApwGTKg1I5OUa4GEg5TECUg3gPCFkBREBi3Pmx7FaRm8OPfniaQOMJ5RVuIKsFZSSkGI7AVcDDK4gS8DcXLsNQezggCMAy7/kaoC8H8Spfyfxp9QBrwrgO4ZyAj5SAjZdAg5H2/qajtiiS0CO7QaJBqzjYMisAWYbkKeuILEBJY0nxBJw2MYXlUTeLC4KGuAxgoIGOK5gnjECE0oVEI2gNBjwdgMcAYdte0sFlB8QcCBogOMIyAjgoyF/vUBCcAWLgiuoJmAREdAuBuATwA4BmxwBS55oSHQFOUdAZQRdCrD8ibw0GOAJwG0AEnCACUinDw/bwUAEPgNOCFgzEoA1AGVEsAb46QhTnC/MNoFlMwFrjgak01NzwTMQWZubYzQgl1P7wkgBSm4TcHzBlCu/igK2G7DTAI6AqamgGYgsHh5C+WUEeKygKRw0aABnBX1qgGMFKQHpYF2iKHwNxBxhwLUBoivIEFDi+0FqA/T94IQoPqcBy4IruCRzBCgBweoAkv+QtgHREzIEA3lGBQyekOMICJ6QzBEwEbAfJAMxaFkZDUAEzCsdAUYDipwGpAy+MKFAtIIKX3hJ4QkRAvaDe3kdfBMMQ8CByRNS5YX9a4A0HCypNSDHa0AaEbDfFZBP2Iu6VrcJUCMwzxkB6gv7jIa0NkASDnqSYp5oyOkGHAL2gnnpQrRryiFA1IB5qSMg0wDOBqgYEGwAEwws6wnYJATMuUYAElAIJDYcmkpLCNiUxMOytGiRswEGX1jIiWnzwjN8TmgNp0R4Avb2AjCE3bBT9doAH02A6wYYV3BC4wh4o6E8pwElVWJ8U6oBhdYNYRTLn5bYgJwxK1h0bg4K0ZCyG/D0goIGSAlgkmKuFcQaUGj5sfuhKVYDNEbQ5Aj46Qa8NoDLCcnTogsSArAGAAYKhRY9wu4pkYBF7Ac4GrCgIKAkSYxTBtQpISYadFWguKIjYF70hNKMDSgU9ltrBF37pAlIPCEtASZHQEZBSswJeTQg6/GF5QS4TaDQ2nv4Yvv7rg2QBwMeAnSOQMrKERBdQTEvrI6GHBWA72FroSeIdOFXWSk1QH1nQKcB8uvv6QbcrKAiGpqRETDnGkFMQCtvM47t+yLAGw5mFUMETIlxhQZIs4LKvLCgAeXm7WAkvb/PtgExJWIKBhRDBPyGg44NKIp5YUNalNEAaATKTccEMSK/1BPSNQFpXph1BJQ5Iewmia6gGA6a8sJcN1Aul5tUgSh+H7C3CUjywktcXlimAawKKI1ASuIMm0fJOGlRLinmEFAoN/kuwu49SoDCE5K5gtsSR8AbDJiygsL9YQUBS2I4KHUEoAo01RFEu/b2NDZA5wtrNMCJBzUqkJBpgHqUzAIJBmQagN5H2uQ7eXv3HAK4eNDOF3ZsAM0LJ4j0qeL97dVVvYZQv7m6ur2/z6eIFghDBPiEQFZJwIGsCUANaModHFIQsCgQoPKFhZyYowFAwpXbq3r1VwQyI6jWAQ+JCTJSinUFl1U5IdYREDVgn9iAcrmJxEB0b0/eBEQCVIlxaV44NZG4v6rxUosALNyvIEMoGgFVUiwnT4tSRwCgCTPYvefRAMYGmDwh/uYYVYGJieWrmlZ4h4Sr2yKgQBoMwCYwacgLpwUCyvZtYKjAE5BmbMABmxdW3BnwDhRLJe7rvqQnqN3e05tD2rywJxriCUBNwL4NRLoKRAUkvvCBkBjXEUBUAGi/nfi4MdyupBKqflA1SESqAdaJke6CSgMkWUHPcFkmGMAEJBL3/nTfA8BB3mqUjDccREbAtg0McQRMSaIhGQGSnBgiILFy1Zz4ELWr5bxqlIwnMS76wlQDrN3hgk4DRAI+MsOEuH4Qh4P5xK3e7usB/hZ0CytmX1hFAKLA0hfqdQngUyKUgDVBA5R5YSB/sYXLT0mo3xaLegKYrKDXF7buCGM8AVwTWBS6QcV4YUpAvtnWLwBSoAoHc0oCCk4bsIuJhzABXldwUUiKGW+N5G8DER+idgvcK2kwMM/7wk5WcJ8hwCoginYVOCOgzgqa8sKJ1tWfo2B5mdWAGTJkXuoLt2IFI4WC2Qr6ujUSqPyIglKJbwIfxWDAmxUsW1vBbt8EqFxB7Ajkg5YfmsP7UlZGwJqaAPtuICYh4FBFgDorGPj1x7i6z25rBokoNKDLZjD9EPrXLuqEgDktCjWgTfLDUGl920yA4AhY5QS6ykQFFFlB/TAhogHF4Oy/B7VbxIB6lIyQFrXsBqL75XITBMxwwUDxvn3yA9SX1n0TULAlIFJQEEDbgMQXRgSsM2nRbZX/E4xfBNvBpGrEuCwYsOkHewtsE+B7Ac2tEVYDSsvK4PcyKNNQu530RQBhwCIl0F2mGuBNCIhpUTkB2WW1Abi8/NlKbMSgejUzw7uCIgH7jA2wICDGEaC5M6DMC5fu1TJeAgSlBNXbGW1WkLUBFo5ArFwQbIA7UIzLCsoGiiECiprsDyQgMCX49UqRFGN84bK1Kzik1wDVeGGXgJKuB7zEsE6QKVC9/WhMixYss2JDjgYIVlBPANMEdNL9IAz8DIqBK9QGvASIrmCrGqC8QewhQKsAVAMuL39YdYg3440bxa7a2oI5MW5BQPSNVAN0wYBAgFayHw4DNkpQ3fp99fPFzo3cdtx5hggwvYB1TggQUEYU8GlRfwRMrm9n9T7gJYOf/pWg/vnz59XV6YsNqR7UNzWJcWsCusq4DfhPi3JZway+k2M04PLcokOcBRqwevEZcJCR0Fa9y20GSgDTBDxZQR0B8PFR/WW95HDuu0NsTEMCVi8uVldBU5AyoA0H7QgQ42HBE9I+QGyIgn6csxrgXwmqXz5j+S8AEatnDQ9x9cVNeTTULg3wjJLBGpA1hMGAADSdY/HPfSvB7OcLOOGf1c9ncfHPqnebirxwwZaAgmgD/BIAVEDrBGACLqnwhAt/XlEDCQ+VAM7gQlJsbHcuAWkxIWBBwFXZ6QYEAph4eE06Tgq2AcP1/HEO5T4/dxUBwI8S3BDBCQWIjh2BgjpuA2mqAs3dGvlUV7mCh0I87E2MT65r4iBCABH//Nyl4tyHV1T97cKDz6I9rKUXRVewbHuDOPphtnqnywurnp9FGrBtyoT9OKe45GZmr2jWSwDELk/BHfvo2J7bDVgEQx8utn6t+yXAkxU0GXWXAAE/TM2gIifgQnCO7hb5hyYKtuFw9P3FRQaY1D3J/VEVAYwGmAyakoDzcwN3NyoCLi5mWQrqUkfAQgMAARcNyICCAEk05OaEzAR8p/J+5+bfz79/19tCQMCZO8EP+sI1XgtqU5KsoEVG6D0sFJRXlybFNMEAGi5rsmaAAGaCP/QXznX0Vc+I3Ojj0HCBqeDM4d2hJy9sR8DF2Z916FmowkHNrRFTS/7x/TsRnOGAzrRKUP3rTAWsDRsO+dU7z50Bi6zwACrzT1ha3SotilxBHwQgafGX/tLZ9+9qr6g6qySA0rDlUFBPCxpgQcBbXNynGqJyyicBxBeeMciPNMDBOT/HM6US7BgIgKhQCupCN2BxY+Tt2ekZ/OygitS90dBiYATIofKKNqCEp/h7enbmLJw6EwSNEWr7XFrU5s7Q2ekpKO30b8RAFSiBbsC08MxAEASolKBCKga/cEYXmM3w92wcEwi112kCexY3R6O4IFAUHt4FCqKPzhnfIxEMAX98l+pA8tSIM/zToAw4TcBqpOAHpzgywA0YVV1WkPWEJo0E/GHEtcIprJgJcHjA2UPIAPaErMYHvCfFnJyeUgbqHhsgJ8BHL3BtEv8PVVhQobVCX36RrJ/gHzD7htyCO6oBViNE3p2eYICC6CDH+t3hoegLS0aL+nCEDARc/6vsByunpFYnpyfuEq3sCVmhP6cVSEGdaIAVAa+Zk5xe0Ut6l1ZpAJcXNrrCegJU6g9Q3WDrdcJIDpZm2XW6FaZP61gDrMaLv+WKcUKU2t2cjoAln7GAjgC1+kMCvp1Y4vQEdAh1+2fnwrsn4FzodPDHDdLq6UUjAcZwWEPA9b+6BlTD9QGfHfi7Q5bwAt1O6oxmcDppVKuwG7R7cmwX/Cn8oB+GAeATLC4agoHmCbjWqD8m4But1wnz+YYkddfA7w7dCrdt3UAG7MbLv/vG4aTh1qJ+aHh60pgRUhFw/a8pH3BC6rPzTQ2y74TZdFK5KZet5A+9Fotlqla9OzjwEuDGw0umnKCCAL36Q4xr5DagYfnIyNtv37bwXx6jDyiBqUjtbg0bAdkwIWM/KCfg+tqcE8x8g9XacupEAbds4V1wB/o9pgKQYy0fGop+Oxbwjb0TU60vbrqJcTEpZlBkhQaY7w/VxDoxtTOsHx/bPj275T0Hdy+qere5qXh+1pQWlhFw7WeswI2aACMqts8MvRNLSAIGuErW71QPEBtuDPz0EKDt/F00WiBgy/YdAq+PkzyOj46PhdvS9bV5+SARvSvk0YDrP1RDPzhUk2KdLPDOUv5QJHmUPDo6PnK+cD1Z4UWrQgqs7wyIGmDo/B3Ut5JJWBP2I1vyroM/syYgWjlCgEUlyRwuCrLV7uYXvGlR/f1xngA/1h+jkXRqRHEsLiW9e9Cm5GtbAkLvmNLYosTb8rW7hQXxDnlWZ9GqHAGa0E9ALSOpjW+8tSbgraqohihd/fbjR/6fjejHyLAE+FV/gCs7iQVYyx+KHsXjcfiFP/gDvnAh47lmmAKXgG1tP+AScO2j86eoZo5oXejErsWdRWavOyXtCQi9i6uQufIMzQAULLFvEtHptUOA2fdlcHOkrE88Tq+VEtY2UEtAPO5pBlALZmacEePaUTKEAFPox6Pa0FRnnHzZJX6vvQ0ERgD9LZjgh87IcrwhucT126VJOl5YN1QSE2AM/XhcHeEqkLrQqtCNdIdzDKkw3W1vAwGS7nl48cFX0gx+hc95z8Cnudb1KoAIsFJ/aAEcwamkcaY+4+McOXHuUIBkU++SesdRPS4sS5UAtYRt9I8W1FYAEOC/8ydo8MJ6KuPdyPHRjAmAbWBch3hDpgRQDe7Xs7oB8z+vLdUf0JrRVsWIplpAKKQnQKkE6BUo9yWlCvz0Ffpx5TVak3+8ybepvTOVq1ICWOeaUsif1g8KtCp/cy0AtAFz0UolCBI3JlU0oZlOEMFPy8v4fDNQ86i3Kv940+9VNbYBCE07CAQtG4DxZLPyhyJ+uEduUfsoaF3+5luATxVAblHb2kGj5QYQb+HNwq+pm+k4xcyMTNQzbAsF1ZujceF8ykl2HPw02wdARGk4geRkQ4/xOBuAwIV2mAIxBBrnIx0ictytC6mNe3GaDIQcvONOypRKNtN18DlKNoLWghonyrh74vH4OFsvpzLeaHA8nmlFfhQS+sbRUbANoWZzciVaaQGgDeiyAjIESMFNBpbnOQHz66tCTcYBjgpk4hnwcSe67v3g6SjTMLwx0h9q46hM4ZTemrgr3I9zVGsKAIBOksmws7g7dz7sxowkYWR9+ePkhEzxzNfZxyxxlaEMtaoAoCfMMIhndHD3JjM3LXFQG09qz8QJra1VpVX5Q9GKuSpeJJMZ5aPORlQbGR/y+0NLfSBRgSSSJ4M+sGL0myHbMu7OZDJJ5mixoXjUWX/1G8kkLQ6f0Tmhc66Mu8s9hq8J/ivre6ISDYgmsTi+IB4Yt7WIQPmDRAAKAJyhVmpwfJwc920PajeZSiUo2SEqgfyzrchWElSr4v6wH88kWalUMoAEgyZUazfxChLfUwqZ2BN6F6R/EYgCABWocEiSrxW2IAkqFqo3N+OZrS1zKXanTW4E9N/WonzVtsjXCluVra2NjQ3IQ+MGMIEBlhrjmQrc4Ud+y9NuBaQAQAW2ggQUFw/pQitbG4GWzp4osH/BHAV1RNXk67ohmW2wB8lE22CP2pAfI/mTDcnqBrPBUw4gNjAFAL7AxhPEbnDyh6K7Gxs7G+jLfjboL7eJru7IamWBHbd4/uTuCekRO/wXb2s5CmDxeufJ4X2Q8odCs7Jz7DK//DYzduGR/g72HrUr3cWvBPYvVzHe7iqxo96lwU7zf6o6N7cSoAXEeN9qXR8Ws4F1gRTRWQ92vau79BMkdp1zKU4hWQ/UAmK8Dlaq9iJgC4gQfT/7CUyzzK+z9omuyycFlDvYIz7RM3gL5TYz1Zj99ClgC4jx9tNTwV+BW0CM93+1qb7cUgAnaUcDgIh++Otx4hO/+HdbGgDE2787JqMF/m5TA4B4//cTQLsaAMKHTktnxp+Bu0As3v752PFbG1wgFq9/67SEevzW1gYA8eG3R40P7ZY/FHnUDHxoWw/ooq/TQuow0H75Q6GB/z1atN0AQERDHzotpwrtNwAY4dYY+CcgcT3lfrB5UU5L6PvnUaLvoeQHZoCc8otQhS/SRWt8ERa+OKtfpAXjTQ9iAB0Gvpjwj/GIgPGg8gN/6KHlM2HkYeUPhUc+B4kvLR74ZeTBDKDDADjtV7cGX7kZXfiq2sge/hV+vjJrwoK7Kj8Q4cHlBwx8fTT4Mvzq4eUPhV51Wm4XHZEfuAOrq6tf8fcrmugP96Xb+N3OTvKn3jLEI9hjv/J/2CH5QWe4+ijwwB0gz8C0U41p8mU28RumV8WVafcod+c0f5BmE1no2PVHDEyvThOsMl92G92wyq6xO9AeZ/Oq8Bd8savsZrzWweuPGZgWxBLE4ERlFoZHRgYgRkaGhZ2rbhHaEvC3o9efYcAGq19HBrh++9WAy4IlOi5/Ewz8MyCpdfjVQDMcPAL5IQO/85PzmXZndOVrDwhaFW7bK6AH4p9Py9bo1Bn/x4sBptJ8PXk+gPgD+pg9PDDMcyeUyH8ei/zAI3JrRYAq7Kzj5ekRPxmLVyP0z0gJbCG/s8U+dPynw6thR3SGBW5teMTn9QoDCvygw90fjzDLgAzDAzbh2qsBQ3G/P5rm70DHgO+Lz5Y3MKwj4TGpP4Xqqo1YXXwGYegeyIt8bJefoH+Yb/+/Dzdz7XlAFkaGXW0ARTZL6EMAXrNhp6KvArtQ4VcOgiryBS94wQte8IIXhP4P4nVznqPTxGMAAAAASUVORK5CYII=\";var ni=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAGXElEQVR4nO2bfYgVVRTAf4nIYxAREZNlMBP7UCwjRKbNJHgSVEK6hWaIpamTylK2biYSERGylYlp5KSFVKSVRGxmBY0t0tZjETOxpbbQWqZYFgmRGAZZlv6413WVd8+deW/eQvR+sH8s99xzZ849c865Hw/q1KlTp06d/y3XjNRAQRy5wBxgJnA9MBFwdHMM9ANngW7guO+4f43Ec9XMAEEcAcwFlgELgekZVfQAh4EDKIPk+nyXyN0AQRyNBh4BWoBbc1J7EtgOHPQddyAnnUCOBtAz3gS0kX2209IDtALteXlELgYI4qgBCFCuPhK0A77vuH3VKqraAEEcLUB9pxOr1ZWRfmCZ77hHq1EyqprOQRytBb5g5F8eYBLwVRBHq6tRUrEHBHH0NCowpSUBjgGdwGmgF7ig28YBU4BZwF3AfGBMBt0tvuO+lkF+iIoMEMTRKuDtlOIngV3AId9xL9iEtf5xwBKgmfSZxPcd962UskNkNkAQR/OBEBhtEf0NFbE/rTRiD8ssrwDTLOIDwL2+436dZYxMBgjiaCLwI9BgEX0d2Ow7bpJFvzCugzLCeovoOWB2lioyqwE+RLmmiYvASt9xP8iiN8P4K4C9yPHhCHB/Wq9LnQWCOLoH+8svrtXLA/iO+y7woB7LxH3AQ2l1pvKAII5GAT8gB6RH9QPWnCCOlgPvCSJngBm+40qGAtJ7QBPyy++zvbwXJqO8MJnuhckUL6wuNPiO+z6wWxCZBqxIoyutATYKbZGlHS9MGoFfgF+BP4BOL0ymphzbRCsq05jYqLOIiNUAQRyNBRoFkS2+4/5javTCpAH4nCsXSI3AZ16Y2FKpEZ1hWgSRmcjPDaTzgEFUji1HD2AMetrV3wDGl2meBcxLMb5EO3BcaF9mU2A1gO+4sR6oHG2+4w4K3ZuARUL7BNv4EjrV7RREFto+g7QxYB3QNez/QVQQ2m/q4IXJOFQJbGIAefbS8glqS60cU/WfkVQG8B23H7gDuBNYCtzkO26zZfbbkCvG3aVioTfN+JZni4EOQWSO1D91ENIv+10aWS9M5gFrBZHfgefSjp2CTlQBVI6ZUseq9gPK4YXJGNTukKR7XalYMGaOCjgttF0ndczdAMCzyFY/WCoWvsx5TCnSiZs1uRrAC5Obga2CyN/Ak3mOqZH2GQpSx4oLkavxwmQU9pVaS6lY6Dc16jXHeuBxVIo8Bmz1HdcWLCueyDw9YDVyYXMUIW1qtqFS522oLbLlQKfeh5AoV2hdQow1uRhAl7ttgkgC+KWi2RuDOJoLbCrT5CJnFFDGMmH0OMjPA3Yhz8ILpWLBuHDRp0l7heeZYRl/ttB2VupYtQG8MFmEKnlNnAJetajZhLzcPmPpL3163VLHqgyQotwdBNaUigXjeV4QR9OB5wUd54E3hf4TkFd9XUJb1R6wDfWNmthdKhaMD6AXKnuRU9VmyxHYEsyZp1uX8UYqNoDe5HhCEOlFrgkAVgF3C+3fAvtMjTptNgv9TavYISoygC53paAFlnI3iKPJqK1uEwmwxrLgWoJcdR4Q2oDKPeAZy8AHS8XCEYuOncj7AS/5jvuzqVHvVEmpt8t33FOWZ8hugDzK3SCOFiJvsXcDL1seZQdy/t9h6Q9U5gG7kINWq6XcHYvaJjMxiHJ945a2PpuUToW7gY+E9iEyGcALk0nAAkGkA3jHomYb8szt8R3XuO8QxNEi1HJbotUSO4bI6gHSzKcpdz3k870I2CL0fwz4GHkRd8h3XFv8GSLrarAX5V7lAuCLpWKhx9QxiKM0mWNDuSN0fTi6HTntAvQBGywyV5DJA/TsrkRVZ8M5gj1obUJthZs45DvuFXk7iCOCOGoCfsL+8heBpbbC52oquiDhhclk4GHgWuB74HCpWDB+c0Ec3Yg6Vjd9H+dRZ3l9Wn486oAzywWJlb7j7k8pO0TNb4rqau0b1LUXE3u0zC2ohU0j2a7INPuOK50VGhkJA6xGffu1YAB1NcaWeYzU1AB69v8EJtdAfT/qm++oRkktdoWH00BtXr4ddRWmo1pFtTbAOVR9kBc9wGLggTxuicLIxIAdwFNVqjmBqu1zvyyd27a4QCsqWK3n8u8D0tCNqi8OACf+M9flTehqbh5wO3ADl38wMYg63e3j8g8murIWNHXq1KlTp06dzPwLV0HTVxeqgZgAAAAASUVORK5CYII=\";var ri=\"data:image/x-icon;base64,AAABAAQAEBAAAAAAIABcAgAARgAAACAgAAAAACAACQYAAKICAAAwMAAAAAAgAIUKAACrCAAAAAAAAAAAIACt4wAAMBMAAIlQTkcNChoKAAAADUlIRFIAAAAQAAAAEAgGAAAAH/P/YQAAAiNJREFUeJxVU01rFEEQfVXTM7NfyRqJX/iBYkA8BD/uCp48KPgHPHmKB8FcPPkf9Cpe8x8E70EQDxHxJC4SEEUNZs3uzs7OdJdU98zubMM0dE3Xq3qvXtPGE0l7/fxlFEcPpbQdAAwAkd/DchI+QDdybKKJLezOaJg+NSv97IXptLdsls8TRIC/43BdVxwBnVTjpEeW0vbibrrVRSZ043lWEDOLOCIQaaXUAHeuMtoJQAQMfgk+fBMfrzoRAosT5wyIjJYkeHRfNY2Bu5sLgLefHN59dWjFVLVFJBAiIm4wBZiAvAAunyRfaTgBRlNgb18QKVJj1SeuiUr1Kcj544TShfO/TPDnSBDP21/cDwCoDhLEU/XPrhEMB/GyGTCZBSrzrAYK+14kXNCqa13g0gmVM4DtHwh+HIoH07sap5oCVR3UP0oLXFwP/GclMC2CDg9uMsY6ZQGsXW7ELHUkgtN99pWdCx2tdgL3VL2QhGQF9npIU8SKxua5wF9BdJy3rjB2vzjcv864doHw6Ha08IOnQEH5aSE++cyxwF85J1Gg8uyewfoKcGqV8OajxeEEvsgSBSKC2mnwW2BdAK3fQWKAn0OgsMDBGDAqaCWkEZFSiLkVO/r8HfR+UM5N0hxxbIJX1Z2GRUR0c84Q5HXUTh6XkxytWIVadlw95qZXnPq/k1A5zl6Zo2F7u4ecuHrOpQjX76LpuDqi+fqci3G+Mxq2t/8DuWnudTgQ75sAAAAASUVORK5CYIKJUE5HDQoaCgAAAA1JSERSAAAAIAAAACAIBgAAAHN6evQAAAXQSURBVHichVdZqFVVGP7+tdfe5xzv4OWmdY00cUoISgmNLDBEqJegCaTAJ18qkIgCISyLIAqKiPtSkE+FEghB+BBRkUgKiQ3ghbp6UStxSr1e73DO2XutP/61h7POPkP/Hfbaa/qn7x82YR8rvE12ze7JytDoypeJaCesWQvmiAEiEBgtovwf5y/ZuPXwKN1EMiA0oYLTzPz5revnPj4zvq4hvN0VD7w+u8zqyqEg0ls4YbBppofJHe2kEmOfXbfl9J1AQQgKCTZOjlGz8ezJdwcv0tZ9XL1p6kfCgermeK4eK7AGERWy59p2Id8IZYblI25OCEiiwWrYnG38vDiobNXTZmF3WKulzIlCsZWvhW9emQtUJ+OcDAuT7vK6M0JA2Jyrx7pW3Ty9sLBbE9MuTmAJCMoWLmtgGZiZy673jJOvLYoIoU6FcFuyi/L3nBQQOJ5Eu2T7ak6aKt9c+C+72X/XivHKYxorlpBjqArNgGbM+OyIwd/XGVFI6fmSNVpjUpw05dLVmpTSEI9zyd85ZwIEqvMNYMMKhZe2a/Sibycspq4yqlFqkX74cYFBStPGN+rCusW0F+oZWGgyNq1SGKoKA0qDhOUiwvQ8Y+IfC6UcdNtCoY8McOoUGyTyevCvJ4wdDwbYtIqQGDhGQtayG38/YfBLAgxUMu2zKO5Gvp7an+wjKCJNeGFbgDsWi+c7KU6Ar3+1zjqOfyZE2arlRKbZyzc98osD22yDsfPTGHeNpgDML5FHIwEmL1oM1ciFoi9412TFJRegH3MHQMaj6xV2Phy0hZSMlQKuzjDeO8wwprXWF38e6eIyb5CHVi5AbIDt9wZ4ZJ2kis40dGuB8eE3BvUEUN5yL6VarBi0YW+d28BSCkMRQNBfDYF7lqm23CAk7jj/L2O2zgiDLoWrmwBedtUF83L8Z1ZoJIzlo4R9T2kMVlKz52ccFgB88oPBj38AlRAwthPQHcUztxCLC/IVz2n+ATH/3UsID63pjn6hkUUWibFp8Sqrnynno78t323cW8/rTwfJtLGMRgysHSOnYXn9+ixw/hq78DNM0KVi1a9EOxf0qrh5gQkD4KPnQ6wbIyTWM78FggA4eNzgzGXGm0+GeOurGEcnLYZrWah64VaYPZtuJSJuLfomk+CXLLeoQlh/J2HpMDmmvgCuCCXA/SsIQ7U0HMUCgoMcwIIZV7jyyuixEAy0u6Atc0mQSAQAy28jDFVbdkqFIOeeS9PsyvBcgzHbAAKCq4Z5dpQz4rqmoUIIX1HdFtUe+qQ+SwJ65xmNx+8LkCSS8ztxoqX4KOC7UwavHoixZkxh/64Ix88Y7PkywYEXQywdIjw9HheJy09m2qu6qX6elLJZ/CnFx3U70raUqJkwSBEu3ABm6sDoACEKgd/+YtQiYOVShaN/WhfONbFMCWxUuMDvQFxrxY7x2AhhuNZZV/zkJUdvzAEVnXVNC4wrM3D5Y77JmGsCUdCqoP45XaTNvLbLj0obkPd3aDyxMXBA6/BfKV9IRBjDCALCFz8ZnDxn8cFzEV47GOPw7wYDFcFMJriX7nXL6injXEUxvzQdl26mlpBmtB/laJfLJi4wbh8mTF1hnL5snWVcBu1yjjo6IndbKof4txaVjvVqifNlC8zHaV0QEq1FgK6mg0SBtQkFgW6DpkCBgWqYAtBNdekXi+7Xk01oIEqLEmeJTCzTFumZ/YW3lLcp0pFlZut6ei9NubDJmlJXLuSZvft/+Zy4SZ4uYjzXFO15MceWgkiKx5Ri5v0qgJK80rd+l1Df1utn0dU212Xs3W9IQ1nhPRLWxpvzCyfCgWrI4Jjc11MX6tVV+IL9H0TctxnH4WA1NPP1EyNBbbz4OOWockhpvcUmIl/c51u3c1yWsZsAEuAqCKFCgmkkxyhJP06VfCLLYOba2W2mEe9ha04xuJFamV1uSDXzy4hcl62lu7Ly0S506ha3Jr8NhjmVNOM9MzfObhOewvs/PZfwfXG3l78AAAAASUVORK5CYIKJUE5HDQoaCgAAAA1JSERSAAAAMAAAADAIBgAAAFcC+YcAAApMSURBVHicrVpdrFVHFf7W7L3vOedeEFqsEPtH2lhtKRZoq2CTxtBapSVFU69BbfXBPvAkPkiM2kqbYoPRqn0wYtLEGBvTSoytIYZGawwaBQsFUo1CoICoQKHA5f6de87es8ya/XNm5sw+FxMnkLvP3jNrvrVm/Xxrn0MoxugoR9u3UybXKzZ31zLhEWi9CqwXEZAwFxOJ4A55QDB3y0cs/xhUzi3WliL8wYVw8oWAuiB1Gor+TIyfvv5kssPHSvaNpZvG3puMjHwfoI+pSIHTDKxTdzcagIT69OpD7i8lb7q9zFypCBRHYK1F053ddPJLb2yZd6jETKOjP4+2b/9UtvQrl+5OWq2XVRzPz6antayl3IRU2dgGfzmKeMBFWnWSNTr3i2D5x3InbjVVlqYXudNdt/+bw7sEu4ik5ZvbNwLRXqJonu7OpKRUbAmwBBZK5A96o0aZmkPoW0YDnttrmXUaJc1Y63QMM9kd+7c2jyp5oFPeFg0lBXiKrSXG8rmHW7byd6txEdu6pQQ/gsg71LohzxSpOOu0U4M14m3m/rKvtdeooaFfc3dGkyJlgq8QlZ9c+ckF6VvHib8AmEoxE+CDgXLgniOHWVPcULrTuT8G6UdJEbPKnzlwA+B9gcaqxY00s9XvU898iqM8qIIuQ762niF6YcgUEYP40RhEKznLCAxVhqs9eZC58gNipBnQSYErRvLPxgzlkVgi5UQvTooShMg4LwaeRvmc/BsMxWkmm6wUf18oqTI3dr+f50fmWsC2mCgRK2DL+gQrb6RCKT8hMjSLDwO7/qHxxEupWCuINqSQ7X7FxpSnd70wJlKRY63isrKw/K2JNLGiWPSB2yKsXRbNEsL5WLciwjM7M0zMsDmJPrmzHYkjlaK4b1HID11PqJ6Lgs0EePMs49hZjavmulFc6V1YVlztx7synJ9kjDTy00Ixabay0v+sSDDLH28XwRueHa6QvaGIcW6CkUSEuc1iaRGNpScVycxcT3UYzSSPEbIKnI/NsWmgAJYy4z6gxcRyw8G5mTE5w/jE7RFuX6yQ6QAY8dRisz1HNHYdYhMLeSy6rlqlGLjDB59PNbmop0DvgRW41mn4nEUpYGIa+NBNEb77maR/h8CW6z/AWP2tDsbbeTqFtUfdCdvWr7ihdWxF9u9XokRrW8qfowHMbQ06I3swDp5kjLfzE3DSKzwXtlcFXMfBsezr08J7K5+0BTonEYgFyfkzXWDVexQWziMIYSwDvhJkWfEPh7QJ4EZsHMCxqK1AyGUc0L2KDClkQVpQyQhQoFKJ6Q5w5Qjh9EXGv8/nKMrMYuqZZYRTFxntLjDcLGuF6+/sb+KYvYaKkRcDVTmw/SbgIeICM13G4qsIP/x8gusWzO5GJ84xHt7WxaXC/0slyEJUy0xr3ConeNYEp+qWVduWVlzLoqkOcO8tEa5bUHCCWcb17yQ0h4qM5GU8lC4aoquBYbt7XILu+WMgH5S3itsCYqQB/O7vGnfekBk30oHaWx6kxMaLezL86zxjeIjMels2l2ts41mY6oahjsseaxum4Aeqk9oCQaw148KUZBRCIi5hB6WnjAS6zDEZK2AfCoKrAW0FvGG3Do/3K2BAqAHPbHjQlocS3HptkX38BaUBCDj8H8YzO1N0de5+wT2on0b3uJsrr5ojRNLhLH7ODAwBPjYBfOHDER6+K74s9rX8esKOgxleO8bmFEx/HtqCLEt59ahGTyh2XMUVGYopmRtFwPkJIJstYRdj3zGNQ6clbnLzz5ZlMMtn+2PVvDsObudwD32WAXMawC9ey7DveIa5kteD1pR8zxiKCCffZkx3GDNpfoISyGWAkxewTlGz9g0OIXNVEzjA+V1/zKvv6pvJVN+0hsCVKw+e0BibYsxpEta8P8KZMY19xxkNUYLdAlZWV0Fk4wi5Wql4LN2TzQQDc6sh1pNC9NCdEZ7+ZB8PDCpwYZJxz9YZfPmBGOs/GGF8mrHmOx2MS0OjXEpRkPC+VO72di4lMGTOL2D2Sv92NwVWXHeZFQcwgBsJYc1SKXiEo28B4zO9bETe3nY/0XffAy+jvx+wPzh8hXP22QR+9PsMF6byYubXPTnP0gmE+7y0T+PUBY0nfpliyTUKP/tTZjqzsqlJixSsygRBQDfL6XpwVEyyKMCmkNUlfEsbASVWEwI3FId5unNdKC4tp/yfbANnxxmthNBqlN0ZMH+E0EkZqc4LojRIVw4D013JcuK2A07a1AEbsK9laVMSy5ARftdNCo+vizF/uPTYfgE2xRHakOm8gT98SuOLz3fNyYghPrI0wlfXxjh+TmPj811cmgY+vSrChtUxDpzQ2PRCdyB4N43aJ1NxYrdSCpiN98UB9jlbPOTP77ghwrvekeLQKclKwOaPx1gwR94nyUsWwqJ5wDfWCcMnLLm6R/O9Am8BLSqxu42dlItXKkXKkiz0m79mWDQ/Nu6kQtIDugj1EEG/2p+aNxhzW+LnhL3HNG69RuHZV1KMTTOGEsLe44wFI4ynXk7RyYCRODdcaJjtlj/WrtKug8IJe3EjxkRbmnixGJkgCzUmfZyoVEID5yfzeBDF06KSXTEndye5Fr+XxDDcIJO98iThvU2zkVYx4ON3ToHMqxPx/3uWRLj3FmUsEuzebCX8IV/zRLkisrF5KdAGfvLHFP9sM+6/LTZv9l7YneHwGTbZTgJ7EKWWR5UCVfLwTCgbtTvAzVcr/OBzyawc/X8bZOjFjgMZvvdZgSLvTAmbXuyaU3AKnLWv3Qg5MZDfs7NJmUJhGvH/L/gcyJ6jGteapJCn09/+LTNpOsgTQ0wh9Gau5BnVLemBU8aKxcpkoLItrEc2uEuRP5IETr7N+MubGq0h4O73RXhrjPH6CZ2TPb8j80hmlaFqXy36zi198AybKll9+1jWaEdZ69WEuZEHTM55Sp6TjyTKKbYYRGJM3Ge46JsrTAEctjFi1jpTkYqCk+zJLDQ6d6MevICZy12rQCcPTK/0MfdOY94wgXVefUOn5lveiNE6E1JwBpS8G9zJD622R5F3/D1gAxh0tZtNEv348bNYlnk9eIjIVXKZVZRQprtn5Dux3RSZxky4WtVo9OvRQ+DXLn8DpyWs0bTOAFwnmx2jaIoi0WO3IlbPsZjW+nLLc7OBu85GrM3zclJNq8W+LMsATmz2WAEZzEo9pw483diZdduvRq2m0lqnIfcfjG7QhMHCqC6SvOzjEgWdJsNNlXXarx54qrHT0BmV0Yas0x2LkoYEtffbggHCA752Oafm9CQU2MP2f/ta61QljVh3umMU0waDfXR0u9q/tXUkbbcfZNYXo+FWrLXWXPw4oa+VCxyJn8DKb/cvS1EOKOA0ZMwGC7OOh1uxYNTt9MH9T7aOCPa+H3vErdazpKKPklJgSQ06DQCs3TOolD+nL4uRl7UsxycVQRU/9tA6eyWdmt74xretH3uUU/t+bsN4BKxXMeTnNpQ4ZdDI7u3qd2E+Q+0B9V/+u/Qkf+Tk3S6ITkOp2p/b/BdnsPsVO74VDwAAAABJRU5ErkJggolQTkcNChoKAAAADUlIRFIAAAEAAAABAAgGAAAAXHKoZgAA43RJREFUeJzt/QnYrVlVHorO71t/s/euhqrCAgRpBJQLKBTSiNggnJPYJdFoipOD6cxJ7o03yZMnjT1aKaMY4z05J8fk6jnmHE1imkupsUs0MYgkGgmCFCCliIBAULoCqtl7/81a33efOcd4x3jHmHNtSmOT3OcuqP2v9TWzGXM07xxjzDmn8vv5Wdfp9rvKXL/e9ZJpx7c+9WvXmw+Pz5+yrutTy7I8rZTypLWsj52m8vCyloeVtVwqUzkq0zRPtaiu7FKmqZRF/+IBPFcv1Rvruur3elMerH+mekHfq++v9UWuaFDpRF9quf0duTbVermI2ga9hhtWll9Sku2r3hs2Tas+J0+ha5N0jF4EcbyS+p6RQq+vrQwtqxEjdbY+wXSi9kh52t9JXqzltTetyVqGXuO6hS46RtrAVZ9HuYEwgw93USlEbZi0L3G8fGxSf7Q8K2NtLHZW1nJlmtf71rXcO83Te8pS3l7mw3um7fLL58vhW9/8t6ePcJtuf8W6qX/vur0sSpjflw/z2e/d5451vv3pZWKhf94d643n8/a5ZVteOE3LZyxLedo0rR8/Hx43nqufdanjvJSy7NpfH35nIPusJOCNb6L0Qik05kIF4SMc3QkaBLAJWRZT5Y6+IfqHWZBbI0zdrinXcZv4OVYmqB9lsahAklxOWbJQTJDkXBkI5GVquyAKVLoJS+v+kosNhVq5Ri9+RjQVxDO1DqoIvaXybXzzXyhzVTAdy69DMRiOexvGVYbRrIb0Yap2bJ6rPSr1K+iwnJ1UDvzNeZruWUv5+VLmVx/OB7/w2jun+1kZ3PWWspY7p0q5/99VALffvm7uepp39Nlfsz5se+Hs86Zl+tJS1hfOh0ePmg9KWXelrNulrMt5mdZlqXJfCTyty7ROVVRmGIcoX6wIBpaabQbGUOS1gpCohOW6MnniXy8/MlwruykdfU6Vj3x31OFWWco2ZWSWPwo65IWVQquNrF5QJsHKCSKIMqGKA13LMkC/UUZDKdQ6e3+FAlMaAs2smdrSpobIUCp3EagLdaKdCQ1xA03lr3uQVlSJXocq40nHBcq3QxU9MTrF6exVoYkUbDpzWaepItTNUZkO5jJthLeX87P3lWl6VZmnH5yvPPDvXv/tt9xnhvGeMt11V0TD/+0rgNvXTXmFQ51P++b12ct2+2fKuvzR+ejoMY2RzpeybE/rM2o/1rnZaR49CI7B0dyNOgZgQL5FNsM4jy2YWxSwTK7Nn8ri6cJlSqVDJFF0WvmKIPAkDLTBy7Fhog/jdW8fuuzvp1Z0Bh8WbYAEmrWvSIvoibJMyJleECC/Fgv06YC1k4nXLubfUKQshIQWMGpVoEMbk/D7sFtfJ5tOhE4nAfdrorBDw2yKwtjC+lQY0pWlVlcqTtgczfPRLAjh/Oy90zz/yzIffN8vftP0en1nuv0lZf69UAS/uwrgjrXN72Hxn3XH+ecv6/qXp3X9gs3R0bScVyt/VvF8vV3xU/0kkxnnv2b2jU9oRqcTUZnXQSFH4960vZYdbLe84pZ2XYixxwYyzCqoTQaFrfU+PTCmW/eU3mFPYfhOoHLfVOq5VLlMUxO7RtaTywrlj+bGsV5zKZAe6puvV8UiJsjPyIsFK/3OlegUblhP1Pw+qEQDK2YdT/PysDqvBG7rms2oQIxRrtM0dR2pZujmzfE8Hc9lOTlby7z5ibKu3/mGOw9/ciQ//w0pgHV64R1l8+o7p239dds3nv+BMq1fN20OX1TpsTs9qZe3U6mOkGroCTYmIUEr2WHUQevQi2kPbHYuN1iKwYVTLo+rCgA7z6qliXMBlxNRCMRU2v44n08+h07YIXykUK5J6tjt0FcW1BF82dcGfqjRuwIzhzg9zema+lWMLlC6RHK556iLNXWE6U5YoZu8SbA7Nij0UYUVPqAM2fWdFaCd55O4RgaDpyiZSl0dzLpBn8VxkWY0rVgt/cHmwgXxc+3OX7Uu07fd/bcOf6o+88I71oNX31l2kUP/a1UAVWupxnrmy06fPs3TN0+bwy9tgn9ytXnupmnaBGJC0GjO6N7ZiAbgVSZPDDnkxhJj0L5Cbq6WURoJOBAEnGYB0u0Bt3DkNesfruM7edANJkTgEBgkFh5/G81iXfhS65oV1cSb9DEd43Wyn1CmBqFV4d18IyuAMA3rqIUpRI8YRPDQdmmDDy27AAf0TzbYa3OIHt6dUvDAFLprOLP63TSke81qxhCLIoPyUIPAiCDN89Z13dXqNhcuzA0f7M5/aLes3/TGbzl+S5at/yoVgGiqafu0O9ajo+X0a6dp8zXz4cGl3cnJ0sRvqm4Qr5oJDVjOLLHXuhsDxSHvjOFIwLowViepA67ErQgzeWZPxj88u6f5hnSnPYKd25ahZwauQdbI/KBde63+SLlc4zqh2mEZOUzJMQMrmt7fo5vMSucwIE+GXFnzDIENA1laAldc6WTtTsxGodmRkPAMyZ6JoDWg2GBsEkoIDZSHdrU1VREs2+2Vdbf79rP5+G/fc+d0Bhkr/3UpgHUqd5Spaqdnff3l5yybg+86uHD0nOXktKzLsoPgO4rnkdH5XNKO7RZB/a7hcL4YEZN+zxrBmpowe348v6OWp7GgPsAedjCKfO0tVKdrVCLZAsp1nmrwnGdP/6m9mbli9zNjg34qLF1uQG7LNSoPxZIwotrQZ3q9Y/611GyO+F6aLDBkT+OT6c23udtG2vTguseQ4AJFb4cg0/185DIkxBCGk8LHWUnkz7Iuu3nebDYXjqqP4HXrdvrKN7z86HWCBBql/ounBOJk+C/5NEfF1EJ7t73s8l8pB4c/uzk4es728tVtWVscZCO+YhFagcEgE5G7DQye1EvGuHhW3OQOxRS6hgFZ6b84WIFcFFXAW35Logkez2tuCpuDSlPUDlEB+5SVeMXRpvpenCpI2whegqt1uuNQfQD5gXKYpIaAyPzx80jc4QLpr7UlUTXTU9qYaI12MxIKSteThnx4veGw4lUwkPDTrpjTr5830OumPJgLgAZ9SuQTg1VvRrqKMPO1rMR83KoXixpgIU7hZDMq9oiLHFBOoDP9nqd5U5Zl3V4+2U4HR8+ZjsrP3fZNl/+KTAOm1ZyEv18IoCUwvGTaPeOv/+Z186WHf/fm+PBP7KrVr5qrTBs3IohFw5kTU+tMsOzjVhZoQYhFHmEisr9VyetZcO6AIejffI4EpoNFjNcccuplnYMOiZjgrCv86PkWp5L+smiEs23ItNuHP7lepaUxjr0frXuAv4GZnWG76UbQH+SjIfjBocXOl2bvkwkl/yYo3P6NQ0v+hIhm3I/ibctA/Vqoi/s02ZiwDsv4I9VNL4PM3aAYf6lS6yO2kV4j5BHgUItK7WoAcXPhuCxn59+/feDev/Cm//njL0MGy++1AsBc5Nlfc+Vxy/HhXfPRwfO2V6/WucmmUiqoppCxE9NeQ8KN9Z2URJ4w5usErTrm7nNAO1hqzJhHIEWjTEeN4ODAMnDOmjwOVgUKoKY5bqQ5L5s05jh9LyMOTWnmmHzsMLXbnqx8tc/DzYk/rAQJuZFi4WZyfU6a/dpMyvDMRUxBsh7Mw56HIEeQbYzN3sChl9VF6dyIQbmlMc/TiJGy8I832BzF1B8e5viuV0bKqr6yO7x04WB3tn3tydXz2+/59kvv/i/xC/y2FAAqvO1rHnzmfHz8I9PhweN3V69syzwf8IjkqadbLK2cYGKfRpEpr6XQyHLYRW5rSRFMhEFk8MGDAIMZtHp6dvjJTD+wfLEnhCqmmgyiIbaeKPZxh2ciBSnP9q96nL0tWv8627QmWLHQjRzj5jRipq+0kRVnoM3IscfhXKO5vzXU2SowjUZ75siZ7KIjKXLA+hP32YE79XYlt6mzP1YO3omKjZWvRJ5YyAdqh3wb7vPKDCzTMhnD9uD24OLFg+V8+67l5PSL7/7269/421UCv+U5BCr61K++7/nThaNXls3B45vln2oSr2eyxS7IvF2sXesB4WaEmzBPzgSg70ocFywtqwZGjMckxcLzQTBykYniUKh1ZkbRW83e4ZHBxyz40AcglHA1kLQ/CySIp2U5LSC4+6xrTLcNXyvToCyET9n6kQI2jKI+FqnPkRqctA3b2QIh8u2THwI8EPqlHWhvMIxvSgXlaP6GSl6rQR2rMg4MrKmjmuffmkgKnYY2oDnw0KqsIzS2omj0NFWY+YItNvJWjDWVnxljpeQjqdfHlu9LWf478hCUShuDgypz03zw+OnC8SurLFaZrLJZfjcRAOYbn/r19z3/4ODST5RpvmndnjYvf4Z61g0T9JFqde1mCDegXXqJygmGto26ZJT1MWJCBGl+ineRBejXY2iplYs891AvVxQjCkFZhIw5LSMnJ5lXjN/lXkJ4UkJOSlIygWZuh0JW/4vDnRFayWFL9wWw2o0ffS/NcwOkZagQpoC8uMjMvvUxWGYOy9WLOnUJzVVwyAbFeILpg5atMUmL5xiw3m2tKeVHRL9qhH/uY4jlR55kPnBpScMxpmP7wz6XZTcfHG9KWT56fnblC9788oe95rfqE3joCqAuX3zJtPuUr/vwMw6PbvjpUqaHL9uz3RyEPwpIcOLHNZ70rKeqjacBkXA2R1ZI1IcSUaXZlMTUoUBiTK3XlEWEytaFDFICBITawnw8toVbw1CRGtQPSdA4roZCYlOCqf6e0GOurlHyfEcqj+epLkzuuAyTs6R0XBd6mR4BIFqOoot7VmXyzMheRzsIKncUzPQYKeYRzVeGD9Fy5+8wOFwO5zp4tdGUuf4lHws5g0dNBK+ExVVYcVSVwOHxZl2Xe8vZAy9+w7fd8ibIavkdmwLUcEO1/F99+RMODq7/sWnaPHw5P1PLH+2Cw8hINRi4wAwIcwVhwksOmoxVmb5hEkrTB7KgHgyiClFvV6D8xv/okryN6B8QrdWVJGAalDUNRK81QMnfYozyTsgz79ghKhKfL5NF11VuphfaNCCKOs+pqbkG+022QWITXLesJoNQdkZqihSEvrNHO4Z7ezOUx5JJ4OW4gMXHAxslQ9JbvEn/xRQnPi8rQgbNoKuulEFHUswwdglBBExFysy+6fuudLp1rHJlnjfL+elumjcPXw+v/7Eqo034H2KI8GM/tK7THXXp7h3vvbQ53vzw5vDwcbuzq7syTxsZV4drPCiSHMOsyJkhcILpfIg24GD7QSKnxHNpjLYyL9mNb4ePXjRAEpQK/WXdIV3S+XRSS64JYgHGqLFeowOyQ7QuKKvO+WlwSulqCioiAm5zVCIMIFR42alI1t+/MoJBHn9Szkh8Uj+DDAvhE+t+UqrqqAx7KYSEL1+olcepn4b4CMPym2io30LKZYUVR2o1iJc5Ra6PlitxO+VdN1KBVmQgarQlq4zRTyiI2JqBJjRlXZOo5s3u7GS3OTh83Hy8+eEqq1Vm04YVvy0FML3wb5bNnXdOy3Z7y/ccXDh+9vakOh82G1tRR5rKUnvBccR0EB5RDtAb6hwMiS7sJHE77lZTB9VozNaPuL0pCdLuzMMZGGSPT9Ye9Jedc7ZoRf+in8zLXX1w9ARulDl68zUEiGEPDNQZ+hYvm7Cp1WcLH0okh5Pd7pjPL6ALToq8OYgrZs8hYCUVDCIpNPQXa/+Nkxyp2TuVXWkOrEK4dg47LxfXklq1MmaoU5JZRnshL4HeD6nNuo7blptfg6iswDyvwpUYIlHm0NyHYNgSadJQlc0mo+e3fE+V2Sq7Q9DzUBXAC+9Y24q+Z33D1b98eOnCS7dXT7bTPNUtO0LcRBxpkULiAFEtOmDmyMpxsuaQiDzA5g0FmhDn3TxYBCSM5nFxG/jm0GE4mslD2oyJrALTEJd6wTuAkqMf7BQMipE+rCAsNTcm13WcGF5XR5fprbhaADbTjSDgz6ABTSlDoJCYA+vfk4qNCw2X/tbEL7b61GKLjZCSGCnl0EzWCIjODLIWKZDSWX0rkxyW7UPbTsg4U3wj7NTkXcqKVRQ4aY76IcRoF0x5uIIORYcoQrpHGFEMoaO5Rtd5Oji/fHV7cOnCS6vMamSA1t/0n/3aQVcePfPrT2/bHM3/aV2WTUvwS1iJiQjLmxVETt7p/KIUTw3+UBSZXHphwQddI5uYCI5qYp1574nwGisBFDt4cJRF5hxDhSD3nzknIZ1utRkccHvaYb1DSjTKIXNjy5dhGZMH3uonJ2x7I9XXrtFeg652fbzIHEQXmXnRWT2lSADpcUcT65CtjCds67DALsZrVuSedPupVeOeDRst4kUJ5WE4XJEHpZf+4p6jXqW91Zr8z8aL3tD92Zf8dRgVW8tms0zztFvO1k9/48uP777WKsI9CmCdbn9Fmd/ylrI52p68ZnN84Vm706u7MpUNQmI5ZRM9CW6skNXhFj1qPhCbRrKjLDWX8khlcDzG3QNOT9awAVPmsuL0i3vJ9yz7hBxhIw8drLhuh2J+PGAkRN4m6lJSUt1WX9THMEqdusue5TQejJIoAcWoSSFGu0pbgXExnFDDIbIogPvY39sLCc3LqcMeBvaCOnyZrqgu0YTVUuQNDwuXZKm5PJZQV2QUIbFejbLEYiu8fT5CvIdA4PIk6OioIb1BPT5GyIdYd5vji5vl7OTus82FT3/608vurpfUlId+8dBwClCFv8YSD86vfs3BpQvP2p7WRB9Zw28eZ8AlAulsTT3fn9CAJaWAeQhmUmf7YeTREeGzAUhQlF1OMMT2qzUnCqi0MFomw15Z/yA82LojClXWFZDqQQYKvWdeeDQDHJEUg9GHCcLWQduKGmO4KzKBM5DnZKBKCBi6CM83Jw0FbeWsJf+qQ8tDsv6E+AacdOj3NPDvyA2yv8l/Im0kJaLC3zn6/BWjEI+n1MnIyH0HhZ2mqd8qTDS2RAsK20EmrG/qC0EiFnjAVRI2qiVSKMKSdsp/zhdu5jF+1OGw8EjGZd7sTttU4LaD3dWvqbJcZTrWxjzCH11q+IyvPf2k+XB64zSVw2W3nevehlkenDlppG0zCLL6vAgIjrKUIGFZVS3HI6MCkN2VQlQahn+CSXXtTwzLOBz1UMpv+0NlRUPB+faw/gMQ1RHK3wWEtNKT9zlvpumkpUVEuQpeXkxKZoQYRs3MOteH0lFBBkMyzuILmK7Zb/pGKcRx+2+C7Am+y3vV79LjmIiTerRpnas/q/0zYIepxWxGMTsK8WQfm2eecV7EFMqSs/Z8oDDCoqbkdmKVm3NkujHHG2H8lIGnTd2A53yZlme+6c7jt2HJPren0wp1V9LG1vPyHZujowvrbidb7wfVQ5bb8BoNmTVGfxORLc1TYZYzk7xfN0hyzTIiH88CorXluW/U+LA/bDZTqYEZ5QLp/qDx5bcOCMPl7gt+Ar7ByupDKSWWpdEBgnqYFWkYg7R/4tRGioOVTQyTfnWeHPymobSpEAMouFXzXPhaPpWkPsAyoTFwZA2mLXDJMQsyymEUmdUEKzdbUmyhq5UsZ8BxsYyB1YXVN7KpteddlDoqcCYocmNS7nFvZHtFDvpzRMrQD+9ZvmzL5ujwwnS+fEctSGQ7fqZu2+67pt0zv+7qizbHRz/dkn1Kact68TB0nsM9D9mEEkOarWEVchC5jYud5hpGOpiE3KmvEAzeZ3+OH0vD4UxssFw9/CAwxQ25Fbk8dn9xZzhzEffF+il6CGmoXjhblnjbe+PKly2+XPSinLWzAzQ4JFNmWtcgHsPswuXBGyCAPAZByEzh7Xs6CR42ZmHBxm3isX5RTbTazpcl1OHIh/sfRyLyqY4pDwY7f81f1KM2W5JOgxD4B8UxOhiilIR62u+gznbz4dFm2Z69+I1/6+KrIONDBND27G/v7/7WNKuzL/m0XOPrPIrilRSPcp0aoFsWxxxmck2PX7D2gh7cc+xWCVgyrQKkgQpogeq2uWAw3UhUkYNHvC2uDPLHQ5Se7wDetvaFRSWI1Q+alZx9cdtqF36wX34HCsbtGpXHOoAy3hp8TWFccfbSCrRMjbTAhhN2gBTWQTTUBUQXHaXecbBXLmo5bccgUn4h7NkvqrHyuZ82vfLDPSZEclCOQzwZp7oakYYJVGY/MaCtxe2NFp6uzguZRIYAqgkVEA1NJgZsJ/o4rlKC0YjeA826nOqZGuWbWcY7BdCOKqq7+nzD+X9/eHzpM3enJ3XlyWZkPzHwwXqn1NyIm9An9rarwJiSMXDpbi7euIOoYM90K9t6G30tHGC0Fa6xFzLwA2NaOTxQg4/EuN2xZVgxWFLvx6hNfiE79aI1Yf0RklahLM060pOEUFq5gK1V2DBdszoxx409RJdMMBKDgg5hWhBQT8I0xC8hZ847EQyR21+W2YRyGBmEsKw+sjq2E4XtYwsbh8Qia49BrpjtyCrCajKhVGXAY2VwA8pJiRw1DdXrf62tTHCg2cBATbFv6ma88+HxZ1XZrjKOY8mCAnhaPZqovXL+1TVzh/U+BNMVpWjAtvtOEHR3WATR4WWUPMe1dxPbm4s6x8gURBO8k6QV9ly5yLOdDMSPWkMHOgoHBi4baFhyS9qhuy7jWfsR05MnmROeQgX2zZcBW6w8haVYKKy1AVZycozSauBfsQQda7u5krxv5JWnJ/wB0lTZtvfLXGgXIFIgzOhTN6J9u71y9IIKYEeoRRuorklHGW6xpCOTikoYAL2i8SJawUk3Mjs2rlgKguvsnyPFyUEjPG9KmZCFmVYTLNNmrcIm2yTrVvftt79ic9ddL9k98+sfvG3eHL1+XXdRrMO++bTZoXn4Ge560UyqbjutsO6Xpg2UbEH61j3OWAZrgxq3mBqRO+hp3qzR+WK8y2uytj5Y1vugGu3ZPFmTow+CaFubAipQJsXhJTyL50042nt6Z2B5w/ye6NwhiZBDEemUCZCFNCdgxfWPzKG+4zOjimzkUP9I1OwORWts3MNg5ZWmsRv4Ms10ruMa4/H5WdK2+80yRUS4bUa3Zk7ZP+UEdt8LZCRVwT4qo7SvxchtMqVlLKg8Vc/U28zrul2fXZODIPNNB33gabfKmM8Hf25zfFgNuzkJZK6KhuUUWoT31rFVb5bfV3aYVgVzhGwY0tQQfnGTKqOzZddcAJ0HsfGPAspoxDejbL9Y2jFgTRGMg2cMGtZhSpNOavjQErQfefmmmC2CTMT0WnsDHVGDjAkJnKU9g6FiboJMs8i/woAkK8kEXvKw2/DpjaAcg28jhgdtOoSQMErQrpi1pPGEc83j7c5aNnQ85tRIQxI2zXFh98zJ1RatdcJP8/zuJsrUpQnCixh05XRjY1WRWfjNOMPJRkebQdFqWYicMW8D3WTXgRTlqxFJHe42R4fzNK9/Lsg8Ao1PvmO98brtya/Om8NHrrvzpZ3Aae9G72RoSLTzwSr4d1o9FrwnaLku3gnezJwWSR1F5CEnYQVzre/S+XvsKd0bZwgZGn0WWXwshvK45xFKxKOsxDpQedTubPmg7OzchH3RAvNpDiyVWvuQj8GLs/DWAOpYtRkhcZoxW2/b/NXLjsNN9Ac/hYgLsQV9GdymxvS4gduUxy+gp9X2k4kIzhqQ+RX3ehrjPhK32HszGBEPh3Nns54AL4cx86YRq4/JYxGysswHh/OyPX//8cGFT5bTiddprkd41Wcv7k7/4MHxhUcuu/Oa8uuzk4CduOw8/+d2R/vWns+JKaauvPdhHwF+CFuBGyKINAuVAT3Yu1i1qEDLthXHE8z1Ald9jz7Xn6aBw0DpduHWjjjtcU+vESHkGQTvfKdc4SUnb69aR2qtN4V1X7Zc2rYRnwTblzIR921FpsXFtrbQZuyERUa6VqpwmFLJLQNucbLl7jCNRr3pY+c+FlDSM6x40sXygj8dKlce9OxBR4jGLTYNAc8lfmeeJ8Ura3tcBnzKR1zlgNqe2auKNFFN66jCv9tcuPDIs93pH6z3q+zPj3i68sy6u139MtRjTrJGOq9Da+ZGEhXX/JjTZGuXtEPWgq75/UFjAotZezm8L1vm/QCcEKOrewYGsiV2aamu6QDKwRyawYI4OqVBukjL5pZ4389F4FEKP+IAGnNB8HkTEK+3UcQ5Vy2rih7RFAoPnm2wdwR4bGk89duGEHqY5cbOctTpjskGShxZTXKhsVJns680YVEcq7FIOsvSJKEJYVwK1a6gEWCNKWcIpit12+o6GzP0l5R1DsVx3eAFbhIjFWmzrrDVzruPGtMLFLQfALD8gm1kq8X19vqjyn67/rw7PnTj6fa6X5s3h7euu7N2qHkYEcpgMmAaOJHZIYsJKJT0VDSynRkb2QSxhgjXcC5pLCDa9NiC3JLRbyCuATld++oPeb7vX8fHH6sxa7wRFVRaSTT4sFXIMyln0MhofXITqGyqIFaQyrHnR9uZh3oinorX+bCYftxwK5BpYJgz13V7+KmiFAVIW6WVpHRNqXmB2dHqLR0xiacyx44MKhn8hcJq3+mdgf/QebCbR0S5Fd0mgfNpczwtu7MPHm8uP/m1d37c/U2nnW2Pn7c5unDruj1bmvCzGaUcffZYmgql8Io5kwKTMlN5g/KKN4lBJ0LaXYVroeyIOdzGrWWxi+5QypERqaJnOnHgWIZC7AUtuTVFoW+5QMR+8iXhu8ga9sxQFSHmCG5m7ehtM7XsRiGFKvk5Dg1yQkvdctSnajyEMbrjdLVeUk56sKzkC+L0HlYEoNvIbGTht+txLdWAclqD54gpmJyGm6HUjzuM2QndaySmer4TeQHKyjmDFSiHnZ2WGDtaZYq+MvQHa9i4WMsJuajDGKFOQZ/TujtdNkfHt55tr3tefVMdfUcvnA8bfXSX5DTRsO5l7c6MHa/bkGIAjBjKGAZNtOEk7+xb4KHyeScJZhoHT76R+sJtgrIYHKk7DgH/LyuNdqg7CwiFblnHMEQzGjAUVY7IiRtIcIoSoeW0hRLMlUmB0WS5Hw9c93CaFE0NsId9qgeKUOvSGBCOCAlHpBKpk1AOwqj6DEJxpOfYIcl9YOWR0YJMRfTJTKrks0B/JvO16MYaHHRnJg9vOl+y9RUj4aYjKDNy4g5N15rzMWLdpL9CQzwMyz4TWm0YFGj7tswHlRjzC00BrMv6gnU3Qi60si8IbVYFcsXIGpiKNqWEtkJoD9pOy+htO58Jx584f8rDlJUE6o00RUiIHIYD4jIRLf2S/XIhFKZWjsxnKD1mb4Z8Cm1R7xi08Kevq7C6kmGWCV4ETzSN9LJCFh98O0lptLlvRG5sZ4Ki02c7o6jjFFfHkTLIQxQ6E4YiGBbBKlmxMuyNEZM+goD+FOK/BF7tlCLXRnHaTqtaze/BKsqfg1m2cWZ2o9RpljE2gETNeE/LIY7wng3HWFVUC/LvXtCefOYd601le/LL88HRo9bt6dpW/gEy2MDQQgXvlrUmKlqfKJDD2zQwJzSAGA676Fa2AN0CQdd7oyCLSZyW7XDX62KxkzpgkSlxybL9PJxI7qt+uClextaK3+WPO458f8Re5VEY1d6DAlEBpIUyTJ1ovxOJscHGoMre1dCrfBesqHo9tVZ/cQXwkEdt42qbxtkFDs7F7Nzw8Ru1xByBrEwGrIKPhSUzesi6yRRr9tXQB6tHYTwZeTFvEyqwXtHioeGH2uf8qNVSh5lDienXaXNU/QDvWzcXnjqvy/lTpml6xLo7bxxFywk9rpwsFfWRmInnI6TNzPRVpBHBlI29gwgvmK5xsoP3Cd2DI8d9CG4Fs7BFOAFbxnwMq9yEI1ihCH9ZuH3bbYyKN94tKEFn7TjnSwi93dr6VbU+JPxOAoe6LmNKC0sTdgLbeIE2WPxIqEyM1Yj13PYh0SUgQiTW8JOWYk2cgzMMKc8+pC4RqrGl4d3KuSidTmFupxQwmp7GzxSYj2zcnuc5wrOHRmZ6KXErgyBrFOiTkqqQF8OPpX5gVHnVKvNirxbl8rqc1zF+RJX9g826e/p8dGHenV2tWybM3TZMEJEwP7DUkbDBhjsKqeJq1dpmDIj7ktVhYlC9Dl2iIbeaReNA83g6chDYrFg8vCU/qZMWbqNr7PCjtFF2eAU2NN8FOZGo3TGby7krMJE5XDWEColQaOuk4g0p3NKin259mU2gn5Nw2+QbO2ZENQNL6m2E/0NHmslIfcvja0pU+xK3XYttZDGHgKDfuW1BeTom9iW6iZ9DMlrBdlpOCjQKMfSA2uh0ItK9TkbWfLRCL6MQ5tWImggWgPAjIcidoryDOBKgKWPWemFZ5qOLczk7efrBUspT2669LLmEUzyOnUI9SKdE46w9HKKjAylDLgAPHmlphkVcjFKwvrUg7RXTEquKUiZJMtmngyqAWAKZ2Hjrg7zOG0ojMhDNb2nZbBRr/Y02Dp5oDV7Wds58/bpb1nK2q39hXZNtS65xGyXa4JJf4PdZbZm1QQ+7uD1BBtCH2hBoataulMODqRxt5PpiORfKOQGxBNyUDKM1vkNyzp8DhWH9hxKljEP0m/Lrp1SslMNUymrJqR7wiI09SnDBdKNDrGCKnZR6HmM2soaYfceh0CKLHGCH7hjy5NHSRZBlmZanVX/gk5LJ8A+EcAC5LMkHHVVrVZlYLKazWxieIAGKClB/xmvsNwDxjC9oOSacWMkJNmWfRNcmh2fhqLHQUSRtqCVC2ihlAQfq2EhrAYnJs1KtC4U2VXnMpXzkslz++IdN5fE3lnJ4WMpmM5UKyzy5xknuTBGHrw08c1xYQMnOQxAVXmfgOko4cirpc05cmdJFrX22Xcr771vbf8cHU7l4VMr5jmSWtbNRKQs481U/7+etsOxEZFZQ9N0MlPYbUe7IamvgCAaOCMkl7ZQcvbG5fM34B23gaZ/McZTPafm2j2wQGFupaQo90YXu8dg6w3ofRZbmJ9bTRB9rTn7KngL1wo4kxDb2D2Mh8/j3cVY3Sj4yluing9TezDuQgLJktZxNY3lmVYzRKa3VSERZc9YHzUMAWcMWSJgC4F1CBMEME/EZ+/fmnjmjbKrFX0s5OZvLC54yldufO5dnP2Eut95QyoHuxuD8QzvAIufezU+sg85FUGo400QCkFkiu0chOityYA3N2upj22UtH3pgLb/w9qV8/8/tyt3vXst1F3heCsQXNJmXx12xvQ47DUdjBAaPu/xw7wx1hF2Q+bmAm6wdgc+Zj4IHkzjBZDZaB56j82ORpnzHlZX5kOofy0SkFbg0PyPp1N9otDqJvYMg3mOn21528o55c/iJy+60maOQG5Zk2IUHDOZ/HdJpo0MHlMw+Vj4oacACXCIaDzU2KYiwH0liJLb+1nWDRtY6a5cvnNHe0N78+6IANrRB9ml7KmoyflbLf/lsKo+46aB8/R+eyx98OlNgks1RO4719d7WFoKLSo4oSFxsKs8FjOjtN/uCwrrmOLbWch3cs+1U/u6/2pXvefV5edglbS2IEXgrrgBFxqe1ISmdvWqIlGRkosg75olZ1ZAwYOudYLGOkWEbRATAc8FJR30JWABGk5UMLVMOfW7Iq++fC1ZunNfmPCAZgevu/NcPyro+bF1k9S97/EXx+IINa4gxEYjIUMOhCCyqwXuGZTZQddstt5ScmWdIQAcqC13UxO6ospCTWUsybHAq0FLTIDh2m+27C3+EcZERQCNWeT51IUutefObuZST86k8+uFz+d//zKY86dapbHeiYCsqqGvWA9y2loSOGuro1hik0BP/Zh0vCiV1xAjq4TwvQxmbMneEVZwmyzo1VHO4WcvXfvGmfPR0Lf/yddty40Xxaxg60/qwdkKGiJhbeaIZvtS9qK/QDkRLtMG2mTADb8JCk7bdWSZaG+18JA9ZaRKw9i/7zkA4Q1PRZGB/AMnvoDUUlnOABgwU++DQE6uBl20SXdyswFjXY0/XG+vRaJfaufPtAK84MF5RFAnGO5TeQP8xqdW/SVtbBYZJlsfCJq0zgVPpGykbjyfZdAQHTDjVHCU4PPAMsEAkrtb4Qe/WJVWcRopmaXOEf6ZuzzvJKfAO1oHfLqVcON6U7/wTB034z3drE/yqGHideZqMh3a5M5vHLD5jNA1e906CaGD0qykWFMVOL+q/KRFf4TfPUzncyBuVdn/tCw7KI27clPOtChB5x01JWZuj534cbvMGhyHAtAUaJbe33WSemvx9kzcyZuTEw7TWuZwcw+AfUyjyroswowpW6hy/p/wRSw9m/kyhwDTtswQ0MzR4QcdRm6DvTWJ8y6V6cPyRkYcZJZB4hCeJ8QJHkVUeoBK0kQfMmawvJxo1DuWFYfB5d7MoSj4aQPHAp77xpMiEdRQp82Wnniqqg0PPWn/AuIBwFA+v/9/MU7l8OpWvfPGmPPXj53K+XctBtVbTHmGE84fkPLSvuzK+hoID82SFYXyYoH6ag3M7fRydRurfbBb/ETfsymc+eSr3X63KwYuA5UuQJA1A1mr+9MAT4+gBbdOfVkqy6KuiBjNiWbe5SKf28JhYrv2ARM6tLNKuuwn1QsmQ9c+5N3lq1Ll/cM+MB/8XC1rX9Wgu89y2Pc3pA0a4jtE53joNYJFDEz8VtJZQwQbdpBTGGC/3fG4jDce72YsbtIsKP5OfHZQ0EZcdj3l48CjNPxPNeNjcaiUtzE5HEyBW22LdT8/n8qRHzOV/eJ7M8+fZPfXt+BUoDFWwDRBQe/ZbRPqw3mbXdPD0xg/miRY6MqMF647xwniM0n+d1osm4lS6PuNxsmzCLCXtgCMgLpbN0ZM4Dt7WkZh0eYGDvnZ79U3KZgQ3EvgmfvSyK4i2BibkCNTrssOKgPpCETT7V2UuKpHIA5kabDYzOkDiFgTE7s4mCSntNST0RGvRiBd6Ia0C07ie0HXxplI5IE+WN0ddzYL3iR7CTGGukBIcnPjG6HTP5cGZi5WKBYDC5JDK5LRLK0MkJW9m0o9VxcYy0Xrg6lo+45Pmct1xjZPXOa5LtjAArKlGVaChqP0yXcnzFUU6gXupr8qlpjjxvv5n46BjHBjQUAjlNCSh7TdWFRtQlf+jbp7K8aGGiE2qIx84akvoLfxFhqOPf9yIhfgUC/ihuLRTjuJWsriwKlIO6GWiRegO7c3ZAoZkyaIJwmBk7YzlvMyJQT6mphf0C5ca5AzJcWFMXIKy0hESS7vqFICG2QeQ45K+EYIzqWkjCD7HykOl0QKicVxn9LzSriTaKcAZjn1zJlWwEia/vow2hBaJEKEOu4hRHKAmMFGyBdL1zKo+UOz4rnfr/P+pj8b6g9S25IDwzMCYDShN9evcmGgpXLVZfZgGBI0VGd3bQpYY5SfCMPTlqQ6Ua/0sy1yarzkMrjbUlDXxQGoWUcSpbNpy8LAaC/BBWHNi4zx5P9FWve6crI9ozN7NorXQ2jPQf06rAeIKdLT4GwttmLu47KXdnRx4phwGtihOFqIhb/1lKACgijbKDEgHWtQZ2uGuEojznweC5NWPJIyEhVJIvfEMaSKqlfGnUUj7JXl+dXJIchsTQslDNcqTN+hMtBxpDyiJS8dTeewtakOi7CojQCFFy2rQlV2/Y97Kze8vmVYSAbSVjqjPlIv2P8oWMaxPE207albwSu93fmApp9UJaEzjpbljMDbZKUmKlPRzNF2kdGhMZkIKlmIdqLYmJcKtSIo1rP9mi55eDcrUIvnmjOUWRGQDDpLv3hQ1x+hbmPlqWbQxL8u8S47DQp/ua4QliINKunuYw7g46Sk0xRqFCYlqgjGyIojRyQBzuqYPfRoMqoetjCelgBl1tQuE2piHSJuK90VNOlgMv9q6hhibDyFelE7+BieEKLzNVLPjJAHIGDf10IoiuvB934w0S6U0yBRyFsSsvGju7fQfKDkgHJpekP4py9JCSt7WJKj1hde+cymHB9okPo8qvOD0CK0iD3k34zEe9GkiKOv3pRzE/bGtwtouJzRDJafYV6R/eCMaldi+nubcPnGT0cjT7DNgLwIpnUy2JB8XCM49sOKZl8g+0VDAEowIrc0N6/r7JJUmrixAjIvyhztBmk285kAktUnEzCBe4nubD/JiG+YtahNSnRicsKY17anCwQ4jjgA4h2eGHTAC5qP1b4v/l/Lr96plyA+zR1QlrcMjSWvFY6V0WXFQeEmobVdlOj4rnVzjDlRYGHiVfacZ9oNY+VRNFbTNppS3vX8tr3vnUm68iB1nlNcss7Iz6XYNyWdsTDqKmNHynA1Oaw0WkaDrFE1wLJv8TY50Yl+drs4PA4BoOiyRNJWtHoeE9gS51FRxj3v1AJOmwTQN90b29eEGciwsw4u9/sagNm/D/JJLZdUiDhVXErlS+iSh1tHRsnixh9SFAW19pxExvgmjlBABXeub0TOuyyCxRCeoHW1jvwKdXRjrQp/z86X8zC8vA2ursbPUvj0qNC0XXffPy0PHuu7Kak3QKbSb+kqoyIXdFU11ZmatjvDld/7Urlw+XctGox1gLN9qjo2LCxfv0GP6DfaeZpiB5LkLeI7bTw+sA4zpCXFEQ0IX+IIt1MKYpNK6oIvN3mYKTGluPoXubKpt6b6g3Z4oTrrWtyPlxuigErthAclAYI2CA6nOTMNk25fEQYjHQ00M1voesqa0C8GB6UKfho7KpV/GPTHeHRnCrUGgJ/wIeeoKfUOkkSqwAGct210p119cy6t/ZS13v6fm+0/NKeiwmhKIeOnt4IzAcdz5Gp89SrCWv1QtEB+O7xFR445P0Yda21R1QVV0dS3DP/65XflXb1zK9cc1+SnyEKZ5rQzXKVosvPtu1eVS8uvsYTIZY2208WXq/0oGwipwhUQGldpVX7Hg2YCUPo2B07rVnJAGQw9rFfEh6Cz8gHLWPhsz9ztEtLR/ltbOsqP2Jqc42BNm4WjuhymCeVjBADEOycUMrgYI53old4a9/S7UVq9esCUvyFxD2i0JiDmAkqJEn4KlI5U9tO7a6OGMj5i3nSqrTkcbcP1+cCDx/2/6oW350INry5qrqbN16Wz9rwpPTaCp7WvLaRd1C9X7VbjqKQ/1Ht5px9tN/h1/VRBbOfS8lE9lqLXGe+Fe+09/t/bpu9rW9p7ex/Wa6FSF//t+dlv+9o9vy4013GlKwkfATpQCtA4MyohvoLigm9WKeVSKbptDIN0k4Zg4Xm9j6EqhWcgAM53XWv5G1inmO3Clbygm5eZIZCHO+5lv2YKqGqFrjH0M3riKcGhlhi6SUVHUbS87Ef0w0iahS9EM+lqz+BTalX/7qymTnsacEwvhyMLclB51r3VGHDrmHhmLsJSNeGtW2xRH2z9U9R0x9l/nS8x32g7LYVAIXRmr+gI+6ZGb8jc+fy6f+ckoLFeUK8hwZPT86F1u+KhMfrejVI8xOyK4UP3aB0r5+z+1K//6Tbtyw7EoB38slUMLucwQIy7edorGgaXZiZv8VHSPeQ/TQGT74X5AoStbZVpkRfH5ngLj8Unczd0M8oh6Y/v9IssHYvzug+GzHWiKSAaKoLWjIF5diUef9bKTVGM/rLT62gu1EYt1c1+GtEqrARP1SIEYBohizKFcllf7ru+QxfHTg2NlthusVe65y2GwGaKGjg6EwhhYmFeYi9CSIdOaL7+Wk9O6LXspz3vipnzOU6fyhI+r1zmJJpImjtVgJSC1K6YH4HBKJzAGPi5g4jLIitL4ERyzek/PS3nnh9byunes5bXvWMv9V9Zy03WLIBv4ELLH3YSP2kVIjWnMUQfXEHEBlwNOIjQEhfIlgsBMIf8n8KRb5IGzlnKpAm0yI4TbrsjkXR8B5nsd2RhBsFWqTkfbnCb3g4xt33ilL1571jeepLUK0QrKg5QlxsJg5nuQKx4UJDeCU4lpVLOKHVDdB5iQDawqlt4CPRoxI34JMdR9xo7JZd5bsgpRS40/sGCcjZoEUv6uZbdby5XTutuRLDZqy4DrcuG6WUhb0Qb4FlRwT5h9Wb40tWGXYmwTKQ1awwEac969BjTkOfFS6RRgaV7lugnIwaZOFVhT9MhEaJt2WCLFY0ZHB9P0TWZ0ZgqUofN7Bw++5DAkvE2yKhXw2XJhMiEHvz0EnBbRRYBjv0V2vXzx+jv26D6Bv+hwW4YTJoOQhcTkib554OuGIJGQpl2EOdFoOGxiCANppbzuj1fdRZqY4wJW0eTI8YWhAyKoRd+sTz6YAu/q10VCbZriSCDH/g06pV3InE4EdbrGcgzHYZ4/cBZAYWDgmVHYMuv8un7qUtm6BBj5843vbR9FL4fnut269wxbyPPrqxHjg8brKgRRVtkeVfq61a+bR9efy7Kz9sKj3JYDm0/RF0k71nCUFkOaCZ6CZxTF8UpNKPe5TWBZK7iAY4iln4MQ4uS852MrjJL3SBjZMSsjOUWt+KAklI5h6iptH8V5IAtcru3WEZQ2KUvmBbB2jjJZ5UKNg6Rk7OY0IWIbYQz/7e3z2BxGrygdsGE8maGOQyQcbhiVr6dFhhLaGmf5FWBtU1zKStlqBOzXC5IjjB7VVOH18gZLH23NN5VlAhcFcFffrXjZYuOUs5+JY+oWDjL/bX2pDWtDGB1cvtEl6wpgSL0mp58QyKEEMVSh5yfC0VnLqKfKWn5AsuSMPRxJMc8wKqBIFXWdhw16RABISrdJSgIFA22IEJFU03Jq7FEBS22GzXJTprEiyCg4MZLZDV7t3JogPGsGcNBdKF3wNis4ueWJUP4CjSc279FrbNzqnoBRolkg+Iii1B7YVVs3nu7wL6eNQzOhWdqHrBtw1dnG03ScMqEGh9pMwqS49umnvX1zgRl9rHkGUfKksLe29qf1W7Yzl0em4ZzemKaLObA111LY1KAIlIP0V8q+9CgOKz1XSlZN/Q8n6Fr1vK0aTqGhMQ0S0tOP+ae7R8LPNHFU7w49e4LzQ2jwouFw2E0dLh0DsAU15ed7Jtpw5zfzvDwIJB5RWbFptEdAQjR6SBA0K/TI7lvXlQiePh4eDmXJYiDczAkGvXJOYQQfREAZIxytuOq3m+JFRrrwh+cvVIePpadSDcWRxrRfLALjThoR425y6YtR9ipxBgnq1JIxJOgJ+A5NG5ScM0UzoEgp3gPRUJX9oiWiHutNYkSY0xiXaMJdQmn2nVBAe4eTHvFWSnywSI3Szc5v7MxAHDf3HzAzc7k8RKyUPDMS4FkvZR0b4vF5POQSiZspL45E0I5B5Dxcr5GXkv0Z1tfQsJDIH5BPZAVaj+EE6MvW+3rGX6jMgueaB+B7U3h7DrwnBE8Jq6B+LLs0wXZQQfM7h4j2PQhe3VV37LWsmVGYDwf6UBKFuyJJuwEdaKeAWMTHkAaWjTJZKUMIrvajMuwUowsLv5rgS1MITclpI5zuEgasi7FhPR3OOQV6K5O+E/ryTSSYOxQlkYW2sQTCo/EI0SNoASgpWolohJ4ZUmupiiR8sw/iKSUsfDhxetmrdjgJ3ZoTXabZt0zrhiaiHmgzqVb3CZNCimlz4gMO32JfMZ6W8mDUdRB5QxS2tui184i3mUBX4Gso/GGc81pOSJMpVQpAA4GRvd763gE2YYSDDqQAU7XrNeHDFNcABnDMsTJUnUMynY2vaWeUtKQRAx5HlNyDScrCvJZCfXG64szDIyE8EhsXnE8Mi5NlYBVlSgUIxhQCBC86tWRQpD1XTtcWOps3MlDVyTZXpjblg8Hb8wlIqZ8idKTsXsMUwFe3+XyU33CmtXRYii5VJHPpuHr+xfHHGYs6Mv7NOK/jomt0Uusm/QaF2mtIvc+ok+nkmt74ac0GR3mIVVdsrDMFIztiRzOQIJ3kMgCRyHwKG4HGrg6UICGhGIankezQQURTPA64i2YfRJH3t2x3FFgCY/rImO6Qh7X1ORNDpkxcVwroT+qEGWM62AF/g3db2NbjowgZRSvK2j2gvzZIY1+s2SwuhGLGrl+Z28hOhmnQ1Lb92q6lPHillMfcMpfPfsqmPPNxU3n4DVJgVQ7wpI8FP3K89zFDlf3iFQ1L3rvB34eiDnXG/Jny4Gkpb/2NpfyHty7lV35jLceHdXej6IPIiid4qocfCtepryT2ueyx1n4j7uvo1ptJY6xd2JTGOtiS808wRVIf9C7KUyvIiIMQNI+Jo7BencszEf7xL5NF4ghHK3EDVyANA0Y1DyCAQ9VU0kd0nHfCidqOWYTCryYorQnmLY/Ntvg8Kbakhzp4ykojNgLOImVgTu+kwofiARTQkZ1DUP7XHmyLW8irnN82zSWbfT5wWspjb5nL//1z5/L5nzq31XGZJvEz/Rau52sj89iN2J7n95jWUI9/Trdrues12/L/+te7pozr+oZcurwpAxnDf1wq+7f9HUGnya9IMmuXU2oJGCe4oWhx0Lqnq6GapAQ+hn71RrTproaJc+ndNvZkMBIi6VxoQWHk5CbifXYcwnfG+REq4y0MiJddS2POR/BtD0qRtugTIBbt0R0rdoEYpTAG5J1DJtM1CMG2xiexlATiWiYDDbzCNpx7J5oy3o117RMU17bV8j9wMpWnPfagfOeXb8on3Fzz+pdyfi4nDflUQTFPSGWmvrIyZWtm2XSEqFRouHnwQjiDsWWX2F+GyUMVY8ezyf2aufgnPuuwPPqWufyVf7oVRAazYbM3LHel/Hteak12jZudQ5ZAfyMraWjUxpyVTYSkLvyTru0ghIm+c+OS8sEuVr0xwThoglHXJ0cTkB0XUEIqKIrRAbVF2jvIMjP+8Hlr9E14e+q/zU8Q9+4zSgdisfCb3TIBjQ6uQIQAC7yhPHz2ribxdFzAQgfoku6HRWK8wIv65OFEKjfRhseamQJ1mEbBARZEtz6CMDVH34MnpTz5UXP5v/6sCH/dArwOeT32qyKDWZVERc/1sBD5q//Neq1NEerW4bqBu2413p6t7zZFIr/r93ZNk3PasyirJvDgOfyn1+UdX1wzhzbgeW1Ly1Qsrd31U4//evHTNuUrX3RQrp7JKkdTS5qPYCPJuyzz+Iygb9KzMj7KaQTGjCeTTOQsvRDVqB8IskWvkvmHpdUKsFlrDjK6TET0gk/oWXB+ey5JNwnNjlm+hQqta3qBp+4uWKEVjM9qIlUuOv2WOVhORe00D/WuD4UkzdE03miwY06ADRhgkg7AUPtHbRGqy1KNsKPNg0zlx97b98B8fCdypsfPeevtqRwdzuVb/9im3HypCooIO3hKNDW1HporOCkHzqa0DXVHZ+pEt2EpbTvWLynV6A94BDSnTV1tnIgKVd5rFOePP38uH/+wuZzvkBTkiA80zDU6SialwPCDfXp85HaUN6KhK/MwTHbMuAr+yvUjQ5XHsk/EQp84lBaMWght9r3ie3APWNiThdGCMPsSBGIFoVbig34fAGzuIhcbAoj0Z7Pqa5EFKRCjmmZCBJLcbslB61o+OgchoCaohQU8SR3kAtHrTt4ppTfdD/Jq1rsPR3Zt5o/RNC4fCiDQFJa0pRL3gZNS/vgLNuWZj5X9/+vS31gu954KylCk0Zf30gKjDrhjxDDBUtBljn6gzFQA5wzEd2MFddPPW64v5SmPKuXBq3VdQFqBp2OTdw/u2oA6LXRHO/eSYQ6ecKV7An3X9JAX4ylO7PDVw1ZlsHrG5e53SuMC5Qy9nXeoSJ3vL9OjODGaZ9BuGLgr7PaWgqKxXofIprqx/NPSO7mr8RAJfta1HQ0syqe4ahZwUSpgJwiS11O9vrKRY9RcHNoZIQAy7dYm6AJGBGwJYv8i+axUIrg3iXMgYBFjenL9WTf6ODoo5Ys/rYqCLPTJa899M05aqmlJIFE/2D1+x4myRxlw5+sQL3ssv69L6MiqGXTJUEcITFl2j7qpngtI82rrLPGvMqCl3Q5iKWI4sMeh0seQjz7BSpIUixsdfowUfxaoEu1E7F36ME9YEB1AjZRSxAaDQtwqR2GNRi+0KSYOUF0ZU1O7Av6Kadq23wE3xh+NvzORLOeeGzKAiLFv7NShIKT30JfvEqOF0F/EsyghEoAsGe+ZF5CbSpdPl/qwVRgMpgQ1IUR09dkq7Ge7qTzhEZvy5FtFhfspDK79fU+5XCytgKNoAhQoLB63J9AlwT6jODuEkvCIwqT0bLS1i6j04yACIH257kj8A3jfE7zAhrTTUQpmZk94TAECmysUp9Orp1F3m08plsc/VtduZsvM34BzLfbxndKKlQcctzxNhSxMH+uEJi0ku8sM+QQNkXwVneGKN9uvtNUcbidMSbn2lBzDVpwFJQuv8Q1BlIGhsQGNPIrG6sILUHToticBt7jqgMga/7Rdctvedzz/1uL0ehK/QFkDFsGj6orQlBTu6fbPT3zEVI422DOPumBeWnvBGmfOqJSgBAERyxotSPdxjrQLgeGC1EBJBrhhfRoqlvyh63X778PmHSSq5rwQXBvk9XftIwni+bp8IyZPgtFIQA68zCGThngj7zATJyPS2Vg2RHA4En+ZkhmNUy+yuctBPxsi4ihHUsCDsq1MfdkUqT4i24KT9ZWHWful2Cw89RZ/XD2ZLLSm11SezeRaEfVZg2s2HDXf5j6hnBSBszBYtIgmtXieaa4MHzamzB8+UBTko98+r+2hHgbo+gu6nReEV5XRCIJj6xyHxS6Yrfn8XljYMlB+g7mlJb0YVOZpE34TffbBuD2fWfc2uOc3qgKg+ThJROg2oRavjcK3A8sb5+UOz+wJ1Zy8WiJvZ8n9mJw43U1RtLT1eRo3Vo4Yf4/pO2OILvZ2uY/Ad2Q2KqgSAaKSFbHUQ0xFie+YC5yO0cj6VJOp3bwXlCqbUKFZywBpVDDsfL0UoB8YNrQkL9SRUhVNmFrzhhgReGxSuA8C5SvixkzLgowoAASAm+kD5G2BC8w84dpWi0kP6q2lVgpVJ+AeUfJndaC7BF4aNGh/6tIQltt7JSnh4KB0aYSFNESic+6hP4EsInNefbTqrpoFePe71nL3u5dyfOg5C+ueWH0sF4qdsjrRXtL+OaIhfYtRFPYpGbHwd9CtCeOovM4WkuUgQN1UlBsHV0iIMPm6fLdmtnkNj1ccNl++rDyXg0FAF74FnZ9QLCaReUeVC92pZcx+0knXHSKwVUcaBdtao5NkeXOn9sFGEi7bKSVBOLfuRD4oGt2MROKyWLtAz3AOO41m4qnwAfO4soRGVjqBHsxftp6CrN0qW37d85+X8uHLSxMO2Quwz2hyG5gO9cCgMQrSjmSSht8YGBXkNGsJ4+vK1K3QKMTYVcQJkeRJ+oc/syunZxAkvBM7QP5cGx9rtg48LFZY+GU60c8KkG6ycMQ5d3BecsVZZ09+DQYpKG5N6zXDoeU1/0ZS4GbYzHtP2XkWpneko1aV3qT1ZmwADEn6844clH55L0ByGKOj3M62K7ALOTkyzCr7aq+hJEMYiepB44MQAbClDplZj2zpvoYEMehXSB7yDpihdhtOTMtpymCiYeTQ682hx70mHVmO9VCMaS1v+42l/Os3yuBv6xZZATaS05GgIE8tcI8gyrjyTgOoUNu4svjnad2giD0f7ErDs4iW27Ap5Ud/cSn/7p6l3HSJNgLVavI48AA4rFdli2ukaL0+l1yOMDhYMhPldM3CPiLhSn8GtkvyD/rMozgkqgRiE+yLe+Wj0mttV+udmuNVYe5PUwpTltgtSaFuQIdmkNy4KWxNB4PQtkIe9iEHGvU6ME/+kJRD0/lcjt8KyyEIa+nI4h1oQKESLe907hkdRsKjHBS9dtKqA8ORNbbnmRt54LsBhgX1s1ab93sp5boLa/mHP7OU936k5gCIsOx2i1kORXGhzXutb2pWoPk1XoGCD+vaKUpif4PRpmO27Fm1Hlp/Xf1X9wGs/aoLgl7+Y0u54aJLhEU4dH9/NNTxZFRokjpLfUpeeCWz8A7pLleihmHoRFsWgGtoucmRIdqdzU43LWKlRD6zUCw76nQPCHtELTmQbvulg+Nt4fH2RCaeUfAGI169IxhfkYj2OvEsChBW89UB05ztkCIMCtLipnivJw5fN3SbrFgM3URcxgkgXdm6zJLWJhqUddtKEIrCakY/TnCiNfuBqWxOjReo39R/TBPM8zuXct3Fqdx3spS/+E925U3/uSqBtR2XVVN6J1oebMpKpwpOG71uw+AJJvaMrifgT3acNUaY63JjYYs2JRnWge8U3TGhkmfqu5vNWg4P6mk/U/nen92Vv/B923K6lamOLDHvQ1WBNrSbVGg3mCto4hgitEIhJKbACCuy8xqWDf3qsH/87EseAm7Th6LzevCe8BE/M+B5pEbTOxxN4OfxE/tGNsOnN8zRGXwAaEPcel1kV9+77RuuGiB2/ezMbgq4VcLxM8rUsudZo3uNYWAIzvBrGM8MR61lmEe15aYGpGjOyJiQsQUtSmH4xKjBucaUig0KKzfmlYzRTENLRT4frTn2S3nw6tQOBPkfn78pf/hZU3nirVNLEnKiXNOIx4qJoX87H2eua0MH0Efy1Z2hquV//32l/Kd3LOWu16zldb9eT/5Z2k7A1fUZo0ehtPYR0iSFxRxovOTlwOC43Jj0W5+kWDJkQaml1oRp62qcAks+dNIZn4znFfGKr5DZ66zlIkf3wqIwXxbNyoHp0slUQq+DgCcrALAvY4/6x1N3ZGD6PHBTsq3CvIFcvek7zgZ5S2VAkjNpDf6ocDpl3PmRZdS82hBqUzSufQJbuE4hwkLBDNzW7PSjznjcVxjMEEd1t66lXDmT0GDNlqsbaQBq8wIcbpLptax8EAoazZlbgf4skVamHiQsvoqQY+tMz2rl5dl6rNn5MpXttpQPPziV93+0HVvUdjSubalTHkYRNg4ZXRAFpdm8px0bDN5tgXb50X6lIePhjjKb5D/qzykRloiV+cPKSuZ5pEeJP5M1C5ECbuxICeQ27NP72dEres3303R6Rek7GJeGyviVPljO/cEA24AlrePrn9k6QGE4tB4pCK7PGJUeik7ENBp0YnD7ZlwqCUdGuDSw6DlsQ9dpqErbTMSdkZ3jTZtchfumi3Xz36W854MiUFKv1tSCsgFQ9EyROXrN7WcryWKcnKVWlj3sf8i6QCnVFOLdTmJGNcfnwlHN+5ddgLZ1N2Pd1sxsOVsppXfSDUZhIEBjg+xyUWLk9ptSUZRiaFQl3LJUDfqR1YcSXd0YgI4NATIv4KuhPK8nAkjZA4D9aeHjmtpRh3nop34PAZUV47M90s8rHmGjsc1cfQUTU0NZQPNtW3BzDggj21DZIga1YDyn1AbZnns6OFIMPJPEzEwoZlKF9YjmBWIkxQ3U5ciQhLcBJIeorCiwOWbYo5D6yP2zpctQZhbiycyYVQ2t5w7nATqb43O+lefq/LmdAJTMOyu/Dill/RaYNDFyUCR6xDRvbd2+6Xp1DmGjH/S3ArhWvpkLoUld62DjQFLhjlCiT6OjKjpV2p7k5A2QdkYzbmoYApEU1wAc9dPE4OFMNC0s5Fi4ROjRFBkucXnki+A2hwk8o+tIQyDFUIG1k2jBzkTi6yntS9iKMUThxheD5IvxpD2+LbhZErdoViC7JIdQJW7uEaEZ7SYEKEKIAQtyZJ5OedlZODGY+kybaJDFdRBFU5De5HRtByphu+/xFsaSnj7B/A5LzUITLDdox/HZFj9m6MGs2qfGQifhpIZwkw/e84yQSHfUD+SCvtBGnqgjwmftlO12zM51UowUXrXmhWkyppOkOGlaJs95PyCwgYaowLqvbR+cmgylF/Z6IETn41x8uO1B3yORhc6BHwki7wlBwzKy1pzJxzTi9oX3rS5HmiNvgikk7nuuwCyXOwzhn/C1AKTGeSGDNMQxUE+IuDrNxd7LABToQldks4PjCJXAApNWC8Lte3PToCUKdQTu1ReIbn0HTGOpQPmaiMJoIJAhaf+68w9klKGdFCuJQS2Rpn13rc6blhozWPeUbj1B7V3pgkRISGZUlmCl4HNwBAP+tHq6/RdYUeOI9J7orAztLg5ugaPDBIC2U0ff0AiEpFGWoYvUf4yTKWIy7fqAoaEw7sWMG1HQaJoMOf1Qyzrc3DZHGnIJAx7MS5mzAtG+AcK7cuTSrxFCZu3rvVMEEIRaLYcmJ/jcR6rg4wO4yS4QnsnEEB22LYmxTztySMX+cY2aLa+5LIEI5OF+BxVAIpt/kWEOlpzqwT3W2LGFUWKsY1HTQpHURyR7mpifrKQpDmu/9ihDvzrFbOMjsI9yEEk5cD1ReDP1BbLrsjBYE0NqrmwxfUAeAH7FfdxiPaxssoZhWI4pnYcIY0tlvkr8M3KG0RJge3d0joTBHP2JugfeQ8hB0KDwN3R9Rnm+r2bJ2YrqyG4lYxoERFZXiya+tvLYr6bM6aPt8ho2OYF8jiIWKlvVUNjRYM7DzjhRi7l1isxPYTh9HxrMqrU5nyAsn/PHBENGKqEpo0Hkx9gx6GbY3TXsVaLu+Nfg5UlzMxkSOFXi65RSqC96Npbsm18HdbedytVt3RHYs1GkSblMRyEuAJJyvQ6jDDFVNqoCgrJgFMO6Rm3tG0ucb8Dph5eI4+/4cCrHB/I8zv6zUBcGlc20raFAhCjHqxza49QcX447oHXiU0QFnO9d6NoTtkMx1UcrXideIWmCRcMZGoA8CHc2ytFwvs9D/TSahelgva7bvVvWKsYs8qW1m5gCyVHGK0G/OwdlhejHoSdPJY1N5enm1sk2wrfO5oEiC2ACF+fIXrF+z0mnpG3MMZvSchneOK8CkSRC8WCxgrNjuT2vvIdGHPTkiSBXDKkjQdWOwE1gdCCzVOurG//sdlPbOvvi8VSe/PGl3Hp9RQGy/z87l0y4k7+nDlD1vneQkMJGwtMUZaFHnbddYWO/BrPgLXuRowfMzJK5iLH8wP1ree+9a9kua7l4WJ2AhAXhPeemOhgaKDvf3gtTCOlnPMqbeYCv8cYpgRXJccdGqbcAWlfKEAy8ZRGJZBxI+G0KQVV5P/msRB4YokFGSamZ3VLswMcpYSicqJyMNTeQwE5DAP3O6w65fC9+CEostFutFxqIkAMhRRWajhkwqMgjQDJOiMFQPB/EzqGygUfK5TnmBITr+JW1Dxxq4VBJgU/2M9yv2XClfPhyKY982Fz+zOfO5fM+ZSpPePjULGivvpK0dJ/8DHV++N7oN7/Tqdc9dfZtfOBkLW9611K+999vy6vuWcr1F1mx6vhAIbWxpmQYGIhsYYEAXBWHFnvtbEqilDCoMMbnSmDVuhILQX2GHY4SOIsu16nVJdKRAaT8ckduagH12VBIApToNYsyo41uuODmVIJI//wsRWSRgu6tJbe9TM4F6OaRNLAI07iV5WdRIE0RpjRkuqd+aGYKd0AlIVU1DLeYCxpMG7nQhhALzdqT6+rma4mwzKyDQerhqD9yeFDKvQ9O5QVP2ZRv/qOb8vhbvIE7s5g+uBUNeAJyau8+nTC6n+SabFYImfJA2utkLkMyWL2lce16qa1kVJp8x4+dl3/wyqU8/EbMuoj5eNHPngYHFWVjT5wV/A8OqQNaWzODD0nhFDflHbfiTlHD9gFdsl9igCPsM/bT203+E5Qif1jlxrroOPpUbjCI5idxJRRDl15n/UWRXVcCThFudLQkXbonZ9vxnu8hBwCym/a/Q32B4PRbEUlHHf3uCsjVUlyOmlV2L1mWTJTQiXOeWzh4rIMoVzi1KeXy2VRe+pkH5W9+8aadWVTj/rKxo85zCa6LQCGiQEgDVpHyKbi+4NMxveRp0WFM1dnjGYucoIF3FzqzERCR4K2+Wue3EtFYy1f/kU350OWp/OjdsgCoJgnFzb3g/EyRlRIhNHXBWQHOZ/CatgF9YeH3nH+p05Va5D0zCJT8s5pLgsaBoqmy003vpzEFFRy0SWGR9uGl8iEc2H3cydrrkRSaDxutKr9DESupeeVkRBJwPoYtwWB5IaQoGQyDAXQrkKMwBn4YgwkW9J/aMNdkVA9GJfx24mQ0GzykVJVPH9LcPtepjMnOGI5Bw847qokZYtSyxpgfuVzKc580N+Gvz1WLfzDL2QDw9vKGE6bs1EMMpcqiomA6fDMeYmHHOFGbbPjIcoNuVg7uJ6WSDQ0WB7UIXkspnstf/6KD8uibpib8RpsUrq2BvxGvA02gXWFknCwEmwGpoRWhMHEbz8QysxzxdHyiJbTwM1ndzCfwJbI6SPyJPRSaYud8bvhcwI/7Pom3g++MaUMv+D4XpGAzdGB2te54SbQaEDcdq7DsMfGsQQzB7QbHyFOHeXquBcZ042gOfJegvlO4H/fGo01GaQlr9+kUAYRC9+MbADARUBYS0urV4bdM5fhoKl/3hdXyyzZptk/GwE9hIm3cmEy3TaMiXRM5hx8RoliprR83tNO/vW8XoHhPzv+rDsJH3jiVT3/yXB485RWZhKaSUJpdYOFkZx858PhcgqyNzLHGjk9DsEFtXxtaTzquWnfEKDQOUNJhyjmmlTStvxd4eYCqPRci9XPPxxANpQo3HknGy5S5iXVEKrwBn3UBjGkpmijOrFYnjb5vGSBka1SN+WkloDxrFaTo6jyFSePFe6oqZxG499V3nZU2+igl1JlUobzHYXLjOfKUC5eZK4tYC5Iti2WunJfyJc/dlE965NT2/28xf4KFQQiCDszqGszNFoDYxe5dQ1gTDAak58p7H0wUyF4aiL4afqz/e+LHTeXkjJEiYRXzGxACgfIh30orEUpQDYdFfALiYuSmVSDDsb0uG5Fmh2PYRgzfUU+hiFGmI2AI0GZYTq7t7TTG+GNUwLi2Hw7A5WSnaJBQH6MabxujUUdFYZcN7SeTNouDJQJleMHa2whBA0viEkTTM7UcWrJ2s8HWh1wbA96VLOqMv2iuK99cNJDa6szh93w/fstHMCKTDekMvzMftCzaz/qszour9f+iZ1SH3shf6PPdsL8B/B4cUrJNSmnzVQwCIYMwTCm6EW5PAwdYUh7tucHUZvSBQ6kq9VpSXQnoQGYgRPwjMXhXv/5y9Dh2TMpdjKUnB2GqiTm3kwdCTC0yQ7USDek2tY2NN9YvtM09CC37YbH9+6jP+hUiW3jQndquG1W2CLIYK2Raa99tOmQImNgYDAFxaU0G9UJOgpurloaAEFeyCi46HBHIqaORIOFlS1n1PIPwdDJ0NkcjJ6PPcdkC9TVbmIlTPvkY9DBaI8cmrGrMXKyv11V9D79uLp/8SAFUPL/tUEhwnGibrHzKAAswhvoS3ieLOmo+IyOrXoWDBO5ji31qstUmCuVA1gvHLtIUJEPisDKUSuPh7nRJcGjxFjAErUziUQb4VpJeIIA2qhPTEjaErGyo3scpw3lrwnDGmnkhe5nj81k35NFh5WB3TAZqlICQAxyCrMSsXKFiSyxly4sCw+oyciRFsc8Dp1oopAZHng3amohrlprhHh1N5qU6ngEcy5X0UzBnHBn3LGYRMgZWDCEouqXwr96r8/+aGHPpcAnvhhyJPfNr9XFzMykiEp/0dFV+YeCxG1YEB2SsKmrM0frjKMDZ0r/9A9RfkQ5jLxS5D19CqGhk41N6sEfciCaWwg5ErzJrdM80hImy5yaa7NmOxGP6oWehaKop2StF5VmhoMdxWkgzKKsPktwZe9IQeRxtVmIo2OuDwWDqpPNCsPUSQZHaBlvNor3CiSvZ2to8xKuJQ8ExQbH6AXl1iRA018c+gHEH0KT6nRZxOBgChgYJjScJb2F6YOyoxdp6dlqM4cVr4m3L2lMIGk2Hzxd1YM1bzuaOwk+tPizxNIXTWyvvh0LFXDmp/9q2MP0AE2FMGUVZ09e4ESj+0yPkTrdr+Y+/tpTjjZZPW/oxqYXJvC2sGMErblaikpX9HqPDj7sGRCaFuQ9BlINwNLseuJBZlSd8SPVQOl1skTkqfsgS8NQ2NoyvxekH61v3MUq+BuTPQ+xyHoGV0xzMSA/m+pqg+nNoVwAcccFRpVzbFZgb7NCCs7o8RgzILXvZk653tQ6pooaZpEXBNJXnjkcYV5I+KSWd7BG0flpTELsYnu5GVVCZxsq1ARK6UpVlDrPeRqGAuq7//itrufdB8QFYG3mqsvbRBItSan9NKJwIpLl5goCy1OFlloS2VycLAqhujGuoaX+32ls0tahNEL9mTQUWp1XNBvyV9y5tZ6NlccddQIYWXuP1DfiXPe/Y2TdPRx0l2eIqnhcH0+vRBfAlb+2WQ7irtUC+I8dBO2+CycorKO0uRTwjPQottqplTQCftYhTsLKPw42oU40RMPwAYXqVfWt2y/0kqhr1X5sC8EPRcltTwaRd4bzWn96135xZQUShwZPnXVNHeSUrT0wExjEtOFLZNl4MR+nlYO14Q5Fe2LgAEWx/7+CglI9cXst/fJtY7SW/TS4OU2TZKkUSOe0z4ucynY0SLR1t9ALOUIgJ0HUzfojTW9TjtJTv/LeyDyBeMkEOENWVvSs2p7LTfOBUpwZ5ibFxcAKCrBBnq4V4jVdAMH9PBpt9YVSYgMGoWXze6xyF77zD3AMIPAuINmw086KpqitIQnE5ksPGymbJkeH9af+um1DJRZFZxwzB+59amMNanZFlc8btsPtCEmsaJUlwWrI3dG+SpWm2vo3Z3Pf9sDa1+V+v/HJX8A470VoU4HAt3/vv13Lf1YoIptLW0NgpNdQvaPuMR8GFNKcdhajGsfoYkgq9HiqW4FPztu0tX16G5a95AN/247vyax9Yyg0XJCcg6CZW/MFCxfZEtoAHfzBme5OE4tZjYDXugUx9qCwVrCnzzeoYi3kJ0xWoM58eUusN+UbCc0SqvUenb+dPcJyPSAY+6OYcYK612xwHkRI4/GxlhmuhdoQ7ES7FaJVoTIJsTIOIpMHrPeAqaAhMhnJiMonrar2fAgWuJGJLbFDxTGi2C2BnFFUrs66UhSAxNTnQHi1Y6g6/a3nbB3blZT+wa4JSt8uuc+W2j17bP18URf1blwWLz0D21Kv/4V79Xqusv+t77S/24G/fReDaO0u8h7K29F6dFXId/B/qQ7koc9fap2XtZM+/mtNRrX096uxrX3FefvD1S7npenkXWXDuXwfcQZydFEFSUmbdMA75Xj2Tz0KoejU70s015MzMQtAbI82im4hzGt/XugaAjFN4OUePWC9PcOQ9Rno+xQ3PGMVSxY0QNUnbHRIRbZANZ/FrtIB2ZwUc0hn9ndu+4YRS9zwFyzc9gPeYRq77Wf+lo7Pspq0/JdjH+mWNg4/BoX0K/d9e+AKKAmwLydzxDQam0RSNhRsKNyijtDkhvMZy0EcpV07m8sKnzuWv/MFNefpj+ppzm6gRfaf2Y570Hpef38nl7Cv3Ws8t5eS8lJ/5lbX8bz+5lF/5zboIqB58QtO59gp4JnAQ+amo/ICAvC6R8Ti3jdeyX8cjDnGaEPvi8N/zPabRk8yzNEWDC2vEvyjyWp+gGPeQPJaN1mZYRyssRz0wuUGehKe2c/gVG5SIAuC3eWBMdilJhgmT2No7kZmS7+odXiOso2EOEVtSmYfWdyTKlVuXCQ+CcRxGXSvZhYYo6RCPzSpO6c4nEOrWn9UhWDf/OD6Yy6d8wlye96RSPuFm2VAj98Z9CcScZCk9I9OFOzheU9uzP8jDRSoyxByis90KomVgwqbO17q4qZS3va+UX3znWn75vXUvg6Vcd0FQhr8BOukGr3BQBb41MxZGzGZlpFdhjSO/+KlOqItpad+zUPEZD0AlgxkYPiY08sM3irUP7cAbExrDJyY6pelBQpTdh9LYuzh+K5zkgxcAWdlUVNAq0GauoNtyYH8zWR8VRnvZhDY13ijhgt8qoBVfwZuKrCWtw2O5BLTQBNSJJA1bZdiNtAmIyVQYkBwu1zYy45ECs9VxNIDZ69rZXBW66iTbbdfy4MlUds1ppnaJMjeZpr5Tqz8THmHkQuFXKAxrh32JJ+iG1o5D/e0aziaoP+pmHxptansVHm3WcunIpycWaMiogfQL85PILluqNHlPCGzUxmDNGnP7UuARsrEQYN5OTuubmKRkFc3Lbp2RcmVzFvBitNiZ56w8umH+NescuSXNRLvlNnwchDwt7zZgSqcqk6LDM15O1Jp0LgCZ9CAtWHG30hr24JuPYSWyoiMhhOBKiaLl82B7uq5kcMm7KgJrXEPgEzkVpgEeY4Xht+h01lA3h7+IvUPKbrQ+seS637/07oZL4mQJ6i1wCpBPxDsG71jnWh9IwgY74tr7jf54mSxaaotlBmarVefDZN3q17YNGO0kPNxOh8GibZ+lvhpLYa1WmXdvxhN9DikLqbcc9WlkqO2pEEGqNUcVuV3vthUvyu4RZfGSZlRl9KFZrQdc0glY/B4537ynmfnI6KqScTlSxdcEnzNRYYx5zw3nTVaspkCSs5IUANjYoXYcBAhijqfSioXk2LPbDEftb1QY4LIcBzYNCcJRCrCPEZSSo49WMikyj/f6fba8bKukWZQySoZgMGQ+uJQj3lRbdao5BWm8fH7sVoHo06FDxkdIjPF5SmDOgN7geALi4vaj9UkaOIccY9DhS59TZhwkXRm0yyxSzOt3Go6VCCMWzmQMBshGPm7IwfSyHii84vBgsfoinb13MD7RqnLaYKdIk5FgGRpO4Dqt5IbVoyq578jBQR9JgUMxxBGLGpVPB07V+zX9Euw0WUhArFH4qLfGntXFy46VgqFsEr/YARo4MIhMN9BYEmra5BH9CZbG+ta3vFcN0djltkMxGk0gSFqRrAdHW5e4J4JoEPtr2lsLijTw9pHCD6GdKdM1HKBKijYLuoXF+nkClCILKtVGwMYTxyJDOtNmB19gHRwUhX9pcHoO0wiE7UU49sZxKM8QMoXpVmO9kSRoK1vyWyCs8nOsR8jHsrK3xH6aNnoQMbhuCuscbT/RybCLNmiDtrBl13MBWO+5jFFa4h6tVR9oC18om83GjPgrihPK9UxDtI79uRRssdbttUxGB2yVrW1mLWyWjSyQho+Mbu1pP1baI6eEBIw1ffsyW8lHziF9SO9bg40+3i8VGWRZ0qPoC3IgOMjGC6DqVzllOAbiRnylkyf5H7fZGkwIAnUanZxTvK1IDqPNYAIi8f406rYNUffnlEiMnlN6e7mwEUFkq5567EMTZEMUrazRcBpKpZPN9dEPKPBkzUVjxtZkn0VS6GBt1qVQrq4s8700XlpAo7XyXphtY2CA9hDztyiarNqUR0dEr7sCd3DT7S7Pa/OHlUS36yd7SODAQJMp7bHB5KgsbR5fY+uAkiBY3EOfL4YSXE5pI0/3KSBTytEE9248CyUlgKsKAd1qeFrrAsXI5i3BB0cjUHeONtxDDe5EbiGeYlrGEZH3SWFxv3EUWPPjEIrFtMusTN3VWNJW21HUbTwkRi6OUx8XtjTRnPt0RhxU7nOQJjlqdGfxCMoGndRZ3pCuHMaLyBd8G6QcV0aIFChU+tlUMZWBd32wvG31nZZKrvtguDD3q2/M+Qg05wVRpJn4lOegGjWLexu6f4CNLdLc5VgWbkxVACTjcdeYKP4YiGiZ40CRA5J0gtpuaPTWay1DHUrYZiqEXLJSsvfZICdcktNm6cw/VgrMpxwOau21o7a0EKhyK5NfEGrULcArcKhHgF/dypbgF49K2Wz0XD3ygltxYa5tdoT+JcXH90xhOzrJTqyYk8Fa1hmGrRPoUbcAr57/NiZl15KZLh1KFOAc40/CHD6EboRETjPjJHPgpqXKNKW0cSW926tfElny6Fu5FtlBlMWVVp5KTqCuRVec6wP5LPTG/JX6T8pMZl7xGHpzhtpv+WI7b2cjg9729tcE0n0sMYkvIjDQnJWlXHMnIM3ZgtbK/TQV5QNmmXUE25wJNDZP8f0QEaSEIxDS+4L3HSKJtsShEIPUXiYGBJ00GPeRELBbZNMOMT5oDBbCllU4lnLf1alcOJzL5zxtU17w5Kk86ZGl3Hi8Pztkz+VhV7Kv1a4RDbmAURn76mbrWv82oFyzA9epvO+jS3nt27bl3/7SWj58eS3XX5TMRRtn0yI0JuFWmrK5mVKUhHlqfA7e9OxojqtA9GqYvui14BF3nontcl5dTa9zrh9pRRIYvyvcwpcCAklK2lAiCEQ0Mf4jg+aKLObfILTussMKyZeLd/w14BVLqmrbgucHmMG0HbyLayg0x4pwzYQuWjcfMRZEakBuC5WJUEZ4xBhl3bvktPsY9k2eXRtJ7qfnVEs3XdPXw30/8GApz3vypnz1F87luZ84j/u795PNSL63rxxYedrT1X4/FBWQoeC+ukt5628u5WWvOC+v//W13Hx9XQmoKEY3OkULPd7NQjOoJcTuqYudZnIZ64GrPhbG2Seawg6Js7L85tyPicoPh9vETMNsObCHJDz1lpFKtJT3Eq0ZfVm+jbffrHTIpYmnPXWjRrskdwBNN2i1abTK5nTbN1wVG54UgDF9gDFeNGtY62jIuiK93VNYH0iQygY2htzIgMdpxpAM8qAEOGKSiPdpHw2zIuoRQPs+l3J0MJUHr5Ty0s/alL/xBZtyONctwLFzLvb6T0VzXxmy74N4hO4C3Esw1vEkv6BMm/a27ywBrI21Ta2VCljN/79yOpX/x/duy8+/bVtuvIRwa2+lxA/gUyyx8EmYeJrHEMSs2h6Bp8QaJl/XrWS8Al9lW766AQrKLPzr90NxWXfa2gL21uhvagvQEmidQ7QRzcjV0cEko0/n1NR2RdRD1BA/hUBdDo1JPxSiBUtqrmFlAHiTY5fhSRWiVQdSrNiZdyAknKjh7gI7RooF8hqkSJrQScJy0pdBczQeEeU69KuK90evlPLln70pX/dFBw0JVOFvW4Br9mItp363/+o5gXUlne7F3vbV0+flmj6vPhH+b1PDNXxNbb2szOPreE6yEWWjSb1mz8ayatvbCcX636a1y++fnpe23v/lt2/K9Remcr7U9x2qdspFJVO2xnZ863v3cXIV/Wfj35Nf2CKmSfHoscEZcJU/V/k1wfA1/bXv5HuJaoyeC83wzUihMLIzs7fNFDXrPt7QvfYqv2FhYzI/e5CwIA3hP7OOCfkqIQbwJ+rRiPXsgd66u9MpaBFvET8MHQzB26vRx3DHnrAR7pnDY9qJDQji8aXa7iocVfif/KhS/urnbfQwyLovnmpzU+5uUdBKC6V5zhTRLltG7lDqYY53w4NuzsC4U7I1ov03UHvk5ATqg9auSKeuCHzsw6fyxZ82tUVBlWlC+aPjqaGw7Rjt2Owsvt51t778ROa/gBimgZXmIU2WjzfQnFoT9fBOfVH+UCwPUaOssLQ4kRM+ZNUtPPfNFFBgd4+bJ2+IVuV8FMcrSFEah47I4TdLzcxWMdDJXk4x5Qx9uNnKYEI3VMNOC73SzoknlzHN63NIsl2z7LnYtraF0+DTHPkdWugyKfwOSaPZNtZfYGB943Q3l6980UHbCqvBKGWQucWjPfU0MBO6muLH9qF3WJFgfGrZez+WNKSaBYedED/WKRuXm0gQ6GXOJAiwVvFZT9mU4xrZ0GegFN26DcrFj07yY5TJ0kFaAwJkDMvHZRgHyifTNQmiz7h0jHgt1+rJIIJ4nSdDVfoMkr1s6qR1yZ4SSTen9nl784TEp1ay9D3tpBSMMyV2MWnIP2Xt5U84+0A601w5San66VEhi4GaCqKxdUNyCMIlvPGmeohJ+apgxISfYJzYD4DBZeWTvKZR00dnHkcdiBadNoaw2tp2M1naxllW+j3z8XN58VPnttZf8t1TVh9oZ/RK80I8z++ZlfGz69iqdUyfwYvFrvvHGsMQY4b2crsSk/E41DY9+ua5XDiSfQNCMxLK8sYRyuNxS6YLc3vAUhZm67udgkMmXtmsE/qgWbwPeM/Xl5QOUfh1XuDGz/BZElqOKRJSHKCHCair987iUszfu5YQK83tQ4NCKNen8aGd5Kg32dbn7PAa/rBS5I7nZ0BrIa6H89pghgQd9KBCebP12qYYG0/jZq/GxvlfIzTVk31lXpgzFjqedE6CIApHtX/11sl2Ks99Ug37YUESrRo02GhECY3vSGLM3uFU4n7tpwkkluJZEd7mrCM4JszPhMMxBiQmJRTaX30d51JuneO7IcDiJbJmpBlEATOzxlWMnEPAdVnb7ZrQdMCO+j6YItG+W9G7B61MSd7zOQrILaD5ve3wxutKUu6GjJ9XxoqMBZbb0gXXDAARc1sWoFcqOFEa5ctLSJmxXNvJQElAci5OVoSAiLxwx+y4WUCQQOP44dSSXIHrR3yHddeuxPFi5sdTDF/sN+0zOBgoaolLGjdRzI8nMRU57+8xN7siGeZ/O6GsUotrG7zGTjnUB6KBpQe3+YV2CXvCWRZPlOC8XLn7yHFFvrlmXj2WKCKC7HssvO+jdUcgzSJ0fkpWLzSJlsSSCyyFAS1xZqQKFQnZd1q+CxkILcc/sZBodXnNw7SfXIZOtVJHSg4rRAci1BdIqkgY5bB1li8m97ZGhHxWWYkEER24JIf9JeWXDZv+nJ0J2ewn+JE/yOZC2KH9B6KA/i7k2BqO7H6oTzYHwVZhedUXBVTYiFkZuiEda1Sy5u6TGsdHE2WTCo8Kq7bv8EDWxXM3WFNGSxM0VVdlSIIxck17oXhe6xYUtlVFLwNKW0Zx8sSxVsx0MDJMZWkbHJbyS/95aclAkuaslnCA4KzdmCYG0NInW3NyizWbnKjctBAN4pkmlRMW7dCaCuYxGea5swahdabkKH2cl1DjfEqg30bfxBdhapcUbaOlyxNQJsZM/DaMrEBHWn/CQ2mmMjkwgNSsf0Kk+s1XZrDwJBoEkJp4muw8jRSBCmwtQxl/077VVniSoBcjXLOMoSKCYsaIFO5h4Ui1umJ0tSu0SnNzshx1Z5/7rhB/kAKVqpx4ZmUyy6d2Gf3rXnwdbdCvpBi4HlJyiapKG7I+5sSiZ7MiozYKelvLydlSfuqX1nLdMcbVIwXurAEf0JQA0xC7QzIyaC941d9jZR/70O4PkIiTRhk9QVqcJ7gys+pfscSRHuxvZxLB+Rv0Fw23tA1puFpf0HU8DYosbUZOaeFWnPEEcxuNh5XJOSBY4BWZzhZfZsdhUB5eXufngYTCcWbNgWDVzTFjq4g6rtVBGNk4wgffh4Cp2jOtD4BhqjBatioqpfc3VtX5LE3nk5VUGtXc6Xkqb3wXWWWChmGuHfg7uGoJKYXhCysZ7b2sP4xJksnN1p+ehdPLaVHDXsEWdcoDv3Y7OfrrX75+LW9+z9pOQGpOQPVUu5IhYbWinFnCHJgnuAlngQ6uv4fRc98glBQjWI4dfpFR8YCP39ST0d41NKZGBdNLVM1yAfqzkTSrbsUOUhtlgAgtYRMVe4OMJm0UQ2Unk0MO+rRILzwr33xtUnKMcNuCzkAfhgls3JQoDI10rZ/YQ7rPvbbASBA+5HUzRsyWncMbfataHXmQWLAdelB5ngmJWupCmYuHa/mPb11aauzBZinbrZfbCSA0DaMREFH/duGrIPBRkXU9s3cHI4GlrVQd0yyuyad2YGzqmYfL2qY87753Lf/glXULcBV+6htCYsz5vhpRoa/ygnWFdpQaTWr6GW60RpJ8Zh0lRZdnW0Qfy26NSLaYNHEL9Hsc/qC0zbIaAolTG+ZYdwUNMjKta1pBQghyj9AOIwUyBghd2iDCqELwWnF5RcPazjONhaFK4shOoet3/ilMNFtSBnckpiywevQOsBhkWyRhxEhioERzaKEmrUqUOGt717CjmDHSMKz/2exoH6oSuHK2lG/8oV35yOWpHB0tbfFMfdOTY8iCJecWA6juHhiFLAE/21C3jm3b717vYfkp12scC5RCTCrLQqe+/LpleV0RqNuEHx5M5Z0fXMtf+N5tO/nouMJ/zMM1/6HR3PbSS0PLDNnZY88f6EhNoa2AK+1iXPnGQIDTes1iaoEecnaNugaJZB+Wl+vtioqoS9vhqDEjh6xs8D49B0frtNf/43yMOoxnoIHtCD8YUjigyVlCf9pTt71M1wJQu8Xp4fPhGIoBcfywSVZMId8+jKlwr825GUdBaMMutREuWTu8AWHAAuMBbdD23fs+QSN2oS/PFgFd4Ez8yOW5POeJB+V//fKpPPaWnKSzzxYEbsoUHbQqv5+/53c6URo8dw0KGNyT/rzynrV864/uym9+eFeuvyhnAPgU0GP3KCZb8wx4PBxI+e0DdHOtXoTnqOmSj8Fh1a53rtwTTSYYHkikNo6VldSHdtM2dty4hF7AU9wAd8IxMou80I84hfSs3NSxgQy4JkUWalZebTXgVQMGVjCtvBuNRhjcNEBctwmUQUInkigYVwpdKmdHClh0rvUanxEXdUWErUqIRXigSC2awpPnznZTefQtNUV2Uz77KVN57M11PUANFeqUpPoWrtFEJstDEms4gTrlmlRMJPeeyvUxZP7W70spH3pwLXe/q5R//eZS3vDrSzmYl7au4HxLc2JTyNna5UZw49IKrzQ+IzWYaYTfnX+K+uKh4SQZQcEnIk36u30nSUqNGm9Jr2hqsGYgRG2s3VmteAkGOczpp3KR5tse1ycym1uJ5xCxJVJ9HIfpWbYteHwny49rnrShA0H+KKzjUfVtuGnfMl7ySC92oY4sLaDqyPmlK2MDo2bUQHPo6puIMX3aDow8n/7aVI4OBXXV7b8PD0t52MWpbIosma1bgdczAlqkKQERq9Xa5VpJEB1v++XdKd0Blslw8/73KpT18I76qQt4pB0tsOchPj2BCLHsB06m8pEHq59mLTdeBMmJKa0DjoraX+NREr40NlGxop2OPgds2H/CGKkBURpbUhYUjtEyR1AMjpRQN1Atmt7VTR2l7chdnjCHj9LTWe892i/ugcAaDaUPViRSH4eBbrSHw6o0pTjgeW8/AEQeMCgaRb89PkpvYy2A+SOwQmoAjVLmmBA0hlc4P5350I+P4GkCW3PPOjP+QGoyllrqykcJk5MC8gZqM3VjT+17XSRTv99wvJbtdi0fuU8EqeXbaDlYAhu0NpUbyRynNPzb6Jh5JLKaFxksIT3fDvKjpd6GVISRN5u67l+PE2vbm0eai5HysQvIQwbBVbgJFGe8s6c8KX1aupqF0uWaZ+3OdxjnDiLQ38i6vGbDWwIh54lCtPpOT0mI0nYTsoWBNHRCFtyTsAK0M0Vi/QuG1lFykxVKOPIt9rylUam5V8T3T/B8gwO3GbTDTsI5YdMF08D6Wx8b6B4vgRtpTgwlGeaE6r0Lgw8a2d7v7JAkwbLRtV47dCdrJeMbCQCtbddSu5ybMV1x5YDtvtrcuBJzI1lybct7Y2ymY9S+zgMDQeUhdSQ3oC8GnRWKv4D3DfryrruW5+9VNEcgYtfYrbBOaUZRjgEac55WjmGUpdOobl8DQmbZ+RoOGrUx7GnkeQGsLFxZBZY2tLWaYMh4p7Ig0MbrbLQY0nMdKh/YOg0lYkpsdfqUBC7ujFTYn+FVeWiP9ZHIGX7wOLEZc3mEuByYYNODWZBt0FKHqaU6nw/NDU9Ff4C3BOIkdVQsJxYqlz+MR3JThjH0VJ9tWOrnzHFbQ/wVGlbflaJ0mBCVAGwjpms7J6EUDbLaMw5VHOWY8h3Kt9ZPeRBhUD124XfjYpVgLdAXq9Ud6mA2i0PTlDi3awirm5KIgmZwmvPp07i5wcaFQf+Zt+L6rDG9DGU6uxI2cq95oed5n4JwKlQsmw03A7WA+AYNBXoJ2is40fM2JBGHGrHSx9GMmxImZQAtdkiKK9TZLDK00ED2oCWt3ZqAELynIaOYIJERKSXhW40OncwkWd1evu/Vxx3nHylrUBsf0xuwl6BPRxhAWV+sp/53ZP04oaXuAjTV5cCab+/EQtWU4IRYpX7nboxQVCAaMVVLyQXrMAN79wm8qM8BmR9I4QbygjPQMgW1kLppCRb+aIcsn8Paz6gQvdDNYHBD/4NSyJQPqMDi5UnKwWchTJjpxALXF2k8R97PlUQO+fvyGqHAYCCZD5HiSzRA7rUiAInC0fQuTZ3MtqpR6PqF1ZwxihiiCG0csnyFnCdKttPK6v22K7Dv3eMbckoBSCZA/rSTKehAglD1Mo4OC1hjMJd0LUg7+Kjn3Kwr0INyNM+lbUhwDDXTnutpfxXC46LpG9dcpk3JOnSe4zqHhlCQ0EGmWWtL0lPMceg+7RxCYtQR+EFjglVLJsrozyySUUPME5CNPTR/oR5fDqXBTtpKIxxsSmFaG/d2vzo9Kddd8xQ8MTWl41oOAYQhe+fxHNacuG8m20cnAfMkQ4wocHYH0H7iqS8SLaxhWmf0xLOQmgM8KDW1tHlLuVZEl43AgaYxEiQLb4ovGDpvb3Azsb+Mpw1UaTsXgNKqgh8gxP/hLBvZKXL2+DjAaUdMR4SygYfopngpfzJB+FDIDI65CNP0ZHFZwLUwGUaDwg7hMK1xtbe2kFhNlrl8LuG+tk5GBxbzadAXHvvs/R+3NveU2pnAkYM9f974d29Mvp4toB5/vXi4mdoGH0cHzqx1iwhP6nGnlkxzmKGVHlrN2XYqZ9u1hQt3ZW0p09cfT+VoIxmFzuCYPqX5riHG6CBDmnhwVbNPwwpwM8qqwfbfo/INlUyCXlgAOQcGhA0Y0ZQDD0ZfB1t4xU3Wdk9eo+B3AnldWDz4KJifjCA+Faf+dcoEikjp0hCAsx+v8Q6q3uciOUfACg1c3hGx++DxYQtRBAmn3VNNR0zIbWHhF6XFCs1DfO17oiZbe1vhpTdrGK1uAPKhB9ZydDiXp3x8KU959EF5+A0RzEBIWMu3CIMyff2NWcISts5CdEJZly0+jwYJR6A/hMr2OnDPb/3Iib6y778sM5bY/rs+UOP+u/Lg6Vpualt/u28ADsMoUlJ13eOwfvvIg2u5eDSVZzx+Kk96xFwuHU/l8tlSfvPetbz1N9e2cKruKXgOxZPWNBZSTh0DOPeHO7bylG+zVCRrA+61iBCZ3jW8M+B/mG7Em/Ryy6ak1NqgGAAKcnTcwrBad4arnXGM4x5BlPdFlomrauOFREYGT24KdK2bvko/UKQ7ydyCOwu4YPocMSsCa2DWIaOLexQDBB7zND+qW9MtbeAwj8vWLjuvnPUCXUzj67QlWChHQNW7f3I6ta3Avuz5U3npC6byKY+eyvEhbwM++gzgzO/rp29P9fq/6T1L+Qc/tS2vestSbrjoyK1+ZNyF+ZuTVjcevXou1vPLnjeV258/l2c9VhYNcT2//sGlfNdP7coPv35XLl3EeFZie/So+U8YxWHwrX6Pt5vitvDtqI/x6GxW4sIz0VquBvkZufq7OBTENyJg5ezX2aq61XcgFZYtN/oquuQZBOm9PGqmW5xQ1D7syK2+rWQgONXNSKBfpmd944karZje6LCDnDY8RTLrzZo2ahdOYXSFSnFJpjuVmXcLtxwAhOcYOdR7c/Vl+v57tlKM4voM+6x/1jT1IyQGqJ+aD3++K+UxN8/l67/4oHzGE+uNpa2SExi7X8BjXnqosPvEyPNDURzxmU4P622b59pN2TbGu7qWTcPxU/n2Hz0v/+CV5+XWGystZtWvCmB1c5K6HPqBq6XcfONcvuXL5vK5T6n7Cq9tzwDbxw47Fqt1+Jp/sS3//Od35dYb6zoDt6zmHTGecs7lqV0MlynvmCGI6b9GR7PodAR9Fp5Cz3qhJIhp9Oi4cymdA7o0EOEd5AlEM9/xBisI8Dul7KKoiLqJjwf5IW6wo2/AwppTnQJYllpMTZSlnoCjJMysrZRoQZCNs0irkxLofdWRe4faz77nPIVCqXbYecjhE1YRBjGhZBNF3rFOgpC1rJrl97hb5/LdX3FQHnOTJP+0BbXNCcgtS3NXXRwUQt5afnAsRgxpD0Fhxew2Ijw7pbS9InD6SDTGzrgJldXr1adR6/maP3JQ3n7vWl51z1Juuk6mPIXGtAKe7W4un/yYufyvX74pj79lLWfnO9vevK0ua85AqaT6SOp73/glc3n9u5by/vtK20qtXd8zxsKsyc0c5vtMDIfTSaMbk5rXig77YEQ7AW3YwaDO92JwyIEWltZqxCB1Iiw20ymns0V2YsZu5VRjV2kqk8ngMsIhsWO/u0ORbGi1jW2ZPPON87RM2ixGzIUZQRK0CeTF8dUe/rJBhuakMFWkxH4tipVo/oiSyY6ZIsgU0i8VDZj2irDIpxNSVmXkmkZbq3757XN5zE1ydl7d/nujp9EKWYgNiBHhRe8tArQ6j2PuMHjYNW7nJafG52rYWQetTBgtvFsfqB58fL72iw7LLdfNzVfQHjMCrm1L8JuuK+XvNeGf5CyESg87mTiOd/1dMwqvv1DK7c/dNCSFFYRAne1f9M3yLWJr/a9eH4Ijt6yBvIR7TSjwmeWCwWHwiGuQgBoSsA/3DQskYbIng6PQ34kyl50GozyM2HkrdgA0uTiOwEkfcTBINqh7KuJ2iWUdMCQ0rVIa+QJMT3lIBagjbiYR9wJlOrLQbtgAauOM8qzxWJtKO2koKf6NZytjX91O5c+/aNPmt2fn1eONeDvWKbAaytBEf9n6+ZDHONysZBwKk9K7qUSmqfXDnYoo0zYq4Y1bQnKMiEEV+ic+opRnPX4ql09zMvxU7j8p5S/+gU153C0VCVVlqFbNFKu0VJhPRqdOL+ohap/6CXNbGyGKRSmxjvceDOvmcxcR20ZcH5p4TI6ohMnaGBdNrjoyHHQUAicb+cISeTDd8UZGlQGHoylJykVhXJLUT1hH0IW/CRWYDr0G3fyHr1loCmDPO+058XZGb73Q3KEVNy6yMDt3iKBJcCz0aCOStC8UihIJBHAriWw8ZKMhYyKOqOQayFvcFkcInvBycraWR940lZc+f1PWddZ5sj6/DgTLO019QxMon4KSYqCmg8WGZOA6dIEd4RJH05hFD7ewJCNY0+BbiB+QiAxw++/Jj6yhO6WS5ik8eFrKUz9hU/7QbXOb2lR/X1yerXQkGoCe9dKlQ0kpriHBOP48Gt59Tpxi1ZmnbzooQq9OevRtBkQ2Vi6hQQwRebLvSndTxOpAYb+0WdqkVW1MY/8MrWZ+oaQ852+uq8NxxNN5ZAlJpTYxq8mmoLnNxoRxIYNLTb9hBkMdQ412R67kQyEh0E68jAQiR9HQdFlkXhZxMxQG8BATJEAif7Z+qqzdd1LK0x87lVtvEOuE/d+M4/PUpvO0uNaHknAdRwn4VKYLFOVUaMvaIh5DYhFOwtpyFiPQl+0HiDu8u23ov0dBbrhIShhHhO3m8oefNZXD2UOJLFTtzeyFouF88GxqkQMaGOs7lIDF/G3log/kMFxMSM6EMrFQ6qk3i5+ZUBPMrXKlKiukydWnluZUdFqGMcCUOCuChA7QBu4Ty4D4Gvp1MbFDvhAviz8esg1qbMx7WRdXUXdvoJGDYEXN3H5pZlwmfnARUpYMW51AKIujUsqmvo4/QQgY3tEXC+fxvTjqHVGRvFPfrHPXJ90qC5BklaBDZ2fe9OEsIM2B5wqAMoZbd4/ayJh0UF/eW4+VkDv8BgwSSWoXASevnEZDWqP0N103lRc8SXed18NQRnjTVJBOeWqYscb5685Cp1ukoyczHbLUokRDoLNiH7JsRgAZSaLXbMGL9ztSRZGdbhwMS2xold1JHNFAg3nKh/6Qf4Ob7M3zw3U70nL/qC+s0I32quG8HDqcx4oTfo5b2QDqB01O2jEYJXf8GMrtvVFopk4XcrZanE4EXZFi++aljarJzDl8NxD/OCdHbHkwzrEW+16z4x55A7K00i66MDUs8EyvQaiRn5P1AoP68S55kYNZy7szscAHhegdHagpbyoQkkF1EYa3vFcy/OB5qNGAR9wwlU+4WfIeMFa8PXZHRSJJLff171xaBEDCibZZgyIHftwnedZ/FcYucJKNDC18srvEBmMrOJGgUAhQ/RocYIjbz6W4W/ch5WMzpcxHfX+QzBP6yI0gBGNTPu4vvul1z+qE0RMaQBy6PWskr8HjxpZjb9YEDhxobmK0RBCEWFpYRyNXOCQkNDkcaRRaE9cBQPRtjzt0JQq3DbRBYzxAyeqdUBMB2ym5sh6enVrRiTftGUFWXDIIfoYhzXaz+cJqyNwWLVNkpU4FEnSyuSyZiDTV6roYmMk1cvVzvPODS3nt25dyoaUHK/5fSznarO0/QP2QJzkQBNlfQcp8xwfm8vNvrxuMyLWIFH0ckKlnYJzCWQyXxS/FCi55fHNzktzHnXdL2FoMFgqHgcSRcPRmoCHUBfqztXdeG8mIl6zSlaY+oCVHSmDQAMKgBEIgP/klzDcGZKVj3w4HDUTTh2XjSJ+qtqignrrptHYHhLSL5qksNAO0bso9yUIMWHlapQyaC6hWoIzCJ7MSUzgFSRG40mhXO5guxK7z3F/+DawwhNWK1i4OX/9B37uwH7Ib7UEMSkIZ/Avt3AMesNEnejKaGTKSwIOgW9vGbJrKD/zCUj784NI8/HXuU8s5OJjK6XlN8dVewakJCJoPRKGG1Wb//X+3LR+5LMeKg/ECkzMf0HjAIWtKwHS4o6TeplNZUJqQSVKawZm40FK7ZH4RXCbbGvL0mZzu12Fmd0fxPuH3ZeHuWF0pnwKGELXbuRfBXx6jZaBMnGpzUp887+xk8+7IPhhkdIrtIAiYNRYE0z3SgyGi/JYI6VyzO5xEDbRSyxxlDmfMEIbW4SfgPEFGetIJJXP+OgV49a9UYZCz7qMnNQLWh/LpnK3BgbhHh3AXstOke57y0hKj+Z4FJEVURl0TUMOeb3//Uu56zVJuuU52B26CvbRdY8qHL6/lHR+U6qt/xIRxz0EvNYpQlcj/5zVL+ZHX78r1F6pfZUm7HXcmgbqOFXXjBS2hNrb+5DcA1GLE5TrQE3ScpGz1xzy7h/ho9B40BAQb345Lz9k5KBrL96xIFpTTgKlJIYOWxiYYIEQ7tdgwBTBBUs3Jttgp5dgj0F1dCi74pHD0t23fBTrrApEgs8TgsKAyT6WH0FM6K641WVedmQrRnrL2c22tbR4IVH3mwmEpv/nRpXzfz+5k2eziuy6bV58E1OenEdZ42ijN1T4WR3tLHM9c43hw1897GFOtYHhYPTNVUOve/++/by1/7Z8v5XSpyk88X6Bb9SZfPVnK9/9cdQeKYqjfIrMLapJMSdkP8cffuCvf8iPbdp4AHyLElssHjIJZ0x6eBEcm+nFUx/d7oFlROhZb5bGYI5OVmPlf+HRoyd03NNs5+SkPIjVOlE+tB5jaR9WOfI/y6bjajF3kJ/hsXOB99M0FFSJ1BEvSO2FPwPq8ZAbJJpmtenM0YL8AWixCGmyYy15DpgQVzV+Bx/S+wzUnIs/3W3288oqXSrqbmIhJudQhvVsWorRvPNcKjjtp625ay8NvmMr3//xSHv9xS/my52h7FjkbQJhhKrtdEwXTyIEsaik7eecBHQIkFFSxeZ9i1NExfx9+CNPpGonKf0cHU3P6/dV/dl7e9YGl3HipJvnooaRaaHUCHh+s5cdfvy23fcJB+fMvVoUeDk4tLVFqs5Glwf/Hq5byXT+9LYfz0pJkhEpG4QTQMjoC38pDnl4rz9V2O+uNkuApWYyMWYDuaiwmRJ1MEWidbImgBFA+A5Z+7hn4E78wbgGpE9owSG/KLCdixWFkmTG/BBrY/k+IgyAQqGj0uO0brtKKWXTESvYS/K0+zNkPoWpNvVMFxqGFp8laD6hOo43vCpwJF6ftkQG6RRaWKKHwHzvI2sAwhpEPdHVl3LoY6OrpVL7wmXP5sy/clE9+5LjHsYR90vix7u/77KvvWs9c6x1Zp1BDcz/yhgrTd+XBq0u5eLSI8LuJtPbWr/Vo8Mtnc/nzL96UP/eiTXnkDbHUex9cy8/+amlI4e53LeX6iwLxLIxqwwAFTe0zGYp5J+CVEEq/FhlsapjQZl4i56roY6Ov9k90xNnmHoy+rK59ZaJocm5TdaKr+gKGC4ei3dIxQpIT7WkRQVpP29tsW3AsaKn/1lNgeQ4RCwF8Agqw5cR5gcpgIK0hcZ2Tt44rZGKgjABjEqTlkFgK00HY7ZYBQrUExFyop60J0BvVF/Cw6zbltidM5YkfJxax0QjHq1IsmPcU8FxOh8xQg2j+YBYSBKUqoloWGJajIKz/sGrafVqscHxb8AevlvL2D0zll9+7lPuvLs0736IeLfEly4m3Dv062dYFUpvylEdP5aZLdROQenT4VN79obX8xofrWQKlXDxeW+4/90tW7pHSh1UCrOYpI1k3Dwc+lI93IIwxXTPk1z78lELrCn5pZzf+ADnapp8BdychA3JOKM+gvl70HbT0k53dudyB4QpgMIWLcwEIeTYex3Jgf8QFkacH0k9vGOY2cT94f8d2fOG8Dryu/7iVd8EWODTIPjRZZ5zNhSKLisaCdl8Jgq4rzjr28H+8140hauqrzHFPtrNsma0+AbFObnViYua1kAK3vxtCgp7RUrkljFY0ADzbWAQjI0yIg5rr1ZrKe+GwOv9kiS7oEWLOJKRiTSR6Uef39UzEK2dTS5mutKjXrrtQyvGhDE31LbBmg1PP+YsYGEux9Z7IXl7SxqIa6STvs+qmKIXpE4fZQqI4pQw1QAlwGJpjkoS/jcdsuuI82jJIyYHMdilP+7oEMX2QFaBn/rWVG0OlaKPO4NrKV6cb1XXADTLtG0pj6OGOBo7nB+WEhCB0IjknJBlC56EkmJJ70G89DaaUppDDiOY+oS5mLP3XroBmqmB4J1jssBICxIRk6tZfVVPX47EhXtGSsC+FdzzI2pxjwsyRWpbpBI/HIKcxpx5Y/UHDIkzFbfP7TLLap50eHOJCEAU3Nl+YebuVG9cdLeVSFXh69nzn2he7KFtXKYakRj9EbQzh4An4d4jPnCfIMCB2T/ME3tDEF0hpOcm+lJA3KnsfCquRJ55QCI4ha09gExCaFkR/Eg2Bdqc3CbTBjvUNdXFuBCIjUDa9pY/98vdtM5agHOuOQKzcmFjJy+spiu7M8/32Imw2mplmR9zR5yQ2twtZGP2GIMJcuuOJ9qrtIGM9tMmTEdf4gDQ1K+/GC7aRKSYHTmQXaQwO9kOIa9mDl5Wcil4eozb+7a4mr0l91xxizEiGtqu29yi7K3JCVMKBNtx2Jpg5XH08u9h1c+lQ+q45VOIcX1YXEjpiIdXnoThomPQEIxY4Usp0ZkNQcsGqxe3eYP2Yn+QaoUVtiCvaqOJ9cGVu0C++gepIwcMwjVCF0RBB9D5NSlPLTbDcEc9XiMqQVSF3DEqep9shUcGjV/q2xyEgHMnDhyoQ/sHbfJ1Xc/FNUjiuKFQphLCYamfkIQTyqkrENkqBHynkB34RrZsHXIczywilF6MtnjBimoraqD1mB4wRk8NPuSKpPDTdLJJbf99lmLEFbaVt+RW6ClPhpkYlw7uAgVZSWBNOW73BanWHwI4tC56ljidjQVloUKoWpwV3+ypB+08ZU4Q/KrS4KUrM/bCAdlKAEddgcEl5g3lWfZ+yA5Fsw5YI5qFTtrSQiJEQ6G9t0DBgXgkJZugtOU3Jgua2UYgzAF71PIiKkIWn1+quwBjWQD8nqulAgoK8FLbTNoPv7GAz7cZaGXMbUxKDUBeFNsi9QNDS/QKs1QGluUqKCxipkUkFvMArF2uKLsm/a3ObBrGF6o1mK1HDanHmiVOEOGZLO9kSLd35qW23/f2p7hribHN5bUeLeDBCg2Az0gEmoSkdVhLStNDOTqxHn7W8AhUYHQw873qBfDosn/BZJCNjtDChFJGSIh3F2AjNjDiXtujIsuhAL13K7KxIKCUo8NXDxQlhueKLzsNoJx3B5W28fNedqKJMHwYj5TIldZATEW8ASVphuE7SSg5k4zmb9pIta7sCc0tIGMVzrkRQN603khWyM1DUUj66gIkgcN7mygU/ztWoPxE0E6Tx/AOILutowgdJA3r1/q+Jp1rLyo/Vk11hv5+nIQLq4SlWHA3I6QgwIiJRwyYpTCaag3kOBFua+tsPL40cINl6sf9unXOeRZ7gBDYKawhIWdn0C1STttXZUN0NqG793XIn+LZZeAwyx7h5pHTjGDeHYfRAD+ELoV07c0B9F5XmbW+CjeRncIjNdTPzG9W+etjN97eUmVZ9t+Y/1N2M21EQ89K2Ua85CG1fw8Dj2NLF7Q7nLvRTBuopaELjY2RkB2+HatE5IBkqlKfJpMk5+oUXDsKoYEDIeccsAuEDgXm8A1MhroM2gXFTIhIpYP3Ngx9LJx0bNSlgfyuTYqHhAdIkbkMDvzn9JJnl6mkpD1yRLLlbrp/KpQvIe1dGtMVJIgjCOLNteWXrw7WjvlPSgBFG8zraYbZ+PAuRR0QuGPjQ+F8YYhsSOrgD97UvMZ4cCGvWEihG5vZV2IVnrp6t5YETOU2gbv+9xbNcB9od2MzHV5QUIhpRMaHtdUyunEzlwZO1XDgqbbOW6y5O5crVXctirJGIdppxTTpqzt5ohXn82YrbRwWlnmdwcj61ftUU6BrZuHS9NPz+y0u5fFLK9RfrCVCiCHz3IpUPIA25RIaydB+AHYy06SduUrum8ojolYlX7wj09GH8RlSkzxOtTx64NiTLoC2RAzj2VMKhA1O3JE17mF24ACfUOnHcodhra2cStwKGTrRuCxGZO5bFAAoIHlBYl9jsFvOfKpOV8pRHzuXFnzKXT3/SVB5389yOAmdtPhayfCMT3EU2kIghdGJMZoCu2KwUyPJKtMXRz2jwmY51xWKcGmGsiXzper1Vtw57y3/elR//xV35mV9e2zHpNSMQMfWg5EMvgq0LeRGsEOt+hTWkeP/lUp7yqKl83jM35TOePJXH3TKX48Mahjwov/qbS/mh1+3KT9+zNoUtJx7paPXzMQe9kxuT2vuKYD58uZRPetRcvvCZU3n+E6fy6JtF+dcU5/fdt5RX/tKu/IufX8rVrayQbAfDAtVx0poOaJe3kgbN2C+C4oDTQDMxJtHpjamO5xxEYwLlajUSo7W6ayZgDEz23DKSJcIp3oPRc5lx6JrlASRA3u9SBCbh4gdcSQwsegDWlEN7McMN16rwn+3qyrdN+Yv//Vxe+vy5XGxCnwdvr2aL+HcwhNd+57d6D/djP+Lvh/rhNmY08rHK8r790C9syx0/WM9MX1oGJS/zNYVNIb04JeASxVFcFcnVswrvZUz+5Avmct3R/jb9xN1r+aYf3JZd89bDakId7h+FzVzK2XmdZM3lf/rcg/IVnz2VGy80SKVP8BbLpfziO5fyF//xUh442cmpSmHkmS9J0Zli46JcY+/rVfSxkREzfw3xc+ikhyp5DFgBt/FoCgDVdy72tjFcHOouLMQxRCon4MpsN+OQBLSWzhmEjompGr5dNqdkyvPTQG/qd96Yke5V4a/x64sX6nbXh03z1wKr1rdMv1TWQ5INfS5sW5X0AyeAQI8ypDQLkuBrKCx2OY3PoO3XaGvo01CfJAum5ws2ODkv5SfftJa/9s+2La24zZUTHHcrRI4rikuDZWoCzWndhfj6qfzdlx6W5z5BrtfzGBS/EeAUGh4ezOX//Pe78q0/clZuuU7n6mgkh96oX/Nctzav04m5/M8vPdBdjyS7sa2XsKXDWOxUpyBT+elfXstf/kfn5cKx8p5vn2zKTqqiJCeG4YHfITY+PmYI4chre0H0w51Z0Ay86QVy6BrxfSR1aYw66cKKLN2Isv1fT8AZ4ROo8DTBNQeMUdzXT6MCgz/0X2Y074TPuREybE3STnmGlMNa7+5g1Ze2oBFdT/X9uy/dlOc/UZbHNgfXHMNscA5ZCGt6CP+BlhSm43dlcH364PfE256fR7TEv9M7SuX212Lgg7/0H6ZU+T4OE8E1EQRlUv1ehbQ+UBVo/Vqt6Oc/Yy5f/Oy5nadQ04vZqYtDRuF7iKEAMTZQAtvt2hTyd/+Zg/LcJ9QtyAXWV1+AjYMWXacJ9VSi6hz848+fyyfeWufwTq/IEVqvOpyXpe7+NJfv/JMi/HXr92o561Jm2e7cx6zWWx2etS0vfupUXvBJc8uG5MNwvUe0cQpNxUYf8CFjMBcikrG0MeJoU9G8O5PJPPkKDY1hRyB4+aOdJguULTh59hP30foBf9ZhBzS+D0jQyHiPLxoXxvLD2QSpU737klZKpet1UCuzfuV/pwywlbRfVNHDtlQAEf+hfEZz0vzhrbZc8XFnRi9ZDfozPhTSq+1JLRuW1BxaPcOCkZvVJETlxsDTXr/0OZvmMzFkQxZJ1jQ4qvPjwn1Oi01Iv/GPbMrTH12FXzYocasIPiCEqeVfd1TKc56waesVWt4U7z8QsvDkPIT63Nd/8aY8pykZWcegsMLJqbRpbG5HpU/l2Z8o28XHUgnN2ZQn0iGYboqiWUoD+tQNMCsJX/AkrI3sUoIBKpsSJSLrTUEMOf8pzA2i7OG3HXWsVIwphiP9l6N5PC1A2m0y/0x0yweh50mTU2DBLJ8kC8WYawCsxjxO+8unS3n0zWv58s+Q7arqxhi++oxSZ7vkBPYm9kpHXnHOeygKQp6JsWepLe/4G8uHULAFaBablLBZPkNWSZNA2bW4eWqreSchp36fR6WGyGoRT3nUXB5x49w2AW0kI35iIRQLSUytqOeBq1N50dM25Q/fVoVSPPNDpWesoZuP6nTgibf6fgZAkCbA+lJFLfdfWcvznrwpX/rsTXM0VsRnio6E0QLi5o2XG4+8MVow0ML2DrA1+R6HD20PdPA9M12S6dF80rYlICH6QFaSK8jrVdBQnTbNe8yZE8GKI6kxIkHgGChlBiIPaYAkpJFMirgNDp2R1AB5Y3L74hX1eOouNp4fQG1rGFSRjkL6B05K+eynzOX6YzkoM2fDeeYbjTXKsLwFF0Amoc/vTWLj3/RhBxmPoVg4pz8LjCM4nx4QdWJogY2Ati0jBVbuMSwxTGKXoQzTq3os+FpuvjiVLaUH96+PfsnmI1UY/8fPUEHVacawYkYx+m791tACfEShhz729drZrpQ/0erBNEhT04OF5mkXVgnJzRrylEQjKF5AHUrGwn9tOjlGf+AQ5y+WD7c5hn4SC9mThFhNkUHwdJzQMiiVblPQTvuwdSYJZETNbCttp8aD5y1DPPWKyBTCHJYY3AEfbY68E/bWA5oh5ggNp0NMUGa1+J/+RAmBsaV2onKbE66wPG0eTEdDjG7BQIEhWchoAGLCD1syqocvJGMe2pqnMIxgAm1TGaTY7d6AfwPCsoxSidvLicuDMBgpRfPhqDI9OSvlsR83lWc9zlfTUQVdxUEB6rX33w/jpPeh8HRcqtWrsf4nPaKOvWQSGhvlvwO7iNONfv0D8EewZaXk46YLIo8wvWEHZQERynEFBdJl8pn8RZH0Rib+tcaQscIzOtt1dggFsPdafxuMAn8YbB1rN7OCBENJVehDlI9v8EsFnDpmawWYAKRRLLElpJCiuLibLVTLzddN5fEPbzPPoNS43+748mnMHOZdZIEJKbEDjHvsvp0kZDzOpFyR8+/j4suooVZxuAUzRVcm18m5ElBEjLTztGVPO9F/KUKoXvcPrMk5dT5tG2EF9AmkiP98P/yaefeMx1ZEJlMyVtZmBUPdjhArhD/fLeUN717KUduvwb2w0j1vS0UZz/7Eudxwoe7q1J/VEKdd5HDVPSLOznbl598mvomQT0IlAB2JmLQ4gqEUzkEwwgBFNDDMO3NLeyARpnR1xaL94OUL5ECm7a/coujXGctnI2hJmhDzp+RJhLXn5UCmKyh0B3hoGo6sMhSKxBlodSGfspqym7gy164K2CkqyQ40FigwbH2xeXv12C9jJh4Mq5MTyP2OPTaywvyu/U2ckqFeHD8aXIW0XdIHVjk7bOd0bm57RhbhgzECuuAFKnt9GGTNNPmmXnrr+5by7g8t5QDLVqlzI0PBPFt56RNu8R2YwzSF2AeJToa6K+zeTOXud63l7l/fyYYtcH4ZbCZEuU7tyPf6y8/64TaN2lmVkvDLz799Km9499r2jpQszfg8pq5xiqWOSfB362SQWjdAJmuE1AhpZAcsfod1VEHJeCavVVURFq+c22PE0w0PWUBDhdeSafalj+k4MRNgtR6AQEAg7GS0cmOoz3OlidTmVc2YWeWA5+qTxJrrltVMN1oGBPqOVHyIfpiRojZZxfhmcIzbFdeC+2XHSanSAKGNVtb35OXEO9eIPkQWddqHUWeYS1o+RJH0nR9+fd1azPdskMVNCc8GdJXm59jcQwUrzOKx2Yn5kFXJaFu+9z+sbUznoMATXfTOti1ecMvKC9wElTN65bpK+Z5Xy1SCzUEIVdshGNSE7Adp9ZGYEzz38aAlwZKNYO+6nHcv2fjEOUOejolC6l4OnlC7hsa7Vs7bEBMt7AW296yekJ8cCWyqk5JnZB0+w3N8H047LPURQwOFQt51XVZcf189XcvPvrXeW9rOP8wIKM9qoXaaZQpwiBUQHnbrjTHoSD68hikH0XMgQLGuPSCE0YQ938N7Az76lFnuIDhYfBQMVkuJrYk4r3vHWn74dUu5+ZJc80JgECI9wQ34VvPv3/4+2bmmQm333Ps7ceXoatua/5s3LeWn37Irt1wvDjqzeDxNVeapvXvbB4pHTHSdPs5CaG8QT6+aGFanGf/0NWt53Tt35abr6hoEtrGQMUeU5HLzboIm3QEu2id9zqiSjvnaN8RhVMO8BLgH2YF+Ww97o0HWOK85fpMlsup1kUFn0GhIXZAwV2UtTIklgUcYdpPlTrsKZ33DV5jOVjvDRtXUdT524WBte9e/98OVgQUO+lTFE47aW0FSKYeVBZPgWGCCFD4bDWCkoz4/EHhYPFxczCqwrKa6yIrlxFjQKD/X/hqSS62jetpR4XMp95+s5eU/tmspvPNmL37xkDI90sZjKW086slE7/qwOADbSULaX0R3zFLras2jg6X8wjt35Y4f2cqOTSy42lYXDMkQrGnev/COtfzGRyWhqSmrzMPKRPVE43pKVOWPf/uWpfwvP7ktN15MfBo1rI47+aKYJ4jQdSv7ILRq/BJwSCiNUHJGiwZuKSMRfpZI8vbxdYwMVbkycia4UDmkyK9DLdh69azjMt2Y8QimGCRqfgIwoWtNWGEmZvyWwCN7DqFp2152a/ng/bvyTT9UxWiWxSc7WV1WD7KoCr5tA94Yx+edEMB2H8/Y9ET+yoIUXb6qJqVd0z34YJykDPmN8tr2bfa8Ptf2IQQIxOpELYuMnfDR7GVxCof2heuWPsX2uOHUNtiKRPm924r1q89UP0p1+v2lf7Itv9a2Foell8M180eE2P+yYpw3a9uo9Lt+WpY/b6alJeigD7tV6237NE5tQdCPv2EtX/G/b8vlq4sqHt5IlSEo+LgKcykfvbyU735Vradm/cmZBtInHT/VqHW/w4ODUv7xz+3K3/jn57JvdNvYBvWAxZLyV0b2bFhiP+PjqPqhMBhYKvPTMy74ZmhZpiDsSJPG1GSwHFU2BSU57KRIiQeG93XxI6u1Dg/3NNeL4g6zzPrFtufKJXMl9nAZx6dH76M9yRo7AhMfdQsLbefyB55xUL76C+fymJv4pdH2sAMCfcyP45G+DH5mVP61nr9WWzItxkq5b9e1+svvy2q4n76nlO/48aW85yO7cmPdJfhclNfwnWA4oNghQTKWNYR4+WQqf/wFB+Wvf35pEYF4Jpq8958/XMo/+tml/JP/sGvrEI6O3FcOQSCbEtmkCOKrZxj8yc/alK98UV38xZDO63rTe9byv/2bpfy7X9qVm68XdLNgx2N1gkdxVevekRJx/OQPc/0kTymPu5d/zGN5NK0VJB52b8/0cLrtG098qLikHkfbvf1NcmF3wczDPXwpynyoc7A9UIhPk2KwR6iAPAikNNzbXXfIncqVs7Vcf3Eqn/XJB+WzP2ktn/hxczs4g20UZktZN0GLxuy71E1X58N0ZWsiFn9Qnbn+cbk9WUGfFKoOJOMKAvmoAjhCgQc/9OBS7n53KT/15qX80rvXcny4tq3AsVuyDyg1joW/uYB4hac3AlO+ey9P5WmP3ZQ/9rxN+bTHlXLDcc3cLOVX3reW//jWtfzCOytaWMsNx55AJFWoAGodmYYNH81zg/7ztJQPPTCVJz9yLn/k0+byaU+o9UzlgdO1/Or7Svm5X13LL/zaWh5o26frSVRmzNAbKB7fzIWWoBFqhjW1xsXRYsaiaI9psfTx3IYYHhX2pu3zyEZC2doU41n1XACjjnaCT14hQe5UqJLUnVX+YDDSFCbseJX66ZewjRS9wTHrbOXYYUdoxUe+L8NXWnmMdy5L8yA/cCKLS66/WFe49Xvwd30K24eFITKmsNRQPSUljHUre/KAXi6DkulRN84ccO9KQkhhm2nOmnfaBOvIYVs8i8MjNQHO1vhPNYd+bQ7UGuq7dCxlBjZhgeax0b7atI5EBn2Er6amFlcLvSt1GbAsxKnr8O+/Klu114zDqniWdR7mCPS7/3q7LGV8lcGtiuV8kbX/F49kdWjdFKQK+nWH0vaq3KSfijMaOGQDwb2HZ9/n9CJ7yZixRcW7YX8Mvx4umUCrIuDwL8usJWdFE4N/RQEQwYIFDh/WRpGwkvHl211bVToVGO2EE55jDkHj89PKpc5kSmTdxXZISxp6VqwMYYwUk+ST1ylOy2lvc968V6IX6012LguM3OmeqEi5WNOrsMJBf7lC7VPiszJObenAkSgNYSKwMcOuQUcD6vGS6vxbYv/iIHMFJfCRU7TZvkvV2Mef6VYGe0QKb7UNRqrfQWkgi47E4sPX0FtCpCdn/KR3aXAmPW4MG4m0ZB/dw7HtfqRwP/AONX4a7V6NY8b4cB2O94al897eTi+QQOaNeUTwfbB4aTmDDCAuHm605SBaIWdi3uwRkMLETksHQyC7Seb3Dm0MgoUTVKR3jHDMYuQYEU7DYe1oBY+AiR5aCQiUeNnKsQvUQTvHr279rS0ITBxLC6jMBo1gnX43IB9Ss2mxEbwM/lhgVfSRVApxX9aUbn3Y6qNypp0zpueXRyvDSSzSArm8lrodn8TQ9TqaxRrKBCMKuo0xA7fUaTs0s6XdwumpOY9wUga1RiiLBsd4OWpo4WM9I6OYcNWdh/C+TGWMmjauJFyBXRFiI17U+3FncEpOBxwnS80+MuYZS9FLcz/nezfAdt0EzGkbbKK+rDNcWCjvDt41eJA/6Vgkh3BRYzFjhvcocQcLlZwWSALSeWLd502XkmKwmGGDUFfFZOcNJKnaY6eNcaD0qCvMqPJMhkdeuGnWBh9EHTmk46mOxtK545m8CcGYor1WW9ShCuq68pZnbYEMhCDXqQ8Ha8XDTUrMlBcnHeVpa0JBUo4ISxfbR1sZlcHsEB/xZjFp3kgVsmEgE03WMrw3xa1SLQGIhQyCxhtsqPr2CUA0O16Ow3o4u6NiRDJcEnBTkG7hqZGukAYQG+Nld3SK6b4ludPWAqBDrqkQAnKtbbsFYJBpEYM5mlgJ2DwUDfDlgLCe5pAgYYNWtGQe7MAbxg6j6fsU2HAZc6oCCTKi7/nrtJzZQyd41BNOmING2jAWHQjppIi5DMYnabNQY1QjSFRYfmnYFiM9XcO+iZ0rJPJR+tAqz+YDSPmRspJMC3InTp6ncn2mXFNOhoUgE0TltfxATpEulOqdRMrtjGk8eQo8ZitZZ8oTATuPs79s2hKmmmRkzB/gisB9DYkm6HteE8BICRhrcG5AIEMqgZWpiVE6SgzFEQIYOyfgZLA6g0+KoBU5/tzUuffDoJht+RW31LY4fRByNztM8GghKEsq7fgj1VkFNl90K6/pnMag2O03C0lUDlmnkb31ZvfmVfsIMwc0M4DC1vwxc4RzEbppAT/De8yn8juP0jUUQehEutvtcuEFcVfZwnrvaIxCoYjS4B3PBuXcDkdu3kdTjDYNxHjS+QQ6PkuIWJBwkwLPRoH/GlImUmZBFdRGVo/pSsbTC+79TkRsYzqe7w8fZX5UARL/BOfurNUHkPfXIy2h1yiQEfphPrvQDhc4QxBUR8Roflosu/ecaagsm1MzfNJfNgD+m62Nt9cRR7VeV07rAZdonzBJXn9uaaFrfy5AhvVGE7KS8nwUHfVU0O+0UCfTk1EEFFgYJCcHO3AZOtOoepkMBknjWRGMUhI9MKYYD+7N8GN+JEZTWmKiIYx2y/ybZZefS8eS2GRRA0vBZdPdB+Vq6m6dz18+rTF/nOhcMxfXFlW4eKR+BRaaYfNdqUm2aAQJ1hvWGJwPo9ctew8DZeaaaNspCx+H+J2VR/oQ6jK6UNgVr7ZtwXmQYgFRvZkFNsnH6ah+SjA2ysjt9jAVc5igCLbowZBopZbDTGGkYP+oV6Yv/GV9VOqtOeMn5/Ws+6k8/ta5PPtJc/nkR5ZyqSaBWGpy3gbdFQvUFdMpbnnlLfMV6EGCXaFaKI8tKVtnZeUggAxZxsuwI6JI79rfuKzU+8o2GlbHVQYE1vsux6FIG30k5TVm7J4ncKft6aC3LWuybdgxlXd9cC1veNeu/Nr715aT0TL22nQkjgEjVjS7Fnv/ST0vYFM+56lT+dRPWMut10t24vvvq6nAu/K6X1/L4by2bD9Xy1GwovKWclFx4AdM8xKiyKc04YaNA3g8ILWE70gOw0pPiI0hcoKpSZbk8N2obOvmzUY8D6eB4UXLwElhVi2HXqAg1FdQL1pkIDCYamaUoRDIHTsu0L73myoJDQU5dIo2jYfIvb4aEVBmrCmrH75Syid9/Fy+8nM35cVPr+vBx6XEIb/W/YfyuYam/m2Vxe3ZV/boeg83x8/+TvT5oXw6izOs++T8oPzbN+/K//KTS/nA/bsW+7cDMiyt2M8CqFZ/u5vKtszlJZ+xKX/qM+fySY/gOgXLrutB+Tdv3pVv/eFt+cjVtRwd+sQ5GC0mDzUTDmr2UwGau5CyL8zXlvBa/70WX9k8HyoDX5IvDMR0ICvF6GTundFTmW572YnI72AsLB5rtiin8UYLlD2e8Vqy8Lnjaa7ofYjpwyC8d4pizgwuWANWTXewlvtPpvL5tx2UO7/koDzsgsR4u6y1NBg59ophG9reoSzSNIZHAs/H6gxZXUv2zItvipqmN0AY+dzGUHaquPPc5fTqHLKlhih/1YNFFj0/0FdyDpSMZallgWdC+HvNkut2Wr/83qX8qe85Lw9c2ZWLR/J8i0JQHopsKDqVh103l2/9Ywflc58igbgayxcvPORCYv31+Te9eyl//v/alrMW8Kf281gl2nUZnx3jxc8+9RbIHEjBiNB5J+Koj/HBRivIzzHkri2o/7/tZVfjoUGBD/psJNN1gC1Gh6QILJTnyRAh9rw3RYNklzLf+FomLIfemV7t5yJLRR88m8qXffqmfMsflfNQ6/bP1f+LLaeCv0EFaKRIRlOUfaNrcPBahrTjCEdk3TN7BZvowesq9rSN6Wp1UlKJ+WtSFTQzCY1bO8vHVoLqYdqZPtBpwr7+aAi4Lgg6Pizlx9+4lr/0fWfl5utqXbOG6LDB5VpOt1O58bq5/J//00H5vz1KNhUVQadsATqmftsWhE3lu161K3/v32xbdqHqAWt7FD9VTEy+MPlJ7e/J36HzbipmFyptcDBFDGlBye/L8bcBI0XKRYPdsQkyvcMwgjuEir1AYTQPxcDCm7XXAeT4pXvlPXPQlIJNOaTxIGpAYGFffHdcBsONOU7bU07mgU959Fy+4Q9txOFTfQE184t3Q+C5EhRVoAVRKrxGSMdyPr0cH4gwMk4LJQBvUuIhMqqFdnUdggxTftPH5D4Pbcb+QpgQRm3vUXyY5/7+n2+VhnJosFyZ8btSsG4Wsl/4ja710I8K67dT+aJnbMpnfPJcrp7Jtt7iLGRemct3/A9V+Ose/7J+H+c1QifxsMyKbD7v6XN52MWKYsBYPMLrWPgDP8c+dKRPOtnC6ETK8IIMptEq7Blug0XkHTCFRB+EL3mCwJLsKVdU9v44hFfoGpH+Y18An8piJbPlijFQybiybIPhoQeB05lsndJyJbGqlv+rn1fXgMtS0j64BiHwHPVcxV5yaH8kIWb8sPg8UqKFKUppf9jblKGaxYNJ8w+UU4g+BCait5JV52QXfONt2Yyzkgxf69Ntr2VIwMeuWm70Ewor9y8UASuv3z//Uw90XoB8j6ro6yGlpfzpz5nLC54slr+mEHeNJgfaZPy6lFtvKOXmi6WcnmEsOBzndaOF7Gzk6BKT3aZoRHrjfk38wfqAgJyYtfUfVyDa9kSmMHttbZI92rPJ8Hib8q19ZavV47zQMxZaDw4qwWyrbBWqpoB8ZxdRlh7TRdW2RxrVazuqmuJwhpF2RLJiatIYQ4l29Xwqz33ypnzWk+d22kw7AJSrYdVIBs9yBvhj05ohWaJuogmzRQkSXrPeK8y1BrASsPHQopUTx4khvk16aKJtUCr1hfBf2O/PaekoTj38I/+MD4QLciaOx08JWXlSCpCW5St08w4fHxHMtXzyo+RgUGv1XB2Fa7n1YVP5M5+1kTUdekZBLk+ExBHPpE2sB322U3/aaZ++yWqIUVG+AeTVdj0GGqCKMAVsddE+FtwWTwb10Lj12xZfkeCzMooRYGtUG4NGUzmuHv1kZQBA0WjKgkdNHmp9EnfvKAutgQuFeZRS3KUnepTdeuQ605trjMrkw5FW+p3rRPnVKtdjrF/4lLlsNnWGmAWnh/TWv4F8xf3vYxGgfzQNELeYj+5aPCcIXAN5obJrwGVwi42nmYXwEK27UO4KpovHkjhgLyLzJ6V9UH40Z4Wjjt9HeVCOI8vfbXwh1w+mpaxNUKW6epJTXSH4GU+eW5hPdhFKcGdQ+qp9lR2BpnJSz4Lk47zC68k082XbkClBAJdjcqEn6x5CpLlsoL3cdg8ZMhkxbab4mzybjA7kqfW9fQd2MCjgTIwOWGVWNnoBh1LEnQH26MoqhAizdeLGRVUCAfIVha6JvX5HFLEcwLBP/DiFOwFn80hkKY4EAzMb+sgAiaxcviZOQCizDMgcVcSNPf2e/eI+54+13xFVhojd51qKREux1rJQh3ar+TVY7eFcDIigHv/PokJoKXw4g/ZYyEyTs9Ciex+UvRssh6C+P896voNP55w8PTFC4vA0lY9ckWXGdaegYVoTywArJdBnMHxeP0oapAWHvb+rUyKhxCS8WJiUr8fvrGzdiRlApo6fbwnmnEYPtk2RfPqWGo9sJs/pd00WHHNBPpJyweo4awQ4hwULTIOQH+3qkwy6oAyKDe8kgUQ0YXaZjjz0cUCGYmJbLsGJByEmDiClFBEDEhOi0INxg/VsSTGEKMhp2gtj7Jvvm8fqcPyx3W0teqO0AZwk7o7CpIM7YMbAVmhLRhu2TwLoMmgcppJ1K7K2THMpb3zP0qC6t7mUGy7M5YmPmAlRpmaGn35h0Tpf/+tL+fDlep4AkcHag/EgwzJQ5rJlnCOTQdWBSiRygZzsSwN/0WXjgTCqwbCmRWOohBPkdFjnwFQdebiTBIt07zMGA8LTSfDNInAdvhR2RBzZLditiJXHc2MimMBZaoihBdnptV568MQXB9VYNUcilFzJwqV8AGJcn6v2nyasAUKTUwx6BfSzrMaQBN3Vl0O0IisDNGBRGarO/BiUjWgP5HYmEM40haId+UWo3U4yRmjUREwbrAl6+AUUp70SDQmKqfvx19N4X3nP0jb1bEt2tcjDQ7HeYpCi1c9txgYuq81Y1nLXa3e8e54bbF7rABRA3av8FHmH9gj0oYnCnr2F/DAbPgtF00I8Wk2LVHdlqejcDvytlDQd60k3FgbMCA9tgjGIu/ci+YJaPZhuhmW2TAZGBDzoSlnuNA+jaV/LaQby8EKNl6iqt75PB7YlfyDwQcSxHHvDrXFQMlEM4rJwctpmfDzQQq8iShIF09GPwbTQBlZIgdAO9eDZd63igpva6+9L1CZ6ot2HYYqWOTkAA6cdzgCQflkqJw02mRfzghONkGWqTAllXYW9TuF+4o11q66lXKpnOapzss3ht6uc76CMHLcOj0MIj9Gy1iPMpvJjb1jKa35tLddfkE1BBa2ANCOF58MRsk6TSYf/B5xppI32Jxg6bjfLH6MPvJSGmEwsak0GgUvQfmkmhdzMzCpFIGZNr6sF99I9851b7kkw0GiRjLglvA7Gd03iBsNX9mBKyR1z3iILrvDuwkEp/+bNkgXYdpLBfJP6LZlpeXRTBbD8cRQieZOe89scw8+Wuz8L0GT1IZ4qbDzIkylcaygoOV7IQlp2HJurESEo5u1AKbbPPNmpXZ1JDI+QQgjKQf5WIT+r247rzsP/71fuysMuRh9j/ed8W8rP/qrsIG0u19HcX1+qoeGDTSnvuncp3/5jS7nQ0ou9X44siaeyX9UsdYqm2xxdo2BcioNi41shK+04DTqirhFP9l+5pX30wxzlNBYyBSCKx3u246krKmca2C/7H859p5ZYGNAUQUTWsDDoZB8Lz25OfX6gtGC5WdtWBVDPqf+19+0a4yDpA9tco9wuE3LqJ8iuaLI31K0EC+DQ88qx5ZFMoI88JoPyYmP9nYCoCGWl+Em0Mslhtq98Q4EElFh5CaymgSXrG2YsEXjENf/cfv2vnttXz/l7/31L+X/+4235wANLOVaoj37U7bzrgp5XvKYuGpKpQN3fD+f44rm2nbnSqWb/vfODS/nKf7QtH71ajxIjQ4SIFM+ZlRc7SrEVA6qrf+hQU0Z5NqKaCCS08Tl5lSOTod5WBGUSdXWKvNA7Uj21n4cVewLu5YHcX7Nmnj5qewISm9Xc8KYUUkdyeqzAPnSLG+Ga3BQOLyKi58JoEIXA/PVzdr4pf/0LN+XPfrYOUt3rjcNFJJB7bW7KjObFV1FXxVLiY2llXFpByD03fwM2aQ0k8lKFRrSYwkYZXJVXWQ646xp9ju8ytXnWyf31fkQENypbhU3fBG3acY16r+4+/FX/Ylfe8cFtueWSLPRx3Sh1VOGuiUDPfsJh+e6vmMst18m7SOvFOQH4/OSb1/LyH96Wey/X6UTdXxAFcof7/oLgkNv2k5QWKN9+t4HVNYbkVbRu76MvDZvQJu4QHUiIZ5KPquxbw0PlrEMFEBYQpcU+bo8Sw2bRjR208si3Zjxpz+ULdHkvr+buaMWWJIRLUkBlkM/+5Ln86c+ey22PncqNFx+iEPz/P7/Hn6lt9119Nz/6i0v5V3fX8/7WcvFosTk6DAKmJnW0K6TfrlN58qPm8qc+c1Ne8KRSbrlUp37CR/deLuV171zLD71uKT/31qUdClPRQj1sxJEWiQOvj8B9pPDSblb8uZZqZfQaphIDZZD1QXsMUS69GxK4xApYHsNINg0hkhz6YqBBq8OLoXC+SzDedA5562GYzB3gC1qC4yz1XlKDM/R3pGPEj/Eaa7lZH9q6uf4rsd65POERU3ncLbLVtNWsp/8IvNR5EymkbiGSuoTbxhUUCmeYhy6jizJV8n5zF+KUUo4u46mRL0bL6wUS4oChohWpAZ23Y7ho3QbtNyApzVjwFeEoAwueQtk9Ql48LA55/b71PUxv5KHT86m896NredeH1nL1ZC03XbdYUhcQYSwPYzaVo6OK9mRr91tvnMqTPq6UW64r5SNXS3nHB0v54H2yaOi6Y0QCFJMFhyEbEyzf9X0b7IBSIrbbMdoBaB+UJL4AT/cWlL7jEimAtOuA8Dd24A6b9Oai/Eqj/7NedlVAucEpOihxoIXkGlfNQaAeBjpzaKMNXRAY7gigsGUvEZPlTx7t+FQU4Lo4pH7qfvNnO9kWKg4MNLtjnMDsUJ8RxftAjqSBP06Wvckchpqsa66I5Pc1uMUnfSPCxXEMG2iMFOk1APE+5k599Zb2m4Jkxys3oc7Jq/+mCqtv/w2rzJMsTCld6LDV3Nm2WncPJ9ddgKrVb7ptSStCEvI1nN8Ur0e5sA09Kw3tqg6/52vso4kZgrbSj3aY4pHNPGb191MCM3ZGgmSijc542o1v2xHItCoElMxGngrIHRz97I4+nhLkljei5ZgmiEqpl2itTxlGM584p7BdTtnctOJ89xNDKM2KyGN1B5jDtik6y1D9R9a0h/ryhyEInznPgo93rQsjVU+8Zl47VpKsq6nvgEHTHjPB7YxSnvqbG5Lb3YHQYHFyC00/YvMWqsOxof8aU8TRTZ2/L+as9IQhc0Gp4gr7Mba9/KWrdfkw4D/qXupcf6S8JjdQeN+UNY0h2IR1pUsGGa+U/m3mDvwSfDbgIOcXZ+d4bB4nIHmSOaedJ+G38eSzGPyuLI6HBbCOUFjPoD9bOQgVuu6dtrIC4wcWkW6BW4hTLG/NYHdve6weHSGHRrTZBHrCEDSxM+C1jz+lG5tC4xRg9ocwXGQko28ZemIJoIkdcb3RWN8DA3p/3Rh5EkiK8wNOVAbVd21/RxZkYy4oRFjUgJNcNNEPU3RsFBC3lrfklEW51tqfnKRwwPn4+WCwcdmrGMJGJiAOKSR2ftlms37GA9rTg8UVhLBrQ1noQFfeM4Ftb48AfOVlH3NprDhFZ6FYe0xRXH32tOFf6IePldgkzrp1A15/tW3BWc4mXSHsBtlRQGAcao2FhxBjjzQxwcRFZMNhya7TnzEjUAhabq2IrMEMbvAKWpU1njNZXJSRLbJDTPSfHuZKqdREEC5a/0NrfCFQGP1gxIVNfK+A2FSvEQIIS8hMMVry7F2KmY1ZYcqyKbA+3VAuaqn5RmMXYnnWyWXtMz5JGi0ZpG4BjwmD5sjb644ojW1CbgeWubHgcclxqW8heuVUZ8uT2CNvQLBuEFPCFPGwz1LCYEtRtmrOx9313QAPsryBfuYgZL71N3n6bWMd1r+bBfVrzsOWMd4WEOTkktHuT95azyIyRW500QEII6TWjLUD5nIMYzG4ZvZABLJOLEDKZOasUweQKXPK54+HmvhqNBqC/mMWkwdArs2UJm07LdtGFkhGIoDX2kfjYNLlDM1WOgyY0owVTmRr/+aLQUgICFbyegVZ96NCyang2LQGtLL3OHbep+hGuhlrsuqJ463LwfNxc9YOkj0WtKCaA8lWNwmm/Mhqof4x8aztYYMVG2CSSv3LyBA2mvVQ5LhU18gOsR2kMwvan5yAVP/B4an0YM0TGzSAbQmed0Gh9B9/imsbJkzo8+oA8Y5CGqlZsE6sLfWC8wp1eERJDMKA38yRpn9THqMrD/3g9BufNQyeNQsU1H8IHxEpzEqBOR2us7uAxiFxhAsYqaSBLoBV6u1BHLI4Yg72XVYcqYTUXwII1p6As73TsRVkwe095b1O2VFPRFMHIGFc0iEK7ycZysTh8hHlC2svvGPPjPR98uDC8OD5qLiooEFZnAbDmwBx1XzS1WiznJhRGVSbFVJ9jvHFapgMm6oFCMKUkAxtXsBZb6ZBtWa7bp1Qi2TGJk4VXDurhtTJ2sRHT8V2G9OIwtVwXCYQWYS4dyG5K+uhoAa7osXyvsUV1vYvKXpqklshFnpLROFGRab0PwNv/iAfgmko+oGmaAOK+a+BVvTBNWUUD35xpNCl/5KVZToxEnBDmAQ/W1zuM/l4ololGui/I78t7hlYJAXhsauJXuMBY5sSvRR4wJUQfEUkPwTlA4FoHK3NC22PRq/JmKLmEKaINLBUZDc23rZJwtRB1Uvp9bl6+LWvjrInHPaGwVd1X+GspTAaVCItBk8nnDFwALHvR5eaMmFbY5WQvIOKK1PeBCSWA/q2Uiiuzc4Qgf+Mc5hTomt3ZDF9HNVJQ7naDeK72vX2Wf4ChfIMSvimHAK585oEWkNg26Jz/31eKdfIWRumoko3s1RUBXcsjWOQB7TN2ksIg3MEXJuntnJsHDkIRF4gNtOcXLmG7oAuMiQ3wY7zb9DCt6cLxSWXJ1t0ijhogoaw+0DLWFkRwS2dw9L7LikY5DSnzJA8ReJ8A4s0paIhb6FpYND2rrc1+itkOfDCWjlEGG2A4iIPJxqxmHaOT0ZBbACdq5s2eEWw1s41bjGcZvYLoRR2KplzUVehgZEspIIWyBLg1l6d9HjLKC2njRwISh7dsK6eoxTMB5FGXrLOfZmk5vyMFschK09PfMz5FZcdZ3rxadCYU4pxa70qkQDru49D8FAHtSGbYiSoZMtL5HFi1ct0+q9t6DGyltwm4ytSigGp9pLh5CV0ZdNYHR3dm4GIEhSJR4DS7tNk6ELDOWLDzVFDSEDAyOGzVWFuP4+Dmy/XYsQG/fSpmOUL0FLwXtui3HWpI6GHY6Gu7JEmLQcuhsD6Syp3voMQj4IxIScXNUcOMRahp2vuZkOrpSzUlcbZRtqsp9kqfd8JGtUYXiOl0CrCmTHJkgQLSfM00rRMMSi43D1QIaFUchVR+9A1HSfOoUjRK5YVY/lYJ33vploQY26RI7lMgCyvXmeoRPNGXFMEgWAN0oUmo3yLMVAhTj6HLPehTcNl68UiDmESXrcdB+ck9IWQXSyLoQeUhN/iHZDJTHVjIcukdXcj4ul9YtGJNjUjCjMTsPXprJrkK9LRqFuciLQ0Mfh3iFAEo+wsdYVQpCPsr1gjvhizqngfwUyY3MMxWQIFkkUB9GcXkWtmE4YQ5s2LMTju72Ty/ATvqCdfyG+cmBTqI/HM/Rxv/unedBGAPbQIVtktGZPGE5m6G9Yvbq0hHTczkebtslMr0i22TUr1NvcRcqc/fE9oG2UryKYclhGo2XrKRxZdiprV6TDJePO4O5OSqRikMncUJyMAn0P0u0FpX0ucIas+9ZCfOsVkYtreC76qMPoXVDbNV2UvtpatpVyp+wHcN02aEE+eEsyts36yS1agNkJNP3tCOwtBUm2vt/Ki0BhpLWSD5b20ThsdzizN2AqkNtPPYgYoD2XgrGhLVC3GyzzviMHEiaZIHgt2AQ1EYEnjrgQeiRtakNn33ZVMSaEeJizRMhjHaHHMm08uCUHEUTTjhC8JKaya5cwnKwfB0Y2A81TJy4/Nh4IxQVM+YLnhxLMg34FvU/SBeWylcGbwSZGDOVRoL9LUFoVGJZydkuZWSD1lQ5vVH+NQKD2rzeCB8q8mdNk4Qh6R6JUQVZ2OT2W9v/oA7q1zMlc2LsA88CBYhBGgnBbKSg0Dln+yhsU1is1Gbz3VCyeoOYQiQjC43xJGqueTxFbf923G/ZUucYnlFKnO3FxKPfXBc7iAA0Ja3sTgCOccX4+DDOUDG8EpuZFAQSm1ywP7SQ6zXpWTvqfogW07Tv31IYtQ3HwDlJ7b5R1YroZvYQXedR8yWdoAKtwwcN5B/JDwYZzprmADFiGva+LQtyIHXM8qyRCC/WVl6o7Q7Nsx42NMzglBucwoFnHckPykjsmgezSKkJIlXS/zmGAhQkv3+lDNlH5Pq7tumG+jzsYKDiQiSLDUFBvuhsXVXg4N2nebdqnmhPYOSCNxr2n6GFJrRfrmdSnUA7cf5y/ExJRBqnSAYXFAuCWh014uxWfRkmAKbHGGdsG646mb8odjR6TXQrnUGocrwWhmy25DQvkVUDq2v2GYInjoy57Vuuxcg7xYBytIU4jVRTIRd5DyKgdoBPgU0QANCqCub87Johy32yqwkIxW2I9l/iCthIZg4Ace9CUSmpcCW5NDSDUMSxg36BHDn5zQRCJjNYbfMeLQflb7NJf3VJ/4O2TJbNTckemTWu0+oerh5aW51/Uyx88plVX1Iy2M8WesDU4VH4lQvYmEFwFGBixKTBF7Eh1v3oSeACl4OiZHe5kkzU4Jgk1FPbrdGTceyCrZI+uTVhY0PFlCfsfbwVrK6e8mmZmVDmLJhSXF69ocNB01AO2lb6b0KMyYhMKr0n6ypLgk6cq6wflESYOb/i2+kSonWrHR9i/Zq5/CyPwI820nOvJwsDHWR+enKMyulDIyCFPUYIDoO2lttE9Z4R11InCP0ovWmmQbR9qX6WD+Qc6tRoyX1CX1yBpA8xXW4BEIkYc7b9RpKi6pLFLNmNlL/DgZdmoQ70NooSGymNLnkceWLGL6mIHX0QCPwCq6ZaT+kHffzYTWkpSKAQEs9CCAZZbO2oUkL1KO7CYJQgBlix/O5CwYPC2zDUXDIHrUxWLeaCidI+ghalKMwUq7ouS+Wyot5beLwvI38dVzXaJxmGo7dOUVcjWi3UQLaICBDITJLWcl67w8VmxC2N/EvxG6oyEJtIdDlsfHQ4Ap8YimJH4J0G3Ffmn3zLtp85bl/GyZJt0vFzV1Vqxn9H5QGErSQ4jhU8PCO4A5RFwZtLxUOCGAlIcGIY32m3IRzAKmpZoUe2XF4Lw0ml9Tc/oEytDWoOOgDDI8Tb+lPx5SHNKejrsOHqAGyVVAFDay38LkECVp+MsjBUyrkBJHFtuVhuQXkOCwyzxdM0VBpt2Lpz0GrUZnPNOnOPIavgG2AcRkMUTqyK9VjcjTlPAK+BX+JuLLTshb/bRpJPNGF+L0BiaTpWHmoK8J5biTFlTg8QlL90n2TFljkFj5zdO8Oz9dquzP03z41nVdPjBtDqvjTJQwZ1SZGt3D5QNNBQ6HYOc8i6FugUU3i2//2IsRAjobhjlVIndUEtmGcxtQHkqh8Cf7AUzwE6NiTBJQyWRigw+yent5AjIqJX7sdGYQnUARrCsPYZz/GuFDv7tWm4l27kL8fV8TTfBAqzClowHWccwGIZ8vaEVZW2mFHkeaeKoVkIs/A5TB47kG+0zd1fJZiMGnEWFRB6iL3N88+wrTHDImxtrgsJQUJKF2Mw9s3rwZJEcmG/Z7XafNUf3ygSr78xvvnD5apvWe6aDFBds+KSzzgaPyhxiYxzYfGtIxf6J0MGB4AEkepLvMg06owQZlaDHc8pn+GqGb8FHmsIHOKoVm3JyZ6iMX+2b0gcfA1ZH3NdIy0smXm4plcGow/Vwes/LONKcEKVY+IaRE3g1KLGfm7JX4HrQWHvR9IBoqQRcoQzLQJhWl2ljDdyQ1Wbi4vakMV35qQeuKTJ7qEfDp3/M8iLhaVMc35WIAT8WGwapwmDFHi/I17ito5KFr777yyRQVhSRNWduWqW2LNd1TZV/zFDb/UXeeleGpX9StizHEb7PyZDdYyE0rkaZF0oYRheda4eRaLyMk0ORRDGVF6x++MwE5a4zDNAPNHyyk84bN29H3ANW0bQyU4hr9qOWMOYiPDNMEDYDch6gW1j0WrrNCTDfAAgvNSZsc7YvFhxUOaI75HSbFNDEp/YFVdLTAa91xxgMpROTeJ8ejOSSNfLTUORghWppLiMe5jbLZMO2Z4I8x/dLRL+ZjRJIGZuFEICY52sg+Nus7FmDRg+TYZmOHxCYgJG6qjJcrGOEZVkZGi3WuaT/r+vP1t+7+sbx62UqmfJPzHNaj39EDS+Zfs5Ag4A6RzBUXBMOcaok3SnJusYbrDYprRjAGpND5yGfA+X0Muk1TqEH8r1UH2kAAzerSA9nZaLzjjGmNWGTuZ20P+Q2U6utGLcDrfQku3ccULCkcCEiXvp2UyT64m+oLm4zsaYjrfdp9iZRk6zsfDmHv1ZfgqebmsfBouU3x+/4QPSGYq0rIuw9iRePU7WFgsDoqdJ/VtB0z7AZi8WF5dcpBwZoDA2gDRYrWsT9HVSPlz4Dj1fIbf2vjlnVetu3RnzEFcHRw+bXbs9MPTgdHggNCqAoV0/dgMXCfcv1TZpb3mC7Se0Zo1BMNdyjLgwtkAWGleCAtkSm3Ih5E4Rl3UcWw4y0yHXeBRJCmTM5eo0EcQGXrPVshQhqhiOjdR1sFNSXBHNURIYn+oQGwZrKmgsVeh64sewrvUwTIFBrGW+Fzt9sNZasFBUq0Zk6Acg8PQvEzWuCxy/SY8CpBaTIqIzSVLbnRHb4ETA+CN1ynPKFvBp3oO9wXJGumoOJ4cNjefGI2HdV7ZKTk+rJOB8fz9vTqh44OLry2Xppvf8W6ee2dH3d/KeVVs2yZujONOI238vKxJ2uUkpMMjLDDBWPNR/MotPHu0Nwt+nK8CBMkV9QGE5U5fIbkL2PQONScV3S5gGfzHj+eMhv75qCT5utiLoxenHxi/bRxo/k3Dx5/UWRgDK5bh2N1JFuZzDd2Xd8TpYo8c0zbOIBNoTlCR7JgRXrhoLevw2YKHnuOJAPd4ExXCJqVgJWv81omkPUZ9DI/ic1pjZ+hlTrdiE8Qvvav/eZVgFBu8mDsXzB69tdHHAoNq/9Qhj/p2+a3XmhiVg9ETOPGaRqsJlnPWtJSpt3maFMnPj/92jun+6vszx94i7Rqnqa7hE5IXvSGwfKGXBHTeqQEDBGAibF1GEHjAJ2Rvmii2ctbGDzIkZbOg2Di7zTnPnRggMJZthVYLEEVlZulyIRUnjECW+12aiU97NKIIjk12UjKG2ZYu7VcuhGWm5pgkaWwP2na0ess71Pyj+Aa8jzC85TwY3CTrDlr7rCEWx8w/iRl5FMwV6NutVWlK9KL3eecA/CJKyeOfpihsfTnyfkqGBqoYR+jtpyB5u3gMMiHkUYvRJZzG24KHvXbHoecbOEOR9zj0KuEruNaFUYd5gMwcooHTIXyrnqlyj6GZ33eHeuNp9uTX503h49cdufLjG1GODuMGAO1YvCZMSQ5ggYRt5CXzIwPSBht5yBDj4jJmjdgAX+ahp8Ewh1MrofgL+jb6+oTGpmQgQlEfAMi0XtoI/PL75aCScPtR6eb4mDTkpek5X6PrD0bgtE7/J5FFGheTn2SR2MkZr8pHZQfRii3IoinNbwm6gCWCznUg57LJOuM/Rt4DHK9o2ZP6TlqhqGukEsAxDJch0HjGHqWlVH3qDYASrID/y4vJjsohHkB/KIFLxX+H03L9vwDDx5c+KRfu3O6vz7QTiZ44R2vOqiQYJqmH5jrUTllrWQPPnVjAeJF+QmBYodIRw5/1+Cv5zezZdzHUThb3h9R+23wlKAiKNIeoXmQzc94AJAP3kMsMv0Kk2OugjAHnXlgMeW+/0Fuk2NU2gIr5vPFgGtZ8Zh+0LNds7TyNYSnckhp8AnnN6Sn2QJZ0wz5xWK7yEorQEeHnjVaIWwVIje6VZZJhz6fnIRmUQ31YmH7oJ9sYHFpBVaNZYZABPG1U5EzNSOxBmDLDfGAv90Y+kDyatAh8qJx7pdJQUGEueWuyvY6rT9Qhb/KPNKYyiPu+aCM5zL9w91pPVd12nD+RyYaVnbhullQIoDJCcWPcnccZGWbHxkNVkmEleEZcuvZolNacogOeBjQrBkRUQFShyNMqWQLFlJjtbygWDizkVCjd2VgZb3vptVtmafP7h3VKQRl+u+zyDx+pkXip+2/yApkoAlCrg1br1ARGw2kIbMIIGIkGalQyJbhZuUNOgPNQ8rH3k0606JR9C4HY6Z6qe0QRfyWp3cwbnzJUsPHKxSbjoL8cNOhMDp59W3jQsX0CbyKaWL7O4f6zGZlSDFNmyrbZbP5Hpb5pgDuuusluzvuWOc3vvz47nXZvnJzfKFGg3cgK4fHQKV6SVbckkBTeMSEQ/ETJhs+S2UYp9dwVgALfoZsGGFOTOz41i+4R92TaYKvIk/+MuFTeWFbKLZ2hDaESRJaMKCS47PMcEjeiBYcfhKby/La78ECFKOTKhAwiz+i++abFCQPLqMYe4aVGM5OdKvrdTODq3DxdDDEuWvfogPPtAFoSOPrO19nJx7nZ8SViMGBSYjY+7sOxx4oQkmY7uX9ADICUuWcllJz3n5ASSGRzb/E/ANX/pZ0BFSMsUFKNsmd/t1VmV5221e+8c7ju6usV5mv5dmGJfc8XYdvmb6jHhw56VE7nJDDSMBpSDu+Zr6HkLU/MV86tI9he5JHG0w268zf/AINbBgztDnH1dksd0pgvUYZ1JVgeVPlUBpkvS1kkz+gB3c6Y0lDZb722zzTdDZCENo9umFIo6BxHfX0YKG3zMwbI+vnD0HZM7mcqfrkKbbuPkXg+mrc3/qmW2lh/By95d2MQ6M6xCMkkPOOQn6DCSYp0ExUGmMZDlIWZnej0DM98Fjwu2h9zneBC+WpjMTaI6qOxG/wd1jWqff6uWOdy53T8oyvffBnDy5d95m706u7ucybtnY4iJ5aFnKERRgFrCXdZ4eN7d1JkN2hIi9sdR+z1OOFdNtkkYUSmIdMqEEv2afGxB+gTSO0NdoHZw8F7Wbki+A0iQWENjI6yBCO0JJu7skZZugXo0jLyAzNc+93qIEhIzmQ7SprJjYy3IfQTr7sfMBhXZTBo+3jMgbYvnCrr5KbYzw3+qsdXPVi6EdoI+WCj/rKDeAh28dLqcF7WY4zBzniyYOdmbqxqqb8wkC0U6CX3eb44mZ3cuXn7n75dZ8FGcebYcuy2+8Bb2y+sa1Qwn7jBllcABk5h6ynkPrZO0gcxuHlONCiXBkJsFV1rQoD5RrR/4YQyID4QKFoLyyE6AxOntCdfVBpbopZ7RTA1IZZ29gqd4OdXOrm42DhJyaEyR/owMyolmYbikLHo5XPkmuoroMJqrYJpQRQk/Lh0yhS2NstgvC2L9klU8LDqn2k0Fsc9giaRrJiwg/eXL3ZrLRGfNMRmvk9waTcML4W5LbDIUYZezRptVyEG1HhDQtpY/wrIqpIZj36RpbxoQK4665pd/vt6+aN33bxVbvT0x/dHB9v1nZGq/cAlpXtFA846INVUzYoHJNkJaClSGKJjyLnRzCPOprAg0xQgsXJmsWCiIB0lrohma59zqDxXRn9mqTRNqZkax5GibggyUbbeQfv2NdsRjjv3lNdmcnzOMR2xqK8WdilF6E9WpdhuRHpXVswEmTJb2v7MyhAe2UsIsIT3mC25zBu6LqXmIWMFBbfauXwKT9gEp6Hr/EFs0EwJlwYwws0mzV90PpuJXskRvkJ2mDkolgxyVcLysSsf2a16ERd1zr3P94sJ1d/7I3fdviq229/xabKOLcjHxZU7npaq3Zal/mrdmdnJ22ZMJkKeKQjgybrp1+CHGSnGAaUNAlCY13HXKU5PEsbSvBYaktJR8iX6BfRR9R50utW6RenN4foODzzLCidhqf0VuPgqLRijY6tJUkoZvs5LVzjh0IyMNhnyYh7zCEFWpASClWScjPLZNOOmL7N8pnXEWSLbbWh8pBMBcFXXrKXk1So0DRmZpKw/2DEslM8ERp99a54K50XmdcIYeXQDhOLF+oM6oGgsy0I9OHNFBMxM9BwBFuX/R6U5ezsZLfZfVVt5V1Pu72zEJ0CqPOD219R5jf97Qu/uuzOX745OtysS9kF7gD2ofkqb8iYreXAXxH+c4aisE1uqq8eCdyITRuGJt5eSZqR/hVa+R5yAVmEwcxMJ8QGYgA+2qsXXSLiaNvo8wsaZt27UpK+sOChH+mdvdG9xK9h+wUHUN2LebcnUxaYs1rcPq3roAYFQ4n74UDYSMagjEDQVAhzQUQmCWXh5woXT8AHwfIm+0LIhzL3whhQ++wrGlKTmpKRZHRhXxPapNhlEI9o/h1Iyb3dwfHhZt2ef9ubv+Vhb60yzXN/pu3gs071hbe8pWyOtlf/03x84bbl9GQ3TfPGwVmvhdkycGdilh8qFW4RR9USehbpaRgq1OWdJyLW7iFRJOgCp5QcV+YMbM40puKQLBGWRg8tWURGMRAIVW5SPyX5mIHwrK/Q5Gt9iM71NdsyvXsG/dHWgzwhwdDTR21PVaUzp8RGcrJ1RIpubJoUAQvsEpX9CtVzb/yU+i20ytl/lISBtnCyEPf/WuM6UWYhsYUZUQqxZhQEBBiUQOJ90uch+mTnFlBd/XBzezHQda1eXkHK83E4Wpfd5ujiZnd2cvfp5sKnP/3pZXfXS9rZwA8BAUjB611vKes9d05n67r5irLdnk3zphasCGM4St5ZQHW2arZAB9peLZbhyCgUTAJTLDYqCRKZhowxdtWlxjxYCZgNZ+xH4JqQuAvhNmtFJsWbEufOgojoN8PlkP8erQbMtrVAGd7ISsUMhZ+ETgCQMIuBj7DeR2iXcxA8YcinP43SmkPgFABNiJmND3SaRN0yK40sNvWfKHtp20ErRmrMB2naltCJKY7Mh92gl4AIzN6w39XzFH3c2vMDY5OzGs1uKY3be3QYqCkZ52neJ8DQTWuQ+n54LGwdDei2rE1W6z5/m/krqgxXWR4J/zUUgEwFXnjHelCTg5az86/aHB9tqlMB1a0dvvSFGoLiPFXQhcDbIEyTtb7PrZ3wadR4BRvDSm8QjVz0z9viJIaSzAzaboeM/jbEnOeFwlfKhNDyjOhRZlhxmLjPshjNrJjWYNFzlJAQS9cJJwYEpL4r23xHZvEh9GkMDYOPL68vp9Wc3UpPAmkNaZnXuotryHNEJNFBpGhoSiAOYr1O7bRTnWv52LAmH5TJNAH5Q4xzUvZlRa+Pm/4RH4Wruz2bnwSFjp67EfB9H1PUKOUW+BTLFQEO2uXOSbkxarKu067K6u7s/Ktq0k+V4RH0p6qv+ZleeMe6efWd0/aZX3/1nx5cuvDS7eUr22meDzoPcXvaxeNjFTyM1Zs+GAS10WXAHFAgRAYGMCy9ng2BaOS0tDPkUrsCsEGnZ2y9RabmACS5liYeSQPqDko/Ls2tquNns7zExGGSYsKh7cdOvFBI0dsVmuKpD9EJamNjCCJBYOtHEiZrMfhQywqJAbQkec8QIgPS4YDeMbiJcsmfMSqI6lzDuKA/cUrBY+BLjOUKZ1ju/3COSyqvfYlGJdBcO8wnbHcJIHppWdbt4aWLB9srJ//sDd968cur8L/6zub139vEjyWnDXvc8TfL9OPlNy5st7f8+83xhWfvTq7spmmzsSOjkX8PJZarC3NcGqhs35NkO0mCduhaHXMF9NNQpTsVbTVf0lzMS4YUh9LaN8U1UC8AITciHezQtDlE1mBgb068WFk1yJBQ+MatVUzw4cyzlGq7DmiQcl3QcEudDsJqF6IfJNGlQdaPsTyByZ2amEjhaMLp5w/3+jfzCqmhLDsTAwIea/INdO1Mni02IJ2XCO8OlDRlPZjex1Jv3A/jlnjQnThlXXe7gwuXNsvZ6eun99/7OX/o4x99cuff1Fzra3z2TwGcYuudpZTX3/mYK8v58iXr2dl7NocXN2tZ2loB27pbNavv6ErzOeDWMEzYFYashDlLIvjXQmgeGv/nxdLAt5NPfPZm8NKb50THZZNzSqMMwsIYt7+Md5kRAfiwfiLKHi+lM7+y9dICqTj8kmAxEEGYmwIuRnZSS6LUynomZUPjr6XXDqcbsJy0M094yKdnnXDy/DYS3f50Vsnit2wxo/7ljxTNtNWrWHfA9a2h1bQrEbIFvQT4kdyAST2e/OZi7dM6SjfiJLnQvbyDliOa2J54UAtcJFX4q0wu2/P3nM+7L3n9//GYK1VmP5bwh3H5mJ9XrJvykmn3rK/78DPKwfWvmuf5lt32bDdN00b2aUcHebboVpzjsdHiUFyhoQfKBFAsJ1rbNWiIx/dwwDW7KRk8zbr4oQixTwPytCNPT4Jwr6lfVjAQCdEmAww1RwERaK5B7DmnWxskyAbP0IczKdFsSEaJyjhK6POCuzThgQ3mj6/R3zNm6SPkjUinfaeoDRPd58FAO3JWWb+ZJ6vmmHpuHEskdfHXsgIDRF6M1t4oGbxGNjZcziA92nkf33PzXTlV6Z8Pqn9u+fD5+emLfunbbngTZLU8hM/HRgD4vGTa1S2E3vBtt7xpu7v6Reu6fnQ+ON6sS101iPaq6JjVSEJCgmn9VCsgzO+EwhxcmCEKPzvpQoxXCWbQlTYW5fQis3SsH6ldKW/M/+Ifi7UTtKQXnHUjowcPOCx6jewQXuIlA/7eNLINPThpqwk9UsBgM3QUf/whUoBxCa0ZXEoUEkZmZeMoBoQNZZCFS0Gajj7eBv3GOQcE1fO23KFvaZrj489PmoonyE30oOlinDINxjz/NvbuFV3kx54HvVUegTG0Zy9DkJZdlcEyrR/dbq9+URX+238Lwv9bUwA1S/Al0646Ft788oe95vzkyhesZbl3PrqwKcuyDZtt6sm8vCVXiAOj86agOUwUiR0cRSa8EGzS4kYcHInM3K0IRf8TpsYwuAcfzMWjEZjD6jYVFRVPni9mjrBLPh1xXcLoBHSLLMQqBUyBRkSLTcajIUdWIEnJ2fSHFCdq0lRlOUUnOKWt7oA4TFj7hCRpTw5X0pQxFgQJNNqEUVDraHtWornqWO70Ih+fFYdSPjNFr5JWimhDBdfq9UzC/Cb6xaSBkZPmEqf5cFO9vp0eK1xj42XZbg4v1an4vedXzr6gymSVzSqj5bfw+S0pgPqpEYGmBP7Ow16znpz+d2XZvevgwsWDdbdugZ8M7uQFKcZXbilAAXSMwIExDZgOLGwuBfU/5HmtbwQBofKcXKGpwnr2chPTWwvy8lxjZqQlcz+C6BozBUeklmX3gHAIM3jv6wnO0aPK2zujXUAC2fegEMh+u2gxkjDcoWEqX03G7CyM6+EvllUii/kkYjOoDY2pqeza8Lohhxk8n67EnvS7NbWwnC3E6gIBPAikjN0nBG29GnV8YUOnKLx7tKu07jzUAVBHh0Hl4h9TMuwnwf4CbEByn8mYVuGvMrdu31Vl8M1/57om/FU2y2/x02OUh/hBhU/7miuPOz7e/MDm6Oi5u5OT7VrWTeVcEAOiES2PCrXFdPt8cZfDflWfb/sE9nXgpC+FiIIkm3g1ZOP3VIpS2JuRPuZj8GHO3nDsjWgMyOCCaGNtRj8M9KDRab7vLBTrZponn0H+gHIYk9zHSCPyy9j1lAEHaeK+akecqcnUAbm4Qe98C0I33fZt3yd3MOmffJP7uhqW5GuEKnkazgiIhD6jUPbnDKmZypR/qsOVlJXBjcyQTTXtDi5dPNidnv3CfLr7Y6//9kvv/u0K/28LAeBTK6zzjXu+/dK7d5c//KL17Pz7Dy5eOJiq2ap+gQCHs8jBK50MbugvWQmaNiDX3LS+kh9W0IY1zMVdz4PZvG5HGFwz3gV7uB0jiEIpnvau3XYLg3bzQ+Kd13NZWDslMetMIk2D8GxILwZ5r6HbLcpBSiRuH8cGx1MnQ+SF0bqBIAW32L3IxkeuwyjkfP+MvH1s6eTdoUDTRb5pSC03s4MWpZu2BactCXtImY6JQPa8+XjyMmZPk7Td4S3xx1VvlhLmg5qEVw3rwcWLB8vJ+fdXmavCX2Xwtyv8iSK/zQ9tMPBpLzv5K9M8/52yOTzanV2tjdpM06Q7KcO6pYUvYWLpjeqm3iUOhMD3egXCj/k6HJHJQ0ueaLcuMRlxZEx6lOFJSgnTpK64jd5nDdjSd+sAjAv6jVL4GztGs1ebWXG/dceUKaEKC9cQG6a5lk1v2PztlVIfLy2MyiX6dWPRl2s+Hl69FM06IUQKsVFyVaRxGbSLHc5O4c5q4W408kmpxKSx0D99KEbACsX324m9u4PjSwfr7vxsWZavvvtbLvy99kja3OP3RwFIY6dyR5lqY5719ZefM20Ovms6PnrO7uppi1HWRURsNIy0adGJWxZwQqYYFm2QOJIfwd+LDOadJbCcn2dqmPeVBpiCiN5t34IaBfTa23tsTUvPBGbwV1q5bTLFoVESBlYgQkttp1qYrOjcN+JS4gZUtz6xBTJg7Pg9bJ+uUxM44my6E6YkiiKs0+yzGGcKRcXCQkQlJyK6UvB68sQlVpVVPmlvmpLwI2aYAkRglNobrshmapjgdCY4GnyhqoBb6v282WyOj8r29Ox10276yje8/Oh1IvitxqG6/T2ZAsTPtGLtwBteft3rTua3feb56ekdZZ6v1Owk3ZLEvJO8B5y66JzOwN+mlRlOMhx0B2D3LlkuwM6cI45QEg8yL2k2VrMRrTMba3YYKOmICwaK5Fx33Ns/AMTtVI/8ZEuk97ABpP1moYoTL+NTMjetXIWhcM5ZeM2E3EXHEQG1jVKiR9vDhSXQGSEl3cuY2dyp5Nx0FysLOfWdokxBiNXyo0fmT7DY5toJvxVNjGXN6wbRMySlX6xSfYohT+qiJ9DUaO6DJDy57NZ1XQ4uXNys03xle3p6x9l89JlV+D23/79c+EMXf8c+BEue+bLTp2+m6ZunzeGX1pp2p1ert2OtyUP1fu7B3sMOQEkKle2DVtGsdjY2rhvorIPDPRkg8JsjgoACbDaTk5McNXjPKCmErGrof17+4LwULZHSw2PJjERyGIzbnDL2GFqDXqpAee4NBdCtB7AIhDdyhG76cbFSzRHG7w0REZfXZWhqDyk9mSuGE3iUzLXmMRjWew2EF7G+bZnPabqiXP0hcFhEZO139Z1Nm+OLc9UVu935D63r+k1v/Jbjt/xOQf7ffQXQPuv0wjuKOSdu+8bzPzCt69fNB4cvqiZvd3pS+7wt07qxmaVainZee54gMZYlvvXBiIS1N/u0w5hkzBl+3vYI/8ya6HLOFN8Vhw7lbydXMRQU123z81B29GuYcLXzqPzawM4G0ROLB0BCQmEMqW3BwhooJkyrWijQrakNjuYCpA0DolKBpR8IKe/IbCNkYdAuR9GnIuQ8zPnFcfoVm8MIzRcR+di4cp+chqaBbcC6ub+QwyBjV5d0i/JU0ilL3FBxY9RMi3k3lelgPj4WflrOX7Uu07fd/bcOf6o+KV7+svudsvq/BwpAP1Vj1Y9qrdu+/uQLps38l0pZv2BzfDQtZ7uy7M52Sqi5YQPmq2kg1sNlXg4xBdqupW4xwchOeFYXqdhrI3ObkkYs/ZSYmWyeKyYIrceJYx4ynH5gyHiElZfiwhcOqaBIID8NKBmvR8vviCF+BvgoWHL2tdg7SZAYpVloM2XhmRLNTi7QO+ePoAeDhUts2V2JcYnRKZr7ihH2fICJ/FEu+NZZUmr7PoD+Ztmzf4PGXcutlGgyMc/Hm+l4LsvJWX3gJ9Z1+ft3/60LPzGSn9+Nz++uAtBP3Wj0rlfUYKdIxLPuOHvOtG7+9Lpu/+h8dPSYSqRluyvr7ry6PBdRA63zpBG8ycZGjNfCFJWYOCzwMk40qBtNPcrrLZVB45RyE+xNmCerwJkeYEuA1W39JIg5OlgXY6Zkyds9UoBhmTUpqj29a9cM2YDZ0XbXoG75KLEl1RtonpRT6FM31xmQG8tf0/2oJPi6Oz+tDzZmeEiz94woq2FHhg7mc+I+cQOcIO4I5mXkhqoAEdd1nZoQr9O6ztPB0Twf1k07Kt+fv3edN/9yWnf/6A13Hr1O2znd/pIy5w08/5tVAEER1E1HVaM9+2vWh62HZ59XyvSlS1lfuDk8elSp3oFGmKWsy1nNRV1kEVRzNLVsd5o0lLxKBHCRV03h/ECzXsR7nIwEC80wuiPQ4LDGkKzESzlRLgQe0NOEKq3xTIkfwbdh8pdgL1ASMiapfobVWc3laXQvmINPak+coZH1JOWTP1Eo49Li6RpKygXOMyndGCD6EVNzaVJE9XuEYbX7NHUyBONhUN6HICqn4POrtqs+23y2PgOc5nlzVObNXKrnq66hXc7P31dKeVUp0w/OZw/8u9d/+y33tafvWOe6bffvheBHGv1ef2pHn14mzluupxOfL9vnlrK8sKzTZyzr8rSprB8/H16w4wmaYliqH7EGFapHVQCX9YQk1vkw6Hj5jkQZdmxROBFTANb/nqUvyoWBrB1QmsKH/LFwZ1goMwpxxrllQAH0y6YRAREl0YFFHNDAG/+xh4uds4xo3OEW0ZYlD1FFwYKSAIucjUOuPf04idCfjHA/UIl2bc4lejRkgIlCveR/tiXFoD0QWGPSaSN/Z2zQUcpydlKf/M15mu4p0/zz5aC8+nA5+IV6GC/qqMk8bduu30Wo/1+XAsCnQp279HzCtIjhU7/2ozcfzpeesh7MT12250+b5/KkZV0fO0/zw8u6PqyU9VIp5QjpdA6FefhDZa71Q4hIONoNn4tJZ0E5Bj6yUyH1GU/yx+e78SpPp/Ve/DOYmMQ4N4SURQltSjXtsc3jeqwkViSWadiLnucO+NSMe8Gt87n4gBHDRYLxrDySehz3Avikn3AVtDpEFqPisigTNSqkocshDWdlmq6UabpvXdd7p1LeU0p5e5nne6bt9Mvny5W3vvlv3/QRrrWt2qt8f7tPjX8/Pv9fGVtCd8sIyP8AAAAASUVORK5CYII=\";var{TabPane:Pn}=s.Tabs;function li(e,t=!0){let n=(0,r.useRef)(0);(0,r.useEffect)(()=>{if(!t)return;let o=document.querySelector(e);if(!o)return;let a=!1,i=!1,l=0,u=0,f=0,c=0,m=0,d=b=>{o.scrollLeft=b,n.current=o.scrollLeft},g=(b=n.current)=>{window.cancelAnimationFrame(f),window.cancelAnimationFrame(c),window.clearTimeout(m),f=window.requestAnimationFrame(()=>{d(b),c=window.requestAnimationFrame(()=>{d(b),m=window.setTimeout(()=>{d(b)},80)})})},p=()=>{a&&(a=!1,o.classList.remove(\"is-dragging\"),window.setTimeout(()=>{i=!1},0))},v=b=>{b.pointerType===\"mouse\"&&b.button!==0||o.scrollWidth<=o.clientWidth||(a=!0,i=!1,l=b.clientX,u=o.scrollLeft,o.classList.add(\"is-dragging\"))},x=b=>{if(!a)return;let I=b.clientX-l;Math.abs(I)<4||(i=!0,o.scrollLeft=u-I,n.current=o.scrollLeft,b.preventDefault())},O=b=>{let I=o.scrollLeft;if(i){b.preventDefault(),b.stopPropagation();return}g(I)},N=()=>{n.current=o.scrollLeft};return g(),o.addEventListener(\"pointerdown\",v),o.addEventListener(\"click\",O,!0),o.addEventListener(\"scroll\",N),window.addEventListener(\"pointermove\",x,{passive:!1}),window.addEventListener(\"pointerup\",p),window.addEventListener(\"pointercancel\",p),()=>{window.cancelAnimationFrame(f),window.cancelAnimationFrame(c),window.clearTimeout(m),o.removeEventListener(\"pointerdown\",v),o.removeEventListener(\"click\",O,!0),o.removeEventListener(\"scroll\",N),window.removeEventListener(\"pointermove\",x),window.removeEventListener(\"pointerup\",p),window.removeEventListener(\"pointercancel\",p),o.classList.remove(\"is-dragging\")}},[e,t])}function Rl(){let[e,t]=(0,r.useState)(\"quark\");li(\".account-tabs__nav-scroll\");let n=[{key:\"quark\",label:\"\\u5938\\u514B\",content:r.default.createElement(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(pd,null)},{key:\"xunlei\",label:\"\\u8FC5\\u96F7\",content:r.default.createElement(cd,null)},{key:\"yidong\",label:\"\\u79FB\\u52A8\",content:r.default.createElement(fd,null)},{key:\"tianyi\",label:\"\\u5929\\u7FFC\",content:r.default.createElement(dd,{api:\"/tianyi/account\"})},{key:\"123\",label:\"123\",content:r.default.createElement(ud,null)}],o=n.find(a=>a.key===e)||n[0];return r.default.createElement(\"div\",{className:\"account-tabs\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"\\u7F51\\u76D8\\u767B\\u5F55\\u65B9\\u5F0F\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-list\"},n.map(a=>{let i=a.key===o.key;return r.default.createElement(\"button\",{key:a.key,id:\"account-tab-\".concat(a.key),type:\"button\",role:\"tab\",\"aria-selected\":i,\"aria-controls\":\"account-panel-\".concat(a.key),className:\"account-tabs__tab\".concat(i?\" account-tabs__tab--active\":\"\"),onClick:()=>t(a.key)},a.label)}))),r.default.createElement(\"div\",{id:\"account-panel-\".concat(o.key),role:\"tabpanel\",\"aria-labelledby\":\"account-tab-\".concat(o.key),className:\"account-tabs__panel\"},o.content))}var E=bt.default.create({baseURL:\"/website\"}),Gt=(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);E.interceptors.response.use(function(e){var t;if(e.data.code!==0){let n=Gt((t=e.data.message)!=null?t:e.data);s.message.error(n);let o=new Error(n);throw o.handled=!0,o}else return e.data.data},function(e){return Promise.reject(e)});s.message.config({top:\"40%\"});var ed=\"https://o.alicdn.com/captcha-frontend/aliyunCaptcha/AliyunCaptcha.js\",Nr=\"yidong-aliyun-captcha-button\",td={2:{prefix:\"7elm7k\",SceneId:\"1rmw421p\"},3:{prefix:\"7elm7k\",SceneId:\"kcx16g7r\"}},nd=(e,t)=>new Promise((n,o)=>{if(document.getElementById(t)){n();return}let a=document.createElement(\"script\");a.id=t,a.src=e,a.async=!0,a.onload=()=>n(),a.onerror=()=>o(new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u52A0\\u8F7D\\u5931\\u8D25\")),document.head.appendChild(a)}),rd=()=>{let e=document.getElementById(Nr);return e||(e=document.createElement(\"button\"),e.id=Nr,e.type=\"button\",e.style.cssText=\"position:absolute;top:-50px;left:-50px;opacity:0;pointer-events:none;\",document.body.appendChild(e)),e},od=()=>{let e=String(navigator.language||\"\").toLowerCase();return e.includes(\"en\")?\"en\":e.includes(\"tw\")||e.includes(\"hk\")?\"tw\":\"cn\"},ad=(e=\"\")=>{try{return window.btoa(e)}catch(t){return window.btoa(unescape(encodeURIComponent(e)))}},id=()=>{let e=navigator.userAgent||\"\",t=e.match(/Android\\s+([\\d.]+)[^;)]*;\\s*([^)]+?)(?:\\s+Build|;|\\))/i),n=e.match(/(iPhone|iPad|iPod);.*?OS\\s+([\\d_]+)/i),o=e.match(/(Edg|Chrome|Firefox|Safari|Opera)\\/([\\d.]+)/i),a=navigator.platform||\"Web\",i=o?\"\".concat(o[1],\" \").concat(o[2]):e.slice(0,120);t?(a=t[2].trim(),i=\"Android \".concat(t[1])):n&&(a=n[1],i=\"iOS \".concat(n[2].replace(/_/g,\".\")));let l=\"\".concat(window.screen.width,\"X\").concat(window.screen.height);return[\"\",\"\",\"3\",\"7.17.7\",a,a,\"\",\"\",i,l,\"\",\"\",\"\",ad(a),\"\"].join(\"|\")},sd=async e=>{let t=td[Number(e)];if(!t)throw new Error(\"\\u6682\\u4E0D\\u652F\\u6301\\u5F53\\u524D\\u6ED1\\u5757\\u9A8C\\u8BC1\\u7801\\u7C7B\\u578B\\uFF1A\".concat(e||\"unknown\"));if(await nd(ed,\"yidong-aliyun-captcha-script\"),rd(),typeof window.initAliyunCaptcha!=\"function\")throw new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u521D\\u59CB\\u5316\\u5931\\u8D25\");return window.AliyunCaptchaConfig={region:\"cn\",prefix:t.prefix},new Promise((n,o)=>{let a=!1;window.initAliyunCaptcha({SceneId:t.SceneId,mode:\"popup\",button:\"#\".concat(Nr),language:od(),showErrorTip:!1,slideStyle:{width:360,height:40},success:i=>{a=!0,n(i)},error:i=>{a=!0,o(i instanceof Error?i:new Error(Gt(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)}})})},Q={IDLE:\"idle\",LOADING:\"loading\",WAITING:\"waiting\",SCANNED:\"scanned\",SUCCESS:\"success\",EXPIRED:\"expired\",ERROR:\"error\"},qt={NEW:\"NEW\",SCANNED:\"SCANNED\",CONFIRMED:\"CONFIRMED\",EXPIRED:\"EXPIRED\",CANCELED:\"CANCELED\"},ld={[Q.IDLE]:\"READY\",[Q.LOADING]:\"LOADING\",[Q.WAITING]:\"SCAN ME\",[Q.SCANNED]:\"CONFIRM\",[Q.SUCCESS]:\"SUCCESS\",[Q.EXPIRED]:\"EXPIRED\",[Q.ERROR]:\"ERROR\"};function st({qrcodeUrl:e,cacheUrl:t,checkStatusUrl:n}){let[o,a]=r.default.useState(\"\"),[i,l]=r.default.useState(Q.IDLE),[u,f]=r.default.useState(Ht),c=(0,r.useRef)(null),m=(0,r.useRef)(null),d=(0,r.useCallback)(()=>{c.current&&(clearInterval(c.current),c.current=null),m.current&&(clearTimeout(m.current),m.current=null)},[]),g=(0,r.useCallback)(b=>{d(),c.current=setInterval(async()=>{try{let I=await bt.default.post(\"/website\".concat(n),{sessionKey:b});if(I.data.code===0&&I.data.data){let{status:T,cookie:D}=I.data.data;switch(T){case qt.CONFIRMED:d(),a(D),l(Q.SUCCESS),await E.put(t,{cookie:D}),s.message.success(\"\\u626B\\u7801\\u6210\\u529F\\uFF0C\\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\"),setTimeout(()=>{f(Ht),l(Q.IDLE)},2e3);break;case qt.SCANNED:l(Q.SCANNED);break;case qt.EXPIRED:case qt.CANCELED:d(),f(Ht),l(Q.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\");break;case qt.NEW:default:break}}}catch(I){}},2e3),m.current=setTimeout(()=>{d(),f(Ht),l(Q.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!==Q.LOADING){d(),l(Q.LOADING);try{let b=await bt.default.get(\"/website\".concat(e,\"?t=\").concat(Date.now()),{responseType:\"blob\"}),I=b.headers[\"x-session-key\"];if(I){let T=URL.createObjectURL(b.data);f(T),l(Q.WAITING),g(I)}else throw new Error(\"\\u672A\\u83B7\\u53D6\\u5230 sessionKey\")}catch(b){console.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25:\",b),l(Q.ERROR),s.message.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25\")}}},[e,i,d,g]),v=(0,r.useCallback)(b=>{if(!b){s.message.warning(\"\\u6CA1\\u6709\\u53EF\\u590D\\u5236\\u7684\\u5185\\u5BB9\");return}(0,Mr.default)(b),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")},[]),x=(0,r.useCallback)(async()=>{let b=o!=null?o:\"\";await E.put(t,{cookie:b}),s.message.success(b?\"\\u5165\\u5E93\\u6210\\u529F\":\"\\u5DF2\\u6E05\\u7A7A\\u5165\\u5E93\\u5185\\u5BB9\")},[t,o]);(0,r.useEffect)(()=>(E.get(t).then(b=>{a(b||\"\")}),()=>d()),[t,d]);let O=()=>{switch(i){case Q.SUCCESS:return\"#22c55e\";case Q.ERROR:case Q.EXPIRED:return\"#ef4444\";default:return\"#3b82f6\"}},N=i===Q.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(N?\"qrcode-image--loading\":\"\")}),N&&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===Q.WAITING||i===Q.SCANNED?\"status-dot--pulse\":\"\"),style:{backgroundColor:O()}}),r.default.createElement(\"span\",{className:\"status-text\"},ld[i]))),r.default.createElement(\"div\",{className:\"cookie-result-wrapper\"},r.default.createElement(\"textarea\",{className:\"cookie-result\",value:o,onChange:b=>a(b.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:x},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(Ke,{className:\"btn-icon\"}))))}function dd({api:e,children:t}){let[n]=s.Form.useForm(),o=async()=>{try{let a=await n.validateFields();await E.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)(()=>{E.get(e).then(a=>{n.setFieldsValue(a)})},[]),r.default.createElement(s.Form,{form:n,className:\"ios-form\",layout:\"vertical\",initialValues:{useDirectDownload:!0}},r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,null)),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,null)),t,r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\")))}function ud(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),o=(0,r.useCallback)(async()=>{let g=await E.get(\"/pan123/account\");e.setFieldsValue(g||{})},[e]);(0,r.useEffect)(()=>{o().catch(g=>{console.error(g),s.message.error(\"\\u8BFB\\u53D6\\u5931\\u8D25\\uFF1A\".concat((g==null?void 0:g.message)||g))})},[o]);let a=async({silent:g=!1}={})=>{let p=e.getFieldsValue(!0);await E.put(\"/pan123/account\",p),g||s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},i=(g,p,v,x=!1)=>{if(!g||g.closed)return;let O=String(p||\"\").replace(/[&<>\"']/g,b=>({\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#39;\"})[b]),N=String(v||\"\").replace(/[&<>\"']/g,b=>({\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#39;\"})[b]);try{g.document.open(),g.document.write('\\n <!doctype html>\\n <html lang=\"zh-CN\">\\n <head>\\n <meta charset=\"utf-8\">\\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1, viewport-fit=cover\">\\n <title>'.concat(O,'</title>\\n <style>\\n html, body { margin: 0; min-height: 100vh; background: #f5f7fc; color: #111827; font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif; }\\n @supports (min-height: 100dvh) { html, body { min-height: 100dvh; } }\\n body { display: flex; align-items: center; justify-content: center; padding: 24px; box-sizing: border-box; }\\n .panel { width: min(520px, 100%); background: #fff; border-radius: 16px; box-shadow: 0 18px 50px rgba(15, 23, 42, .10); padding: 34px 24px; text-align: center; }\\n h1 { margin: 0 0 14px; font-size: 22px; line-height: 1.35; font-weight: 700; color: ').concat(x?\"#b91c1c\":\"#111827\",'; }\\n p { margin: 0; color: #4b5563; font-size: 15px; line-height: 1.7; white-space: pre-wrap; word-break: break-word; }\\n </style>\\n </head>\\n <body>\\n <main class=\"panel\">\\n <h1>').concat(O,\"</h1>\\n <p>\").concat(N,\"</p>\\n </main>\\n </body>\\n </html>\\n \")),g.document.close()}catch(b){console.warn(\"\\u66F4\\u65B0\\u6388\\u6743\\u9875\\u5931\\u8D25:\",b)}},l=g=>{let p=window.open(g,\"_blank\");return p||s.message.warning(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u6388\\u6743\\u9875\\uFF0C\\u8BF7\\u624B\\u52A8\\u6253\\u5F00\\u6388\\u6743\\u94FE\\u63A5\"),p},u=g=>new Promise(p=>window.setTimeout(p,g)),f=async()=>{for(let p=0;p<30;p+=1){let v=await E.get(\"/pan123/oauth/litepan/status/latest\");if(v.status===\"success\")return v;if(v.status===\"error\")throw new Error(v.error||\"LitePan OAuth \\u8BA4\\u8BC1\\u5931\\u8D25\");await u(p<3?2e3:p<10?3e3:4e3)}throw new Error(\"LitePan OAuth \\u8BA4\\u8BC1\\u8D85\\u65F6\\uFF0C\\u8BF7\\u68C0\\u67E5\\u662F\\u5426\\u5DF2\\u5B8C\\u6210\\u6388\\u6743\")},c=async()=>{n(\"openlist\");let g=null;try{let p=String(e.getFieldValue(\"refreshToken\")||\"\").trim();if(!p&&(g=l(new URL(\"/website/pan123/oauth/openlist/redirect\",window.location.origin).toString()),!g))throw new Error(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u6388\\u6743\\u9875\\uFF0C\\u8BF7\\u5141\\u8BB8\\u5F39\\u51FA\\u7A97\\u53E3\\u540E\\u91CD\\u8BD5\");if(await a({silent:!0}),p){await E.post(\"/pan123/oauth/openlist/refresh\"),await o(),s.message.success(\"OpenList Token \\u5DF2\\u5237\\u65B0\");return}s.message.info(\"\\u8BF7\\u5728\\u6253\\u5F00\\u7684\\u6388\\u6743\\u9875\\u5B8C\\u6210 123 \\u6388\\u6743\")}catch(p){console.error(p),i(g,\"\\u6388\\u6743\\u542F\\u52A8\\u5931\\u8D25\",(p==null?void 0:p.message)||String(p),!0),p!=null&&p.handled||s.message.error(\"\\u83B7\\u53D6\\u5931\\u8D25\\uFF1A\".concat((p==null?void 0:p.message)||p))}finally{n(\"\")}},m=async()=>{n(\"litepan\");let g=null;try{let p=String(e.getFieldValue(\"refreshToken\")||\"\").trim();if(!p&&(g=l(new URL(\"/website/pan123/oauth/litepan/redirect\",window.location.origin).toString()),!g))throw new Error(\"\\u6D4F\\u89C8\\u5668\\u62E6\\u622A\\u4E86\\u6388\\u6743\\u9875\\uFF0C\\u8BF7\\u5141\\u8BB8\\u5F39\\u51FA\\u7A97\\u53E3\\u540E\\u91CD\\u8BD5\");if(await a({silent:!0}),p){await E.post(\"/pan123/oauth/litepan/refresh\"),await o(),s.message.success(\"LitePan Token \\u5DF2\\u5237\\u65B0\");return}s.message.info(\"\\u8BF7\\u5728\\u6253\\u5F00\\u7684\\u6388\\u6743\\u9875\\u5B8C\\u6210 123 \\u6388\\u6743\"),await f(),await o(),s.message.success(\"LitePan Token \\u5DF2\\u5199\\u5165\")}catch(p){console.error(p),i(g,\"\\u6388\\u6743\\u542F\\u52A8\\u5931\\u8D25\",(p==null?void 0:p.message)||String(p),!0),p!=null&&p.handled||s.message.error(\"\\u83B7\\u53D6\\u5931\\u8D25\\uFF1A\".concat((p==null?void 0:p.message)||p))}finally{n(\"\")}},d=!!t;return r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\",initialValues:{useDirectDownload:!0}},r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,null)),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,null)),r.default.createElement(s.Form.Item,{label:\"access_token\",name:\"accessToken\"},r.default.createElement(s.Input.Password,{autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"refresh_token\",name:\"refreshToken\"},r.default.createElement(s.Input.Password,{autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u514D\\u767B\\u5F55\",name:\"useDirectDownload\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons action-buttons--three\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary auth-source-btn\",onClick:c,disabled:d,title:\"OpenList \\u6388\\u6743\"},r.default.createElement(\"img\",{className:\"auth-source-icon\",src:ni,alt:\"\"}),r.default.createElement(\"span\",null,t===\"openlist\"?\"\\u83B7\\u53D6\\u4E2D...\":\"OpenList\")),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary auth-source-btn\",onClick:m,disabled:d,title:\"LitePan \\u6388\\u6743\"},r.default.createElement(\"img\",{className:\"auth-source-icon\",src:ri,alt:\"\"}),r.default.createElement(\"span\",null,t===\"litepan\"?\"\\u83B7\\u53D6\\u4E2D...\":\"LitePan\")),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary action-buttons__full\",onClick:()=>a(),disabled:d},r.default.createElement(Ke,{className:\"btn-icon\"}),r.default.createElement(\"span\",null,\"\\u5165\\u5E93\")))))}function cd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async()=>{let d=await E.get(\"/xunlei/account\");e.setFieldsValue({username:d.username||\"\",password:d.password||\"\"})},[e]),f=async()=>{let d=await e.validateFields([\"username\",\"password\"]);await E.put(\"/xunlei/account\",d),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},c=async()=>{try{a(!0);let d=await e.validateFields([\"username\",\"password\"]);await E.put(\"/xunlei/account\",d),await E.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 E.post(\"/xunlei/verify-code\",{code:t.trim()});else{let g=await e.validateFields([\"username\",\"password\"]);d=await E.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:c,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:f},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(Ke,{className:\"btn-icon\"})))))}function fd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async(d,g)=>{try{s.message.info(\"\\u8BF7\\u5B8C\\u6210\\u6ED1\\u5757\\u9A8C\\u8BC1\");let p=await sd(g);await E.post(\"/yidong/send-code-captcha\",{phone:d,captchaType:g,puzzleVerfycode:p,clientInfo:id()}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(p){console.error(p),(p==null?void 0:p.message)===\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"?s.message.warning(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"):p!=null&&p.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(Gt((p==null?void 0:p.message)||p)))}},[]),f=async()=>{try{let d=await e.validateFields([\"authorization\"]);await E.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))}},c=async()=>{try{a(!0);let d=await e.validateFields([\"phone\"]),g=String(d.phone||\"\").trim(),p=await E.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(Gt((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 E.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(Gt((d==null?void 0:d.message)||d)))}finally{l(!1)}};return(0,r.useEffect)(()=>{E.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:c,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:f},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(Ke,{className:\"btn-icon\"})))))}function pd(){return r.default.createElement(st,{qrcodeUrl:\"/guangyapan/qrcode\",cacheUrl:\"/guangyapan/token\",checkStatusUrl:\"/guangyapan/check-status\"})}function md({visible:e,onCancel:t,onSave:n,panKey:o,panName:a,panPic:i,chunkSize:l,poolSize:u,noSaveMode:f}){let[c]=s.Form.useForm(),m=s.Form.useWatch(\"pic\",c),d=o===\"quark\"||o===\"uc\"||o===\"ali\";(0,r.useEffect)(()=>{e&&c.setFieldsValue({name:a||\"\",pic:i||\"\",chunkSize:l||(o===\"ali\"?128:512),poolSize:u||(o===\"ali\"?20:10),noSaveMode:f===!0})},[e,a,i,l,u,f,c]);let g=async()=>{try{let p=await c.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:c,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 x=String(v||\"\").trim();return!x||/^https?:\\/\\/\\S+$/i.test(x)||/^data:image\\//i.test(x)||/^\\/\\S+/.test(x)?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\"||o===\"uc\")&&r.default.createElement(s.Form.Item,{label:o===\"uc\"?\"\\u514D\\u767B\\u5F55\":\"\\u4E0D\\u8F6C\\u5B58\",name:\"noSaveMode\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0,marginTop:24}},r.default.createElement(\"div\",{className:\"ios-button-group\",style:{justifyContent:\"flex-end\"}},r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary-outline\",onClick:t},\"\\u53D6\\u6D88\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:g},\"\\u4FDD\\u5B58\")))))}var di=e=>{let{attributes:t,listeners:n,setNodeRef:o,transform:a,transition:i,isDragging:l}=Tr({id:e[\"data-row-key\"]}),u=k($(k({},e.style),{transform:Ve.Translate.toString(a),transition:i}),l?{position:\"relative\",zIndex:9999}:{});return r.default.createElement(\"tr\",k($(k({},e),{ref:o,style:u}),t))},ui=({rowKey:e})=>{let{listeners:t,setActivatorNodeRef:n}=Tr({id:e});return r.default.createElement(dr,k({ref:n,className:\"drag-handle\"},t))},Ln=\"https://pan.199333.xyz\",xt=[{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 gd(e){return String(e||\"\").trim().toLowerCase().replace(/[^a-z0-9_-]+/g,\"-\").replace(/^-+|-+$/g,\"\").slice(0,40)}function Lr(){return k({},Pr)}function hd(e){let t=String(e||\"\").trim();return!t||/^https?:\\/\\/\\S+$/i.test(t)||/^data:image\\//i.test(t)||/^\\/\\S+/.test(t)}function Bn(e={}){return String(e.name||\"Emby\").trim()}function xd(e={}){let t=Number(e.movieCount||0),n=Number(e.seriesCount||0);return{movieCount:t,seriesCount:n}}function bd(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon\",viewBox:\"0 0 1024 1024\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"path\",{d:\"M875.690667 414.72H301.738667l576.682666-195.754667c36.181333-11.093333 56.832-49.322667 45.909334-85.674666L909.824 83.626667c-8.704-29.013333-35.84-49.322667-66.218667-49.322667-6.656 0-13.312 1.024-19.626666 2.901333l-0.512 0.170667L127.829333 273.237333C91.648 284.330667 70.997333 322.56 81.92 358.912l14.848 49.664c4.096 13.653333 12.288 25.429333 23.04 34.133333-8.533333 11.434667-13.482667 25.6-13.482667 40.96v436.736c0 38.058667 30.890667 68.949333 68.949334 68.949334h700.416c38.058667 0 68.949333-30.890667 68.949333-68.949334V483.84c0-38.058667-30.890667-69.12-68.949333-69.12z m17.408 69.12v69.290667H690.858667l70.144-86.869334h114.688c9.557333 0.170667 17.408 7.850667 17.408 17.578667z m-717.824-17.408h175.616l-76.970667 76.970667c-2.901333 2.901333-4.949333 6.144-6.144 9.728H157.696v-69.290667c0-9.728 7.850667-17.408 17.578667-17.408z m243.029333 5.290667c1.706667-1.706667 3.072-3.413333 4.096-5.461334H694.613333l-63.829333 79.018667c-1.877333 2.389333-3.413333 4.949333-4.266667 7.68H336.896l81.408-81.237333zM143.189333 322.56l0.512-0.170667L838.997333 86.528c1.536-0.341333 3.072-0.682667 4.608-0.682667 7.68 0 14.506667 5.12 16.725334 12.458667l14.848 49.664c2.730667 9.216-2.56 18.944-11.776 21.674667l-0.512 0.170666L167.424 405.845333c-1.536 0.341333-3.072 0.682667-4.608 0.682667-7.68 0-14.506667-5.12-16.725333-12.458667L131.413333 344.234667c-2.730667-9.216 2.56-18.944 11.776-21.674667z m732.501334 615.424H175.274667c-9.557333 0-17.408-7.850667-17.408-17.408v-315.733333h735.402666v315.733333c-0.170667 9.557333-8.021333 17.408-17.578666 17.408z m0 0\"}))}function yd(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon emby-server-card__stat-icon--series\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"rect\",{x:\"3\",y:\"9\",width:\"18\",height:\"12\",rx:\"2.5\"}),r.default.createElement(\"path\",{d:\"M7.5 3.5 L12 9 L16.5 3.5\"}))}function vd(e={}){let{movieCount:t,seriesCount:n}=xd(e);return!t&&!n?r.default.createElement(\"span\",{className:\"emby-server-card__sync\"},\"\\u5F85\\u540C\\u6B65\"):r.default.createElement(r.default.Fragment,null,r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(t,\" \\u7535\\u5F71\"),\"aria-label\":\"\".concat(t,\" \\u7535\\u5F71\")},r.default.createElement(bd,null),r.default.createElement(\"span\",null,t)),r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(n,\" \\u5267\\u96C6\"),\"aria-label\":\"\".concat(n,\" \\u5267\\u96C6\")},r.default.createElement(yd,null),r.default.createElement(\"span\",null,n)))}function Ir(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 oi=\"nodejs_emby_\",ai=\"nodejs_alist_\";function wd(e=\"\"){let t=String(e||\"\");return t.startsWith(oi)?t.slice(oi.length):\"\"}function Cd(e=\"\"){let t=String(e||\"\");return t.startsWith(ai)?t.slice(ai.length):\"\"}function ci(){return{id:\"alist_\".concat(Date.now()),name:\"\",server:\"\",username:\"\",password:\"\",token:\"\",otpCode:\"\"}}function Br(e={}){let t=String(e.name||\"\").trim();if(t)return t;try{return new URL(e.server).hostname||\"Alist\"}catch(n){return\"Alist\"}}function Dr(e={}){return{id:e.id||\"alist_\".concat(Date.now()),name:Br(e),server:String(e.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(e.username||\"\").trim(),password:String(e.password||\"\"),token:String(e.token||\"\").trim(),otpCode:String(e.otpCode||\"\").trim()}}var Sd=[{key:\"nodejs_muou\",api:\"/muou/urls\",name:\"\\u6728\\u5076\"},{key:\"nodejs_wanou\",api:\"/wanou/urls\",name:\"\\u73A9\\u5076\"},{key:\"nodejs_leijing\",api:\"/leijing/urls\",name:\"\\u96F7\\u9CB8\"},{key:\"nodejs_zhizhen\",api:\"/zhizhen/urls\",name:\"\\u81F3\\u81FB\"},{key:\"nodejs_duoduo\",api:\"/duoduo/urls\",name:\"\\u591A\\u591A\"},{key:\"nodejs_erxiao\",api:\"/erxiao/urls\",name:\"\\u4E8C\\u5C0F\"},{key:\"nodejs_huban\",api:\"/huban/urls\",name:\"\\u864E\\u6591\"},{key:\"nodejs_labi\",api:\"/labi/urls\",name:\"\\u8FA3\\u7B14\"},{key:\"nodejs_ouge\",api:\"/ouge/urls\",name:\"\\u6B27\\u6B4C\"},{key:\"nodejs_xiaoban\",api:\"/xiaoban/urls\",name:\"\\u5C0F\\u73ED\"},{key:\"nodejs_4kzn\",api:\"/4kzn/config\",name:\"\\u6307\\u5357\",type:\"domain\"},{key:\"nodejs_tgchannel\",api:\"/tgchannel/config\",name:\"TG\\u9891\\u9053\",type:\"tg\"},{key:\"nodejs_tgsou\",api:\"/tgsou/config\",name:\"TG\\u641C\",type:\"tg\"},{key:\"nodejs_tgfilebot\",api:\"/tgfilebot/config\",name:\"TGFileBot\",type:\"tgfilebot\"},{key:\"nodejs_pansou\",api:\"/pansou/config\",name:\"PanSou\",type:\"pansou\"},{key:\"nodejs_pinglian\",api:\"/pinglian/config\",name:\"\\u76D8\\u94FE\",type:\"account\"},{key:\"nodejs_guanying\",api:\"/guanying/config\",name:\"\\u89C2\\u5F71\",type:\"domain-cookie\"},{key:\"nodejs_123ypzysq\",api:\"/123ypzysq/config\",name:\"123\\u8D44\\u6E90\\u793E\\u533A\",type:\"domain-cookie\"},{key:\"nodejs_live2vod\",api:\"/live2vod/config\",name:\"\\u76F4\\u64AD\\u8F6C\\u70B9\\u64AD\",type:\"live2vod\"},{key:\"nodejs_emby\",api:\"/emby-spider/setting\",name:\"Emby\\u6E90\",type:\"emby-spider\"},{key:\"nodejs_alist-video\",api:\"/alist-video/setting\",name:\"Alist\",type:\"alist-video\"}],ii=Sd.reduce((e,t)=>(e[t.key]={api:t.api,name:t.name,type:t.type},e),{});function Od({visible:e,onCancel:t,onSave:n,siteName:o}){let[a]=s.Form.useForm(),[i,l]=(0,r.useState)(!1),[u,f]=(0,r.useState)(\"channels\"),[c,m]=(0,r.useState)([]),[d,g]=(0,r.useState)([]),[p,v]=(0,r.useState)(!1),[x,O]=(0,r.useState)([]),[N,b]=(0,r.useState)([]),[I,T]=(0,r.useState)([]),[D,_]=(0,r.useState)(\"\"),[M,z]=(0,r.useState)([]),j=(0,r.useRef)(0),w=()=>{let F=D.trim();if(F){if(c.includes(F)){s.message.warning('\\u9891\\u9053 \"'.concat(F,'\" \\u5DF2\\u5B58\\u5728')),_(\"\");return}m([F,...c]),z([F,...M]),O([F,...x]),_(\"\"),s.message.success('\\u5DF2\\u6DFB\\u52A0\\u9891\\u9053 \"'.concat(F,'\"'))}},S=(F,P)=>{P.stopPropagation(),m(c.filter(H=>H!==F)),O(x.filter(H=>H!==F)),z(M.filter(H=>H!==F)),s.message.success('\\u5DF2\\u5220\\u9664\\u9891\\u9053 \"'.concat(F,'\"'))},G=(0,r.useCallback)(async F=>{if(!F)return null;v(!0);try{let P=await bt.default.get(\"\".concat(F,\"/api/health\"));if(P.data){let H=P.data.channels||[],Y=P.data.plugins||[];return m(H),g(Y),{channels:H,plugins:Y}}return null}catch(P){return console.error(\"\\u83B7\\u53D6 PanSou \\u9009\\u9879\\u5931\\u8D25:\",P),null}finally{v(!1)}},[]);(0,r.useEffect)(()=>{let F=++j.current;if(!e){l(!1),_(\"\");return}l(!0),E.get(\"/pansou/config\").then(async P=>{if(j.current!==F)return;let H=P.url||Ln;a.setFieldsValue({name:o,url:H});let Y=await G(H);P.channels&&P.channels.length>0?O(P.channels):Y!=null&&Y.channels&&O(Y.channels),P.plugins&&P.plugins.length>0?b(P.plugins):Y!=null&&Y.plugins&&b(Y.plugins),P.cloudTypes&&P.cloudTypes.length>0?T(P.cloudTypes):T(xt.map(he=>he.key))}).catch(P=>{j.current===F&&(console.error(P),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{j.current===F&&l(!1)})},[e,o,a,G]);let q=(0,r.useCallback)(F=>{let P=F.target.value||Ln;G(P)},[G]),L=async()=>{let F;try{F=await a.validateFields()}catch(P){return}try{l(!0);let P={url:F.url||\"\",channels:x,plugins:N,cloudTypes:I};await E.put(\"/pansou/config\",P),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(F.name),t()}catch(P){console.error(P),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((P==null?void 0:P.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{l(!1)}},K=async()=>{try{l(!0),await E.delete(\"/pansou/config\");let P=(await E.get(\"/pansou/config\")).url||Ln;a.setFieldsValue({url:P});let H=await G(P);O((H==null?void 0:H.channels)||[]),b((H==null?void 0:H.plugins)||[]),T(xt.map(Y=>Y.key)),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(F){console.error(F),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(F==null?void 0:F.message))}finally{l(!1)}},Se=(F,P,H)=>{F.includes(H)?P(F.filter(Y=>Y!==H)):P([...F,H])},te=(F,P,H)=>{P.length===F.length?H([]):H([...F])},Fe=(F,P,H,Y,he,ye)=>r.default.createElement(\"div\",{key:F,className:\"pansou-checkbox-card \".concat(P?\"pansou-checkbox-card--selected\":\"\"),onClick:H},r.default.createElement(\"span\",{className:\"pansou-checkbox-card__label\"},Y||F),he&&r.default.createElement(Ze,{className:\"pansou-checkbox-card__delete\",onClick:ye}));li(\".pansou-config-tabs__nav-scroll\",e);let ce=[{key:\"channels\",label:\"TG\\u9891\\u9053\",count:x.length},{key:\"plugins\",label:\"\\u641C\\u7D22\\u63D2\\u4EF6\",count:N.length},{key:\"cloudTypes\",label:\"\\u7F51\\u76D8\\u7C7B\\u578B\",count:I.length}];return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(o||\"PanSou\"),open:e,onCancel:t,className:\"ios-modal pansou-config-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Spin,{spinning:i},r.default.createElement(s.Form,{form:a,layout:\"vertical\",className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u7AD9\\u6E90\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: \".concat(Ln),onBlur:q}))),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\"},ce.map(F=>{let P=F.key===u;return r.default.createElement(\"button\",{key:F.key,type:\"button\",role:\"tab\",\"aria-selected\":P,className:\"pansou-config-tabs__tab\".concat(P?\" pansou-config-tabs__tab--active\":\"\"),onClick:()=>f(F.key)},r.default.createElement(\"span\",null,F.label),r.default.createElement(\"span\",{className:\"pansou-config-tabs__badge\"},Math.min(F.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 \",x.length,\" / \",c.length),r.default.createElement(s.Space,null,r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>te(c,x,O)},x.length===c.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:D,onChange:F=>_(F.target.value),onPressEnter:w,allowClear:!0,style:{flex:1}}),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(ve,null),onClick:w},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},c.filter(F=>!D||F.toLowerCase().includes(D.toLowerCase())).map(F=>Fe(F,x.includes(F),()=>Se(x,O,F),F,M.includes(F),P=>S(F,P)))),c.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 \",N.length,\" / \",d.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>te(d,N,b)},N.length===d.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},d.map(F=>Fe(F,N.includes(F),()=>Se(N,b,F),F,!1,null))),d.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u63D2\\u4EF6\")),u===\"cloudTypes\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",I.length,\" / \",xt.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>te(xt.map(F=>F.key),I,T)},I.length===xt.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},xt.map(F=>Fe(F.key,I.includes(F.key),()=>Se(I,T,F.key),F.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:L,disabled:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:K,disabled:i},\"\\u91CD\\u7F6E\"))))}function Ar({visible:e,onCancel:t,onSave:n,onDelete:o,server:a,usedIds:i}){let[l]=s.Form.useForm(),[u,f]=(0,r.useState)(!1),c=s.Form.useWatch(\"logo\",l);(0,r.useEffect)(()=>{e&&l.setFieldsValue(k(k({},Pr),a||Lr()))},[e,a,l]);let m=async()=>{let g;try{g=await l.validateFields()}catch(b){return}let p=gd(a!=null&&a.isNew?\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"):(a==null?void 0:a.id)||\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"));if(!p){s.message.warning(\"\\u8BF7\\u586B\\u5199\\u670D\\u52A1\\u5668\\u5730\\u5740\");return}if(i!=null&&i.has(p)&&p!==(a==null?void 0:a.id)){s.message.warning(\"\\u5F53\\u524D\\u670D\\u52A1\\u5668\\u5DF2\\u5B58\\u5728\\uFF0C\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u6216\\u8D26\\u53F7\");return}let 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()},x=String((a==null?void 0:a.host)||\"\").trim().replace(/\\/+$/,\"\"),O=String((a==null?void 0:a.username)||\"\").trim();v.host===x&&v.username===O&&(v.deviceId=String((a==null?void 0:a.deviceId)||\"\").trim());let N=!1;try{f(!0);let b=await E.post(\"/emby-spider/verify\",v);N=!0,await n(b||v),s.message.success(\"Emby \\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(b){console.error(b),b!=null&&b.message&&b.message!==\"[object Object]\"&&s.message.error(\"\".concat(N?\"\\u4FDD\\u5B58\":\"\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat(b.message))}finally{f(!1)}},d=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Emby \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Emby\"),open:e,onCancel:t,confirmLoading:u,className:\"ios-modal emby-server-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F1A\\u5728\\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\\u540E\\u81EA\\u52A8\\u4F7F\\u7528 Emby \\u670D\\u52A1\\u5668\\u540D\\u79F0\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u81EA\\u52A8\\u83B7\\u53D6\\uFF0C\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"Logo URL\",name:\"logo\",tooltip:\"\\u652F\\u6301 http/https\\u3001data:image \\u6216\\u7AD9\\u5185 / \\u5F00\\u5934\\u8DEF\\u5F84\",rules:[{validator(g,p){return hd(p)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/emby-logo.png\"})),!!String(c||\"\").trim()&&r.default.createElement(\"div\",{className:\"emby-logo-preview\"},r.default.createElement(\"img\",{src:String(c).trim(),alt:\"Emby Logo \\u9884\\u89C8\"}),r.default.createElement(\"span\",null,\"Logo \\u9884\\u89C8\")),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"host\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:8096\"})),r.default.createElement(s.Form.Item,{label:\"\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u5BC6\\u7801\\u53EF\\u4E3A\\u7A7A\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group emby-server-edit-actions\".concat(a!=null&&a.isNew?\" emby-server-edit-actions--new\":\"\")},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:d,disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:u},u?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function kd({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=(0,r.useMemo)(()=>new Set(l.map(g=>g.id).filter(Boolean)),[l]),f=()=>{i($(k({},Lr()),{isNew:!0})),o(!0)},c=g=>{i(k({},g)),o(!0)},m=g=>{let p=l.findIndex(O=>O.id===(a==null?void 0:a.id)),v=Ir(g),x=p>=0?[...l]:[...l,v];p>=0&&(x[p]=v),t(x),o(!1)},d=g=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Bn(g),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u5BF9\\u5E94\\u7684 Emby \\u5206\\u7C7B\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(p=>p.id!==g.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Emby \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(ve,null),onClick:f},\"\\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:f},r.default.createElement(ve,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Emby \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(g=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:g.id},r.default.createElement(\"div\",{className:\"emby-server-card__hero\"},r.default.createElement(\"div\",{className:\"emby-server-card__logo\"},r.default.createElement(\"img\",{src:g.logo||Fr,alt:Bn(g)}))),r.default.createElement(\"div\",{className:\"emby-server-card__content\"},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,Bn(g)),r.default.createElement(cn,null)),r.default.createElement(\"div\",{className:\"emby-server-card__stats\"},vd(g.libraryStats))),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>c(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 f=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 E.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)}},c=()=>{!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:c},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:f,disabled:l},l?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function Td({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=()=>{i($(k({},ci()),{isNew:!0})),o(!0)},f=d=>{i(k({},d)),o(!0)},c=d=>{let g=l.findIndex(x=>x.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(ve,null),onClick:u},\"\\u6DFB\\u52A0\"))),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:u},r.default.createElement(ve,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(cn,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:()=>f(d)}))))),r.default.createElement(_r,{visible:n,onCancel:()=>o(!1),onSave:c,onDelete:m,server:a}))}function Fd({visible:e,onCancel:t,onSave:n,siteKey:o,siteName:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1),f=String(o||\"\").startsWith(\"nodejs_emby\"),c=ii[o]||(f?ii.nodejs_emby:void 0),m=!!c,d=(c==null?void 0:c.type)===\"tg\",g=(c==null?void 0:c.type)===\"tgfilebot\",p=(c==null?void 0:c.type)===\"live2vod\",v=(c==null?void 0:c.type)===\"emby-spider\",x=(c==null?void 0:c.type)===\"alist-video\",O=(c==null?void 0:c.type)===\"domain\",N=(c==null?void 0:c.type)===\"domain-cookie\",b=(c==null?void 0:c.type)===\"account\",I=o===\"nodejs_tgchannel\",T=o===\"nodejs_guanying\"?\"app_auth\":o===\"nodejs_123ypzysq\"?\"bbs_token\":\"Cookie\",D=(0,r.useRef)(0),_=w=>{if(w===\"\"||w===null||typeof w>\"u\")return null;let S=Number(w);return Number.isFinite(S)?S:null},M=w=>{if(w==null||w===\"\")return\"\";let S=Number(w);return Number.isFinite(S)?S:\"\"};(0,r.useEffect)(()=>{let w=++D.current;if(!e){u(!1);return}m?(u(!0),E.get(c.api).then(S=>{if(D.current===w)if(d){let G=[],q=new Set;S.channelNameMap&&Object.keys(S.channelNameMap).forEach(L=>q.add(L)),S.channelUsername&&S.channelUsername.forEach(L=>q.add(L)),S.homeChannelUsername&&S.homeChannelUsername.forEach(L=>q.add(L)),q.forEach(L=>{var K;G.push({id:L,name:((K=S.channelNameMap)==null?void 0:K[L])||\"\"})}),i.setFieldsValue({name:a,url:S.url,count:_(S==null?void 0:S.count),pic:S.pic,channels:G.length>0?G:I?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({name:a,url:S.url,password:S.password||\"\"}):p?i.setFieldsValue({name:a,sources:S.sources||[{name:\"\",url:\"\"}]}):v?i.setFieldsValue({name:a,servers:S.servers||[]}):x?i.setFieldsValue({name:a,servers:S.servers||[]}):O?i.setFieldsValue({name:a,url:S.url||\"\"}):N?i.setFieldsValue({name:a,url:S.url||\"\",cookie:S.cookie||\"\"}):b?i.setFieldsValue({name:a,url:S.url||\"\",username:S.username||\"\",password:S.password||\"\"}):i.setFieldsValue({urls:S,name:a})}).catch(S=>{D.current===w&&(console.error(S),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{D.current===w&&u(!1)})):i.setFieldsValue({name:a})},[e,o,a,m,d,g,p,v,x,O,N,b,i,c]);let z=async()=>{let w;try{w=await i.validateFields()}catch(S){return}try{if(u(!0),m)if(d){let S={},G=[],q=[];w.channels&&w.channels.length>0&&w.channels.forEach(K=>{K.id&&(K.name&&(S[K.id]=K.name),G.push(K.id),o===\"nodejs_tgchannel\"&&q.push(K.id))});let L=k({url:w.url,count:M(w.count),pic:w.pic,channelNameMap:S,channelUsername:G},o===\"nodejs_tgchannel\"?{homeChannelUsername:q}:{});await E.put(c.api,L)}else if(g)await E.put(c.api,{url:w.url||\"\",password:w.password||\"\"});else if(p){let S={sources:w.sources||[]};await E.put(c.api,S)}else v?await E.put(c.api,{servers:w.servers||[]}):x?await E.put(c.api,{servers:w.servers||[]}):O?await E.put(c.api,{url:w.url||\"\"}):N?await E.put(c.api,{url:w.url||\"\",cookie:w.cookie||\"\"}):b?await E.put(c.api,{url:w.url||\"\",username:w.username||\"\",password:w.password||\"\"}):await E.put(c.api,w.urls);s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(w.name,v||x?{reload:!0}:void 0),t()}catch(S){console.error(S),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((S==null?void 0:S.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{u(!1)}},j=async()=>{if(m)try{u(!0),await E.delete(c.api);let w=await E.get(c.api);if(d){let S=[],G=new Set;w.channelNameMap&&Object.keys(w.channelNameMap).forEach(q=>G.add(q)),w.channelUsername&&w.channelUsername.forEach(q=>G.add(q)),w.homeChannelUsername&&w.homeChannelUsername.forEach(q=>G.add(q)),G.forEach(q=>{var L;S.push({id:q,name:((L=w.channelNameMap)==null?void 0:L[q])||\"\"})}),i.setFieldsValue({url:w.url,count:_(w==null?void 0:w.count),pic:w.pic,channels:S.length>0?S:I?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({url:w.url,password:w.password||\"\"}):p?i.setFieldsValue({sources:w.sources||[{name:\"\",url:\"\"}]}):v?i.setFieldsValue({servers:w.servers||[]}):x?i.setFieldsValue({servers:w.servers||[]}):O?i.setFieldsValue({url:w.url||\"\"}):N?i.setFieldsValue({url:w.url||\"\",cookie:w.cookie||\"\"}):b?i.setFieldsValue({url:w.url||\"\",username:w.username||\"\",password:w.password||\"\"}):i.setFieldsValue({urls:w});s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(w){console.error(w),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(w==null?void 0:w.message))}finally{u(!1)}};return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(a||(c==null?void 0:c.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||x?\"domain-edit-full-input\":\"domain-edit-aligned-input\"})),m&&!d&&!g&&!p&&!v&&!x&&!O&&!N&&!b&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u57DF\\u540D\"}]},(w,{add:S,remove:G},{errors:q})=>r.default.createElement(r.default.Fragment,null,w.map((L,K)=>r.default.createElement(s.Form.Item,{label:K===0?\"\\u57DF\\u540D\":null,required:!1,key:L.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,$(k({},L),{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(w.length>1?\"\":\" domain-list-action--placeholder\")},w.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>G(L.name)}):null)))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>S(),className:\"domain-edit-add-button\",icon:r.default.createElement(ve,null)},\"\\u6DFB\\u52A0\\u57DF\\u540D\"),r.default.createElement(s.Form.ErrorList,{errors:q}))))),m&&(O||N)&&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\"})),N&&r.default.createElement(s.Form.Item,{label:\"Cookie\",name:\"cookie\"},r.default.createElement(s.Input.TextArea,{placeholder:T,className:\"domain-edit-aligned-input\",autoSize:{minRows:3,maxRows:6}}))),m&&b&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u8D26\\u53F7\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u7AD9\\u70B9\\u8D26\\u53F7\",className:\"domain-edit-aligned-input\",autoComplete:\"username\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5BC6\\u7801\"}]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u7AD9\\u70B9\\u5BC6\\u7801\",className:\"domain-edit-aligned-input\",autoComplete:\"new-password\"}))),m&&g&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: http://127.0.0.1:8080\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u8BBF\\u95EE\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"TGFileBot password\\uFF0C\\u53EF\\u7559\\u7A7A\",className:\"domain-edit-aligned-input\"}))),m&&v&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(kd,null)),m&&x&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(Td,null)),m&&d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"TG\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\"},r.default.createElement(s.InputNumber,{min:1,placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9650\\u5236\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.List,{name:\"channels\",rules:[{validator:async(w,S)=>{if(!I&&(!S||S.length===0))return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u9891\\u9053\"))}}]},(w,{add:S,remove:G},{errors:q})=>r.default.createElement(r.default.Fragment,null,w.map((L,K)=>r.default.createElement(s.Form.Item,{label:K===0?\"\\u9891\\u9053\\u5217\\u8868\":\"\",required:!1,key:L.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,$(k({},L),{name:[L.name,\"name\"],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,$(k({},L),{name:[L.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(w.length>1||I?\"\":\" domain-list-action--placeholder\")},w.length>1||I?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>G(L.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>S({id:\"\",name:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(ve,null)},\"\\u6DFB\\u52A0\\u9891\\u9053\"),r.default.createElement(s.Form.ErrorList,{errors:q})))),r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u56FE\\u7247\",name:\"pic\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null))),m&&p&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"sources\",rules:[{validator:async(w,S)=>{if(!S||S.length===0)return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u76F4\\u64AD\\u6E90\"))}}]},(w,{add:S,remove:G},{errors:q})=>r.default.createElement(r.default.Fragment,null,w.map((L,K)=>r.default.createElement(s.Form.Item,{label:K===0?\"\\u76F4\\u64AD\\u6E90\\u5217\\u8868\":\"\",required:!1,key:L.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,$(k({},L),{name:[L.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,$(k({},L),{name:[L.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(w.length>1?\"\":\" domain-list-action--placeholder\")},w.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>G(L.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>S({name:\"\",url:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(ve,null)},\"\\u6DFB\\u52A0\\u76F4\\u64AD\\u6E90\"),r.default.createElement(s.Form.ErrorList,{errors:q}))))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:z,disabled:l},\"\\u4FDD\\u5B58\"),m&&r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:j,disabled:l},\"\\u91CD\\u7F6E\")))))}function Ed(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),[l,u]=(0,r.useState)(!1),[f,c]=(0,r.useState)(!1),[m,d]=(0,r.useState)(!1),[g,p]=(0,r.useState)(null),[v,x]=(0,r.useState)([]),[O,N]=(0,r.useState)(!1),[b,I]=(0,r.useState)(null),[T,D]=(0,r.useState)([]),[_,M]=(0,r.useState)(!1),[z,j]=(0,r.useState)(null),[w,S]=(0,r.useState)([]),[G,q]=(0,r.useState)(!1),[L,K]=(0,r.useState)(null),[Se,te]=(0,r.useState)([]),[Fe,ce]=(0,r.useState)(!1),[F,P]=(0,r.useState)(!1),[H,Y]=(0,r.useState)([]),[he,ye]=(0,r.useState)(!1),[fe,Me]=(0,r.useState)(null),[Oe,xe]=(0,r.useState)([]),[U,Ae]=(0,r.useState)(\"\"),[R,Pe]=(0,r.useState)(null),ke=(0,r.useMemo)(()=>new Set(v.map(y=>y.id).filter(Boolean)),[v]),Le=(0,r.useMemo)(()=>new Set(T.map(y=>y.id).filter(Boolean)),[T]),Be=y=>{let C=wd(y==null?void 0:y.key);if(C){Yt(C);return}let A=Cd(y==null?void 0:y.key);if(A){Hn(A);return}if(y!=null&&y.cms){$e(y.key);return}Pe(y),y.key===\"nodejs_pansou\"?i(!0):o(!0)},yt=(y,C={})=>{if(C.reload){pe();return}if(R){let A=e.findIndex(B=>B.key===R.key);A!==-1&&(e[A].name=y,t([...e]))}},Vt=async()=>{try{c(!0);let y=await E.get(\"/emby-spider/setting\");x(Array.isArray(y==null?void 0:y.servers)?y.servers:[]),p($(k({},Lr()),{isNew:!0})),u(!1),d(!0)}catch(y){console.error(y),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((y==null?void 0:y.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{c(!1)}},vt=async()=>{try{c(!0);let y=await E.get(\"/alist-video/setting\");S(Array.isArray(y==null?void 0:y.servers)?y.servers:[]),j($(k({},ci()),{isNew:!0})),u(!1),M(!0)}catch(y){console.error(y),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((y==null?void 0:y.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{c(!1)}},Ee=async()=>{try{c(!0);let y=await E.get(\"/cms/list\");Y(Array.isArray(y)?y:[]),u(!1),ce(!0)}catch(y){console.error(y),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((y==null?void 0:y.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{c(!1)}},lt=async y=>{let C=Ir(y),A=v.findIndex(X=>X.id===C.id),B=A>=0?[...v]:[...v,C];A>=0&&(B[A]=C),await E.put(\"/emby-spider/setting\",{servers:B}),x(B),d(!1),p(null),await pe()},dt=()=>{d(!1),p(null)},jt=async y=>{let C=Dr(y),A=w.findIndex(X=>X.id===C.id),B=A>=0?[...w]:[...w,C];A>=0&&(B[A]=C),await E.put(\"/alist-video/setting\",{servers:B}),S(B),M(!1),j(null),await pe()},Ut=()=>{M(!1),j(null)},$n=async y=>{let C=Ad(H,y);await E.put(\"/cms/list\",C),Y(C),ce(!1),await pe()},zn=()=>{ce(!1)},$e=async y=>{try{let C=await E.get(\"/cms/list\"),A=Array.isArray(C)?C:[],B=A.find(X=>Er(X)===y);if(!B){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 CMS \\u6E90\\u914D\\u7F6E\");return}xe(A),Me(k({},B)),Ae(y),ye(!0)}catch(C){console.error(C),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((C==null?void 0:C.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},ze=async y=>{let C=fi(y);if(!C){s.message.warning(\"CMS \\u6E90\\u4FE1\\u606F\\u4E0D\\u5B8C\\u6574\");return}let A=Oe.map(B=>Er(B)===U?C:B);await E.put(\"/cms/list\",A),xe(A),ye(!1),Me(null),Ae(\"\"),await pe()},Ue=y=>{y&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(y.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 C=Oe.filter(A=>Er(A)!==U);await E.put(\"/cms/list\",C),xe(C),ye(!1),Me(null),Ae(\"\"),await pe()}})},Yt=async y=>{try{let C=await E.get(\"/emby-spider/setting\"),A=Array.isArray(C==null?void 0:C.servers)?C.servers:[],B=A.find(X=>X.id===y);if(!B){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Emby \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}D(A),I(k({},B)),N(!0)}catch(C){console.error(C),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((C==null?void 0:C.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},Ne=async y=>{let C=Ir(y),A=T.map(B=>B.id===(b==null?void 0:b.id)?C:B);await E.put(\"/emby-spider/setting\",{servers:A}),D(A),N(!1),I(null),await pe()},Wt=y=>{y!=null&&y.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Bn(y),\"\\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 C=T.filter(A=>A.id!==y.id);await E.put(\"/emby-spider/setting\",{servers:C}),D(C),N(!1),I(null),await pe()}})},Hn=async y=>{try{let C=await E.get(\"/alist-video/setting\"),A=Array.isArray(C==null?void 0:C.servers)?C.servers:[],B=A.find(X=>X.id===y);if(!B){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Alist \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}te(A),K(k({},B)),q(!0)}catch(C){console.error(C),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((C==null?void 0:C.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},qn=async y=>{let C=Dr(y),A=Se.map(B=>B.id===(L==null?void 0:L.id)?C:B);await E.put(\"/alist-video/setting\",{servers:A}),te(A),q(!1),K(null),await pe()},wt=y=>{y!=null&&y.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(y),\"\\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 C=Se.filter(A=>A.id!==y.id);await E.put(\"/alist-video/setting\",{servers:C}),te(C),q(!1),K(null),await pe()}})},Xt=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(y,C){return r.default.createElement(ui,{rowKey:C.key})}},{title:\"\\u7AD9\\u6E90\",dataIndex:\"name\",render(y,C){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:y,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},y),C.t4&&r.default.createElement(s.Tag,{className:\"ios-tag\"},\"T4\"))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(y,C){return r.default.createElement(s.Switch,{value:y,onChange:A=>{t(B=>B.map(X=>X.key===C.key?$(k({},X),{enable:A}):X))}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(y,C){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>Be(C),size:\"small\"})}}],[e]),Gn=wr($t(at,{activationConstraint:{distance:1}}),$t(ht,{activationConstraint:{delay:150,tolerance:5}})),Kt=({active:y,over:C})=>{y.id!==(C==null?void 0:C.id)&&t(A=>{let B=A.findIndex(ae=>ae.key===y.id),X=A.findIndex(ae=>ae.key===(C==null?void 0:C.id));return zt(A,B,X)})},pe=async()=>{let C=(await bt.default.get(\"/full-config\")).data.video.sites,A=await E.get(\"/sites/list\"),B={},X={};C.forEach(W=>{X[W.key]=W});let ae=A.filter(W=>(B[W.key]=!0,X[W.key])).map(W=>{let ge=X[W.key];return{key:W.key,name:W.name||ge.name,enable:W.enable,t4:ge.t4,cms:ge.cms}});C.forEach(W=>{B[W.key]||ae.push({key:W.key,name:W.name,enable:!0,t4:W.t4,cms:W.cms})}),t(ae)},Vn=async()=>{try{await E.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(y){console.error(y),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(y==null?void 0:y.message))}},jn=async()=>{try{await E.delete(\"/sites/list\"),pe(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(y){console.error(y),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(y==null?void 0:y.message))}};return(0,r.useEffect)(()=>{pe()},[]),r.default.createElement(\"div\",null,r.default.createElement(\"div\",{className:\"sites-list-toolbar\"},r.default.createElement(s.Space,{wrap:!0},r.default.createElement(s.Button,{icon:r.default.createElement(Nt,null),className:\"sites-manage-button\",onClick:()=>P(!0)},\"\\u7BA1\\u7406 CMS\"),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:Vt,disabled:f},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:Fr,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Emby\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:vt,disabled:f},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:Ee,disabled:f},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(ve,null),className:\"sites-add-button\"},\"\\u6DFB\\u52A0\")))),r.default.createElement(Cr,{sensors:Gn,modifiers:[Sr],onDragEnd:Kt},r.default.createElement(kr,{items:e.map(y=>y.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:di}},rowKey:\"key\",columns:Xt,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:Vn},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:jn},\"\\u91CD\\u7F6E\")),r.default.createElement(Fd,{visible:n,onCancel:()=>o(!1),onSave:yt,siteKey:R==null?void 0:R.key,siteName:R==null?void 0:R.name}),r.default.createElement(Od,{visible:a,onCancel:()=>i(!1),onSave:yt,siteName:R==null?void 0:R.name}),r.default.createElement(Ar,{visible:m,onCancel:dt,onSave:lt,server:g,usedIds:ke}),r.default.createElement(Ar,{visible:O,onCancel:()=>N(!1),onSave:Ne,onDelete:Wt,server:b,usedIds:Le}),r.default.createElement(_r,{visible:_,onCancel:Ut,onSave:jt,server:z}),r.default.createElement(_r,{visible:G,onCancel:()=>q(!1),onSave:qn,onDelete:wt,server:L}),r.default.createElement(Md,{visible:Fe,onCancel:zn,onSave:$n}),r.default.createElement(_d,{visible:F,onCancel:()=>P(!1),onChanged:pe}),r.default.createElement(pi,{visible:he,onCancel:()=>ye(!1),onSave:ze,onDelete:Ue,source:fe,mode:\"edit\"}))}function Nd(){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(ui,{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,x){return r.default.createElement(s.Switch,{value:p,onChange:O=>{e[x].enable=O,t([...e])}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(p,v,x){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>{i($(k({},v),{index:x})),o(!0)},size:\"small\"})}}],[e]),u=wr($t(at,{activationConstraint:{distance:1}}),$t(ht,{activationConstraint:{delay:150,tolerance:5}})),f=({active:p,over:v})=>{p.id!==(v==null?void 0:v.id)&&t(x=>{let O=x.findIndex(b=>b.key===p.id),N=x.findIndex(b=>b.key===(v==null?void 0:v.id));return zt(x,O,N)})},c=async()=>{let p=await E.get(\"/pans/list\");t(p)},m=async()=>{try{await E.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 E.delete(\"/pans/list\"),c(),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(),x=String(p.pic||\"\").trim(),O=$(k({},e[a.index]),{name:v,pic:x});(a.key===\"quark\"||a.key===\"uc\"||a.key===\"ali\")&&(O.chunkSize=p.chunkSize,O.poolSize=p.poolSize),(a.key===\"quark\"||a.key===\"uc\")&&(O.noSaveMode=p.noSaveMode===!0),e[a.index]=O,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)(()=>{c()},[]),r.default.createElement(\"div\",null,r.default.createElement(Cr,{sensors:u,modifiers:[Sr],onDragEnd:f},r.default.createElement(kr,{items:e.map(p=>p.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:di}},rowKey:\"key\",columns:l,dataSource:e,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:m},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:d},\"\\u91CD\\u7F6E\")),r.default.createElement(md,{visible:n,onCancel:()=>o(!1),onSave:g,panKey:a==null?void 0:a.key,panName:a==null?void 0:a.name,panPic:a==null?void 0:a.pic,chunkSize:a==null?void 0:a.chunkSize,poolSize:a==null?void 0:a.poolSize,noSaveMode:a==null?void 0:a.noSaveMode}))}function Id(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(!1),o=\"/emby/setting\",a=async()=>{let f=await E.get(o);e.setFieldsValue(f)},i=async()=>{let f=await e.validateFields();try{await E.put(o,f),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(c){console.error(c),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}},l=async()=>{try{await E.delete(o),a(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(f){console.error(f),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(f==null?void 0:f.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 E.post(\"/emby/tmdb/cache/clear\"),s.message.success(\"TMDB \\u7F13\\u5B58\\u5DF2\\u6E05\\u7406\")}catch(f){console.error(f),s.message.error(\"\\u6E05\\u7406\\u5931\\u8D25\\uFF1A\".concat(f==null?void 0:f.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:f})=>({validator(c,m){return!f(\"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 Dd(){let[e]=s.Form.useForm(),t=\"/danmu/setting\",n=async()=>{let i=await E.get(t);e.setFieldsValue(i)},o=async()=>{let i=await e.validateFields();try{await E.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 E.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:f})=>r.default.createElement(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12}},i.map(c=>r.default.createElement(\"div\",{key:c.key,className:\"domain-list-row\"},r.default.createElement(s.Form.Item,$(k({},c),{name:[c.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,$(k({},c),{name:[c.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(c.name)}):null))),r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>l(),block:!0,icon:r.default.createElement(ve,null)},\"\\u6DFB\\u52A0 API\"),r.default.createElement(s.Form.ErrorList,{errors:f})))),r.default.createElement(s.Form.Item,{label:\"\\u81EA\\u52A8\\u63A8\\u9001\",name:\"autoPush\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u8C03\\u8BD5\\u4FE1\\u606F\",name:\"debug\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5728\\u63A7\\u5236\\u53F0\\u663E\\u793A\\u8BE6\\u7EC6\\u7684\\u5F39\\u5E55\\u5339\\u914D\\u8C03\\u8BD5\\u4FE1\\u606F\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:a},\"\\u91CD\\u7F6E\"))))}function fi(e,t=\"\"){if(!e||typeof e!=\"object\")return null;let n=String(e.address||e.api||e.url||\"\").trim();if(!n)return null;let o=\"\";try{o=new URL(/^https?:\\/\\//i.test(n)?n:\"https://\".concat(n)).hostname}catch(l){}let a=String(e.name||e.title||t||o||\"CMS\").trim();return{name:a.startsWith(\"\\u300C\\u91C7\\u300D\")?a:\"\\u300C\\u91C7\\u300D\".concat(a),address:n}}function Er(e={}){return\"nodejs_\".concat(String(e.name||\"\").trim())}function Ad(e=[],t=[]){let n=new Set;return[...e,...t].map(o=>fi(o)).filter(o=>!o||n.has(o.address)?!1:(n.add(o.address),!0))}function _d({visible:e,onCancel:t,onChanged:n}){let[o,a]=(0,r.useState)([]),[i,l]=(0,r.useState)([]),[u,f]=(0,r.useState)(\"\"),[c,m]=(0,r.useState)(!1),[d,g]=(0,r.useState)(!1);(0,r.useEffect)(()=>{if(!e)return;let T=!0;return(async()=>{a([]),l([]),f(\"\");try{m(!0);let _=await E.get(\"/cms/list\");if(!T)return;a(Array.isArray(_)?_:[])}catch(_){console.error(_),T&&s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((_==null?void 0:_.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{T&&m(!1)}})(),()=>{T=!1}},[e]);let p=(0,r.useMemo)(()=>{let T=u.trim().toLowerCase();return T?o.filter(D=>String(D.name||\"\").toLowerCase().includes(T)||String(D.address||\"\").toLowerCase().includes(T)):o},[u,o]),v=(0,r.useMemo)(()=>new Set(i),[i]),x=p.map(T=>T.address).filter(Boolean),O=x.length>0&&x.every(T=>v.has(T)),N=(T,D)=>{l(_=>{let M=new Set(_);return D?M.add(T):M.delete(T),[...M]})},b=()=>{l(T=>{let D=new Set(T);return x.forEach(_=>{O?D.delete(_):D.add(_)}),[...D]})},I=(T,D=!1)=>{let _=new Set(T);_.size!==0&&s.Modal.confirm({title:D?\"\\u6E05\\u7A7A\\u5168\\u90E8 CMS \\u6E90\\uFF1F\":\"\\u5220\\u9664\\u9009\\u4E2D\\u7684 \".concat(_.size,\" \\u4E2A CMS \\u6E90\\uFF1F\"),content:D?\"\\u6E05\\u7A7A\\u540E\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u5C06\\u4E0D\\u518D\\u4FDD\\u7559\\u4EFB\\u4F55 CMS \\u89C6\\u9891\\u6E90\\u3002\":\"\\u5220\\u9664\\u540E\\u8FD9\\u4E9B CMS \\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:D?\"\\u786E\\u8BA4\\u6E05\\u7A7A\":\"\\u786E\\u8BA4\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){try{g(!0);let M=D?[]:o.filter(z=>!_.has(z.address));await E.put(\"/cms/list\",M),a(M),l([]),s.message.success(D?\"CMS \\u6E90\\u5DF2\\u6E05\\u7A7A\":\"\\u5DF2\\u5220\\u9664 \".concat(_.size,\" \\u4E2A CMS \\u6E90\"));try{await(n==null?void 0:n())}catch(z){console.error(z),s.message.warning(\"CMS \\u6E90\\u5DF2\\u5220\\u9664\\uFF0C\\u4F46\\u7AD9\\u6E90\\u5217\\u8868\\u5237\\u65B0\\u5931\\u8D25\\uFF0C\\u8BF7\\u7A0D\\u540E\\u91CD\\u65B0\\u6253\\u5F00\\u9875\\u9762\\u3002\")}}catch(M){throw console.error(M),s.message.error(\"\\u5220\\u9664 CMS \\u6E90\\u5931\\u8D25\\uFF1A\".concat((M==null?void 0:M.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\")),M}finally{g(!1)}}})};return r.default.createElement(s.Modal,{title:\"\\u7BA1\\u7406 CMS\",open:e,onCancel:()=>{d||t()},closable:!d,maskClosable:!d,className:\"ios-modal cms-manager-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Spin,{spinning:c||d},r.default.createElement(\"div\",{className:\"cms-manager-toolbar\"},r.default.createElement(s.Input,{value:u,onChange:T=>f(T.target.value),placeholder:\"\\u641C\\u7D22\\u540D\\u79F0\\u6216 API \\u5730\\u5740\",allowClear:!0,\"aria-label\":\"\\u641C\\u7D22 CMS \\u6E90\"}),r.default.createElement(\"div\",{className:\"cms-manager-selection\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",i.length,\" / \",o.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:b,disabled:x.length===0||d},O?\"\\u53D6\\u6D88\\u5168\\u9009\\u7ED3\\u679C\":\"\\u5168\\u9009\\u7ED3\\u679C\"))),r.default.createElement(\"div\",{className:\"cms-manager-list\",\"aria-label\":\"CMS \\u6E90\\u5217\\u8868\"},p.map(T=>r.default.createElement(s.Checkbox,{key:T.address,className:\"cms-manager-item\",checked:v.has(T.address),onChange:D=>N(T.address,D.target.checked),disabled:d},r.default.createElement(\"span\",{className:\"cms-manager-item__content\"},r.default.createElement(\"span\",{className:\"cms-manager-item__name\",title:T.name},T.name),r.default.createElement(\"span\",{className:\"cms-manager-item__address\",title:T.address},T.address)))),!c&&p.length===0&&r.default.createElement(\"div\",{className:\"cms-manager-empty\"},o.length===0?\"\\u6682\\u65E0 CMS \\u6E90\\uFF0C\\u53EF\\u4EE5\\u5148\\u901A\\u8FC7\\u201C\\u6DFB\\u52A0\\u201D\\u5BFC\\u5165\\u3002\":\"\\u6CA1\\u6709\\u5339\\u914D\\u7684 CMS \\u6E90\\u3002\")),r.default.createElement(\"div\",{className:\"cms-manager-actions\"},r.default.createElement(s.Button,{danger:!0,onClick:()=>I(o.map(T=>T.address),!0),disabled:o.length===0||d},\"\\u6E05\\u7A7A\\u5168\\u90E8\"),r.default.createElement(s.Button,{type:\"primary\",danger:!0,onClick:()=>I(i),disabled:i.length===0||d},\"\\u5220\\u9664\\u6240\\u9009\",i.length>0?\"\\uFF08\".concat(i.length,\"\\uFF09\"):\"\"))))}function pi({visible:e,onCancel:t,onSave:n,onDelete:o,source:a,mode:i=\"add\"}){let[l]=s.Form.useForm(),[u,f]=(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 c=async()=>{let m;try{m=await l.validateFields()}catch(p){return}let d=String(m.name||\"\").trim(),g=String(m.url||\"\").trim();try{if(f(!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 E.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{f(!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:c,disabled:u},u?i===\"edit\"?\"\\u4FDD\\u5B58\\u4E2D...\":\"\\u89E3\\u6790\\u4E2D...\":i===\"edit\"?\"\\u4FDD\\u5B58\":\"\\u89E3\\u6790\\u5E76\\u6DFB\\u52A0\")))))}function Md(e){return r.default.createElement(pi,$(k({},e),{mode:\"add\"}))}function Pd(){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 f=await E.get(\"/subscriptions\");t(Array.isArray(f==null?void 0:f.endpoints)?f.endpoints:[])}catch(f){console.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25:\",f),f!=null&&f.handled||s.message.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25\")}finally{o(!1)}},[]);(0,r.useEffect)(()=>{l()},[l]);let u=f=>{(0,Mr.default)(f.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(f=>r.default.createElement(\"div\",{className:\"subscription-endpoint\",key:f.key||f.url},r.default.createElement(\"div\",{className:\"subscription-endpoint__main\"},r.default.createElement(\"div\",{className:\"subscription-endpoint__title\"},r.default.createElement(\"span\",null,f.name)),r.default.createElement(\"div\",{className:\"subscription-endpoint__url\",title:f.url},f.url)),r.default.createElement(\"div\",{className:\"subscription-endpoint__actions\"},f.key===\"emby\"&&r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(Nt,null),onClick:()=>i(!0),\"aria-label\":\"\\u914D\\u7F6E Emby API\"}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(sr,null),onClick:()=>u(f),\"aria-label\":\"\\u590D\\u5236\".concat(f.name)}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(ur,null),href:f.url,target:\"_blank\",rel:\"noreferrer\",\"aria-label\":\"\\u6253\\u5F00\".concat(f.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(Id,null)))}function Ld(){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 f=JSON.parse(u.target.result);await E.put(\"/backup\",f),s.message.success(\"\".concat(i.name,\"\\u5BFC\\u5165\\u6210\\u529F\"))}catch(f){s.message.error(\"\".concat(i.name,\"\\u5BFC\\u5165\\u5931\\u8D25: \").concat(f.message)),console.error(\"Error parsing JSON:\",f)}},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(Nt,null)}],a=()=>{switch(e){case\"account\":return r.default.createElement(Rl,null);case\"settings\":return r.default.createElement(s.Tabs,{destroyOnHidden:!0},r.default.createElement(Pn,{tab:\"\\u7AD9\\u6E90\\u5217\\u8868\",key:\"sites\"},r.default.createElement(Ed,null)),r.default.createElement(Pn,{tab:\"\\u7F51\\u76D8\\u5217\\u8868\",key:\"pans\"},r.default.createElement(Nd,null)),r.default.createElement(Pn,{tab:\"\\u5F39\\u5E55\\u8BBE\\u7F6E\",key:\"danmu\"},r.default.createElement(Dd,null)),r.default.createElement(Pn,{tab:\"\\u8BA2\\u9605\\u8F6C\\u6362\",key:\"subscriptions\"},r.default.createElement(Pd,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,k({},n),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(Ke,null),size:\"small\"},\"\\u5BFC\\u5165\")),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(lr,null),size:\"small\",href:\"/website/backup\",target:\"_blank\"},\"\\u5BFC\\u51FA\")))),r.default.createElement(\"div\",{className:\"container\"},r.default.createElement(s.Card,{className:\"main-card\"},a())))}function Bd(){(0,si.createRoot)(document.getElementById(\"app\")).render(r.default.createElement(Ld,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();
})();
`;
}();
globalThis.danmuBundle = function() {
return `
(function() {
const exports = {};
const module = { exports };
${"var Bt=Object.create;var R=Object.defineProperty,Lt=Object.defineProperties,Nt=Object.getOwnPropertyDescriptor,Ht=Object.getOwnPropertyDescriptors,qt=Object.getOwnPropertyNames,pe=Object.getOwnPropertySymbols,Ut=Object.getPrototypeOf,ce=Object.prototype.hasOwnProperty,jt=Object.prototype.propertyIsEnumerable;var xe=(t,e,r)=>e in t?R(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,he=(t,e)=>{for(var r in e||(e={}))ce.call(e,r)&&xe(t,r,e[r]);if(pe)for(var r of pe(e))jt.call(e,r)&&xe(t,r,e[r]);return t},Oe=(t,e)=>Lt(t,Ht(e));var D=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Wt=(t,e)=>{for(var r in e)R(t,r,{get:e[r],enumerable:!0})},ge=(t,e,r,o)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let a of qt(e))!ce.call(t,a)&&a!==r&&R(t,a,{get:()=>e[a],enumerable:!(o=Nt(e,a))||o.enumerable});return t};var T=(t,e,r)=>(r=t!=null?Bt(Ut(t)):{},ge(e||!t||!t.__esModule?R(r,\"default\",{value:t,enumerable:!0}):r,t)),Vt=t=>ge(R({},\"__esModule\",{value:!0}),t);var C=D((vr,Te)=>{Te.exports=window.React});var be=D((Sr,we)=>{we.exports=window.ReactDOM});var Ce=D(X=>{\"use strict\";var Fe=be();X.createRoot=Fe.createRoot,X.hydrateRoot=Fe.hydrateRoot;var kr});var ve=D((Ar,ye)=>{ye.exports=window.antd});var Ee=D((eo,H)=>{(function(){\"use strict\";var t={}.hasOwnProperty;function e(){for(var a=\"\",l=0;l<arguments.length;l++){var n=arguments[l];n&&(a=o(a,r(n)))}return a}function r(a){if(typeof a==\"string\"||typeof a==\"number\")return a;if(typeof a!=\"object\")return\"\";if(Array.isArray(a))return e.apply(null,a);if(a.toString!==Object.prototype.toString&&!a.toString.toString().includes(\"[native code]\"))return a.toString();var l=\"\";for(var n in a)t.call(a,n)&&a[n]&&(l=o(l,n));return l}function o(a,l){return l?a?a+\" \"+l:a+l:a}typeof H<\"u\"&&H.exports?(e.default=e,H.exports=e):typeof define==\"function\"&&typeof define.amd==\"object\"&&define.amd?define(\"classnames\",[],function(){return e}):window.classNames=e})()});var Mt=D((ia,Rt)=>{Rt.exports=window.axios});var Cr={};Wt(Cr,{Danmu:()=>Et,renderDanmu:()=>Fr});module.exports=Vt(Cr);var s=T(C(),1),_t=T(Ce(),1),x=T(ve(),1);var Se=T(C()),zt=(0,Se.createContext)({}),B=zt;function y(){return y=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var o in r)({}).hasOwnProperty.call(r,o)&&(t[o]=r[o])}return t},y.apply(null,arguments)}function ke(t){if(Array.isArray(t))return t}function Pe(t,e){var r=t==null?null:typeof Symbol<\"u\"&&t[Symbol.iterator]||t[\"@@iterator\"];if(r!=null){var o,a,l,n,u=[],f=!0,i=!1;try{if(l=(r=r.call(t)).next,e===0){if(Object(r)!==r)return;f=!1}else for(;!(f=(o=l.call(r)).done)&&(u.push(o.value),u.length!==e);f=!0);}catch(m){i=!0,a=m}finally{try{if(!f&&r.return!=null&&(n=r.return(),Object(n)!==n))return}finally{if(i)throw a}}return u}}function ee(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,o=Array(e);r<e;r++)o[r]=t[r];return o}function Ae(t,e){if(t){if(typeof t==\"string\")return ee(t,e);var r={}.toString.call(t).slice(8,-1);return r===\"Object\"&&t.constructor&&(r=t.constructor.name),r===\"Map\"||r===\"Set\"?Array.from(t):r===\"Arguments\"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ee(t,e):void 0}}function De(){throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")}function L(t,e){return ke(t)||Pe(t,e)||Ae(t,e)||De()}function w(t){\"@babel/helpers - typeof\";return w=typeof Symbol==\"function\"&&typeof Symbol.iterator==\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol==\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e},w(t)}function Re(t,e){if(w(t)!=\"object\"||!t)return t;var r=t[Symbol.toPrimitive];if(r!==void 0){var o=r.call(t,e||\"default\");if(w(o)!=\"object\")return o;throw new TypeError(\"@@toPrimitive must return a primitive value.\")}return(e===\"string\"?String:Number)(t)}function Me(t){var e=Re(t,\"string\");return w(e)==\"symbol\"?e:e+\"\"}function h(t,e,r){return(e=Me(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function _e(t,e){if(t==null)return{};var r={};for(var o in t)if({}.hasOwnProperty.call(t,o)){if(e.indexOf(o)!==-1)continue;r[o]=t[o]}return r}function N(t,e){if(t==null)return{};var r,o,a=_e(t,e);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(o=0;o<l.length;o++)r=l[o],e.indexOf(r)===-1&&{}.propertyIsEnumerable.call(t,r)&&(a[r]=t[r])}return a}var k=T(C()),Pt=T(Ee());var O=Math.round;function te(t,e){let r=t.replace(/^[^(]*\\((.*)/,\"$1\").replace(/\\).*/,\"\").match(/\\d*\\.?\\d+%?/g)||[],o=r.map(a=>parseFloat(a));for(let a=0;a<3;a+=1)o[a]=e(o[a]||0,r[a]||\"\",a);return r[3]?o[3]=r[3].includes(\"%\")?o[3]/100:o[3]:o[3]=1,o}var Ie=(t,e,r)=>r===0?t:t/100;function M(t,e){let r=e||255;return t>r?r:t<0?0:t}var v=class t{constructor(e){h(this,\"isValid\",!0),h(this,\"r\",0),h(this,\"g\",0),h(this,\"b\",0),h(this,\"a\",1),h(this,\"_h\",void 0),h(this,\"_s\",void 0),h(this,\"_l\",void 0),h(this,\"_v\",void 0),h(this,\"_max\",void 0),h(this,\"_min\",void 0),h(this,\"_brightness\",void 0);function r(o){return o[0]in e&&o[1]in e&&o[2]in e}if(e)if(typeof e==\"string\"){let a=function(l){return o.startsWith(l)},o=e.trim();/^#?[A-F\\d]{3,8}$/i.test(o)?this.fromHexString(o):a(\"rgb\")?this.fromRgbString(o):a(\"hsl\")?this.fromHslString(o):(a(\"hsv\")||a(\"hsb\"))&&this.fromHsvString(o)}else if(e instanceof t)this.r=e.r,this.g=e.g,this.b=e.b,this.a=e.a,this._h=e._h,this._s=e._s,this._l=e._l,this._v=e._v;else if(r(\"rgb\"))this.r=M(e.r),this.g=M(e.g),this.b=M(e.b),this.a=typeof e.a==\"number\"?M(e.a,1):1;else if(r(\"hsl\"))this.fromHsl(e);else if(r(\"hsv\"))this.fromHsv(e);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(e))}setR(e){return this._sc(\"r\",e)}setG(e){return this._sc(\"g\",e)}setB(e){return this._sc(\"b\",e)}setA(e){return this._sc(\"a\",e,1)}setHue(e){let r=this.toHsv();return r.h=e,this._c(r)}getLuminance(){function e(l){let n=l/255;return n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4)}let r=e(this.r),o=e(this.g),a=e(this.b);return .2126*r+.7152*o+.0722*a}getHue(){if(typeof this._h>\"u\"){let e=this.getMax()-this.getMin();e===0?this._h=0:this._h=O(60*(this.r===this.getMax()?(this.g-this.b)/e+(this.g<this.b?6:0):this.g===this.getMax()?(this.b-this.r)/e+2:(this.r-this.g)/e+4))}return this._h}getSaturation(){if(typeof this._s>\"u\"){let e=this.getMax()-this.getMin();e===0?this._s=0:this._s=e/this.getMax()}return this._s}getLightness(){return typeof this._l>\"u\"&&(this._l=(this.getMax()+this.getMin())/510),this._l}getValue(){return typeof this._v>\"u\"&&(this._v=this.getMax()/255),this._v}getBrightness(){return typeof this._brightness>\"u\"&&(this._brightness=(this.r*299+this.g*587+this.b*114)/1e3),this._brightness}darken(e=10){let r=this.getHue(),o=this.getSaturation(),a=this.getLightness()-e/100;return a<0&&(a=0),this._c({h:r,s:o,l:a,a:this.a})}lighten(e=10){let r=this.getHue(),o=this.getSaturation(),a=this.getLightness()+e/100;return a>1&&(a=1),this._c({h:r,s:o,l:a,a:this.a})}mix(e,r=50){let o=this._c(e),a=r/100,l=u=>(o[u]-this[u])*a+this[u],n={r:O(l(\"r\")),g:O(l(\"g\")),b:O(l(\"b\")),a:O(l(\"a\")*100)/100};return this._c(n)}tint(e=10){return this.mix({r:255,g:255,b:255,a:1},e)}shade(e=10){return this.mix({r:0,g:0,b:0,a:1},e)}onBackground(e){let r=this._c(e),o=this.a+r.a*(1-this.a),a=l=>O((this[l]*this.a+r[l]*r.a*(1-this.a))/o);return this._c({r:a(\"r\"),g:a(\"g\"),b:a(\"b\"),a:o})}isDark(){return this.getBrightness()<128}isLight(){return this.getBrightness()>=128}equals(e){return this.r===e.r&&this.g===e.g&&this.b===e.b&&this.a===e.a}clone(){return this._c(this)}toHexString(){let e=\"#\",r=(this.r||0).toString(16);e+=r.length===2?r:\"0\"+r;let o=(this.g||0).toString(16);e+=o.length===2?o:\"0\"+o;let a=(this.b||0).toString(16);if(e+=a.length===2?a:\"0\"+a,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let l=O(this.a*255).toString(16);e+=l.length===2?l:\"0\"+l}return e}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let e=this.getHue(),r=O(this.getSaturation()*100),o=O(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(e,\",\").concat(r,\"%,\").concat(o,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(e,\",\").concat(r,\"%,\").concat(o,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(e,r,o){let a=this.clone();return a[e]=M(r,o),a}_c(e){return new this.constructor(e)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(e){let r=e.replace(\"#\",\"\");function o(a,l){return parseInt(r[a]+r[l||a],16)}r.length<6?(this.r=o(0),this.g=o(1),this.b=o(2),this.a=r[3]?o(3)/255:1):(this.r=o(0,1),this.g=o(2,3),this.b=o(4,5),this.a=r[6]?o(6,7)/255:1)}fromHsl({h:e,s:r,l:o,a}){if(this._h=e%360,this._s=r,this._l=o,this.a=typeof a==\"number\"?a:1,r<=0){let d=O(o*255);this.r=d,this.g=d,this.b=d}let l=0,n=0,u=0,f=e/60,i=(1-Math.abs(2*o-1))*r,m=i*(1-Math.abs(f%2-1));f>=0&&f<1?(l=i,n=m):f>=1&&f<2?(l=m,n=i):f>=2&&f<3?(n=i,u=m):f>=3&&f<4?(n=m,u=i):f>=4&&f<5?(l=m,u=i):f>=5&&f<6&&(l=i,u=m);let p=o-i/2;this.r=O((l+p)*255),this.g=O((n+p)*255),this.b=O((u+p)*255)}fromHsv({h:e,s:r,v:o,a}){this._h=e%360,this._s=r,this._v=o,this.a=typeof a==\"number\"?a:1;let l=O(o*255);if(this.r=l,this.g=l,this.b=l,r<=0)return;let n=e/60,u=Math.floor(n),f=n-u,i=O(o*(1-r)*255),m=O(o*(1-r*f)*255),p=O(o*(1-r*(1-f))*255);switch(u){case 0:this.g=p,this.b=i;break;case 1:this.r=m,this.b=i;break;case 2:this.r=i,this.b=p;break;case 3:this.r=i,this.g=m;break;case 4:this.r=p,this.g=i;break;case 5:default:this.g=i,this.b=m;break}}fromHsvString(e){let r=te(e,Ie);this.fromHsv({h:r[0],s:r[1],v:r[2],a:r[3]})}fromHslString(e){let r=te(e,Ie);this.fromHsl({h:r[0],s:r[1],l:r[2],a:r[3]})}fromRgbString(e){let r=te(e,(o,a)=>a.includes(\"%\")?O(o/100*255):o);this.r=r[0],this.g=r[1],this.b=r[2],this.a=r[3]}};var q=2,Be=.16,Gt=.05,$t=.05,Qt=.15,qe=5,Ue=4,Yt=[{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 Le(t,e,r){var o;return Math.round(t.h)>=60&&Math.round(t.h)<=240?o=r?Math.round(t.h)-q*e:Math.round(t.h)+q*e:o=r?Math.round(t.h)+q*e:Math.round(t.h)-q*e,o<0?o+=360:o>=360&&(o-=360),o}function Ne(t,e,r){if(t.h===0&&t.s===0)return t.s;var o;return r?o=t.s-Be*e:e===Ue?o=t.s+Be:o=t.s+Gt*e,o>1&&(o=1),r&&e===qe&&o>.1&&(o=.1),o<.06&&(o=.06),Math.round(o*100)/100}function He(t,e,r){var o;return r?o=t.v+$t*e:o=t.v-Qt*e,o=Math.max(0,Math.min(1,o)),Math.round(o*100)/100}function U(t){for(var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=[],o=new v(t),a=o.toHsv(),l=qe;l>0;l-=1){var n=new v({h:Le(a,l,!0),s:Ne(a,l,!0),v:He(a,l,!0)});r.push(n)}r.push(o);for(var u=1;u<=Ue;u+=1){var f=new v({h:Le(a,u),s:Ne(a,u),v:He(a,u)});r.push(f)}return e.theme===\"dark\"?Yt.map(function(i){var m=i.index,p=i.amount;return new v(e.backgroundColor||\"#141414\").mix(r[m],p).toHexString()}):r.map(function(i){return i.toHexString()})}var je=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];je.primary=je[5];var We=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];We.primary=We[5];var Ve=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];Ve.primary=Ve[5];var ze=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];ze.primary=ze[5];var Ge=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];Ge.primary=Ge[5];var $e=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];$e.primary=$e[5];var Qe=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];Qe.primary=Qe[5];var Ye=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Ye.primary=Ye[5];var j=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];j.primary=j[5];var Ze=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];Ze.primary=Ze[5];var Ke=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];Ke.primary=Ke[5];var Je=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];Je.primary=Je[5];var Xe=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];Xe.primary=Xe[5];var et=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];et.primary=et[5];var tt=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];tt.primary=tt[5];var rt=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];rt.primary=rt[5];var ot=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];ot.primary=ot[5];var at=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];at.primary=at[5];var lt=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];lt.primary=lt[5];var nt=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];nt.primary=nt[5];var ft=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];ft.primary=ft[5];var it=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];it.primary=it[5];var dt=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];dt.primary=dt[5];var ut=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];ut.primary=ut[5];var st=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];st.primary=st[5];var mt=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];mt.primary=mt[5];function pt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable})),r.push.apply(r,o)}return r}function g(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?pt(Object(r),!0).forEach(function(o){h(t,o,r[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):pt(Object(r)).forEach(function(o){Object.defineProperty(t,o,Object.getOwnPropertyDescriptor(r,o))})}return t}var St=T(C());function re(){return!!(typeof window<\"u\"&&window.document&&window.document.createElement)}function oe(t,e){if(!t)return!1;if(t.contains)return t.contains(e);for(var r=e;r;){if(r===t)return!0;r=r.parentNode}return!1}var xt=\"data-rc-order\",ct=\"data-rc-priority\",Zt=\"rc-util-key\",ae=new Map;function ht(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},e=t.mark;return e?e.startsWith(\"data-\")?e:\"data-\".concat(e):Zt}function le(t){if(t.attachTo)return t.attachTo;var e=document.querySelector(\"head\");return e||document.body}function Kt(t){return t===\"queue\"?\"prependQueue\":t?\"prepend\":\"append\"}function ne(t){return Array.from((ae.get(t)||t).children).filter(function(e){return e.tagName===\"STYLE\"})}function Ot(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!re())return null;var r=e.csp,o=e.prepend,a=e.priority,l=a===void 0?0:a,n=Kt(o),u=n===\"prependQueue\",f=document.createElement(\"style\");f.setAttribute(xt,n),u&&l&&f.setAttribute(ct,\"\".concat(l)),r!=null&&r.nonce&&(f.nonce=r==null?void 0:r.nonce),f.innerHTML=t;var i=le(e),m=i.firstChild;if(o){if(u){var p=(e.styles||ne(i)).filter(function(d){if(![\"prepend\",\"prependQueue\"].includes(d.getAttribute(xt)))return!1;var c=Number(d.getAttribute(ct)||0);return l>=c});if(p.length)return i.insertBefore(f,p[p.length-1].nextSibling),f}i.insertBefore(f,m)}else i.appendChild(f);return f}function Jt(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=le(e);return(e.styles||ne(r)).find(function(o){return o.getAttribute(ht(e))===t})}function Xt(t,e){var r=ae.get(t);if(!r||!oe(document,r)){var o=Ot(\"\",e),a=o.parentNode;ae.set(t,a),t.removeChild(o)}}function gt(t,e){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=le(r),a=ne(o),l=g(g({},r),{},{styles:a});Xt(o,l);var n=Jt(e,l);if(n){var u,f;if((u=l.csp)!==null&&u!==void 0&&u.nonce&&n.nonce!==((f=l.csp)===null||f===void 0?void 0:f.nonce)){var i;n.nonce=(i=l.csp)===null||i===void 0?void 0:i.nonce}return n.innerHTML!==t&&(n.innerHTML=t),n}var m=Ot(t,l);return m.setAttribute(ht(l),e),m}function Tt(t){var e;return t==null||(e=t.getRootNode)===null||e===void 0?void 0:e.call(t)}function er(t){return Tt(t)instanceof ShadowRoot}function wt(t){return er(t)?Tt(t):null}var fe={},tr=[],rr=function(e){tr.push(e)};function or(t,e){if(0)var r}function ar(t,e){if(0)var r}function lr(){fe={}}function bt(t,e,r){!e&&!fe[r]&&(t(!1,r),fe[r]=!0)}function W(t,e){bt(or,t,e)}function nr(t,e){bt(ar,t,e)}W.preMessage=rr;W.resetWarned=lr;W.noteOnce=nr;var Ft=W;var S=T(C());function fr(t){return t.replace(/-(.)/g,function(e,r){return r.toUpperCase()})}function yt(t,e){Ft(t,\"[@ant-design/icons] \".concat(e))}function ie(t){return w(t)===\"object\"&&typeof t.name==\"string\"&&typeof t.theme==\"string\"&&(w(t.icon)===\"object\"||typeof t.icon==\"function\")}function Ct(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(t).reduce(function(e,r){var o=t[r];switch(r){case\"class\":e.className=o,delete e.class;break;default:delete e[r],e[fr(r)]=o}return e},{})}function V(t,e,r){return r?S.default.createElement(t.tag,g(g({key:e},Ct(t.attrs)),r),(t.children||[]).map(function(o,a){return V(o,\"\".concat(e,\"-\").concat(t.tag,\"-\").concat(a))})):S.default.createElement(t.tag,g({key:e},Ct(t.attrs)),(t.children||[]).map(function(o,a){return V(o,\"\".concat(e,\"-\").concat(t.tag,\"-\").concat(a))}))}function de(t){return U(t)[0]}function z(t){return t?Array.isArray(t)?t:[t]:[]}var ir=\"\\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\",vt=function(e){var r=(0,S.useContext)(B),o=r.csp,a=r.prefixCls,l=r.layer,n=ir;a&&(n=n.replace(/anticon/g,a)),l&&(n=\"@layer \".concat(l,\" {\\n\").concat(n,\"\\n}\")),(0,S.useEffect)(function(){var u=e.current,f=wt(u);gt(n,\"@ant-design-icons\",{prepend:!l,csp:o,attachTo:f})},[])};var dr=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],_={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function ur(t){var e=t.primaryColor,r=t.secondaryColor;_.primaryColor=e,_.secondaryColor=r||de(e),_.calculated=!!r}function sr(){return g({},_)}var G=function(e){var r=e.icon,o=e.className,a=e.onClick,l=e.style,n=e.primaryColor,u=e.secondaryColor,f=N(e,dr),i=St.useRef(),m=_;if(n&&(m={primaryColor:n,secondaryColor:u||de(n)}),vt(i),yt(ie(r),\"icon should be icon definiton, but got \".concat(r)),!ie(r))return null;var p=r;return p&&typeof p.icon==\"function\"&&(p=g(g({},p),{},{icon:p.icon(m.primaryColor,m.secondaryColor)})),V(p.icon,\"svg-\".concat(p.name),g(g({className:o,onClick:a,style:l,\"data-icon\":p.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},f),{},{ref:i}))};G.displayName=\"IconReact\";G.getTwoToneColors=sr;G.setTwoToneColors=ur;var E=G;function ue(t){var e=z(t),r=L(e,2),o=r[0],a=r[1];return E.setTwoToneColors({primaryColor:o,secondaryColor:a})}function kt(){var t=E.getTwoToneColors();return t.calculated?[t.primaryColor,t.secondaryColor]:t.primaryColor}var mr=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];ue(j.primary);var $=k.forwardRef(function(t,e){var r=t.className,o=t.icon,a=t.spin,l=t.rotate,n=t.tabIndex,u=t.onClick,f=t.twoToneColor,i=N(t,mr),m=k.useContext(B),p=m.prefixCls,d=p===void 0?\"anticon\":p,c=m.rootClassName,P=(0,Pt.default)(c,d,h(h({},\"\".concat(d,\"-\").concat(o.name),!!o.name),\"\".concat(d,\"-spin\"),!!a||o.name===\"loading\"),r),A=n;A===void 0&&u&&(A=-1);var b=l?{msTransform:\"rotate(\".concat(l,\"deg)\"),transform:\"rotate(\".concat(l,\"deg)\")}:void 0,F=z(f),I=L(F,2),J=I[0],It=I[1];return k.createElement(\"span\",y({role:\"img\",\"aria-label\":o.name},i,{ref:e,tabIndex:A,onClick:u,className:P}),k.createElement(E,{icon:o,primaryColor:J,secondaryColor:It,style:b}))});$.displayName=\"AntdIcon\";$.getTwoToneColor=kt;$.setTwoToneColor=ue;var Q=$;var Y=T(C());var pr={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M839.6 433.8L749 150.5a9.24 9.24 0 00-8.9-6.5h-77.4c-4.1 0-7.6 2.6-8.9 6.5l-91.3 283.3c-.3.9-.5 1.9-.5 2.9 0 5.1 4.2 9.3 9.3 9.3h56.4c4.2 0 7.8-2.8 9-6.8l17.5-61.6h89l17.3 61.5c1.1 4 4.8 6.8 9 6.8h61.2c1 0 1.9-.1 2.8-.4 2.4-.8 4.3-2.4 5.5-4.6 1.1-2.2 1.3-4.7.6-7.1zM663.3 325.5l32.8-116.9h6.3l32.1 116.9h-71.2zm143.5 492.9H677.2v-.4l132.6-188.9c1.1-1.6 1.7-3.4 1.7-5.4v-36.4c0-5.1-4.2-9.3-9.3-9.3h-204c-5.1 0-9.3 4.2-9.3 9.3v43c0 5.1 4.2 9.3 9.3 9.3h122.6v.4L587.7 828.9a9.35 9.35 0 00-1.7 5.4v36.4c0 5.1 4.2 9.3 9.3 9.3h211.4c5.1 0 9.3-4.2 9.3-9.3v-43a9.2 9.2 0 00-9.2-9.3zM416 702h-76V172c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v530h-76c-6.7 0-10.5 7.8-6.3 13l112 141.9a8 8 0 0012.6 0l112-141.9c4.1-5.2.4-13-6.3-13z\"}}]},name:\"sort-ascending\",theme:\"outlined\"},At=pr;var xr=function(e,r){return Y.createElement(Q,y({},e,{ref:r,icon:At}))},cr=Y.forwardRef(xr),se=cr;var Z=T(C());var hr={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M839.6 433.8L749 150.5a9.24 9.24 0 00-8.9-6.5h-77.4c-4.1 0-7.6 2.6-8.9 6.5l-91.3 283.3c-.3.9-.5 1.9-.5 2.9 0 5.1 4.2 9.3 9.3 9.3h56.4c4.2 0 7.8-2.8 9-6.8l17.5-61.6h89l17.3 61.5c1.1 4 4.8 6.8 9 6.8h61.2c1 0 1.9-.1 2.8-.4 2.4-.8 4.3-2.4 5.5-4.6 1.1-2.2 1.3-4.7.6-7.1zM663.3 325.5l32.8-116.9h6.3l32.1 116.9h-71.2zm143.5 492.9H677.2v-.4l132.6-188.9c1.1-1.6 1.7-3.4 1.7-5.4v-36.4c0-5.1-4.2-9.3-9.3-9.3h-204c-5.1 0-9.3 4.2-9.3 9.3v43c0 5.1 4.2 9.3 9.3 9.3h122.6v.4L587.7 828.9a9.35 9.35 0 00-1.7 5.4v36.4c0 5.1 4.2 9.3 9.3 9.3h211.4c5.1 0 9.3-4.2 9.3-9.3v-43a9.2 9.2 0 00-9.2-9.3zM310.3 167.1a8 8 0 00-12.6 0L185.7 309c-4.2 5.3-.4 13 6.3 13h76v530c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V322h76c6.7 0 10.5-7.8 6.3-13l-112-141.9z\"}}]},name:\"sort-descending\",theme:\"outlined\"},Dt=hr;var Or=function(e,r){return Z.createElement(Q,y({},e,{ref:r,icon:Dt}))},gr=Z.forwardRef(Or),me=gr;var K=T(Mt(),1);if(typeof window<\"u\"){let t=document.createElement(\"style\");t.textContent=\"html,\\nbody,\\n#app {\\n height: 100%;\\n margin: 0;\\n padding: 0;\\n overflow: hidden;\\n}\\n.danmu-container {\\n display: flex;\\n flex-direction: column;\\n height: 100%;\\n padding: 20px;\\n box-sizing: border-box;\\n}\\n.danmu-container .main-title {\\n text-align: center;\\n transition: all 0.3s ease-out;\\n max-height: 50px;\\n opacity: 1;\\n margin-bottom: 20px;\\n overflow: hidden;\\n}\\n.danmu-container .main-title.hidden {\\n max-height: 0;\\n opacity: 0;\\n margin: 0;\\n}\\n.danmu-container .search-input {\\n margin-bottom: 20px;\\n}\\n.danmu-container .result-container {\\n flex-grow: 1;\\n overflow: hidden;\\n display: flex;\\n flex-direction: column;\\n}\\n.danmu-container .result-container .spin-container {\\n display: flex;\\n justify-content: center;\\n align-items: center;\\n height: 100%;\\n}\\n.danmu-container .result-container > .ant-tabs {\\n flex-grow: 1;\\n display: flex;\\n flex-direction: column;\\n overflow: hidden;\\n}\\n.danmu-container .result-container > .ant-tabs .ant-tabs-content-holder {\\n overflow-y: auto;\\n flex-grow: 1;\\n}\\n.drawer {\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n}\\n.drawer .ant-drawer-mask {\\n left: 0;\\n right: 0;\\n top: 0;\\n bottom: 0;\\n}\\n.drawer .ant-drawer-content-wrapper {\\n left: 0;\\n right: 0;\\n}\\n.drawer .ant-drawer-title {\\n white-space: nowrap;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.drawer .ant-list-item {\\n padding: 16px 24px;\\n}\\n@media (max-width: 768px) {\\n .danmu-container {\\n padding: 10px;\\n }\\n .danmu-container .search-input {\\n margin-bottom: 8px;\\n }\\n .danmu-container .ant-tabs-left > .ant-tabs-nav {\\n width: 80px;\\n }\\n .danmu-container .ant-tabs-nav {\\n margin: 0;\\n }\\n .danmu-container .ant-tabs-tab {\\n font-size: 12px;\\n padding: 8px 12px;\\n }\\n .danmu-container .anime-episode-container {\\n flex-direction: column;\\n }\\n .danmu-container .anime-episode-container .anime-list-col,\\n .danmu-container .anime-episode-container .episode-list-col {\\n width: 100%;\\n border-right: none;\\n max-height: 50vh;\\n }\\n .danmu-container .anime-episode-container .anime-list-col {\\n border-bottom: 1px solid #f0f0f0;\\n }\\n .drawer .ant-drawer-header {\\n padding: 16px 12px;\\n }\\n .drawer .ant-list-item {\\n padding: 12px;\\n }\\n}\\n\",document.head.appendChild(t)}var{Search:Tr}=x.Input,{Title:wr}=x.Typography,br=({animes:t,sourceUrl:e,sourceName:r})=>{let[o,a]=(0,s.useState)(!1),[l,n]=(0,s.useState)(null),[u,f]=(0,s.useState)(!1),i=async d=>{try{let c=\"\".concat(e,\"/api/v2/comment/\").concat(d.episodeId);await K.default.post(\"/website/danmu/push\",{url:\"\".concat(c,\"?format=xml\"),previewUrl:\"\".concat(c,\"?format=json\"),sourceName:r}),a(!1)}catch(c){console.error(c),x.message.error(\"\\u63A8\\u9001\\u5931\\u8D25\")}},m=d=>{n(d),a(!0),f(!1)},p=()=>{l&&(n(Oe(he({},l),{episodes:[...l.episodes].reverse()})),f(d=>!d))};return!t||t.length===0?s.default.createElement(x.Empty,{description:\"\\u8BE5\\u6765\\u6E90\\u4E0B\\u65E0\\u7ED3\\u679C\"}):s.default.createElement(s.default.Fragment,null,s.default.createElement(x.List,{dataSource:t,renderItem:d=>s.default.createElement(x.List.Item,{onClick:()=>m(d)},d.animeTitle)}),l&&s.default.createElement(x.Drawer,{title:l.animeTitle,placement:\"bottom\",onClose:()=>a(!1),open:o,height:\"80%\",destroyOnClose:!0,closable:!1,bodyStyle:{padding:0},rootClassName:\"drawer\",extra:s.default.createElement(x.Button,{icon:u?s.default.createElement(se,null):s.default.createElement(me,null),onClick:p,style:{marginLeft:16}})},s.default.createElement(x.List,{dataSource:l.episodes,renderItem:d=>s.default.createElement(x.List.Item,{onClick:()=>i(d)},d.episodeTitle)})))};function Et(){let[t,e]=(0,s.useState)([]),[r,o]=(0,s.useState)(!1),[a,l]=(0,s.useState)([]),[n,u]=(0,s.useState)(!1),[f,i]=(0,s.useState)(new URLSearchParams(window.location.search).get(\"keyword\")||\"\");(0,s.useEffect)(()=>{K.default.get(\"/website/danmu/setting\").then(d=>{d.data.code===0&&d.data.data&&d.data.data.urls?e(d.data.data.urls.map(c=>({name:c.name||new URL(c.address).hostname,url:c.address}))):x.message.error(\"\\u83B7\\u53D6\\u5F39\\u5E55\\u6E90\\u5931\\u8D25\")}).catch(d=>{console.error(d),x.message.error(\"\\u83B7\\u53D6\\u5F39\\u5E55\\u6E90\\u5931\\u8D25\")})},[]);let m=(0,s.useCallback)((d,c=!1)=>{let P=d.trim();if(!P){c||x.message.warning(\"\\u8BF7\\u8F93\\u5165\\u641C\\u7D22\\u5173\\u952E\\u8BCD\");return}if(t.length===0&&!c){x.message.error(\"\\u6CA1\\u6709\\u53EF\\u7528\\u7684\\u5F39\\u5E55\\u6E90\");return}if(i(P),!c){let b=new URL(window.location);b.searchParams.set(\"keyword\",P),window.history.pushState({},\"\",b)}o(!0),u(!0),l([]);let A=0;t.forEach(b=>{K.default.get(\"\".concat(b.url,\"/api/v2/search/episodes\"),{params:{anime:P}}).then(F=>{if(F.data.success&&F.data.animes&&F.data.animes.length>0){let I={sourceName:b.name,sourceUrl:b.url,data:F.data};l(J=>[...J,I])}}).catch(F=>console.error(\"Search from \".concat(b.name,\" failed:\"),F)).finally(()=>{A++,A===t.length&&o(!1)})})},[t]);(0,s.useEffect)(()=>{if(t.length>0){let c=new URLSearchParams(window.location.search).get(\"keyword\");c&&m(c,!0)}},[t,m]);let p=a.map((d,c)=>({key:\"\".concat(d.sourceName,\"-\").concat(c),label:d.sourceName,children:s.default.createElement(br,{animes:d.data.animes,sourceUrl:d.sourceUrl,sourceName:d.sourceName})}));return s.default.createElement(\"div\",{className:\"danmu-container\"},s.default.createElement(wr,{level:2,className:\"main-title \".concat(n?\"hidden\":\"\")},\"\\u5F39\\u5E55\\u641C\\u7D22\"),s.default.createElement(Tr,{placeholder:\"\\u8F93\\u5165\\u5F71\\u89C6\\u540D\\u79F0...\",enterButton:\"\\u641C\\u7D22\",size:\"large\",onSearch:d=>m(d),loading:r,className:\"search-input\",value:f,onChange:d=>i(d.target.value)}),s.default.createElement(\"div\",{className:\"result-container\"},n&&a.length===0&&r&&s.default.createElement(\"div\",{className:\"spin-container\"},s.default.createElement(x.Spin,{size:\"large\"})),a.length>0&&s.default.createElement(x.Tabs,{items:p,size:\"small\"}),n&&a.length===0&&!r&&s.default.createElement(x.Empty,{description:\"\\u672A\\u627E\\u5230\\u76F8\\u5173\\u7ED3\\u679C\"})))}function Fr(){(0,_t.createRoot)(document.getElementById(\"app\")).render(s.default.createElement(Et,null))}\n/*! Bundled license information:\n\nclassnames/index.js:\n (*!\n \tCopyright (c) 2018 Jed Watson.\n \tLicensed under the MIT License (MIT), see\n \thttp://jedwatson.github.io/classnames\n *)\n*/\n"}
module.exports.renderDanmu();
})();
`;
}();
var bxt=Object.create;var ON=Object.defineProperty;var _xt=Object.getOwnPropertyDescriptor;var Ext=Object.getOwnPropertyNames;var vxt=Object.getPrototypeOf,Sxt=Object.prototype.hasOwnProperty;var yr=(t,e)=>()=>(t&&(e=t(t=0)),e);var _=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),us=(t,e)=>{for(var r in e)ON(t,r,{get:e[r],enumerable:!0})},M0e=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Ext(e))!Sxt.call(t,s)&&s!==r&&ON(t,s,{get:()=>e[s],enumerable:!(n=_xt(e,s))||n.enumerable});return t};var Ce=(t,e,r)=>(r=t!=null?bxt(vxt(t)):{},M0e(e||!t||!t.__esModule?ON(r,"default",{value:t,enumerable:!0}):r,t)),Ixt=t=>M0e(ON({},"__esModule",{value:!0}),t);var $0e=_((cWr,W0e)=>{"use strict";function Cxt(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}}W0e.exports=Cxt});var F0e=_((uWr,VW)=>{"use strict";var Txt=$0e();function U0e(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=Txt(wxt),s=null,i=null,a=0,o=null,c={push:h,drain:$a,saturated:$a,pause:l,paused:!1,get concurrency(){return r},set concurrency(T){if(!(T>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=T,!c.paused)for(;s&&a<r;)a++,g()},running:u,resume:m,idle:p,length:d,getQueue:f,unshift:y,empty:$a,kill:A,killAndDrain:b,error:S,abort:x};return c;function u(){return a}function l(){c.paused=!0}function d(){for(var T=s,I=0;T;)T=T.next,I++;return I}function f(){for(var T=s,I=[];T;)I.push(T.value),T=T.next;return I}function m(){if(c.paused){if(c.paused=!1,s===null){a++,g();return}for(;s&&a<r;)a++,g()}}function p(){return a===0&&c.length()===0}function h(T,I){var R=n.get();R.context=t,R.release=g,R.value=T,R.callback=I||$a,R.errorHandler=o,a>=r||c.paused?i?(i.next=R,i=R):(s=R,i=R,c.saturated()):(a++,e.call(t,R.value,R.worked))}function y(T,I){var R=n.get();R.context=t,R.release=g,R.value=T,R.callback=I||$a,R.errorHandler=o,a>=r||c.paused?s?(R.next=s,s=R):(s=R,i=R,c.saturated()):(a++,e.call(t,R.value,R.worked))}function g(T){T&&n.release(T);var I=s;I&&a<=r?c.paused?a--:(i===s&&(i=null),s=I.next,I.next=null,e.call(t,I.value,I.worked),i===null&&c.empty()):--a===0&&c.drain()}function A(){s=null,i=null,c.drain=$a}function b(){s=null,i=null,c.drain(),c.drain=$a}function x(){var T=s;for(s=null,i=null;T;){var I=T.next,R=T.callback,N=T.errorHandler,k=T.value,B=T.context;T.value=null,T.callback=$a,T.errorHandler=null,N&&N(new Error("abort"),k),R.call(B,new Error("abort")),T.release(T),T=I}c.drain=$a}function S(T){o=T}}function $a(){}function wxt(){this.value=null,this.callback=$a,this.next=null,this.release=$a,this.context=null,this.errorHandler=null;var t=this;this.worked=function(r,n){var s=t.callback,i=t.errorHandler,a=t.value;t.value=null,t.callback=$a,t.errorHandler&&i(r,a),s.call(t.context,r,n),t.release(t)}}function Rxt(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=U0e(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,m){i(l,function(p,h){if(p){m(p);return}f(h)})});return d.catch($a),d}function c(l){var d=new Promise(function(f,m){a(l,function(p,h){if(p){m(p);return}f(h)})});return d.catch($a),d}function u(){var l=new Promise(function(d){process.nextTick(function(){if(s.idle())d();else{var f=s.drain;s.drain=function(){typeof f=="function"&&f(),d(),s.drain=f}}})});return l}}VW.exports=U0e;VW.exports.promise=Rxt});var zW=_((lWr,kN)=>{"use strict";var{format:Nxt}=require("node:util");function Oxt(){return`${this.name} [${this.code}]: ${this.message}`}function KW(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=Nxt(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=Oxt,s}kN.exports=KW;kN.exports.default=KW;kN.exports.createError=KW});var PN=_((dWr,q0e)=>{"use strict";var{createError:Op}=zW();q0e.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 AA=_((fWr,j0e)=>{"use strict";var kxt=Symbol("avvio.Boot"),Pxt=Symbol("isOnCloseHandler"),Dxt=Symbol("avvio.ThenifyDoNotWrap"),Bxt=Symbol("avvio.TimeTree.untrackNode"),Lxt=Symbol("avvio.TimeTree.trackNode"),Mxt=Symbol("avvio.TimeTree.getParent"),Wxt=Symbol("avvio.TimeTree.getNode"),$xt=Symbol("avvio.TimeTree.addNode"),Uxt=Symbol.for("plugin-meta");j0e.exports={kAvvio:kxt,kIsOnCloseHandler:Pxt,kThenifyDoNotWrap:Dxt,kUntrackNode:Bxt,kTrackNode:Lxt,kGetParent:Mxt,kGetNode:Wxt,kAddNode:$xt,kPluginMeta:Uxt}});var Y0e=_((pWr,z0e)=>{"use strict";var{kUntrackNode:Q0e,kTrackNode:YW,kGetParent:H0e,kGetNode:G0e,kAddNode:V0e}=AA(),JW=class{constructor(){this.root=null,this.tableId=new Map,this.tableLabel=new Map}[YW](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])}[Q0e](e){this.tableId.delete(e.id);let r=this.tableLabel.get(e.label);r.pop(),r.length===0&&this.tableLabel.delete(e.label)}[H0e](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}[G0e](e){return this.tableId.get(e)}[V0e](e,r,n){let s=this[H0e](e);if(s===null)return this.root={parent:null,id:"root",label:r,nodes:[],start:n,stop:null,diff:-1},this[YW](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[YW](o),a}start(e,r,n=Date.now()){return this[V0e](e,r,n)}stop(e,r=Date.now()){let n=this[G0e](e);n&&(n.stop=r,n.diff=n.stop-n.start||0,this[Q0e](n))}toJSON(){return Object.assign({},this.root)}prettyPrint(){return K0e(this.toJSON())}};function K0e(t,e=""){let r=e,n=t.nodes.length,s=n-1;r+=`${t.label} ${t.diff} ms
`;for(let i=0;i<n;++i){let a=t.nodes[i],o=e+(i===s?" ":"\u2502 ");r+=e,r+=i===s?"\u2514\u2500":"\u251C\u2500",r+=a.nodes.length===0?"\u2500 ":"\u252C ",r+=K0e(a,o).slice(e.length+2)}return r}z0e.exports={TimeTree:JW}});var DN=_((mWr,J0e)=>{"use strict";var{debuglog:Fxt}=require("node:util"),qxt=Fxt("avvio");J0e.exports={debug:qxt}});var Z0e=_((hWr,X0e)=>{"use strict";function jxt(){let t={resolve:null,reject:null,promise:null};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}X0e.exports={createPromise:jxt}});var tme=_((gWr,eme)=>{"use strict";var{kPluginMeta:XW}=AA();function Qxt(t,e){return t[XW]&&t[XW].name?t[XW].name:e&&e.name?e.name:t.name?t.name:t.toString().split(`
`).slice(0,2).map(r=>r.trim()).join(" -- ")}eme.exports={getPluginName:Qxt}});var BN=_((yWr,rme)=>{"use strict";function Hxt(t){return t!==null&&typeof t=="object"&&typeof t.then=="function"}rme.exports={isPromiseLike:Hxt}});var sme=_((AWr,nme)=>{"use strict";var{EventEmitter:Gxt}=require("node:events"),{inherits:Vxt}=require("node:util"),{debug:gi}=DN(),{createPromise:Kxt}=Z0e(),{AVV_ERR_PLUGIN_EXEC_TIMEOUT:zxt}=PN(),{getPluginName:Yxt}=tme(),{isPromiseLike:Jxt}=BN();function xA(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=Yxt(e,r),this.queue.pause(),this._error=null,this.loaded=!1,this._promise=null,this.startTime=null}Vxt(xA,Gxt);xA.prototype.exec=function(t,e){gi("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){gi("loading complete",n);return}this._error=c,gi(c?"exec errored":"exec completed",n),s=!0,i&&clearTimeout(i),e(c)};this.timeout>0&&(gi("setting up timeout",n,this.timeout),i=setTimeout(function(){gi("timed out",n),i=null;let c=new zxt(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);Jxt(o)&&(gi("exec: resolving promise",n),o.then(()=>process.nextTick(a),c=>process.nextTick(a,c)))};xA.prototype.loadedSoFar=function(){if(gi("loadedSoFar",this.name),this.loaded)return Promise.resolve();let t=()=>{this.server.after((r,n)=>{this._error=r,this.queue.pause(),this._promise&&(r?(gi("rejecting promise",this.name,r),this._promise.reject(r)):(gi("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=Kxt(),e=this._promise.promise,this.server?t():this.on("start",t)),e};xA.prototype.enqueue=function(t,e){gi("enqueue",this.name,t.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.queue.push(t,e)};xA.prototype.finish=function(t,e){gi("finish",this.name,t);let r=()=>{this.loaded||(gi("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(gi("check",this.name,this.queue.length(),this.queue.running(),this._promise),this.queue.length()===0&&this.queue.running()===0)if(this._promise){let s=()=>{gi("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(s,s),this._promise=null}else r();else gi("delayed",this.name),this.queue.drain=()=>{gi("drain",this.name),this.queue.drain=Xxt,queueMicrotask(n)}};queueMicrotask(n),this.queue.resume()};function Xxt(){}nme.exports={Plugin:xA}});var ame=_((xWr,ime)=>{"use strict";var{AVV_ERR_PLUGIN_NOT_VALID:ZW}=PN();function Zxt(t){if(!(t&&(typeof t=="function"||typeof t.then=="function")))throw Array.isArray(t)?new ZW("array"):t===null?new ZW("null"):new ZW(typeof t)}ime.exports={validatePlugin:Zxt}});var cme=_((bWr,ome)=>{"use strict";function ebt(t){return t!==null&&typeof t=="object"&&typeof t.default=="function"}ome.exports={isBundledOrTypescriptPlugin:ebt}});var dme=_((_Wr,lme)=>{"use strict";var{debug:ume}=DN(),{kThenifyDoNotWrap:e8}=AA();function tbt(){if(this.booted){ume("thenify returning undefined because we are already booted");return}if(this[e8]){this[e8]=!1;return}return ume("thenify"),(t,e)=>this._loadRegistered().then(()=>(this[e8]=!0,t(this._server)),e)}lme.exports={thenify:tbt}});var pme=_((EWr,fme)=>{"use strict";var{isPromiseLike:rbt}=BN(),{kAvvio:nbt}=AA();function sbt(t,e,r){let n=t.apply(t,e);rbt(n)&&!n[nbt]?n.then(()=>process.nextTick(r),s=>process.nextTick(r,s)):r&&process.nextTick(r)}fme.exports={executeWithThenable:sbt}});var _me=_((vWr,r8)=>{"use strict";var LN=F0e(),ibt=require("node:events").EventEmitter,abt=require("node:util").inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:dE,AVV_ERR_CALLBACK_NOT_FN:bA,AVV_ERR_ROOT_PLG_BOOTED:obt,AVV_ERR_READY_TIMEOUT:cbt,AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:ubt}=PN(),{kAvvio:gme,kIsOnCloseHandler:yme}=AA(),{TimeTree:lbt}=Y0e(),{Plugin:Ame}=sme(),{debug:_A}=DN(),{validatePlugin:dbt}=ame(),{isBundledOrTypescriptPlugin:fbt}=cme(),{isPromiseLike:pbt}=BN(),{thenify:xme}=dme(),{executeWithThenable:mme}=pme();function ls(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 ls(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 lbt,this._readyQ=LN(this,bme,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=hme},this._closeQ=LN(this,hbt,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=hme},this._doStart=null;let n=this;this._root=new Ame(LN(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=>{_A("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()})}abt(ls,ibt);ls.prototype.start=function(){return this.started=!0,process.nextTick(this._doStart),this};ls.prototype.override=function(t,e,r){return t};ls.prototype[gme]=!0;ls.prototype.use=function(t,e){return this._lastUsed=this._addPlugin(t,e,!1),this};ls.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(ls.prototype,"then",{get:xme});ls.prototype._addPlugin=function(t,e,r){if(fbt(t)&&(t=t.default),dbt(t),e=e||{},this.booted)throw new obt;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 Ame(LN(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};ls.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 dE(n,"use");if(r[n]=function(c,u){return e.use(c,u),this},r[s])throw new dE(s,"after");if(r[s]=function(c){return typeof c!="function"?e._loadRegistered():(e.after(t8(c,this)),this)},r[i])throw new dE(i,"ready");if(r[i]=function(c){if(c&&typeof c!="function")throw new bA(i,typeof c);return e.ready(c?t8(c,this):void 0)},r[a])throw new dE(a,"onClose");if(r[a]=function(c){if(typeof c!="function")throw new bA(a,typeof c);return e.onClose(gbt(c,this)),this},r[o])throw new dE(o,"close");if(r[o]=function(c){if(c&&typeof c!="function")throw new bA(o,typeof c);return c?(e.close(t8(c,this)),this):e.close()},r.then)throw new ubt("then");Object.defineProperty(r,"then",{get:xme.bind(e)}),r[gme]=!0};ls.prototype.after=function(t){if(!t)return this._loadRegistered();this._addPlugin(e.bind(this),{},!0);function e(r,n,s){bme.call(this,t,s)}return this};ls.prototype.onClose=function(t){if(typeof t!="function")throw new bA("onClose",typeof t);return t[yme]=!0,this._closeQ.unshift(t,e=>{e&&(this._error=e)}),this};ls.prototype.close=function(t){let e;if(t){if(typeof t!="function")throw new bA("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};ls.prototype.ready=function(t){if(t){if(typeof t!="function")throw new bA("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)}})};ls.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)})})};ls.prototype.prettyPrint=function(){return this.pluginTree.prettyPrint()};ls.prototype.toJSON=function(){return this.pluginTree.toJSON()};ls.prototype._loadPlugin=function(t,e){let r=this;if(pbt(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){_A("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 _A("override errored",t.name),i(a)}t.exec(s,i);function i(a){t.finish(a,o=>{r._current.shift(),e(o)})}};ls.prototype._loadPluginNextTick=function(t,e){process.nextTick(this._loadPlugin.bind(this),t,e)};function hme(){}function bme(t,e){let r=this._server,n=this._error;if(this._error=null,t.length===0)this._error=n,mme(t,[],e);else if(t.length===1)mme(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 mbt.call(this,t,n,r,e)}function mbt(t,e,r,n){let s=t.unwrappedName??t.name;_A("setting up ready timeout",s,this._opts.timeout);let i=setTimeout(()=>{_A("timed out",s),i=null;let o=new cbt(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 hbt(t,e){let r=this._server,n=t[yme];if(t.length===0||t.length===1){let s;n?s=t(r):s=t(this._error),s&&typeof s.then=="function"?(_A("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 gbt(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 t8(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)}}r8.exports=ls;r8.exports.express=function(t){return ls(t,{expose:{use:"load"}})}});var Ks=_((SWr,Eme)=>{"use strict";var ybt={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")};Eme.exports=ybt});var i8=_((IWr,MN)=>{"use strict";var{format:n8}=require("node:util");function Abt(t){return vme({...t,name:"DeprecationWarning"})}function vme({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=n8(r,a,o,c):a&&o?u=n8(r,a,o):a?u=n8(r,a):u=r,u},i}var s8={createWarning:vme,createDeprecation:Abt};MN.exports=s8;MN.exports.default=s8;MN.exports.processWarning=s8});var Od=_((CWr,Ime)=>{"use strict";var{createDeprecation:Di,createWarning:Sme}=i8(),xbt=Di({code:"FSTDEP005",message:'You are accessing the deprecated "request.connection" property. Use "request.socket" instead.'}),bbt=Di({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"}),_bt=Di({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.'}),Ebt=Di({code:"FSTDEP008",message:'You are using route constraints via the route { version: "..." } option, use { constraints: { version: "..." } } option instead.'}),vbt=Di({code:"FSTDEP009",message:'You are using a custom route versioning strategy via the server { versioning: "..." } option, use { constraints: { version: "..." } } option instead.'}),Sbt=Di({code:"FSTDEP010",message:'Modifying the "reply.sent" property is deprecated. Use the "reply.hijack()" method instead.'}),Ibt=Di({code:"FSTDEP011",message:'Variadic listen method is deprecated. Please use ".listen(optionsObject)" instead. The variadic signature will be removed in `fastify@5`.'}),Cbt=Di({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`.'}),Tbt=Di({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`.'}),wbt=Di({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."}),Rbt=Di({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`.'}),Nbt=Di({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`.'}),Obt=Di({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`.'}),kbt=Di({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`.'}),Pbt=Di({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`.'}),Dbt=Di({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`.'}),Bbt=Sme({name:"FastifyWarning",code:"FSTWRN001",message:"The %s schema for %s: %s is missing. This may indicate the schema is not well specified.",unlimited:!0}),Lbt=Sme({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});Ime.exports={FSTDEP005:xbt,FSTDEP006:bbt,FSTDEP007:_bt,FSTDEP008:Ebt,FSTDEP009:vbt,FSTDEP010:Sbt,FSTDEP011:Ibt,FSTDEP012:Cbt,FSTDEP013:Tbt,FSTDEP014:wbt,FSTDEP015:Rbt,FSTDEP016:Nbt,FSTDEP017:Obt,FSTDEP018:kbt,FSTDEP019:Pbt,FSTDEP020:Dbt,FSTWRN001:Bbt,FSTWRN002:Lbt}});var Bi=_((TWr,WN)=>{"use strict";var He=zW(),EA={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 Mbt(t,e){return e.cause=t,e}WN.exports=EA;WN.exports.appendStackTrace=Mbt;WN.exports.AVVIO_ERRORS_MAP={AVV_ERR_CALLBACK_NOT_FN:EA.FST_ERR_PLUGIN_CALLBACK_NOT_FN,AVV_ERR_PLUGIN_NOT_VALID:EA.FST_ERR_PLUGIN_NOT_VALID,AVV_ERR_ROOT_PLG_BOOTED:EA.FST_ERR_ROOT_PLG_BOOTED,AVV_ERR_PARENT_PLG_LOADED:EA.FST_ERR_PARENT_PLUGIN_BOOTED,AVV_ERR_READY_TIMEOUT:EA.FST_ERR_PLUGIN_TIMEOUT}});var kp=_((wWr,Dme)=>{"use strict";var Wbt=["onRoute","onRegister","onReady","onListen","preClose","onClose"],Rme=["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError","onRequestAbort"],$bt=Rme.concat(Wbt),{FST_ERR_HOOK_INVALID_TYPE:Ubt,FST_ERR_HOOK_INVALID_HANDLER:Fbt,FST_ERR_SEND_UNDEFINED_ERR:$N,FST_ERR_HOOK_TIMEOUT:qbt,FST_ERR_HOOK_NOT_SUPPORTED:jbt,AVVIO_ERRORS_MAP:Cme,appendStackTrace:Tme}=Bi(),{kChildren:fE,kHooks:Nme,kRequestPayloadStream:wme}=Ks();function pE(){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=[]}pE.prototype=Object.create(null);pE.prototype.validate=function(t,e){if(typeof t!="string")throw new Ubt;if(Array.isArray(this[t])===!1)throw new jbt(t);if(typeof e!="function")throw new Fbt(t,Object.prototype.toString.call(e))};pE.prototype.add=function(t,e){this.validate(t,e),this[t].push(e)};function Qbt(t){let e=new pE;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 Ome(t,e,r,n){let s=r[Nme][t],i=0,a=0;c();function o(l){if(l){l.code==="AVV_ERR_READY_TIMEOUT"?l=Tme(l,new qbt(t)):l=Cme[l.code]!=null?Tme(l,new Cme[l.code](l.message)):l,n(l);return}n()}function c(l){if(l){o(l);return}if(i===s.length&&a===r[fE].length){i===0&&a===0?o():e(function(f,m){o(f),m(f)});return}if(i===s.length&&a<r[fE].length){let d=r[fE][a++];Ome(t,e,d,c);return}e(u(s[i++],r)),c()}function u(l,d){return function(f,m){if(f){m(f);return}if(l.length===1){try{l.call(d,m)}catch(p){m(p)}return}try{let p=l.call(d);if(p&&typeof p.then=="function"){p.then(m,m);return}}catch(p){f=p}m(f)}}}function kme(t){let e=t[Nme].onListen,r=e.length,n=0,s=0;i();function i(o){if(o&&t.log.error(o),n===r){for(;s<t[fE].length;){let c=t[fE][s++];kme(c)}return}a(e[n++],t,i)}async function a(o,c,u){if(o.length===1){try{o.call(c,u)}catch(l){u(l)}return}try{let l=o.call(c);if(l&&typeof l.then=="function"){l.then(u,u);return}u()}catch(l){u(l)}}}function vA(t){return function(r,n,s,i){let a=0;function o(l){if(l||a===r.length){i(l,n,s);return}let d;try{d=t(r[a++],n,s,o)}catch(f){i(f,n,s);return}d&&typeof d.then=="function"&&d.then(c,u)}function c(){o()}function u(l){l||(l=new $N),i(l,n,s)}o()}}function Hbt(t,e,r,n){return t(e,r,n)}var Gbt=vA(Hbt),Vbt=vA(mE),Kbt=vA(mE),zbt=vA(mE),Ybt=vA(mE);function Pme(t,e,r,n,s){let i=0;function a(u,l){if(u){s(u,e,r,n);return}if(l!==void 0&&(n=l),i===t.length){s(null,e,r,n);return}let d;try{d=t[i++](e,r,n,a)}catch(f){s(f,e,r);return}d&&typeof d.then=="function"&&d.then(o,c)}function o(u){a(null,u)}function c(u){u||(u=new $N),s(u,e,r,n)}a()}var Jbt=Pme;function Xbt(t,e,r,n){let s=0;function i(c,u){if(r.sent)return;if(u!==void 0&&(e[wme]=u),c||s===t.length){n(c,e,r);return}let l;try{l=t[s++](e,r,e[wme],i)}catch(d){n(d,e,r);return}l&&typeof l.then=="function"&&l.then(a,o)}function a(c){i(null,c)}function o(c){c||(c=new $N),n(c,e,r)}i()}function Zbt(t,e,r){let n=0;function s(o){if(o||n===t.length){r(o,e);return}let c;try{c=t[n++](e,s)}catch(u){r(u,e);return}c&&typeof c.then=="function"&&c.then(i,a)}function i(){s()}function a(o){o||(o=new $N),r(o,e)}s()}function mE(t,e,r,n){if(r.sent!==!0)return t(e,r,n)}Dme.exports={Hooks:pE,buildHooks:Qbt,hookRunnerGenerator:vA,preParsingHookRunner:Xbt,onResponseHookRunner:Gbt,onSendHookRunner:Pme,preSerializationHookRunner:Jbt,onRequestAbortHookRunner:Zbt,hookIterator:mE,hookRunnerApplication:Ome,onListenHookRunner:kme,preHandlerHookRunner:Kbt,preValidationHookRunner:Vbt,onRequestHookRunner:Ybt,onTimeoutHookRunner:zbt,lifecycleHooks:Rme,supportedHooks:$bt}});var Qme=_((RWr,o8)=>{"use strict";var e1t=require("node:http"),t1t=require("node:https"),r1t=require("node:dns"),{FSTDEP011:Bme}=Od(),{kState:Li,kOptions:n1t,kServerBindings:s1t}=Ks(),{onListenHookRunner:UN}=kp(),{FST_ERR_HTTP2_INVALID_VERSION:i1t,FST_ERR_REOPENED_CLOSE_SERVER:Wme,FST_ERR_REOPENED_SERVER:$me,FST_ERR_LISTEN_OPTIONS_INVALID:a1t}=Bi();o8.exports.createServer=o1t;o8.exports.compileValidateHTTPVersion=u1t;function Ume(t){return`Server listening at ${t}`}function o1t(t,e){let r=qme(t,e);function n(s,...i){let a=i.slice(-1).pop(),o=Object.prototype.toString.call(arguments[0]);if(arguments.length===0)s=a8([]);else if(arguments.length>0&&o!=="[object Object]"&&o!=="[object Function]")Bme(),s=a8(Array.from(arguments)),a=s.cb;else if(i.length>1){Bme();let u=s.path?[s.path]:[s.port??0,s.host??"localhost"];Object.assign(s,a8([...u,...i]))}else s.cb=a;if(s.signal){if(typeof s.signal.on!="function"&&typeof s.signal.addEventListener!="function")throw new a1t("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}Lme.call(this,r,e,t,s,()=>{this[Li].listening=!0,a(null,l),UN(this)})}:s.cb=(u,l)=>{if(u){a(u,l);return}this[Li].listening=!0,a(null,l),UN(this)},a===void 0)return c1t.call(this,r,s).then(l=>new Promise((d,f)=>{c==="localhost"?Lme.call(this,r,e,t,s,()=>{this[Li].listening=!0,d(l),UN(this)}):(d(l),UN(this))}));this.ready(Fme.call(this,r,s))}return{server:r,listen:n}}function Lme(t,e,r,n,s){this[Li].listening=!1,r1t.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 m=Object.assign({},n,{host:f.address,port:d.port,cb:y=>{u++,y||this[s1t].push(p),u===c&&s()}}),p=qme(r,e),h=()=>{p.close(()=>{}),r.forceCloseConnections==="idle"?p.closeIdleConnections():typeof p.closeAllConnections=="function"&&r.forceCloseConnections&&p.closeAllConnections()};p.on("upgrade",t.emit.bind(t,"upgrade")),t.on("unref",h),t.on("close",h),t.on("error",h),this[Li].listening=!1,Fme.call(this,p,m)()}}if(c===0){s();return}let l=t.unref;t.unref=function(){l.call(t),t.emit("unref")}})}function Fme(t,e){let r=n=>{if(t.removeListener("error",r),n)this[Li].listening=!1,e.cb(n,null);else{let s=jme.call(this,t,e.listenTextResolver||Ume);e.cb(null,s)}};return n=>{if(n!=null)return e.cb(n);if(this[Li].listening&&this[Li].closing)return e.cb(new Wme,null);if(this[Li].listening)return e.cb(new $me,null);t.once("error",r),this[Li].closing||(t.listen(e,r),this[Li].listening=!0)}}function c1t(t,e){return this[Li].listening&&this[Li].closing?Promise.reject(new Wme):this[Li].listening?Promise.reject(new $me):this.ready().then(()=>{let r,n=new Promise((i,a)=>{r=o=>{this[Li].listening=!1,a(o)},t.once("error",r)}),s=new Promise((i,a)=>{t.listen(e,()=>{t.removeListener("error",r),i(jme.call(this,t,e.listenTextResolver||Ume))}),this[Li].listening=!0});return Promise.race([n,s])})}function u1t(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 qme(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=Mme().createSecureServer(n,e):r=Mme().createServer(e),r.on("session",d1t(t.http2SessionTimeout))):(n?r=t1t.createServer(n,e):r=e1t.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 a8(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:l1t(n),r.host=s>=2&&t[1]?t[1]:"localhost",r.backlog=s>=3?t[2]:void 0),r}function l1t(t){let e=Number(t);return e>=0&&!Number.isNaN(e)&&Number.isInteger(e)?e:0}function jme(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[n1t].https?"s":"")+"://")+r;let s=e(r);return this.log.info(s),r}function Mme(){try{return require("node:http2")}catch{throw new i1t}}function d1t(t){return function(e){e.setTimeout(t,f1t)}}function f1t(){this.close()}});var d8=_((NWr,Gme)=>{"use strict";var{kSchemaHeaders:jN,kSchemaParams:c8,kSchemaQuerystring:u8,kSchemaBody:l8,kSchemaResponse:Hme}=Ks(),p1t=/^[1-5]{1}[0-9]{2}$|^[1-5]xx$|^default$/,{FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:m1t}=Bi(),{FSTWRN001:FN}=Od();function h1t(t,e){if(!t.schema||!t.schema.response)return;let{method:r,url:n}=t.config||{};t[Hme]=Object.keys(t.schema.response).reduce(function(s,i){let a=t.schema.response[i];if(i=i.toLowerCase(),!p1t.exec(i))throw new m1t;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 g1t(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[jN]=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[jN]=e({schema:o,method:s,url:i,httpPart:"headers"})}else Object.prototype.hasOwnProperty.call(n,"headers")&&FN("headers",s,i);n.body?t[l8]=e({schema:n.body,method:s,url:i,httpPart:"body"}):Object.prototype.hasOwnProperty.call(n,"body")&&FN("body",s,i),n.querystring?t[u8]=e({schema:n.querystring,method:s,url:i,httpPart:"querystring"}):Object.prototype.hasOwnProperty.call(n,"querystring")&&FN("querystring",s,i),n.params?t[c8]=e({schema:n.params,method:s,url:i,httpPart:"params"}):Object.prototype.hasOwnProperty.call(n,"params")&&FN("params",s,i)}function qN(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 QN(t,e,r){let n=r===void 0;if(n||!r.skipParams){let i=qN(t[c8],e,"params");if(i)return typeof i.then!="function"?Pp(i,"params",t.schemaErrorFormatter):y1t(i,t,e)}if(n||!r.skipBody){let i=qN(t[l8],e,"body");if(i)return typeof i.then!="function"?Pp(i,"body",t.schemaErrorFormatter):A1t(i,t,e)}if(n||!r.skipQuery){let i=qN(t[u8],e,"query");if(i)return typeof i.then!="function"?Pp(i,"querystring",t.schemaErrorFormatter):x1t(i,t,e)}let s=qN(t[jN],e,"headers");return s?typeof s.then!="function"?Pp(s,"headers",t.schemaErrorFormatter):b1t(s,t,e):!1}function y1t(t,e,r){return t.then(n=>n?Pp(n,"params",e.schemaErrorFormatter):QN(e,r,{skipParams:!0}))}function A1t(t,e,r){return t.then(n=>n?Pp(n,"body",e.schemaErrorFormatter):QN(e,r,{skipParams:!0,skipBody:!0}))}function x1t(t,e,r){return t.then(n=>n?Pp(n,"querystring",e.schemaErrorFormatter):QN(e,r,{skipParams:!0,skipBody:!0,skipQuery:!0}))}function b1t(t,e,r){return t.then(n=>n?Pp(n,"headers",e.schemaErrorFormatter):!1)}function Pp(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}Gme.exports={symbols:{bodySchema:l8,querystringSchema:u8,responseSchema:Hme,paramsSchema:c8,headersSchema:jN},compileSchemasForValidation:g1t,compileSchemasForSerialization:h1t,validate:QN}});var f8=_((OWr,Kme)=>{"use strict";var{kReplyIsError:Vme,kReplyHijacked:_1t}=Ks();function E1t(t,e){t.then(function(r){if(e[_1t]!==!0&&(r!==void 0||e.sent===!1&&e.raw.headersSent===!1&&e.request.raw.aborted===!1))try{e.send(r)}catch(n){e[Vme]=!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[Vme]=!0;try{e.send(r)}catch(n){e.send(n)}})}Kme.exports=E1t});var g8=_((kWr,h8)=>{"use strict";var{validate:v1t}=d8(),{preValidationHookRunner:S1t,preHandlerHookRunner:I1t}=kp(),C1t=f8(),{kReplyIsError:HN,kRouteContext:Bp}=Ks();function T1t(t,e,r){if(r.sent===!0)return;if(t!=null){r[HN]=!0,r.send(t);return}let n=e.raw.method,s=e.headers,i=e[Bp];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[Bp].preValidation!==null?S1t(t[Bp].preValidation,t,e,p8):p8(null,t,e)}catch(r){p8(r,t,e)}}function p8(t,e,r){if(r.sent===!0)return;if(t!=null){r[HN]=!0,r.send(t);return}let n=v1t(r[Bp],e);if(n&&typeof n.then=="function"||!1){let i=zme.bind(null,e,r);n.then(i,i)}else zme(e,r,n)}function zme(t,e,r){if(r){if(e[Bp].attachValidation===!1){e.send(r);return}e.request.validationError=r}t[Bp].preHandler!==null?I1t(t[Bp].preHandler,t,e,m8):m8(null,t,e)}function m8(t,e,r){if(r.sent)return;if(t!=null){r[HN]=!0,r.send(t);return}let n;try{n=e[Bp].handler(e,r)}catch(s){r[HN]=!0,r.send(s);return}n!==void 0&&(n!==null&&typeof n.then=="function"?C1t(n,r):r.send(n))}h8.exports=T1t;h8.exports[Symbol.for("internals")]={handler:Dp,preHandlerCallback:m8}});var Jme=_((PWr,Yme)=>{"use strict";function SA(){}var w1t={fatal:SA,error:SA,warn:SA,info:SA,debug:SA,trace:SA};Object.defineProperty(Yme,"exports",{get(){return Object.create(w1t)}})});var A8=_((DWr,ehe)=>{"use strict";var hE=t=>t&&typeof t.message=="string",y8=t=>{if(!t)return;let e=t.cause;if(typeof e=="function"){let r=t.cause();return hE(r)?r:void 0}else return hE(e)?e:void 0},Xme=(t,e)=>{if(!hE(t))return"";let r=t.stack||"";if(e.has(t))return r+`
causes have become circular...`;let n=y8(t);return n?(e.add(t),r+`
caused by: `+Xme(n,e)):r},R1t=t=>Xme(t,new Set),Zme=(t,e,r)=>{if(!hE(t))return"";let n=r?"":t.message||"";if(e.has(t))return n+": ...";let s=y8(t);if(s){e.add(t);let i=typeof t.cause=="function";return n+(i?"":": ")+Zme(s,e,i)}else return n},N1t=t=>Zme(t,new Set);ehe.exports={isErrorLike:hE,getErrorCause:y8,stackWithCauses:R1t,messageWithCauses:N1t}});var x8=_((BWr,rhe)=>{"use strict";var O1t=Symbol("circular-ref-tag"),GN=Symbol("pino-raw-err-ref"),the=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[GN]},set:function(t){this[GN]=t}}});Object.defineProperty(the,GN,{writable:!0,value:{}});rhe.exports={pinoErrProto:the,pinoErrorSymbols:{seen:O1t,rawSymbol:GN}}});var ihe=_((LWr,she)=>{"use strict";she.exports=_8;var{messageWithCauses:k1t,stackWithCauses:P1t,isErrorLike:nhe}=A8(),{pinoErrProto:D1t,pinoErrorSymbols:B1t}=x8(),{seen:b8}=B1t,{toString:L1t}=Object.prototype;function _8(t){if(!nhe(t))return t;t[b8]=void 0;let e=Object.create(D1t);e.type=L1t.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=k1t(t),e.stack=P1t(t),Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>_8(r)));for(let r in t)if(e[r]===void 0){let n=t[r];nhe(n)?r!=="cause"&&!Object.prototype.hasOwnProperty.call(n,b8)&&(e[r]=_8(n)):e[r]=n}return delete t[b8],e.raw=t,e}});var ohe=_((MWr,ahe)=>{"use strict";ahe.exports=KN;var{isErrorLike:E8}=A8(),{pinoErrProto:M1t,pinoErrorSymbols:W1t}=x8(),{seen:VN}=W1t,{toString:$1t}=Object.prototype;function KN(t){if(!E8(t))return t;t[VN]=void 0;let e=Object.create(M1t);e.type=$1t.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=>KN(r))),E8(t.cause)&&!Object.prototype.hasOwnProperty.call(t.cause,VN)&&(e.cause=KN(t.cause));for(let r in t)if(e[r]===void 0){let n=t[r];E8(n)?Object.prototype.hasOwnProperty.call(n,VN)||(e[r]=KN(n)):e[r]=n}return delete t[VN],e.raw=t,e}});var dhe=_((WWr,lhe)=>{"use strict";lhe.exports={mapHttpRequest:U1t,reqSerializer:uhe};var v8=Symbol("pino-raw-req-ref"),che=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[v8]},set:function(t){this[v8]=t}}});Object.defineProperty(che,v8,{writable:!0,value:{}});function uhe(t){let e=t.info||t.socket,r=Object.create(che);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 U1t(t){return{req:uhe(t)}}});var hhe=_(($Wr,mhe)=>{"use strict";mhe.exports={mapHttpResponse:F1t,resSerializer:phe};var S8=Symbol("pino-raw-res-ref"),fhe=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[S8]},set:function(t){this[S8]=t}}});Object.defineProperty(fhe,S8,{writable:!0,value:{}});function phe(t){let e=Object.create(fhe);return e.statusCode=t.headersSent?t.statusCode:null,e.headers=t.getHeaders?t.getHeaders():t._headers,e.raw=t,e}function F1t(t){return{res:phe(t)}}});var C8=_((UWr,ghe)=>{"use strict";var I8=ihe(),q1t=ohe(),zN=dhe(),YN=hhe();ghe.exports={err:I8,errWithCause:q1t,mapHttpRequest:zN.mapHttpRequest,mapHttpResponse:YN.mapHttpResponse,req:zN.reqSerializer,res:YN.resSerializer,wrapErrorSerializer:function(e){return e===I8?e:function(n){return e(I8(n))}},wrapRequestSerializer:function(e){return e===zN.reqSerializer?e:function(n){return e(zN.reqSerializer(n))}},wrapResponseSerializer:function(e){return e===YN.resSerializer?e:function(n){return e(YN.resSerializer(n))}}}});var T8=_((FWr,yhe)=>{"use strict";function j1t(t,e){return e}yhe.exports=function(){let e=Error.prepareStackTrace;Error.prepareStackTrace=j1t;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 xhe=_((qWr,Ahe)=>{"use strict";Ahe.exports=Q1t;function Q1t(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 JN=_((jWr,bhe)=>{"use strict";bhe.exports=/[^.[\]]+|\[((?:.)*?)\]/g});var Ehe=_((QWr,_he)=>{"use strict";var H1t=JN();_he.exports=G1t;function G1t({paths:t}){let e=[];var r=0;let n=t.reduce(function(s,i,a){var o=i.match(H1t).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),m=f.length>0;r++,e.push({before:l,beforeStr:d,after:f,nested:m})}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 She=_((HWr,vhe)=>{"use strict";var V1t=JN();vhe.exports=K1t;function K1t({secret:t,serialize:e,wcLen:r,strict:n,isCensorFct:s,censorFctTakesPath:i},a){let o=Function("o",`
if (typeof o !== 'object' || o == null) {
${X1t(n,e)}
}
const { censor, secret } = this
const originalSecret = {}
const secretKeys = Object.keys(secret)
for (var i = 0; i < secretKeys.length; i++) {
originalSecret[secretKeys[i]] = secret[secretKeys[i]]
}
${z1t(t,s,i)}
this.compileRestore()
${Y1t(r>0,s,i)}
this.secret = originalSecret
${J1t(e)}
`).bind(a);return o.state=a,e===!1&&(o.restore=c=>a.restore(c)),o}function z1t(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=V1t.exec(n))!==null;){let[,p]=l,{index:h,input:y}=l;h>o&&u.push(y.substring(0,h-(p?0:1)))}var d=u.map(p=>`o${c}${p}`).join(" && ");d.length===0?d+=`o${c}${n} != null`:d+=` && o${c}${n} != null`;let f=`
switch (true) {
${u.reverse().map(p=>`
case o${c}${p} === censor:
secret[${s}].circle = ${JSON.stringify(p)}
break
`).join(`
`)}
}
`,m=r?`val, ${JSON.stringify(a)}`:"val";return`
if (${d}) {
const val = o${c}${n}
if (val === censor) {
secret[${s}].precensored = true
} else {
secret[${s}].val = val
o${c}${n} = ${e?`censor(${m})`:"censor"}
${f}
}
}
`}).join(`
`)}function Y1t(t,e,r){return t===!0?`
{
const { wildcards, wcLen, groupRedact, nestedRedact } = this
for (var i = 0; i < wcLen; i++) {
const { before, beforeStr, after, nested } = wildcards[i]
if (nested === true) {
secret[beforeStr] = secret[beforeStr] || []
nestedRedact(secret[beforeStr], o, before, after, censor, ${e}, ${r})
} else secret[beforeStr] = groupRedact(o, before, censor, ${e}, ${r})
}
}
`:""}function J1t(t){return t===!1?"return o":`
var s = this.serialize(o)
this.restore(o)
return s
`}function X1t(t,e){return t===!0?"throw Error('fast-redact: primitives cannot be redacted')":e===!1?"return o":"return this.serialize(o)"}});var R8=_((GWr,The)=>{"use strict";The.exports={groupRedact:e_t,groupRestore:Z1t,nestedRedact:r_t,nestedRestore:t_t};function Z1t({keys:t,values:e,target:r}){if(r==null||typeof r=="string")return;let n=t.length;for(var s=0;s<n;s++){let i=t[s];r[i]=e[s]}}function e_t(t,e,r,n,s){let i=Ihe(t,e);if(i==null||typeof i=="string")return{keys:null,values:null,target:i,flat:!0};let a=Object.keys(i),o=a.length,c=e.length,u=s?[...e]:void 0,l=new Array(o);for(var d=0;d<o;d++){let f=a[d];l[d]=i[f],s?(u[c]=f,i[f]=r(i[f],u)):n?i[f]=r(i[f]):i[f]=r}return{keys:a,values:l,target:i,flat:!0}}function t_t(t){for(let e=0;e<t.length;e++){let{target:r,path:n,value:s}=t[e],i=r;for(let a=n.length-1;a>0;a--)i=i[n[a]];i[n[0]]=s}}function r_t(t,e,r,n,s,i,a){let o=Ihe(e,r);if(o==null)return;let c=Object.keys(o),u=c.length;for(var l=0;l<u;l++){let d=c[l];n_t(t,o,d,r,n,s,i,a)}return t}function w8(t,e){return t!=null?"hasOwn"in Object?Object.hasOwn(t,e):Object.prototype.hasOwnProperty.call(t,e):!1}function n_t(t,e,r,n,s,i,a,o){let c=s.length,u=c-1,l=r;var d=-1,f,m,p,h=null,y=null,g,A,b=!1,x=0,S=0,T=s_t();if(p=f=e[r],typeof f=="object"){for(;f!=null&&++d<c&&(S+=1,r=s[d],h=p,!(r!=="*"&&!y&&!(typeof f=="object"&&r in f)));)if(!(r==="*"&&(y==="*"&&(b=!0),y=r,d!==u))){if(y){let R=Object.keys(f);for(var I=0;I<R.length;I++){let N=R[I];if(A=f[N],g=r==="*",b)T=kd(T,N,S),x=d,p=Che(A,x-1,r,n,s,i,a,o,l,f,m,p,g,N,d,u,T,t,e[l],S+1);else if(g||typeof A=="object"&&A!==null&&r in A){if(g?p=A:p=A[r],m=d!==u?p:a?o?i(p,[...n,l,...s]):i(p):i,g){let k=gE(kd(T,N,S),p,e[l]);t.push(k),f[N]=m}else if(A[r]!==m)if(m===void 0&&i!==void 0||w8(A,r)&&m===p)T=kd(T,N,S);else{T=kd(T,N,S);let k=gE(kd(T,r,S+1),p,e[l]);t.push(k),A[r]=m}}}y=null}else{if(p=f[r],T=kd(T,r,S),m=d!==u?p:a?o?i(p,[...n,l,...s]):i(p):i,!(w8(f,r)&&m===p||m===void 0&&i!==void 0)){let R=gE(T,p,e[l]);t.push(R),f[r]=m}f=f[r]}if(typeof f!="object")break}}}function Ihe(t,e){for(var r=-1,n=e.length,s=t;s!=null&&++r<n;)s=s[e[r]];return s}function Che(t,e,r,n,s,i,a,o,c,u,l,d,f,m,p,h,y,g,A,b){if(e===0&&(f||typeof t=="object"&&t!==null&&r in t)){if(f?d=t:d=t[r],l=p!==h?d:a?o?i(d,[...n,c,...s]):i(d):i,f){let x=gE(y,d,A);g.push(x),u[m]=l}else if(t[r]!==l){if(!(l===void 0&&i!==void 0||w8(t,r)&&l===d)){let x=gE(kd(y,r,b+1),d,A);g.push(x),t[r]=l}}}for(let x in t)typeof t[x]=="object"&&(y=kd(y,x,b),Che(t[x],e-1,r,n,s,i,a,o,c,u,l,d,f,m,p,h,y,g,A,b+1))}function s_t(){return{parent:null,key:null,children:[],depth:0}}function kd(t,e,r){if(t.depth===r)return kd(t.parent,e,r);var n={parent:t,key:e,depth:r,children:[]};return t.children.push(n),n}function gE(t,e,r){let n=t,s=[];do s.push(n.key),n=n.parent;while(n.parent!=null);return{path:s,value:e,target:r}}});var Rhe=_((VWr,whe)=>{"use strict";var{groupRestore:i_t,nestedRestore:a_t}=R8();whe.exports=o_t;function o_t(){return function(){if(this.restore){this.restore.state.secret=this.secret;return}let{secret:e,wcLen:r}=this,n=Object.keys(e),s=c_t(e,n),i=r>0,a=i?{secret:e,groupRestore:i_t,nestedRestore:a_t}:{secret:e};this.restore=Function("o",u_t(s,n,i)).bind(a),this.restore.state=a}}function c_t(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 u_t(t,e,r){return`
const secret = this.secret
${r===!0?`
const keys = Object.keys(secret)
const len = keys.length
for (var i = len - 1; i >= ${e.length}; i--) {
const k = keys[i]
const o = secret[k]
if (o) {
if (o.flat === true) this.groupRestore(o)
else this.nestedRestore(o)
secret[k] = null
}
}
`:""}
${t}
return o
`}});var Ohe=_((KWr,Nhe)=>{"use strict";Nhe.exports=l_t;function l_t(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 Dhe=_((zWr,Phe)=>{"use strict";var khe=xhe(),d_t=Ehe(),f_t=She(),p_t=Rhe(),{groupRedact:m_t,nestedRedact:h_t}=R8(),g_t=Ohe(),y_t=JN(),A_t=khe(),N8=t=>t;N8.restore=N8;var x_t="[REDACTED]";O8.rx=y_t;O8.validator=khe;Phe.exports=O8;function O8(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:x_t,i=typeof s=="function",a=i&&s.length>1;if(e.length===0)return r||N8;A_t({paths:e,serialize:r,censor:s});let{wildcards:o,wcLen:c,secret:u}=d_t({paths:e,censor:s}),l=p_t(),d="strict"in t?t.strict:!0;return f_t({secret:u,wcLen:c,serialize:r,strict:d,isCensorFct:i,censorFctTakesPath:a},g_t({secret:u,censor:s,compileRestore:l,serialize:r,groupRedact:m_t,nestedRedact:h_t,wildcards:o,wcLen:c}))}});var IA=_((YWr,Bhe)=>{"use strict";var b_t=Symbol("pino.setLevel"),__t=Symbol("pino.getLevel"),E_t=Symbol("pino.levelVal"),v_t=Symbol("pino.levelComp"),S_t=Symbol("pino.useLevelLabels"),I_t=Symbol("pino.useOnlyCustomLevels"),C_t=Symbol("pino.mixin"),T_t=Symbol("pino.lsCache"),w_t=Symbol("pino.chindings"),R_t=Symbol("pino.asJson"),N_t=Symbol("pino.write"),O_t=Symbol("pino.redactFmt"),k_t=Symbol("pino.time"),P_t=Symbol("pino.timeSliceIndex"),D_t=Symbol("pino.stream"),B_t=Symbol("pino.stringify"),L_t=Symbol("pino.stringifySafe"),M_t=Symbol("pino.stringifiers"),W_t=Symbol("pino.end"),$_t=Symbol("pino.formatOpts"),U_t=Symbol("pino.messageKey"),F_t=Symbol("pino.errorKey"),q_t=Symbol("pino.nestedKey"),j_t=Symbol("pino.nestedKeyStr"),Q_t=Symbol("pino.mixinMergeStrategy"),H_t=Symbol("pino.msgPrefix"),G_t=Symbol("pino.wildcardFirst"),V_t=Symbol.for("pino.serializers"),K_t=Symbol.for("pino.formatters"),z_t=Symbol.for("pino.hooks"),Y_t=Symbol.for("pino.metadata");Bhe.exports={setLevelSym:b_t,getLevelSym:__t,levelValSym:E_t,levelCompSym:v_t,useLevelLabelsSym:S_t,mixinSym:C_t,lsCacheSym:T_t,chindingsSym:w_t,asJsonSym:R_t,writeSym:N_t,serializersSym:V_t,redactFmtSym:O_t,timeSym:k_t,timeSliceIndexSym:P_t,streamSym:D_t,stringifySym:B_t,stringifySafeSym:L_t,stringifiersSym:M_t,endSym:W_t,formatOptsSym:$_t,messageKeySym:U_t,errorKeySym:F_t,nestedKeySym:q_t,wildcardFirstSym:G_t,needsMetadataGsym:Y_t,useOnlyCustomLevelsSym:I_t,formattersSym:K_t,hooksSym:z_t,nestedKeyStrSym:j_t,mixinMergeStrategySym:Q_t,msgPrefixSym:H_t}});var D8=_((JWr,$he)=>{"use strict";var P8=Dhe(),{redactFmtSym:J_t,wildcardFirstSym:XN}=IA(),{rx:k8,validator:X_t}=P8,Lhe=X_t({ERR_PATHS_MUST_BE_STRINGS:()=>"pino \u2013 redacted paths must be strings",ERR_INVALID_PATH:t=>`pino \u2013 redact paths array contains an invalid path (${t})`}),Mhe="[Redacted]",Whe=!1;function Z_t(t,e){let{paths:r,censor:n}=eEt(t),s=r.reduce((o,c)=>{k8.lastIndex=0;let u=k8.exec(c),l=k8.exec(c),d=u[1]!==void 0?u[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):u[0];if(d==="*"&&(d=XN),l===null)return o[d]=null,o;if(o[d]===null)return o;let{index:f}=l,m=`${c.substr(f,c.length-1)}`;return o[d]=o[d]||[],d!==XN&&o[d].length===0&&o[d].push(...o[XN]||[]),d===XN&&Object.keys(o).forEach(function(p){o[p]&&o[p].push(m)}),o[d].push(m),o},{}),i={[J_t]:P8({paths:r,censor:n,serialize:e,strict:Whe})},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]=P8({paths:s[c],censor:u,serialize:e,strict:Whe})}return o},i)}function eEt(t){if(Array.isArray(t))return t={paths:t,censor:Mhe},Lhe(t),t;let{paths:e,censor:r=Mhe,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),Lhe({paths:e,censor:r}),{paths:e,censor:r}}$he.exports=Z_t});var Fhe=_((XWr,Uhe)=>{"use strict";var tEt=()=>"",rEt=()=>`,"time":${Date.now()}`,nEt=()=>`,"time":${Math.round(Date.now()/1e3)}`,sEt=()=>`,"time":"${new Date(Date.now()).toISOString()}"`;Uhe.exports={nullTime:tEt,epochTime:rEt,unixTime:nEt,isoTime:sEt}});var jhe=_((ZWr,qhe)=>{"use strict";function iEt(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}qhe.exports=aEt;function aEt(t,e,r){var n=r&&r.stringify||iEt,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<i;o++)a[o]=n(e[o]);return a.join(" ")}if(typeof t!="string")return t;var c=e.length;if(c===0)return t;for(var u="",l=1-s,d=-1,f=t&&t.length||0,m=0;m<f;){if(t.charCodeAt(m)===37&&m+1<f){switch(d=d>-1?d:0,t.charCodeAt(m+1)){case 100:case 102:if(l>=c||e[l]==null)break;d<m&&(u+=t.slice(d,m)),u+=Number(e[l]),d=m+2,m++;break;case 105:if(l>=c||e[l]==null)break;d<m&&(u+=t.slice(d,m)),u+=Math.floor(Number(e[l])),d=m+2,m++;break;case 79:case 111:case 106:if(l>=c||e[l]===void 0)break;d<m&&(u+=t.slice(d,m));var p=typeof e[l];if(p==="string"){u+="'"+e[l]+"'",d=m+2,m++;break}if(p==="function"){u+=e[l].name||"<anonymous>",d=m+2,m++;break}u+=n(e[l]),d=m+2,m++;break;case 115:if(l>=c)break;d<m&&(u+=t.slice(d,m)),u+=String(e[l]),d=m+2,m++;break;case 37:d<m&&(u+=t.slice(d,m)),u+="%",d=m+2,m++,l--;break}++l}++m}return d===-1?t:(d<f&&(u+=t.slice(d)),u)}});var L8=_((e8r,B8)=>{"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));B8.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(););};B8.exports=t}});var Jhe=_((t8r,Yhe)=>{"use strict";var ds=require("fs"),oEt=require("events"),cEt=require("util").inherits,Qhe=require("path"),W8=L8(),ZN=100,eO=Buffer.allocUnsafe(0),uEt=16*1024,Hhe="buffer",Ghe="utf8";function Vhe(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&&ds.mkdirSync(Qhe.dirname(t),{recursive:!0});let i=ds.openSync(t,n,s);r(null,i)}catch(i){throw r(i),i}else e.mkdir?ds.mkdir(Qhe.dirname(t),{recursive:!0},i=>{if(i)return r(i);ds.open(t,n,s,r)}):ds.open(t,n,s,r)}function Xc(t){if(!(this instanceof Xc))return new Xc(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||uEt,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 m,p;if(d===Hhe)this._writingBuf=eO,this.write=fEt,this.flush=mEt,this.flushSync=gEt,this._actualWrite=AEt,m=()=>ds.writeSync(this.fd,this._writingBuf),p=()=>ds.write(this.fd,this._writingBuf,this.release);else if(d===void 0||d===Ghe)this._writingBuf="",this.write=dEt,this.flush=pEt,this.flushSync=hEt,this._actualWrite=yEt,m=()=>ds.writeSync(this.fd,this._writingBuf,"utf8"),p=()=>ds.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${Ghe}" and "${Hhe}", but passed ${d}`);if(typeof e=="number")this.fd=e,process.nextTick(()=>this.emit("ready"));else if(typeof e=="string")Vhe(e,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(h,y)=>{if(h){if((h.code==="EAGAIN"||h.code==="EBUSY")&&this.retryEAGAIN(h,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{W8(ZN),this.release(void 0,0)}catch(b){this.release(b)}else setTimeout(p,ZN);else this._writing=!1,this.emit("error",h);return}this.emit("write",y);let g=M8(this._writingBuf,this._len,y);if(this._len=g.len,this._writingBuf=g.writingBuf,this._writingBuf.length){if(!this.sync){p();return}try{do{let b=m(),x=M8(this._writingBuf,this._len,b);this._len=x.len,this._writingBuf=x.writingBuf}while(this._writingBuf.length)}catch(b){this.release(b);return}}this._fsync&&ds.fsyncSync(this.fd);let A=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):A>this.minLength?this._actualWrite():this._ending?A>0?this._actualWrite():(this._writing=!1,tO(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(lEt,this)):this.emit("drain"))},this.on("newListener",function(h){h==="drain"&&(this._asyncDrainScheduled=!1)})}function M8(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 lEt(t){t.listenerCount("drain")>0&&(t._asyncDrainScheduled=!1,t.emit("drain"))}cEt(Xc,oEt);function Khe(t,e){return t.length===0?eO:t.length===1?t[0]:Buffer.concat(t,e)}function dEt(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._len<this._hwm):(r.length===0||r[r.length-1].length+t.length>this.maxWrite?r.push(""+t):r[r.length-1]+=t,this._len=e,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len<this._hwm)}function fEt(t){if(this.destroyed)throw new Error("SonicBoom destroyed");let e=this._len+t.length,r=this._bufs,n=this._lens;return this.maxLength&&e>this.maxLength?(this.emit("drop",t),this._len<this._hwm):(r.length===0||n[n.length-1]+t.length>this.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._hwm)}function zhe(t){this._flushPending=!0;let e=()=>{this._fsync?(this._flushPending=!1,t()):ds.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 pEt(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&&zhe.call(this,t),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function mEt(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&&zhe.call(this,t),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}Xc.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&&ds.close(e,r=>{if(r)return this.emit("error",r)})}),Vhe(this.file,this)};Xc.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():tO(this)))};function hEt(){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=ds.writeSync(this.fd,t,"utf8"),r=M8(t,this._len,e);t=r.writingBuf,this._len=r.len,t.length<=0&&this._bufs.shift()}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;W8(ZN)}}try{ds.fsyncSync(this.fd)}catch{}}function gEt(){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=eO);let t=eO;for(;this._bufs.length||t.length;){t.length<=0&&(t=Khe(this._bufs[0],this._lens[0]));try{let e=ds.writeSync(this.fd,t);t=t.subarray(e),this._len=Math.max(this._len-e,0),t.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;W8(ZN)}}}Xc.prototype.destroy=function(){this.destroyed||tO(this)};function yEt(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let e=ds.writeSync(this.fd,this._writingBuf,"utf8");t(null,e)}catch(e){t(e)}else ds.write(this.fd,this._writingBuf,"utf8",t)}function AEt(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:Khe(this._bufs.shift(),this._lens.shift()),this.sync)try{let e=ds.writeSync(this.fd,this._writingBuf);t(null,e)}catch(e){t(e)}else ds.write(this.fd,this._writingBuf,t)}function tO(t){if(t.fd===-1){t.once("ready",tO.bind(null,t));return}t.destroyed=!0,t._bufs=[],t._lens=[],ds.fsync(t.fd,e);function e(){t.fd!==1&&t.fd!==2?ds.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")}}Xc.SonicBoom=Xc;Xc.default=Xc;Yhe.exports=Xc});var $8=_((r8r,rge)=>{"use strict";var Zc={exit:[],beforeExit:[]},Xhe={exit:_Et,beforeExit:EEt},CA;function xEt(){CA===void 0&&(CA=new FinalizationRegistry(vEt))}function bEt(t){Zc[t].length>0||process.on(t,Xhe[t])}function Zhe(t){Zc[t].length>0||(process.removeListener(t,Xhe[t]),Zc.exit.length===0&&Zc.beforeExit.length===0&&(CA=void 0))}function _Et(){ege("exit")}function EEt(){ege("beforeExit")}function ege(t){for(let e of Zc[t]){let r=e.deref(),n=e.fn;r!==void 0&&n(r,t)}Zc[t]=[]}function vEt(t){for(let e of["exit","beforeExit"]){let r=Zc[e].indexOf(t);Zc[e].splice(r,r+1),Zhe(e)}}function tge(t,e,r){if(e===void 0)throw new Error("the object can't be undefined");bEt(t);let n=new WeakRef(e);n.fn=r,xEt(),CA.register(e,n),Zc[t].push(n)}function SEt(t,e){tge("exit",t,e)}function IEt(t,e){tge("beforeExit",t,e)}function CEt(t){if(CA!==void 0){CA.unregister(t);for(let e of["exit","beforeExit"])Zc[e]=Zc[e].filter(r=>{let n=r.deref();return n&&n!==t}),Zhe(e)}}rge.exports={register:SEt,registerBeforeExit:IEt,unregister:CEt}});var nge=_((n8r,TEt)=>{TEt.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 <[email protected]>",license:"MIT",bugs:{url:"https://github.com/mcollina/thread-stream/issues"},homepage:"https://github.com/mcollina/thread-stream#readme"}});var ige=_((s8r,sge)=>{"use strict";function wEt(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 REt(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)}sge.exports={wait:wEt,waitDiff:REt}});var oge=_((i8r,age)=>{"use strict";age.exports={WRITE_INDEX:4,READ_INDEX:8}});var fge=_((a8r,dge)=>{"use strict";var{version:NEt}=nge(),{EventEmitter:OEt}=require("events"),{Worker:kEt}=require("worker_threads"),{join:PEt}=require("path"),{pathToFileURL:DEt}=require("url"),{wait:BEt}=ige(),{WRITE_INDEX:Ua,READ_INDEX:Ju}=oge(),LEt=require("buffer"),MEt=require("assert"),Se=Symbol("kImpl"),WEt=LEt.constants.MAX_STRING_LENGTH,yE=class{constructor(e){this._value=e}deref(){return this._value}},nO=class{register(){}unregister(){}},$Et=process.env.NODE_V8_COVERAGE?nO:global.FinalizationRegistry||nO,UEt=process.env.NODE_V8_COVERAGE?yE:global.WeakRef||yE,cge=new $Et(t=>{t.exited||t.terminate()});function FEt(t,e){let{filename:r,workerData:n}=e,i=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||PEt(__dirname,"lib","worker.js"),a=new kEt(i,{...e.workerOpts,trackUnmanagedFds:!1,workerData:{filename:r.indexOf("file://")===0?r:DEt(r).href,dataBuf:t[Se].dataBuf,stateBuf:t[Se].stateBuf,workerData:{$context:{threadStreamVersion:NEt},...n}}});return a.stream=new yE(t),a.on("message",qEt),a.on("exit",lge),cge.register(t,a),a}function uge(t){MEt(!t[Se].sync),t[Se].needDrain&&(t[Se].needDrain=!1,t.emit("drain"))}function rO(t){let e=Atomics.load(t[Se].state,Ua),r=t[Se].data.length-e;if(r>0){if(t[Se].buf.length===0){t[Se].flushing=!1,t[Se].ending?Q8(t):t[Se].needDrain&&process.nextTick(uge,t);return}let n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);s<=r?(t[Se].buf=t[Se].buf.slice(r),sO(t,n,rO.bind(null,t))):t.flush(()=>{if(!t.destroyed){for(Atomics.store(t[Se].state,Ju,0),Atomics.store(t[Se].state,Ua,0);s>t[Se].data.length;)r=r/2,n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);t[Se].buf=t[Se].buf.slice(r),sO(t,n,rO.bind(null,t))}})}else if(r===0){if(e===0&&t[Se].buf.length===0)return;t.flush(()=>{Atomics.store(t[Se].state,Ju,0),Atomics.store(t[Se].state,Ua,0),rO(t)})}else Xu(t,new Error("overwritten"))}function qEt(t){let e=this.stream.deref();if(e===void 0){this.exited=!0,this.terminate();return}switch(t.code){case"READY":this.stream=new UEt(e),e.flush(()=>{e[Se].ready=!0,e.emit("ready")});break;case"ERROR":Xu(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:Xu(e,new Error("this should not happen: "+t.code))}}function lge(t){let e=this.stream.deref();e!==void 0&&(cge.unregister(e),e.worker.exited=!0,e.worker.off("exit",lge),Xu(e,t!==0?new Error("the worker thread exited"):null))}var F8=class extends OEt{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=FEt(this,e),this.on("message",(r,n)=>{this.worker.postMessage(r,n)})}write(e){if(this[Se].destroyed)return q8(this,new Error("the worker has exited")),!1;if(this[Se].ending)return q8(this,new Error("the worker is ending")),!1;if(this[Se].flushing&&this[Se].buf.length+e.length>=WEt)try{U8(this),this[Se].flushing=!0}catch(r){return Xu(this,r),!1}if(this[Se].buf+=e,this[Se].sync)try{return U8(this),!0}catch(r){return Xu(this,r),!1}return this[Se].flushing||(this[Se].flushing=!0,setImmediate(rO,this)),this[Se].needDrain=this[Se].data.length-this[Se].buf.length-Atomics.load(this[Se].state,Ua)<=0,!this[Se].needDrain}end(){this[Se].destroyed||(this[Se].ending=!0,Q8(this))}flush(e){if(this[Se].destroyed){typeof e=="function"&&process.nextTick(e,new Error("the worker has exited"));return}let r=Atomics.load(this[Se].state,Ua);BEt(this[Se].state,Ju,r,1/0,(n,s)=>{if(n){Xu(this,n),process.nextTick(e,n);return}if(s==="not-equal"){this.flush(e);return}process.nextTick(e)})}flushSync(){this[Se].destroyed||(U8(this),j8(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 q8(t,e){setImmediate(()=>{t.emit("error",e)})}function Xu(t,e){t[Se].destroyed||(t[Se].destroyed=!0,e&&(t[Se].errored=e,q8(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 sO(t,e,r){let n=Atomics.load(t[Se].state,Ua),s=Buffer.byteLength(e);return t[Se].data.write(e,n),Atomics.store(t[Se].state,Ua,n+s),Atomics.notify(t[Se].state,Ua),r(),!0}function Q8(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,Ju);Atomics.store(t[Se].state,Ua,-1),Atomics.notify(t[Se].state,Ua);let r=0;for(;e!==-1;){if(Atomics.wait(t[Se].state,Ju,e,1e3),e=Atomics.load(t[Se].state,Ju),e===-2){Xu(t,new Error("end() failed"));return}if(++r===10){Xu(t,new Error("end() took too long (10s)"));return}}process.nextTick(()=>{t[Se].finished=!0,t.emit("finish")})}catch(e){Xu(t,e)}}}function U8(t){let e=()=>{t[Se].ending?Q8(t):t[Se].needDrain&&process.nextTick(uge,t)};for(t[Se].flushing=!1;t[Se].buf.length!==0;){let r=Atomics.load(t[Se].state,Ua),n=t[Se].data.length-r;if(n===0){j8(t),Atomics.store(t[Se].state,Ju,0),Atomics.store(t[Se].state,Ua,0);continue}else if(n<0)throw new Error("overwritten");let s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);if(i<=n)t[Se].buf=t[Se].buf.slice(n),sO(t,s,e);else{for(j8(t),Atomics.store(t[Se].state,Ju,0),Atomics.store(t[Se].state,Ua,0);i>t[Se].buf.length;)n=n/2,s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);t[Se].buf=t[Se].buf.slice(n),sO(t,s,e)}}}function j8(t){if(t[Se].flushing)throw new Error("unable to flush while flushing");let e=Atomics.load(t[Se].state,Ua),r=0;for(;;){let n=Atomics.load(t[Se].state,Ju);if(n===-2)throw Error("_flushSync failed");if(n!==e)Atomics.wait(t[Se].state,Ju,n,1e3);else break;if(++r===10)throw new Error("_flushSync took too long (10s)")}}dge.exports=F8});var V8=_((o8r,pge)=>{"use strict";var{createRequire:jEt}=require("module"),QEt=T8(),{join:H8,isAbsolute:HEt,sep:GEt}=require("path"),VEt=L8(),G8=$8(),KEt=fge();function zEt(t){G8.register(t,JEt),G8.registerBeforeExit(t,XEt),t.on("close",function(){G8.unregister(t)})}function YEt(t,e,r){let n=new KEt({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&&zEt(n)}function i(){n.closed||(n.flushSync(),VEt(100),n.end())}return n}function JEt(t){t.ref(),t.flushSync(),t.end(),t.once("close",function(){t.unref()})}function XEt(t){t.flushSync()}function ZEt(t){let{pipeline:e,targets:r,levels:n,dedupe:s,options:i={},worker:a={},caller:o=QEt()}=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"]||H8(__dirname,"worker.js"),i.targets=r.map(f=>({...f,target:d(f.target)}))):e&&(l=u["pino-pipeline-worker"]||H8(__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,YEt(d(l),i,a);function d(f){if(f=u[f]||f,HEt(f)||f.indexOf("file://")===0)return f;if(f==="pino/file")return H8(__dirname,"..","file.js");let m;for(let p of c)try{let h=p==="node:repl"?process.cwd()+GEt:p;m=jEt(h).resolve(f);break}catch{continue}if(!m)throw new Error(`unable to determine transport target for "${f}"`);return m}}pge.exports=ZEt});var oO=_((c8r,Sge)=>{"use strict";var mge=jhe(),{mapHttpRequest:evt,mapHttpResponse:tvt}=C8(),z8=Jhe(),hge=$8(),{lsCacheSym:rvt,chindingsSym:Age,writeSym:gge,serializersSym:xge,formatOptsSym:yge,endSym:nvt,stringifiersSym:bge,stringifySym:_ge,stringifySafeSym:Y8,wildcardFirstSym:Ege,nestedKeySym:svt,formattersSym:vge,messageKeySym:ivt,errorKeySym:avt,nestedKeyStrSym:ovt,msgPrefixSym:iO}=IA(),{isMainThread:cvt}=require("worker_threads"),uvt=V8();function TA(){}function lvt(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=evt(n):typeof n.setHeader=="function"&&(n=tvt(n)));let a;i===null&&s.length===0?a=[null]:(i=s.shift(),a=s),typeof this[iO]=="string"&&i!==void 0&&i!==null&&(i=this[iO]+i),this[gge](n,mge(i,a,this[yge]),t)}else{let i=n===void 0?s.shift():n;typeof this[iO]=="string"&&i!==void 0&&i!==null&&(i=this[iO]+i),this[gge](null,mge(i,s,this[yge]),t)}}}function K8(t){let e="",r=0,n=!1,s=255,i=t.length;if(i>100)return JSON.stringify(t);for(var a=0;a<i&&s>=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 dvt(t,e,r,n){let s=this[_ge],i=this[Y8],a=this[bge],o=this[nvt],c=this[Age],u=this[xge],l=this[vge],d=this[ivt],f=this[avt],m=this[rvt][r]+n;m=m+c;let p;l.log&&(t=l.log(t));let h=a[Ege],y="";for(let A in t)if(p=t[A],Object.prototype.hasOwnProperty.call(t,A)&&p!==void 0){u[A]?p=u[A](p):A===f&&u.err&&(p=u.err(p));let b=a[A]||h;switch(typeof p){case"undefined":case"function":continue;case"number":Number.isFinite(p)===!1&&(p=null);case"boolean":b&&(p=b(p));break;case"string":p=(b||K8)(p);break;default:p=(b||s)(p,i)}if(p===void 0)continue;let x=K8(A);y+=","+x+":"+p}let g="";if(e!==void 0){p=u[d]?u[d](e):e;let A=a[d]||h;switch(typeof p){case"function":break;case"number":Number.isFinite(p)===!1&&(p=null);case"boolean":A&&(p=A(p)),g=',"'+d+'":'+p;break;case"string":p=(A||K8)(p),g=',"'+d+'":'+p;break;default:p=(A||s)(p,i),g=',"'+d+'":'+p}}return this[svt]&&y?m+this[ovt]+y.slice(1)+"}"+g+o:m+y+g+o}function fvt(t,e){let r,n=t[Age],s=t[_ge],i=t[Y8],a=t[bge],o=a[Ege],c=t[xge],u=t[vge].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 pvt(t){return t.write!==t.constructor.prototype.write}var mvt=process.env.NODE_V8_COVERAGE||process.env.V8_COVERAGE;function aO(t){let e=new z8(t);return e.on("error",r),!mvt&&!t.sync&&cvt&&(hge.register(e,hvt),e.on("close",function(){hge.unregister(e)})),e;function r(n){if(n.code==="EPIPE"){e.write=TA,e.end=TA,e.flushSync=TA,e.destroy=TA;return}e.removeListener("error",r),e.emit("error",n)}}function hvt(t,e){t.destroyed||(e==="beforeExit"?(t.flush(),t.on("drain",function(){t.end()})):t.flushSync())}function gvt(t){return function(r,n,s={},i){if(typeof s=="string")i=aO({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=aO({dest:i})}else if(s instanceof z8||s.writable||s._writableState)i=s,s={};else if(s.transport){if(s.transport instanceof z8||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=uvt({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=TA),i||(pvt(process.stdout)?i=process.stdout:i=aO({fd:process.stdout.fd||1})),{opts:s,stream:i}}}function yvt(t,e){try{return JSON.stringify(t)}catch{try{return(e||this[Y8])(t)}catch{return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function Avt(t,e,r){return{level:t,bindings:e,log:r}}function xvt(t){let e=Number(t);return typeof t=="string"&&Number.isFinite(e)?e:t===void 0?1:t}Sge.exports={noop:TA,buildSafeSonicBoom:aO,asChindings:fvt,asJson:dvt,genLog:lvt,createArgsNormalizer:gvt,stringify:yvt,buildFormatters:Avt,normalizeDestFileDescriptor:xvt}});var cO=_((u8r,Ige)=>{var bvt={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},_vt={ASC:"ASC",DESC:"DESC"};Ige.exports={DEFAULT_LEVELS:bvt,SORTING_ORDER:_vt}});var Z8=_((l8r,Rge)=>{"use strict";var{lsCacheSym:Evt,levelValSym:J8,useOnlyCustomLevelsSym:vvt,streamSym:Svt,formattersSym:Ivt,hooksSym:Cvt,levelCompSym:Cge}=IA(),{noop:Tvt,genLog:Gm}=oO(),{DEFAULT_LEVELS:Zu,SORTING_ORDER:Tge}=cO(),wge={fatal:t=>{let e=Gm(Zu.fatal,t);return function(...r){let n=this[Svt];if(e.call(this,...r),typeof n.flushSync=="function")try{n.flushSync()}catch{}}},error:t=>Gm(Zu.error,t),warn:t=>Gm(Zu.warn,t),info:t=>Gm(Zu.info,t),debug:t=>Gm(Zu.debug,t),trace:t=>Gm(Zu.trace,t)},X8=Object.keys(Zu).reduce((t,e)=>(t[Zu[e]]=e,t),{}),wvt=Object.keys(X8).reduce((t,e)=>(t[e]='{"level":'+Number(e),t),{});function Rvt(t){let e=t[Ivt].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[Evt]=n,t}function Nvt(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 Ovt(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[J8],s=this[J8]=r[t],i=this[vvt],a=this[Cge],o=this[Cvt].logMethod;for(let c in r){if(a(r[c],s)===!1){this[c]=Tvt;continue}this[c]=Nvt(c,i)?wge[c](o):Gm(r[c],o)}this.emit("level-change",t,s,e[n],n,this)}function kvt(t){let{levels:e,levelVal:r}=this;return e&&e.labels?e.labels[r]:""}function Pvt(t){let{values:e}=this.levels,r=e[t];return r!==void 0&&this[Cge](r,this[J8])}function Dvt(t,e,r){return t===Tge.DESC?e<=r:e>=r}function Bvt(t){return typeof t=="string"?Dvt.bind(null,t):t}function Lvt(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:X8,r),s=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),e?null:Zu,t);return{labels:n,values:s}}function Mvt(t,e,r){if(typeof t=="number"){if(![].concat(Object.keys(e||{}).map(i=>e[i]),r?[]:Object.keys(X8).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:Zu,e);if(!(t in n))throw Error(`default level:${t} must be included in custom levels`)}function Wvt(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 $vt(t){if(typeof t!="function"&&!(typeof t=="string"&&Object.values(Tge).includes(t)))throw new Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}Rge.exports={initialLsCache:wvt,genLsCache:Rvt,levelMethods:wge,getLevel:kvt,setLevel:Ovt,isLevelEnabled:Pvt,mappings:Lvt,assertNoLevelCollisions:Wvt,assertDefaultLevelFound:Mvt,genLevelComparison:Bvt,assertLevelComparison:$vt}});var e$=_((d8r,Nge)=>{"use strict";Nge.exports={version:"8.21.0"}});var Fge=_((p8r,Uge)=>{"use strict";var{EventEmitter:Uvt}=require("events"),{lsCacheSym:Fvt,levelValSym:qvt,setLevelSym:r$,getLevelSym:Oge,chindingsSym:n$,parsedChindingsSym:jvt,mixinSym:Qvt,asJsonSym:Lge,writeSym:Hvt,mixinMergeStrategySym:Gvt,timeSym:Vvt,timeSliceIndexSym:Kvt,streamSym:Mge,serializersSym:Vm,formattersSym:t$,errorKeySym:zvt,messageKeySym:Yvt,useOnlyCustomLevelsSym:Jvt,needsMetadataGsym:Xvt,redactFmtSym:Zvt,stringifySym:eSt,formatOptsSym:tSt,stringifiersSym:rSt,msgPrefixSym:kge}=IA(),{getLevel:nSt,setLevel:sSt,isLevelEnabled:iSt,mappings:aSt,initialLsCache:oSt,genLsCache:cSt,assertNoLevelCollisions:uSt}=Z8(),{asChindings:Wge,asJson:lSt,buildFormatters:Pge,stringify:Dge}=oO(),{version:dSt}=e$(),fSt=D8(),pSt=class{},$ge={constructor:pSt,child:mSt,bindings:hSt,setBindings:gSt,flush:bSt,isLevelEnabled:iSt,version:dSt,get level(){return this[Oge]()},set level(t){this[r$](t)},get levelVal(){return this[qvt]},set levelVal(t){throw Error("levelVal is read-only")},[Fvt]:oSt,[Hvt]:ASt,[Lge]:lSt,[Oge]:nSt,[r$]:sSt};Object.setPrototypeOf($ge,Uvt.prototype);Uge.exports=function(){return Object.create($ge)};var Bge=t=>t;function mSt(t,e){if(!t)throw Error("missing bindings for child Pino");e=e||{};let r=this[Vm],n=this[t$],s=Object.create(this);if(e.hasOwnProperty("serializers")===!0){s[Vm]=Object.create(null);for(let l in r)s[Vm][l]=r[l];let c=Object.getOwnPropertySymbols(r);for(var i=0;i<c.length;i++){let l=c[i];s[Vm][l]=r[l]}for(let l in e.serializers)s[Vm][l]=e.serializers[l];let u=Object.getOwnPropertySymbols(e.serializers);for(var a=0;a<u.length;a++){let l=u[a];s[Vm][l]=e.serializers[l]}}else s[Vm]=r;if(e.hasOwnProperty("formatters")){let{level:c,bindings:u,log:l}=e.formatters;s[t$]=Pge(c||n.level,u||Bge,l||n.log)}else s[t$]=Pge(n.level,Bge,n.log);if(e.hasOwnProperty("customLevels")===!0&&(uSt(this.levels,e.customLevels),s.levels=aSt(e.customLevels,s[Jvt]),cSt(s)),typeof e.redact=="object"&&e.redact!==null||Array.isArray(e.redact)){s.redact=e.redact;let c=fSt(s.redact,Dge),u={stringify:c[Zvt]};s[eSt]=Dge,s[rSt]=c,s[tSt]=u}typeof e.msgPrefix=="string"&&(s[kge]=(this[kge]||"")+e.msgPrefix),s[n$]=Wge(s,t);let o=e.level||this.level;return s[r$](o),this.onChild(s),s}function hSt(){let e=`{${this[n$].substr(1)}}`,r=JSON.parse(e);return delete r.pid,delete r.hostname,r}function gSt(t){let e=Wge(this,t);this[n$]=e,delete this[jvt]}function ySt(t,e){return Object.assign(e,t)}function ASt(t,e,r){let n=this[Vvt](),s=this[Qvt],i=this[zvt],a=this[Yvt],o=this[Gvt]||ySt,c;t==null?c={}:t instanceof Error?(c={[i]:t},e===void 0&&(e=t.message)):(c=t,e===void 0&&t[a]===void 0&&t[i]&&(e=t[i].message)),s&&(c=o(c,s(c,r,this)));let u=this[Lge](c,e,r,n),l=this[Mge];l[Xvt]===!0&&(l.lastLevel=r,l.lastObj=c,l.lastMsg=e,l.lastTime=n.slice(this[Kvt]),l.lastLogger=this),l.write(u)}function xSt(){}function bSt(t){if(t!=null&&typeof t!="function")throw Error("callback must be a function");let e=this[Mge];typeof e.flush=="function"?e.flush(t||xSt):t&&t()}});var Hge=_((o$,Qge)=>{"use strict";var{hasOwnProperty:AE}=Object.prototype,zm=a$();zm.configure=a$;zm.stringify=zm;zm.default=zm;o$.stringify=zm;o$.configure=a$;Qge.exports=zm;var _St=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function Lp(t){return t.length<5e3&&!_St.test(t)?`"${t}"`:JSON.stringify(t)}function s$(t,e){if(t.length>200||e)return t.sort(e);for(let r=1;r<t.length;r++){let n=t[r],s=r;for(;s!==0&&t[s-1]>n;)t[s]=t[s-1],s--;t[s]=n}return t}var ESt=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function i$(t){return ESt.call(t)!==void 0&&t.length!==0}function qge(t,e,r){t.length<r&&(r=t.length);let n=e===","?"":" ",s=`"0":${n}${t[0]}`;for(let i=1;i<r;i++)s+=`${e}"${i}":${n}${t[i]}`;return s}function vSt(t){if(AE.call(t,"circularValue")){let e=t.circularValue;if(typeof e=="string")return`"${e}"`;if(e==null)return e;if(e===Error||e===TypeError)return{toString(){throw new TypeError("Converting circular structure to JSON")}};throw new TypeError('The "circularValue" argument must be of type string or the value null or undefined')}return'"[Circular]"'}function SSt(t){let e;if(AE.call(t,"deterministic")&&(e=t.deterministic,typeof e!="boolean"&&typeof e!="function"))throw new TypeError('The "deterministic" argument must be of type boolean or comparator function');return e===void 0?!0:e}function ISt(t,e){let r;if(AE.call(t,e)&&(r=t[e],typeof r!="boolean"))throw new TypeError(`The "${e}" argument must be of type boolean`);return r===void 0?!0:r}function jge(t,e){let r;if(AE.call(t,e)){if(r=t[e],typeof r!="number")throw new TypeError(`The "${e}" argument must be of type number`);if(!Number.isInteger(r))throw new TypeError(`The "${e}" argument must be an integer`);if(r<1)throw new RangeError(`The "${e}" argument must be >= 1`)}return r===void 0?1/0:r}function Km(t){return t===1?"1 item":`${t} items`}function CSt(t){let e=new Set;for(let r of t)(typeof r=="string"||typeof r=="number")&&e.add(String(r));return e}function TSt(t){if(AE.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 a$(t){t={...t};let e=TSt(t);e&&(t.bigint===void 0&&(t.bigint=!1),"circularValue"in t||(t.circularValue=Error));let r=vSt(t),n=ISt(t,"bigint"),s=SSt(t),i=typeof s=="function"?s:void 0,a=jge(t,"maximumDepth"),o=jge(t,"maximumBreadth");function c(m,p,h,y,g,A){let b=p[m];switch(typeof b=="object"&&b!==null&&typeof b.toJSON=="function"&&(b=b.toJSON(m)),b=y.call(p,m,b),typeof b){case"string":return Lp(b);case"object":{if(b===null)return"null";if(h.indexOf(b)!==-1)return r;let x="",S=",",T=A;if(Array.isArray(b)){if(b.length===0)return"[]";if(a<h.length+1)return'"[Array]"';h.push(b),g!==""&&(A+=g,x+=`
${A}`,S=`,
${A}`);let M=Math.min(b.length,o),P=0;for(;P<M-1;P++){let Z=c(String(P),b,h,y,g,A);x+=Z!==void 0?Z:"null",x+=S}let L=c(String(P),b,h,y,g,A);if(x+=L!==void 0?L:"null",b.length-1>o){let Z=b.length-o-1;x+=`${S}"... ${Km(Z)} not stringified"`}return g!==""&&(x+=`
${T}`),h.pop(),`[${x}]`}let I=Object.keys(b),R=I.length;if(R===0)return"{}";if(a<h.length+1)return'"[Object]"';let N="",k="";g!==""&&(A+=g,S=`,
${A}`,N=" ");let B=Math.min(R,o);s&&!i$(b)&&(I=s$(I,i)),h.push(b);for(let M=0;M<B;M++){let P=I[M],L=c(P,b,h,y,g,A);L!==void 0&&(x+=`${k}${Lp(P)}:${N}${L}`,k=S)}if(R>o){let M=R-o;x+=`${k}"...":${N}"${Km(M)} not stringified"`,k=S}return g!==""&&k.length>1&&(x=`
${A}${x}
${T}`),h.pop(),`{${x}}`}case"number":return isFinite(b)?String(b):e?e(b):"null";case"boolean":return b===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(b);default:return e?e(b):void 0}}function u(m,p,h,y,g,A){switch(typeof p=="object"&&p!==null&&typeof p.toJSON=="function"&&(p=p.toJSON(m)),typeof p){case"string":return Lp(p);case"object":{if(p===null)return"null";if(h.indexOf(p)!==-1)return r;let b=A,x="",S=",";if(Array.isArray(p)){if(p.length===0)return"[]";if(a<h.length+1)return'"[Array]"';h.push(p),g!==""&&(A+=g,x+=`
${A}`,S=`,
${A}`);let R=Math.min(p.length,o),N=0;for(;N<R-1;N++){let B=u(String(N),p[N],h,y,g,A);x+=B!==void 0?B:"null",x+=S}let k=u(String(N),p[N],h,y,g,A);if(x+=k!==void 0?k:"null",p.length-1>o){let B=p.length-o-1;x+=`${S}"... ${Km(B)} not stringified"`}return g!==""&&(x+=`
${b}`),h.pop(),`[${x}]`}h.push(p);let T="";g!==""&&(A+=g,S=`,
${A}`,T=" ");let I="";for(let R of y){let N=u(R,p[R],h,y,g,A);N!==void 0&&(x+=`${I}${Lp(R)}:${T}${N}`,I=S)}return g!==""&&I.length>1&&(x=`
${A}${x}
${b}`),h.pop(),`{${x}}`}case"number":return isFinite(p)?String(p):e?e(p):"null";case"boolean":return p===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(p);default:return e?e(p):void 0}}function l(m,p,h,y,g){switch(typeof p){case"string":return Lp(p);case"object":{if(p===null)return"null";if(typeof p.toJSON=="function"){if(p=p.toJSON(m),typeof p!="object")return l(m,p,h,y,g);if(p===null)return"null"}if(h.indexOf(p)!==-1)return r;let A=g;if(Array.isArray(p)){if(p.length===0)return"[]";if(a<h.length+1)return'"[Array]"';h.push(p),g+=y;let N=`
${g}`,k=`,
${g}`,B=Math.min(p.length,o),M=0;for(;M<B-1;M++){let L=l(String(M),p[M],h,y,g);N+=L!==void 0?L:"null",N+=k}let P=l(String(M),p[M],h,y,g);if(N+=P!==void 0?P:"null",p.length-1>o){let L=p.length-o-1;N+=`${k}"... ${Km(L)} not stringified"`}return N+=`
${A}`,h.pop(),`[${N}]`}let b=Object.keys(p),x=b.length;if(x===0)return"{}";if(a<h.length+1)return'"[Object]"';g+=y;let S=`,
${g}`,T="",I="",R=Math.min(x,o);i$(p)&&(T+=qge(p,S,o),b=b.slice(p.length),R-=p.length,I=S),s&&(b=s$(b,i)),h.push(p);for(let N=0;N<R;N++){let k=b[N],B=l(k,p[k],h,y,g);B!==void 0&&(T+=`${I}${Lp(k)}: ${B}`,I=S)}if(x>o){let N=x-o;T+=`${I}"...": "${Km(N)} not stringified"`,I=S}return I!==""&&(T=`
${g}${T}
${A}`),h.pop(),`{${T}}`}case"number":return isFinite(p)?String(p):e?e(p):"null";case"boolean":return p===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(p);default:return e?e(p):void 0}}function d(m,p,h){switch(typeof p){case"string":return Lp(p);case"object":{if(p===null)return"null";if(typeof p.toJSON=="function"){if(p=p.toJSON(m),typeof p!="object")return d(m,p,h);if(p===null)return"null"}if(h.indexOf(p)!==-1)return r;let y="",g=p.length!==void 0;if(g&&Array.isArray(p)){if(p.length===0)return"[]";if(a<h.length+1)return'"[Array]"';h.push(p);let T=Math.min(p.length,o),I=0;for(;I<T-1;I++){let N=d(String(I),p[I],h);y+=N!==void 0?N:"null",y+=","}let R=d(String(I),p[I],h);if(y+=R!==void 0?R:"null",p.length-1>o){let N=p.length-o-1;y+=`,"... ${Km(N)} not stringified"`}return h.pop(),`[${y}]`}let A=Object.keys(p),b=A.length;if(b===0)return"{}";if(a<h.length+1)return'"[Object]"';let x="",S=Math.min(b,o);g&&i$(p)&&(y+=qge(p,",",o),A=A.slice(p.length),S-=p.length,x=","),s&&(A=s$(A,i)),h.push(p);for(let T=0;T<S;T++){let I=A[T],R=d(I,p[I],h);R!==void 0&&(y+=`${x}${Lp(I)}:${R}`,x=",")}if(b>o){let T=b-o;y+=`${x}"...":"${Km(T)} not stringified"`}return h.pop(),`{${y}}`}case"number":return isFinite(p)?String(p):e?e(p):"null";case"boolean":return p===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(p);default:return e?e(p):void 0}}function f(m,p,h){if(arguments.length>1){let y="";if(typeof h=="number"?y=" ".repeat(Math.min(h,10)):typeof h=="string"&&(y=h.slice(0,10)),p!=null){if(typeof p=="function")return c("",{"":m},[],p,y,"");if(Array.isArray(p))return u("",m,[],CSt(p),y,"")}if(y.length!==0)return l("",m,[],y,"")}return d("",m,[])}return f}});var Kge=_((m8r,Vge)=>{"use strict";var c$=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:Gge}=cO(),wSt=Gge.info;function RSt(t,e){let r=0;t=t||[],e=e||{dedupe:!1};let n=Object.create(Gge);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,[c$]:!0,streamLevels:n};return Array.isArray(t)?t.forEach(c,s):c.call(s,t),t=null,s;function i(d){let f,m=this.lastLevel,{streams:p}=this,h=0,y;for(let g=OSt(p.length,e.dedupe);PSt(g,p.length,e.dedupe);g=kSt(g,e.dedupe))if(f=p[g],f.level<=m){if(h!==0&&h!==f.level)break;if(y=f.stream,y[c$]){let{lastTime:A,lastMsg:b,lastObj:x,lastLogger:S}=this;y.lastLevel=m,y.lastTime=A,y.lastMsg=b,y.lastObj=x,y.lastLogger=S}y.write(d),e.dedupe&&(h=f.level)}else if(!e.dedupe)break}function a(...d){for(let{stream:f}of this.streams)typeof f.emit=="function"&&f.emit(...d)}function o(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync()}function c(d){if(!d)return s;let f=typeof d.write=="function"||d.stream,m=d.write?d:d.stream;if(!f)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:p,streamLevels:h}=this,y;typeof d.levelVal=="number"?y=d.levelVal:typeof d.level=="string"?y=h[d.level]:typeof d.level=="number"?y=d.level:y=wSt;let g={stream:m,level:y,levelVal:void 0,id:r++};return p.unshift(g),p.sort(NSt),this.minLevel=p[0].level,s}function u(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync(),d.end()}function l(d){let f=new Array(this.streams.length);for(let m=0;m<f.length;m++)f[m]={level:d,stream:this.streams[m].stream};return{write:i,add:c,minLevel:d,streams:f,clone:l,emit:a,flushSync:o,[c$]:!0}}}function NSt(t,e){return t.level-e.level}function OSt(t,e){return e?t-1:0}function kSt(t,e){return e?t-1:t+1}function PSt(t,e,r){return r?t>=0:t<e}Vge.exports=RSt});var oye=_((h8r,rc)=>{"use strict";var DSt=require("os"),rye=C8(),BSt=T8(),LSt=D8(),nye=Fhe(),MSt=Fge(),sye=IA(),{configure:WSt}=Hge(),{assertDefaultLevelFound:$St,mappings:iye,genLsCache:USt,genLevelComparison:FSt,assertLevelComparison:qSt}=Z8(),{DEFAULT_LEVELS:jSt,SORTING_ORDER:QSt}=cO(),{createArgsNormalizer:HSt,asChindings:GSt,buildSafeSonicBoom:zge,buildFormatters:VSt,stringify:u$,normalizeDestFileDescriptor:Yge,noop:KSt}=oO(),{version:zSt}=e$(),{chindingsSym:Jge,redactFmtSym:YSt,serializersSym:Xge,timeSym:JSt,timeSliceIndexSym:XSt,streamSym:ZSt,stringifySym:Zge,stringifySafeSym:l$,stringifiersSym:eye,setLevelSym:eIt,endSym:tIt,formatOptsSym:rIt,messageKeySym:nIt,errorKeySym:sIt,nestedKeySym:iIt,mixinSym:aIt,levelCompSym:oIt,useOnlyCustomLevelsSym:cIt,formattersSym:tye,hooksSym:uIt,nestedKeyStrSym:lIt,mixinMergeStrategySym:dIt,msgPrefixSym:fIt}=sye,{epochTime:aye,nullTime:pIt}=nye,{pid:mIt}=process,hIt=DSt.hostname(),gIt=rye.err,yIt={level:"info",levelComparison:QSt.ASC,levels:jSt,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:mIt,hostname:hIt},serializers:Object.assign(Object.create(null),{err:gIt}),formatters:Object.assign(Object.create(null),{bindings(t){return t},level(t,e){return{level:e}}}),hooks:{logMethod:void 0},timestamp:aye,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},AIt=HSt(yIt),xIt=Object.assign(Object.create(null),rye);function d$(...t){let e={},{opts:r,stream:n}=AIt(e,BSt(),...t),{redact:s,crlf:i,serializers:a,timestamp:o,messageKey:c,errorKey:u,nestedKey:l,base:d,name:f,level:m,customLevels:p,levelComparison:h,mixin:y,mixinMergeStrategy:g,useOnlyCustomLevels:A,formatters:b,hooks:x,depthLimit:S,edgeLimit:T,onChild:I,msgPrefix:R}=r,N=WSt({maximumDepth:S,maximumBreadth:T}),k=VSt(b.level,b.bindings,b.log),B=u$.bind({[l$]:N}),M=s?LSt(s,B):{},P=s?{stringify:M[YSt]}:{stringify:B},L="}"+(i?`\r
`:`
`),Z=GSt.bind(null,{[Jge]:"",[Xge]:a,[eye]:M,[Zge]:u$,[l$]:N,[tye]:k}),W="";d!==null&&(f===void 0?W=Z(d):W=Z(Object.assign({},d,{name:f})));let U=o instanceof Function?o:o?aye:pIt,V=U().indexOf(":")+1;if(A&&!p)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(y&&typeof y!="function")throw Error(`Unknown mixin type "${typeof y}" - expected "function"`);if(R&&typeof R!="string")throw Error(`Unknown msgPrefix type "${typeof R}" - expected "string"`);$St(m,p,A);let j=iye(p,A);typeof n.emit=="function"&&n.emit("message",{code:"PINO_CONFIG",config:{levels:j,messageKey:c,errorKey:u}}),qSt(h);let J=FSt(h);return Object.assign(e,{levels:j,[oIt]:J,[cIt]:A,[ZSt]:n,[JSt]:U,[XSt]:V,[Zge]:u$,[l$]:N,[eye]:M,[tIt]:L,[rIt]:P,[nIt]:c,[sIt]:u,[iIt]:l,[lIt]:l?`,${JSON.stringify(l)}:{`:"",[Xge]:a,[aIt]:y,[dIt]:g,[Jge]:W,[tye]:k,[uIt]:x,silent:KSt,onChild:I,[fIt]:R}),Object.setPrototypeOf(e,MSt()),USt(e),e[eIt](m),e}rc.exports=d$;rc.exports.destination=(t=process.stdout.fd)=>typeof t=="object"?(t.dest=Yge(t.dest||process.stdout.fd),zge(t)):zge({dest:Yge(t),minLength:0});rc.exports.transport=V8();rc.exports.multistream=Kge();rc.exports.levels=iye();rc.exports.stdSerializers=xIt;rc.exports.stdTimeFunctions=Object.assign({},nye);rc.exports.symbols=sye;rc.exports.version=zSt;rc.exports.default=d$;rc.exports.pino=d$});var xE=_((g8r,fye)=>{"use strict";var bIt=Jme(),uO=oye(),{serializersSym:cye}=uO.symbols,{FST_ERR_LOG_INVALID_DESTINATION:_It,FST_ERR_LOG_INVALID_LOGGER:EIt}=Bi();function uye(t){if(t.stream&&t.file)throw new _It;t.file&&(t.stream=uO.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[cye]&&(t.serializers=Object.assign({},t.serializers,e[cye])),n=e.child({},t),t.logger=e,t.genReqId=r):n=uO(t,t.stream),n}var f$={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:uO.stdSerializers.err,res:function(e){return{statusCode:e.statusCode}}};function vIt(){let t=process.hrtime();return t[0]*1e3+t[1]/1e6}function SIt(t){if(!t.logger){let n=bIt;return n.child=()=>n,{logger:n,hasLogger:!1}}if(lye(t.logger))return{logger:uye({logger:t.logger,serializers:Object.assign({},f$,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({},f$,e.serializers),t.logger=e,{logger:uye(t.logger),hasLogger:!0}}function lye(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 EIt(n.join(","))}else return!0}function IIt(t,e,r,n,s){let i={[t.requestIdLogLabel]:n},a=t.childLoggerFactory.call(t.server,e,i,s||{},r);return t.childLoggerFactory!==dye&&lye(a,!0),a}function dye(t,e,r){return t.child(e,r)}fye.exports={createLogger:SIt,createChildLogger:IIt,defaultChildLoggerFactory:dye,serializers:f$,now:vIt}});var lO=_((y8r,pye)=>{"use strict";pye.exports=CIt;function wA(t){return t instanceof Buffer?Buffer.from(t):new t.constructor(t.buffer.slice(),t.byteOffset,t.length)}function CIt(t){if(t=t||{},t.circles)return TIt(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;l<c.length;l++){let d=c[l],f=a[d];typeof f!="object"||f===null?u[d]=f:f.constructor!==Object&&(r=e.get(f.constructor))?u[d]=r(f,o):ArrayBuffer.isView(f)?u[d]=wA(f):u[d]=o(f)}return u}function s(a){if(typeof a!="object"||a===null)return a;if(Array.isArray(a))return n(a,s);if(a.constructor!==Object&&(r=e.get(a.constructor)))return r(a,s);let o={};for(let c in a){if(Object.hasOwnProperty.call(a,c)===!1)continue;let u=a[c];typeof u!="object"||u===null?o[c]=u:u.constructor!==Object&&(r=e.get(u.constructor))?o[c]=r(u,s):ArrayBuffer.isView(u)?o[c]=wA(u):o[c]=s(u)}return o}function i(a){if(typeof a!="object"||a===null)return a;if(Array.isArray(a))return n(a,i);if(a.constructor!==Object&&(r=e.get(a.constructor)))return r(a,i);let o={};for(let c in a){let u=a[c];typeof u!="object"||u===null?o[c]=u:u.constructor!==Object&&(r=e.get(u.constructor))?o[c]=r(u,i):ArrayBuffer.isView(u)?o[c]=wA(u):o[c]=i(u)}return o}}function TIt(t){let e=[],r=[],n=new Map;if(n.set(Date,c=>new 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<l.length;f++){let m=l[f],p=c[m];if(typeof p!="object"||p===null)d[m]=p;else if(p.constructor!==Object&&(s=n.get(p.constructor)))d[m]=s(p,u);else if(ArrayBuffer.isView(p))d[m]=wA(p);else{let h=e.indexOf(p);h!==-1?d[m]=r[h]:d[m]=u(p)}}return d}function a(c){if(typeof c!="object"||c===null)return c;if(Array.isArray(c))return i(c,a);if(c.constructor!==Object&&(s=n.get(c.constructor)))return s(c,a);let u={};e.push(c),r.push(u);for(let l in c){if(Object.hasOwnProperty.call(c,l)===!1)continue;let d=c[l];if(typeof d!="object"||d===null)u[l]=d;else if(d.constructor!==Object&&(s=n.get(d.constructor)))u[l]=s(d,a);else if(ArrayBuffer.isView(d))u[l]=wA(d);else{let f=e.indexOf(d);f!==-1?u[l]=r[f]:u[l]=a(d)}}return e.pop(),r.pop(),u}function o(c){if(typeof c!="object"||c===null)return c;if(Array.isArray(c))return i(c,o);if(c.constructor!==Object&&(s=n.get(c.constructor)))return s(c,o);let u={};e.push(c),r.push(u);for(let l in c){let d=c[l];if(typeof d!="object"||d===null)u[l]=d;else if(d.constructor!==Object&&(s=n.get(d.constructor)))u[l]=s(d,o);else if(ArrayBuffer.isView(d))u[l]=wA(d);else{let f=e.indexOf(d);f!==-1?u[l]=r[f]:u[l]=o(d)}}return e.pop(),r.pop(),u}}});var bE=_((A8r,yye)=>{"use strict";var wIt=lO()({circles:!1,proto:!0}),{kSchemaVisited:mye,kSchemaResponse:RIt}=Ks(),m$=Symbol.for("fluent-schema-object"),{FST_ERR_SCH_MISSING_ID:NIt,FST_ERR_SCH_ALREADY_PRESENT:OIt,FST_ERR_SCH_DUPLICATE:kIt,FST_ERR_SCH_CONTENT_MISSING_SCHEMA:PIt}=Bi(),gye=["params","body","querystring","query","headers"];function dO(t){this.store=t||{}}dO.prototype.add=function(t){let e=wIt(t.isFluentSchema||t.isFluentJSONSchema||t[m$]?t.valueOf():t),r=e.$id;if(!r)throw new NIt;if(this.store[r])throw new OIt(r);this.store[r]=e};dO.prototype.getSchemas=function(){return Object.assign({},this.store)};dO.prototype.getSchema=function(t){return this.store[t]};function hye(t){return typeof t=="object"&&Object.getPrototypeOf(t)!==Object.prototype}function DIt(t,e){if(t[mye])return t;if(t.query){if(t.querystring)throw new kIt("querystring");t.querystring=t.query}BIt(t);for(let r of gye){let n=t[r];n&&!hye(n)&&(t[r]=p$(n,e.jsonShorthand))}if(t.response){let r=Object.keys(t.response);for(let n of r){if(hye(t.response[n]))continue;let s=t.response[n].content,i=!1;if(s){let a=Object.keys(s);for(let o=0;o<a.length;o++){let c=a[o];if(!s[c].schema){if(a.length===1)break;throw new PIt(c)}t.response[n].content[c].schema=p$(s[c].schema,e.jsonShorthand),o===a.length-1&&(i=!0)}}i||(t.response[n]=p$(t.response[n],e.jsonShorthand))}}return t[mye]=!0,t}function BIt(t){for(let e of gye)t[e]&&(t[e].isFluentSchema||t[e][m$])&&(t[e]=t[e].valueOf());if(t.response){let e=Object.keys(t.response);for(let r of e)(t.response[r].isFluentSchema||t.response[r][m$])&&(t.response[r]=t.response[r].valueOf())}}function p$(t,e){return!e||t.$ref||t.oneOf||t.allOf||t.anyOf||t.$merge||t.$patch?t:!t.type&&!t.properties?{type:"object",properties:t}:t}function LIt(t,e,r){let n=t[RIt];if(!n)return!1;if(n[e]){if(n[e].constructor===Object&&r){let i=r.split(";",1)[0];return n[e][i]?n[e][i]:!1}return n[e]}let s=(e+"")[0]+"xx";if(n[s]){if(n[s].constructor===Object&&r){let i=r.split(";",1)[0];return n[s][i]?n[s][i]:!1}return n[s]}if(n.default){if(n.default.constructor===Object&&r){let i=r.split(";",1)[0];return n.default[i]?n.default[i]:!1}return n.default}return!1}yye.exports={buildSchemas(t){return new dO(t)},getSchemaSerializer:LIt,normalizeSchema:DIt}});var h$=_((x8r,xye)=>{"use strict";var MIt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;xye.exports=class Aye{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<r;n++)if(a=e.charCodeAt(n),a===34||a===92)i===-1&&(i=0),s+=e.slice(i,n)+"\\",i=n;else if(a<32||a>=55296&&a<=57343)return JSON.stringify(e);return i===-1&&'"'+e+'"'||'"'+s+e.slice(i)+'"'}else return r<5e3&&MIt.test(e)===!1?'"'+e+'"':JSON.stringify(e)}asUnsafeString(e){return'"'+e+'"'}getState(){return this._options}static restoreFromState(e){return new Aye(e)}}});var vE=_(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 _E=class{};Mr._CodeOrName=_E;Mr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Ym=class extends _E{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=Ym;var nc=class extends _E{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 Ym&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Mr._Code=nc;Mr.nil=new nc("");function bye(t,...e){let r=[t[0]],n=0;for(;n<e.length;)y$(r,e[n]),r.push(t[++n]);return new nc(r)}Mr._=bye;var g$=new nc("+");function _ye(t,...e){let r=[EE(t[0])],n=0;for(;n<e.length;)r.push(g$),y$(r,e[n]),r.push(g$,EE(t[++n]));return WIt(r),new nc(r)}Mr.str=_ye;function y$(t,e){e instanceof nc?t.push(...e._items):e instanceof Ym?t.push(e):t.push(FIt(e))}Mr.addCodeArg=y$;function WIt(t){let e=1;for(;e<t.length-1;){if(t[e]===g$){let r=$It(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function $It(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Ym||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof Ym))return`"${t}${e.slice(1)}`}function UIt(t,e){return e.emptyStr()?t:t.emptyStr()?e:_ye`${t}${e}`}Mr.strConcat=UIt;function FIt(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:EE(Array.isArray(t)?t.join(","):t)}function qIt(t){return new nc(EE(t))}Mr.stringify=qIt;function EE(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Mr.safeStringify=EE;function jIt(t){return typeof t=="string"&&Mr.IDENTIFIER.test(t)?new nc(`.${t}`):bye`[${t}]`}Mr.getProperty=jIt;function QIt(t){if(typeof t=="string"&&Mr.IDENTIFIER.test(t))return new nc(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Mr.getEsmExportName=QIt;function HIt(t){return new nc(t.toString())}Mr.regexpCode=HIt});var b$=_(qa=>{"use strict";Object.defineProperty(qa,"__esModule",{value:!0});qa.ValueScope=qa.ValueScopeName=qa.Scope=qa.varKinds=qa.UsedValueState=void 0;var Fa=vE(),A$=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},fO;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(fO||(qa.UsedValueState=fO={}));qa.varKinds={const:new Fa.Name("const"),let:new Fa.Name("let"),var:new Fa.Name("var")};var pO=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Fa.Name?e:this.name(e)}name(e){return new Fa.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};qa.Scope=pO;var mO=class extends Fa.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Fa._)`.${new Fa.Name(r)}[${n}]`}};qa.ValueScopeName=mO;var GIt=(0,Fa._)`\n`,x$=class extends pO{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?GIt:Fa.nil}}get(){return this._scope}name(e){return new mO(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,fO.Started);let l=r(u);if(l){let d=this.opts.es5?qa.varKinds.var:qa.varKinds.const;i=(0,Fa._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Fa._)`${i}${l}${this.opts._n}`;else throw new A$(u);c.set(u,fO.Completed)})}return i}};qa.ValueScope=x$});var zt=_(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.or=rr.and=rr.not=rr.CodeGen=rr.operators=rr.varKinds=rr.ValueScopeName=rr.ValueScope=rr.Scope=rr.Name=rr.regexpCode=rr.stringify=rr.getProperty=rr.nil=rr.strConcat=rr.str=rr._=void 0;var vr=vE(),eu=b$(),Mp=vE();Object.defineProperty(rr,"_",{enumerable:!0,get:function(){return Mp._}});Object.defineProperty(rr,"str",{enumerable:!0,get:function(){return Mp.str}});Object.defineProperty(rr,"strConcat",{enumerable:!0,get:function(){return Mp.strConcat}});Object.defineProperty(rr,"nil",{enumerable:!0,get:function(){return Mp.nil}});Object.defineProperty(rr,"getProperty",{enumerable:!0,get:function(){return Mp.getProperty}});Object.defineProperty(rr,"stringify",{enumerable:!0,get:function(){return Mp.stringify}});Object.defineProperty(rr,"regexpCode",{enumerable:!0,get:function(){return Mp.regexpCode}});Object.defineProperty(rr,"Name",{enumerable:!0,get:function(){return Mp.Name}});var AO=b$();Object.defineProperty(rr,"Scope",{enumerable:!0,get:function(){return AO.Scope}});Object.defineProperty(rr,"ValueScope",{enumerable:!0,get:function(){return AO.ValueScope}});Object.defineProperty(rr,"ValueScopeName",{enumerable:!0,get:function(){return AO.ValueScopeName}});Object.defineProperty(rr,"varKinds",{enumerable:!0,get:function(){return AO.varKinds}});rr.operators={GT:new vr._Code(">"),GTE:new vr._Code(">="),LT:new vr._Code("<"),LTE:new vr._Code("<="),EQ:new vr._Code("==="),NEQ:new vr._Code("!=="),NOT:new vr._Code("!"),OR:new vr._Code("||"),AND:new vr._Code("&&"),ADD:new vr._Code("+")};var Pd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},_$=class extends Pd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?eu.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=NA(this.rhs,e,r)),this}get names(){return this.rhs instanceof vr._CodeOrName?this.rhs.names:{}}},hO=class extends Pd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof vr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=NA(this.rhs,e,r),this}get names(){let e=this.lhs instanceof vr.Name?{}:{...this.lhs.names};return yO(e,this.rhs)}},E$=class extends hO{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},v$=class extends Pd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},S$=class extends Pd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},I$=class extends Pd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},C$=class extends Pd{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=NA(this.code,e,r),this}get names(){return this.code instanceof vr._CodeOrName?this.code.names:{}}},SE=class extends Pd{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)||(VIt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Zm(e,r.names),{})}},Dd=class extends SE{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},T$=class extends SE{},RA=class extends Dd{};RA.kind="else";var Jm=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 RA(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Eye(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=NA(this.condition,e,r),this}get names(){let e=super.names;return yO(e,this.condition),this.else&&Zm(e,this.else.names),e}};Jm.kind="if";var Xm=class extends Dd{};Xm.kind="for";var w$=class extends Xm{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=NA(this.iteration,e,r),this}get names(){return Zm(super.names,this.iteration.names)}},R$=class extends Xm{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?eu.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=yO(super.names,this.from);return yO(e,this.to)}},gO=class extends Xm{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=NA(this.iterable,e,r),this}get names(){return Zm(super.names,this.iterable.names)}},IE=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)}};IE.kind="func";var CE=class extends SE{render(e){return"return "+super.render(e)}};CE.kind="return";var N$=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&&Zm(e,this.catch.names),this.finally&&Zm(e,this.finally.names),e}},TE=class extends Dd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};TE.kind="catch";var wE=class extends Dd{render(e){return"finally"+super.render(e)}};wE.kind="finally";var O$=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
`:""},this._extScope=e,this._scope=new eu.Scope({parent:e}),this._nodes=[new T$]}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 _$(e,i,n)),i}const(e,r,n){return this._def(eu.varKinds.const,e,r,n)}let(e,r,n){return this._def(eu.varKinds.let,e,r,n)}var(e,r,n){return this._def(eu.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new hO(e,r,n))}add(e,r){return this._leafNode(new E$(e,rr.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==vr.nil&&this._leafNode(new C$(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,vr.addCodeArg)(r,s));return r.push("}"),new vr._Code(r)}if(e,r,n){if(this._blockNode(new Jm(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 Jm(e))}else(){return this._elseNode(new RA)}endIf(){return this._endBlockNode(Jm,RA)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new w$(e),r)}forRange(e,r,n,s,i=this.opts.es5?eu.varKinds.var:eu.varKinds.let){let a=this._scope.toName(e);return this._for(new R$(i,a,r,n),()=>s(a))}forOf(e,r,n,s=eu.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof vr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,vr._)`${a}.length`,o=>{this.var(i,(0,vr._)`${a}[${o}]`),n(i)})}return this._for(new gO("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?eu.varKinds.var:eu.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,vr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new gO("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Xm)}label(e){return this._leafNode(new v$(e))}break(e){return this._leafNode(new S$(e))}return(e){let r=new CE;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(CE)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new N$;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new TE(i),r(i)}return n&&(this._currNode=s.finally=new wE,this.code(n)),this._endBlockNode(TE,wE)}throw(e){return this._leafNode(new I$(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=vr.nil,n,s){return this._blockNode(new IE(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(IE)}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 Jm))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};rr.CodeGen=O$;function Zm(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function yO(t,e){return e instanceof vr._CodeOrName?Zm(t,e.names):t}function NA(t,e,r){if(t instanceof vr.Name)return n(t);if(!s(t))return t;return new vr._Code(t._items.reduce((i,a)=>(a instanceof vr.Name&&(a=n(a)),a instanceof vr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof vr._Code&&i._items.some(a=>a instanceof vr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function VIt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Eye(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,vr._)`!${k$(t)}`}rr.not=Eye;var KIt=vye(rr.operators.AND);function zIt(...t){return t.reduce(KIt)}rr.and=zIt;var YIt=vye(rr.operators.OR);function JIt(...t){return t.reduce(YIt)}rr.or=JIt;function vye(t){return(e,r)=>e===vr.nil?r:r===vr.nil?e:(0,vr._)`${k$(e)} ${t} ${k$(r)}`}function k$(t){return t instanceof vr.Name?t:(0,vr._)`(${t})`}});var Wr=_(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.checkStrictMode=ar.getErrorPath=ar.Type=ar.useFunc=ar.setEvaluated=ar.evaluatedPropsToName=ar.mergeEvaluated=ar.eachItem=ar.unescapeJsonPointer=ar.escapeJsonPointer=ar.escapeFragment=ar.unescapeFragment=ar.schemaRefOrVal=ar.schemaHasRulesButRef=ar.schemaHasRules=ar.checkUnknownRules=ar.alwaysValidSchema=ar.toHash=void 0;var ln=zt(),XIt=vE();function ZIt(t){let e={};for(let r of t)e[r]=!0;return e}ar.toHash=ZIt;function eCt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Cye(t,e),!Tye(e,t.self.RULES.all))}ar.alwaysValidSchema=eCt;function Cye(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]||Nye(t,`unknown keyword: "${i}"`)}ar.checkUnknownRules=Cye;function Tye(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}ar.schemaHasRules=Tye;function tCt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}ar.schemaHasRulesButRef=tCt;function rCt({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)}`}ar.schemaRefOrVal=rCt;function nCt(t){return wye(decodeURIComponent(t))}ar.unescapeFragment=nCt;function sCt(t){return encodeURIComponent(D$(t))}ar.escapeFragment=sCt;function D$(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}ar.escapeJsonPointer=D$;function wye(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}ar.unescapeJsonPointer=wye;function iCt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}ar.eachItem=iCt;function Sye({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}}ar.mergeEvaluated={props:Sye({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} || {}`),B$(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Rye}),items:Sye({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 Rye(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ln._)`{}`);return e!==void 0&&B$(t,r,e),r}ar.evaluatedPropsToName=Rye;function B$(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ln._)`${e}${(0,ln.getProperty)(n)}`,!0))}ar.setEvaluated=B$;var Iye={};function aCt(t,e){return t.scopeValue("func",{ref:e,code:Iye[e.code]||(Iye[e.code]=new XIt._Code(e.code))})}ar.useFunc=aCt;var P$;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(P$||(ar.Type=P$={}));function oCt(t,e,r){if(t instanceof ln.Name){let n=e===P$.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():"/"+D$(t)}ar.getErrorPath=oCt;function Nye(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}ar.checkStrictMode=Nye});var Bd=_(L$=>{"use strict";Object.defineProperty(L$,"__esModule",{value:!0});var Mi=zt(),cCt={data:new Mi.Name("data"),valCxt:new Mi.Name("valCxt"),instancePath:new Mi.Name("instancePath"),parentData:new Mi.Name("parentData"),parentDataProperty:new Mi.Name("parentDataProperty"),rootData:new Mi.Name("rootData"),dynamicAnchors:new Mi.Name("dynamicAnchors"),vErrors:new Mi.Name("vErrors"),errors:new Mi.Name("errors"),this:new Mi.Name("this"),self:new Mi.Name("self"),scope:new Mi.Name("scope"),json:new Mi.Name("json"),jsonPos:new Mi.Name("jsonPos"),jsonLen:new Mi.Name("jsonLen"),jsonPart:new Mi.Name("jsonPart")};L$.default=cCt});var RE=_(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 Nr=zt(),xO=Wr(),ua=Bd();Wi.keywordError={message:({keyword:t})=>(0,Nr.str)`must pass "${t}" keyword validation`};Wi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Nr.str)`"${t}" keyword must be ${e} ($data)`:(0,Nr.str)`"${t}" keyword is invalid ($data)`};function uCt(t,e=Wi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=Pye(t,e,r);n??(a||o)?Oye(i,c):kye(s,(0,Nr._)`[${c}]`)}Wi.reportError=uCt;function lCt(t,e=Wi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=Pye(t,e,r);Oye(s,o),i||a||kye(n,ua.default.vErrors)}Wi.reportExtraError=lCt;function dCt(t,e){t.assign(ua.default.errors,e),t.if((0,Nr._)`${ua.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Nr._)`${ua.default.vErrors}.length`,e),()=>t.assign(ua.default.vErrors,null)))}Wi.resetErrorsCount=dCt;function fCt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ua.default.errors,o=>{t.const(a,(0,Nr._)`${ua.default.vErrors}[${o}]`),t.if((0,Nr._)`${a}.instancePath === undefined`,()=>t.assign((0,Nr._)`${a}.instancePath`,(0,Nr.strConcat)(ua.default.instancePath,i.errorPath))),t.assign((0,Nr._)`${a}.schemaPath`,(0,Nr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Nr._)`${a}.schema`,r),t.assign((0,Nr._)`${a}.data`,n))})}Wi.extendErrors=fCt;function Oye(t,e){let r=t.const("err",e);t.if((0,Nr._)`${ua.default.vErrors} === null`,()=>t.assign(ua.default.vErrors,(0,Nr._)`[${r}]`),(0,Nr._)`${ua.default.vErrors}.push(${r})`),t.code((0,Nr._)`${ua.default.errors}++`)}function kye(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Nr._)`new ${t.ValidationError}(${e})`):(r.assign((0,Nr._)`${n}.errors`,e),r.return(!1))}var eh={keyword:new Nr.Name("keyword"),schemaPath:new Nr.Name("schemaPath"),params:new Nr.Name("params"),propertyName:new Nr.Name("propertyName"),message:new Nr.Name("message"),schema:new Nr.Name("schema"),parentSchema:new Nr.Name("parentSchema")};function Pye(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Nr._)`{}`:pCt(t,e,r)}function pCt(t,e,r={}){let{gen:n,it:s}=t,i=[mCt(s,r),hCt(t,r)];return gCt(t,e,i),n.object(...i)}function mCt({errorPath:t},{instancePath:e}){let r=e?(0,Nr.str)`${t}${(0,xO.getErrorPath)(e,xO.Type.Str)}`:t;return[ua.default.instancePath,(0,Nr.strConcat)(ua.default.instancePath,r)]}function hCt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Nr.str)`${e}/${t}`;return r&&(s=(0,Nr.str)`${s}${(0,xO.getErrorPath)(r,xO.Type.Str)}`),[eh.schemaPath,s]}function gCt(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([eh.keyword,s],[eh.params,typeof e=="function"?e(t):e||(0,Nr._)`{}`]),c.messages&&n.push([eh.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([eh.schema,a],[eh.parentSchema,(0,Nr._)`${l}${d}`],[ua.default.data,i]),u&&n.push([eh.propertyName,u])}});var Bye=_(OA=>{"use strict";Object.defineProperty(OA,"__esModule",{value:!0});OA.boolOrEmptySchema=OA.topBoolOrEmptySchema=void 0;var yCt=RE(),ACt=zt(),xCt=Bd(),bCt={message:"boolean schema is false"};function _Ct(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Dye(t,!1):typeof r=="object"&&r.$async===!0?e.return(xCt.default.data):(e.assign((0,ACt._)`${n}.errors`,null),e.return(!0))}OA.topBoolOrEmptySchema=_Ct;function ECt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Dye(t)):r.var(e,!0)}OA.boolOrEmptySchema=ECt;function Dye(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,yCt.reportError)(s,bCt,void 0,e)}});var M$=_(kA=>{"use strict";Object.defineProperty(kA,"__esModule",{value:!0});kA.getRules=kA.isJSONType=void 0;var vCt=["string","number","integer","boolean","null","object","array"],SCt=new Set(vCt);function ICt(t){return typeof t=="string"&&SCt.has(t)}kA.isJSONType=ICt;function CCt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}kA.getRules=CCt});var W$=_(Wp=>{"use strict";Object.defineProperty(Wp,"__esModule",{value:!0});Wp.shouldUseRule=Wp.shouldUseGroup=Wp.schemaHasRulesForType=void 0;function TCt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Lye(t,n)}Wp.schemaHasRulesForType=TCt;function Lye(t,e){return e.rules.some(r=>Mye(t,r))}Wp.shouldUseGroup=Lye;function Mye(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))}Wp.shouldUseRule=Mye});var NE=_($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.reportTypeError=$i.checkDataTypes=$i.checkDataType=$i.coerceAndCheckDataType=$i.getJSONTypes=$i.getSchemaTypes=$i.DataType=void 0;var wCt=M$(),RCt=W$(),NCt=RE(),jt=zt(),Wye=Wr(),PA;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(PA||($i.DataType=PA={}));function OCt(t){let e=$ye(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}$i.getSchemaTypes=OCt;function $ye(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(wCt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}$i.getJSONTypes=$ye;function kCt(t,e){let{gen:r,data:n,opts:s}=t,i=PCt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,RCt.schemaHasRulesForType)(t,e[0]));if(a){let o=U$(e,n,s.strictNumbers,PA.Wrong);r.if(o,()=>{i.length?DCt(t,e,i):F$(t)})}return a}$i.coerceAndCheckDataType=kCt;var Uye=new Set(["string","number","integer","boolean","null"]);function PCt(t,e){return e?t.filter(r=>Uye.has(r)||e==="array"&&r==="array"):[]}function DCt(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(U$(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,jt._)`${o} !== undefined`);for(let u of r)(Uye.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),F$(t),n.endIf(),n.if((0,jt._)`${o} !== undefined`,()=>{n.assign(s,o),BCt(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 BCt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,jt._)`${e} !== undefined`,()=>t.assign((0,jt._)`${e}[${r}]`,n))}function $$(t,e,r,n=PA.Correct){let s=n===PA.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===PA.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)}}$i.checkDataType=$$;function U$(t,e,r,n){if(t.length===1)return $$(t[0],e,r,n);let s,i=(0,Wye.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,$$(a,e,r,n));return s}$i.checkDataTypes=U$;var LCt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,jt._)`{type: ${t}}`:(0,jt._)`{type: ${e}}`};function F$(t){let e=MCt(t);(0,NCt.reportError)(e,LCt)}$i.reportTypeError=F$;function MCt(t){let{gen:e,data:r,schema:n}=t,s=(0,Wye.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var qye=_(bO=>{"use strict";Object.defineProperty(bO,"__esModule",{value:!0});bO.assignDefaults=void 0;var DA=zt(),WCt=Wr();function $Ct(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)Fye(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>Fye(t,i,s.default))}bO.assignDefaults=$Ct;function Fye(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,DA._)`${i}${(0,DA.getProperty)(e)}`;if(s){(0,WCt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,DA._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,DA._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,DA._)`${o} = ${(0,DA.stringify)(r)}`)}});var sc=_(Xr=>{"use strict";Object.defineProperty(Xr,"__esModule",{value:!0});Xr.validateUnion=Xr.validateArray=Xr.usePattern=Xr.callValidateCode=Xr.schemaProperties=Xr.allSchemaProperties=Xr.noPropertyInData=Xr.propertyInData=Xr.isOwnProperty=Xr.hasPropFunc=Xr.reportMissingProp=Xr.checkMissingProp=Xr.checkReportMissingProp=void 0;var Rn=zt(),q$=Wr(),$p=Bd(),UCt=Wr();function FCt(t,e){let{gen:r,data:n,it:s}=t;r.if(Q$(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Rn._)`${e}`},!0),t.error()})}Xr.checkReportMissingProp=FCt;function qCt({gen:t,data:e,it:{opts:r}},n,s){return(0,Rn.or)(...n.map(i=>(0,Rn.and)(Q$(t,e,i,r.ownProperties),(0,Rn._)`${s} = ${i}`)))}Xr.checkMissingProp=qCt;function jCt(t,e){t.setParams({missingProperty:e},!0),t.error()}Xr.reportMissingProp=jCt;function jye(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Rn._)`Object.prototype.hasOwnProperty`})}Xr.hasPropFunc=jye;function j$(t,e,r){return(0,Rn._)`${jye(t)}.call(${e}, ${r})`}Xr.isOwnProperty=j$;function QCt(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} !== undefined`;return n?(0,Rn._)`${s} && ${j$(t,e,r)}`:s}Xr.propertyInData=QCt;function Q$(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} === undefined`;return n?(0,Rn.or)(s,(0,Rn.not)(j$(t,e,r))):s}Xr.noPropertyInData=Q$;function Qye(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Xr.allSchemaProperties=Qye;function HCt(t,e){return Qye(e).filter(r=>!(0,q$.alwaysValidSchema)(t,e[r]))}Xr.schemaProperties=HCt;function GCt({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=[[$p.default.instancePath,(0,Rn.strConcat)($p.default.instancePath,i)],[$p.default.parentData,a.parentData],[$p.default.parentDataProperty,a.parentDataProperty],[$p.default.rootData,$p.default.rootData]];a.opts.dynamicRef&&d.push([$p.default.dynamicAnchors,$p.default.dynamicAnchors]);let f=(0,Rn._)`${l}, ${r.object(...d)}`;return c!==Rn.nil?(0,Rn._)`${o}.call(${c}, ${f})`:(0,Rn._)`${o}(${f})`}Xr.callValidateCode=GCt;var VCt=(0,Rn._)`new RegExp`;function KCt({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"?VCt:(0,UCt.useFunc)(t,s)}(${r}, ${n})`})}Xr.usePattern=KCt;function zCt(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:q$.Type.Num},i),e.if((0,Rn.not)(i),o)})}}Xr.validateArray=zCt;function YCt(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,q$.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Rn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Rn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}Xr.validateUnion=YCt});var Vye=_(el=>{"use strict";Object.defineProperty(el,"__esModule",{value:!0});el.validateKeywordUsage=el.validSchemaType=el.funcKeywordCode=el.macroKeywordCode=void 0;var la=zt(),th=Bd(),JCt=sc(),XCt=RE();function ZCt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=Gye(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:la.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}el.macroKeywordCode=ZCt;function e2t(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;r2t(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=Gye(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&&Hye(t),y(()=>t.error());else{let g=e.async?m():p();e.modifying&&Hye(t),y(()=>t2t(t,g))}}function m(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,la._)`await `),A=>n.assign(d,!1).if((0,la._)`${A} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,la._)`${A}.errors`),()=>n.throw(A))),g}function p(){let g=(0,la._)`${l}.errors`;return n.assign(g,null),h(la.nil),g}function h(g=e.async?(0,la._)`await `:la.nil){let A=c.opts.passContext?th.default.this:th.default.self,b=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,la._)`${g}${(0,JCt.callValidateCode)(t,l,A,b)}`,e.modifying)}function y(g){var A;n.if((0,la.not)((A=e.valid)!==null&&A!==void 0?A:d),g)}}el.funcKeywordCode=e2t;function Hye(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,la._)`${n.parentData}[${n.parentDataProperty}]`))}function t2t(t,e){let{gen:r}=t;r.if((0,la._)`Array.isArray(${e})`,()=>{r.assign(th.default.vErrors,(0,la._)`${th.default.vErrors} === null ? ${e} : ${th.default.vErrors}.concat(${e})`).assign(th.default.errors,(0,la._)`${th.default.vErrors}.length`),(0,XCt.extendErrors)(t)},()=>t.error())}function r2t({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Gye(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,la.stringify)(r)})}function n2t(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")}el.validSchemaType=n2t;function s2t({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)}}el.validateKeywordUsage=s2t});var zye=_(Up=>{"use strict";Object.defineProperty(Up,"__esModule",{value:!0});Up.extendSubschemaMode=Up.extendSubschemaData=Up.getSubschema=void 0;var tl=zt(),Kye=Wr();function i2t(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,tl._)`${t.schemaPath}${(0,tl.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,tl._)`${t.schemaPath}${(0,tl.getProperty)(e)}${(0,tl.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Kye.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')}Up.getSubschema=i2t;function a2t(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,tl._)`${e.data}${(0,tl.getProperty)(r)}`,!0);c(f),t.errorPath=(0,tl.str)`${u}${(0,Kye.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,tl._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof tl.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]}}Up.extendSubschemaData=a2t;function o2t(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}Up.extendSubschemaMode=o2t});var ic=_((D8r,Yye)=>{"use strict";Yye.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 Xye=_((B8r,Jye)=>{"use strict";var Fp=Jye.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(){};_O(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 _O(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<d.length;f++)_O(t,e,r,d[f],s+"/"+l+"/"+f,i,s,l,n,f)}else if(l in Fp.propsKeywords){if(d&&typeof d=="object")for(var m in d)_O(t,e,r,d[m],s+"/"+l+"/"+c2t(m),i,s,l,n,m)}else(l in Fp.keywords||t.allKeys&&!(l in Fp.skipKeywords))&&_O(t,e,r,d,s+"/"+l,i,s,l,n)}r(n,s,i,a,o,c,u)}}function c2t(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var OE=_(ja=>{"use strict";Object.defineProperty(ja,"__esModule",{value:!0});ja.getSchemaRefs=ja.resolveUrl=ja.normalizeId=ja._getFullPath=ja.getFullPath=ja.inlineRef=void 0;var u2t=Wr(),l2t=ic(),d2t=Xye(),f2t=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function p2t(t,e=!0){return typeof t=="boolean"?!0:e===!0?!H$(t):e?Zye(t)<=e:!1}ja.inlineRef=p2t;var m2t=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function H$(t){for(let e in t){if(m2t.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(H$)||typeof r=="object"&&H$(r))return!0}return!1}function Zye(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!f2t.has(r)&&(typeof t[r]=="object"&&(0,u2t.eachItem)(t[r],n=>e+=Zye(n)),e===1/0))return 1/0}return e}function eAe(t,e="",r){r!==!1&&(e=BA(e));let n=t.parse(e);return tAe(t,n)}ja.getFullPath=eAe;function tAe(t,e){return t.serialize(e).split("#")[0]+"#"}ja._getFullPath=tAe;var h2t=/#\/?$/;function BA(t){return t?t.replace(h2t,""):""}ja.normalizeId=BA;function g2t(t,e,r){return r=BA(r),t.resolve(e,r)}ja.resolveUrl=g2t;var y2t=/^[a-z_][-a-z0-9._]*$/i;function A2t(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=BA(t[r]||e),i={"":s},a=eAe(n,s,!1),o={},c=new Set;return d2t(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=a+f,y=i[p];typeof d[r]=="string"&&(y=g.call(this,d[r])),A.call(this,d.$anchor),A.call(this,d.$dynamicAnchor),i[f]=y;function g(b){let x=this.opts.uriResolver.resolve;if(b=BA(y?x(y,b):b),c.has(b))throw l(b);c.add(b);let S=this.refs[b];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?u(d,S.schema,b):b!==BA(h)&&(b[0]==="#"?(u(d,o[b],b),o[b]=d):this.refs[b]=h),b}function A(b){if(typeof b=="string"){if(!y2t.test(b))throw new Error(`invalid anchor "${b}"`);g.call(this,`#${b}`)}}}),o;function u(d,f,m){if(f!==void 0&&!l2t(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}ja.getSchemaRefs=A2t});var DE=_(qp=>{"use strict";Object.defineProperty(qp,"__esModule",{value:!0});qp.getData=qp.KeywordCxt=qp.validateFunctionCode=void 0;var aAe=Bye(),rAe=NE(),V$=W$(),EO=NE(),x2t=qye(),PE=Vye(),G$=zye(),at=zt(),Rt=Bd(),b2t=OE(),Ld=Wr(),kE=RE();function _2t(t){if(uAe(t)&&(lAe(t),cAe(t))){S2t(t);return}oAe(t,()=>(0,aAe.topBoolOrEmptySchema)(t))}qp.validateFunctionCode=_2t;function oAe({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"; ${nAe(r,s)}`),v2t(t,s),t.code(i)}):t.func(e,(0,at._)`${Rt.default.data}, ${E2t(s)}`,n.$async,()=>t.code(nAe(r,s)).code(i))}function E2t(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 v2t(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 S2t(t){let{schema:e,opts:r,gen:n}=t;oAe(t,()=>{r.$comment&&e.$comment&&fAe(t),R2t(t),n.let(Rt.default.vErrors,null),n.let(Rt.default.errors,0),r.unevaluated&&I2t(t),dAe(t),k2t(t)})}function I2t(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 nAe(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 C2t(t,e){if(uAe(t)&&(lAe(t),cAe(t))){T2t(t,e);return}(0,aAe.boolOrEmptySchema)(t,e)}function cAe({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 uAe(t){return typeof t.schema!="boolean"}function T2t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&fAe(t),N2t(t),O2t(t);let i=n.const("_errs",Rt.default.errors);dAe(t,i),n.var(e,(0,at._)`${i} === ${Rt.default.errors}`)}function lAe(t){(0,Ld.checkUnknownRules)(t),w2t(t)}function dAe(t,e){if(t.opts.jtd)return sAe(t,[],!1,e);let r=(0,rAe.getSchemaTypes)(t.schema),n=(0,rAe.coerceAndCheckDataType)(t,r);sAe(t,r,!n,e)}function w2t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ld.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function R2t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ld.checkStrictMode)(t,"default is ignored in the schema root")}function N2t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,b2t.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function O2t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function fAe({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 k2t(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&&P2t(t),e.return((0,at._)`${Rt.default.errors} === 0`))}function P2t({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 sAe(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,Ld.schemaHasRulesButRef)(i,l))){s.block(()=>mAe(t,"$ref",l.all.$ref.definition));return}c.jtd||D2t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,V$.shouldUseGroup)(i,f)&&(f.type?(s.if((0,EO.checkDataType)(f.type,a,c.strictNumbers)),iAe(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,EO.reportTypeError)(t)),s.endIf()):iAe(t,f),o||s.if((0,at._)`${Rt.default.errors} === ${n||0}`))}}function iAe(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,x2t.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,V$.shouldUseRule)(n,i)&&mAe(t,i.keyword,i.definition,e.type)})}function D2t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(B2t(t,e),t.opts.allowUnionTypes||L2t(t,e),M2t(t,t.dataTypes))}function B2t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{pAe(t.dataTypes,r)||K$(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),$2t(t,e)}}function L2t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&K$(t,"use allowUnionTypes to allow union type keyword")}function M2t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,V$.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>W2t(e,a))&&K$(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function W2t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function pAe(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function $2t(t,e){let r=[];for(let n of t.dataTypes)pAe(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function K$(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ld.checkStrictMode)(t,e,t.opts.strictTypes)}var vO=class{constructor(e,r,n){if((0,PE.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,Ld.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",hAe(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,PE.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?kE.reportExtraError:kE.reportError)(this,this.def.error,r)}$dataError(){(0,kE.reportError)(this,this.def.$dataError||kE.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,kE.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,EO.checkDataTypes)(c,r,i.opts.strictNumbers,EO.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,G$.getSubschema)(this.it,e);(0,G$.extendSubschemaData)(n,this.it,e),(0,G$.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return C2t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ld.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ld.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}};qp.KeywordCxt=vO;function mAe(t,e,r,n){let s=new vO(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,PE.funcKeywordCode)(s,r):"macro"in r?(0,PE.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,PE.funcKeywordCode)(s,r)}var U2t=/^\/(?:[^~]|~0|~1)*$/,F2t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function hAe(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Rt.default.rootData;if(t[0]==="/"){if(!U2t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Rt.default.rootData}else{let u=F2t.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,Ld.unescapeJsonPointer)(u))}`,a=(0,at._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}qp.getData=hAe});var SO=_(Y$=>{"use strict";Object.defineProperty(Y$,"__esModule",{value:!0});var z$=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Y$.default=z$});var BE=_(Z$=>{"use strict";Object.defineProperty(Z$,"__esModule",{value:!0});var J$=OE(),X$=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,J$.resolveUrl)(e,r,n),this.missingSchema=(0,J$.normalizeId)((0,J$.getFullPath)(e,this.missingRef))}};Z$.default=X$});var CO=_(ac=>{"use strict";Object.defineProperty(ac,"__esModule",{value:!0});ac.resolveSchema=ac.getCompilingSchema=ac.resolveRef=ac.compileSchema=ac.SchemaEnv=void 0;var tu=zt(),q2t=SO(),rh=Bd(),ru=OE(),gAe=Wr(),j2t=DE(),LA=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,ru.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ac.SchemaEnv=LA;function tU(t){let e=yAe.call(this,t);if(e)return e;let r=(0,ru.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new tu.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:q2t.default,code:(0,tu._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:rh.default.data,parentData:rh.default.parentData,parentDataProperty:rh.default.parentDataProperty,dataNames:[rh.default.data],dataPathArr:[tu.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,tu.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:tu.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,tu._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,j2t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(rh.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${rh.default.self}`,`${rh.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof tu.Name?void 0:p,items:h instanceof tu.Name?void 0:h,dynamicProps:p instanceof tu.Name,dynamicItems:h instanceof tu.Name},m.source&&(m.source.evaluated=(0,tu.stringify)(m.evaluated))}return t.validate=m,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)}}ac.compileSchema=tU;function Q2t(t,e,r){var n;r=(0,ru.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=V2t.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 LA({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=H2t.call(this,i)}ac.resolveRef=Q2t;function H2t(t){return(0,ru.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:tU.call(this,t)}function yAe(t){for(let e of this._compilations)if(G2t(e,t))return e}ac.getCompilingSchema=yAe;function G2t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function V2t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||IO.call(this,t,e)}function IO(t,e){let r=this.opts.uriResolver.parse(e),n=(0,ru._getFullPath)(this.opts.uriResolver,r),s=(0,ru.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return eU.call(this,r,t);let i=(0,ru.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=IO.call(this,t,a);return typeof o?.schema!="object"?void 0:eU.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||tU.call(this,a),i===(0,ru.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,ru.resolveUrl)(this.opts.uriResolver,s,u)),new LA({schema:o,schemaId:c,root:t,baseId:s})}return eU.call(this,r,a)}}ac.resolveSchema=IO;var K2t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function eU(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,gAe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!K2t.has(o)&&u&&(e=(0,ru.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,gAe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,ru.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=IO.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new LA({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var AAe=_((F8r,z2t)=>{z2t.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 nU=_((q8r,EAe)=>{"use strict";var Y2t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),bAe=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 rU(t){let e="",r=0,n=0;for(n=0;n<t.length;n++)if(r=t[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n<t.length;n++){if(r=t[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var J2t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function xAe(t){return t.length=0,!0}function X2t(t,e,r){if(t.length){let n=rU(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function Z2t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=X2t;for(let c=0;c<t.length;c++){let u=t[c];if(!(u==="["||u==="]"))if(u===":"){if(i===!0&&(a=!0),!o(s,n,r))break;if(++e>7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=xAe}else{s.push(u);continue}}return s.length&&(o===xAe?r.zone=s.join(""):a?n.push(s.join("")):n.push(rU(s))),r.address=n.join(""),r}function _Ae(t){if(eTt(t,":")<2)return{host:t,isIPV6:!1};let e=Z2t(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 eTt(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function tTt(t){let e=t,r=[],n=-1,s=0;for(;s=e.length;){if(s===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(s===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(s===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n)}return r.join("")}function rTt(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function nTt(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!bAe(r)){let n=_Ae(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}EAe.exports={nonSimpleDomain:J2t,recomposeAuthority:nTt,normalizeComponentEncoding:rTt,removeDotSegments:tTt,isIPv4:bAe,isUUID:Y2t,normalizeIPv6:_Ae,stringArrayToHexStripped:rU}});var TAe=_((j8r,CAe)=>{"use strict";var{isUUID:sTt}=nU(),iTt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,aTt=["http","https","ws","wss","urn","urn:uuid"];function oTt(t){return aTt.indexOf(t)!==-1}function sU(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 vAe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function SAe(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 cTt(t){return t.secure=sU(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function uTt(t){if((t.port===(sU(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 lTt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(iTt);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=iU(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function dTt(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=iU(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 fTt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!sTt(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function pTt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var IAe={scheme:"http",domainHost:!0,parse:vAe,serialize:SAe},mTt={scheme:"https",domainHost:IAe.domainHost,parse:vAe,serialize:SAe},TO={scheme:"ws",domainHost:!0,parse:cTt,serialize:uTt},hTt={scheme:"wss",domainHost:TO.domainHost,parse:TO.parse,serialize:TO.serialize},gTt={scheme:"urn",parse:lTt,serialize:dTt,skipNormalize:!0},yTt={scheme:"urn:uuid",parse:fTt,serialize:pTt,skipNormalize:!0},wO={http:IAe,https:mTt,ws:TO,wss:hTt,urn:gTt,"urn:uuid":yTt};Object.setPrototypeOf(wO,null);function iU(t){return t&&(wO[t]||wO[t.toLowerCase()])||void 0}CAe.exports={wsIsSecure:sU,SCHEMES:wO,isValidSchemeName:oTt,getSchemeHandler:iU}});var NAe=_((Q8r,NO)=>{"use strict";var{normalizeIPv6:ATt,removeDotSegments:LE,recomposeAuthority:xTt,normalizeComponentEncoding:RO,isIPv4:bTt,nonSimpleDomain:_Tt}=nU(),{SCHEMES:ETt,getSchemeHandler:wAe}=TAe();function vTt(t,e){return typeof t=="string"?t=rl(Md(t,e),e):typeof t=="object"&&(t=Md(rl(t,e),e)),t}function STt(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=RAe(Md(t,n),Md(e,n),n,!0);return n.skipEscape=!0,rl(s,n)}function RAe(t,e,r,n){let s={};return n||(t=Md(rl(t,r),r),e=Md(rl(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=LE(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=LE(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=LE(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=LE(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 ITt(t,e,r){return typeof t=="string"?(t=unescape(t),t=rl(RO(Md(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=rl(RO(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=rl(RO(Md(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=rl(RO(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function rl(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=wAe(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=xTt(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=LE(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 CTt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\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(CTt);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(bTt(n.host)===!1){let c=ATt(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=wAe(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&_Tt(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 aU={SCHEMES:ETt,normalize:vTt,resolve:STt,resolveComponent:RAe,equal:ITt,serialize:rl,parse:Md};NO.exports=aU;NO.exports.default=aU;NO.exports.fastUri=aU});var kAe=_(oU=>{"use strict";Object.defineProperty(oU,"__esModule",{value:!0});var OAe=NAe();OAe.code='require("ajv/dist/runtime/uri").default';oU.default=OAe});var UAe=_(yi=>{"use strict";Object.defineProperty(yi,"__esModule",{value:!0});yi.CodeGen=yi.Name=yi.nil=yi.stringify=yi.str=yi._=yi.KeywordCxt=void 0;var TTt=DE();Object.defineProperty(yi,"KeywordCxt",{enumerable:!0,get:function(){return TTt.KeywordCxt}});var MA=zt();Object.defineProperty(yi,"_",{enumerable:!0,get:function(){return MA._}});Object.defineProperty(yi,"str",{enumerable:!0,get:function(){return MA.str}});Object.defineProperty(yi,"stringify",{enumerable:!0,get:function(){return MA.stringify}});Object.defineProperty(yi,"nil",{enumerable:!0,get:function(){return MA.nil}});Object.defineProperty(yi,"Name",{enumerable:!0,get:function(){return MA.Name}});Object.defineProperty(yi,"CodeGen",{enumerable:!0,get:function(){return MA.CodeGen}});var wTt=SO(),MAe=BE(),RTt=M$(),ME=CO(),NTt=zt(),WE=OE(),OO=NE(),uU=Wr(),PAe=AAe(),OTt=kAe(),WAe=(t,e)=>new RegExp(t,e);WAe.code="new RegExp";var kTt=["removeAdditional","useDefaults","coerceTypes"],PTt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),DTt={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."},BTt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},DAe=200;function LTt(t){var e,r,n,s,i,a,o,c,u,l,d,f,m,p,h,y,g,A,b,x,S,T,I,R,N;let k=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,P=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:WAe,L=(s=t.uriResolver)!==null&&s!==void 0?s:OTt.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:k)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:k)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:k)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:k)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:k)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:M,regExp:P}:{optimize:M,regExp:P},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:DAe,loopEnum:(y=t.loopEnum)!==null&&y!==void 0?y:DAe,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(A=t.messages)!==null&&A!==void 0?A:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(S=t.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(T=t.validateSchema)!==null&&T!==void 0?T:!0,validateFormats:(I=t.validateFormats)!==null&&I!==void 0?I:!0,unicodeRegExp:(R=t.unicodeRegExp)!==null&&R!==void 0?R:!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,...LTt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new NTt.ValueScope({scope:{},prefixes:PTt,es5:r,lines:n}),this.logger=qTt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,RTt.getRules)(),BAe.call(this,DTt,e,"NOT SUPPORTED"),BAe.call(this,BTt,e,"DEPRECATED","warn"),this._metaOpts=UTt.call(this),e.formats&&WTt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&$Tt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),MTt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=PAe;n==="id"&&(s={...PAe},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 MAe.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,WE.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=LAe.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new ME.SchemaEnv({schema:{},schemaId:n});if(r=ME.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=LAe.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,WE.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(QTt.call(this,n,r),!r)return(0,uU.eachItem)(n,i=>cU.call(this,i)),this;GTt.call(this,r);let s={...r,type:(0,OO.getJSONTypes)(r.type),schemaType:(0,OO.getJSONTypes)(r.schemaType)};return(0,uU.eachItem)(n,s.type.length===0?i=>cU.call(this,i,s):i=>s.type.forEach(a=>cU.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]=$Ae(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,WE.normalizeId)(a||n);let u=WE.getSchemaRefs.call(this,e,n);return c=new ME.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):ME.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{ME.compileSchema.call(this,e)}finally{this.opts=r}}};$E.ValidationError=wTt.default;$E.MissingRefError=MAe.default;yi.default=$E;function BAe(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 LAe(t){return t=(0,WE.normalizeId)(t),this.schemas[t]||this.refs[t]}function MTt(){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 WTt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function $Tt(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 UTt(){let t={...this.opts};for(let e of kTt)delete t[e];return t}var FTt={log(){},warn(){},error(){}};function qTt(t){if(t===!1)return FTt;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 jTt=/^[a-z_$][a-z0-9_$:-]*$/i;function QTt(t,e){let{RULES:r}=this;if((0,uU.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!jTt.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 cU(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,OO.getJSONTypes)(e.type),schemaType:(0,OO.getJSONTypes)(e.schemaType)}};e.before?HTt.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 HTt(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 GTt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=$Ae(e)),t.validateSchema=this.compile(e,!0))}var VTt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function $Ae(t){return{anyOf:[t,VTt]}}});var FAe=_(lU=>{"use strict";Object.defineProperty(lU,"__esModule",{value:!0});var KTt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};lU.default=KTt});var HAe=_(nh=>{"use strict";Object.defineProperty(nh,"__esModule",{value:!0});nh.callRef=nh.getValidate=void 0;var zTt=BE(),qAe=sc(),Qa=zt(),WA=Bd(),jAe=CO(),kO=Wr(),YTt={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=jAe.resolveRef.call(c,u,s,r);if(l===void 0)throw new zTt.default(n.opts.uriResolver,s,r);if(l instanceof jAe.SchemaEnv)return f(l);return m(l);function d(){if(i===u)return PO(t,a,i,i.$async);let p=e.scopeValue("root",{ref:u});return PO(t,(0,Qa._)`${p}.validate`,u,u.$async)}function f(p){let h=QAe(t,p);PO(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",o.code.source===!0?{ref:p,code:(0,Qa.stringify)(p)}:{ref:p}),y=e.name("valid"),g=t.subschema({schema:p,dataTypes:[],schemaPath:Qa.nil,topSchemaRef:h,errSchemaPath:r},y);t.mergeEvaluated(g),t.ok(y)}}};function QAe(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Qa._)`${r.scopeValue("wrapper",{ref:e})}.validate`}nh.getValidate=QAe;function PO(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?WA.default.this:Qa.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let p=s.let("valid");s.try(()=>{s.code((0,Qa._)`await ${(0,qAe.callValidateCode)(t,e,u)}`),m(e),a||s.assign(p,!0)},h=>{s.if((0,Qa._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(p,!1)}),t.ok(p)}function d(){t.result((0,qAe.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,Qa._)`${p}.errors`;s.assign(WA.default.vErrors,(0,Qa._)`${WA.default.vErrors} === null ? ${h} : ${WA.default.vErrors}.concat(${h})`),s.assign(WA.default.errors,(0,Qa._)`${WA.default.vErrors}.length`)}function m(p){var h;if(!i.opts.unevaluated)return;let y=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(i.props=kO.mergeEvaluated.props(s,y.props,i.props));else{let g=s.var("props",(0,Qa._)`${p}.evaluated.props`);i.props=kO.mergeEvaluated.props(s,g,i.props,Qa.Name)}if(i.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(i.items=kO.mergeEvaluated.items(s,y.items,i.items));else{let g=s.var("items",(0,Qa._)`${p}.evaluated.items`);i.items=kO.mergeEvaluated.items(s,g,i.items,Qa.Name)}}}nh.callRef=PO;nh.default=YTt});var GAe=_(dU=>{"use strict";Object.defineProperty(dU,"__esModule",{value:!0});var JTt=FAe(),XTt=HAe(),ZTt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",JTt.default,XTt.default];dU.default=ZTt});var VAe=_(fU=>{"use strict";Object.defineProperty(fU,"__esModule",{value:!0});var DO=zt(),jp=DO.operators,BO={maximum:{okStr:"<=",ok:jp.LTE,fail:jp.GT},minimum:{okStr:">=",ok:jp.GTE,fail:jp.LT},exclusiveMaximum:{okStr:"<",ok:jp.LT,fail:jp.GTE},exclusiveMinimum:{okStr:">",ok:jp.GT,fail:jp.LTE}},ewt={message:({keyword:t,schemaCode:e})=>(0,DO.str)`must be ${BO[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,DO._)`{comparison: ${BO[t].okStr}, limit: ${e}}`},twt={keyword:Object.keys(BO),type:"number",schemaType:"number",$data:!0,error:ewt,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,DO._)`${r} ${BO[e].fail} ${n} || isNaN(${r})`)}};fU.default=twt});var KAe=_(pU=>{"use strict";Object.defineProperty(pU,"__esModule",{value:!0});var UE=zt(),rwt={message:({schemaCode:t})=>(0,UE.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,UE._)`{multipleOf: ${t}}`},nwt={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:rwt,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,UE._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,UE._)`${a} !== parseInt(${a})`;t.fail$data((0,UE._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};pU.default=nwt});var YAe=_(mU=>{"use strict";Object.defineProperty(mU,"__esModule",{value:!0});function zAe(t){let e=t.length,r=0,n=0,s;for(;n<e;)r++,s=t.charCodeAt(n++),s>=55296&&s<=56319&&n<e&&(s=t.charCodeAt(n),(s&64512)===56320&&n++);return r}mU.default=zAe;zAe.code='require("ajv/dist/runtime/ucs2length").default'});var JAe=_(hU=>{"use strict";Object.defineProperty(hU,"__esModule",{value:!0});var sh=zt(),swt=Wr(),iwt=YAe(),awt={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,sh.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,sh._)`{limit: ${t}}`},owt={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:awt,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?sh.operators.GT:sh.operators.LT,a=s.opts.unicode===!1?(0,sh._)`${r}.length`:(0,sh._)`${(0,swt.useFunc)(t.gen,iwt.default)}(${r})`;t.fail$data((0,sh._)`${a} ${i} ${n}`)}};hU.default=owt});var XAe=_(gU=>{"use strict";Object.defineProperty(gU,"__esModule",{value:!0});var cwt=sc(),LO=zt(),uwt={message:({schemaCode:t})=>(0,LO.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,LO._)`{pattern: ${t}}`},lwt={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:uwt,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,LO._)`(new RegExp(${s}, ${a}))`:(0,cwt.usePattern)(t,n);t.fail$data((0,LO._)`!${o}.test(${e})`)}};gU.default=lwt});var ZAe=_(yU=>{"use strict";Object.defineProperty(yU,"__esModule",{value:!0});var FE=zt(),dwt={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,FE.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,FE._)`{limit: ${t}}`},fwt={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:dwt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?FE.operators.GT:FE.operators.LT;t.fail$data((0,FE._)`Object.keys(${r}).length ${s} ${n}`)}};yU.default=fwt});var exe=_(AU=>{"use strict";Object.defineProperty(AU,"__esModule",{value:!0});var qE=sc(),jE=zt(),pwt=Wr(),mwt={message:({params:{missingProperty:t}})=>(0,jE.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,jE._)`{missingProperty: ${t}}`},hwt={keyword:"required",type:"object",schemaType:"array",$data:!0,error:mwt,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 m=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(m?.[h]===void 0&&!p.has(h)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${y}" (strictRequired)`;(0,pwt.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(jE.nil,d);else for(let m of r)(0,qE.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||i){let p=e.let("valid",!0);t.block$data(p,()=>f(m,p)),t.ok(p)}else e.if((0,qE.checkMissingProp)(t,r,m)),(0,qE.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,qE.noPropertyInData)(e,s,m,o.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,qE.propertyInData)(e,s,m,o.ownProperties)),e.if((0,jE.not)(p),()=>{t.error(),e.break()})},jE.nil)}}};AU.default=hwt});var txe=_(xU=>{"use strict";Object.defineProperty(xU,"__esModule",{value:!0});var QE=zt(),gwt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,QE.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,QE._)`{limit: ${t}}`},ywt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:gwt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?QE.operators.GT:QE.operators.LT;t.fail$data((0,QE._)`${r}.length ${s} ${n}`)}};xU.default=ywt});var HE=_(bU=>{"use strict";Object.defineProperty(bU,"__esModule",{value:!0});var rxe=ic();rxe.code='require("ajv/dist/runtime/equal").default';bU.default=rxe});var nxe=_(EU=>{"use strict";Object.defineProperty(EU,"__esModule",{value:!0});var _U=NE(),Ai=zt(),Awt=Wr(),xwt=HE(),bwt={message:({params:{i:t,j:e}})=>(0,Ai.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ai._)`{i: ${t}, j: ${e}}`},_wt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:bwt,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,_U.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,Ai._)`${a} === false`),t.ok(c);function l(){let p=e.let("i",(0,Ai._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,Ai._)`${p} > 1`,()=>(d()?f:m)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let y=e.name("item"),g=(0,_U.checkDataTypes)(u,y,o.opts.strictNumbers,_U.DataType.Wrong),A=e.const("indices",(0,Ai._)`{}`);e.for((0,Ai._)`;${p}--;`,()=>{e.let(y,(0,Ai._)`${r}[${p}]`),e.if(g,(0,Ai._)`continue`),u.length>1&&e.if((0,Ai._)`typeof ${y} == "string"`,(0,Ai._)`${y} += "_"`),e.if((0,Ai._)`typeof ${A}[${y}] == "number"`,()=>{e.assign(h,(0,Ai._)`${A}[${y}]`),t.error(),e.assign(c,!1).break()}).code((0,Ai._)`${A}[${y}] = ${p}`)})}function m(p,h){let y=(0,Awt.useFunc)(e,xwt.default),g=e.name("outer");e.label(g).for((0,Ai._)`;${p}--;`,()=>e.for((0,Ai._)`${h} = ${p}; ${h}--;`,()=>e.if((0,Ai._)`${y}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};EU.default=_wt});var sxe=_(SU=>{"use strict";Object.defineProperty(SU,"__esModule",{value:!0});var vU=zt(),Ewt=Wr(),vwt=HE(),Swt={message:"must be equal to constant",params:({schemaCode:t})=>(0,vU._)`{allowedValue: ${t}}`},Iwt={keyword:"const",$data:!0,error:Swt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,vU._)`!${(0,Ewt.useFunc)(e,vwt.default)}(${r}, ${s})`):t.fail((0,vU._)`${i} !== ${r}`)}};SU.default=Iwt});var ixe=_(IU=>{"use strict";Object.defineProperty(IU,"__esModule",{value:!0});var GE=zt(),Cwt=Wr(),Twt=HE(),wwt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,GE._)`{allowedValues: ${t}}`},Rwt={keyword:"enum",schemaType:"array",$data:!0,error:wwt,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,Cwt.useFunc)(e,Twt.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 m=e.const("vSchema",i);l=(0,GE.or)(...s.map((p,h)=>f(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,m=>e.if((0,GE._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=s[p];return typeof h=="object"&&h!==null?(0,GE._)`${u()}(${r}, ${m}[${p}])`:(0,GE._)`${r} === ${h}`}}};IU.default=Rwt});var axe=_(CU=>{"use strict";Object.defineProperty(CU,"__esModule",{value:!0});var Nwt=VAe(),Owt=KAe(),kwt=JAe(),Pwt=XAe(),Dwt=ZAe(),Bwt=exe(),Lwt=txe(),Mwt=nxe(),Wwt=sxe(),$wt=ixe(),Uwt=[Nwt.default,Owt.default,kwt.default,Pwt.default,Dwt.default,Bwt.default,Lwt.default,Mwt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Wwt.default,$wt.default];CU.default=Uwt});var wU=_(VE=>{"use strict";Object.defineProperty(VE,"__esModule",{value:!0});VE.validateAdditionalItems=void 0;var ih=zt(),TU=Wr(),Fwt={message:({params:{len:t}})=>(0,ih.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ih._)`{limit: ${t}}`},qwt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Fwt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,TU.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}oxe(t,n)}};function oxe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,ih._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,ih._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,TU.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,ih._)`${o} <= ${e.length}`);r.if((0,ih.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:TU.Type.Num},u),a.allErrors||r.if((0,ih.not)(u),()=>r.break())})}}VE.validateAdditionalItems=oxe;VE.default=qwt});var RU=_(KE=>{"use strict";Object.defineProperty(KE,"__esModule",{value:!0});KE.validateTuple=void 0;var cxe=zt(),MO=Wr(),jwt=sc(),Qwt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return uxe(t,"additionalItems",e);r.items=!0,!(0,MO.alwaysValidSchema)(r,e)&&t.ok((0,jwt.validateArray)(t))}};function uxe(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=MO.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,cxe._)`${i}.length`);r.forEach((d,f)=>{(0,MO.alwaysValidSchema)(o,d)||(n.if((0,cxe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:m}=o,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let y=`"${a}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,MO.checkStrictMode)(o,y,f.strictTuples)}}}KE.validateTuple=uxe;KE.default=Qwt});var lxe=_(NU=>{"use strict";Object.defineProperty(NU,"__esModule",{value:!0});var Hwt=RU(),Gwt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,Hwt.validateTuple)(t,"items")};NU.default=Gwt});var fxe=_(OU=>{"use strict";Object.defineProperty(OU,"__esModule",{value:!0});var dxe=zt(),Vwt=Wr(),Kwt=sc(),zwt=wU(),Ywt={message:({params:{len:t}})=>(0,dxe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,dxe._)`{limit: ${t}}`},Jwt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Ywt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,Vwt.alwaysValidSchema)(n,e)&&(s?(0,zwt.validateAdditionalItems)(t,s):t.ok((0,Kwt.validateArray)(t)))}};OU.default=Jwt});var pxe=_(kU=>{"use strict";Object.defineProperty(kU,"__esModule",{value:!0});var oc=zt(),WO=Wr(),Xwt={message:({params:{min:t,max:e}})=>e===void 0?(0,oc.str)`must contain at least ${t} valid item(s)`:(0,oc.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,oc._)`{minContains: ${t}}`:(0,oc._)`{minContains: ${t}, maxContains: ${e}}`},Zwt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Xwt,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,oc._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,WO.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,WO.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,WO.alwaysValidSchema)(i,r)){let h=(0,oc._)`${l} >= ${a}`;o!==void 0&&(h=(0,oc._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?m(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,oc._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),y=e.let("count",0);m(h,()=>e.if(h,()=>p(y)))}function m(h,y){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:WO.Type.Num,compositeRule:!0},h),y()})}function p(h){e.code((0,oc._)`${h}++`),o===void 0?e.if((0,oc._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,oc._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,oc._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};kU.default=Zwt});var gxe=_(nl=>{"use strict";Object.defineProperty(nl,"__esModule",{value:!0});nl.validateSchemaDeps=nl.validatePropertyDeps=nl.error=void 0;var PU=zt(),eRt=Wr(),zE=sc();nl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,PU.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,PU._)`{property: ${t},
missingProperty: ${n},
depsCount: ${e},
deps: ${r}}`};var tRt={keyword:"dependencies",type:"object",schemaType:"object",error:nl.error,code(t){let[e,r]=rRt(t);mxe(t,e),hxe(t,r)}};function rRt({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 mxe(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,zE.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,zE.checkReportMissingProp)(t,u)}):(r.if((0,PU._)`${c} && (${(0,zE.checkMissingProp)(t,o,i)})`),(0,zE.reportMissingProp)(t,i),r.else())}}nl.validatePropertyDeps=mxe;function hxe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,eRt.alwaysValidSchema)(i,e[o])||(r.if((0,zE.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))}nl.validateSchemaDeps=hxe;nl.default=tRt});var Axe=_(DU=>{"use strict";Object.defineProperty(DU,"__esModule",{value:!0});var yxe=zt(),nRt=Wr(),sRt={message:"property name must be valid",params:({params:t})=>(0,yxe._)`{propertyName: ${t.propertyName}}`},iRt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:sRt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,nRt.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,yxe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};DU.default=iRt});var LU=_(BU=>{"use strict";Object.defineProperty(BU,"__esModule",{value:!0});var $O=sc(),nu=zt(),aRt=Bd(),UO=Wr(),oRt={message:"must NOT have additional properties",params:({params:t})=>(0,nu._)`{additionalProperty: ${t.additionalProperty}}`},cRt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:oRt,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,UO.alwaysValidSchema)(a,r))return;let u=(0,$O.allSchemaProperties)(n.properties),l=(0,$O.allSchemaProperties)(n.patternProperties);d(),t.ok((0,nu._)`${i} === ${aRt.default.errors}`);function d(){e.forIn("key",s,y=>{!u.length&&!l.length?p(y):e.if(f(y),()=>p(y))})}function f(y){let g;if(u.length>8){let A=(0,UO.schemaRefOrVal)(a,n.properties,"properties");g=(0,$O.isOwnProperty)(e,A,y)}else u.length?g=(0,nu.or)(...u.map(A=>(0,nu._)`${y} === ${A}`)):g=nu.nil;return l.length&&(g=(0,nu.or)(g,...l.map(A=>(0,nu._)`${(0,$O.usePattern)(t,A)}.test(${y})`))),(0,nu.not)(g)}function m(y){e.code((0,nu._)`delete ${s}[${y}]`)}function p(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(y);return}if(r===!1){t.setParams({additionalProperty:y}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,UO.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(y,g,!1),e.if((0,nu.not)(g),()=>{t.reset(),m(y)})):(h(y,g),o||e.if((0,nu.not)(g),()=>e.break()))}}function h(y,g,A){let b={keyword:"additionalProperties",dataProp:y,dataPropType:UO.Type.Str};A===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,g)}}};BU.default=cRt});var _xe=_(WU=>{"use strict";Object.defineProperty(WU,"__esModule",{value:!0});var uRt=DE(),xxe=sc(),MU=Wr(),bxe=LU(),lRt={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&&bxe.default.code(new uRt.KeywordCxt(i,bxe.default,"additionalProperties"));let a=(0,xxe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=MU.mergeEvaluated.props(e,(0,MU.toHash)(a),i.props));let o=a.filter(d=>!(0,MU.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,xxe.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};WU.default=lRt});var Ixe=_($U=>{"use strict";Object.defineProperty($U,"__esModule",{value:!0});var Exe=sc(),FO=zt(),vxe=Wr(),Sxe=Wr(),dRt={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,Exe.allSchemaProperties)(r),c=o.filter(h=>(0,vxe.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 FO.Name)&&(i.props=(0,Sxe.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&m(h),i.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function m(h){for(let y in u)new RegExp(h).test(y)&&(0,vxe.checkStrictMode)(i,`property ${y} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,y=>{e.if((0,FO._)`${(0,Exe.usePattern)(t,h)}.test(${y})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:y,dataPropType:Sxe.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,FO._)`${d}[${y}]`,!0):!g&&!i.allErrors&&e.if((0,FO.not)(l),()=>e.break())})})}}};$U.default=dRt});var Cxe=_(UU=>{"use strict";Object.defineProperty(UU,"__esModule",{value:!0});var fRt=Wr(),pRt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,fRt.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"}};UU.default=pRt});var Txe=_(FU=>{"use strict";Object.defineProperty(FU,"__esModule",{value:!0});var mRt=sc(),hRt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:mRt.validateUnion,error:{message:"must match a schema in anyOf"}};FU.default=hRt});var wxe=_(qU=>{"use strict";Object.defineProperty(qU,"__esModule",{value:!0});var qO=zt(),gRt=Wr(),yRt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,qO._)`{passingSchemas: ${t.passing}}`},ARt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:yRt,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,gRt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,qO._)`${c} && ${a}`).assign(a,!1).assign(o,(0,qO._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,qO.Name)})})}}};qU.default=ARt});var Rxe=_(jU=>{"use strict";Object.defineProperty(jU,"__esModule",{value:!0});var xRt=Wr(),bRt={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,xRt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};jU.default=bRt});var kxe=_(QU=>{"use strict";Object.defineProperty(QU,"__esModule",{value:!0});var jO=zt(),Oxe=Wr(),_Rt={message:({params:t})=>(0,jO.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,jO._)`{failingKeyword: ${t.ifClause}}`},ERt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:_Rt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Oxe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Nxe(n,"then"),i=Nxe(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,jO.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,jO._)`${l}`):t.setParams({ifClause:l})}}}};function Nxe(t,e){let r=t.schema[e];return r!==void 0&&!(0,Oxe.alwaysValidSchema)(t,r)}QU.default=ERt});var Pxe=_(HU=>{"use strict";Object.defineProperty(HU,"__esModule",{value:!0});var vRt=Wr(),SRt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,vRt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};HU.default=SRt});var Dxe=_(GU=>{"use strict";Object.defineProperty(GU,"__esModule",{value:!0});var IRt=wU(),CRt=lxe(),TRt=RU(),wRt=fxe(),RRt=pxe(),NRt=gxe(),ORt=Axe(),kRt=LU(),PRt=_xe(),DRt=Ixe(),BRt=Cxe(),LRt=Txe(),MRt=wxe(),WRt=Rxe(),$Rt=kxe(),URt=Pxe();function FRt(t=!1){let e=[BRt.default,LRt.default,MRt.default,WRt.default,$Rt.default,URt.default,ORt.default,kRt.default,NRt.default,PRt.default,DRt.default];return t?e.push(CRt.default,wRt.default):e.push(IRt.default,TRt.default),e.push(RRt.default),e}GU.default=FRt});var Bxe=_(VU=>{"use strict";Object.defineProperty(VU,"__esModule",{value:!0});var fs=zt(),qRt={message:({schemaCode:t})=>(0,fs.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,fs._)`{format: ${t}}`},jRt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:qRt,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():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,fs._)`${p}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,fs._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(y,(0,fs._)`${h}.type || "string"`).assign(g,(0,fs._)`${h}.validate`),()=>r.assign(y,(0,fs._)`"string"`).assign(g,h)),t.fail$data((0,fs.or)(A(),b()));function A(){return c.strictSchema===!1?fs.nil:(0,fs._)`${a} && !${g}`}function b(){let x=l.$async?(0,fs._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,fs._)`${g}(${n})`,S=(0,fs._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,fs._)`${g} && ${g} !== true && ${y} === ${e} && !${S}`}}function m(){let p=d.formats[i];if(!p){A();return}if(p===!0)return;let[h,y,g]=b(p);h===e&&t.pass(x());function A(){if(c.strictSchema===!1){d.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function b(S){let T=S instanceof RegExp?(0,fs.regexpCode)(S):c.code.formats?(0,fs._)`${c.code.formats}${(0,fs.getProperty)(i)}`:void 0,I=r.scopeValue("formats",{key:i,ref:S,code:T});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,fs._)`${I}.validate`]:["string",S,I]}function x(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,fs._)`await ${g}(${n})`}return typeof y=="function"?(0,fs._)`${g}(${n})`:(0,fs._)`${g}.test(${n})`}}}};VU.default=jRt});var Lxe=_(KU=>{"use strict";Object.defineProperty(KU,"__esModule",{value:!0});var QRt=Bxe(),HRt=[QRt.default];KU.default=HRt});var Mxe=_($A=>{"use strict";Object.defineProperty($A,"__esModule",{value:!0});$A.contentVocabulary=$A.metadataVocabulary=void 0;$A.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];$A.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var $xe=_(zU=>{"use strict";Object.defineProperty(zU,"__esModule",{value:!0});var GRt=GAe(),VRt=axe(),KRt=Dxe(),zRt=Lxe(),Wxe=Mxe(),YRt=[GRt.default,VRt.default,(0,KRt.default)(),zRt.default,Wxe.metadataVocabulary,Wxe.contentVocabulary];zU.default=YRt});var Fxe=_(QO=>{"use strict";Object.defineProperty(QO,"__esModule",{value:!0});QO.DiscrError=void 0;var Uxe;(function(t){t.Tag="tag",t.Mapping="mapping"})(Uxe||(QO.DiscrError=Uxe={}))});var jxe=_(JU=>{"use strict";Object.defineProperty(JU,"__esModule",{value:!0});var UA=zt(),YU=Fxe(),qxe=CO(),JRt=BE(),XRt=Wr(),ZRt={message:({params:{discrError:t,tagName:e}})=>t===YU.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,UA._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},eNt={keyword:"discriminator",type:"object",schemaType:"object",error:ZRt,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,UA._)`${r}${(0,UA.getProperty)(o)}`);e.if((0,UA._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:YU.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,UA._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:YU.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,UA.Name),p}function f(){var m;let p={},h=g(s),y=!0;for(let x=0;x<a.length;x++){let S=a[x];if(S?.$ref&&!(0,XRt.schemaHasRulesButRef)(S,i.self.RULES)){let I=S.$ref;if(S=qxe.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,I),S instanceof qxe.SchemaEnv&&(S=S.schema),S===void 0)throw new JRt.default(i.opts.uriResolver,i.baseId,I)}let T=(m=S?.properties)===null||m===void 0?void 0:m[o];if(typeof T!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${o}"`);y=y&&(h||g(S)),A(T,x)}if(!y)throw new Error(`discriminator: "${o}" must be required`);return p;function g({required:x}){return Array.isArray(x)&&x.includes(o)}function A(x,S){if(x.const)b(x.const,S);else if(x.enum)for(let T of x.enum)b(T,S);else throw new Error(`discriminator: "properties/${o}" must have "const" or "enum"`)}function b(x,S){if(typeof x!="string"||x in p)throw new Error(`discriminator: "${o}" values must be unique strings`);p[x]=S}}}};JU.default=eNt});var Qxe=_((k$r,tNt)=>{tNt.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 ZU=_((Nn,XU)=>{"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 rNt=UAe(),nNt=$xe(),sNt=jxe(),Hxe=Qxe(),iNt=["/properties"],HO="http://json-schema.org/draft-07/schema",FA=class extends rNt.default{_addVocabularies(){super._addVocabularies(),nNt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(sNt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Hxe,iNt):Hxe;this.addMetaSchema(e,HO,!1),this.refs["http://json-schema.org/schema"]=HO}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(HO)?HO:void 0)}};Nn.Ajv=FA;XU.exports=Nn=FA;XU.exports.Ajv=FA;Object.defineProperty(Nn,"__esModule",{value:!0});Nn.default=FA;var aNt=DE();Object.defineProperty(Nn,"KeywordCxt",{enumerable:!0,get:function(){return aNt.KeywordCxt}});var qA=zt();Object.defineProperty(Nn,"_",{enumerable:!0,get:function(){return qA._}});Object.defineProperty(Nn,"str",{enumerable:!0,get:function(){return qA.str}});Object.defineProperty(Nn,"stringify",{enumerable:!0,get:function(){return qA.stringify}});Object.defineProperty(Nn,"nil",{enumerable:!0,get:function(){return qA.nil}});Object.defineProperty(Nn,"Name",{enumerable:!0,get:function(){return qA.Name}});Object.defineProperty(Nn,"CodeGen",{enumerable:!0,get:function(){return qA.CodeGen}});var oNt=SO();Object.defineProperty(Nn,"ValidationError",{enumerable:!0,get:function(){return oNt.default}});var cNt=BE();Object.defineProperty(Nn,"MissingRefError",{enumerable:!0,get:function(){return cNt.default}})});var Vxe=_((P$r,Gxe)=>{"use strict";var uNt={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};Gxe.exports={HEX:uNt}});var tbe=_((D$r,ebe)=>{"use strict";var{HEX:lNt}=Vxe();function Jxe(t){if(Zxe(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:fNt(r,"."),isIPV4:!0}:{host:t,isIPV4:!1}}function eF(t){let e="",r=!0;for(let n of t){if(n!=="0"&&r===!0&&(r=!1),lNt[n]===void 0)return;r||(e+=n)}return e}function dNt(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=eF(s.join(""));if(u!==void 0)n.push(u);else return r.error=!0,!1}s.length=0}return!0}for(let u=0;u<t.length;u++){let l=t[u];if(!(l==="["||l==="]"))if(l===":"){if(a===!0&&(o=!0),!c())break;if(e++,n.push(":"),e>7){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(eF(s.join("")))),r.address=n.join(""),r}function Xxe(t,e={}){if(Zxe(t,":")<2)return{host:t,isIPV6:!1};let r=dNt(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 fNt(t,e){let r="",n=!0,s=t.length;for(let i=0;i<s;i++){let a=t[i];a==="0"&&n?(i+1<=s&&t[i+1]===e||i+1===s)&&(r+=a,n=!1):(a===e?n=!0:n=!1,r+=a)}return r}function Zxe(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}var Kxe=/^\.\.?\//u,zxe=/^\/\.(?:\/|$)/u,Yxe=/^\/\.\.(?:\/|$)/u,pNt=/^\/?(?:.|\n)*?(?=\/|$)/u;function mNt(t){let e=[];for(;t.length;)if(t.match(Kxe))t=t.replace(Kxe,"");else if(t.match(zxe))t=t.replace(zxe,"/");else if(t.match(Yxe))t=t.replace(Yxe,"/"),e.pop();else if(t==="."||t==="..")t="";else{let r=t.match(pNt);if(r){let n=r[0];t=t.slice(n.length),e.push(n)}else throw new Error("Unexpected dot segment condition")}return e.join("")}function hNt(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function gNt(t,e){let r=[];if(t.userinfo!==void 0&&(r.push(t.userinfo),r.push("@")),t.host!==void 0){let n=unescape(t.host),s=Jxe(n);if(s.isIPV4)n=s.host;else{let i=Xxe(s.host,{isIPV4:!1});i.isIPV6===!0?n=`[${i.escapedHost}]`:n=t.host}r.push(n)}return(typeof t.port=="number"||typeof t.port=="string")&&(r.push(":"),r.push(String(t.port))),r.length?r.join(""):void 0}ebe.exports={recomposeAuthority:gNt,normalizeComponentEncoding:hNt,removeDotSegments:mNt,normalizeIPv4:Jxe,normalizeIPv6:Xxe,stringToHexStripped:eF}});var obe=_((B$r,abe)=>{"use strict";var yNt=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,ANt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function rbe(t){return typeof t.secure=="boolean"?t.secure:String(t.scheme).toLowerCase()==="wss"}function nbe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function sbe(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 xNt(t){return t.secure=rbe(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function bNt(t){if((t.port===(rbe(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 _Nt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(ANt);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=tF[s];t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function ENt(t,e){let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=tF[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 vNt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!yNt.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function SNt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var ibe={scheme:"http",domainHost:!0,parse:nbe,serialize:sbe},INt={scheme:"https",domainHost:ibe.domainHost,parse:nbe,serialize:sbe},GO={scheme:"ws",domainHost:!0,parse:xNt,serialize:bNt},CNt={scheme:"wss",domainHost:GO.domainHost,parse:GO.parse,serialize:GO.serialize},TNt={scheme:"urn",parse:_Nt,serialize:ENt,skipNormalize:!0},wNt={scheme:"urn:uuid",parse:vNt,serialize:SNt,skipNormalize:!0},tF={http:ibe,https:INt,ws:GO,wss:CNt,urn:TNt,"urn:uuid":wNt};abe.exports=tF});var nF=_((L$r,KO)=>{"use strict";var{normalizeIPv6:RNt,normalizeIPv4:NNt,removeDotSegments:YE,recomposeAuthority:ONt,normalizeComponentEncoding:VO}=tbe(),cbe=obe();function kNt(t,e){return typeof t=="string"?t=sl(Wd(t,e),e):typeof t=="object"&&(t=Wd(sl(t,e),e)),t}function PNt(t,e,r){let n=Object.assign({scheme:"null"},r),s=ube(Wd(t,n),Wd(e,n),n,!0);return sl(s,{...n,skipEscape:!0})}function ube(t,e,r,n){let s={};return n||(t=Wd(sl(t,r),r),e=Wd(sl(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=YE(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=YE(e.path||""),s.query=e.query):(e.path?(e.path.charAt(0)==="/"?s.path=YE(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=YE(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 DNt(t,e,r){return typeof t=="string"?(t=unescape(t),t=sl(VO(Wd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=sl(VO(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=sl(VO(Wd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=sl(VO(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function sl(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=cbe[(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=ONt(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=YE(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 BNt=Array.from({length:127},(t,e)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(e)));function LNt(t){let e=0;for(let r=0,n=t.length;r<n;++r)if(e=t.charCodeAt(r),e>126||BNt[e])return!0;return!1}var MNt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Wd(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(MNt);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=NNt(n.host);o.isIPV4===!1?n.host=RNt(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=cbe[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&LNt(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 rF={normalize:kNt,resolve:PNt,resolveComponents:ube,equal:DNt,serialize:sl,parse:Wd};KO.exports=rF;KO.exports.default=rF;KO.exports.fastUri=rF});var zO=_(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});al.formatNames=al.fastFormats=al.fullFormats=void 0;function il(t,e){return{validate:t,compare:e}}al.fullFormats={date:il(pbe,oF),time:il(iF(!0),cF),"date-time":il(lbe(!0),hbe),"iso-time":il(iF(),mbe),"iso-date-time":il(lbe(),gbe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:jNt,"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:YNt,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:QNt,int32:{type:"number",validate:VNt},int64:{type:"number",validate:KNt},float:{type:"number",validate:fbe},double:{type:"number",validate:fbe},password:!0,binary:!0};al.fastFormats={...al.fullFormats,date:il(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,oF),time:il(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,cF),"date-time":il(/^\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,hbe),"iso-time":il(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,mbe),"iso-date-time":il(/^\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,gbe),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};al.formatNames=Object.keys(al.fullFormats);function WNt(t){return t%4===0&&(t%100!==0||t%400===0)}var $Nt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,UNt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function pbe(t){let e=$Nt.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&&WNt(r)?29:UNt[n])}function oF(t,e){if(t&&e)return t>e?1:t<e?-1:0}var sF=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function iF(t){return function(r){let n=sF.exec(r);if(!n)return!1;let s=+n[1],i=+n[2],a=+n[3],o=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||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 cF(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 mbe(t,e){if(!(t&&e))return;let r=sF.exec(t),n=sF.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t<e?-1:0}var aF=/t|\s/i;function lbe(t){let e=iF(t);return function(n){let s=n.split(aF);return s.length===2&&pbe(s[0])&&e(s[1])}}function hbe(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function gbe(t,e){if(!(t&&e))return;let[r,n]=t.split(aF),[s,i]=e.split(aF),a=oF(r,s);if(a!==void 0)return a||cF(n,i)}var FNt=/\/|:/,qNt=/^(?:[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;function jNt(t){return FNt.test(t)&&qNt.test(t)}var dbe=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function QNt(t){return dbe.lastIndex=0,dbe.test(t)}var HNt=-(2**31),GNt=2**31-1;function VNt(t){return Number.isInteger(t)&&t<=GNt&&t>=HNt}function KNt(t){return Number.isInteger(t)}function fbe(){return!0}var zNt=/[^\\]\\Z/;function YNt(t){if(zNt.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var ybe=_(jA=>{"use strict";Object.defineProperty(jA,"__esModule",{value:!0});jA.formatLimitDefinition=void 0;var JNt=ZU(),su=zt(),Qp=su.operators,YO={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}},XNt={message:({keyword:t,schemaCode:e})=>(0,su.str)`should be ${YO[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,su._)`{comparison: ${YO[t].okStr}, limit: ${e}}`};jA.formatLimitDefinition={keyword:Object.keys(YO),type:"string",schemaType:"string",$data:!0,error:XNt,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 JNt.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}),m=e.const("fmt",(0,su._)`${f}[${c.schemaCode}]`);t.fail$data((0,su.or)((0,su._)`typeof ${m} != "object"`,(0,su._)`${m} instanceof RegExp`,(0,su._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=o.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:a.code.formats?(0,su._)`${a.code.formats}${(0,su.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,su._)`${f}.compare(${r}, ${n}) ${YO[s].fail} 0`}},dependencies:["format"]};var ZNt=t=>(t.addKeyword(jA.formatLimitDefinition),t);jA.default=ZNt});var _be=_((JE,bbe)=>{"use strict";Object.defineProperty(JE,"__esModule",{value:!0});var QA=zO(),eOt=ybe(),uF=zt(),Abe=new uF.Name("fullFormats"),tOt=new uF.Name("fastFormats"),lF=(t,e={keywords:!0})=>{if(Array.isArray(e))return xbe(t,e,QA.fullFormats,Abe),t;let[r,n]=e.mode==="fast"?[QA.fastFormats,tOt]:[QA.fullFormats,Abe],s=e.formats||QA.formatNames;return xbe(t,s,r,n),e.keywords&&(0,eOt.default)(t),t};lF.get=(t,e="full")=>{let n=(e==="fast"?QA.fastFormats:QA.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function xbe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=(0,uF._)`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}bbe.exports=JE=lF;Object.defineProperty(JE,"__esModule",{value:!0});JE.default=lF});var fF=_(($$r,Ebe)=>{"use strict";var rOt=ZU(),nOt=nF(),sOt=_be(),iOt=lO()({proto:!0}),dF=class t{constructor(e){this.ajv=new rOt({...e,strictSchema:!1,validateSchema:!1,allowUnionTypes:!0,uriResolver:nOt}),sOt(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=iOt(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}};Ebe.exports=dF});var mF=_((U$r,pF)=>{"use strict";function aOt(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
`;let{schema:i,...a}=r.getState();return`
'use strict'
const Serializer = require('fast-json-stringify/lib/serializer')
const serializerState = ${JSON.stringify(a)}
const serializer = Serializer.restoreFromState(serializerState)
${s}
module.exports = ${t.toString()}(validator, serializer)`}pF.exports=aOt;pF.exports.dependencies={Serializer:h$(),Validator:fF()}});var Sbe=_((q$r,vbe)=>{"use strict";var{dependencies:oOt}=mF(),{Serializer:cOt,Validator:F$r}=oOt,uOt={mode:"standalone"},lOt=cOt.restoreFromState(uOt),dOt=null;vbe.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}(dOt,lOt)});var XE=_((j$r,wbe)=>{"use strict";var Ibe=require("node:http").STATUS_CODES,fOt=f8(),{kReplyHeaders:ah,kReplyNextErrorHandler:JO,kReplyIsRunningOnErrorHook:pOt,kReplyHasStatusCode:mOt,kRouteContext:Tbe}=Ks(),{FST_ERR_REP_INVALID_PAYLOAD_TYPE:hOt,FST_ERR_FAILED_ERROR_SERIALIZATION:gOt}=Bi(),{getSchemaSerializer:yOt}=bE(),hF=Sbe(),AOt={func:bOt,toJSON(){return this.func.name.toString()+"()"}};function xOt(t,e,r){t[pOt]=!1;let n=t[Tbe];if(t[JO]===!1){Cbe(e,t,function(o,c){try{o.raw.writeHead(o.raw.statusCode,o[ah])}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[JO]||n.errorHandler;t[JO]=Object.getPrototypeOf(s),delete t[ah]["content-type"],delete t[ah]["content-length"];let i=s.func;if(!i){t[JO]=!1,Cbe(e,t,r);return}let a=i(e,t.request,t);a!==void 0&&(a!==null&&typeof a.then=="function"?fOt(a,t):t.send(a))}function bOt(t,e,r){if(EOt(t,r),!r[mOt]||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 Cbe(t,e,r){let n=e.raw,s=e.statusCode;e[ah]["content-type"]=e[ah]["content-type"]??"application/json; charset=utf-8";let i;try{let a=yOt(e[Tbe],s,e[ah]["content-type"]);i=a===!1?hF({error:Ibe[s+""],code:t.code,message:t.message,statusCode:s}):a(Object.create(t,{error:{value:Ibe[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=hF(new gOt(a.message,t.message))}typeof i!="string"&&!Buffer.isBuffer(i)&&(i=hF(new hOt(typeof i))),e[ah]["content-length"]=""+Buffer.byteLength(i),r(e,i)}function _Ot(t=AOt,e){if(!e)return t;let r=Object.create(t);return r.func=e,r}function EOt(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}wbe.exports={buildErrorHandler:_Ot,handleError:xOt}});var nk=_((Q$r,rk)=>{"use strict";var xF=require("node:stream").finished,vOt=require("node:stream").Readable,{kFourOhFourContext:Rbe,kPublicRouteContext:Nbe,kReplyErrorHandlerCalled:Wbe,kReplyHijacked:ZE,kReplyStartTime:ev,kReplyEndTime:_F,kReplySerializer:$d,kReplySerializerDefault:ZO,kReplyIsError:ek,kReplyHeaders:_n,kReplyTrailers:zs,kReplyHasStatusCode:EF,kReplyIsRunningOnErrorHook:vF,kReplyNextErrorHandler:SOt,kDisableRequestLogging:$be,kSchemaResponse:tk,kReplyCacheSerializeFns:Hp,kSchemaController:gF,kOptions:IOt,kRouteContext:or}=Ks(),{onSendHookRunner:Ube,onResponseHookRunner:COt,preHandlerHookRunner:TOt,preSerializationHookRunner:wOt}=kp(),Obe=g8()[Symbol.for("internals")],ROt=xE(),bF=ROt.now,{handleError:kbe}=XE(),{getSchemaSerializer:NOt}=bE(),yF={JSON:"application/json; charset=utf-8",PLAIN:"text/plain; charset=utf-8",OCTET:"application/octet-stream"},{FST_ERR_REP_INVALID_PAYLOAD_TYPE:OOt,FST_ERR_REP_RESPONSE_BODY_CONSUMED:kOt,FST_ERR_REP_ALREADY_SENT:Fbe,FST_ERR_REP_SENT_VALUE:POt,FST_ERR_SEND_INSIDE_ONERR:DOt,FST_ERR_BAD_STATUS_CODE:BOt,FST_ERR_BAD_TRAILER_NAME:LOt,FST_ERR_BAD_TRAILER_VALUE:MOt,FST_ERR_MISSING_SERIALIZATION_FN:WOt,FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:$Ot}=Bi(),{FSTDEP010:UOt,FSTDEP013:FOt,FSTDEP019:qOt,FSTDEP020:jOt}=Od(),qbe=Object.prototype.toString;function dn(t,e,r){this.raw=t,this[$d]=null,this[Wbe]=!1,this[ek]=!1,this[vF]=!1,this.request=e,this[_n]={},this[zs]=null,this[EF]=!1,this[ev]=void 0,this.log=r}dn.props=[];Object.defineProperties(dn.prototype,{[or]:{get(){return this.request[or]}},context:{get(){return qOt(),this.request[or]}},elapsedTime:{get(){return this[ev]===void 0?0:(this[_F]||bF())-this[ev]}},server:{get(){return this.request[or].server}},sent:{enumerable:!0,get(){return(this[ZE]||this.raw.writableEnded)===!0},set(t){if(UOt(),t!==!0)throw new POt;if(this.sent&&this[ZE])throw new Fbe(this.request.url,this.request.method);this[ZE]=!0}},statusCode:{get(){return this.raw.statusCode},set(t){this.code(t)}},[Nbe]:{get(){return this.request[Nbe]}}});dn.prototype.hijack=function(){return this[ZE]=!0,this};dn.prototype.send=function(t){if(this[vF]===!0)throw new DOt;if(this.sent)return this.log.warn({err:new Fbe(this.request.url,this.request.method)}),this;if(t instanceof Error||this[ek]===!0)return this[ek]=!1,tv(this,t,oh),this;if(t===void 0)return oh(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"||qbe.call(t)==="[object Response]")return oh(this,t),this;if(t?.buffer instanceof ArrayBuffer){r===!1&&(this[_n]["content-type"]=yF.OCTET);let n=Buffer.isBuffer(t)?t:Buffer.from(t.buffer,t.byteOffset,t.byteLength);return oh(this,n),this}if(r===!1&&typeof t=="string")return this[_n]["content-type"]=yF.PLAIN,oh(this,t),this}if(this[$d]!==null){if(typeof t!="string")return Pbe(this,t),this;t=this[$d](t)}else if(r===!1||e.indexOf("json")>-1){if(r===!1)this[_n]["content-type"]=yF.JSON;else if(e.indexOf("charset")===-1){let n=e.trim();n.endsWith(";")?this[_n]["content-type"]=`${n} charset=utf-8`:this[_n]["content-type"]=`${n}; charset=utf-8`}if(typeof t!="string")return Pbe(this,t),this}return oh(this,t),this};dn.prototype.getHeader=function(t){t=t.toLowerCase();let e=this.raw,r=this[_n][t];return r===void 0&&e.hasHeader(t)&&(r=e.getHeader(t)),r};dn.prototype.getHeaders=function(){return{...this.raw.getHeaders(),...this[_n]}};dn.prototype.hasHeader=function(t){return t=t.toLowerCase(),this[_n][t]!==void 0||this.raw.hasHeader(t)};dn.prototype.removeHeader=function(t){return delete this[_n][t.toLowerCase()],this};dn.prototype.header=function(t,e=""){return t=t.toLowerCase(),this[_n][t]&&t==="set-cookie"?(typeof this[_n][t]=="string"&&(this[_n][t]=[this[_n][t]]),Array.isArray(e)?Array.prototype.push.apply(this[_n][t],e):this[_n][t].push(e)):this[_n][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 QOt=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(),QOt.has(t))throw new LOt(t);if(typeof e!="function")throw new MOt(t,typeof e);return this[zs]===null&&(this[zs]={}),this[zs][t]=e,this};dn.prototype.hasTrailer=function(t){return this[zs]?.[t.toLowerCase()]!==void 0};dn.prototype.removeTrailer=function(t){return this[zs]===null?this:(this[zs][t.toLowerCase()]=void 0,this)};dn.prototype.code=function(t){let e=Number(t);if(isNaN(e)||e<100||e>599)throw new BOt(t||String(t));return this.raw.statusCode=e,this[EF]=!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[or][tk]?.[t]?.[e]:r=this[or][tk]?.[t]:typeof t=="object"&&(r=this[or][Hp]?.get(t)),r};dn.prototype.compileSerializationSchema=function(t,e=null,r=null){let{request:n}=this,{method:s,url:i}=n;if(this[or][Hp]?.has(t))return this[or][Hp].get(t);let o=(this[or].serializerCompiler||this.server[gF].serializerCompiler||this.server[gF].setupSerializer(this.server[IOt])||this.server[gF].serializerCompiler)({schema:t,method:s,url:i,httpStatus:e,contentType:r});return this[or][Hp]==null&&(this[or][Hp]=new WeakMap),this[or][Hp].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[or][tk]?.[r]?.[n]:i=this[or][tk]?.[r],i==null)throw n?new $Ot(r,n):new WOt(r)}else this[or][Hp]?.has(e)?i=this[or][Hp].get(e):i=this.compileSerializationSchema(e,r,n);return i(t)};dn.prototype.serialize=function(t){return this[$d]!==null?this[$d](t):this[or]&&this[or][ZO]?this[or][ZO](t,this.raw.statusCode):Hbe(this[or],t,this.raw.statusCode)};dn.prototype.serializer=function(t){return this[$d]=t,this};dn.prototype.type=function(t){return this[_n]["content-type"]=t,this};dn.prototype.redirect=function(t,e){return typeof t=="string"&&(e=t,t=this[EF]?this.raw.statusCode:302),this.header("location",e).code(t).send()};dn.prototype.callNotFound=function(){return YOt(this),this};dn.prototype.getResponseTime=function(){return jOt(),this.elapsedTime};dn.prototype.then=function(t,e){if(this.sent){t();return}xF(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 Pbe(t,e){t[or].preSerialization!==null?wOt(t[or].preSerialization,t.request,t,e,Dbe):Dbe(null,t.request,t,e)}function Dbe(t,e,r,n){if(t!=null){tv(r,t);return}try{r[$d]!==null?n=r[$d](n):r[or]&&r[or][ZO]?n=r[or][ZO](n,r.raw.statusCode):n=Hbe(r[or],n,r.raw.statusCode,r[_n]["content-type"])}catch(s){HOt(s,r),tv(r,s);return}oh(r,n)}function HOt(t,e){t.serialization=e[or].config}function oh(t,e){t[or].onSend!==null?Ube(t[or].onSend,t.request,t,e,GOt):jbe(t,e)}function GOt(t,e,r,n){t!=null?tv(r,t):jbe(r,n)}function AF(t,e){let r=t.raw;try{r.writeHead(e,t[_n])}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 jbe(t,e){let r=t.raw,n=t.request;if(t[zs]!==null){let a=Object.keys(t[zs]),o="";for(let c of a)typeof t[zs][c]=="function"&&(o+=" ",o+=c);t.header("Transfer-Encoding","chunked"),t.header("Trailer",o.trim())}let s=qbe.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[zs]===null&&(t[_n]["content-length"]="0"),AF(t,i),XO(e,r,t);return}if(i>=100&&i<200||i===204){t.removeHeader("content-type"),t.removeHeader("content-length"),AF(t,i),XO(void 0,r,t),typeof e.resume=="function"&&(e.on("error",Gbe),e.resume());return}if(typeof e.pipe=="function"){Qbe(e,r,t);return}if(typeof e.getReader=="function"){Lbe(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 kOt;Lbe(e.body,r,t)}return}if(typeof e!="string"&&!Buffer.isBuffer(e))throw new OOt(typeof e);if(t[zs]===null){let a=t[_n]["content-length"];(!a||n.raw.method!=="HEAD"&&Number(a)!==Buffer.byteLength(e))&&(t[_n]["content-length"]=""+Buffer.byteLength(e))}AF(t,i),r.write(e),XO(e,r,t)}function Bbe(t,e,r){e.code==="ERR_STREAM_PREMATURE_CLOSE"?t[$be]||t.info({res:r},"stream closed prematurely"):t.warn({err:e},"response terminated with an error with headers already sent")}function Lbe(t,e,r){let n=vOt.fromWeb(t);Qbe(n,e,r)}function Qbe(t,e,r){let n=!0,s=!1;if(VOt(t,e,r),xF(t,{readable:!0,writable:!1},function(i){n=!1,i!=null&&(e.headersSent||r.request.raw.aborted===!0?(s||(s=!0,Bbe(r.log,i,e)),e.destroy()):tv(r,i))}),xF(e,function(i){n&&(i!=null&&e.headersSent&&!s&&(s=!0,Bbe(r.log,i,e)),typeof t.destroy=="function"?t.destroy():typeof t.close=="function"?t.close(Gbe):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[_n])e.setHeader(i,r[_n][i]);t.pipe(e)}function XO(t,e,r){if(r[zs]===null){e.end(null,null,null);return}let n=Object.keys(r[zs]),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[zs][c]!="function")continue;a=!1,i--;let l=r[zs][c](r,t,u);typeof l=="object"&&typeof l.then=="function"?l.then(d=>u(null,d),u):l!=null&&(FOt(),u(null,l))}a&&e.end(null,null,null)}function VOt(t,e,r){r[zs]!==null&&t.on("end",()=>XO(null,e,r))}function tv(t,e,r){t[or].onError!==null&&!t[SOt]?(t[vF]=!0,Ube(t[or].onError,t.request,t,e,()=>kbe(t,e,r))):kbe(t,e,r)}function KOt(t){t[ev]=bF();let e=r=>{t[_F]=bF(),t.raw.removeListener("finish",e),t.raw.removeListener("error",e);let n=t[or];n&&n.onResponse!==null?COt(n.onResponse,t.request,t,Mbe):Mbe(r,t.request,t)};t.raw.on("finish",e),t.raw.on("error",e)}function Mbe(t,e,r){if(r.log[$be])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 zOt(t){let e=t.props.slice();function r(n,s,i){this.raw=n,this[ek]=!1,this[Wbe]=!1,this[ZE]=!1,this[$d]=null,this.request=s,this[_n]={},this[zs]=null,this[ev]=void 0,this[_F]=void 0,this.log=i;for(var a,o=0;o<e.length;o++)a=e[o],this[a.key]=a.value}return Object.setPrototypeOf(r.prototype,t.prototype),Object.setPrototypeOf(r,t),r.parent=t,r.props=e,r}function YOt(t){if(t[or][Rbe]===null){t.log.warn("Trying to send a NotFound error inside a 404 handler. Sending basic 404 response."),t.code(404).send("404 Not Found");return}t.request[or]=t[or][Rbe],t[or].preHandler!==null?TOt(t[or].preHandler,t.request,t,Obe.preHandlerCallback):Obe.preHandlerCallback(null,t.request,t)}function Hbe(t,e,r,n){let s=NOt(t,r,n);return s?s(e):JSON.stringify(e)}function Gbe(){}rk.exports=dn;rk.exports.buildReply=zOt;rk.exports.setupResponseListeners=KOt});var Kbe=_((H$r,Vbe)=>{"use strict";Vbe.exports=JOt;function JOt(t){if(!t)throw new TypeError("argument req is required");var e=ZOt(t.headers["x-forwarded-for"]||""),r=XOt(t),n=[r].concat(e);return n}function XOt(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function ZOt(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 Ybe=_((zbe,rv)=>{(function(){var t,e,r,n,s,i,a,o,c;e={},o=this,typeof rv<"u"&&rv!==null&&rv.exports?rv.exports=e:o.ipaddr=e,a=function(u,l,d,f){var m,p;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(m=0;f>0;){if(p=d-f,p<0&&(p=0),u[m]>>p!==l[m]>>p)return!1;f-=d,m+=1}return!0},e.subnetMatch=function(u,l,d){var f,m,p,h,y;d==null&&(d="unicast");for(p in l)for(h=l[p],h[0]&&!(h[0]instanceof Array)&&(h=[h]),f=0,m=h.length;f<m;f++)if(y=h[f],u.kind()===y[0].kind()&&u.match.apply(u,y))return p;return d},e.IPv4=function(){function u(l){var d,f,m;if(l.length!==4)throw new Error("ipaddr: ipv4 octet count should be 4");for(d=0,f=l.length;d<f;d++)if(m=l[d],!(0<=m&&m<=255))throw new Error("ipaddr: ipv4 octet should fit in 8 bits");this.octets=l}return u.prototype.kind=function(){return"ipv4"},u.prototype.toString=function(){return this.octets.join(".")},u.prototype.toNormalizedString=function(){return this.toString()},u.prototype.toByteArray=function(){return this.octets.slice(0)},u.prototype.match=function(l,d){var f;if(d===void 0&&(f=l,l=f[0],d=f[1]),l.kind()!=="ipv4")throw new Error("ipaddr: cannot match ipv4 address with non-ipv4 one");return a(this.octets,l.octets,8,d)},u.prototype.SpecialRanges={unspecified:[[new u([0,0,0,0]),8]],broadcast:[[new u([255,255,255,255]),32]],multicast:[[new u([224,0,0,0]),4]],linkLocal:[[new u([169,254,0,0]),16]],loopback:[[new u([127,0,0,0]),8]],carrierGradeNat:[[new u([100,64,0,0]),10]],private:[[new u([10,0,0,0]),8],[new u([172,16,0,0]),12],[new u([192,168,0,0]),16]],reserved:[[new u([192,0,0,0]),24],[new u([192,0,2,0]),24],[new u([192,88,99,0]),24],[new u([198,51,100,0]),24],[new u([203,0,113,0]),24],[new u([240,0,0,0]),4]]},u.prototype.range=function(){return e.subnetMatch(this,this.SpecialRanges)},u.prototype.toIPv4MappedAddress=function(){return e.IPv6.parse("::ffff:"+this.toString())},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,f,m,p,h,y;for(y={0:8,128:7,192:6,224:5,240:4,248:3,252:2,254:1,255:0},l=0,p=!1,d=f=3;f>=0;d=f+=-1)if(m=this.octets[d],m in y){if(h=y[m],p&&h!==0)return null;h!==8&&(p=!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,m,p;if(d=function(h){return h[0]==="0"&&h[1]!=="x"?parseInt(h,8):parseInt(h)},l=u.match(n.fourOctet))return function(){var h,y,g,A;for(g=l.slice(1,6),A=[],h=0,y=g.length;h<y;h++)f=g[h],A.push(d(f));return A}();if(l=u.match(n.longValue)){if(p=d(l[1]),p>4294967295||p<0)throw new Error("ipaddr: address outside defined range");return function(){var h,y;for(y=[],m=h=0;h<=24;m=h+=8)y.push(p>>m&255);return y}().reverse()}else return null},e.IPv6=function(){function u(l,d){var f,m,p,h,y,g;if(l.length===16)for(this.parts=[],f=m=0;m<=14;f=m+=2)this.parts.push(l[f]<<8|l[f+1]);else if(l.length===8)this.parts=l;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(g=this.parts,p=0,h=g.length;p<h;p++)if(y=g[p],!(0<=y&&y<=65535))throw new Error("ipaddr: ipv6 part should fit in 16 bits");d&&(this.zoneId=d)}return u.prototype.kind=function(){return"ipv6"},u.prototype.toString=function(){return this.toNormalizedString().replace(/((^|:)(0(:|$))+)/,"::")},u.prototype.toRFC5952String=function(){var l,d,f,m,p;for(m=/((^|:)(0(:|$)){2,})/g,p=this.toNormalizedString(),l=0,d=-1;f=m.exec(p);)f[0].length>d&&(l=f.index,d=f[0].length);return d<0?p:p.substring(0,l)+"::"+p.substring(l+d)},u.prototype.toByteArray=function(){var l,d,f,m,p;for(l=[],p=this.parts,d=0,f=p.length;d<f;d++)m=p[d],l.push(m>>8),l.push(m&255);return l},u.prototype.toNormalizedString=function(){var l,d,f;return l=function(){var m,p,h,y;for(h=this.parts,y=[],m=0,p=h.length;m<p;m++)d=h[m],y.push(d.toString(16));return y}.call(this).join(":"),f="",this.zoneId&&(f="%"+this.zoneId),l+f},u.prototype.toFixedLengthString=function(){var l,d,f;return l=function(){var m,p,h,y;for(h=this.parts,y=[],m=0,p=h.length;m<p;m++)d=h[m],y.push(d.toString(16).padStart(4,"0"));return y}.call(this).join(":"),f="",this.zoneId&&(f="%"+this.zoneId),l+f},u.prototype.match=function(l,d){var f;if(d===void 0&&(f=l,l=f[0],d=f[1]),l.kind()!=="ipv6")throw new Error("ipaddr: cannot match ipv6 address with non-ipv6 one");return a(this.parts,l.parts,16,d)},u.prototype.SpecialRanges={unspecified:[new u([0,0,0,0,0,0,0,0]),128],linkLocal:[new u([65152,0,0,0,0,0,0,0]),10],multicast:[new u([65280,0,0,0,0,0,0,0]),8],loopback:[new u([0,0,0,0,0,0,0,1]),128],uniqueLocal:[new u([64512,0,0,0,0,0,0,0]),7],ipv4Mapped:[new u([0,0,0,0,0,65535,0,0]),96],rfc6145:[new u([0,0,0,0,65535,0,0,0]),96],rfc6052:[new u([100,65435,0,0,0,0,0,0]),96],"6to4":[new u([8194,0,0,0,0,0,0,0]),16],teredo:[new u([8193,0,0,0,0,0,0,0]),32],reserved:[[new u([8193,3512,0,0,0,0,0,0]),32]]},u.prototype.range=function(){return e.subnetMatch(this,this.SpecialRanges)},u.prototype.isIPv4MappedAddress=function(){return this.range()==="ipv4Mapped"},u.prototype.toIPv4Address=function(){var l,d,f;if(!this.isIPv4MappedAddress())throw new Error("ipaddr: trying to convert a generic ipv6 address to ipv4");return f=this.parts.slice(-2),l=f[0],d=f[1],new e.IPv4([l>>8,l&255,d>>8,d&255])},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,f,m,p,h,y;for(y={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},l=0,p=!1,d=f=7;f>=0;d=f+=-1)if(m=this.parts[d],m in y){if(h=y[m],p&&h!==0)return null;h!==16&&(p=!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,m,p,h,y;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(y=(u.match(i.zoneIndex)||[])[0],y&&(y=y.substring(1),u=u.replace(/%.+$/,"")),d=0,f=-1;(f=u.indexOf(":",f+1))>=0;)d++;if(u.substr(0,2)==="::"&&d--,u.substr(-2,2)==="::"&&d--,d>l)return null;for(h=l-d,p=":";h--;)p+="0:";return u=u.replace("::",p),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=function(){var g,A,b,x;for(b=u.split(":"),x=[],g=0,A=b.length;g<A;g++)m=b[g],x.push(parseInt(m,16));return x}(),{parts:l,zoneId:y}},e.IPv6.parser=function(u){var l,d,f,m,p,h,y;if(i.native.test(u))return t(u,8);if((m=u.match(i.transitional))&&(y=m[6]||"",l=t(m[1].slice(0,-1)+y,6),l.parts)){for(h=[parseInt(m[2]),parseInt(m[3]),parseInt(m[4]),parseInt(m[5])],d=0,f=h.length;d<f;d++)if(p=h[d],!(0<=p&&p<=255))return null;return l.parts.push(h[0]<<8|h[1]),l.parts.push(h[2]<<8|h[3]),{parts:l.parts,zoneId:l.zoneId}}return null},e.IPv4.isIPv4=e.IPv6.isIPv6=function(u){return this.parser(u)!==null},e.IPv4.isValid=function(u){var l;try{return new this(this.parser(u)),!0}catch(d){return l=d,!1}},e.IPv4.isValidFourPartDecimal=function(u){return!!(e.IPv4.isValid(u)&&u.match(/^(0|[1-9]\d*)(\.(0|[1-9]\d*)){3}$/))},e.IPv6.isValid=function(u){var l,d;if(typeof u=="string"&&u.indexOf(":")===-1)return!1;try{return l=this.parser(u),new this(l.parts,l.zoneId),!0}catch(f){return d=f,!1}},e.IPv4.parse=function(u){var l;if(l=this.parser(u),l===null)throw new Error("ipaddr: string is not formatted like ip address");return new this(l)},e.IPv6.parse=function(u){var l;if(l=this.parser(u),l.parts===null)throw new Error("ipaddr: string is not formatted like ip address");return new this(l.parts,l.zoneId)},e.IPv4.parseCIDR=function(u){var l,d,f;if((d=u.match(/^(.+)\/(\d+)$/))&&(l=parseInt(d[2]),l>=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<l;)f[d]=255,d++;return l<4&&(f[l]=Math.pow(2,u%8)-1<<8-u%8),new this(f)},e.IPv4.broadcastAddressFromCIDR=function(u){var l,d,f,m,p,h;try{for(l=this.parseCIDR(u),m=l[0].toByteArray(),h=this.subnetMaskFromPrefixLength(l[1]).toByteArray(),p=[],f=0;f<4;)p.push(parseInt(m[f],10)|parseInt(h[f],10)^255),f++;return new this(p)}catch(y){throw d=y,new Error("ipaddr: the address does not have IPv4 CIDR format")}},e.IPv4.networkAddressFromCIDR=function(u){var l,d,f,m,p,h;try{for(l=this.parseCIDR(u),m=l[0].toByteArray(),h=this.subnetMaskFromPrefixLength(l[1]).toByteArray(),p=[],f=0;f<4;)p.push(parseInt(m[f],10)&parseInt(h[f],10)),f++;return new this(p)}catch(y){throw d=y,new Error("ipaddr: the address does not have IPv4 CIDR format")}},e.IPv6.parseCIDR=function(u){var l,d,f;if((d=u.match(/^(.+)\/(\d+)$/))&&(l=parseInt(d[2]),l>=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(zbe)});var t1e=_((G$r,ak)=>{"use strict";ak.exports=akt;ak.exports.all=Zbe;ak.exports.compile=e1e;var ekt=Kbe(),Xbe=Ybe(),tkt=/^[0-9]+$/,sk=Xbe.isValid,ik=Xbe.parse,Jbe={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 Zbe(t,e){var r=ekt(t);if(!e)return r;typeof e!="function"&&(e=e1e(e));for(var n=0;n<r.length-1;n++)e(r[n],n)||(r.length=n+1);return r}function e1e(t){if(!t)throw new TypeError("argument is required");var e;if(typeof t=="string")e=[t];else if(Array.isArray(t))e=t.slice();else throw new TypeError("unsupported trust argument");for(var r=0;r<e.length;r++)t=e[r],Object.prototype.hasOwnProperty.call(Jbe,t)&&(t=Jbe[t],e.splice.apply(e,[r,1].concat(t)),r+=t.length-1);return nkt(rkt(e))}function rkt(t){for(var e=new Array(t.length),r=0;r<t.length;r++)e[r]=skt(t[r]);return e}function nkt(t){var e=t.length;return e===0?okt:e===1?ukt(t[0]):ckt(t)}function skt(t){var e=t.lastIndexOf("/"),r=e!==-1?t.substring(0,e):t;if(!sk(r))throw new TypeError("invalid IP address: "+r);var n=ik(r);e===-1&&n.kind()==="ipv6"&&n.isIPv4MappedAddress()&&(n=n.toIPv4Address());var s=n.kind()==="ipv6"?128:32,i=e!==-1?t.substring(e+1,t.length):null;if(i===null?i=s:tkt.test(i)?i=parseInt(i,10):n.kind()==="ipv4"&&sk(i)?i=ikt(i):i=null,i<=0||i>s)throw new TypeError("invalid range on address: "+t);return[n,i]}function ikt(t){var e=ik(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function akt(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=Zbe(t,e),n=r[r.length-1];return n}function okt(){return!1}function ckt(t){return function(r){if(!sk(r))return!1;for(var n=ik(r),s,i=n.kind(),a=0;a<t.length;a++){var o=t[a],c=o[0],u=c.kind(),l=o[1],d=n;if(i!==u){if(u==="ipv4"&&!n.isIPv4MappedAddress())continue;s||(s=u==="ipv4"?n.toIPv4Address():n.toIPv4MappedAddress()),d=s}if(d.match(c,l))return!0}return!1}}function ukt(t){var e=t[0],r=e.kind(),n=r==="ipv4",s=t[1];return function(a){if(!sk(a))return!1;var o=ik(a),c=o.kind();if(c!==r){if(n&&!o.isIPv4MappedAddress())return!1;o=n?o.toIPv4Address():o.toIPv4MappedAddress()}return o.match(e,s)}}});var nv=_((V$r,r1e)=>{"use strict";var lkt="2.0.0",dkt=Number.MAX_SAFE_INTEGER||9007199254740991,fkt=16,pkt=250,mkt=["major","premajor","minor","preminor","patch","prepatch","prerelease"];r1e.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:fkt,MAX_SAFE_BUILD_LENGTH:pkt,MAX_SAFE_INTEGER:dkt,RELEASE_TYPES:mkt,SEMVER_SPEC_VERSION:lkt,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var sv=_((K$r,n1e)=>{"use strict";var hkt=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};n1e.exports=hkt});var HA=_((ol,s1e)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:SF,MAX_SAFE_BUILD_LENGTH:gkt,MAX_LENGTH:ykt}=nv(),Akt=sv();ol=s1e.exports={};var xkt=ol.re=[],bkt=ol.safeRe=[],Ve=ol.src=[],_kt=ol.safeSrc=[],Ke=ol.t={},Ekt=0,IF="[a-zA-Z0-9-]",vkt=[["\\s",1],["\\d",ykt],[IF,gkt]],Skt=t=>{for(let[e,r]of vkt)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},Wt=(t,e,r)=>{let n=Skt(e),s=Ekt++;Akt(t,s,e),Ke[t]=s,Ve[s]=e,_kt[s]=n,xkt[s]=new RegExp(e,r?"g":void 0),bkt[s]=new RegExp(n,r?"g":void 0)};Wt("NUMERICIDENTIFIER","0|[1-9]\\d*");Wt("NUMERICIDENTIFIERLOOSE","\\d+");Wt("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${IF}*`);Wt("MAINVERSION",`(${Ve[Ke.NUMERICIDENTIFIER]})\\.(${Ve[Ke.NUMERICIDENTIFIER]})\\.(${Ve[Ke.NUMERICIDENTIFIER]})`);Wt("MAINVERSIONLOOSE",`(${Ve[Ke.NUMERICIDENTIFIERLOOSE]})\\.(${Ve[Ke.NUMERICIDENTIFIERLOOSE]})\\.(${Ve[Ke.NUMERICIDENTIFIERLOOSE]})`);Wt("PRERELEASEIDENTIFIER",`(?:${Ve[Ke.NONNUMERICIDENTIFIER]}|${Ve[Ke.NUMERICIDENTIFIER]})`);Wt("PRERELEASEIDENTIFIERLOOSE",`(?:${Ve[Ke.NONNUMERICIDENTIFIER]}|${Ve[Ke.NUMERICIDENTIFIERLOOSE]})`);Wt("PRERELEASE",`(?:-(${Ve[Ke.PRERELEASEIDENTIFIER]}(?:\\.${Ve[Ke.PRERELEASEIDENTIFIER]})*))`);Wt("PRERELEASELOOSE",`(?:-?(${Ve[Ke.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${Ve[Ke.PRERELEASEIDENTIFIERLOOSE]})*))`);Wt("BUILDIDENTIFIER",`${IF}+`);Wt("BUILD",`(?:\\+(${Ve[Ke.BUILDIDENTIFIER]}(?:\\.${Ve[Ke.BUILDIDENTIFIER]})*))`);Wt("FULLPLAIN",`v?${Ve[Ke.MAINVERSION]}${Ve[Ke.PRERELEASE]}?${Ve[Ke.BUILD]}?`);Wt("FULL",`^${Ve[Ke.FULLPLAIN]}$`);Wt("LOOSEPLAIN",`[v=\\s]*${Ve[Ke.MAINVERSIONLOOSE]}${Ve[Ke.PRERELEASELOOSE]}?${Ve[Ke.BUILD]}?`);Wt("LOOSE",`^${Ve[Ke.LOOSEPLAIN]}$`);Wt("GTLT","((?:<|>)?=?)");Wt("XRANGEIDENTIFIERLOOSE",`${Ve[Ke.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Wt("XRANGEIDENTIFIER",`${Ve[Ke.NUMERICIDENTIFIER]}|x|X|\\*`);Wt("XRANGEPLAIN",`[v=\\s]*(${Ve[Ke.XRANGEIDENTIFIER]})(?:\\.(${Ve[Ke.XRANGEIDENTIFIER]})(?:\\.(${Ve[Ke.XRANGEIDENTIFIER]})(?:${Ve[Ke.PRERELEASE]})?${Ve[Ke.BUILD]}?)?)?`);Wt("XRANGEPLAINLOOSE",`[v=\\s]*(${Ve[Ke.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ve[Ke.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ve[Ke.XRANGEIDENTIFIERLOOSE]})(?:${Ve[Ke.PRERELEASELOOSE]})?${Ve[Ke.BUILD]}?)?)?`);Wt("XRANGE",`^${Ve[Ke.GTLT]}\\s*${Ve[Ke.XRANGEPLAIN]}$`);Wt("XRANGELOOSE",`^${Ve[Ke.GTLT]}\\s*${Ve[Ke.XRANGEPLAINLOOSE]}$`);Wt("COERCEPLAIN",`(^|[^\\d])(\\d{1,${SF}})(?:\\.(\\d{1,${SF}}))?(?:\\.(\\d{1,${SF}}))?`);Wt("COERCE",`${Ve[Ke.COERCEPLAIN]}(?:$|[^\\d])`);Wt("COERCEFULL",Ve[Ke.COERCEPLAIN]+`(?:${Ve[Ke.PRERELEASE]})?(?:${Ve[Ke.BUILD]})?(?:$|[^\\d])`);Wt("COERCERTL",Ve[Ke.COERCE],!0);Wt("COERCERTLFULL",Ve[Ke.COERCEFULL],!0);Wt("LONETILDE","(?:~>?)");Wt("TILDETRIM",`(\\s*)${Ve[Ke.LONETILDE]}\\s+`,!0);ol.tildeTrimReplace="$1~";Wt("TILDE",`^${Ve[Ke.LONETILDE]}${Ve[Ke.XRANGEPLAIN]}$`);Wt("TILDELOOSE",`^${Ve[Ke.LONETILDE]}${Ve[Ke.XRANGEPLAINLOOSE]}$`);Wt("LONECARET","(?:\\^)");Wt("CARETTRIM",`(\\s*)${Ve[Ke.LONECARET]}\\s+`,!0);ol.caretTrimReplace="$1^";Wt("CARET",`^${Ve[Ke.LONECARET]}${Ve[Ke.XRANGEPLAIN]}$`);Wt("CARETLOOSE",`^${Ve[Ke.LONECARET]}${Ve[Ke.XRANGEPLAINLOOSE]}$`);Wt("COMPARATORLOOSE",`^${Ve[Ke.GTLT]}\\s*(${Ve[Ke.LOOSEPLAIN]})$|^$`);Wt("COMPARATOR",`^${Ve[Ke.GTLT]}\\s*(${Ve[Ke.FULLPLAIN]})$|^$`);Wt("COMPARATORTRIM",`(\\s*)${Ve[Ke.GTLT]}\\s*(${Ve[Ke.LOOSEPLAIN]}|${Ve[Ke.XRANGEPLAIN]})`,!0);ol.comparatorTrimReplace="$1$2$3";Wt("HYPHENRANGE",`^\\s*(${Ve[Ke.XRANGEPLAIN]})\\s+-\\s+(${Ve[Ke.XRANGEPLAIN]})\\s*$`);Wt("HYPHENRANGELOOSE",`^\\s*(${Ve[Ke.XRANGEPLAINLOOSE]})\\s+-\\s+(${Ve[Ke.XRANGEPLAINLOOSE]})\\s*$`);Wt("STAR","(<|>)?=?\\s*\\*");Wt("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Wt("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var ok=_((z$r,i1e)=>{"use strict";var Ikt=Object.freeze({loose:!0}),Ckt=Object.freeze({}),Tkt=t=>t?typeof t!="object"?Ikt:t:Ckt;i1e.exports=Tkt});var CF=_((Y$r,c1e)=>{"use strict";var a1e=/^[0-9]+$/,o1e=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:t<e?-1:1;let r=a1e.test(t),n=a1e.test(e);return r&&n&&(t=+t,e=+e),t===e?0:r&&!n?-1:n&&!r?1:t<e?-1:1},wkt=(t,e)=>o1e(e,t);c1e.exports={compareIdentifiers:o1e,rcompareIdentifiers:wkt}});var Ui=_((J$r,l1e)=>{"use strict";var ck=sv(),{MAX_LENGTH:u1e,MAX_SAFE_INTEGER:uk}=nv(),{safeRe:lk,t:dk}=HA(),Rkt=ok(),{compareIdentifiers:TF}=CF(),wF=class t{constructor(e,r){if(r=Rkt(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>u1e)throw new TypeError(`version is longer than ${u1e} characters`);ck("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?lk[dk.LOOSE]:lk[dk.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>uk||this.major<0)throw new TypeError("Invalid major version");if(this.minor>uk||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>uk||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&&i<uk)return i}return s}):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(e){if(ck("SemVer.compare",this.version,this.options,e),!(e instanceof t)){if(typeof e=="string"&&e===this.version)return 0;e=new t(e,this.options)}return e.version===this.version?0:this.compareMain(e)||this.comparePre(e)}compareMain(e){return e instanceof t||(e=new t(e,this.options)),this.major<e.major?-1:this.major>e.major?1:this.minor<e.minor?-1:this.minor>e.minor?1:this.patch<e.patch?-1:this.patch>e.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(ck("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 TF(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(ck("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 TF(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?lk[dk.PRERELEASELOOSE]:lk[dk.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]),TF(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}};l1e.exports=wF});var ch=_((X$r,f1e)=>{"use strict";var d1e=Ui(),Nkt=(t,e,r=!1)=>{if(t instanceof d1e)return t;try{return new d1e(t,e)}catch(n){if(!r)return null;throw n}};f1e.exports=Nkt});var m1e=_((Z$r,p1e)=>{"use strict";var Okt=ch(),kkt=(t,e)=>{let r=Okt(t,e);return r?r.version:null};p1e.exports=kkt});var g1e=_((eUr,h1e)=>{"use strict";var Pkt=ch(),Dkt=(t,e)=>{let r=Pkt(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};h1e.exports=Dkt});var x1e=_((tUr,A1e)=>{"use strict";var y1e=Ui(),Bkt=(t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new y1e(t instanceof y1e?t.version:t,r).inc(e,n,s).version}catch{return null}};A1e.exports=Bkt});var E1e=_((rUr,_1e)=>{"use strict";var b1e=ch(),Lkt=(t,e)=>{let r=b1e(t,null,!0),n=b1e(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"};_1e.exports=Lkt});var S1e=_((nUr,v1e)=>{"use strict";var Mkt=Ui(),Wkt=(t,e)=>new Mkt(t,e).major;v1e.exports=Wkt});var C1e=_((sUr,I1e)=>{"use strict";var $kt=Ui(),Ukt=(t,e)=>new $kt(t,e).minor;I1e.exports=Ukt});var w1e=_((iUr,T1e)=>{"use strict";var Fkt=Ui(),qkt=(t,e)=>new Fkt(t,e).patch;T1e.exports=qkt});var N1e=_((aUr,R1e)=>{"use strict";var jkt=ch(),Qkt=(t,e)=>{let r=jkt(t,e);return r&&r.prerelease.length?r.prerelease:null};R1e.exports=Qkt});var cc=_((oUr,k1e)=>{"use strict";var O1e=Ui(),Hkt=(t,e,r)=>new O1e(t,r).compare(new O1e(e,r));k1e.exports=Hkt});var D1e=_((cUr,P1e)=>{"use strict";var Gkt=cc(),Vkt=(t,e,r)=>Gkt(e,t,r);P1e.exports=Vkt});var L1e=_((uUr,B1e)=>{"use strict";var Kkt=cc(),zkt=(t,e)=>Kkt(t,e,!0);B1e.exports=zkt});var fk=_((lUr,W1e)=>{"use strict";var M1e=Ui(),Ykt=(t,e,r)=>{let n=new M1e(t,r),s=new M1e(e,r);return n.compare(s)||n.compareBuild(s)};W1e.exports=Ykt});var U1e=_((dUr,$1e)=>{"use strict";var Jkt=fk(),Xkt=(t,e)=>t.sort((r,n)=>Jkt(r,n,e));$1e.exports=Xkt});var q1e=_((fUr,F1e)=>{"use strict";var Zkt=fk(),ePt=(t,e)=>t.sort((r,n)=>Zkt(n,r,e));F1e.exports=ePt});var iv=_((pUr,j1e)=>{"use strict";var tPt=cc(),rPt=(t,e,r)=>tPt(t,e,r)>0;j1e.exports=rPt});var pk=_((mUr,Q1e)=>{"use strict";var nPt=cc(),sPt=(t,e,r)=>nPt(t,e,r)<0;Q1e.exports=sPt});var RF=_((hUr,H1e)=>{"use strict";var iPt=cc(),aPt=(t,e,r)=>iPt(t,e,r)===0;H1e.exports=aPt});var NF=_((gUr,G1e)=>{"use strict";var oPt=cc(),cPt=(t,e,r)=>oPt(t,e,r)!==0;G1e.exports=cPt});var mk=_((yUr,V1e)=>{"use strict";var uPt=cc(),lPt=(t,e,r)=>uPt(t,e,r)>=0;V1e.exports=lPt});var hk=_((AUr,K1e)=>{"use strict";var dPt=cc(),fPt=(t,e,r)=>dPt(t,e,r)<=0;K1e.exports=fPt});var OF=_((xUr,z1e)=>{"use strict";var pPt=RF(),mPt=NF(),hPt=iv(),gPt=mk(),yPt=pk(),APt=hk(),xPt=(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 pPt(t,r,n);case"!=":return mPt(t,r,n);case">":return hPt(t,r,n);case">=":return gPt(t,r,n);case"<":return yPt(t,r,n);case"<=":return APt(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};z1e.exports=xPt});var J1e=_((bUr,Y1e)=>{"use strict";var bPt=Ui(),_Pt=ch(),{safeRe:gk,t:yk}=HA(),EPt=(t,e)=>{if(t instanceof bPt)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?gk[yk.COERCEFULL]:gk[yk.COERCE]);else{let c=e.includePrerelease?gk[yk.COERCERTLFULL]:gk[yk.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 _Pt(`${n}.${s}.${i}${a}${o}`,e)};Y1e.exports=EPt});var Z1e=_((_Ur,X1e)=>{"use strict";var kF=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}};X1e.exports=kF});var uc=_((EUr,n_e)=>{"use strict";var vPt=/\s+/g,PF=class t{constructor(e,r){if(r=IPt(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof DF)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(vPt," "),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=>!t_e(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&&kPt(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e<this.set.length;e++){e>0&&(this.formatted+="||");let r=this.set[e];for(let n=0;n<r.length;n++)n>0&&(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&&NPt)|(this.options.loose&&OPt))+":"+e,s=e_e.get(n);if(s)return s;let i=this.options.loose,a=i?da[Fi.HYPHENRANGELOOSE]:da[Fi.HYPHENRANGE];e=e.replace(a,qPt(this.options.includePrerelease)),On("hyphen replace",e),e=e.replace(da[Fi.COMPARATORTRIM],TPt),On("comparator trim",e),e=e.replace(da[Fi.TILDETRIM],wPt),On("tilde trim",e),e=e.replace(da[Fi.CARETTRIM],RPt),On("caret trim",e);let o=e.split(" ").map(d=>PPt(d,this.options)).join(" ").split(/\s+/).map(d=>FPt(d,this.options));i&&(o=o.filter(d=>(On("loose invalid filter",d,this.options),!!d.match(da[Fi.COMPARATORLOOSE])))),On("range list",o);let c=new Map,u=o.map(d=>new DF(d,this.options));for(let d of u){if(t_e(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let l=[...c.values()];return e_e.set(n,l),l}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>r_e(n,r)&&e.set.some(s=>r_e(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 CPt(e,this.options)}catch{return!1}for(let r=0;r<this.set.length;r++)if(jPt(this.set[r],e,this.options))return!0;return!1}};n_e.exports=PF;var SPt=Z1e(),e_e=new SPt,IPt=ok(),DF=av(),On=sv(),CPt=Ui(),{safeRe:da,t:Fi,comparatorTrimReplace:TPt,tildeTrimReplace:wPt,caretTrimReplace:RPt}=HA(),{FLAG_INCLUDE_PRERELEASE:NPt,FLAG_LOOSE:OPt}=nv(),t_e=t=>t.value==="<0.0.0-0",kPt=t=>t.value==="",r_e=(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},PPt=(t,e)=>(t=t.replace(da[Fi.BUILD],""),On("comp",t,e),t=LPt(t,e),On("caret",t),t=DPt(t,e),On("tildes",t),t=WPt(t,e),On("xrange",t),t=UPt(t,e),On("stars",t),t),fa=t=>!t||t.toLowerCase()==="x"||t==="*",DPt=(t,e)=>t.trim().split(/\s+/).map(r=>BPt(r,e)).join(" "),BPt=(t,e)=>{let r=e.loose?da[Fi.TILDELOOSE]:da[Fi.TILDE];return t.replace(r,(n,s,i,a,o)=>{On("tilde",t,n,s,i,a,o);let c;return fa(s)?c="":fa(i)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:fa(a)?c=`>=${s}.${i}.0 <${s}.${+i+1}.0-0`:o?(On("replaceTilde pr",o),c=`>=${s}.${i}.${a}-${o} <${s}.${+i+1}.0-0`):c=`>=${s}.${i}.${a} <${s}.${+i+1}.0-0`,On("tilde return",c),c})},LPt=(t,e)=>t.trim().split(/\s+/).map(r=>MPt(r,e)).join(" "),MPt=(t,e)=>{On("caret",t,e);let r=e.loose?da[Fi.CARETLOOSE]:da[Fi.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,i,a,o,c)=>{On("caret",t,s,i,a,o,c);let u;return fa(i)?u="":fa(a)?u=`>=${i}.0.0${n} <${+i+1}.0.0-0`:fa(o)?i==="0"?u=`>=${i}.${a}.0${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.0${n} <${+i+1}.0.0-0`:c?(On("replaceCaret pr",c),i==="0"?a==="0"?u=`>=${i}.${a}.${o}-${c} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}-${c} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o}-${c} <${+i+1}.0.0-0`):(On("no pr"),i==="0"?a==="0"?u=`>=${i}.${a}.${o}${n} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o} <${+i+1}.0.0-0`),On("caret return",u),u})},WPt=(t,e)=>(On("replaceXRanges",t,e),t.split(/\s+/).map(r=>$Pt(r,e)).join(" ")),$Pt=(t,e)=>{t=t.trim();let r=e.loose?da[Fi.XRANGELOOSE]:da[Fi.XRANGE];return t.replace(r,(n,s,i,a,o,c)=>{On("xRange",t,n,s,i,a,o,c);let u=fa(i),l=u||fa(a),d=l||fa(o),f=d;return s==="="&&f&&(s=""),c=e.includePrerelease?"-0":"",u?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&f?(l&&(a=0),o=0,s===">"?(s=">=",l?(i=+i+1,a=0,o=0):(a=+a+1,o=0)):s==="<="&&(s="<",l?i=+i+1:a=+a+1),s==="<"&&(c="-0"),n=`${s+i}.${a}.${o}${c}`):l?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${a}.0${c} <${i}.${+a+1}.0-0`),On("xRange return",n),n})},UPt=(t,e)=>(On("replaceStars",t,e),t.trim().replace(da[Fi.STAR],"")),FPt=(t,e)=>(On("replaceGTE0",t,e),t.trim().replace(da[e.includePrerelease?Fi.GTE0PRE:Fi.GTE0],"")),qPt=t=>(e,r,n,s,i,a,o,c,u,l,d,f)=>(fa(n)?r="":fa(s)?r=`>=${n}.0.0${t?"-0":""}`:fa(i)?r=`>=${n}.${s}.0${t?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,fa(u)?c="":fa(l)?c=`<${+u+1}.0.0-0`:fa(d)?c=`<${u}.${+l+1}.0-0`:f?c=`<=${u}.${l}.${d}-${f}`:t?c=`<${u}.${l}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),jPt=(t,e,r)=>{for(let n=0;n<t.length;n++)if(!t[n].test(e))return!1;if(e.prerelease.length&&!r.includePrerelease){for(let n=0;n<t.length;n++)if(On(t[n].semver),t[n].semver!==DF.ANY&&t[n].semver.prerelease.length>0){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 av=_((vUr,u_e)=>{"use strict";var ov=Symbol("SemVer ANY"),MF=class t{static get ANY(){return ov}constructor(e,r){if(r=s_e(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),LF("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===ov?this.value="":this.value=this.operator+this.semver.version,LF("comp",this)}parse(e){let r=this.options.loose?i_e[a_e.COMPARATORLOOSE]:i_e[a_e.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 o_e(n[2],this.options.loose):this.semver=ov}toString(){return this.value}test(e){if(LF("Comparator.test",e,this.options.loose),this.semver===ov||e===ov)return!0;if(typeof e=="string")try{e=new o_e(e,this.options)}catch{return!1}return BF(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 c_e(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new c_e(this.value,r).test(e.semver):(r=s_e(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("=")||BF(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||BF(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};u_e.exports=MF;var s_e=ok(),{safeRe:i_e,t:a_e}=HA(),BF=OF(),LF=sv(),o_e=Ui(),c_e=uc()});var cv=_((SUr,l_e)=>{"use strict";var QPt=uc(),HPt=(t,e,r)=>{try{e=new QPt(e,r)}catch{return!1}return e.test(t)};l_e.exports=HPt});var f_e=_((IUr,d_e)=>{"use strict";var GPt=uc(),VPt=(t,e)=>new GPt(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));d_e.exports=VPt});var m_e=_((CUr,p_e)=>{"use strict";var KPt=Ui(),zPt=uc(),YPt=(t,e,r)=>{let n=null,s=null,i=null;try{i=new zPt(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new KPt(n,r))}),n};p_e.exports=YPt});var g_e=_((TUr,h_e)=>{"use strict";var JPt=Ui(),XPt=uc(),ZPt=(t,e,r)=>{let n=null,s=null,i=null;try{i=new XPt(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new JPt(n,r))}),n};h_e.exports=ZPt});var x_e=_((wUr,A_e)=>{"use strict";var WF=Ui(),e3t=uc(),y_e=iv(),t3t=(t,e)=>{t=new e3t(t,e);let r=new WF("0.0.0");if(t.test(r)||(r=new WF("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n<t.set.length;++n){let s=t.set[n],i=null;s.forEach(a=>{let o=new WF(a.semver.version);switch(a.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!i||y_e(o,i))&&(i=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),i&&(!r||y_e(r,i))&&(r=i)}return r&&t.test(r)?r:null};A_e.exports=t3t});var __e=_((RUr,b_e)=>{"use strict";var r3t=uc(),n3t=(t,e)=>{try{return new r3t(t,e).range||"*"}catch{return null}};b_e.exports=n3t});var Ak=_((NUr,I_e)=>{"use strict";var s3t=Ui(),S_e=av(),{ANY:i3t}=S_e,a3t=uc(),o3t=cv(),E_e=iv(),v_e=pk(),c3t=hk(),u3t=mk(),l3t=(t,e,r,n)=>{t=new s3t(t,n),e=new a3t(e,n);let s,i,a,o,c;switch(r){case">":s=E_e,i=c3t,a=v_e,o=">",c=">=";break;case"<":s=v_e,i=u3t,a=E_e,o="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(o3t(t,e,n))return!1;for(let u=0;u<e.set.length;++u){let l=e.set[u],d=null,f=null;if(l.forEach(m=>{m.semver===i3t&&(m=new S_e(">=0.0.0")),d=d||m,f=f||m,s(m.semver,d.semver,n)?d=m:a(m.semver,f.semver,n)&&(f=m)}),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};I_e.exports=l3t});var T_e=_((OUr,C_e)=>{"use strict";var d3t=Ak(),f3t=(t,e,r)=>d3t(t,e,">",r);C_e.exports=f3t});var R_e=_((kUr,w_e)=>{"use strict";var p3t=Ak(),m3t=(t,e,r)=>p3t(t,e,"<",r);w_e.exports=m3t});var k_e=_((PUr,O_e)=>{"use strict";var N_e=uc(),h3t=(t,e,r)=>(t=new N_e(t,r),e=new N_e(e,r),t.intersects(e,r));O_e.exports=h3t});var D_e=_((DUr,P_e)=>{"use strict";var g3t=cv(),y3t=cc();P_e.exports=(t,e,r)=>{let n=[],s=null,i=null,a=t.sort((l,d)=>y3t(l,d,r));for(let l of a)g3t(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<u.length?c:e}});var U_e=_((BUr,$_e)=>{"use strict";var B_e=uc(),UF=av(),{ANY:$F}=UF,uv=cv(),FF=cc(),A3t=(t,e,r={})=>{if(t===e)return!0;t=new B_e(t,r),e=new B_e(e,r);let n=!1;e:for(let s of t.set){for(let i of e.set){let a=b3t(s,i,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},x3t=[new UF(">=0.0.0-0")],L_e=[new UF(">=0.0.0")],b3t=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===$F){if(e.length===1&&e[0].semver===$F)return!0;r.includePrerelease?t=x3t:t=L_e}if(e.length===1&&e[0].semver===$F){if(r.includePrerelease)return!0;e=L_e}let n=new Set,s,i;for(let m of t)m.operator===">"||m.operator===">="?s=M_e(s,m,r):m.operator==="<"||m.operator==="<="?i=W_e(i,m,r):n.add(m.semver);if(n.size>1)return null;let a;if(s&&i){if(a=FF(s.semver,i.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let m of n){if(s&&!uv(m,String(s),r)||i&&!uv(m,String(i),r))return null;for(let p of e)if(!uv(m,String(p),r))return!1;return!0}let o,c,u,l,d=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1,f=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;d&&d.prerelease.length===1&&i.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let m of e){if(l=l||m.operator===">"||m.operator===">=",u=u||m.operator==="<"||m.operator==="<=",s){if(f&&m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===f.major&&m.semver.minor===f.minor&&m.semver.patch===f.patch&&(f=!1),m.operator===">"||m.operator===">="){if(o=M_e(s,m,r),o===m&&o!==s)return!1}else if(s.operator===">="&&!uv(s.semver,String(m),r))return!1}if(i){if(d&&m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===d.major&&m.semver.minor===d.minor&&m.semver.patch===d.patch&&(d=!1),m.operator==="<"||m.operator==="<="){if(c=W_e(i,m,r),c===m&&c!==i)return!1}else if(i.operator==="<="&&!uv(i.semver,String(m),r))return!1}if(!m.operator&&(i||s)&&a!==0)return!1}return!(s&&u&&!i&&a!==0||i&&l&&!s&&a!==0||f||d)},M_e=(t,e,r)=>{if(!t)return e;let n=FF(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},W_e=(t,e,r)=>{if(!t)return e;let n=FF(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};$_e.exports=A3t});var jF=_((LUr,j_e)=>{"use strict";var qF=HA(),F_e=nv(),_3t=Ui(),q_e=CF(),E3t=ch(),v3t=m1e(),S3t=g1e(),I3t=x1e(),C3t=E1e(),T3t=S1e(),w3t=C1e(),R3t=w1e(),N3t=N1e(),O3t=cc(),k3t=D1e(),P3t=L1e(),D3t=fk(),B3t=U1e(),L3t=q1e(),M3t=iv(),W3t=pk(),$3t=RF(),U3t=NF(),F3t=mk(),q3t=hk(),j3t=OF(),Q3t=J1e(),H3t=av(),G3t=uc(),V3t=cv(),K3t=f_e(),z3t=m_e(),Y3t=g_e(),J3t=x_e(),X3t=__e(),Z3t=Ak(),eDt=T_e(),tDt=R_e(),rDt=k_e(),nDt=D_e(),sDt=U_e();j_e.exports={parse:E3t,valid:v3t,clean:S3t,inc:I3t,diff:C3t,major:T3t,minor:w3t,patch:R3t,prerelease:N3t,compare:O3t,rcompare:k3t,compareLoose:P3t,compareBuild:D3t,sort:B3t,rsort:L3t,gt:M3t,lt:W3t,eq:$3t,neq:U3t,gte:F3t,lte:q3t,cmp:j3t,coerce:Q3t,Comparator:H3t,Range:G3t,satisfies:V3t,toComparators:K3t,maxSatisfying:z3t,minSatisfying:Y3t,minVersion:J3t,validRange:X3t,outside:Z3t,gtr:eDt,ltr:tDt,intersects:rDt,simplifyRange:nDt,subset:sDt,SemVer:_3t,re:qF.re,src:qF.src,tokens:qF.t,SEMVER_SPEC_VERSION:F_e.SEMVER_SPEC_VERSION,RELEASE_TYPES:F_e.RELEASE_TYPES,compareIdentifiers:q_e.compareIdentifiers,rcompareIdentifiers:q_e.rcompareIdentifiers}});var bk=_((MUr,VF)=>{"use strict";var xk=t1e(),iDt=jF(),{FSTDEP005:aDt,FSTDEP012:oDt,FSTDEP015:cDt,FSTDEP016:uDt,FSTDEP017:lDt,FSTDEP018:dDt}=Od(),{kHasBeenDecorated:fDt,kSchemaBody:pDt,kSchemaHeaders:mDt,kSchemaParams:hDt,kSchemaQuerystring:Q_e,kSchemaController:QF,kOptions:gDt,kRequestCacheValidateFns:Gp,kRouteContext:ps,kPublicRouteContext:H_e,kRequestOriginalUrl:HF}=Ks(),{FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:yDt}=Bi(),G_e={body:pDt,headers:mDt,params:hDt,querystring:Q_e,query:Q_e};function GF(t,e,r,n,s,i){this.id=t,this[ps]=i,this.params=e,this.raw=r,this.query=n,this.log=s,this.body=void 0}GF.props=[];function ADt(t){if(typeof t=="function")return t;if(t===!0)return function(){return!0};if(typeof t=="number")return function(e,r){return r<t};if(typeof t=="string"){let e=t.split(",").map(r=>r.trim());return xk.compile(e)}return xk.compile(t)}function xDt(t,e){return e?bDt(t,e):K_e(t)}function K_e(t){let e=t.props.slice();function r(n,s,i,a,o,c){this.id=n,this[ps]=c,this.params=s,this.raw=i,this.query=a,this.log=o,this.body=void 0;for(var u,l=0;l<e.length;l++)u=e[l],this[u.key]=u.value}return Object.setPrototypeOf(r.prototype,t.prototype),Object.setPrototypeOf(r,t),r.props=e,r.parent=t,r}function V_e(t){let e=t.lastIndexOf(",");return e===-1?t.trim():t.slice(e+1).trim()}function bDt(t,e){let r=K_e(t),n=ADt(e);return r[fDt]=!0,Object.defineProperties(r.prototype,{ip:{get(){return xk(this.raw,n)}},ips:{get(){return xk.all(this.raw,n)}},hostname:{get(){return this.ip!==void 0&&this.headers["x-forwarded-host"]?V_e(this.headers["x-forwarded-host"]):this.headers.host||this.headers[":authority"]}},protocol:{get(){if(this.headers["x-forwarded-proto"])return V_e(this.headers["x-forwarded-proto"]);if(this.socket)return this.socket.encrypted?"https":"http"}}}),r}Object.defineProperties(GF.prototype,{server:{get(){return this[ps].server}},url:{get(){return this.raw.url}},originalUrl:{get(){return this[HF]||(this[HF]=this.raw.originalUrl||this.raw.url),this[HF]}},method:{get(){return this.raw.method}},context:{get(){return oDt(),this[ps]}},routerPath:{get(){return lDt(),this[ps].config?.url}},routeOptions:{get(){let t=this[ps],e=t._parserOptions.limit,r=t.server.initialConfig.bodyLimit,n=t.server.hasConstraintStrategy("version")?this.raw.headers["accept-version"]:void 0,s={method:t.config?.method,url:t.config?.url,bodyLimit:e||r,attachValidation:t.attachValidation,logLevel:t.logLevel,exposeHeadRoute:t.exposeHeadRoute,prefixTrailingSlash:t.prefixTrailingSlash,handler:t.handler,version:n};return Object.defineProperties(s,{config:{get:()=>t.config},schema:{get:()=>t.schema}}),Object.freeze(s)}},routerMethod:{get(){return dDt(),this[ps].config?.method}},routeConfig:{get(){return uDt(),this[ps][H_e]?.config}},routeSchema:{get(){return cDt(),this[ps][H_e].schema}},is404:{get(){return this[ps].config?.url===void 0}},connection:{get(){return iDt.gte(process.versions.node,"13.0.0")&&aDt(),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=G_e[t];return this[ps][e]}else if(typeof t=="object")return this[ps][Gp]?.get(t)}},compileValidationSchema:{value:function(t,e=null){let{method:r,url:n}=this;if(this[ps][Gp]?.has(t))return this[ps][Gp].get(t);let i=(this[ps].validatorCompiler||this.server[QF].validatorCompiler||this.server[QF].setupValidator(this.server[gDt])||this.server[QF].validatorCompiler)({schema:t,method:r,url:n,httpPart:e});return this[ps][Gp]==null&&(this[ps][Gp]=new WeakMap),this[ps][Gp].set(t,i),i}},validateInput:{value:function(t,e,r){r=typeof e=="string"?e:r;let n=r!=null&&typeof r=="string"&&G_e[r],s;if(n&&(s=this[ps][n]),s==null&&(e==null||typeof e!="object"||Array.isArray(e)))throw new yDt(r);return s==null&&(this[ps][Gp]?.has(e)?s=this[ps][Gp].get(e):s=this.compileValidationSchema(e,r)),s(t)}}});VF.exports=GF;VF.exports.buildRequest=xDt});var _k=_((WUr,z_e)=>{"use strict";var{kFourOhFourContext:_Dt,kReplySerializerDefault:EDt,kSchemaErrorFormatter:vDt,kErrorHandler:SDt,kChildLoggerFactory:IDt,kOptions:CDt,kReply:TDt,kRequest:wDt,kBodyLimit:RDt,kLogLevel:NDt,kContentTypeParser:ODt,kRouteByFastify:kDt,kRequestCacheValidateFns:PDt,kReplyCacheSerializeFns:DDt,kPublicRouteContext:BDt}=Ks();function LDt({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:m,exposeHeadRoute:p,prefixTrailingSlash:h,server:y,isFastify:g}){this.schema=t,this.handler=e,this.Reply=y[TDt],this.Request=y[wDt],this.contentTypeParser=y[ODt],this.onRequest=null,this.onSend=null,this.onError=null,this.onTimeout=null,this.preHandler=null,this.onResponse=null,this.preSerialization=null,this.onRequestAbort=null,this.config=r,this.errorHandler=i||y[SDt],this.requestIdLogLabel=n||y[CDt].requestIdLogLabel,this.childLoggerFactory=s||y[IDt],this._middie=null,this._parserOptions={limit:a||y[RDt]},this.exposeHeadRoute=p,this.prefixTrailingSlash=h,this.logLevel=o||y[NDt],this.logSerializers=c,this[_Dt]=null,this.attachValidation=u,this[EDt]=f,this.schemaErrorFormatter=m||y[vDt]||WDt,this[kDt]=g,this[PDt]=null,this[DDt]=null,this.validatorCompiler=l||null,this.serializerCompiler=d||null,this[BDt]=MDt(this),this.server=y}function MDt(t){return Object.create(null,{schema:{enumerable:!0,get(){return t.schema}},config:{enumerable:!0,get(){return t.config}}})}function WDt(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))}z_e.exports=LDt});var KF=_(($Ur,Y_e)=>{"use strict";Y_e.exports={supportedMethods:["DELETE","GET","HEAD","PATCH","POST","PUT","OPTIONS","PROPFIND","PROPPATCH","MKCOL","COPY","MOVE","LOCK","UNLOCK","TRACE","SEARCH"]}});var ZF=_((UUr,eEe)=>{"use strict";var{kReply:zF,kRequest:YF,kState:$Dt,kHasBeenDecorated:UDt}=Ks(),{FST_ERR_DEC_ALREADY_PRESENT:J_e,FST_ERR_DEC_MISSING_DEPENDENCY:FDt,FST_ERR_DEC_AFTER_START:qDt,FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:jDt}=Bi(),{FSTDEP006:QDt}=Od();function HDt(t,e,r,n){if(Object.prototype.hasOwnProperty.call(t,e))throw new J_e(e);JF(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 X_e(t,e,r,n){let s=t.prototype;if(Object.prototype.hasOwnProperty.call(s,e)||vk(t,e))throw new J_e(e);t[UDt]=!0,JF(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 Z_e(t,e){typeof e=="object"&&e&&!(typeof e.getter=="function"||typeof e.setter=="function")&&QDt(t)}function GDt(t,e,r){return XF(this,t),HDt(this,t,e,r),this}function Ek(t,e){return e?e in t||t.prototype&&e in t.prototype||vk(t,e):t in this}function vk(t,e){return t.props?t.props.find(({key:r})=>r===e):!1}function VDt(t){return t&&vk(this[YF],t)?!0:Ek(this[YF].prototype,t)}function KDt(t){return t&&vk(this[zF],t)?!0:Ek(this[zF].prototype,t)}function JF(t,e,r){if(r!=null){if(!Array.isArray(r))throw new jDt(e);for(var n=0;n!==r.length;++n)if(!Ek(t,r[n]))throw new FDt(r[n])}}function zDt(t,e,r){return XF(this,t),Z_e(t,e),X_e(this[zF],t,e,r),this}function YDt(t,e,r){return XF(this,t),Z_e(t,e),X_e(this[YF],t,e,r),this}function XF(t,e){if(t[$Dt].started)throw new qDt(e)}eEe.exports={add:GDt,exist:Ek,existRequest:VDt,existReply:KDt,dependencies:JF,decorateReply:zDt,decorateRequest:YDt}});var rEe=_(cl=>{"use strict";var e7=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;r<e.length;r++)this.delete(e[r])}evict(){if(this.size>0){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;n<e.length;n++)r.push(this.get(e[n]));return r}keys(){return this.items.keys()}set(e,r){if(this.items.has(e)){let s=this.items.get(e);s.value=r,s.expiry=this.ttl>0?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}},t7=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;r<e.length;r++)this.delete(e[r])}evict(){if(this.size>0){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;n<e.length;n++)r.push(this.get(e[n]));return r}keys(){return this.items.keys()}set(e,r){if(this.items.has(e)){let s=this.items.get(e);s.value=r,s.expiry=this.ttl>0?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}},lv=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;r<e.length;r++)this.delete(e[r])}evict(){if(this.size>0){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;n<e.length;n++)r.push(this.get(e[n]));return r}keys(){return Object.keys(this.items)}set(e,r){if(Object.prototype.hasOwnProperty.call(this.items,e)){let s=this.items[e];s.value=r,s.expiry=this.ttl>0?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}},Sk=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 tEe(t){return`${t.getFullYear()}-${(t.getMonth()+1).toString().padStart(2,"0")}-${t.getDate().toString().padStart(2,"0")}`}var r7=class{constructor(e,r,n){this.cacheId=e,this.statisticTtlInHours=r,this.collectionStart=new Date,this.currentTimeStamp=tEe(this.collectionStart),this.records=n||new Sk,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=tEe(this.collectionStart),this.records.initForCache(this.cacheId,this.currentTimeStamp))}},Ik=class extends lv{constructor(e,r,n,s,i){if(super(e||1e3,r||0),!n)throw new Error("Cache id is mandatory");this.hitStatistics=new r7(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()}},Ck=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;r<e.length;r++)this.delete(e[r])}evict(){if(this.size>0){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;n<e.length;n++)r.push(this.get(e[n]));return r}keys(){return Object.keys(this.items)}set(e,r){if(Object.prototype.hasOwnProperty.call(this.items,e)){let s=this.items[e];s.value=r,s.expiry=this.ttl>0?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}};cl.Fifo=Ck;cl.FifoMap=e7;cl.FifoObject=Ck;cl.HitStatisticsRecord=Sk;cl.Lru=lv;cl.LruHitStatistics=Ik;cl.LruMap=t7;cl.LruObject=lv;cl.LruObjectHitStatistics=Ik});var aEe=_((qUr,dv)=>{"use strict";var Rk=function(){};Rk.prototype=Object.create(null);var Tk=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,wk=/\\([\v\u0020-\u00ff])/gu,nEe=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,uh={type:"",parameters:new Rk};Object.freeze(uh.parameters);Object.freeze(uh);function sEe(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(nEe.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new Rk};if(e===-1)return n;let s,i,a;for(Tk.lastIndex=e;i=Tk.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),wk.test(a)&&(a=a.replace(wk,"$1"))),n.parameters[s]=a}if(e!==t.length)throw new TypeError("invalid parameter format");return n}function iEe(t){if(typeof t!="string")return uh;let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(nEe.test(r)===!1)return uh;let n={type:r.toLowerCase(),parameters:new Rk};if(e===-1)return n;let s,i,a;for(Tk.lastIndex=e;i=Tk.exec(t);){if(i.index!==e)return uh;e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),wk.test(a)&&(a=a.replace(wk,"$1"))),n.parameters[s]=a}return e!==t.length?uh:n}dv.exports.default={parse:sEe,safeParse:iEe};dv.exports.parse=sEe;dv.exports.safeParse=iEe;dv.exports.defaultContentType=uh});var dEe=_((jUr,GA)=>{"use strict";var JDt=typeof Buffer<"u",oEe=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,cEe=/"(?: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 uEe(t,e,r){r==null&&e!==null&&typeof e=="object"&&(r=e,e=void 0),JDt&&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(oEe.test(t)===!1&&cEe.test(t)===!1)return n}else if(s!=="ignore"&&i==="ignore"){if(oEe.test(t)===!1)return n}else if(cEe.test(t)===!1)return n;return lEe(n,{protoAction:s,constructorAction:i,safe:r&&r.safe})}function lEe(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 n7(t,e,r){let n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return uEe(t,e,r)}finally{Error.stackTraceLimit=n}}function XDt(t,e){let r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return uEe(t,e,{safe:!0})}catch{return null}finally{Error.stackTraceLimit=r}}GA.exports=n7;GA.exports.default=n7;GA.exports.parse=n7;GA.exports.safeParse=XDt;GA.exports.scan=lEe});var c7=_((QUr,pv)=>{"use strict";var{AsyncResource:ZDt}=require("node:async_hooks"),{Fifo:pEe}=rEe(),{safeParse:mEe,defaultContentType:e4t}=aEe(),t4t=dEe(),{kDefaultJsonParse:fv,kContentTypeParser:VA,kBodyLimit:r4t,kRequestPayloadStream:hEe,kState:i7,kTestInternals:n4t,kReplyIsError:gEe,kRouteContext:s4t}=Ks(),{FST_ERR_CTP_INVALID_TYPE:yEe,FST_ERR_CTP_EMPTY_TYPE:i4t,FST_ERR_CTP_ALREADY_PRESENT:a4t,FST_ERR_CTP_INVALID_HANDLER:o4t,FST_ERR_CTP_INVALID_PARSE_TYPE:c4t,FST_ERR_CTP_BODY_TOO_LARGE:fEe,FST_ERR_CTP_INVALID_MEDIA_TYPE:u4t,FST_ERR_CTP_INVALID_CONTENT_LENGTH:l4t,FST_ERR_CTP_EMPTY_JSON_BODY:d4t,FST_ERR_CTP_INSTANCE_ALREADY_STARTED:a7}=Bi();function Ud(t,e,r){this[fv]=xEe(e,r),this.customParsers=new Map,this.customParsers.set("application/json",new s7(!0,!1,t,this[fv])),this.customParsers.set("text/plain",new s7(!0,!1,t,o7)),this.parserList=[new Nk("application/json"),new Nk("text/plain")],this.parserRegExpList=[],this.cache=new pEe(100)}Ud.prototype.add=function(t,e,r){let n=typeof t=="string";if(!n&&!(t instanceof RegExp))throw new yEe;if(n&&t.length===0)throw new i4t;if(typeof r!="function")throw new o4t;if(this.existingParser(t))throw new a4t(t);if(e.parseAs!==void 0&&e.parseAs!=="string"&&e.parseAs!=="buffer")throw new c4t(e.parseAs);let s=new s7(e.parseAs==="string",e.parseAs==="buffer",e.bodyLimit,r);n&&t==="*"?this.customParsers.set("",s):(n?this.parserList.unshift(new Nk(t)):(t.isEssence=t.source.indexOf(";")===-1,this.parserRegExpList.unshift(t)),this.customParsers.set(t.toString(),s))};Ud.prototype.hasParser=function(t){return this.customParsers.has(typeof t=="string"?t:t.toString())};Ud.prototype.existingParser=function(t){return t==="application/json"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==this[fv]:t==="text/plain"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==o7:this.hasParser(t)};Ud.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=mEe(t);if(r===e4t)return this.customParsers.get("");for(var n=0;n!==this.parserList.length;++n){let i=this.parserList[n];if(y4t(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(A4t(t,r.type,i)){let a=this.customParsers.get(i.toString());return this.cache.set(t,a),a}}return this.customParsers.get("")};Ud.prototype.removeAll=function(){this.customParsers=new Map,this.parserRegExpList=[],this.parserList=[],this.cache=new pEe(100)};Ud.prototype.remove=function(t){if(!(typeof t=="string"||t instanceof RegExp))throw new yEe;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};Ud.prototype.run=function(t,e,r,n){let s=this.getParser(t);if(s===void 0){r.is404?e(r,n):n.send(new u4t(t||void 0));return}let i=new ZDt("content-type-parser:run",r);if(s.asString===!0||s.asBuffer===!0)AEe(r,n,n[s4t]._parserOptions,s,a);else{let o=s.fn(r,r[hEe],a);o&&typeof o.then=="function"&&o.then(c=>a(null,c),a)}function a(o,c){i.runInAsyncScope(()=>{i.emitDestroy(),o?(n[gEe]=!0,n.send(o)):(r.body=c,e(r,n))})}};function AEe(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 fEe);return}let c=0,u=i===!0?"":[],l=t[hEe]||t.raw;i===!0&&l.setEncoding("utf8"),l.on("data",d),l.on("end",f),l.on("error",f),l.resume();function d(m){c+=m.length;let{receivedEncodedLength:p=0}=l;if(c>a||p>a){l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),e.send(new fEe);return}i===!0?u+=m:u.push(m)}function f(m){if(l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),m!==void 0){typeof m.statusCode=="number"&&m.statusCode>=400||(m.statusCode=400),e[gEe]=!0,e.code(m.statusCode).send(m);return}if(i===!0&&(c=Buffer.byteLength(u)),!Number.isNaN(o)&&(l.receivedEncodedLength||c)!==o){e.header("connection","close"),e.send(new l4t);return}i===!1&&(u=Buffer.concat(u));let p=n.fn(t,u,s);p&&typeof p.then=="function"&&p.then(h=>s(null,h),s)}}function xEe(t,e){return r;function r(n,s,i){if(s===""||s==null||Buffer.isBuffer(s)&&s.length===0)return i(new d4t,void 0);let a;try{a=t4t.parse(s,{protoAction:t,constructorAction:e})}catch(o){return o.statusCode=400,i(o,void 0)}i(null,a)}}function o7(t,e,r){r(null,e)}function s7(t,e,r,n){this.asString=t,this.asBuffer=e,this.bodyLimit=r,this.fn=n}function f4t(t){let e=new Ud;return e[fv]=t[fv],e.customParsers=new Map(t.customParsers.entries()),e.parserList=t.parserList.slice(),e.parserRegExpList=t.parserRegExpList.slice(),e}function p4t(t,e,r){if(this[i7].started)throw new a7("addContentTypeParser");return typeof e=="function"&&(r=e,e={}),e||(e={}),e.bodyLimit||(e.bodyLimit=this[r4t]),Array.isArray(t)?t.forEach(n=>this[VA].add(n,e,r)):this[VA].add(t,e,r),this}function m4t(t){return this[VA].hasParser(t)}function h4t(t){if(this[i7].started)throw new a7("removeContentTypeParser");if(Array.isArray(t))for(let e of t)this[VA].remove(e);else this[VA].remove(t)}function g4t(){if(this[i7].started)throw new a7("removeAllContentTypeParsers");this[VA].removeAll()}function y4t(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 A4t(t,e,r){return r.isEssence?r.test(e):r.test(t)}function Nk(t){this.name=t;let e=mEe(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)}Nk.prototype.toString=function(){return this.name};pv.exports=Ud;pv.exports.helpers={buildContentTypeParser:f4t,addContentTypeParser:p4t,hasContentTypeParser:m4t,removeContentTypeParser:h4t,removeAllContentTypeParsers:g4t};pv.exports.defaultParsers={getDefaultJsonParser:xEe,defaultTextParser:o7};pv.exports[n4t]={rawBody:AEe}});var vEe=_((HUr,EEe)=>{"use strict";var bEe=ic(),x4t=Symbol.for("json-schema-ref"),u7=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]:_Ee(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]:_Ee(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[x4t]=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(bEe(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&&bEe(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 _Ee(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}EEe.exports={RefResolver:u7}});var IEe=_((GUr,SEe)=>{"use strict";var l7=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}};SEe.exports=l7});var NEe=_((VUr,f7)=>{"use strict";f7.exports=Le;f7.exports.default=Le;var b4t={$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},CEe={enum:["array","boolean","integer","null","number","object","string"]},TEe=/^(?:[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,_4t=zO().fullFormats.uri,wEe=zO().fullFormats.regex;function lc(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))?(lc.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1):(lc.errors=i,a===0):(lc.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1)}var d7={validate:Le};function pa(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(Array.isArray(t)){if(t.length<1)return pa.errors=[{instancePath:e,schemaPath:"#/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{var o=!0;let c=t.length;for(let u=0;u<c;u++){let l=a;d7.validate(t[u],{instancePath:e+"/"+u,parentData:t,parentDataProperty:u,rootData:s})||(i=i===null?d7.validate.errors:i.concat(d7.validate.errors),a=i.length);var o=l===a;if(!o)break}}}else return pa.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;return pa.errors=i,a===0}var REe=HE().default;function Le(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(!(t&&typeof t=="object"&&!Array.isArray(t))&&typeof t!="boolean")return Le.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:b4t.type},message:"must be object,boolean"}],!1;if(a===0&&t&&typeof t=="object"&&!Array.isArray(t)){if(t.$id!==void 0){let b=t.$id,x=a;if(a===x&&a===x)if(typeof b=="string"){if(!TEe.test(b))return Le.errors=[{instancePath:e+"/$id",schemaPath:"#/properties/%24id/format",keyword:"format",params:{format:"uri-reference"},message:'must match format "uri-reference"'}],!1}else return Le.errors=[{instancePath:e+"/$id",schemaPath:"#/properties/%24id/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.$schema!==void 0){let b=t.$schema,x=a;if(a===x&&a===x)if(typeof b=="string"){if(!_4t(b))return Le.errors=[{instancePath:e+"/$schema",schemaPath:"#/properties/%24schema/format",keyword:"format",params:{format:"uri"},message:'must match format "uri"'}],!1}else return Le.errors=[{instancePath:e+"/$schema",schemaPath:"#/properties/%24schema/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.$ref!==void 0){let b=t.$ref,x=a;if(a===x&&a===x)if(typeof b=="string"){if(!TEe.test(b))return Le.errors=[{instancePath:e+"/$ref",schemaPath:"#/properties/%24ref/format",keyword:"format",params:{format:"uri-reference"},message:'must match format "uri-reference"'}],!1}else return Le.errors=[{instancePath:e+"/$ref",schemaPath:"#/properties/%24ref/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.$comment!==void 0){let b=a;if(typeof t.$comment!="string")return Le.errors=[{instancePath:e+"/$comment",schemaPath:"#/properties/%24comment/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=b===a}else var o=!0;if(o){if(t.title!==void 0){let b=a;if(typeof t.title!="string")return Le.errors=[{instancePath:e+"/title",schemaPath:"#/properties/title/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=b===a}else var o=!0;if(o){if(t.description!==void 0){let b=a;if(typeof t.description!="string")return Le.errors=[{instancePath:e+"/description",schemaPath:"#/properties/description/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=b===a}else var o=!0;if(o){if(t.readOnly!==void 0){let b=a;if(typeof t.readOnly!="boolean")return Le.errors=[{instancePath:e+"/readOnly",schemaPath:"#/properties/readOnly/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=b===a}else var o=!0;if(o){if(t.examples!==void 0){let b=a;if(a===b&&!Array.isArray(t.examples))return Le.errors=[{instancePath:e+"/examples",schemaPath:"#/properties/examples/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=b===a}else var o=!0;if(o){if(t.multipleOf!==void 0){let b=t.multipleOf,x=a;if(a===x)if(typeof b=="number"&&isFinite(b)){if(b<=0||isNaN(b))return Le.errors=[{instancePath:e+"/multipleOf",schemaPath:"#/properties/multipleOf/exclusiveMinimum",keyword:"exclusiveMinimum",params:{comparison:">",limit:0},message:"must be > 0"}],!1}else return Le.errors=[{instancePath:e+"/multipleOf",schemaPath:"#/properties/multipleOf/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.maximum!==void 0){let b=t.maximum,x=a;if(!(typeof b=="number"&&isFinite(b)))return Le.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 b=t.exclusiveMaximum,x=a;if(!(typeof b=="number"&&isFinite(b)))return Le.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 b=t.minimum,x=a;if(!(typeof b=="number"&&isFinite(b)))return Le.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 b=t.exclusiveMinimum,x=a;if(!(typeof b=="number"&&isFinite(b)))return Le.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 b=t.maxLength,x=a,S=a;if(!(typeof b=="number"&&!(b%1)&&!isNaN(b)&&isFinite(b)))return Le.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===S&&typeof b=="number"&&isFinite(b)&&(b<0||isNaN(b)))return Le.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 b=a;lc(t.minLength,{instancePath:e+"/minLength",parentData:t,parentDataProperty:"minLength",rootData:s})||(i=i===null?lc.errors:i.concat(lc.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.pattern!==void 0){let b=t.pattern,x=a;if(a===x&&a===x)if(typeof b=="string"){if(!wEe(b))return Le.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"'}],!1}else return Le.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.additionalItems!==void 0){let b=a;Le(t.additionalItems,{instancePath:e+"/additionalItems",parentData:t,parentDataProperty:"additionalItems",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.items!==void 0){let b=t.items,x=a,S=a,T=!1,I=a;Le(b,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var c=I===a;if(T=T||c,!T){let N=a;pa(b,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var c=N===a;T=T||c}if(T)a=S,i!==null&&(S?i.length=S:i=null);else{let N={instancePath:e+"/items",schemaPath:"#/properties/items/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,Le.errors=i,!1}var o=x===a}else var o=!0;if(o){if(t.maxItems!==void 0){let b=t.maxItems,x=a,S=a;if(!(typeof b=="number"&&!(b%1)&&!isNaN(b)&&isFinite(b)))return Le.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===S&&typeof b=="number"&&isFinite(b)&&(b<0||isNaN(b)))return Le.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 b=a;lc(t.minItems,{instancePath:e+"/minItems",parentData:t,parentDataProperty:"minItems",rootData:s})||(i=i===null?lc.errors:i.concat(lc.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.uniqueItems!==void 0){let b=a;if(typeof t.uniqueItems!="boolean")return Le.errors=[{instancePath:e+"/uniqueItems",schemaPath:"#/properties/uniqueItems/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=b===a}else var o=!0;if(o){if(t.contains!==void 0){let b=a;Le(t.contains,{instancePath:e+"/contains",parentData:t,parentDataProperty:"contains",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.maxProperties!==void 0){let b=t.maxProperties,x=a,S=a;if(!(typeof b=="number"&&!(b%1)&&!isNaN(b)&&isFinite(b)))return Le.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===S&&typeof b=="number"&&isFinite(b)&&(b<0||isNaN(b)))return Le.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 b=a;lc(t.minProperties,{instancePath:e+"/minProperties",parentData:t,parentDataProperty:"minProperties",rootData:s})||(i=i===null?lc.errors:i.concat(lc.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.required!==void 0){let b=t.required,x=a;if(a===a)if(Array.isArray(b)){var u=!0;let I=b.length;for(let R=0;R<I;R++){let N=a;if(typeof b[R]!="string")return Le.errors=[{instancePath:e+"/required/"+R,schemaPath:"#/definitions/stringArray/items/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var u=N===a;if(!u)break}if(u){let R=b.length,N;if(R>1){let k={};for(;R--;){let B=b[R];if(typeof B=="string"){if(typeof k[B]=="number"){return N=k[B],Le.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:R,j:N},message:"must NOT have duplicate items (items ## "+N+" and "+R+" are identical)"}],!1;break}k[B]=R}}}}}else return Le.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 b=a;Le(t.additionalProperties,{instancePath:e+"/additionalProperties",parentData:t,parentDataProperty:"additionalProperties",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.definitions!==void 0){let b=t.definitions,x=a;if(a===x)if(b&&typeof b=="object"&&!Array.isArray(b))for(let T in b){let I=a;Le(b[T],{instancePath:e+"/definitions/"+T.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:b,parentDataProperty:T,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var l=I===a;if(!l)break}else return Le.errors=[{instancePath:e+"/definitions",schemaPath:"#/properties/definitions/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.properties!==void 0){let b=t.properties,x=a;if(a===x)if(b&&typeof b=="object"&&!Array.isArray(b))for(let T in b){let I=a;Le(b[T],{instancePath:e+"/properties/"+T.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:b,parentDataProperty:T,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var d=I===a;if(!d)break}else return Le.errors=[{instancePath:e+"/properties",schemaPath:"#/properties/properties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.patternProperties!==void 0){let b=t.patternProperties,x=a;if(a===x)if(b&&typeof b=="object"&&!Array.isArray(b)){for(let T in b){let I=a;if(a===I&&typeof T=="string"&&!wEe(T)){let R={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"',propertyName:T};i===null?i=[R]:i.push(R),a++}var f=I===a;if(!f){let R={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames",keyword:"propertyNames",params:{propertyName:T},message:"property name must be valid"};return i===null?i=[R]:i.push(R),a++,Le.errors=i,!1;break}}if(f)for(let T in b){let I=a;Le(b[T],{instancePath:e+"/patternProperties/"+T.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:b,parentDataProperty:T,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var m=I===a;if(!m)break}}else return Le.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 b=t.dependencies,x=a;if(a===x)if(b&&typeof b=="object"&&!Array.isArray(b))for(let T in b){let I=b[T],R=a,N=a,k=!1,B=a;Le(I,{instancePath:e+"/dependencies/"+T.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:b,parentDataProperty:T,rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var p=B===a;if(k=k||p,!k){let M=a;if(a===a)if(Array.isArray(I)){var h=!0;let Z=I.length;for(let W=0;W<Z;W++){let U=a;if(typeof I[W]!="string"){let j={instancePath:e+"/dependencies/"+T.replace(/~/g,"~0").replace(/\//g,"~1")+"/"+W,schemaPath:"#/definitions/stringArray/items/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[j]:i.push(j),a++}var h=U===a;if(!h)break}if(h){let W=I.length,U;if(W>1){let V={};for(;W--;){let j=I[W];if(typeof j=="string"){if(typeof V[j]=="number"){U=V[j];let J={instancePath:e+"/dependencies/"+T.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:W,j:U},message:"must NOT have duplicate items (items ## "+U+" and "+W+" are identical)"};i===null?i=[J]:i.push(J),a++;break}V[j]=W}}}}}else{let Z={instancePath:e+"/dependencies/"+T.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 p=M===a;k=k||p}if(k)a=N,i!==null&&(N?i.length=N:i=null);else{let M={instancePath:e+"/dependencies/"+T.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/dependencies/additionalProperties/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[M]:i.push(M),a++,Le.errors=i,!1}var y=R===a;if(!y)break}else return Le.errors=[{instancePath:e+"/dependencies",schemaPath:"#/properties/dependencies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.propertyNames!==void 0){let b=a;Le(t.propertyNames,{instancePath:e+"/propertyNames",parentData:t,parentDataProperty:"propertyNames",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.enum!==void 0){let b=t.enum,x=a;if(a===x)if(Array.isArray(b)){if(b.length<1)return Le.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{let T=b.length,I;if(T>1){e:for(;T--;)for(I=T;I--;)if(REe(b[T],b[I])){return Le.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/uniqueItems",keyword:"uniqueItems",params:{i:T,j:I},message:"must NOT have duplicate items (items ## "+I+" and "+T+" are identical)"}],!1;break e}}}}else return Le.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=x===a}else var o=!0;if(o){if(t.type!==void 0){let b=t.type,x=a,S=a,T=!1,I=a;if(!(b==="array"||b==="boolean"||b==="integer"||b==="null"||b==="number"||b==="object"||b==="string")){let N={instancePath:e+"/type",schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:CEe.enum},message:"must be equal to one of the allowed values"};i===null?i=[N]:i.push(N),a++}var g=I===a;if(T=T||g,!T){let N=a;if(a===N)if(Array.isArray(b))if(b.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 A=!0;let B=b.length;for(let M=0;M<B;M++){let P=b[M],L=a;if(!(P==="array"||P==="boolean"||P==="integer"||P==="null"||P==="number"||P==="object"||P==="string")){let W={instancePath:e+"/type/"+M,schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:CEe.enum},message:"must be equal to one of the allowed values"};i===null?i=[W]:i.push(W),a++}var A=L===a;if(!A)break}if(A){let M=b.length,P;if(M>1){e:for(;M--;)for(P=M;P--;)if(REe(b[M],b[P])){let L={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/uniqueItems",keyword:"uniqueItems",params:{i:M,j:P},message:"must NOT have duplicate items (items ## "+P+" 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;T=T||g}if(T)a=S,i!==null&&(S?i.length=S:i=null);else{let N={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,Le.errors=i,!1}var o=x===a}else var o=!0;if(o){if(t.format!==void 0){let b=a;if(typeof t.format!="string")return Le.errors=[{instancePath:e+"/format",schemaPath:"#/properties/format/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=b===a}else var o=!0;if(o){if(t.contentMediaType!==void 0){let b=a;if(typeof t.contentMediaType!="string")return Le.errors=[{instancePath:e+"/contentMediaType",schemaPath:"#/properties/contentMediaType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=b===a}else var o=!0;if(o){if(t.contentEncoding!==void 0){let b=a;if(typeof t.contentEncoding!="string")return Le.errors=[{instancePath:e+"/contentEncoding",schemaPath:"#/properties/contentEncoding/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=b===a}else var o=!0;if(o){if(t.if!==void 0){let b=a;Le(t.if,{instancePath:e+"/if",parentData:t,parentDataProperty:"if",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.then!==void 0){let b=a;Le(t.then,{instancePath:e+"/then",parentData:t,parentDataProperty:"then",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.else!==void 0){let b=a;Le(t.else,{instancePath:e+"/else",parentData:t,parentDataProperty:"else",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.allOf!==void 0){let b=a;pa(t.allOf,{instancePath:e+"/allOf",parentData:t,parentDataProperty:"allOf",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.anyOf!==void 0){let b=a;pa(t.anyOf,{instancePath:e+"/anyOf",parentData:t,parentDataProperty:"anyOf",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var o=b===a}else var o=!0;if(o){if(t.oneOf!==void 0){let b=a;pa(t.oneOf,{instancePath:e+"/oneOf",parentData:t,parentDataProperty:"oneOf",rootData:s})||(i=i===null?pa.errors:i.concat(pa.errors),a=i.length);var o=b===a}else var o=!0;if(o)if(t.not!==void 0){let b=a;Le(t.not,{instancePath:e+"/not",parentData:t,parentDataProperty:"not",rootData:s})||(i=i===null?Le.errors:i.concat(Le.errors),a=i.length);var o=b===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return Le.errors=i,a===0}});var g7=_((KUr,OEe)=>{"use strict";var p7=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}},m7=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}},h7=class extends Error{constructor(e){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Invalid "onConflict" option: "${e}".`}};OEe.exports={MergeError:p7,ResolverNotFoundError:m7,InvalidOnConflictOptionError:h7}});var DEe=_((zUr,PEe)=>{"use strict";var E4t=ic(),{MergeError:y7}=g7();function kEe(t){let e=t[0];for(let r=1;r<t.length;r++)e=e.filter(n=>t[r].includes(n));return e}function v4t(t,e,r){let n=kEe(e);if(n.length===0)throw new y7(t,e);r[t]=n}function S4t(t,e,r){for(let s=0;s<e.length;s++)Array.isArray(e[s])||(e[s]=[e[s]]);let n=kEe(e);if(n.length===0)throw new y7(t,e);n.length===1?r[t]=n[0]:r[t]=n}function I4t(t,e,r){let n=[];for(let s of e)for(let i of s)n.includes(i)||n.push(i);r[t]=n}function C4t(t,e,r){r[t]=Math.min(...e)}function T4t(t,e,r){r[t]=Math.max(...e)}function w4t(t,e,r){let n=(o,c)=>c?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 R4t(t,e,r){let n=e[0];for(let s=1;s<e.length;s++)if(!E4t(e[s],n))throw new y7(t,e);r[t]=n}function N4t(){}function O4t(t,e,r){for(let n of e)if(n===!1){r[t]=!1;return}r[t]=!0}function k4t(t,e,r){for(let n of e)if(n===!0){r[t]=!0;return}r[t]=!1}PEe.exports={arraysIntersection:v4t,hybridArraysIntersection:S4t,arraysUnion:I4t,minNumber:C4t,maxNumber:T4t,commonMultiple:w4t,allEqual:R4t,booleanAnd:O4t,booleanOr:k4t,skip:N4t}});var UEe=_((YUr,$Ee)=>{"use strict";var P4t=ic(),Qn=DEe(),Pk=g7(),MEe={$id:Qn.skip,type:Qn.hybridArraysIntersection,enum:Qn.arraysIntersection,minLength:Qn.maxNumber,maxLength:Qn.minNumber,minimum:Qn.maxNumber,maximum:Qn.minNumber,multipleOf:Qn.commonMultiple,exclusiveMinimum:Qn.maxNumber,exclusiveMaximum:Qn.minNumber,minItems:Qn.maxNumber,maxItems:Qn.minNumber,maxProperties:Qn.minNumber,minProperties:Qn.maxNumber,const:Qn.allEqual,default:Qn.allEqual,format:Qn.allEqual,required:Qn.arraysUnion,properties:$4t,patternProperties:kk,additionalProperties:Ok,items:L4t,additionalItems:M4t,definitions:kk,$defs:kk,nullable:Qn.booleanAnd,oneOf:BEe,anyOf:BEe,allOf:Qn.arraysUnion,not:Ok,if:U4t,then:Qn.skip,else:Qn.skip,dependencies:LEe,dependentRequired:LEe,dependentSchemas:kk,propertyNames:Ok,uniqueItems:Qn.booleanOr,contains:Ok};function Ok(t,e,r,n,s){r[t]=iu(e,s)}function D4t(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 BEe(t,e,r,n,s){if(e.length===1){r[t]=e[0];return}let i=D4t(e),a=[];for(let o of i)try{let c=iu(o,s);c!==void 0&&a.push(c)}catch(c){if(c instanceof Pk.MergeError)continue;throw c}r[t]=a}function B4t(t,e){let{items:r,additionalItems:n}=t;return Array.isArray(r)?e<r.length?r[e]:n:r!==void 0?r:n}function L4t(t,e,r,n,s){let i=0;for(let o of e)Array.isArray(o)&&(i=Math.max(i,o.length));if(i===0){r[t]=iu(e,s);return}let a=[];for(let o=0;o<i;o++){let c=[];for(let u of n){let l=B4t(u,o);l!==void 0&&c.push(l)}a[o]=iu(c,s)}r[t]=a}function M4t(t,e,r,n,s){let i=!1;for(let o of n)if(Array.isArray(o.items)){i=!0;break}if(!i){r[t]=iu(e,s);return}let a=[];for(let o of n){let c=o.additionalItems;c===void 0&&!Array.isArray(o.items)&&(c=o.items),c!==void 0&&a.push(c)}r[t]=iu(a,s)}function W4t(t,e){let{properties:r,patternProperties:n,additionalProperties:s}=t;if(r?.[e]!==void 0)return r[e];for(let i of Object.keys(n??{}))if(new RegExp(i).test(e))return n[i];return s}function $4t(t,e,r,n,s){let i={};for(let o of n){let c=o.properties??{};for(let u of Object.keys(c)){if(i[u]!==void 0)continue;let l=c[u];i[u]=[l];for(let d of n){if(o===d)continue;let f=W4t(d,u);f!==void 0&&i[u].push(f)}}}let a={};for(let o of Object.keys(i)){let c=i[o];a[o]=iu(c,s)}r[t]=a}function kk(t,e,r,n,s){let i={};for(let o of e)for(let c of Object.keys(o))i[c]===void 0&&(i[c]=[]),i[c].push(o[c]);let a={};for(let o of Object.keys(i)){let c=i[o],u=iu(c,s);a[o]=u}r[t]=a}function U4t(t,e,r,n,s){for(let i=0;i<n.length;i++){let a={if:n[i].if,then:n[i].then,else:n[i].else};if(a.if!==void 0){if(r.if===void 0){r.if=a.if,a.then!==void 0&&(r.then=a.then),a.else!==void 0&&(r.else=a.else);continue}r.then!==void 0&&(r.then=iu([r.then,a],s)),r.else!==void 0&&(r.else=iu([r.else,a],s))}}}function LEe(t,e,r){let n={};for(let s of e)for(let i of Object.keys(s)){n[i]===void 0&&(n[i]=[]);let a=n[i];for(let o of s[i])a.includes(o)||a.push(o)}r[t]=n}function iu(t,e){if(t.length===0)return{};if(t.length===1)return t[0];let r={},n={},s=!0;for(let i of t){if(i===!1)return!1;if(i!==!0){s=!1;for(let a of Object.keys(i))n[a]===void 0&&(n[a]=[]),n[a].push(i[a])}}if(s)return!0;for(let i of Object.keys(n)){let a=n[i];(e.resolvers[i]??e.defaultResolver)(i,a,r,t,e)}return r}function WEe(t,e,r,n,s){let i=s.onConflict??"throw";if(e.length===1||i==="first"){r[t]=e[0];return}let a=!0;for(let o=1;o<e.length;o++)if(!P4t(e[o],e[0])){a=!1;break}if(a){r[t]=e[0];return}if(i==="throw")throw new Pk.ResolverNotFoundError(t,e);if(i!=="skip")throw new Pk.InvalidOnConflictOptionError(i)}function F4t(t,e={}){return e.defaultResolver===void 0&&(e.defaultResolver=WEe),e.resolvers={...MEe,...e.resolvers},iu(t,e)}$Ee.exports={mergeSchemas:F4t,keywordsResolvers:MEe,defaultResolver:WEe,...Pk}});var qEe=_((JUr,FEe)=>{"use strict";var{mergeSchemas:q4t}=UEe();function j4t(t){return q4t(t,{onConflict:"skip"})}FEe.exports=j4t});var JEe=_((XUr,KA)=>{"use strict";var{RefResolver:Q4t}=vEe(),H4t=h$(),G4t=fF(),lh=IEe(),jEe=NEe(),V4t=qEe(),K4t=/'/g,Dk=2e4,HEe="default",z4t=["floor","ceil","round","trunc"],GEe=["default","json-stringify"],mv=0;function A7(t,e){if(!jEe(t)){e?e=`"${e}" `:e="";let r=jEe.errors[0],n=new Error(`${e}schema is invalid: data${r.instancePath} ${r.message}`);throw n.errors=A7.errors,n}}function hv(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 lh(a,s,i);return a.$ref!==void 0?hv(t,o):o}function Bk(t,e){let r=t.refResolver.getSchema(e,"#");return new lh(r,e,"#")}function QEe(t,e){return t.$id&&t.$id.charAt(0)!=="#"?t.$id:e}function x7(t,e){A7(t),e=e||{};let r={functions:[],functionsCounter:0,functionsNamesBySchema:new Map,options:e,refResolver:new Q4t,rootSchemaId:t.$id||`__fjs_root_${mv++}`,validatorSchemasIds:new Set,mergedSchemasIds:new Map},n=QEe(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=QEe(d,l);r.refResolver.hasSchema(f)||(A7(d,l),r.refResolver.addSchema(d,l))}if(e.rounding&&!z4t.includes(e.rounding))throw new Error(`Unsupported integer rounding method ${e.rounding}`);if(e.largeArrayMechanism)if(GEe.includes(e.largeArrayMechanism))HEe=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)))Dk=Number.parseInt(e.largeArraySize,10);else if(typeof e.largeArraySize=="number"&&Number.isInteger(e.largeArraySize))Dk=e.largeArraySize;else if(typeof e.largeArraySize=="bigint")Dk=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 lh(t,r.rootSchemaId),i=No(r,s,"input"),a=`
const JSON_STR_BEGIN_OBJECT = '{'
const JSON_STR_END_OBJECT = '}'
const JSON_STR_BEGIN_ARRAY = '['
const JSON_STR_END_ARRAY = ']'
const JSON_STR_COMMA = ','
const JSON_STR_COLONS = ':'
const JSON_STR_QUOTE = '"'
const JSON_STR_EMPTY_OBJECT = JSON_STR_BEGIN_OBJECT + JSON_STR_END_OBJECT
const JSON_STR_EMPTY_ARRAY = JSON_STR_BEGIN_ARRAY + JSON_STR_END_ARRAY
const JSON_STR_EMPTY_STRING = JSON_STR_QUOTE + JSON_STR_QUOTE
const JSON_STR_NULL = 'null'
`;i==="json += anonymous0(input)"?a+=`
${r.functions.join(`
`)}
const main = anonymous0
return main
`:a+=`
function main (input) {
let json = ''
${i}
return json
}
${r.functions.join(`
`)}
return main
`;let o=new H4t(e),c=new G4t(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[m,p]of Object.entries(f))c.addSchema(p,m)}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"?mF()(u,r,o,c):u(c,o)}var Y4t=["properties","required","additionalProperties","patternProperties","maxProperties","minProperties","dependencies"],J4t=["items","additionalItems","maxItems","minItems","uniqueItems","contains"],X4t=["maxLength","minLength","pattern"],Z4t=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum"];function eBt(t){for(var e of Y4t)if(e in t)return"object";for(var e of J4t)if(e in t)return"array";for(var e of X4t)if(e in t)return"string";for(var e of Z4t)if(e in t)return"number";return t.type}function tBt(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 (
propertiesKeys.includes(key) ||
value === undefined ||
typeof value === 'function' ||
typeof value === 'symbol'
) continue
`,a=e.getPropertyLocation("patternProperties"),o=a.schema;if(o!==void 0)for(let l in o){let d=a.getPropertyLocation(l);i+=`
if (/${l.replace(/\\*\//g,"\\/")}/.test(key)) {
${r}
json += serializer.asString(key) + JSON_STR_COLONS
${No(t,d,"value")}
continue
}
`}let u=e.getPropertyLocation("additionalProperties").schema;if(u!==void 0)if(u===!0)i+=`
${r}
json += serializer.asString(key) + JSON_STR_COLONS + JSON.stringify(value)
`;else{let l=e.getPropertyLocation("additionalProperties");i+=`
${r}
json += serializer.asString(key) + JSON_STR_COLONS
${No(t,l,"value")}
`}return i+=`
}
`,i}function rBt(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=hv(t,l));let d=JSON.stringify(u),f=l.schema.default,m=s.includes(u);o+=`
value = obj[${d}]
if (value !== undefined) {
${c}
json += ${JSON.stringify(d+":")}
${No(t,l,"value")}
}`,f!==void 0?o+=` else {
${c}
json += ${JSON.stringify(d+":"+JSON.stringify(f))}
}
`:m?o+=` else {
throw new Error('${d.replace(/'/g,"\\'")} is required!')
}
`:o+=`
`,a&&(c="json += ','")}return(r.patternProperties||r.additionalProperties)&&(o+=tBt(t,e,c)),o+=`
return json + JSON_STR_END_OBJECT
`,o}function Lk(t,e,r){for(let a=0;a<r.length;a++){let o=r[a];o.schema.$ref&&(r[a]=hv(t,o))}let n=[];for(let a of r){let o=VEe(t,a.schema,a.schemaId);delete o.$id,n.push(o)}let s=V4t(n),i=new lh(s,e);return t.refResolver.addSchema(s,e),i}function VEe(t,e,r){let n=Array.isArray(e)?[]:{};e.$id!==void 0&&e.$id.charAt(0)!=="#"&&(r=e.$id);let s=t.mergedSchemasIds.get(e);s&&t.mergedSchemasIds.set(n,s);for(let i in e){let a=e[i];i==="$ref"&&typeof a=="string"&&a.charAt(0)==="#"&&(a=r+a),typeof a=="object"&&a!==null&&(a=VEe(t,a,r)),n[i]=a}return n}function nBt(t){return`(${t} && typeof ${t}.toJSON === 'function')
? ${t}.toJSON()
: ${t}
`}function sBt(t,e){let r=e.schema;if(t.functionsNamesBySchema.has(r))return t.functionsNamesBySchema.get(r);let n=zEe(t);t.functionsNamesBySchema.set(r,n);let s=e.getSchemaRef();s.startsWith(t.rootSchemaId)&&(s=s.replace(t.rootSchemaId,""));let i=`
`,a=r.nullable===!0;return i+=`
// ${s}
function ${n} (input) {
const obj = ${nBt("input")}
${a?"":"if (obj === null) return JSON_STR_EMPTY_OBJECT"}
${rBt(t,e)}
}
`,t.functions.push(i),n}function iBt(t,e){let r=e.schema,n=e.getPropertyLocation("items");n.schema=n.schema||{},n.schema.$ref&&(n=hv(t,n));let s=n.schema;if(t.functionsNamesBySchema.has(r))return t.functionsNamesBySchema.get(r);let i=zEe(t);t.functionsNamesBySchema.set(r,i);let a=e.getSchemaRef();a.startsWith(t.rootSchemaId)&&(a=a.replace(t.rootSchemaId,""));let o=`
function ${i} (obj) {
// ${a}
`,c=r.nullable===!0;if(o+=`
${c?"":"if (obj === null) return JSON_STR_EMPTY_ARRAY"}
if (!Array.isArray(obj)) {
throw new TypeError(\`The value of '${a}' does not match schema definition.\`)
}
const arrayLength = obj.length
`,!r.additionalItems&&Array.isArray(s)&&(o+=`
if (arrayLength > ${s.length}) {
throw new Error(\`Item at ${s.length} does not match schema definition.\`)
}
`),HEe==="json-stringify"&&(o+=`if (arrayLength >= ${Dk}) return JSON.stringify(obj)
`),o+=`
const arrayEnd = arrayLength - 1
let value
let json = ''
`,Array.isArray(s)){for(let u=0;u<s.length;u++){let l=s[u];o+=`value = obj[${u}]`;let d=No(t,n.getPropertyLocation(u),"value");o+=`
if (${u} < arrayLength) {
if (${KEe(l.type,`[${u}]`)}) {
${d}
if (${u} < arrayEnd) {
json += JSON_STR_COMMA
}
} else {
throw new Error(\`Item at ${u} does not match schema definition.\`)
}
}
`}r.additionalItems&&(o+=`
for (let i = ${s.length}; i < arrayLength; i++) {
json += JSON.stringify(obj[i])
if (i < arrayEnd) {
json += JSON_STR_COMMA
}
}`)}else{let u=No(t,n,"obj[i]");o+=`
for (let i = 0; i < arrayLength; i++) {
${u}
if (i < arrayEnd) {
json += JSON_STR_COMMA
}
}`}return o+=`
return JSON_STR_BEGIN_ARRAY + json + JSON_STR_END_ARRAY
}`,t.functions.push(o),i}function KEe(t,e){let r;switch(t){case"null":r="value === null";break;case"string":r=`typeof value === 'string' ||
value === null ||
value instanceof Date ||
value instanceof RegExp ||
(
typeof value === "object" &&
typeof value.toString === "function" &&
value.toString !== Object.prototype.toString
)`;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=>KEe(s,e)).join(" || ")})`)}return r}function zEe(t){return"anonymous"+t.functionsCounter++}function aBt(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=YEe(t,e,r),l=c===0?"if":"else if";switch(o){case"null":i+=`
${l} (${r} === null)
${u}
`;break;case"string":{i+=`
${l}(
typeof ${r} === "string" ||
${r} === null ||
${r} instanceof Date ||
${r} instanceof RegExp ||
(
typeof ${r} === "object" &&
typeof ${r}.toString === "function" &&
${r}.toString !== Object.prototype.toString
)
)
${u}
`;break}case"array":{i+=`
${l}(Array.isArray(${r}))
${u}
`;break}case"integer":{i+=`
${l}(Number.isInteger(${r}) || ${r} === null)
${u}
`;break}default:{i+=`
${l}(typeof ${r} === "${o}" || ${r} === null)
${u}
`;break}}});let a=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 YEe(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
} else if (${r} instanceof Date) {
json += JSON_STR_QUOTE + ${r}.toISOString() + JSON_STR_QUOTE
} else if (${r} instanceof RegExp) {
json += serializer.asString(${r}.source)
} else {
json += serializer.asString(${r}.toString())
}
} else {
json += serializer.asString(${r})
}
`;case"integer":return`json += serializer.asInteger(${r})`;case"number":return`json += serializer.asNumber(${r})`;case"boolean":return`json += serializer.asBoolean(${r})`;case"object":return`json += ${sBt(t,e)}(${r})`;case"array":return`json += ${iBt(t,e)}(${r})`;case void 0:return`json += JSON.stringify(${r})`;default:throw new Error(`${n.type} unsupported`)}}function oBt(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(K4t,"\\'")}'`,s&&(i+=`
}
`),i}function cBt(t,e,r){let n=e.schema,s=t.mergedSchemasIds.get(n);if(s){let l=Bk(t,s);return No(t,l,r)}s=`__fjs_merged_${mv++}`,t.mergedSchemasIds.set(n,s);let{allOf:i,...a}=e.schema,o=[new lh(a,e.schemaId,e.jsonPointer)],c=e.getPropertyLocation("allOf");for(let l=0;l<i.length;l++)o.push(c.getPropertyLocation(l));let u=Lk(t,s,o);return No(t,u,r)}function uBt(t,e,r){t.validatorSchemasIds.add(e.schemaId);let s=e.schema.anyOf?"anyOf":"oneOf",{[s]:i,...a}=e.schema,o=new lh(a,e.schemaId,e.jsonPointer),c=e.getPropertyLocation(s),u="";for(let d=0;d<i.length;d++){let f=c.getPropertyLocation(d),m=f.schema,p=t.mergedSchemasIds.get(m),h=null;p?h=Bk(t,p):(p=`__fjs_merged_${mv++}`,t.mergedSchemasIds.set(m,p),h=Lk(t,p,[o,f]));let y=No(t,h,r),g=f.getSchemaRef();u+=`
${d===0?"if":"else if"}(validator.validate("${g}", ${r}))
${y}
`}let l=e.getSchemaRef();return l.startsWith(t.rootSchemaId)&&(l=l.replace(t.rootSchemaId,"")),u+=`
else throw new TypeError(\`The value of '${l}' does not match schema definition.\`)
`,u}function lBt(t,e,r){t.validatorSchemasIds.add(e.schemaId);let{if:n,then:s,else:i,...a}=e.schema,o=new lh(a,e.schemaId,e.jsonPointer),u=e.getPropertyLocation("if").getSchemaRef(),l=e.getPropertyLocation("then"),d=t.mergedSchemasIds.get(s),f=null;if(d?f=Bk(t,d):(d=`__fjs_merged_${mv++}`,t.mergedSchemasIds.set(s,d),f=Lk(t,d,[o,l])),!i)return`
if (validator.validate("${u}", ${r})) {
${No(t,f,r)}
} else {
${No(t,o,r)}
}
`;let m=e.getPropertyLocation("else"),p=t.mergedSchemasIds.get(i),h=null;return p?h=Bk(t,p):(p=`__fjs_merged_${mv++}`,t.mergedSchemasIds.set(i,p),h=Lk(t,p,[o,m])),`
if (validator.validate("${u}", ${r})) {
${No(t,f,r)}
} else {
${No(t,h,r)}
}
`}function No(t,e,r){let n=e.schema;if(typeof n=="boolean")return`json += JSON.stringify(${r})`;if(n.$ref&&(e=hv(t,e),n=e.schema),n.allOf)return cBt(t,e,r);if(n.anyOf||n.oneOf)return uBt(t,e,r);if(n.if&&n.then)return lBt(t,e,r);if(n.type===void 0){let o=eBt(n);o&&(n.type=o)}let s="",i=n.type,a=n.nullable===!0;return a&&(s+=`
if (${r} === null) {
json += JSON_STR_NULL
} else {
`),n.const!==void 0?s+=oBt(e,r):Array.isArray(i)?s+=aBt(t,e,r):s+=YEe(t,e,r),a&&(s+=`
}
`),s}KA.exports=x7;KA.exports.default=x7;KA.exports.build=x7;KA.exports.validLargeArrayMechanisms=GEe;KA.exports.restore=function({code:t,validator:e,serializer:r}){return Function.apply(null,["validator","serializer",t]).apply(null,[e,r])}});var ZEe=_((ZUr,b7)=>{"use strict";var dBt=_7();function XEe(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=dBt();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)}}}b7.exports=XEe;b7.exports.default=XEe});var _7=_((eFr,gv)=>{"use strict";var fBt=JEe();function E7(){return function(e,r){let n=Object.assign({},r,{schema:e});return pBt.bind(null,n)}}function pBt(t,{schema:e}){return t.schema&&e.$id&&t.schema[e.$id]&&(t.schema={...t.schema},delete t.schema[e.$id]),fBt(e,t)}gv.exports=E7;gv.exports.default=E7;gv.exports.SerializerSelector=E7;gv.exports.StandaloneSerializer=ZEe()});var zA=_($r=>{"use strict";Object.defineProperty($r,"__esModule",{value:!0});$r.regexpCode=$r.getEsmExportName=$r.getProperty=$r.safeStringify=$r.stringify=$r.strConcat=$r.addCodeArg=$r.str=$r._=$r.nil=$r._Code=$r.Name=$r.IDENTIFIER=$r._CodeOrName=void 0;var yv=class{};$r._CodeOrName=yv;$r.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var dh=class extends yv{constructor(e){if(super(),!$r.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};$r.Name=dh;var dc=class extends yv{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 dh&&(r[n.str]=(r[n.str]||0)+1),r),{})}};$r._Code=dc;$r.nil=new dc("");function eve(t,...e){let r=[t[0]],n=0;for(;n<e.length;)S7(r,e[n]),r.push(t[++n]);return new dc(r)}$r._=eve;var v7=new dc("+");function tve(t,...e){let r=[Av(t[0])],n=0;for(;n<e.length;)r.push(v7),S7(r,e[n]),r.push(v7,Av(t[++n]));return mBt(r),new dc(r)}$r.str=tve;function S7(t,e){e instanceof dc?t.push(...e._items):e instanceof dh?t.push(e):t.push(yBt(e))}$r.addCodeArg=S7;function mBt(t){let e=1;for(;e<t.length-1;){if(t[e]===v7){let r=hBt(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function hBt(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof dh||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof dh))return`"${t}${e.slice(1)}`}function gBt(t,e){return e.emptyStr()?t:t.emptyStr()?e:tve`${t}${e}`}$r.strConcat=gBt;function yBt(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Av(Array.isArray(t)?t.join(","):t)}function ABt(t){return new dc(Av(t))}$r.stringify=ABt;function Av(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}$r.safeStringify=Av;function xBt(t){return typeof t=="string"&&$r.IDENTIFIER.test(t)?new dc(`.${t}`):eve`[${t}]`}$r.getProperty=xBt;function bBt(t){if(typeof t=="string"&&$r.IDENTIFIER.test(t))return new dc(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}$r.getEsmExportName=bBt;function _Bt(t){return new dc(t.toString())}$r.regexpCode=_Bt});var Uk=_(Ga=>{"use strict";Object.defineProperty(Ga,"__esModule",{value:!0});Ga.ValueScope=Ga.ValueScopeName=Ga.Scope=Ga.varKinds=Ga.UsedValueState=void 0;var Ha=zA(),I7=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Mk;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Mk||(Ga.UsedValueState=Mk={}));Ga.varKinds={const:new Ha.Name("const"),let:new Ha.Name("let"),var:new Ha.Name("var")};var Wk=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ha.Name?e:this.name(e)}name(e){return new Ha.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ga.Scope=Wk;var $k=class extends Ha.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ha._)`.${new Ha.Name(r)}[${n}]`}};Ga.ValueScopeName=$k;var EBt=(0,Ha._)`\n`,C7=class extends Wk{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?EBt:Ha.nil}}get(){return this._scope}name(e){return new $k(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ha._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Ha.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,Mk.Started);let l=r(u);if(l){let d=this.opts.es5?Ga.varKinds.var:Ga.varKinds.const;i=(0,Ha._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Ha._)`${i}${l}${this.opts._n}`;else throw new I7(u);c.set(u,Mk.Completed)})}return i}};Ga.ValueScope=C7});var _t=_(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.or=nr.and=nr.not=nr.CodeGen=nr.operators=nr.varKinds=nr.ValueScopeName=nr.ValueScope=nr.Scope=nr.Name=nr.regexpCode=nr.stringify=nr.getProperty=nr.nil=nr.strConcat=nr.str=nr._=void 0;var Sr=zA(),au=Uk(),Vp=zA();Object.defineProperty(nr,"_",{enumerable:!0,get:function(){return Vp._}});Object.defineProperty(nr,"str",{enumerable:!0,get:function(){return Vp.str}});Object.defineProperty(nr,"strConcat",{enumerable:!0,get:function(){return Vp.strConcat}});Object.defineProperty(nr,"nil",{enumerable:!0,get:function(){return Vp.nil}});Object.defineProperty(nr,"getProperty",{enumerable:!0,get:function(){return Vp.getProperty}});Object.defineProperty(nr,"stringify",{enumerable:!0,get:function(){return Vp.stringify}});Object.defineProperty(nr,"regexpCode",{enumerable:!0,get:function(){return Vp.regexpCode}});Object.defineProperty(nr,"Name",{enumerable:!0,get:function(){return Vp.Name}});var Qk=Uk();Object.defineProperty(nr,"Scope",{enumerable:!0,get:function(){return Qk.Scope}});Object.defineProperty(nr,"ValueScope",{enumerable:!0,get:function(){return Qk.ValueScope}});Object.defineProperty(nr,"ValueScopeName",{enumerable:!0,get:function(){return Qk.ValueScopeName}});Object.defineProperty(nr,"varKinds",{enumerable:!0,get:function(){return Qk.varKinds}});nr.operators={GT:new Sr._Code(">"),GTE:new Sr._Code(">="),LT:new Sr._Code("<"),LTE:new Sr._Code("<="),EQ:new Sr._Code("==="),NEQ:new Sr._Code("!=="),NOT:new Sr._Code("!"),OR:new Sr._Code("||"),AND:new Sr._Code("&&"),ADD:new Sr._Code("+")};var Fd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},T7=class extends Fd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?au.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=JA(this.rhs,e,r)),this}get names(){return this.rhs instanceof Sr._CodeOrName?this.rhs.names:{}}},Fk=class extends Fd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Sr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=JA(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Sr.Name?{}:{...this.lhs.names};return jk(e,this.rhs)}},w7=class extends Fk{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},R7=class extends Fd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},N7=class extends Fd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},O7=class extends Fd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},k7=class extends Fd{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=JA(this.code,e,r),this}get names(){return this.code instanceof Sr._CodeOrName?this.code.names:{}}},xv=class extends Fd{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)||(vBt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>mh(e,r.names),{})}},qd=class extends xv{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},P7=class extends xv{},YA=class extends qd{};YA.kind="else";var fh=class t extends qd{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 YA(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(rve(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=JA(this.condition,e,r),this}get names(){let e=super.names;return jk(e,this.condition),this.else&&mh(e,this.else.names),e}};fh.kind="if";var ph=class extends qd{};ph.kind="for";var D7=class extends ph{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=JA(this.iteration,e,r),this}get names(){return mh(super.names,this.iteration.names)}},B7=class extends ph{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?au.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=jk(super.names,this.from);return jk(e,this.to)}},qk=class extends ph{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=JA(this.iterable,e,r),this}get names(){return mh(super.names,this.iterable.names)}},bv=class extends qd{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)}};bv.kind="func";var _v=class extends xv{render(e){return"return "+super.render(e)}};_v.kind="return";var L7=class extends qd{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&&mh(e,this.catch.names),this.finally&&mh(e,this.finally.names),e}},Ev=class extends qd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Ev.kind="catch";var vv=class extends qd{render(e){return"finally"+super.render(e)}};vv.kind="finally";var M7=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
`:""},this._extScope=e,this._scope=new au.Scope({parent:e}),this._nodes=[new P7]}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 T7(e,i,n)),i}const(e,r,n){return this._def(au.varKinds.const,e,r,n)}let(e,r,n){return this._def(au.varKinds.let,e,r,n)}var(e,r,n){return this._def(au.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Fk(e,r,n))}add(e,r){return this._leafNode(new w7(e,nr.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Sr.nil&&this._leafNode(new k7(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,Sr.addCodeArg)(r,s));return r.push("}"),new Sr._Code(r)}if(e,r,n){if(this._blockNode(new fh(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 fh(e))}else(){return this._elseNode(new YA)}endIf(){return this._endBlockNode(fh,YA)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new D7(e),r)}forRange(e,r,n,s,i=this.opts.es5?au.varKinds.var:au.varKinds.let){let a=this._scope.toName(e);return this._for(new B7(i,a,r,n),()=>s(a))}forOf(e,r,n,s=au.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Sr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Sr._)`${a}.length`,o=>{this.var(i,(0,Sr._)`${a}[${o}]`),n(i)})}return this._for(new qk("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?au.varKinds.var:au.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Sr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new qk("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(ph)}label(e){return this._leafNode(new R7(e))}break(e){return this._leafNode(new N7(e))}return(e){let r=new _v;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(_v)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new L7;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new Ev(i),r(i)}return n&&(this._currNode=s.finally=new vv,this.code(n)),this._endBlockNode(Ev,vv)}throw(e){return this._leafNode(new O7(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Sr.nil,n,s){return this._blockNode(new bv(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(bv)}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 fh))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};nr.CodeGen=M7;function mh(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function jk(t,e){return e instanceof Sr._CodeOrName?mh(t,e.names):t}function JA(t,e,r){if(t instanceof Sr.Name)return n(t);if(!s(t))return t;return new Sr._Code(t._items.reduce((i,a)=>(a instanceof Sr.Name&&(a=n(a)),a instanceof Sr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof Sr._Code&&i._items.some(a=>a instanceof Sr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function vBt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function rve(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Sr._)`!${W7(t)}`}nr.not=rve;var SBt=nve(nr.operators.AND);function IBt(...t){return t.reduce(SBt)}nr.and=IBt;var CBt=nve(nr.operators.OR);function TBt(...t){return t.reduce(CBt)}nr.or=TBt;function nve(t){return(e,r)=>e===Sr.nil?r:r===Sr.nil?e:(0,Sr._)`${W7(e)} ${t} ${W7(r)}`}function W7(t){return t instanceof Sr.Name?t:(0,Sr._)`(${t})`}});var Yt=_(cr=>{"use strict";Object.defineProperty(cr,"__esModule",{value:!0});cr.checkStrictMode=cr.getErrorPath=cr.Type=cr.useFunc=cr.setEvaluated=cr.evaluatedPropsToName=cr.mergeEvaluated=cr.eachItem=cr.unescapeJsonPointer=cr.escapeJsonPointer=cr.escapeFragment=cr.unescapeFragment=cr.schemaRefOrVal=cr.schemaHasRulesButRef=cr.schemaHasRules=cr.checkUnknownRules=cr.alwaysValidSchema=cr.toHash=void 0;var fn=_t(),wBt=zA();function RBt(t){let e={};for(let r of t)e[r]=!0;return e}cr.toHash=RBt;function NBt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(ave(t,e),!ove(e,t.self.RULES.all))}cr.alwaysValidSchema=NBt;function ave(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]||lve(t,`unknown keyword: "${i}"`)}cr.checkUnknownRules=ave;function ove(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}cr.schemaHasRules=ove;function OBt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}cr.schemaHasRulesButRef=OBt;function kBt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,fn._)`${r}`}return(0,fn._)`${t}${e}${(0,fn.getProperty)(n)}`}cr.schemaRefOrVal=kBt;function PBt(t){return cve(decodeURIComponent(t))}cr.unescapeFragment=PBt;function DBt(t){return encodeURIComponent(U7(t))}cr.escapeFragment=DBt;function U7(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}cr.escapeJsonPointer=U7;function cve(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}cr.unescapeJsonPointer=cve;function BBt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}cr.eachItem=BBt;function sve({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof fn.Name?(i instanceof fn.Name?t(s,i,a):e(s,i,a),a):i instanceof fn.Name?(e(s,a,i),i):r(i,a);return o===fn.Name&&!(c instanceof fn.Name)?n(s,c):c}}cr.mergeEvaluated={props:sve({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} || {}`),F7(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:uve}),items:sve({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 uve(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,fn._)`{}`);return e!==void 0&&F7(t,r,e),r}cr.evaluatedPropsToName=uve;function F7(t,e,r){Object.keys(r).forEach(n=>t.assign((0,fn._)`${e}${(0,fn.getProperty)(n)}`,!0))}cr.setEvaluated=F7;var ive={};function LBt(t,e){return t.scopeValue("func",{ref:e,code:ive[e.code]||(ive[e.code]=new wBt._Code(e.code))})}cr.useFunc=LBt;var $7;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})($7||(cr.Type=$7={}));function MBt(t,e,r){if(t instanceof fn.Name){let n=e===$7.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():"/"+U7(t)}cr.getErrorPath=MBt;function lve(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}cr.checkStrictMode=lve});var fc=_(q7=>{"use strict";Object.defineProperty(q7,"__esModule",{value:!0});var qi=_t(),WBt={data:new qi.Name("data"),valCxt:new qi.Name("valCxt"),instancePath:new qi.Name("instancePath"),parentData:new qi.Name("parentData"),parentDataProperty:new qi.Name("parentDataProperty"),rootData:new qi.Name("rootData"),dynamicAnchors:new qi.Name("dynamicAnchors"),vErrors:new qi.Name("vErrors"),errors:new qi.Name("errors"),this:new qi.Name("this"),self:new qi.Name("self"),scope:new qi.Name("scope"),json:new qi.Name("json"),jsonPos:new qi.Name("jsonPos"),jsonLen:new qi.Name("jsonLen"),jsonPart:new qi.Name("jsonPart")};q7.default=WBt});var Sv=_(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});ji.extendErrors=ji.resetErrorsCount=ji.reportExtraError=ji.reportError=ji.keyword$DataError=ji.keywordError=void 0;var Or=_t(),Hk=Yt(),ma=fc();ji.keywordError={message:({keyword:t})=>(0,Or.str)`must pass "${t}" keyword validation`};ji.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Or.str)`"${t}" keyword must be ${e} ($data)`:(0,Or.str)`"${t}" keyword is invalid ($data)`};function $Bt(t,e=ji.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=pve(t,e,r);n??(a||o)?dve(i,c):fve(s,(0,Or._)`[${c}]`)}ji.reportError=$Bt;function UBt(t,e=ji.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=pve(t,e,r);dve(s,o),i||a||fve(n,ma.default.vErrors)}ji.reportExtraError=UBt;function FBt(t,e){t.assign(ma.default.errors,e),t.if((0,Or._)`${ma.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Or._)`${ma.default.vErrors}.length`,e),()=>t.assign(ma.default.vErrors,null)))}ji.resetErrorsCount=FBt;function qBt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ma.default.errors,o=>{t.const(a,(0,Or._)`${ma.default.vErrors}[${o}]`),t.if((0,Or._)`${a}.instancePath === undefined`,()=>t.assign((0,Or._)`${a}.instancePath`,(0,Or.strConcat)(ma.default.instancePath,i.errorPath))),t.assign((0,Or._)`${a}.schemaPath`,(0,Or.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Or._)`${a}.schema`,r),t.assign((0,Or._)`${a}.data`,n))})}ji.extendErrors=qBt;function dve(t,e){let r=t.const("err",e);t.if((0,Or._)`${ma.default.vErrors} === null`,()=>t.assign(ma.default.vErrors,(0,Or._)`[${r}]`),(0,Or._)`${ma.default.vErrors}.push(${r})`),t.code((0,Or._)`${ma.default.errors}++`)}function fve(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Or._)`new ${t.ValidationError}(${e})`):(r.assign((0,Or._)`${n}.errors`,e),r.return(!1))}var hh={keyword:new Or.Name("keyword"),schemaPath:new Or.Name("schemaPath"),params:new Or.Name("params"),propertyName:new Or.Name("propertyName"),message:new Or.Name("message"),schema:new Or.Name("schema"),parentSchema:new Or.Name("parentSchema")};function pve(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Or._)`{}`:jBt(t,e,r)}function jBt(t,e,r={}){let{gen:n,it:s}=t,i=[QBt(s,r),HBt(t,r)];return GBt(t,e,i),n.object(...i)}function QBt({errorPath:t},{instancePath:e}){let r=e?(0,Or.str)`${t}${(0,Hk.getErrorPath)(e,Hk.Type.Str)}`:t;return[ma.default.instancePath,(0,Or.strConcat)(ma.default.instancePath,r)]}function HBt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Or.str)`${e}/${t}`;return r&&(s=(0,Or.str)`${s}${(0,Hk.getErrorPath)(r,Hk.Type.Str)}`),[hh.schemaPath,s]}function GBt(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([hh.keyword,s],[hh.params,typeof e=="function"?e(t):e||(0,Or._)`{}`]),c.messages&&n.push([hh.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([hh.schema,a],[hh.parentSchema,(0,Or._)`${l}${d}`],[ma.default.data,i]),u&&n.push([hh.propertyName,u])}});var hve=_(XA=>{"use strict";Object.defineProperty(XA,"__esModule",{value:!0});XA.boolOrEmptySchema=XA.topBoolOrEmptySchema=void 0;var VBt=Sv(),KBt=_t(),zBt=fc(),YBt={message:"boolean schema is false"};function JBt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?mve(t,!1):typeof r=="object"&&r.$async===!0?e.return(zBt.default.data):(e.assign((0,KBt._)`${n}.errors`,null),e.return(!0))}XA.topBoolOrEmptySchema=JBt;function XBt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),mve(t)):r.var(e,!0)}XA.boolOrEmptySchema=XBt;function mve(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,VBt.reportError)(s,YBt,void 0,e)}});var j7=_(ZA=>{"use strict";Object.defineProperty(ZA,"__esModule",{value:!0});ZA.getRules=ZA.isJSONType=void 0;var ZBt=["string","number","integer","boolean","null","object","array"],eLt=new Set(ZBt);function tLt(t){return typeof t=="string"&&eLt.has(t)}ZA.isJSONType=tLt;function rLt(){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:{}}}ZA.getRules=rLt});var Q7=_(Kp=>{"use strict";Object.defineProperty(Kp,"__esModule",{value:!0});Kp.shouldUseRule=Kp.shouldUseGroup=Kp.schemaHasRulesForType=void 0;function nLt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&gve(t,n)}Kp.schemaHasRulesForType=nLt;function gve(t,e){return e.rules.some(r=>yve(t,r))}Kp.shouldUseGroup=gve;function yve(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))}Kp.shouldUseRule=yve});var Iv=_(Qi=>{"use strict";Object.defineProperty(Qi,"__esModule",{value:!0});Qi.reportTypeError=Qi.checkDataTypes=Qi.checkDataType=Qi.coerceAndCheckDataType=Qi.getJSONTypes=Qi.getSchemaTypes=Qi.DataType=void 0;var sLt=j7(),iLt=Q7(),aLt=Sv(),Qt=_t(),Ave=Yt(),ex;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(ex||(Qi.DataType=ex={}));function oLt(t){let e=xve(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}Qi.getSchemaTypes=oLt;function xve(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(sLt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Qi.getJSONTypes=xve;function cLt(t,e){let{gen:r,data:n,opts:s}=t,i=uLt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,iLt.schemaHasRulesForType)(t,e[0]));if(a){let o=G7(e,n,s.strictNumbers,ex.Wrong);r.if(o,()=>{i.length?lLt(t,e,i):V7(t)})}return a}Qi.coerceAndCheckDataType=cLt;var bve=new Set(["string","number","integer","boolean","null"]);function uLt(t,e){return e?t.filter(r=>bve.has(r)||e==="array"&&r==="array"):[]}function lLt(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(G7(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Qt._)`${o} !== undefined`);for(let u of r)(bve.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),V7(t),n.endIf(),n.if((0,Qt._)`${o} !== undefined`,()=>{n.assign(s,o),dLt(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 dLt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Qt._)`${e} !== undefined`,()=>t.assign((0,Qt._)`${e}[${r}]`,n))}function H7(t,e,r,n=ex.Correct){let s=n===ex.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===ex.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)}}Qi.checkDataType=H7;function G7(t,e,r,n){if(t.length===1)return H7(t[0],e,r,n);let s,i=(0,Ave.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,H7(a,e,r,n));return s}Qi.checkDataTypes=G7;var fLt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Qt._)`{type: ${t}}`:(0,Qt._)`{type: ${e}}`};function V7(t){let e=pLt(t);(0,aLt.reportError)(e,fLt)}Qi.reportTypeError=V7;function pLt(t){let{gen:e,data:r,schema:n}=t,s=(0,Ave.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var Eve=_(Gk=>{"use strict";Object.defineProperty(Gk,"__esModule",{value:!0});Gk.assignDefaults=void 0;var tx=_t(),mLt=Yt();function hLt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)_ve(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>_ve(t,i,s.default))}Gk.assignDefaults=hLt;function _ve(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,tx._)`${i}${(0,tx.getProperty)(e)}`;if(s){(0,mLt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,tx._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,tx._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,tx._)`${o} = ${(0,tx.stringify)(r)}`)}});var xi=_(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.validateUnion=Zr.validateArray=Zr.usePattern=Zr.callValidateCode=Zr.schemaProperties=Zr.allSchemaProperties=Zr.noPropertyInData=Zr.propertyInData=Zr.isOwnProperty=Zr.hasPropFunc=Zr.reportMissingProp=Zr.checkMissingProp=Zr.checkReportMissingProp=void 0;var kn=_t(),K7=Yt(),zp=fc(),gLt=Yt();function yLt(t,e){let{gen:r,data:n,it:s}=t;r.if(Y7(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,kn._)`${e}`},!0),t.error()})}Zr.checkReportMissingProp=yLt;function ALt({gen:t,data:e,it:{opts:r}},n,s){return(0,kn.or)(...n.map(i=>(0,kn.and)(Y7(t,e,i,r.ownProperties),(0,kn._)`${s} = ${i}`)))}Zr.checkMissingProp=ALt;function xLt(t,e){t.setParams({missingProperty:e},!0),t.error()}Zr.reportMissingProp=xLt;function vve(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,kn._)`Object.prototype.hasOwnProperty`})}Zr.hasPropFunc=vve;function z7(t,e,r){return(0,kn._)`${vve(t)}.call(${e}, ${r})`}Zr.isOwnProperty=z7;function bLt(t,e,r,n){let s=(0,kn._)`${e}${(0,kn.getProperty)(r)} !== undefined`;return n?(0,kn._)`${s} && ${z7(t,e,r)}`:s}Zr.propertyInData=bLt;function Y7(t,e,r,n){let s=(0,kn._)`${e}${(0,kn.getProperty)(r)} === undefined`;return n?(0,kn.or)(s,(0,kn.not)(z7(t,e,r))):s}Zr.noPropertyInData=Y7;function Sve(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Zr.allSchemaProperties=Sve;function _Lt(t,e){return Sve(e).filter(r=>!(0,K7.alwaysValidSchema)(t,e[r]))}Zr.schemaProperties=_Lt;function ELt({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,kn._)`${t}, ${e}, ${n}${s}`:e,d=[[zp.default.instancePath,(0,kn.strConcat)(zp.default.instancePath,i)],[zp.default.parentData,a.parentData],[zp.default.parentDataProperty,a.parentDataProperty],[zp.default.rootData,zp.default.rootData]];a.opts.dynamicRef&&d.push([zp.default.dynamicAnchors,zp.default.dynamicAnchors]);let f=(0,kn._)`${l}, ${r.object(...d)}`;return c!==kn.nil?(0,kn._)`${o}.call(${c}, ${f})`:(0,kn._)`${o}(${f})`}Zr.callValidateCode=ELt;var vLt=(0,kn._)`new RegExp`;function SLt({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,kn._)`${s.code==="new RegExp"?vLt:(0,gLt.useFunc)(t,s)}(${r}, ${n})`})}Zr.usePattern=SLt;function ILt(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,kn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:K7.Type.Num},i),e.if((0,kn.not)(i),o)})}}Zr.validateArray=ILt;function CLt(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,K7.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,kn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,kn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}Zr.validateUnion=CLt});var Tve=_(ul=>{"use strict";Object.defineProperty(ul,"__esModule",{value:!0});ul.validateKeywordUsage=ul.validSchemaType=ul.funcKeywordCode=ul.macroKeywordCode=void 0;var ha=_t(),gh=fc(),TLt=xi(),wLt=Sv();function RLt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=Cve(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ha.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}ul.macroKeywordCode=RLt;function NLt(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;kLt(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=Cve(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&&Ive(t),y(()=>t.error());else{let g=e.async?m():p();e.modifying&&Ive(t),y(()=>OLt(t,g))}}function m(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ha._)`await `),A=>n.assign(d,!1).if((0,ha._)`${A} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ha._)`${A}.errors`),()=>n.throw(A))),g}function p(){let g=(0,ha._)`${l}.errors`;return n.assign(g,null),h(ha.nil),g}function h(g=e.async?(0,ha._)`await `:ha.nil){let A=c.opts.passContext?gh.default.this:gh.default.self,b=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ha._)`${g}${(0,TLt.callValidateCode)(t,l,A,b)}`,e.modifying)}function y(g){var A;n.if((0,ha.not)((A=e.valid)!==null&&A!==void 0?A:d),g)}}ul.funcKeywordCode=NLt;function Ive(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ha._)`${n.parentData}[${n.parentDataProperty}]`))}function OLt(t,e){let{gen:r}=t;r.if((0,ha._)`Array.isArray(${e})`,()=>{r.assign(gh.default.vErrors,(0,ha._)`${gh.default.vErrors} === null ? ${e} : ${gh.default.vErrors}.concat(${e})`).assign(gh.default.errors,(0,ha._)`${gh.default.vErrors}.length`),(0,wLt.extendErrors)(t)},()=>t.error())}function kLt({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Cve(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ha.stringify)(r)})}function PLt(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")}ul.validSchemaType=PLt;function DLt({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)}}ul.validateKeywordUsage=DLt});var Rve=_(Yp=>{"use strict";Object.defineProperty(Yp,"__esModule",{value:!0});Yp.extendSubschemaMode=Yp.extendSubschemaData=Yp.getSubschema=void 0;var ll=_t(),wve=Yt();function BLt(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,ll._)`${t.schemaPath}${(0,ll.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,ll._)`${t.schemaPath}${(0,ll.getProperty)(e)}${(0,ll.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,wve.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')}Yp.getSubschema=BLt;function LLt(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,ll._)`${e.data}${(0,ll.getProperty)(r)}`,!0);c(f),t.errorPath=(0,ll.str)`${u}${(0,wve.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,ll._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof ll.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]}}Yp.extendSubschemaData=LLt;function MLt(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}Yp.extendSubschemaMode=MLt});var Ove=_((hFr,Nve)=>{"use strict";var Jp=Nve.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(){};Vk(e,n,s,t,"",t)};Jp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Jp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Jp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Jp.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 Vk(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 Jp.arrayKeywords)for(var f=0;f<d.length;f++)Vk(t,e,r,d[f],s+"/"+l+"/"+f,i,s,l,n,f)}else if(l in Jp.propsKeywords){if(d&&typeof d=="object")for(var m in d)Vk(t,e,r,d[m],s+"/"+l+"/"+WLt(m),i,s,l,n,m)}else(l in Jp.keywords||t.allKeys&&!(l in Jp.skipKeywords))&&Vk(t,e,r,d,s+"/"+l,i,s,l,n)}r(n,s,i,a,o,c,u)}}function WLt(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Cv=_(Va=>{"use strict";Object.defineProperty(Va,"__esModule",{value:!0});Va.getSchemaRefs=Va.resolveUrl=Va.normalizeId=Va._getFullPath=Va.getFullPath=Va.inlineRef=void 0;var $Lt=Yt(),ULt=ic(),FLt=Ove(),qLt=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function jLt(t,e=!0){return typeof t=="boolean"?!0:e===!0?!J7(t):e?kve(t)<=e:!1}Va.inlineRef=jLt;var QLt=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function J7(t){for(let e in t){if(QLt.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(J7)||typeof r=="object"&&J7(r))return!0}return!1}function kve(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!qLt.has(r)&&(typeof t[r]=="object"&&(0,$Lt.eachItem)(t[r],n=>e+=kve(n)),e===1/0))return 1/0}return e}function Pve(t,e="",r){r!==!1&&(e=rx(e));let n=t.parse(e);return Dve(t,n)}Va.getFullPath=Pve;function Dve(t,e){return t.serialize(e).split("#")[0]+"#"}Va._getFullPath=Dve;var HLt=/#\/?$/;function rx(t){return t?t.replace(HLt,""):""}Va.normalizeId=rx;function GLt(t,e,r){return r=rx(r),t.resolve(e,r)}Va.resolveUrl=GLt;var VLt=/^[a-z_][-a-z0-9._]*$/i;function KLt(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=rx(t[r]||e),i={"":s},a=Pve(n,s,!1),o={},c=new Set;return FLt(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=a+f,y=i[p];typeof d[r]=="string"&&(y=g.call(this,d[r])),A.call(this,d.$anchor),A.call(this,d.$dynamicAnchor),i[f]=y;function g(b){let x=this.opts.uriResolver.resolve;if(b=rx(y?x(y,b):b),c.has(b))throw l(b);c.add(b);let S=this.refs[b];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?u(d,S.schema,b):b!==rx(h)&&(b[0]==="#"?(u(d,o[b],b),o[b]=d):this.refs[b]=h),b}function A(b){if(typeof b=="string"){if(!VLt.test(b))throw new Error(`invalid anchor "${b}"`);g.call(this,`#${b}`)}}}),o;function u(d,f,m){if(f!==void 0&&!ULt(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Va.getSchemaRefs=KLt});var nx=_(Xp=>{"use strict";Object.defineProperty(Xp,"__esModule",{value:!0});Xp.getData=Xp.KeywordCxt=Xp.validateFunctionCode=void 0;var $ve=hve(),Bve=Iv(),Z7=Q7(),Kk=Iv(),zLt=Eve(),wv=Tve(),X7=Rve(),ot=_t(),Nt=fc(),YLt=Cv(),jd=Yt(),Tv=Sv();function JLt(t){if(qve(t)&&(jve(t),Fve(t))){e6t(t);return}Uve(t,()=>(0,$ve.topBoolOrEmptySchema)(t))}Xp.validateFunctionCode=JLt;function Uve({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"; ${Lve(r,s)}`),ZLt(t,s),t.code(i)}):t.func(e,(0,ot._)`${Nt.default.data}, ${XLt(s)}`,n.$async,()=>t.code(Lve(r,s)).code(i))}function XLt(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 ZLt(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 e6t(t){let{schema:e,opts:r,gen:n}=t;Uve(t,()=>{r.$comment&&e.$comment&&Hve(t),i6t(t),n.let(Nt.default.vErrors,null),n.let(Nt.default.errors,0),r.unevaluated&&t6t(t),Qve(t),c6t(t)})}function t6t(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 Lve(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 r6t(t,e){if(qve(t)&&(jve(t),Fve(t))){n6t(t,e);return}(0,$ve.boolOrEmptySchema)(t,e)}function Fve({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 qve(t){return typeof t.schema!="boolean"}function n6t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&Hve(t),a6t(t),o6t(t);let i=n.const("_errs",Nt.default.errors);Qve(t,i),n.var(e,(0,ot._)`${i} === ${Nt.default.errors}`)}function jve(t){(0,jd.checkUnknownRules)(t),s6t(t)}function Qve(t,e){if(t.opts.jtd)return Mve(t,[],!1,e);let r=(0,Bve.getSchemaTypes)(t.schema),n=(0,Bve.coerceAndCheckDataType)(t,r);Mve(t,r,!n,e)}function s6t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,jd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function i6t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,jd.checkStrictMode)(t,"default is ignored in the schema root")}function a6t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,YLt.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function o6t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Hve({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 c6t(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&&u6t(t),e.return((0,ot._)`${Nt.default.errors} === 0`))}function u6t({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 Mve(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,jd.schemaHasRulesButRef)(i,l))){s.block(()=>Vve(t,"$ref",l.all.$ref.definition));return}c.jtd||l6t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Z7.shouldUseGroup)(i,f)&&(f.type?(s.if((0,Kk.checkDataType)(f.type,a,c.strictNumbers)),Wve(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,Kk.reportTypeError)(t)),s.endIf()):Wve(t,f),o||s.if((0,ot._)`${Nt.default.errors} === ${n||0}`))}}function Wve(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,zLt.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,Z7.shouldUseRule)(n,i)&&Vve(t,i.keyword,i.definition,e.type)})}function l6t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(d6t(t,e),t.opts.allowUnionTypes||f6t(t,e),p6t(t,t.dataTypes))}function d6t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Gve(t.dataTypes,r)||e9(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),h6t(t,e)}}function f6t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&e9(t,"use allowUnionTypes to allow union type keyword")}function p6t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,Z7.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>m6t(e,a))&&e9(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function m6t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Gve(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function h6t(t,e){let r=[];for(let n of t.dataTypes)Gve(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function e9(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,jd.checkStrictMode)(t,e,t.opts.strictTypes)}var zk=class{constructor(e,r,n){if((0,wv.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,jd.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",Kve(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,wv.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?Tv.reportExtraError:Tv.reportError)(this,this.def.error,r)}$dataError(){(0,Tv.reportError)(this,this.def.$dataError||Tv.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Tv.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,Kk.checkDataTypes)(c,r,i.opts.strictNumbers,Kk.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,X7.getSubschema)(this.it,e);(0,X7.extendSubschemaData)(n,this.it,e),(0,X7.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return r6t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=jd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=jd.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}};Xp.KeywordCxt=zk;function Vve(t,e,r,n){let s=new zk(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,wv.funcKeywordCode)(s,r):"macro"in r?(0,wv.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,wv.funcKeywordCode)(s,r)}var g6t=/^\/(?:[^~]|~0|~1)*$/,y6t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Kve(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Nt.default.rootData;if(t[0]==="/"){if(!g6t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Nt.default.rootData}else{let u=y6t.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,jd.unescapeJsonPointer)(u))}`,a=(0,ot._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Xp.getData=Kve});var Rv=_(r9=>{"use strict";Object.defineProperty(r9,"__esModule",{value:!0});var t9=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};r9.default=t9});var Qd=_(i9=>{"use strict";Object.defineProperty(i9,"__esModule",{value:!0});var n9=Cv(),s9=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,n9.resolveUrl)(e,r,n),this.missingSchema=(0,n9.normalizeId)((0,n9.getFullPath)(e,this.missingRef))}};i9.default=s9});var Ah=_(pc=>{"use strict";Object.defineProperty(pc,"__esModule",{value:!0});pc.resolveSchema=pc.getCompilingSchema=pc.resolveRef=pc.compileSchema=pc.SchemaEnv=void 0;var ou=_t(),A6t=Rv(),yh=fc(),cu=Cv(),zve=Yt(),x6t=nx(),sx=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,cu.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};pc.SchemaEnv=sx;function o9(t){let e=Yve.call(this,t);if(e)return e;let r=(0,cu.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new ou.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:A6t.default,code:(0,ou._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:yh.default.data,parentData:yh.default.parentData,parentDataProperty:yh.default.parentDataProperty,dataNames:[yh.default.data],dataPathArr:[ou.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,ou.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:ou.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,ou._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,x6t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(yh.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${yh.default.self}`,`${yh.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof ou.Name?void 0:p,items:h instanceof ou.Name?void 0:h,dynamicProps:p instanceof ou.Name,dynamicItems:h instanceof ou.Name},m.source&&(m.source.evaluated=(0,ou.stringify)(m.evaluated))}return t.validate=m,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)}}pc.compileSchema=o9;function b6t(t,e,r){var n;r=(0,cu.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=v6t.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 sx({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=_6t.call(this,i)}pc.resolveRef=b6t;function _6t(t){return(0,cu.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:o9.call(this,t)}function Yve(t){for(let e of this._compilations)if(E6t(e,t))return e}pc.getCompilingSchema=Yve;function E6t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function v6t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Yk.call(this,t,e)}function Yk(t,e){let r=this.opts.uriResolver.parse(e),n=(0,cu._getFullPath)(this.opts.uriResolver,r),s=(0,cu.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return a9.call(this,r,t);let i=(0,cu.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=Yk.call(this,t,a);return typeof o?.schema!="object"?void 0:a9.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||o9.call(this,a),i===(0,cu.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,cu.resolveUrl)(this.opts.uriResolver,s,u)),new sx({schema:o,schemaId:c,root:t,baseId:s})}return a9.call(this,r,a)}}pc.resolveSchema=Yk;var S6t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function a9(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,zve.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!S6t.has(o)&&u&&(e=(0,cu.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,zve.schemaHasRulesButRef)(r,this.RULES)){let o=(0,cu.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=Yk.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new sx({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var Jve=_((_Fr,I6t)=>{I6t.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 u9=_((EFr,tSe)=>{"use strict";var C6t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Zve=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 c9(t){let e="",r=0,n=0;for(n=0;n<t.length;n++)if(r=t[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n<t.length;n++){if(r=t[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var T6t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Xve(t){return t.length=0,!0}function w6t(t,e,r){if(t.length){let n=c9(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function R6t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=w6t;for(let c=0;c<t.length;c++){let u=t[c];if(!(u==="["||u==="]"))if(u===":"){if(i===!0&&(a=!0),!o(s,n,r))break;if(++e>7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=Xve}else{s.push(u);continue}}return s.length&&(o===Xve?r.zone=s.join(""):a?n.push(s.join("")):n.push(c9(s))),r.address=n.join(""),r}function eSe(t){if(N6t(t,":")<2)return{host:t,isIPV6:!1};let e=R6t(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 N6t(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function O6t(t){let e=t,r=[],n=-1,s=0;for(;s=e.length;){if(s===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(s===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(s===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n)}return r.join("")}function k6t(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function P6t(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!Zve(r)){let n=eSe(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}tSe.exports={nonSimpleDomain:T6t,recomposeAuthority:P6t,normalizeComponentEncoding:k6t,removeDotSegments:O6t,isIPv4:Zve,isUUID:C6t,normalizeIPv6:eSe,stringArrayToHexStripped:c9}});var aSe=_((vFr,iSe)=>{"use strict";var{isUUID:D6t}=u9(),B6t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,L6t=["http","https","ws","wss","urn","urn:uuid"];function M6t(t){return L6t.indexOf(t)!==-1}function l9(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 rSe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function nSe(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 W6t(t){return t.secure=l9(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function $6t(t){if((t.port===(l9(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 U6t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(B6t);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=d9(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function F6t(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=d9(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 q6t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!D6t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function j6t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var sSe={scheme:"http",domainHost:!0,parse:rSe,serialize:nSe},Q6t={scheme:"https",domainHost:sSe.domainHost,parse:rSe,serialize:nSe},Jk={scheme:"ws",domainHost:!0,parse:W6t,serialize:$6t},H6t={scheme:"wss",domainHost:Jk.domainHost,parse:Jk.parse,serialize:Jk.serialize},G6t={scheme:"urn",parse:U6t,serialize:F6t,skipNormalize:!0},V6t={scheme:"urn:uuid",parse:q6t,serialize:j6t,skipNormalize:!0},Xk={http:sSe,https:Q6t,ws:Jk,wss:H6t,urn:G6t,"urn:uuid":V6t};Object.setPrototypeOf(Xk,null);function d9(t){return t&&(Xk[t]||Xk[t.toLowerCase()])||void 0}iSe.exports={wsIsSecure:l9,SCHEMES:Xk,isValidSchemeName:M6t,getSchemeHandler:d9}});var uSe=_((SFr,eP)=>{"use strict";var{normalizeIPv6:K6t,removeDotSegments:Nv,recomposeAuthority:z6t,normalizeComponentEncoding:Zk,isIPv4:Y6t,nonSimpleDomain:J6t}=u9(),{SCHEMES:X6t,getSchemeHandler:oSe}=aSe();function Z6t(t,e){return typeof t=="string"?t=dl(Hd(t,e),e):typeof t=="object"&&(t=Hd(dl(t,e),e)),t}function eMt(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=cSe(Hd(t,n),Hd(e,n),n,!0);return n.skipEscape=!0,dl(s,n)}function cSe(t,e,r,n){let s={};return n||(t=Hd(dl(t,r),r),e=Hd(dl(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=Nv(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=Nv(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=Nv(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=Nv(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 tMt(t,e,r){return typeof t=="string"?(t=unescape(t),t=dl(Zk(Hd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=dl(Zk(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=dl(Zk(Hd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=dl(Zk(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function dl(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=oSe(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=z6t(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=Nv(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 rMt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\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=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(rMt);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(Y6t(n.host)===!1){let c=K6t(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=oSe(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&J6t(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 f9={SCHEMES:X6t,normalize:Z6t,resolve:eMt,resolveComponent:cSe,equal:tMt,serialize:dl,parse:Hd};eP.exports=f9;eP.exports.default=f9;eP.exports.fastUri=f9});var dSe=_(p9=>{"use strict";Object.defineProperty(p9,"__esModule",{value:!0});var lSe=uSe();lSe.code='require("ajv/dist/runtime/uri").default';p9.default=lSe});var g9=_(bi=>{"use strict";Object.defineProperty(bi,"__esModule",{value:!0});bi.CodeGen=bi.Name=bi.nil=bi.stringify=bi.str=bi._=bi.KeywordCxt=void 0;var nMt=nx();Object.defineProperty(bi,"KeywordCxt",{enumerable:!0,get:function(){return nMt.KeywordCxt}});var ix=_t();Object.defineProperty(bi,"_",{enumerable:!0,get:function(){return ix._}});Object.defineProperty(bi,"str",{enumerable:!0,get:function(){return ix.str}});Object.defineProperty(bi,"stringify",{enumerable:!0,get:function(){return ix.stringify}});Object.defineProperty(bi,"nil",{enumerable:!0,get:function(){return ix.nil}});Object.defineProperty(bi,"Name",{enumerable:!0,get:function(){return ix.Name}});Object.defineProperty(bi,"CodeGen",{enumerable:!0,get:function(){return ix.CodeGen}});var sMt=Rv(),gSe=Qd(),iMt=j7(),Ov=Ah(),aMt=_t(),kv=Cv(),tP=Iv(),h9=Yt(),fSe=Jve(),oMt=dSe(),ySe=(t,e)=>new RegExp(t,e);ySe.code="new RegExp";var cMt=["removeAdditional","useDefaults","coerceTypes"],uMt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),lMt={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."},dMt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},pSe=200;function fMt(t){var e,r,n,s,i,a,o,c,u,l,d,f,m,p,h,y,g,A,b,x,S,T,I,R,N;let k=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,P=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:ySe,L=(s=t.uriResolver)!==null&&s!==void 0?s:oMt.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:k)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:k)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:k)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:k)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:k)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:M,regExp:P}:{optimize:M,regExp:P},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:pSe,loopEnum:(y=t.loopEnum)!==null&&y!==void 0?y:pSe,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(A=t.messages)!==null&&A!==void 0?A:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(S=t.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(T=t.validateSchema)!==null&&T!==void 0?T:!0,validateFormats:(I=t.validateFormats)!==null&&I!==void 0?I:!0,unicodeRegExp:(R=t.unicodeRegExp)!==null&&R!==void 0?R:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var Pv=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...fMt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new aMt.ValueScope({scope:{},prefixes:uMt,es5:r,lines:n}),this.logger=AMt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,iMt.getRules)(),mSe.call(this,lMt,e,"NOT SUPPORTED"),mSe.call(this,dMt,e,"DEPRECATED","warn"),this._metaOpts=gMt.call(this),e.formats&&mMt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&hMt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),pMt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=fSe;n==="id"&&(s={...fSe},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 gSe.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,kv.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=hSe.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new Ov.SchemaEnv({schema:{},schemaId:n});if(r=Ov.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=hSe.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,kv.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(bMt.call(this,n,r),!r)return(0,h9.eachItem)(n,i=>m9.call(this,i)),this;EMt.call(this,r);let s={...r,type:(0,tP.getJSONTypes)(r.type),schemaType:(0,tP.getJSONTypes)(r.schemaType)};return(0,h9.eachItem)(n,s.type.length===0?i=>m9.call(this,i,s):i=>s.type.forEach(a=>m9.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]=ASe(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,kv.normalizeId)(a||n);let u=kv.getSchemaRefs.call(this,e,n);return c=new Ov.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):Ov.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{Ov.compileSchema.call(this,e)}finally{this.opts=r}}};Pv.ValidationError=sMt.default;Pv.MissingRefError=gSe.default;bi.default=Pv;function mSe(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 hSe(t){return t=(0,kv.normalizeId)(t),this.schemas[t]||this.refs[t]}function pMt(){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 mMt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function hMt(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 gMt(){let t={...this.opts};for(let e of cMt)delete t[e];return t}var yMt={log(){},warn(){},error(){}};function AMt(t){if(t===!1)return yMt;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 xMt=/^[a-z_$][a-z0-9_$:-]*$/i;function bMt(t,e){let{RULES:r}=this;if((0,h9.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!xMt.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 m9(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,tP.getJSONTypes)(e.type),schemaType:(0,tP.getJSONTypes)(e.schemaType)}};e.before?_Mt.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 _Mt(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 EMt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=ASe(e)),t.validateSchema=this.compile(e,!0))}var vMt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function ASe(t){return{anyOf:[t,vMt]}}});var xSe=_(y9=>{"use strict";Object.defineProperty(y9,"__esModule",{value:!0});var SMt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};y9.default=SMt});var A9=_(xh=>{"use strict";Object.defineProperty(xh,"__esModule",{value:!0});xh.callRef=xh.getValidate=void 0;var IMt=Qd(),bSe=xi(),Ka=_t(),ax=fc(),_Se=Ah(),rP=Yt(),CMt={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=_Se.resolveRef.call(c,u,s,r);if(l===void 0)throw new IMt.default(n.opts.uriResolver,s,r);if(l instanceof _Se.SchemaEnv)return f(l);return m(l);function d(){if(i===u)return nP(t,a,i,i.$async);let p=e.scopeValue("root",{ref:u});return nP(t,(0,Ka._)`${p}.validate`,u,u.$async)}function f(p){let h=ESe(t,p);nP(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",o.code.source===!0?{ref:p,code:(0,Ka.stringify)(p)}:{ref:p}),y=e.name("valid"),g=t.subschema({schema:p,dataTypes:[],schemaPath:Ka.nil,topSchemaRef:h,errSchemaPath:r},y);t.mergeEvaluated(g),t.ok(y)}}};function ESe(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ka._)`${r.scopeValue("wrapper",{ref:e})}.validate`}xh.getValidate=ESe;function nP(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?ax.default.this:Ka.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let p=s.let("valid");s.try(()=>{s.code((0,Ka._)`await ${(0,bSe.callValidateCode)(t,e,u)}`),m(e),a||s.assign(p,!0)},h=>{s.if((0,Ka._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(p,!1)}),t.ok(p)}function d(){t.result((0,bSe.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,Ka._)`${p}.errors`;s.assign(ax.default.vErrors,(0,Ka._)`${ax.default.vErrors} === null ? ${h} : ${ax.default.vErrors}.concat(${h})`),s.assign(ax.default.errors,(0,Ka._)`${ax.default.vErrors}.length`)}function m(p){var h;if(!i.opts.unevaluated)return;let y=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(i.props=rP.mergeEvaluated.props(s,y.props,i.props));else{let g=s.var("props",(0,Ka._)`${p}.evaluated.props`);i.props=rP.mergeEvaluated.props(s,g,i.props,Ka.Name)}if(i.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(i.items=rP.mergeEvaluated.items(s,y.items,i.items));else{let g=s.var("items",(0,Ka._)`${p}.evaluated.items`);i.items=rP.mergeEvaluated.items(s,g,i.items,Ka.Name)}}}xh.callRef=nP;xh.default=CMt});var vSe=_(x9=>{"use strict";Object.defineProperty(x9,"__esModule",{value:!0});var TMt=xSe(),wMt=A9(),RMt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",TMt.default,wMt.default];x9.default=RMt});var SSe=_(b9=>{"use strict";Object.defineProperty(b9,"__esModule",{value:!0});var sP=_t(),Zp=sP.operators,iP={maximum:{okStr:"<=",ok:Zp.LTE,fail:Zp.GT},minimum:{okStr:">=",ok:Zp.GTE,fail:Zp.LT},exclusiveMaximum:{okStr:"<",ok:Zp.LT,fail:Zp.GTE},exclusiveMinimum:{okStr:">",ok:Zp.GT,fail:Zp.LTE}},NMt={message:({keyword:t,schemaCode:e})=>(0,sP.str)`must be ${iP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,sP._)`{comparison: ${iP[t].okStr}, limit: ${e}}`},OMt={keyword:Object.keys(iP),type:"number",schemaType:"number",$data:!0,error:NMt,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,sP._)`${r} ${iP[e].fail} ${n} || isNaN(${r})`)}};b9.default=OMt});var ISe=_(_9=>{"use strict";Object.defineProperty(_9,"__esModule",{value:!0});var Dv=_t(),kMt={message:({schemaCode:t})=>(0,Dv.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Dv._)`{multipleOf: ${t}}`},PMt={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:kMt,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,Dv._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,Dv._)`${a} !== parseInt(${a})`;t.fail$data((0,Dv._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};_9.default=PMt});var TSe=_(E9=>{"use strict";Object.defineProperty(E9,"__esModule",{value:!0});function CSe(t){let e=t.length,r=0,n=0,s;for(;n<e;)r++,s=t.charCodeAt(n++),s>=55296&&s<=56319&&n<e&&(s=t.charCodeAt(n),(s&64512)===56320&&n++);return r}E9.default=CSe;CSe.code='require("ajv/dist/runtime/ucs2length").default'});var wSe=_(v9=>{"use strict";Object.defineProperty(v9,"__esModule",{value:!0});var bh=_t(),DMt=Yt(),BMt=TSe(),LMt={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,bh.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,bh._)`{limit: ${t}}`},MMt={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:LMt,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?bh.operators.GT:bh.operators.LT,a=s.opts.unicode===!1?(0,bh._)`${r}.length`:(0,bh._)`${(0,DMt.useFunc)(t.gen,BMt.default)}(${r})`;t.fail$data((0,bh._)`${a} ${i} ${n}`)}};v9.default=MMt});var RSe=_(S9=>{"use strict";Object.defineProperty(S9,"__esModule",{value:!0});var WMt=xi(),aP=_t(),$Mt={message:({schemaCode:t})=>(0,aP.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,aP._)`{pattern: ${t}}`},UMt={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:$Mt,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,aP._)`(new RegExp(${s}, ${a}))`:(0,WMt.usePattern)(t,n);t.fail$data((0,aP._)`!${o}.test(${e})`)}};S9.default=UMt});var NSe=_(I9=>{"use strict";Object.defineProperty(I9,"__esModule",{value:!0});var Bv=_t(),FMt={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Bv.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Bv._)`{limit: ${t}}`},qMt={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:FMt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?Bv.operators.GT:Bv.operators.LT;t.fail$data((0,Bv._)`Object.keys(${r}).length ${s} ${n}`)}};I9.default=qMt});var OSe=_(C9=>{"use strict";Object.defineProperty(C9,"__esModule",{value:!0});var Lv=xi(),Mv=_t(),jMt=Yt(),QMt={message:({params:{missingProperty:t}})=>(0,Mv.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Mv._)`{missingProperty: ${t}}`},HMt={keyword:"required",type:"object",schemaType:"array",$data:!0,error:QMt,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 m=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(m?.[h]===void 0&&!p.has(h)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${y}" (strictRequired)`;(0,jMt.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(Mv.nil,d);else for(let m of r)(0,Lv.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||i){let p=e.let("valid",!0);t.block$data(p,()=>f(m,p)),t.ok(p)}else e.if((0,Lv.checkMissingProp)(t,r,m)),(0,Lv.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Lv.noPropertyInData)(e,s,m,o.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,Lv.propertyInData)(e,s,m,o.ownProperties)),e.if((0,Mv.not)(p),()=>{t.error(),e.break()})},Mv.nil)}}};C9.default=HMt});var kSe=_(T9=>{"use strict";Object.defineProperty(T9,"__esModule",{value:!0});var Wv=_t(),GMt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Wv.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Wv._)`{limit: ${t}}`},VMt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:GMt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?Wv.operators.GT:Wv.operators.LT;t.fail$data((0,Wv._)`${r}.length ${s} ${n}`)}};T9.default=VMt});var oP=_(w9=>{"use strict";Object.defineProperty(w9,"__esModule",{value:!0});var PSe=ic();PSe.code='require("ajv/dist/runtime/equal").default';w9.default=PSe});var DSe=_(N9=>{"use strict";Object.defineProperty(N9,"__esModule",{value:!0});var R9=Iv(),_i=_t(),KMt=Yt(),zMt=oP(),YMt={message:({params:{i:t,j:e}})=>(0,_i.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,_i._)`{i: ${t}, j: ${e}}`},JMt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:YMt,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,R9.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,_i._)`${a} === false`),t.ok(c);function l(){let p=e.let("i",(0,_i._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,_i._)`${p} > 1`,()=>(d()?f:m)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let y=e.name("item"),g=(0,R9.checkDataTypes)(u,y,o.opts.strictNumbers,R9.DataType.Wrong),A=e.const("indices",(0,_i._)`{}`);e.for((0,_i._)`;${p}--;`,()=>{e.let(y,(0,_i._)`${r}[${p}]`),e.if(g,(0,_i._)`continue`),u.length>1&&e.if((0,_i._)`typeof ${y} == "string"`,(0,_i._)`${y} += "_"`),e.if((0,_i._)`typeof ${A}[${y}] == "number"`,()=>{e.assign(h,(0,_i._)`${A}[${y}]`),t.error(),e.assign(c,!1).break()}).code((0,_i._)`${A}[${y}] = ${p}`)})}function m(p,h){let y=(0,KMt.useFunc)(e,zMt.default),g=e.name("outer");e.label(g).for((0,_i._)`;${p}--;`,()=>e.for((0,_i._)`${h} = ${p}; ${h}--;`,()=>e.if((0,_i._)`${y}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};N9.default=JMt});var BSe=_(k9=>{"use strict";Object.defineProperty(k9,"__esModule",{value:!0});var O9=_t(),XMt=Yt(),ZMt=oP(),e5t={message:"must be equal to constant",params:({schemaCode:t})=>(0,O9._)`{allowedValue: ${t}}`},t5t={keyword:"const",$data:!0,error:e5t,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,O9._)`!${(0,XMt.useFunc)(e,ZMt.default)}(${r}, ${s})`):t.fail((0,O9._)`${i} !== ${r}`)}};k9.default=t5t});var LSe=_(P9=>{"use strict";Object.defineProperty(P9,"__esModule",{value:!0});var $v=_t(),r5t=Yt(),n5t=oP(),s5t={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,$v._)`{allowedValues: ${t}}`},i5t={keyword:"enum",schemaType:"array",$data:!0,error:s5t,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,r5t.useFunc)(e,n5t.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 m=e.const("vSchema",i);l=(0,$v.or)(...s.map((p,h)=>f(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,m=>e.if((0,$v._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=s[p];return typeof h=="object"&&h!==null?(0,$v._)`${u()}(${r}, ${m}[${p}])`:(0,$v._)`${r} === ${h}`}}};P9.default=i5t});var MSe=_(D9=>{"use strict";Object.defineProperty(D9,"__esModule",{value:!0});var a5t=SSe(),o5t=ISe(),c5t=wSe(),u5t=RSe(),l5t=NSe(),d5t=OSe(),f5t=kSe(),p5t=DSe(),m5t=BSe(),h5t=LSe(),g5t=[a5t.default,o5t.default,c5t.default,u5t.default,l5t.default,d5t.default,f5t.default,p5t.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},m5t.default,h5t.default];D9.default=g5t});var L9=_(Uv=>{"use strict";Object.defineProperty(Uv,"__esModule",{value:!0});Uv.validateAdditionalItems=void 0;var _h=_t(),B9=Yt(),y5t={message:({params:{len:t}})=>(0,_h.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,_h._)`{limit: ${t}}`},A5t={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:y5t,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,B9.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}WSe(t,n)}};function WSe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,_h._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,_h._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,B9.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,_h._)`${o} <= ${e.length}`);r.if((0,_h.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:B9.Type.Num},u),a.allErrors||r.if((0,_h.not)(u),()=>r.break())})}}Uv.validateAdditionalItems=WSe;Uv.default=A5t});var M9=_(Fv=>{"use strict";Object.defineProperty(Fv,"__esModule",{value:!0});Fv.validateTuple=void 0;var $Se=_t(),cP=Yt(),x5t=xi(),b5t={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return USe(t,"additionalItems",e);r.items=!0,!(0,cP.alwaysValidSchema)(r,e)&&t.ok((0,x5t.validateArray)(t))}};function USe(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=cP.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,$Se._)`${i}.length`);r.forEach((d,f)=>{(0,cP.alwaysValidSchema)(o,d)||(n.if((0,$Se._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:m}=o,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let y=`"${a}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,cP.checkStrictMode)(o,y,f.strictTuples)}}}Fv.validateTuple=USe;Fv.default=b5t});var FSe=_(W9=>{"use strict";Object.defineProperty(W9,"__esModule",{value:!0});var _5t=M9(),E5t={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,_5t.validateTuple)(t,"items")};W9.default=E5t});var jSe=_($9=>{"use strict";Object.defineProperty($9,"__esModule",{value:!0});var qSe=_t(),v5t=Yt(),S5t=xi(),I5t=L9(),C5t={message:({params:{len:t}})=>(0,qSe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,qSe._)`{limit: ${t}}`},T5t={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:C5t,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,v5t.alwaysValidSchema)(n,e)&&(s?(0,I5t.validateAdditionalItems)(t,s):t.ok((0,S5t.validateArray)(t)))}};$9.default=T5t});var QSe=_(U9=>{"use strict";Object.defineProperty(U9,"__esModule",{value:!0});var mc=_t(),uP=Yt(),w5t={message:({params:{min:t,max:e}})=>e===void 0?(0,mc.str)`must contain at least ${t} valid item(s)`:(0,mc.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,mc._)`{minContains: ${t}}`:(0,mc._)`{minContains: ${t}, maxContains: ${e}}`},R5t={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:w5t,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,mc._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,uP.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,uP.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,uP.alwaysValidSchema)(i,r)){let h=(0,mc._)`${l} >= ${a}`;o!==void 0&&(h=(0,mc._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?m(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,mc._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),y=e.let("count",0);m(h,()=>e.if(h,()=>p(y)))}function m(h,y){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:uP.Type.Num,compositeRule:!0},h),y()})}function p(h){e.code((0,mc._)`${h}++`),o===void 0?e.if((0,mc._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,mc._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,mc._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};U9.default=R5t});var VSe=_(fl=>{"use strict";Object.defineProperty(fl,"__esModule",{value:!0});fl.validateSchemaDeps=fl.validatePropertyDeps=fl.error=void 0;var F9=_t(),N5t=Yt(),qv=xi();fl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,F9.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,F9._)`{property: ${t},
missingProperty: ${n},
depsCount: ${e},
deps: ${r}}`};var O5t={keyword:"dependencies",type:"object",schemaType:"object",error:fl.error,code(t){let[e,r]=k5t(t);HSe(t,e),GSe(t,r)}};function k5t({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 HSe(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,qv.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,qv.checkReportMissingProp)(t,u)}):(r.if((0,F9._)`${c} && (${(0,qv.checkMissingProp)(t,o,i)})`),(0,qv.reportMissingProp)(t,i),r.else())}}fl.validatePropertyDeps=HSe;function GSe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,N5t.alwaysValidSchema)(i,e[o])||(r.if((0,qv.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))}fl.validateSchemaDeps=GSe;fl.default=O5t});var zSe=_(q9=>{"use strict";Object.defineProperty(q9,"__esModule",{value:!0});var KSe=_t(),P5t=Yt(),D5t={message:"property name must be valid",params:({params:t})=>(0,KSe._)`{propertyName: ${t.propertyName}}`},B5t={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:D5t,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,P5t.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,KSe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};q9.default=B5t});var Q9=_(j9=>{"use strict";Object.defineProperty(j9,"__esModule",{value:!0});var lP=xi(),uu=_t(),L5t=fc(),dP=Yt(),M5t={message:"must NOT have additional properties",params:({params:t})=>(0,uu._)`{additionalProperty: ${t.additionalProperty}}`},W5t={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:M5t,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,dP.alwaysValidSchema)(a,r))return;let u=(0,lP.allSchemaProperties)(n.properties),l=(0,lP.allSchemaProperties)(n.patternProperties);d(),t.ok((0,uu._)`${i} === ${L5t.default.errors}`);function d(){e.forIn("key",s,y=>{!u.length&&!l.length?p(y):e.if(f(y),()=>p(y))})}function f(y){let g;if(u.length>8){let A=(0,dP.schemaRefOrVal)(a,n.properties,"properties");g=(0,lP.isOwnProperty)(e,A,y)}else u.length?g=(0,uu.or)(...u.map(A=>(0,uu._)`${y} === ${A}`)):g=uu.nil;return l.length&&(g=(0,uu.or)(g,...l.map(A=>(0,uu._)`${(0,lP.usePattern)(t,A)}.test(${y})`))),(0,uu.not)(g)}function m(y){e.code((0,uu._)`delete ${s}[${y}]`)}function p(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(y);return}if(r===!1){t.setParams({additionalProperty:y}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,dP.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(y,g,!1),e.if((0,uu.not)(g),()=>{t.reset(),m(y)})):(h(y,g),o||e.if((0,uu.not)(g),()=>e.break()))}}function h(y,g,A){let b={keyword:"additionalProperties",dataProp:y,dataPropType:dP.Type.Str};A===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,g)}}};j9.default=W5t});var XSe=_(G9=>{"use strict";Object.defineProperty(G9,"__esModule",{value:!0});var $5t=nx(),YSe=xi(),H9=Yt(),JSe=Q9(),U5t={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&&JSe.default.code(new $5t.KeywordCxt(i,JSe.default,"additionalProperties"));let a=(0,YSe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=H9.mergeEvaluated.props(e,(0,H9.toHash)(a),i.props));let o=a.filter(d=>!(0,H9.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,YSe.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)}}};G9.default=U5t});var rIe=_(V9=>{"use strict";Object.defineProperty(V9,"__esModule",{value:!0});var ZSe=xi(),fP=_t(),eIe=Yt(),tIe=Yt(),F5t={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,ZSe.allSchemaProperties)(r),c=o.filter(h=>(0,eIe.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 fP.Name)&&(i.props=(0,tIe.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&m(h),i.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function m(h){for(let y in u)new RegExp(h).test(y)&&(0,eIe.checkStrictMode)(i,`property ${y} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,y=>{e.if((0,fP._)`${(0,ZSe.usePattern)(t,h)}.test(${y})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:y,dataPropType:tIe.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,fP._)`${d}[${y}]`,!0):!g&&!i.allErrors&&e.if((0,fP.not)(l),()=>e.break())})})}}};V9.default=F5t});var nIe=_(K9=>{"use strict";Object.defineProperty(K9,"__esModule",{value:!0});var q5t=Yt(),j5t={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,q5t.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"}};K9.default=j5t});var sIe=_(z9=>{"use strict";Object.defineProperty(z9,"__esModule",{value:!0});var Q5t=xi(),H5t={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Q5t.validateUnion,error:{message:"must match a schema in anyOf"}};z9.default=H5t});var iIe=_(Y9=>{"use strict";Object.defineProperty(Y9,"__esModule",{value:!0});var pP=_t(),G5t=Yt(),V5t={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,pP._)`{passingSchemas: ${t.passing}}`},K5t={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:V5t,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,G5t.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,pP._)`${c} && ${a}`).assign(a,!1).assign(o,(0,pP._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,pP.Name)})})}}};Y9.default=K5t});var aIe=_(J9=>{"use strict";Object.defineProperty(J9,"__esModule",{value:!0});var z5t=Yt(),Y5t={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,z5t.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};J9.default=Y5t});var uIe=_(X9=>{"use strict";Object.defineProperty(X9,"__esModule",{value:!0});var mP=_t(),cIe=Yt(),J5t={message:({params:t})=>(0,mP.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,mP._)`{failingKeyword: ${t.ifClause}}`},X5t={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:J5t,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=oIe(n,"then"),i=oIe(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,mP.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,mP._)`${l}`):t.setParams({ifClause:l})}}}};function oIe(t,e){let r=t.schema[e];return r!==void 0&&!(0,cIe.alwaysValidSchema)(t,r)}X9.default=X5t});var lIe=_(Z9=>{"use strict";Object.defineProperty(Z9,"__esModule",{value:!0});var Z5t=Yt(),eWt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Z5t.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Z9.default=eWt});var dIe=_(eq=>{"use strict";Object.defineProperty(eq,"__esModule",{value:!0});var tWt=L9(),rWt=FSe(),nWt=M9(),sWt=jSe(),iWt=QSe(),aWt=VSe(),oWt=zSe(),cWt=Q9(),uWt=XSe(),lWt=rIe(),dWt=nIe(),fWt=sIe(),pWt=iIe(),mWt=aIe(),hWt=uIe(),gWt=lIe();function yWt(t=!1){let e=[dWt.default,fWt.default,pWt.default,mWt.default,hWt.default,gWt.default,oWt.default,cWt.default,aWt.default,uWt.default,lWt.default];return t?e.push(rWt.default,sWt.default):e.push(tWt.default,nWt.default),e.push(iWt.default),e}eq.default=yWt});var fIe=_(tq=>{"use strict";Object.defineProperty(tq,"__esModule",{value:!0});var ms=_t(),AWt={message:({schemaCode:t})=>(0,ms.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ms._)`{format: ${t}}`},xWt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:AWt,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():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ms._)`${p}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,ms._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(y,(0,ms._)`${h}.type || "string"`).assign(g,(0,ms._)`${h}.validate`),()=>r.assign(y,(0,ms._)`"string"`).assign(g,h)),t.fail$data((0,ms.or)(A(),b()));function A(){return c.strictSchema===!1?ms.nil:(0,ms._)`${a} && !${g}`}function b(){let x=l.$async?(0,ms._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ms._)`${g}(${n})`,S=(0,ms._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,ms._)`${g} && ${g} !== true && ${y} === ${e} && !${S}`}}function m(){let p=d.formats[i];if(!p){A();return}if(p===!0)return;let[h,y,g]=b(p);h===e&&t.pass(x());function A(){if(c.strictSchema===!1){d.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function b(S){let T=S instanceof RegExp?(0,ms.regexpCode)(S):c.code.formats?(0,ms._)`${c.code.formats}${(0,ms.getProperty)(i)}`:void 0,I=r.scopeValue("formats",{key:i,ref:S,code:T});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,ms._)`${I}.validate`]:["string",S,I]}function x(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ms._)`await ${g}(${n})`}return typeof y=="function"?(0,ms._)`${g}(${n})`:(0,ms._)`${g}.test(${n})`}}}};tq.default=xWt});var pIe=_(rq=>{"use strict";Object.defineProperty(rq,"__esModule",{value:!0});var bWt=fIe(),_Wt=[bWt.default];rq.default=_Wt});var mIe=_(ox=>{"use strict";Object.defineProperty(ox,"__esModule",{value:!0});ox.contentVocabulary=ox.metadataVocabulary=void 0;ox.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];ox.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var gIe=_(nq=>{"use strict";Object.defineProperty(nq,"__esModule",{value:!0});var EWt=vSe(),vWt=MSe(),SWt=dIe(),IWt=pIe(),hIe=mIe(),CWt=[EWt.default,vWt.default,(0,SWt.default)(),IWt.default,hIe.metadataVocabulary,hIe.contentVocabulary];nq.default=CWt});var sq=_(hP=>{"use strict";Object.defineProperty(hP,"__esModule",{value:!0});hP.DiscrError=void 0;var yIe;(function(t){t.Tag="tag",t.Mapping="mapping"})(yIe||(hP.DiscrError=yIe={}))});var xIe=_(aq=>{"use strict";Object.defineProperty(aq,"__esModule",{value:!0});var cx=_t(),iq=sq(),AIe=Ah(),TWt=Qd(),wWt=Yt(),RWt={message:({params:{discrError:t,tagName:e}})=>t===iq.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,cx._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},NWt={keyword:"discriminator",type:"object",schemaType:"object",error:RWt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,cx._)`${r}${(0,cx.getProperty)(o)}`);e.if((0,cx._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:iq.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,cx._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:iq.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,cx.Name),p}function f(){var m;let p={},h=g(s),y=!0;for(let x=0;x<a.length;x++){let S=a[x];if(S?.$ref&&!(0,wWt.schemaHasRulesButRef)(S,i.self.RULES)){let I=S.$ref;if(S=AIe.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,I),S instanceof AIe.SchemaEnv&&(S=S.schema),S===void 0)throw new TWt.default(i.opts.uriResolver,i.baseId,I)}let T=(m=S?.properties)===null||m===void 0?void 0:m[o];if(typeof T!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${o}"`);y=y&&(h||g(S)),A(T,x)}if(!y)throw new Error(`discriminator: "${o}" must be required`);return p;function g({required:x}){return Array.isArray(x)&&x.includes(o)}function A(x,S){if(x.const)b(x.const,S);else if(x.enum)for(let T of x.enum)b(T,S);else throw new Error(`discriminator: "properties/${o}" must have "const" or "enum"`)}function b(x,S){if(typeof x!="string"||x in p)throw new Error(`discriminator: "${o}" values must be unique strings`);p[x]=S}}}};aq.default=NWt});var bIe=_((f7r,OWt)=>{OWt.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 EIe=_((Pn,oq)=>{"use strict";Object.defineProperty(Pn,"__esModule",{value:!0});Pn.MissingRefError=Pn.ValidationError=Pn.CodeGen=Pn.Name=Pn.nil=Pn.stringify=Pn.str=Pn._=Pn.KeywordCxt=Pn.Ajv=void 0;var kWt=g9(),PWt=gIe(),DWt=xIe(),_Ie=bIe(),BWt=["/properties"],gP="http://json-schema.org/draft-07/schema",ux=class extends kWt.default{_addVocabularies(){super._addVocabularies(),PWt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(DWt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(_Ie,BWt):_Ie;this.addMetaSchema(e,gP,!1),this.refs["http://json-schema.org/schema"]=gP}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(gP)?gP:void 0)}};Pn.Ajv=ux;oq.exports=Pn=ux;oq.exports.Ajv=ux;Object.defineProperty(Pn,"__esModule",{value:!0});Pn.default=ux;var LWt=nx();Object.defineProperty(Pn,"KeywordCxt",{enumerable:!0,get:function(){return LWt.KeywordCxt}});var lx=_t();Object.defineProperty(Pn,"_",{enumerable:!0,get:function(){return lx._}});Object.defineProperty(Pn,"str",{enumerable:!0,get:function(){return lx.str}});Object.defineProperty(Pn,"stringify",{enumerable:!0,get:function(){return lx.stringify}});Object.defineProperty(Pn,"nil",{enumerable:!0,get:function(){return lx.nil}});Object.defineProperty(Pn,"Name",{enumerable:!0,get:function(){return lx.Name}});Object.defineProperty(Pn,"CodeGen",{enumerable:!0,get:function(){return lx.CodeGen}});var MWt=Rv();Object.defineProperty(Pn,"ValidationError",{enumerable:!0,get:function(){return MWt.default}});var WWt=Qd();Object.defineProperty(Pn,"MissingRefError",{enumerable:!0,get:function(){return WWt.default}})});var Gd=_(jv=>{"use strict";Object.defineProperty(jv,"__esModule",{value:!0});jv.checkMetadata=void 0;var $Wt=Yt(),UWt={keyword:"metadata",schemaType:"object",code(t){vIe(t);let{gen:e,schema:r,it:n}=t;if((0,$Wt.alwaysValidSchema)(n,r))return;let s=e.name("valid");t.subschema({keyword:"metadata",jtdMetadata:!0},s),t.ok(s)}};function vIe({it:t,keyword:e},r){if(t.jtdMetadata!==r)throw new Error(`JTD: "${e}" cannot be used in this schema location`)}jv.checkMetadata=vIe;jv.default=UWt});var yP=_(Hv=>{"use strict";Object.defineProperty(Hv,"__esModule",{value:!0});Hv.hasRef=void 0;var SIe=Ah(),Qv=_t(),FWt=Qd(),IIe=fc(),CIe=A9(),qWt=Gd(),jWt={keyword:"ref",schemaType:"string",code(t){(0,qWt.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,Qv._)`${r} === null`),e.if((0,Qv.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 FWt.default(i.opts.uriResolver,"",n,`No definition ${n}`);cq(f)||!i.opts.inlineRefs?u(f):l(f)}function u(d){let f=SIe.compileSchema.call(i.self,new SIe.SchemaEnv({schema:d,root:a,schemaPath:`/definitions/${n}`})),m=(0,CIe.getValidate)(t,f),p=e.const("_errs",IIe.default.errors);(0,CIe.callRef)(t,m,f,f.$async),e.assign(o,(0,Qv._)`${p} === ${IIe.default.errors}`)}function l(d){let f=e.scopeValue("schema",i.opts.code.source===!0?{ref:d,code:(0,Qv.stringify)(d)}:{ref:d});t.subschema({schema:d,dataTypes:[],schemaPath:Qv.nil,topSchemaRef:f,errSchemaPath:`/definitions/${n}`},o)}}};function cq(t){for(let e in t){let r;if(e==="ref"||typeof(r=t[e])=="object"&&cq(r))return!0}return!1}Hv.hasRef=cq;Hv.default=jWt});var lq=_(uq=>{"use strict";Object.defineProperty(uq,"__esModule",{value:!0});var QWt=/t|\s/i,HWt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,GWt=/^(\d\d):(\d\d):(\d\d)(?:\.\d+)?(?:z|([+-]\d\d)(?::?(\d\d))?)$/i,VWt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function wIe(t,e){let r=t.split(QWt);return r.length===2&&TIe(r[0])&&KWt(r[1])||e&&r.length===1&&TIe(r[0])}uq.default=wIe;function TIe(t){let e=HWt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&(s<=VWt[n]||n===2&&s===29&&(r%100===0?r%400===0:r%4===0))}function KWt(t){let e=GWt.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}wIe.code='require("ajv/dist/runtime/timestamp").default'});var dx=_(e0=>{"use strict";Object.defineProperty(e0,"__esModule",{value:!0});e0.typeErrorParams=e0.typeErrorMessage=e0.typeError=void 0;var zWt=_t();function YWt(t){return{message:e=>RIe(e,t),params:e=>NIe(e,t)}}e0.typeError=YWt;function RIe({parentSchema:t},e){return t?.nullable?`must be ${e} or null`:`must be ${e}`}e0.typeErrorMessage=RIe;function NIe({parentSchema:t},e){return(0,zWt._)`{type: ${e}, nullable: ${!!t?.nullable}}`}e0.typeErrorParams=NIe});var dq=_(fx=>{"use strict";Object.defineProperty(fx,"__esModule",{value:!0});fx.intRange=void 0;var Oo=_t(),JWt=lq(),XWt=Yt(),ZWt=Gd(),OIe=dx();fx.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 e8t={message:t=>(0,OIe.typeErrorMessage)(t,t.schema),params:t=>(0,OIe.typeErrorParams)(t,t.schema)};function t8t(t){let{gen:e,data:r,it:n}=t,{timestamp:s,allowDate:i}=n.opts;if(s==="date")return(0,Oo._)`${r} instanceof Date `;let a=(0,XWt.useFunc)(e,JWt.default),o=i?(0,Oo._)`, true`:Oo.nil,c=(0,Oo._)`typeof ${r} == "string" && ${a}(${r}${o})`;return s==="string"?c:(0,Oo.or)((0,Oo._)`${r} instanceof Date`,c)}var r8t={keyword:"type",schemaType:"string",error:e8t,code(t){(0,ZWt.checkMetadata)(t);let{data:e,schema:r,parentSchema:n,it:s}=t,i;switch(r){case"boolean":case"string":i=(0,Oo._)`typeof ${e} == ${r}`;break;case"timestamp":{i=t8t(t);break}case"float32":case"float64":i=(0,Oo._)`typeof ${e} == "number"`;break;default:{let a=r;if(i=(0,Oo._)`typeof ${e} == "number" && isFinite(${e}) && !(${e} % 1)`,!s.opts.int32range&&(a==="int32"||a==="uint32"))a==="uint32"&&(i=(0,Oo._)`${i} && ${e} >= 0`);else{let[o,c]=fx.intRange[a];i=(0,Oo._)`${i} && ${e} >= ${o} && ${e} <= ${c}`}}}t.pass(n.nullable?(0,Oo.or)((0,Oo._)`${e} === null`,i):i)}};fx.default=r8t});var mx=_(px=>{"use strict";Object.defineProperty(px,"__esModule",{value:!0});px.checkNullableObject=px.checkNullable=void 0;var AP=_t();function kIe({gen:t,data:e,parentSchema:r},n=AP.nil){let s=t.name("valid");return r.nullable?(t.let(s,(0,AP._)`${e} === null`),n=(0,AP.not)(s)):t.let(s,!1),[s,n]}px.checkNullable=kIe;function n8t(t,e){let[r,n]=kIe(t,e);return[r,(0,AP._)`${n} && typeof ${t.data} == "object" && !Array.isArray(${t.data})`]}px.checkNullableObject=n8t});var PIe=_(fq=>{"use strict";Object.defineProperty(fq,"__esModule",{value:!0});var t0=_t(),s8t=Gd(),i8t=mx(),a8t={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,t0._)`{allowedValues: ${t}}`},o8t={keyword:"enum",schemaType:"array",error:a8t,code(t){(0,s8t.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,t0._)`typeof ${r} == "string"`;if(n.length>=a.opts.loopEnum){let l;[o,l]=(0,i8t.checkNullable)(t,c),e.if(l,u)}else{if(!Array.isArray(n))throw new Error("ajv implementation error");o=(0,t0.and)(c,(0,t0.or)(...n.map(l=>(0,t0._)`${r} === ${l}`))),i.nullable&&(o=(0,t0.or)((0,t0._)`${r} === null`,o))}t.pass(o);function u(){e.forOf("v",s,l=>e.if((0,t0._)`${o} = ${r} === ${l}`,()=>e.break()))}}};fq.default=o8t});var BIe=_(pq=>{"use strict";Object.defineProperty(pq,"__esModule",{value:!0});var c8t=Yt(),u8t=xi(),DIe=_t(),l8t=Gd(),d8t=mx(),f8t=dx(),p8t={keyword:"elements",schemaType:"object",error:(0,f8t.typeError)("array"),code(t){(0,l8t.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t;if((0,c8t.alwaysValidSchema)(s,n))return;let[i]=(0,d8t.checkNullable)(t);e.if((0,DIe.not)(i),()=>e.if((0,DIe._)`Array.isArray(${r})`,()=>e.assign(i,(0,u8t.validateArray)(t)),()=>t.error())),t.ok(i)}};pq.default=p8t});var hq=_(r0=>{"use strict";Object.defineProperty(r0,"__esModule",{value:!0});r0.validateProperties=r0.error=void 0;var mq=xi(),LIe=Yt(),Vd=_t(),m8t=Gd(),h8t=mx(),MIe=dx(),hx;(function(t){t.Additional="additional",t.Missing="missing"})(hx||(hx={}));r0.error={message:t=>{let{params:e}=t;return e.propError?e.propError===hx.Additional?"must NOT have additional properties":`must have property '${e.missingProperty}'`:(0,MIe.typeErrorMessage)(t,"object")},params:t=>{let{params:e}=t;return e.propError?e.propError===hx.Additional?(0,Vd._)`{error: ${e.propError}, additionalProperty: ${e.additionalProperty}}`:(0,Vd._)`{error: ${e.propError}, missingProperty: ${e.missingProperty}}`:(0,MIe.typeErrorParams)(t,"object")}};var g8t={keyword:"properties",schemaType:"object",error:r0.error,code:WIe};function WIe(t){(0,m8t.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(m())throw new Error("JTD: properties and optionalProperties have common members");let[o,c]=p("properties"),[u,l]=p("optionalProperties");if(c.length===0&&l.length===0&&i)return;let[d,f]=s.jtdDiscriminator===void 0?(0,h8t.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 m(){let b=n.properties,x=n.optionalProperties;if(!(b&&x))return!1;for(let S in b)if(Object.prototype.hasOwnProperty.call(x,S))return!0;return!1}function p(b){let x=n[b],S=x?(0,mq.allSchemaProperties)(x):[];if(s.jtdDiscriminator&&S.some(I=>I===s.jtdDiscriminator))throw new Error(`JTD: discriminator tag used in ${b}`);let T=S.filter(I=>!(0,LIe.alwaysValidSchema)(s,x[I]));return[S,T]}function h(b,x,S){let T=e.var("valid");for(let R of b)e.if((0,mq.propertyInData)(e,r,R,s.opts.ownProperties),()=>y(R,x,T),()=>I(R)),t.ok(T);function I(R){S?(e.assign(T,!1),t.error(!1,{propError:hx.Missing,missingProperty:R},{schemaPath:R})):e.assign(T,!0)}}function y(b,x,S){t.subschema({keyword:x,schemaProp:b,dataProp:b},S)}function g(){e.forIn("key",r,b=>{let x=A(b,o,"properties",s.jtdDiscriminator),S=A(b,u,"optionalProperties"),T=x===!0?S:S===!0?x:(0,Vd.and)(x,S);e.if(T,()=>{s.opts.removeAdditional?e.code((0,Vd._)`delete ${r}[${b}]`):(t.error(!1,{propError:hx.Additional,additionalProperty:b},{instancePath:b,parentSchema:!0}),s.opts.allErrors||e.break())})})}function A(b,x,S,T){let I;if(x.length>8){let R=(0,LIe.schemaRefOrVal)(s,n[S],S);I=(0,Vd.not)((0,mq.isOwnProperty)(e,R,b)),T!==void 0&&(I=(0,Vd.and)(I,(0,Vd._)`${b} !== ${T}`))}else if(x.length||T!==void 0){let R=T===void 0?x:[T].concat(x);I=(0,Vd.and)(...R.map(N=>(0,Vd._)`${b} !== ${N}`))}else I=!0;return I}}r0.validateProperties=WIe;r0.default=g8t});var UIe=_(gq=>{"use strict";Object.defineProperty(gq,"__esModule",{value:!0});var $Ie=hq(),y8t={keyword:"optionalProperties",schemaType:"object",error:$Ie.error,code(t){t.parentSchema.properties||(0,$Ie.validateProperties)(t)}};gq.default=y8t});var qIe=_(yq=>{"use strict";Object.defineProperty(yq,"__esModule",{value:!0});var Eh=_t(),A8t=Gd(),x8t=mx(),FIe=dx(),xP=sq(),b8t={message:t=>{let{schema:e,params:r}=t;return r.discrError?r.discrError===xP.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in mapping`:(0,FIe.typeErrorMessage)(t,"object")},params:t=>{let{schema:e,params:r}=t;return r.discrError?(0,Eh._)`{error: ${r.discrError}, tag: ${e}, tagValue: ${r.tag}}`:(0,FIe.typeErrorParams)(t,"object")}},_8t={keyword:"discriminator",schemaType:"string",implements:["mapping"],error:b8t,code(t){(0,A8t.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s}=t,[i,a]=(0,x8t.checkNullableObject)(t,r);e.if(a),o(),e.elseIf((0,Eh.not)(i)),t.error(),e.endIf(),t.ok(i);function o(){let l=e.const("tag",(0,Eh._)`${r}${(0,Eh.getProperty)(n)}`);e.if((0,Eh._)`${l} === undefined`),t.error(!1,{discrError:xP.DiscrError.Tag,tag:l}),e.elseIf((0,Eh._)`typeof ${l} == "string"`),c(l),e.else(),t.error(!1,{discrError:xP.DiscrError.Tag,tag:l},{instancePath:n}),e.endIf()}function c(l){e.if(!1);for(let d in s.mapping)e.elseIf((0,Eh._)`${l} === ${d}`),e.assign(i,u(d));e.else(),t.error(!1,{discrError:xP.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}}};yq.default=_8t});var QIe=_(Aq=>{"use strict";Object.defineProperty(Aq,"__esModule",{value:!0});var jIe=Yt(),bP=_t(),E8t=Gd(),v8t=mx(),S8t=dx(),I8t={keyword:"values",schemaType:"object",error:(0,S8t.typeError)("object"),code(t){(0,E8t.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t,[i,a]=(0,v8t.checkNullableObject)(t,r);(0,jIe.alwaysValidSchema)(s,n)?e.if((0,bP.not)((0,bP.or)(a,i)),()=>t.error()):(e.if(a),e.assign(i,o()),e.elseIf((0,bP.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:jIe.Type.Str},c),e.if((0,bP.not)(c),l)})}}}};Aq.default=I8t});var HIe=_(xq=>{"use strict";Object.defineProperty(xq,"__esModule",{value:!0});var C8t=xi(),T8t={keyword:"union",schemaType:"array",trackErrors:!0,code:C8t.validateUnion,error:{message:"must match a schema in union"}};xq.default=T8t});var GIe=_(bq=>{"use strict";Object.defineProperty(bq,"__esModule",{value:!0});var w8t=yP(),R8t=dq(),N8t=PIe(),O8t=BIe(),k8t=hq(),P8t=UIe(),D8t=qIe(),B8t=QIe(),L8t=HIe(),M8t=Gd(),W8t=["definitions",w8t.default,R8t.default,N8t.default,O8t.default,k8t.default,P8t.default,D8t.default,B8t.default,L8t.default,M8t.default,{keyword:"additionalProperties",schemaType:"boolean"},{keyword:"nullable",schemaType:"boolean"}];bq.default=W8t});var YIe=_(_q=>{"use strict";Object.defineProperty(_q,"__esModule",{value:!0});var Kd=t=>{let e={nullable:{type:"boolean"},metadata:{optionalProperties:{union:{elements:{ref:"schema"}}},additionalProperties:!0}};return t&&(e.definitions={values:{ref:"schema"}}),e},$8t=t=>({optionalProperties:Kd(t)}),U8t=t=>({properties:{ref:{type:"string"}},optionalProperties:Kd(t)}),F8t=t=>({properties:{type:{enum:["boolean","timestamp","string","float32","float64","int8","uint8","int16","uint16","int32","uint32"]}},optionalProperties:Kd(t)}),q8t=t=>({properties:{enum:{elements:{type:"string"}}},optionalProperties:Kd(t)}),j8t=t=>({properties:{elements:{ref:"schema"}},optionalProperties:Kd(t)}),KIe=t=>({properties:{properties:{values:{ref:"schema"}}},optionalProperties:{optionalProperties:{values:{ref:"schema"}},additionalProperties:{type:"boolean"},...Kd(t)}}),zIe=t=>({properties:{optionalProperties:{values:{ref:"schema"}}},optionalProperties:{additionalProperties:{type:"boolean"},...Kd(t)}}),Q8t=t=>({properties:{discriminator:{type:"string"},mapping:{values:{metadata:{union:[KIe(!1),zIe(!1)]}}}},optionalProperties:Kd(t)}),H8t=t=>({properties:{values:{ref:"schema"}},optionalProperties:Kd(t)}),VIe=t=>({metadata:{union:[$8t,U8t,F8t,q8t,j8t,KIe,zIe,Q8t,H8t].map(e=>e(t))}}),G8t={definitions:{schema:VIe(!1)},...VIe(!0)};_q.default=G8t});var Eq=_(_P=>{"use strict";Object.defineProperty(_P,"__esModule",{value:!0});_P.jtdForms=void 0;_P.jtdForms=["elements","values","discriminator","properties","optionalProperties","enum","type","ref"]});var XIe=_(Sq=>{"use strict";Object.defineProperty(Sq,"__esModule",{value:!0});var vq=/[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,V8t={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function JIe(t){return vq.lastIndex=0,'"'+(vq.test(t)?t.replace(vq,e=>{let r=V8t[e];return typeof r=="string"?r:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}):t)+'"'}Sq.default=JIe;JIe.code='require("ajv/dist/runtime/quote").default'});var sCe=_(Cq=>{"use strict";Object.defineProperty(Cq,"__esModule",{value:!0});var K8t=Eq(),eCe=Ah(),Ar=_t(),z8t=Qd(),En=fc(),Y8t=xi(),J8t=yP(),X8t=Yt(),Z8t=XIe(),e$t={elements:r$t,values:n$t,discriminator:s$t,properties:ZIe,optionalProperties:ZIe,enum:Gv,type:i$t,ref:o$t};function tCe(t,e){let r=eCe.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Ar.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,Ar.str)``),Vv(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}Cq.default=tCe;function Vv(t){let e;for(let r of K8t.jtdForms)if(r in t.schema){e=r;break}t$t(t,e?e$t[e]:u$t)}function t$t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);r.if((0,Ar._)`${s} === undefined || ${s} === null`,()=>r.add(En.default.json,(0,Ar._)`"null"`),()=>e(t))}function r$t(t){let{gen:e,schema:r,data:n}=t;e.add(En.default.json,(0,Ar.str)`[`);let s=e.let("first",!0);e.forOf("el",n,i=>{Iq(t,s),Vv({...t,schema:r.elements,data:i})}),e.add(En.default.json,(0,Ar.str)`]`)}function n$t(t){let{gen:e,schema:r,data:n}=t;e.add(En.default.json,(0,Ar.str)`{`);let s=e.let("first",!0);e.forIn("key",n,i=>rCe(t,i,r.values,s)),e.add(En.default.json,(0,Ar.str)`}`)}function rCe(t,e,r,n){let{gen:s,data:i}=t;Iq(t,n),Gv({...t,data:e}),s.add(En.default.json,(0,Ar.str)`:`);let a=s.const("value",(0,Ar._)`${i}${(0,Ar.getProperty)(e)}`);Vv({...t,schema:r,data:a})}function s$t(t){let{gen:e,schema:r,data:n}=t,{discriminator:s}=r;e.add(En.default.json,(0,Ar.str)`{${JSON.stringify(s)}:`);let i=e.const("tag",(0,Ar._)`${n}${(0,Ar.getProperty)(s)}`);Gv({...t,data:i}),e.if(!1);for(let a in r.mapping){e.elseIf((0,Ar._)`${i} === ${a}`);let o=r.mapping[a];nCe({...t,schema:o},s)}e.endIf(),e.add(En.default.json,(0,Ar.str)`}`)}function ZIe(t){let{gen:e}=t;e.add(En.default.json,(0,Ar.str)`{`),nCe(t),e.add(En.default.json,(0,Ar.str)`}`)}function nCe(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a}=n,o=f(i),c=f(a),u=m(o.concat(c)),l=!e,d;for(let g of o)l?l=!1:r.add(En.default.json,(0,Ar.str)`,`),h(g,i[g],p(g));l&&(d=r.let("first",!0));for(let g of c){let A=p(g);r.if((0,Ar.and)((0,Ar._)`${A} !== undefined`,(0,Y8t.isOwnProperty)(r,s,g)),()=>{Iq(t,d),h(g,a[g],A)})}n.additionalProperties&&r.forIn("key",s,g=>r.if(y(g,u),()=>rCe(t,g,{},d)));function f(g){return g?Object.keys(g):[]}function m(g){if(e&&g.push(e),new Set(g).size!==g.length)throw new Error("JTD: properties/optionalProperties/disciminator overlap");return g}function p(g){return r.const("value",(0,Ar._)`${s}${(0,Ar.getProperty)(g)}`)}function h(g,A,b){r.add(En.default.json,(0,Ar.str)`${JSON.stringify(g)}:`),Vv({...t,schema:A,data:b})}function y(g,A){return A.length?(0,Ar.and)(...A.map(b=>(0,Ar._)`${g} !== ${b}`)):!0}}function i$t(t){let{gen:e,schema:r,data:n}=t;switch(r.type){case"boolean":e.add(En.default.json,(0,Ar._)`${n} ? "true" : "false"`);break;case"string":Gv(t);break;case"timestamp":e.if((0,Ar._)`${n} instanceof Date`,()=>e.add(En.default.json,(0,Ar._)`'"' + ${n}.toISOString() + '"'`),()=>Gv(t));break;default:a$t(t)}}function Gv({gen:t,data:e}){t.add(En.default.json,(0,Ar._)`${(0,X8t.useFunc)(t,Z8t.default)}(${e})`)}function a$t({gen:t,data:e}){t.add(En.default.json,(0,Ar._)`"" + ${e}`)}function o$t(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 z8t.default(r.opts.uriResolver,"",o,`No definition ${o}`);if(!(0,J8t.hasRef)(c))return Vv({...t,schema:c});let{root:u}=a,l=tCe.call(r,new eCe.SchemaEnv({schema:c,root:u}),s);e.add(En.default.json,(0,Ar._)`${c$t(e,l)}(${n})`)}function c$t(t,e){return e.serialize?t.scopeValue("serialize",{ref:e.serialize}):(0,Ar._)`${t.scopeValue("wrapper",{ref:e})}.serialize`}function u$t({gen:t,data:e}){t.add(En.default.json,(0,Ar._)`JSON.stringify(${e})`)}function Iq({gen:t},e){e?t.if(e,()=>t.assign(e,!1),()=>t.add(En.default.json,(0,Ar.str)`,`)):t.add(En.default.json,(0,Ar.str)`,`)}});var aCe=_(s0=>{"use strict";Object.defineProperty(s0,"__esModule",{value:!0});s0.parseJsonString=s0.parseJsonNumber=s0.parseJson=void 0;var l$t=/position\s(\d+)(?: \(line \d+ column \d+\))?$/;function zd(t,e){let r;zd.message=void 0;let n;e&&(t=t.slice(e));try{return zd.position=e+t.length,JSON.parse(t)}catch(s){if(n=l$t.exec(s.message),!n){zd.message="unexpected end";return}r=+n[1];let i=t[r];t=t.slice(0,r),zd.position=e+r;try{return JSON.parse(t)}catch{zd.message=`unexpected token ${i}`;return}}}s0.parseJson=zd;zd.message=void 0;zd.position=0;zd.code='require("ajv/dist/runtime/parseJson").parseJson';function Yd(t,e,r){let n="",s;if(Yd.message=void 0,t[e]==="-"&&(n+="-",e++),t[e]==="0")n+="0",e++;else if(!i(r)){a();return}if(r)return Yd.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 Yd.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(){Yd.position=e,Yd.message=e<t.length?`unexpected token ${t[e]}`:"unexpected end"}}s0.parseJsonNumber=Yd;Yd.message=void 0;Yd.position=0;Yd.code='require("ajv/dist/runtime/parseJson").parseJsonNumber';var iCe={b:"\b",f:"\f",n:`
`,r:"\r",t:" ",'"':'"',"/":"/","\\":"\\"},d$t=97,f$t=48;function n0(t,e){let r="",n;for(n0.message=void 0;n=t[e++],n!=='"';)if(n==="\\")if(n=t[e],n in iCe)r+=iCe[n],e++;else if(n==="u"){e++;let i=4,a=0;for(;i--;){if(a<<=4,n=t[e],n===void 0){s("unexpected end");return}if(n=n.toLowerCase(),n>="a"&&n<="f")a+=n.charCodeAt(0)-d$t+10;else if(n>="0"&&n<="9")a+=n.charCodeAt(0)-f$t;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 n0.position=e,r;function s(i){n0.position=e,n0.message=i}}s0.parseJsonString=n0;n0.message=void 0;n0.position=0;n0.code='require("ajv/dist/runtime/parseJson").parseJsonString'});var yCe=_(Dq=>{"use strict";Object.defineProperty(Dq,"__esModule",{value:!0});var p$t=Eq(),lCe=Ah(),lt=_t(),m$t=Qd(),mr=fc(),h$t=xi(),g$t=yP(),y$t=dq(),Rq=aCe(),dCe=Yt(),A$t=lq(),x$t={elements:v$t,values:S$t,discriminator:C$t,properties:oCe,optionalProperties:oCe,enum:w$t,type:T$t,ref:R$t};function fCe(t,e){let r=lCe.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new lt.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("parse"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:mr.default.data,parseName:o,char:a.name("c")},u;try{this._compilations.add(t),t.parseName=o,b$t(c),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(mr.default.scope)}return ${l}`;let f=new Function(`${mr.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}Dq.default=fCe;var wq=(0,lt._)`undefined`;function b$t(t){let{gen:e,parseName:r,char:n}=t;e.func(r,(0,lt._)`${mr.default.json}, ${mr.default.jsonPos}, ${mr.default.jsonPart}`,!1,()=>{e.let(mr.default.data),e.let(n),e.assign((0,lt._)`${r}.message`,wq),e.assign((0,lt._)`${r}.position`,wq),e.assign(mr.default.jsonPos,(0,lt._)`${mr.default.jsonPos} || 0`),e.const(mr.default.jsonLen,(0,lt._)`${mr.default.json}.length`),EP(t),Pq(t),e.if(mr.default.jsonPart,()=>{e.assign((0,lt._)`${r}.position`,mr.default.jsonPos),e.return(mr.default.data)}),e.if((0,lt._)`${mr.default.jsonPos} === ${mr.default.jsonLen}`,()=>e.return(mr.default.data)),gx(t)})}function EP(t){let e;for(let r of p$t.jtdForms)if(r in t.schema){e=r;break}e?E$t(t,x$t[e]):Oq(t)}var _$t=uCe(!0,uCe(!1,gx));function E$t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);Kv(t,"null",e,()=>r.assign(s,null))}function v$t(t){let{gen:e,schema:r,data:n}=t;pl(t,"[");let s=e.let("i",0);e.assign(n,(0,lt._)`[]`),Nq(t,"]",()=>{let i=e.let("el");EP({...t,schema:r.elements,data:i}),e.assign((0,lt._)`${n}[${s}++]`,i)})}function S$t(t){let{gen:e,schema:r,data:n}=t;pl(t,"{"),e.assign(n,(0,lt._)`{}`),Nq(t,"}",()=>I$t(t,r.values))}function Nq(t,e,r){pCe(t,e,r),pl(t,e)}function pCe(t,e,r){let{gen:n}=t;n.for((0,lt._)`;${mr.default.jsonPos}<${mr.default.jsonLen} && ${vP(1)}!==${e};`,()=>{r(),Kv(t,",",()=>n.break(),s)});function s(){Kv(t,e,()=>{},gx)}}function I$t(t,e){let{gen:r}=t,n=r.let("key");vh({...t,data:n}),pl(t,":"),hCe(t,n,e)}function C$t(t){let{gen:e,data:r,schema:n}=t,{discriminator:s,mapping:i}=n;pl(t,"{"),e.assign(r,(0,lt._)`{}`);let a=e.const("pos",mr.default.jsonPos),o=e.let("value"),c=e.let("tag");pCe(t,"}",()=>{let u=e.let("key");vh({...t,data:u}),pl(t,":"),e.if((0,lt._)`${u} === ${s}`,()=>{vh({...t,data:c}),e.assign((0,lt._)`${r}[${u}]`,c),e.break()},()=>Oq({...t,data:o}))}),e.assign(mr.default.jsonPos,a),e.if((0,lt._)`${c} === undefined`),Jd(t,(0,lt.str)`discriminator tag not found`);for(let u in i)e.elseIf((0,lt._)`${c} === ${u}`),mCe({...t,schema:i[u]},s);e.else(),Jd(t,(0,lt.str)`discriminator value not in schema`),e.endIf()}function oCe(t){let{gen:e,data:r}=t;pl(t,"{"),e.assign(r,(0,lt._)`{}`),mCe(t)}function mCe(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a,additionalProperties:o}=n;if(Nq(t,"}",()=>{let c=r.let("key");if(vh({...t,data:c}),pl(t,":"),r.if(!1),cCe(t,c,i),cCe(t,c,a),e){r.elseIf((0,lt._)`${c} === ${e}`);let u=r.let("tag");vh({...t,data:u})}r.else(),o?Oq({...t,data:(0,lt._)`${s}[${c}]`}):Jd(t,(0,lt.str)`property ${c} not allowed`),r.endIf()}),i){let c=(0,h$t.hasPropFunc)(r),u=(0,lt.and)(...Object.keys(i).map(l=>(0,lt._)`${c}.call(${s}, ${l})`));r.if((0,lt.not)(u),()=>Jd(t,(0,lt.str)`missing required properties`))}}function cCe(t,e,r={}){let{gen:n}=t;for(let s in r)n.elseIf((0,lt._)`${e} === ${s}`),hCe(t,e,r[s])}function hCe(t,e,r){EP({...t,schema:r,data:(0,lt._)`${t.data}[${e}]`})}function T$t(t){let{gen:e,schema:r,data:n,self:s}=t;switch(r.type){case"boolean":_$t(t);break;case"string":vh(t);break;case"timestamp":{vh(t);let i=(0,dCe.useFunc)(e,A$t.default),{allowDate:a,parseDate:o}=s.opts,c=a?(0,lt._)`!${i}(${n}, true)`:(0,lt._)`!${i}(${n})`,u=o?(0,lt.or)(c,(0,lt._)`(${n} = new Date(${n}), false)`,(0,lt._)`isNaN(${n}.valueOf())`):c;e.if(u,()=>Jd(t,(0,lt.str)`invalid timestamp`));break}case"float32":case"float64":Tq(t);break;default:{let i=r.type;if(!s.opts.int32range&&(i==="int32"||i==="uint32"))Tq(t,16),i==="uint32"&&e.if((0,lt._)`${n} < 0`,()=>Jd(t,(0,lt.str)`integer out of range`));else{let[a,o,c]=y$t.intRange[i];Tq(t,c),e.if((0,lt._)`${n} < ${a} || ${n} > ${o}`,()=>Jd(t,(0,lt.str)`integer out of range`))}}}}function vh(t){pl(t,'"'),kq(t,Rq.parseJsonString)}function w$t(t){let{gen:e,data:r,schema:n}=t,s=n.enum;pl(t,'"'),e.if(!1);for(let i of s){let a=JSON.stringify(i).slice(1);e.elseIf((0,lt._)`${vP(a.length)} === ${a}`),e.assign(r,(0,lt.str)`${i}`),e.add(mr.default.jsonPos,a.length)}e.else(),gx(t),e.endIf()}function Tq(t,e){let{gen:r}=t;Pq(t),r.if((0,lt._)`"-0123456789".indexOf(${vP(1)}) < 0`,()=>gx(t),()=>kq(t,Rq.parseJsonNumber,e))}function uCe(t,e){return r=>{let{gen:n,data:s}=r;Kv(r,`${t}`,()=>e(r),()=>n.assign(s,t))}}function R$t(t){let{gen:e,self:r,definitions:n,schema:s,schemaEnv:i}=t,{ref:a}=s,o=n[a];if(!o)throw new m$t.default(r.opts.uriResolver,"",a,`No definition ${a}`);if(!(0,g$t.hasRef)(o))return EP({...t,schema:o});let{root:c}=i,u=fCe.call(r,new lCe.SchemaEnv({schema:o,root:c}),n);gCe(t,N$t(e,u),!0)}function N$t(t,e){return e.parse?t.scopeValue("parse",{ref:e.parse}):(0,lt._)`${t.scopeValue("wrapper",{ref:e})}.parse`}function Oq(t){kq(t,Rq.parseJson)}function kq(t,e,r){gCe(t,(0,dCe.useFunc)(t.gen,e),r)}function gCe(t,e,r){let{gen:n,data:s}=t;n.assign(s,(0,lt._)`${e}(${mr.default.json}, ${mr.default.jsonPos}${r?(0,lt._)`, ${r}`:lt.nil})`),n.assign(mr.default.jsonPos,(0,lt._)`${e}.position`),n.if((0,lt._)`${s} === undefined`,()=>Jd(t,(0,lt._)`${e}.message`))}function pl(t,e){Kv(t,e,gx)}function Kv(t,e,r,n){let{gen:s}=t,i=e.length;Pq(t),s.if((0,lt._)`${vP(i)} === ${e}`,()=>{s.add(mr.default.jsonPos,i),n?.(t)},()=>r(t))}function Pq({gen:t,char:e}){t.code((0,lt._)`while((${e}=${mr.default.json}[${mr.default.jsonPos}],${e}===" "||${e}==="\\n"||${e}==="\\r"||${e}==="\\t"))${mr.default.jsonPos}++;`)}function vP(t){return t===1?(0,lt._)`${mr.default.json}[${mr.default.jsonPos}]`:(0,lt._)`${mr.default.json}.slice(${mr.default.jsonPos}, ${mr.default.jsonPos}+${t})`}function gx(t){Jd(t,(0,lt._)`"unexpected token " + ${mr.default.json}[${mr.default.jsonPos}]`)}function Jd({gen:t,parseName:e},r){t.assign((0,lt._)`${e}.message`,r),t.assign((0,lt._)`${e}.position`,mr.default.jsonPos),t.return(wq)}});var Mq=_((Dn,Lq)=>{"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 O$t=g9(),k$t=GIe(),P$t=YIe(),D$t=sCe(),B$t=yCe(),Bq="JTD-meta-schema",yx=class extends O$t.default{constructor(e={}){super({...e,jtd:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(k$t.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema(),this.opts.meta&&this.addMetaSchema(P$t.default,Bq,!1)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Bq)?Bq: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(D$t.default.call(this,e,e.schema.definitions||{}),!e.serialize)throw new Error("ajv implementation error");return e.serialize}_compileParser(e){if(B$t.default.call(this,e,e.schema.definitions||{}),!e.parse)throw new Error("ajv implementation error");return e.parse}};Dn.Ajv=yx;Lq.exports=Dn=yx;Lq.exports.Ajv=yx;Object.defineProperty(Dn,"__esModule",{value:!0});Dn.default=yx;var L$t=nx();Object.defineProperty(Dn,"KeywordCxt",{enumerable:!0,get:function(){return L$t.KeywordCxt}});var Ax=_t();Object.defineProperty(Dn,"_",{enumerable:!0,get:function(){return Ax._}});Object.defineProperty(Dn,"str",{enumerable:!0,get:function(){return Ax.str}});Object.defineProperty(Dn,"stringify",{enumerable:!0,get:function(){return Ax.stringify}});Object.defineProperty(Dn,"nil",{enumerable:!0,get:function(){return Ax.nil}});Object.defineProperty(Dn,"Name",{enumerable:!0,get:function(){return Ax.Name}});Object.defineProperty(Dn,"CodeGen",{enumerable:!0,get:function(){return Ax.CodeGen}});var M$t=Rv();Object.defineProperty(Dn,"ValidationError",{enumerable:!0,get:function(){return M$t.default}});var W$t=Qd();Object.defineProperty(Dn,"MissingRefError",{enumerable:!0,get:function(){return W$t.default}})});var Wq=_((P7r,ACe)=>{"use strict";var $$t=nF();ACe.exports=Object.freeze({coerceTypes:"array",useDefaults:!0,removeAdditional:!0,uriResolver:$$t,addUsedSchema:!1,allErrors:!1})});var SCe=_(ml=>{"use strict";Object.defineProperty(ml,"__esModule",{value:!0});ml.formatNames=ml.fastFormats=ml.fullFormats=void 0;function xx(t,e){return{validate:t,compare:e}}ml.fullFormats={date:xx(_Ce,Fq),time:xx(ECe,qq),"date-time":xx(j$t,vCe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:G$t,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:Z$t,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:V$t,int32:{type:"number",validate:Y$t},int64:{type:"number",validate:J$t},float:{type:"number",validate:bCe},double:{type:"number",validate:bCe},password:!0,binary:!0};ml.fastFormats={...ml.fullFormats,date:xx(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Fq),time:xx(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,qq),"date-time":xx(/^\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,vCe),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};ml.formatNames=Object.keys(ml.fullFormats);function U$t(t){return t%4===0&&(t%100!==0||t%400===0)}var F$t=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,q$t=[0,31,28,31,30,31,30,31,31,30,31,30,31];function _Ce(t){let e=F$t.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&U$t(r)?29:q$t[n])}function Fq(t,e){if(t&&e)return t>e?1:t<e?-1:0}var $q=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i;function ECe(t,e){let r=$q.exec(t);if(!r)return!1;let n=+r[1],s=+r[2],i=+r[3],a=r[5];return(n<=23&&s<=59&&i<=59||n===23&&s===59&&i===60)&&(!e||a!=="")}function qq(t,e){if(!(t&&e))return;let r=$q.exec(t),n=$q.exec(e);if(r&&n)return t=r[1]+r[2]+r[3]+(r[4]||""),e=n[1]+n[2]+n[3]+(n[4]||""),t>e?1:t<e?-1:0}var Uq=/t|\s/i;function j$t(t){let e=t.split(Uq);return e.length===2&&_Ce(e[0])&&ECe(e[1],!0)}function vCe(t,e){if(!(t&&e))return;let[r,n]=t.split(Uq),[s,i]=e.split(Uq),a=Fq(r,s);if(a!==void 0)return a||qq(n,i)}var Q$t=/\/|:/,H$t=/^(?:[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;function G$t(t){return Q$t.test(t)&&H$t.test(t)}var xCe=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function V$t(t){return xCe.lastIndex=0,xCe.test(t)}var K$t=-(2**31),z$t=2**31-1;function Y$t(t){return Number.isInteger(t)&&t<=z$t&&t>=K$t}function J$t(t){return Number.isInteger(t)}function bCe(){return!0}var X$t=/[^\\]\\Z/;function Z$t(t){if(X$t.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Jv=_(Ur=>{"use strict";Object.defineProperty(Ur,"__esModule",{value:!0});Ur.regexpCode=Ur.getEsmExportName=Ur.getProperty=Ur.safeStringify=Ur.stringify=Ur.strConcat=Ur.addCodeArg=Ur.str=Ur._=Ur.nil=Ur._Code=Ur.Name=Ur.IDENTIFIER=Ur._CodeOrName=void 0;var zv=class{};Ur._CodeOrName=zv;Ur.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Sh=class extends zv{constructor(e){if(super(),!Ur.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Ur.Name=Sh;var hc=class extends zv{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 Sh&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Ur._Code=hc;Ur.nil=new hc("");function ICe(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Qq(r,e[n]),r.push(t[++n]);return new hc(r)}Ur._=ICe;var jq=new hc("+");function CCe(t,...e){let r=[Yv(t[0])],n=0;for(;n<e.length;)r.push(jq),Qq(r,e[n]),r.push(jq,Yv(t[++n]));return eUt(r),new hc(r)}Ur.str=CCe;function Qq(t,e){e instanceof hc?t.push(...e._items):e instanceof Sh?t.push(e):t.push(nUt(e))}Ur.addCodeArg=Qq;function eUt(t){let e=1;for(;e<t.length-1;){if(t[e]===jq){let r=tUt(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function tUt(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Sh||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof Sh))return`"${t}${e.slice(1)}`}function rUt(t,e){return e.emptyStr()?t:t.emptyStr()?e:CCe`${t}${e}`}Ur.strConcat=rUt;function nUt(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Yv(Array.isArray(t)?t.join(","):t)}function sUt(t){return new hc(Yv(t))}Ur.stringify=sUt;function Yv(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Ur.safeStringify=Yv;function iUt(t){return typeof t=="string"&&Ur.IDENTIFIER.test(t)?new hc(`.${t}`):ICe`[${t}]`}Ur.getProperty=iUt;function aUt(t){if(typeof t=="string"&&Ur.IDENTIFIER.test(t))return new hc(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Ur.getEsmExportName=aUt;function oUt(t){return new hc(t.toString())}Ur.regexpCode=oUt});var Vq=_(Ya=>{"use strict";Object.defineProperty(Ya,"__esModule",{value:!0});Ya.ValueScope=Ya.ValueScopeName=Ya.Scope=Ya.varKinds=Ya.UsedValueState=void 0;var za=Jv(),Hq=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},SP;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(SP||(Ya.UsedValueState=SP={}));Ya.varKinds={const:new za.Name("const"),let:new za.Name("let"),var:new za.Name("var")};var IP=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof za.Name?e:this.name(e)}name(e){return new za.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ya.Scope=IP;var CP=class extends za.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,za._)`.${new za.Name(r)}[${n}]`}};Ya.ValueScopeName=CP;var cUt=(0,za._)`\n`,Gq=class extends IP{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?cUt:za.nil}}get(){return this._scope}name(e){return new CP(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,za._)`${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=za.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,SP.Started);let l=r(u);if(l){let d=this.opts.es5?Ya.varKinds.var:Ya.varKinds.const;i=(0,za._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,za._)`${i}${l}${this.opts._n}`;else throw new Hq(u);c.set(u,SP.Completed)})}return i}};Ya.ValueScope=Gq});var Jt=_(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.or=sr.and=sr.not=sr.CodeGen=sr.operators=sr.varKinds=sr.ValueScopeName=sr.ValueScope=sr.Scope=sr.Name=sr.regexpCode=sr.stringify=sr.getProperty=sr.nil=sr.strConcat=sr.str=sr._=void 0;var Ir=Jv(),lu=Vq(),i0=Jv();Object.defineProperty(sr,"_",{enumerable:!0,get:function(){return i0._}});Object.defineProperty(sr,"str",{enumerable:!0,get:function(){return i0.str}});Object.defineProperty(sr,"strConcat",{enumerable:!0,get:function(){return i0.strConcat}});Object.defineProperty(sr,"nil",{enumerable:!0,get:function(){return i0.nil}});Object.defineProperty(sr,"getProperty",{enumerable:!0,get:function(){return i0.getProperty}});Object.defineProperty(sr,"stringify",{enumerable:!0,get:function(){return i0.stringify}});Object.defineProperty(sr,"regexpCode",{enumerable:!0,get:function(){return i0.regexpCode}});Object.defineProperty(sr,"Name",{enumerable:!0,get:function(){return i0.Name}});var NP=Vq();Object.defineProperty(sr,"Scope",{enumerable:!0,get:function(){return NP.Scope}});Object.defineProperty(sr,"ValueScope",{enumerable:!0,get:function(){return NP.ValueScope}});Object.defineProperty(sr,"ValueScopeName",{enumerable:!0,get:function(){return NP.ValueScopeName}});Object.defineProperty(sr,"varKinds",{enumerable:!0,get:function(){return NP.varKinds}});sr.operators={GT:new Ir._Code(">"),GTE:new Ir._Code(">="),LT:new Ir._Code("<"),LTE:new Ir._Code("<="),EQ:new Ir._Code("==="),NEQ:new Ir._Code("!=="),NOT:new Ir._Code("!"),OR:new Ir._Code("||"),AND:new Ir._Code("&&"),ADD:new Ir._Code("+")};var Xd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Kq=class extends Xd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?lu.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=_x(this.rhs,e,r)),this}get names(){return this.rhs instanceof Ir._CodeOrName?this.rhs.names:{}}},TP=class extends Xd{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 Ir.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=_x(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Ir.Name?{}:{...this.lhs.names};return RP(e,this.rhs)}},zq=class extends TP{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Yq=class extends Xd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Jq=class extends Xd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Xq=class extends Xd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Zq=class extends Xd{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=_x(this.code,e,r),this}get names(){return this.code instanceof Ir._CodeOrName?this.code.names:{}}},Xv=class extends Xd{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)||(uUt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Th(e,r.names),{})}},Zd=class extends Xv{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},ej=class extends Xv{},bx=class extends Zd{};bx.kind="else";var Ih=class t extends Zd{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 bx(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(TCe(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=_x(this.condition,e,r),this}get names(){let e=super.names;return RP(e,this.condition),this.else&&Th(e,this.else.names),e}};Ih.kind="if";var Ch=class extends Zd{};Ch.kind="for";var tj=class extends Ch{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=_x(this.iteration,e,r),this}get names(){return Th(super.names,this.iteration.names)}},rj=class extends Ch{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?lu.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=RP(super.names,this.from);return RP(e,this.to)}},wP=class extends Ch{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=_x(this.iterable,e,r),this}get names(){return Th(super.names,this.iterable.names)}},Zv=class extends Zd{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)}};Zv.kind="func";var eS=class extends Xv{render(e){return"return "+super.render(e)}};eS.kind="return";var nj=class extends Zd{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&&Th(e,this.catch.names),this.finally&&Th(e,this.finally.names),e}},tS=class extends Zd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};tS.kind="catch";var rS=class extends Zd{render(e){return"finally"+super.render(e)}};rS.kind="finally";var sj=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
`:""},this._extScope=e,this._scope=new lu.Scope({parent:e}),this._nodes=[new ej]}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 Kq(e,i,n)),i}const(e,r,n){return this._def(lu.varKinds.const,e,r,n)}let(e,r,n){return this._def(lu.varKinds.let,e,r,n)}var(e,r,n){return this._def(lu.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new TP(e,r,n))}add(e,r){return this._leafNode(new zq(e,sr.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Ir.nil&&this._leafNode(new Zq(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,Ir.addCodeArg)(r,s));return r.push("}"),new Ir._Code(r)}if(e,r,n){if(this._blockNode(new Ih(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 Ih(e))}else(){return this._elseNode(new bx)}endIf(){return this._endBlockNode(Ih,bx)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new tj(e),r)}forRange(e,r,n,s,i=this.opts.es5?lu.varKinds.var:lu.varKinds.let){let a=this._scope.toName(e);return this._for(new rj(i,a,r,n),()=>s(a))}forOf(e,r,n,s=lu.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Ir.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Ir._)`${a}.length`,o=>{this.var(i,(0,Ir._)`${a}[${o}]`),n(i)})}return this._for(new wP("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?lu.varKinds.var:lu.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Ir._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new wP("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Ch)}label(e){return this._leafNode(new Yq(e))}break(e){return this._leafNode(new Jq(e))}return(e){let r=new eS;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(eS)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new nj;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new tS(i),r(i)}return n&&(this._currNode=s.finally=new rS,this.code(n)),this._endBlockNode(tS,rS)}throw(e){return this._leafNode(new Xq(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=Ir.nil,n,s){return this._blockNode(new Zv(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(Zv)}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 Ih))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};sr.CodeGen=sj;function Th(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function RP(t,e){return e instanceof Ir._CodeOrName?Th(t,e.names):t}function _x(t,e,r){if(t instanceof Ir.Name)return n(t);if(!s(t))return t;return new Ir._Code(t._items.reduce((i,a)=>(a instanceof Ir.Name&&(a=n(a)),a instanceof Ir._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 Ir._Code&&i._items.some(a=>a instanceof Ir.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function uUt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function TCe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Ir._)`!${ij(t)}`}sr.not=TCe;var lUt=wCe(sr.operators.AND);function dUt(...t){return t.reduce(lUt)}sr.and=dUt;var fUt=wCe(sr.operators.OR);function pUt(...t){return t.reduce(fUt)}sr.or=pUt;function wCe(t){return(e,r)=>e===Ir.nil?r:r===Ir.nil?e:(0,Ir._)`${ij(e)} ${t} ${ij(r)}`}function ij(t){return t instanceof Ir.Name?t:(0,Ir._)`(${t})`}});var Fr=_(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.checkStrictMode=ur.getErrorPath=ur.Type=ur.useFunc=ur.setEvaluated=ur.evaluatedPropsToName=ur.mergeEvaluated=ur.eachItem=ur.unescapeJsonPointer=ur.escapeJsonPointer=ur.escapeFragment=ur.unescapeFragment=ur.schemaRefOrVal=ur.schemaHasRulesButRef=ur.schemaHasRules=ur.checkUnknownRules=ur.alwaysValidSchema=ur.toHash=void 0;var pn=Jt(),mUt=Jv();function hUt(t){let e={};for(let r of t)e[r]=!0;return e}ur.toHash=hUt;function gUt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(OCe(t,e),!kCe(e,t.self.RULES.all))}ur.alwaysValidSchema=gUt;function OCe(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]||BCe(t,`unknown keyword: "${i}"`)}ur.checkUnknownRules=OCe;function kCe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}ur.schemaHasRules=kCe;function yUt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}ur.schemaHasRulesButRef=yUt;function AUt({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)}`}ur.schemaRefOrVal=AUt;function xUt(t){return PCe(decodeURIComponent(t))}ur.unescapeFragment=xUt;function bUt(t){return encodeURIComponent(oj(t))}ur.escapeFragment=bUt;function oj(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}ur.escapeJsonPointer=oj;function PCe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}ur.unescapeJsonPointer=PCe;function _Ut(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}ur.eachItem=_Ut;function RCe({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}}ur.mergeEvaluated={props:RCe({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} || {}`),cj(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:DCe}),items:RCe({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 DCe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,pn._)`{}`);return e!==void 0&&cj(t,r,e),r}ur.evaluatedPropsToName=DCe;function cj(t,e,r){Object.keys(r).forEach(n=>t.assign((0,pn._)`${e}${(0,pn.getProperty)(n)}`,!0))}ur.setEvaluated=cj;var NCe={};function EUt(t,e){return t.scopeValue("func",{ref:e,code:NCe[e.code]||(NCe[e.code]=new mUt._Code(e.code))})}ur.useFunc=EUt;var aj;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(aj||(ur.Type=aj={}));function vUt(t,e,r){if(t instanceof pn.Name){let n=e===aj.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():"/"+oj(t)}ur.getErrorPath=vUt;function BCe(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}ur.checkStrictMode=BCe});var ef=_(uj=>{"use strict";Object.defineProperty(uj,"__esModule",{value:!0});var Hi=Jt(),SUt={data:new Hi.Name("data"),valCxt:new Hi.Name("valCxt"),instancePath:new Hi.Name("instancePath"),parentData:new Hi.Name("parentData"),parentDataProperty:new Hi.Name("parentDataProperty"),rootData:new Hi.Name("rootData"),dynamicAnchors:new Hi.Name("dynamicAnchors"),vErrors:new Hi.Name("vErrors"),errors:new Hi.Name("errors"),this:new Hi.Name("this"),self:new Hi.Name("self"),scope:new Hi.Name("scope"),json:new Hi.Name("json"),jsonPos:new Hi.Name("jsonPos"),jsonLen:new Hi.Name("jsonLen"),jsonPart:new Hi.Name("jsonPart")};uj.default=SUt});var nS=_(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.extendErrors=Gi.resetErrorsCount=Gi.reportExtraError=Gi.reportError=Gi.keyword$DataError=Gi.keywordError=void 0;var kr=Jt(),OP=Fr(),ga=ef();Gi.keywordError={message:({keyword:t})=>(0,kr.str)`must pass "${t}" keyword validation`};Gi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,kr.str)`"${t}" keyword must be ${e} ($data)`:(0,kr.str)`"${t}" keyword is invalid ($data)`};function IUt(t,e=Gi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=WCe(t,e,r);n??(a||o)?LCe(i,c):MCe(s,(0,kr._)`[${c}]`)}Gi.reportError=IUt;function CUt(t,e=Gi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=WCe(t,e,r);LCe(s,o),i||a||MCe(n,ga.default.vErrors)}Gi.reportExtraError=CUt;function TUt(t,e){t.assign(ga.default.errors,e),t.if((0,kr._)`${ga.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,kr._)`${ga.default.vErrors}.length`,e),()=>t.assign(ga.default.vErrors,null)))}Gi.resetErrorsCount=TUt;function wUt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ga.default.errors,o=>{t.const(a,(0,kr._)`${ga.default.vErrors}[${o}]`),t.if((0,kr._)`${a}.instancePath === undefined`,()=>t.assign((0,kr._)`${a}.instancePath`,(0,kr.strConcat)(ga.default.instancePath,i.errorPath))),t.assign((0,kr._)`${a}.schemaPath`,(0,kr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,kr._)`${a}.schema`,r),t.assign((0,kr._)`${a}.data`,n))})}Gi.extendErrors=wUt;function LCe(t,e){let r=t.const("err",e);t.if((0,kr._)`${ga.default.vErrors} === null`,()=>t.assign(ga.default.vErrors,(0,kr._)`[${r}]`),(0,kr._)`${ga.default.vErrors}.push(${r})`),t.code((0,kr._)`${ga.default.errors}++`)}function MCe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,kr._)`new ${t.ValidationError}(${e})`):(r.assign((0,kr._)`${n}.errors`,e),r.return(!1))}var wh={keyword:new kr.Name("keyword"),schemaPath:new kr.Name("schemaPath"),params:new kr.Name("params"),propertyName:new kr.Name("propertyName"),message:new kr.Name("message"),schema:new kr.Name("schema"),parentSchema:new kr.Name("parentSchema")};function WCe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,kr._)`{}`:RUt(t,e,r)}function RUt(t,e,r={}){let{gen:n,it:s}=t,i=[NUt(s,r),OUt(t,r)];return kUt(t,e,i),n.object(...i)}function NUt({errorPath:t},{instancePath:e}){let r=e?(0,kr.str)`${t}${(0,OP.getErrorPath)(e,OP.Type.Str)}`:t;return[ga.default.instancePath,(0,kr.strConcat)(ga.default.instancePath,r)]}function OUt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,kr.str)`${e}/${t}`;return r&&(s=(0,kr.str)`${s}${(0,OP.getErrorPath)(r,OP.Type.Str)}`),[wh.schemaPath,s]}function kUt(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([wh.keyword,s],[wh.params,typeof e=="function"?e(t):e||(0,kr._)`{}`]),c.messages&&n.push([wh.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([wh.schema,a],[wh.parentSchema,(0,kr._)`${l}${d}`],[ga.default.data,i]),u&&n.push([wh.propertyName,u])}});var UCe=_(Ex=>{"use strict";Object.defineProperty(Ex,"__esModule",{value:!0});Ex.boolOrEmptySchema=Ex.topBoolOrEmptySchema=void 0;var PUt=nS(),DUt=Jt(),BUt=ef(),LUt={message:"boolean schema is false"};function MUt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?$Ce(t,!1):typeof r=="object"&&r.$async===!0?e.return(BUt.default.data):(e.assign((0,DUt._)`${n}.errors`,null),e.return(!0))}Ex.topBoolOrEmptySchema=MUt;function WUt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),$Ce(t)):r.var(e,!0)}Ex.boolOrEmptySchema=WUt;function $Ce(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,PUt.reportError)(s,LUt,void 0,e)}});var lj=_(vx=>{"use strict";Object.defineProperty(vx,"__esModule",{value:!0});vx.getRules=vx.isJSONType=void 0;var $Ut=["string","number","integer","boolean","null","object","array"],UUt=new Set($Ut);function FUt(t){return typeof t=="string"&&UUt.has(t)}vx.isJSONType=FUt;function qUt(){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:{}}}vx.getRules=qUt});var dj=_(a0=>{"use strict";Object.defineProperty(a0,"__esModule",{value:!0});a0.shouldUseRule=a0.shouldUseGroup=a0.schemaHasRulesForType=void 0;function jUt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&FCe(t,n)}a0.schemaHasRulesForType=jUt;function FCe(t,e){return e.rules.some(r=>qCe(t,r))}a0.shouldUseGroup=FCe;function qCe(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))}a0.shouldUseRule=qCe});var sS=_(Vi=>{"use strict";Object.defineProperty(Vi,"__esModule",{value:!0});Vi.reportTypeError=Vi.checkDataTypes=Vi.checkDataType=Vi.coerceAndCheckDataType=Vi.getJSONTypes=Vi.getSchemaTypes=Vi.DataType=void 0;var QUt=lj(),HUt=dj(),GUt=nS(),Ht=Jt(),jCe=Fr(),Sx;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Sx||(Vi.DataType=Sx={}));function VUt(t){let e=QCe(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}Vi.getSchemaTypes=VUt;function QCe(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(QUt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Vi.getJSONTypes=QCe;function KUt(t,e){let{gen:r,data:n,opts:s}=t,i=zUt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,HUt.schemaHasRulesForType)(t,e[0]));if(a){let o=pj(e,n,s.strictNumbers,Sx.Wrong);r.if(o,()=>{i.length?YUt(t,e,i):mj(t)})}return a}Vi.coerceAndCheckDataType=KUt;var HCe=new Set(["string","number","integer","boolean","null"]);function zUt(t,e){return e?t.filter(r=>HCe.has(r)||e==="array"&&r==="array"):[]}function YUt(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(pj(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Ht._)`${o} !== undefined`);for(let u of r)(HCe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),mj(t),n.endIf(),n.if((0,Ht._)`${o} !== undefined`,()=>{n.assign(s,o),JUt(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 JUt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Ht._)`${e} !== undefined`,()=>t.assign((0,Ht._)`${e}[${r}]`,n))}function fj(t,e,r,n=Sx.Correct){let s=n===Sx.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===Sx.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)}}Vi.checkDataType=fj;function pj(t,e,r,n){if(t.length===1)return fj(t[0],e,r,n);let s,i=(0,jCe.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,fj(a,e,r,n));return s}Vi.checkDataTypes=pj;var XUt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Ht._)`{type: ${t}}`:(0,Ht._)`{type: ${e}}`};function mj(t){let e=ZUt(t);(0,GUt.reportError)(e,XUt)}Vi.reportTypeError=mj;function ZUt(t){let{gen:e,data:r,schema:n}=t,s=(0,jCe.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var VCe=_(kP=>{"use strict";Object.defineProperty(kP,"__esModule",{value:!0});kP.assignDefaults=void 0;var Ix=Jt(),eFt=Fr();function tFt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)GCe(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>GCe(t,i,s.default))}kP.assignDefaults=tFt;function GCe(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,Ix._)`${i}${(0,Ix.getProperty)(e)}`;if(s){(0,eFt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,Ix._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,Ix._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,Ix._)`${o} = ${(0,Ix.stringify)(r)}`)}});var gc=_(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.validateUnion=en.validateArray=en.usePattern=en.callValidateCode=en.schemaProperties=en.allSchemaProperties=en.noPropertyInData=en.propertyInData=en.isOwnProperty=en.hasPropFunc=en.reportMissingProp=en.checkMissingProp=en.checkReportMissingProp=void 0;var Bn=Jt(),hj=Fr(),o0=ef(),rFt=Fr();function nFt(t,e){let{gen:r,data:n,it:s}=t;r.if(yj(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Bn._)`${e}`},!0),t.error()})}en.checkReportMissingProp=nFt;function sFt({gen:t,data:e,it:{opts:r}},n,s){return(0,Bn.or)(...n.map(i=>(0,Bn.and)(yj(t,e,i,r.ownProperties),(0,Bn._)`${s} = ${i}`)))}en.checkMissingProp=sFt;function iFt(t,e){t.setParams({missingProperty:e},!0),t.error()}en.reportMissingProp=iFt;function KCe(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Bn._)`Object.prototype.hasOwnProperty`})}en.hasPropFunc=KCe;function gj(t,e,r){return(0,Bn._)`${KCe(t)}.call(${e}, ${r})`}en.isOwnProperty=gj;function aFt(t,e,r,n){let s=(0,Bn._)`${e}${(0,Bn.getProperty)(r)} !== undefined`;return n?(0,Bn._)`${s} && ${gj(t,e,r)}`:s}en.propertyInData=aFt;function yj(t,e,r,n){let s=(0,Bn._)`${e}${(0,Bn.getProperty)(r)} === undefined`;return n?(0,Bn.or)(s,(0,Bn.not)(gj(t,e,r))):s}en.noPropertyInData=yj;function zCe(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}en.allSchemaProperties=zCe;function oFt(t,e){return zCe(e).filter(r=>!(0,hj.alwaysValidSchema)(t,e[r]))}en.schemaProperties=oFt;function cFt({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=[[o0.default.instancePath,(0,Bn.strConcat)(o0.default.instancePath,i)],[o0.default.parentData,a.parentData],[o0.default.parentDataProperty,a.parentDataProperty],[o0.default.rootData,o0.default.rootData]];a.opts.dynamicRef&&d.push([o0.default.dynamicAnchors,o0.default.dynamicAnchors]);let f=(0,Bn._)`${l}, ${r.object(...d)}`;return c!==Bn.nil?(0,Bn._)`${o}.call(${c}, ${f})`:(0,Bn._)`${o}(${f})`}en.callValidateCode=cFt;var uFt=(0,Bn._)`new RegExp`;function lFt({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"?uFt:(0,rFt.useFunc)(t,s)}(${r}, ${n})`})}en.usePattern=lFt;function dFt(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:hj.Type.Num},i),e.if((0,Bn.not)(i),o)})}}en.validateArray=dFt;function fFt(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,hj.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Bn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Bn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}en.validateUnion=fFt});var XCe=_(hl=>{"use strict";Object.defineProperty(hl,"__esModule",{value:!0});hl.validateKeywordUsage=hl.validSchemaType=hl.funcKeywordCode=hl.macroKeywordCode=void 0;var ya=Jt(),Rh=ef(),pFt=gc(),mFt=nS();function hFt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=JCe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ya.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}hl.macroKeywordCode=hFt;function gFt(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;AFt(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=JCe(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&&YCe(t),y(()=>t.error());else{let g=e.async?m():p();e.modifying&&YCe(t),y(()=>yFt(t,g))}}function m(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ya._)`await `),A=>n.assign(d,!1).if((0,ya._)`${A} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ya._)`${A}.errors`),()=>n.throw(A))),g}function p(){let g=(0,ya._)`${l}.errors`;return n.assign(g,null),h(ya.nil),g}function h(g=e.async?(0,ya._)`await `:ya.nil){let A=c.opts.passContext?Rh.default.this:Rh.default.self,b=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ya._)`${g}${(0,pFt.callValidateCode)(t,l,A,b)}`,e.modifying)}function y(g){var A;n.if((0,ya.not)((A=e.valid)!==null&&A!==void 0?A:d),g)}}hl.funcKeywordCode=gFt;function YCe(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ya._)`${n.parentData}[${n.parentDataProperty}]`))}function yFt(t,e){let{gen:r}=t;r.if((0,ya._)`Array.isArray(${e})`,()=>{r.assign(Rh.default.vErrors,(0,ya._)`${Rh.default.vErrors} === null ? ${e} : ${Rh.default.vErrors}.concat(${e})`).assign(Rh.default.errors,(0,ya._)`${Rh.default.vErrors}.length`),(0,mFt.extendErrors)(t)},()=>t.error())}function AFt({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function JCe(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ya.stringify)(r)})}function xFt(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")}hl.validSchemaType=xFt;function bFt({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)}}hl.validateKeywordUsage=bFt});var e2e=_(c0=>{"use strict";Object.defineProperty(c0,"__esModule",{value:!0});c0.extendSubschemaMode=c0.extendSubschemaData=c0.getSubschema=void 0;var gl=Jt(),ZCe=Fr();function _Ft(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,gl._)`${t.schemaPath}${(0,gl.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,gl._)`${t.schemaPath}${(0,gl.getProperty)(e)}${(0,gl.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,ZCe.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')}c0.getSubschema=_Ft;function EFt(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,gl._)`${e.data}${(0,gl.getProperty)(r)}`,!0);c(f),t.errorPath=(0,gl.str)`${u}${(0,ZCe.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,gl._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof gl.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]}}c0.extendSubschemaData=EFt;function vFt(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}c0.extendSubschemaMode=vFt});var r2e=_((z7r,t2e)=>{"use strict";var u0=t2e.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(){};PP(e,n,s,t,"",t)};u0.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};u0.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};u0.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};u0.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 PP(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 u0.arrayKeywords)for(var f=0;f<d.length;f++)PP(t,e,r,d[f],s+"/"+l+"/"+f,i,s,l,n,f)}else if(l in u0.propsKeywords){if(d&&typeof d=="object")for(var m in d)PP(t,e,r,d[m],s+"/"+l+"/"+SFt(m),i,s,l,n,m)}else(l in u0.keywords||t.allKeys&&!(l in u0.skipKeywords))&&PP(t,e,r,d,s+"/"+l,i,s,l,n)}r(n,s,i,a,o,c,u)}}function SFt(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var iS=_(Ja=>{"use strict";Object.defineProperty(Ja,"__esModule",{value:!0});Ja.getSchemaRefs=Ja.resolveUrl=Ja.normalizeId=Ja._getFullPath=Ja.getFullPath=Ja.inlineRef=void 0;var IFt=Fr(),CFt=ic(),TFt=r2e(),wFt=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function RFt(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Aj(t):e?n2e(t)<=e:!1}Ja.inlineRef=RFt;var NFt=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Aj(t){for(let e in t){if(NFt.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Aj)||typeof r=="object"&&Aj(r))return!0}return!1}function n2e(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!wFt.has(r)&&(typeof t[r]=="object"&&(0,IFt.eachItem)(t[r],n=>e+=n2e(n)),e===1/0))return 1/0}return e}function s2e(t,e="",r){r!==!1&&(e=Cx(e));let n=t.parse(e);return i2e(t,n)}Ja.getFullPath=s2e;function i2e(t,e){return t.serialize(e).split("#")[0]+"#"}Ja._getFullPath=i2e;var OFt=/#\/?$/;function Cx(t){return t?t.replace(OFt,""):""}Ja.normalizeId=Cx;function kFt(t,e,r){return r=Cx(r),t.resolve(e,r)}Ja.resolveUrl=kFt;var PFt=/^[a-z_][-a-z0-9._]*$/i;function DFt(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=Cx(t[r]||e),i={"":s},a=s2e(n,s,!1),o={},c=new Set;return TFt(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=a+f,y=i[p];typeof d[r]=="string"&&(y=g.call(this,d[r])),A.call(this,d.$anchor),A.call(this,d.$dynamicAnchor),i[f]=y;function g(b){let x=this.opts.uriResolver.resolve;if(b=Cx(y?x(y,b):b),c.has(b))throw l(b);c.add(b);let S=this.refs[b];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?u(d,S.schema,b):b!==Cx(h)&&(b[0]==="#"?(u(d,o[b],b),o[b]=d):this.refs[b]=h),b}function A(b){if(typeof b=="string"){if(!PFt.test(b))throw new Error(`invalid anchor "${b}"`);g.call(this,`#${b}`)}}}),o;function u(d,f,m){if(f!==void 0&&!CFt(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ja.getSchemaRefs=DFt});var cS=_(l0=>{"use strict";Object.defineProperty(l0,"__esModule",{value:!0});l0.getData=l0.KeywordCxt=l0.validateFunctionCode=void 0;var l2e=UCe(),a2e=sS(),bj=dj(),DP=sS(),BFt=VCe(),oS=XCe(),xj=e2e(),ct=Jt(),Ot=ef(),LFt=iS(),tf=Fr(),aS=nS();function MFt(t){if(p2e(t)&&(m2e(t),f2e(t))){UFt(t);return}d2e(t,()=>(0,l2e.topBoolOrEmptySchema)(t))}l0.validateFunctionCode=MFt;function d2e({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,ct._)`${Ot.default.data}, ${Ot.default.valCxt}`,n.$async,()=>{t.code((0,ct._)`"use strict"; ${o2e(r,s)}`),$Ft(t,s),t.code(i)}):t.func(e,(0,ct._)`${Ot.default.data}, ${WFt(s)}`,n.$async,()=>t.code(o2e(r,s)).code(i))}function WFt(t){return(0,ct._)`{${Ot.default.instancePath}="", ${Ot.default.parentData}, ${Ot.default.parentDataProperty}, ${Ot.default.rootData}=${Ot.default.data}${t.dynamicRef?(0,ct._)`, ${Ot.default.dynamicAnchors}={}`:ct.nil}}={}`}function $Ft(t,e){t.if(Ot.default.valCxt,()=>{t.var(Ot.default.instancePath,(0,ct._)`${Ot.default.valCxt}.${Ot.default.instancePath}`),t.var(Ot.default.parentData,(0,ct._)`${Ot.default.valCxt}.${Ot.default.parentData}`),t.var(Ot.default.parentDataProperty,(0,ct._)`${Ot.default.valCxt}.${Ot.default.parentDataProperty}`),t.var(Ot.default.rootData,(0,ct._)`${Ot.default.valCxt}.${Ot.default.rootData}`),e.dynamicRef&&t.var(Ot.default.dynamicAnchors,(0,ct._)`${Ot.default.valCxt}.${Ot.default.dynamicAnchors}`)},()=>{t.var(Ot.default.instancePath,(0,ct._)`""`),t.var(Ot.default.parentData,(0,ct._)`undefined`),t.var(Ot.default.parentDataProperty,(0,ct._)`undefined`),t.var(Ot.default.rootData,Ot.default.data),e.dynamicRef&&t.var(Ot.default.dynamicAnchors,(0,ct._)`{}`)})}function UFt(t){let{schema:e,opts:r,gen:n}=t;d2e(t,()=>{r.$comment&&e.$comment&&g2e(t),HFt(t),n.let(Ot.default.vErrors,null),n.let(Ot.default.errors,0),r.unevaluated&&FFt(t),h2e(t),KFt(t)})}function FFt(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,ct._)`${r}.evaluated`),e.if((0,ct._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,ct._)`${t.evaluated}.props`,(0,ct._)`undefined`)),e.if((0,ct._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,ct._)`${t.evaluated}.items`,(0,ct._)`undefined`))}function o2e(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,ct._)`/*# sourceURL=${r} */`:ct.nil}function qFt(t,e){if(p2e(t)&&(m2e(t),f2e(t))){jFt(t,e);return}(0,l2e.boolOrEmptySchema)(t,e)}function f2e({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 p2e(t){return typeof t.schema!="boolean"}function jFt(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&g2e(t),GFt(t),VFt(t);let i=n.const("_errs",Ot.default.errors);h2e(t,i),n.var(e,(0,ct._)`${i} === ${Ot.default.errors}`)}function m2e(t){(0,tf.checkUnknownRules)(t),QFt(t)}function h2e(t,e){if(t.opts.jtd)return c2e(t,[],!1,e);let r=(0,a2e.getSchemaTypes)(t.schema),n=(0,a2e.coerceAndCheckDataType)(t,r);c2e(t,r,!n,e)}function QFt(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,tf.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function HFt(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,tf.checkStrictMode)(t,"default is ignored in the schema root")}function GFt(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,LFt.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function VFt(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function g2e({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,ct._)`${Ot.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,ct.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,ct._)`${Ot.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function KFt(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,ct._)`${Ot.default.errors} === 0`,()=>e.return(Ot.default.data),()=>e.throw((0,ct._)`new ${s}(${Ot.default.vErrors})`)):(e.assign((0,ct._)`${n}.errors`,Ot.default.vErrors),i.unevaluated&&zFt(t),e.return((0,ct._)`${Ot.default.errors} === 0`))}function zFt({gen:t,evaluated:e,props:r,items:n}){r instanceof ct.Name&&t.assign((0,ct._)`${e}.props`,r),n instanceof ct.Name&&t.assign((0,ct._)`${e}.items`,n)}function c2e(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,tf.schemaHasRulesButRef)(i,l))){s.block(()=>A2e(t,"$ref",l.all.$ref.definition));return}c.jtd||YFt(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,bj.shouldUseGroup)(i,f)&&(f.type?(s.if((0,DP.checkDataType)(f.type,a,c.strictNumbers)),u2e(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,DP.reportTypeError)(t)),s.endIf()):u2e(t,f),o||s.if((0,ct._)`${Ot.default.errors} === ${n||0}`))}}function u2e(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,BFt.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,bj.shouldUseRule)(n,i)&&A2e(t,i.keyword,i.definition,e.type)})}function YFt(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(JFt(t,e),t.opts.allowUnionTypes||XFt(t,e),ZFt(t,t.dataTypes))}function JFt(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{y2e(t.dataTypes,r)||_j(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),t7t(t,e)}}function XFt(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&_j(t,"use allowUnionTypes to allow union type keyword")}function ZFt(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,bj.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>e7t(e,a))&&_j(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function e7t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function y2e(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function t7t(t,e){let r=[];for(let n of t.dataTypes)y2e(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function _j(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,tf.checkStrictMode)(t,e,t.opts.strictTypes)}var BP=class{constructor(e,r,n){if((0,oS.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,tf.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",x2e(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,oS.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Ot.default.errors))}result(e,r,n){this.failResult((0,ct.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,ct.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,ct._)`${r} !== undefined && (${(0,ct.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?aS.reportExtraError:aS.reportError)(this,this.def.error,r)}$dataError(){(0,aS.reportError)(this,this.def.$dataError||aS.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,aS.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=ct.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=ct.nil,r=ct.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,ct.or)((0,ct._)`${s} === undefined`,r)),e!==ct.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==ct.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,ct.or)(a(),o());function a(){if(n.length){if(!(r instanceof ct.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,ct._)`${(0,DP.checkDataTypes)(c,r,i.opts.strictNumbers,DP.DataType.Wrong)}`}return ct.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,ct._)`!${c}(${r})`}return ct.nil}}subschema(e,r){let n=(0,xj.getSubschema)(this.it,e);(0,xj.extendSubschemaData)(n,this.it,e),(0,xj.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return qFt(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=tf.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=tf.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,ct.Name)),!0}};l0.KeywordCxt=BP;function A2e(t,e,r,n){let s=new BP(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,oS.funcKeywordCode)(s,r):"macro"in r?(0,oS.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,oS.funcKeywordCode)(s,r)}var r7t=/^\/(?:[^~]|~0|~1)*$/,n7t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function x2e(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Ot.default.rootData;if(t[0]==="/"){if(!r7t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Ot.default.rootData}else{let u=n7t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,ct._)`${i}${(0,ct.getProperty)((0,tf.unescapeJsonPointer)(u))}`,a=(0,ct._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}l0.getData=x2e});var LP=_(vj=>{"use strict";Object.defineProperty(vj,"__esModule",{value:!0});var Ej=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};vj.default=Ej});var uS=_(Cj=>{"use strict";Object.defineProperty(Cj,"__esModule",{value:!0});var Sj=iS(),Ij=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Sj.resolveUrl)(e,r,n),this.missingSchema=(0,Sj.normalizeId)((0,Sj.getFullPath)(e,this.missingRef))}};Cj.default=Ij});var WP=_(yc=>{"use strict";Object.defineProperty(yc,"__esModule",{value:!0});yc.resolveSchema=yc.getCompilingSchema=yc.resolveRef=yc.compileSchema=yc.SchemaEnv=void 0;var du=Jt(),s7t=LP(),Nh=ef(),fu=iS(),b2e=Fr(),i7t=cS(),Tx=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,fu.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};yc.SchemaEnv=Tx;function wj(t){let e=_2e.call(this,t);if(e)return e;let r=(0,fu.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new du.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:s7t.default,code:(0,du._)`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:[du.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,du.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:du.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,du._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,i7t.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 m=new Function(`${Nh.default.self}`,`${Nh.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof du.Name?void 0:p,items:h instanceof du.Name?void 0:h,dynamicProps:p instanceof du.Name,dynamicItems:h instanceof du.Name},m.source&&(m.source.evaluated=(0,du.stringify)(m.evaluated))}return t.validate=m,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)}}yc.compileSchema=wj;function a7t(t,e,r){var n;r=(0,fu.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=u7t.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 Tx({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=o7t.call(this,i)}yc.resolveRef=a7t;function o7t(t){return(0,fu.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:wj.call(this,t)}function _2e(t){for(let e of this._compilations)if(c7t(e,t))return e}yc.getCompilingSchema=_2e;function c7t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function u7t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||MP.call(this,t,e)}function MP(t,e){let r=this.opts.uriResolver.parse(e),n=(0,fu._getFullPath)(this.opts.uriResolver,r),s=(0,fu.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return Tj.call(this,r,t);let i=(0,fu.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=MP.call(this,t,a);return typeof o?.schema!="object"?void 0:Tj.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||wj.call(this,a),i===(0,fu.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,fu.resolveUrl)(this.opts.uriResolver,s,u)),new Tx({schema:o,schemaId:c,root:t,baseId:s})}return Tj.call(this,r,a)}}yc.resolveSchema=MP;var l7t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Tj(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,b2e.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!l7t.has(o)&&u&&(e=(0,fu.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,b2e.schemaHasRulesButRef)(r,this.RULES)){let o=(0,fu.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=MP.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new Tx({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var E2e=_((t9r,d7t)=>{d7t.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 Nj=_((r9r,C2e)=>{"use strict";var f7t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),S2e=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 Rj(t){let e="",r=0,n=0;for(n=0;n<t.length;n++)if(r=t[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n<t.length;n++){if(r=t[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var p7t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function v2e(t){return t.length=0,!0}function m7t(t,e,r){if(t.length){let n=Rj(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function h7t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=m7t;for(let c=0;c<t.length;c++){let u=t[c];if(!(u==="["||u==="]"))if(u===":"){if(i===!0&&(a=!0),!o(s,n,r))break;if(++e>7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=v2e}else{s.push(u);continue}}return s.length&&(o===v2e?r.zone=s.join(""):a?n.push(s.join("")):n.push(Rj(s))),r.address=n.join(""),r}function I2e(t){if(g7t(t,":")<2)return{host:t,isIPV6:!1};let e=h7t(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 g7t(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function y7t(t){let e=t,r=[],n=-1,s=0;for(;s=e.length;){if(s===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(s===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(s===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n)}return r.join("")}function A7t(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function x7t(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!S2e(r)){let n=I2e(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}C2e.exports={nonSimpleDomain:p7t,recomposeAuthority:x7t,normalizeComponentEncoding:A7t,removeDotSegments:y7t,isIPv4:S2e,isUUID:f7t,normalizeIPv6:I2e,stringArrayToHexStripped:Rj}});var O2e=_((n9r,N2e)=>{"use strict";var{isUUID:b7t}=Nj(),_7t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,E7t=["http","https","ws","wss","urn","urn:uuid"];function v7t(t){return E7t.indexOf(t)!==-1}function Oj(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 T2e(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function w2e(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 S7t(t){return t.secure=Oj(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function I7t(t){if((t.port===(Oj(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 C7t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(_7t);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=kj(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function T7t(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=kj(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 w7t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!b7t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function R7t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var R2e={scheme:"http",domainHost:!0,parse:T2e,serialize:w2e},N7t={scheme:"https",domainHost:R2e.domainHost,parse:T2e,serialize:w2e},$P={scheme:"ws",domainHost:!0,parse:S7t,serialize:I7t},O7t={scheme:"wss",domainHost:$P.domainHost,parse:$P.parse,serialize:$P.serialize},k7t={scheme:"urn",parse:C7t,serialize:T7t,skipNormalize:!0},P7t={scheme:"urn:uuid",parse:w7t,serialize:R7t,skipNormalize:!0},UP={http:R2e,https:N7t,ws:$P,wss:O7t,urn:k7t,"urn:uuid":P7t};Object.setPrototypeOf(UP,null);function kj(t){return t&&(UP[t]||UP[t.toLowerCase()])||void 0}N2e.exports={wsIsSecure:Oj,SCHEMES:UP,isValidSchemeName:v7t,getSchemeHandler:kj}});var D2e=_((s9r,qP)=>{"use strict";var{normalizeIPv6:D7t,removeDotSegments:lS,recomposeAuthority:B7t,normalizeComponentEncoding:FP,isIPv4:L7t,nonSimpleDomain:M7t}=Nj(),{SCHEMES:W7t,getSchemeHandler:k2e}=O2e();function $7t(t,e){return typeof t=="string"?t=yl(rf(t,e),e):typeof t=="object"&&(t=rf(yl(t,e),e)),t}function U7t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=P2e(rf(t,n),rf(e,n),n,!0);return n.skipEscape=!0,yl(s,n)}function P2e(t,e,r,n){let s={};return n||(t=rf(yl(t,r),r),e=rf(yl(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=lS(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=lS(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=lS(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=lS(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 F7t(t,e,r){return typeof t=="string"?(t=unescape(t),t=yl(FP(rf(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=yl(FP(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=yl(FP(rf(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=yl(FP(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function yl(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=k2e(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=B7t(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=lS(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 q7t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function rf(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(q7t);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(L7t(n.host)===!1){let c=D7t(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=k2e(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&M7t(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 Pj={SCHEMES:W7t,normalize:$7t,resolve:U7t,resolveComponent:P2e,equal:F7t,serialize:yl,parse:rf};qP.exports=Pj;qP.exports.default=Pj;qP.exports.fastUri=Pj});var L2e=_(Dj=>{"use strict";Object.defineProperty(Dj,"__esModule",{value:!0});var B2e=D2e();B2e.code='require("ajv/dist/runtime/uri").default';Dj.default=B2e});var Q2e=_(Ei=>{"use strict";Object.defineProperty(Ei,"__esModule",{value:!0});Ei.CodeGen=Ei.Name=Ei.nil=Ei.stringify=Ei.str=Ei._=Ei.KeywordCxt=void 0;var j7t=cS();Object.defineProperty(Ei,"KeywordCxt",{enumerable:!0,get:function(){return j7t.KeywordCxt}});var wx=Jt();Object.defineProperty(Ei,"_",{enumerable:!0,get:function(){return wx._}});Object.defineProperty(Ei,"str",{enumerable:!0,get:function(){return wx.str}});Object.defineProperty(Ei,"stringify",{enumerable:!0,get:function(){return wx.stringify}});Object.defineProperty(Ei,"nil",{enumerable:!0,get:function(){return wx.nil}});Object.defineProperty(Ei,"Name",{enumerable:!0,get:function(){return wx.Name}});Object.defineProperty(Ei,"CodeGen",{enumerable:!0,get:function(){return wx.CodeGen}});var Q7t=LP(),F2e=uS(),H7t=lj(),dS=WP(),G7t=Jt(),fS=iS(),jP=sS(),Lj=Fr(),M2e=E2e(),V7t=L2e(),q2e=(t,e)=>new RegExp(t,e);q2e.code="new RegExp";var K7t=["removeAdditional","useDefaults","coerceTypes"],z7t=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Y7t={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."},J7t={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},W2e=200;function X7t(t){var e,r,n,s,i,a,o,c,u,l,d,f,m,p,h,y,g,A,b,x,S,T,I,R,N;let k=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,P=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:q2e,L=(s=t.uriResolver)!==null&&s!==void 0?s:V7t.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:k)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:k)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:k)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:k)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:k)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:M,regExp:P}:{optimize:M,regExp:P},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:W2e,loopEnum:(y=t.loopEnum)!==null&&y!==void 0?y:W2e,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(A=t.messages)!==null&&A!==void 0?A:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(S=t.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(T=t.validateSchema)!==null&&T!==void 0?T:!0,validateFormats:(I=t.validateFormats)!==null&&I!==void 0?I:!0,unicodeRegExp:(R=t.unicodeRegExp)!==null&&R!==void 0?R:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var pS=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...X7t(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new G7t.ValueScope({scope:{},prefixes:z7t,es5:r,lines:n}),this.logger=s9t(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,H7t.getRules)(),$2e.call(this,Y7t,e,"NOT SUPPORTED"),$2e.call(this,J7t,e,"DEPRECATED","warn"),this._metaOpts=r9t.call(this),e.formats&&e9t.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&t9t.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),Z7t.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=M2e;n==="id"&&(s={...M2e},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 F2e.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,fS.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=U2e.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new dS.SchemaEnv({schema:{},schemaId:n});if(r=dS.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=U2e.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,fS.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(a9t.call(this,n,r),!r)return(0,Lj.eachItem)(n,i=>Bj.call(this,i)),this;c9t.call(this,r);let s={...r,type:(0,jP.getJSONTypes)(r.type),schemaType:(0,jP.getJSONTypes)(r.schemaType)};return(0,Lj.eachItem)(n,s.type.length===0?i=>Bj.call(this,i,s):i=>s.type.forEach(a=>Bj.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]=j2e(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,fS.normalizeId)(a||n);let u=fS.getSchemaRefs.call(this,e,n);return c=new dS.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):dS.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{dS.compileSchema.call(this,e)}finally{this.opts=r}}};pS.ValidationError=Q7t.default;pS.MissingRefError=F2e.default;Ei.default=pS;function $2e(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 U2e(t){return t=(0,fS.normalizeId)(t),this.schemas[t]||this.refs[t]}function Z7t(){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 e9t(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function t9t(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 r9t(){let t={...this.opts};for(let e of K7t)delete t[e];return t}var n9t={log(){},warn(){},error(){}};function s9t(t){if(t===!1)return n9t;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 i9t=/^[a-z_$][a-z0-9_$:-]*$/i;function a9t(t,e){let{RULES:r}=this;if((0,Lj.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!i9t.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 Bj(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,jP.getJSONTypes)(e.type),schemaType:(0,jP.getJSONTypes)(e.schemaType)}};e.before?o9t.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 o9t(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 c9t(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=j2e(e)),t.validateSchema=this.compile(e,!0))}var u9t={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function j2e(t){return{anyOf:[t,u9t]}}});var H2e=_(Mj=>{"use strict";Object.defineProperty(Mj,"__esModule",{value:!0});var l9t={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Mj.default=l9t});var z2e=_(Oh=>{"use strict";Object.defineProperty(Oh,"__esModule",{value:!0});Oh.callRef=Oh.getValidate=void 0;var d9t=uS(),G2e=gc(),Xa=Jt(),Rx=ef(),V2e=WP(),QP=Fr(),f9t={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=V2e.resolveRef.call(c,u,s,r);if(l===void 0)throw new d9t.default(n.opts.uriResolver,s,r);if(l instanceof V2e.SchemaEnv)return f(l);return m(l);function d(){if(i===u)return HP(t,a,i,i.$async);let p=e.scopeValue("root",{ref:u});return HP(t,(0,Xa._)`${p}.validate`,u,u.$async)}function f(p){let h=K2e(t,p);HP(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",o.code.source===!0?{ref:p,code:(0,Xa.stringify)(p)}:{ref:p}),y=e.name("valid"),g=t.subschema({schema:p,dataTypes:[],schemaPath:Xa.nil,topSchemaRef:h,errSchemaPath:r},y);t.mergeEvaluated(g),t.ok(y)}}};function K2e(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Xa._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Oh.getValidate=K2e;function HP(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?Rx.default.this:Xa.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let p=s.let("valid");s.try(()=>{s.code((0,Xa._)`await ${(0,G2e.callValidateCode)(t,e,u)}`),m(e),a||s.assign(p,!0)},h=>{s.if((0,Xa._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(p,!1)}),t.ok(p)}function d(){t.result((0,G2e.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,Xa._)`${p}.errors`;s.assign(Rx.default.vErrors,(0,Xa._)`${Rx.default.vErrors} === null ? ${h} : ${Rx.default.vErrors}.concat(${h})`),s.assign(Rx.default.errors,(0,Xa._)`${Rx.default.vErrors}.length`)}function m(p){var h;if(!i.opts.unevaluated)return;let y=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(i.props=QP.mergeEvaluated.props(s,y.props,i.props));else{let g=s.var("props",(0,Xa._)`${p}.evaluated.props`);i.props=QP.mergeEvaluated.props(s,g,i.props,Xa.Name)}if(i.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(i.items=QP.mergeEvaluated.items(s,y.items,i.items));else{let g=s.var("items",(0,Xa._)`${p}.evaluated.items`);i.items=QP.mergeEvaluated.items(s,g,i.items,Xa.Name)}}}Oh.callRef=HP;Oh.default=f9t});var Y2e=_(Wj=>{"use strict";Object.defineProperty(Wj,"__esModule",{value:!0});var p9t=H2e(),m9t=z2e(),h9t=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",p9t.default,m9t.default];Wj.default=h9t});var J2e=_($j=>{"use strict";Object.defineProperty($j,"__esModule",{value:!0});var GP=Jt(),d0=GP.operators,VP={maximum:{okStr:"<=",ok:d0.LTE,fail:d0.GT},minimum:{okStr:">=",ok:d0.GTE,fail:d0.LT},exclusiveMaximum:{okStr:"<",ok:d0.LT,fail:d0.GTE},exclusiveMinimum:{okStr:">",ok:d0.GT,fail:d0.LTE}},g9t={message:({keyword:t,schemaCode:e})=>(0,GP.str)`must be ${VP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,GP._)`{comparison: ${VP[t].okStr}, limit: ${e}}`},y9t={keyword:Object.keys(VP),type:"number",schemaType:"number",$data:!0,error:g9t,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,GP._)`${r} ${VP[e].fail} ${n} || isNaN(${r})`)}};$j.default=y9t});var X2e=_(Uj=>{"use strict";Object.defineProperty(Uj,"__esModule",{value:!0});var mS=Jt(),A9t={message:({schemaCode:t})=>(0,mS.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,mS._)`{multipleOf: ${t}}`},x9t={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:A9t,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,mS._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,mS._)`${a} !== parseInt(${a})`;t.fail$data((0,mS._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};Uj.default=x9t});var eTe=_(Fj=>{"use strict";Object.defineProperty(Fj,"__esModule",{value:!0});function Z2e(t){let e=t.length,r=0,n=0,s;for(;n<e;)r++,s=t.charCodeAt(n++),s>=55296&&s<=56319&&n<e&&(s=t.charCodeAt(n),(s&64512)===56320&&n++);return r}Fj.default=Z2e;Z2e.code='require("ajv/dist/runtime/ucs2length").default'});var tTe=_(qj=>{"use strict";Object.defineProperty(qj,"__esModule",{value:!0});var kh=Jt(),b9t=Fr(),_9t=eTe(),E9t={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,kh.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,kh._)`{limit: ${t}}`},v9t={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:E9t,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?kh.operators.GT:kh.operators.LT,a=s.opts.unicode===!1?(0,kh._)`${r}.length`:(0,kh._)`${(0,b9t.useFunc)(t.gen,_9t.default)}(${r})`;t.fail$data((0,kh._)`${a} ${i} ${n}`)}};qj.default=v9t});var rTe=_(jj=>{"use strict";Object.defineProperty(jj,"__esModule",{value:!0});var S9t=gc(),KP=Jt(),I9t={message:({schemaCode:t})=>(0,KP.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,KP._)`{pattern: ${t}}`},C9t={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:I9t,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,KP._)`(new RegExp(${s}, ${a}))`:(0,S9t.usePattern)(t,n);t.fail$data((0,KP._)`!${o}.test(${e})`)}};jj.default=C9t});var nTe=_(Qj=>{"use strict";Object.defineProperty(Qj,"__esModule",{value:!0});var hS=Jt(),T9t={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,hS.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,hS._)`{limit: ${t}}`},w9t={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:T9t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?hS.operators.GT:hS.operators.LT;t.fail$data((0,hS._)`Object.keys(${r}).length ${s} ${n}`)}};Qj.default=w9t});var sTe=_(Hj=>{"use strict";Object.defineProperty(Hj,"__esModule",{value:!0});var gS=gc(),yS=Jt(),R9t=Fr(),N9t={message:({params:{missingProperty:t}})=>(0,yS.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,yS._)`{missingProperty: ${t}}`},O9t={keyword:"required",type:"object",schemaType:"array",$data:!0,error:N9t,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 m=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(m?.[h]===void 0&&!p.has(h)){let y=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${y}" (strictRequired)`;(0,R9t.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(yS.nil,d);else for(let m of r)(0,gS.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||i){let p=e.let("valid",!0);t.block$data(p,()=>f(m,p)),t.ok(p)}else e.if((0,gS.checkMissingProp)(t,r,m)),(0,gS.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,gS.noPropertyInData)(e,s,m,o.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,gS.propertyInData)(e,s,m,o.ownProperties)),e.if((0,yS.not)(p),()=>{t.error(),e.break()})},yS.nil)}}};Hj.default=O9t});var iTe=_(Gj=>{"use strict";Object.defineProperty(Gj,"__esModule",{value:!0});var AS=Jt(),k9t={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}}`},P9t={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:k9t,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}`)}};Gj.default=P9t});var zP=_(Vj=>{"use strict";Object.defineProperty(Vj,"__esModule",{value:!0});var aTe=ic();aTe.code='require("ajv/dist/runtime/equal").default';Vj.default=aTe});var oTe=_(zj=>{"use strict";Object.defineProperty(zj,"__esModule",{value:!0});var Kj=sS(),vi=Jt(),D9t=Fr(),B9t=zP(),L9t={message:({params:{i:t,j:e}})=>(0,vi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,vi._)`{i: ${t}, j: ${e}}`},M9t={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:L9t,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,Kj.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,vi._)`${a} === false`),t.ok(c);function l(){let p=e.let("i",(0,vi._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,vi._)`${p} > 1`,()=>(d()?f:m)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let y=e.name("item"),g=(0,Kj.checkDataTypes)(u,y,o.opts.strictNumbers,Kj.DataType.Wrong),A=e.const("indices",(0,vi._)`{}`);e.for((0,vi._)`;${p}--;`,()=>{e.let(y,(0,vi._)`${r}[${p}]`),e.if(g,(0,vi._)`continue`),u.length>1&&e.if((0,vi._)`typeof ${y} == "string"`,(0,vi._)`${y} += "_"`),e.if((0,vi._)`typeof ${A}[${y}] == "number"`,()=>{e.assign(h,(0,vi._)`${A}[${y}]`),t.error(),e.assign(c,!1).break()}).code((0,vi._)`${A}[${y}] = ${p}`)})}function m(p,h){let y=(0,D9t.useFunc)(e,B9t.default),g=e.name("outer");e.label(g).for((0,vi._)`;${p}--;`,()=>e.for((0,vi._)`${h} = ${p}; ${h}--;`,()=>e.if((0,vi._)`${y}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};zj.default=M9t});var cTe=_(Jj=>{"use strict";Object.defineProperty(Jj,"__esModule",{value:!0});var Yj=Jt(),W9t=Fr(),$9t=zP(),U9t={message:"must be equal to constant",params:({schemaCode:t})=>(0,Yj._)`{allowedValue: ${t}}`},F9t={keyword:"const",$data:!0,error:U9t,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,Yj._)`!${(0,W9t.useFunc)(e,$9t.default)}(${r}, ${s})`):t.fail((0,Yj._)`${i} !== ${r}`)}};Jj.default=F9t});var uTe=_(Xj=>{"use strict";Object.defineProperty(Xj,"__esModule",{value:!0});var xS=Jt(),q9t=Fr(),j9t=zP(),Q9t={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,xS._)`{allowedValues: ${t}}`},H9t={keyword:"enum",schemaType:"array",$data:!0,error:Q9t,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,q9t.useFunc)(e,j9t.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 m=e.const("vSchema",i);l=(0,xS.or)(...s.map((p,h)=>f(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,m=>e.if((0,xS._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=s[p];return typeof h=="object"&&h!==null?(0,xS._)`${u()}(${r}, ${m}[${p}])`:(0,xS._)`${r} === ${h}`}}};Xj.default=H9t});var lTe=_(Zj=>{"use strict";Object.defineProperty(Zj,"__esModule",{value:!0});var G9t=J2e(),V9t=X2e(),K9t=tTe(),z9t=rTe(),Y9t=nTe(),J9t=sTe(),X9t=iTe(),Z9t=oTe(),eqt=cTe(),tqt=uTe(),rqt=[G9t.default,V9t.default,K9t.default,z9t.default,Y9t.default,J9t.default,X9t.default,Z9t.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},eqt.default,tqt.default];Zj.default=rqt});var tQ=_(bS=>{"use strict";Object.defineProperty(bS,"__esModule",{value:!0});bS.validateAdditionalItems=void 0;var Ph=Jt(),eQ=Fr(),nqt={message:({params:{len:t}})=>(0,Ph.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Ph._)`{limit: ${t}}`},sqt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:nqt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,eQ.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}dTe(t,n)}};function dTe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,Ph._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Ph._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,eQ.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Ph._)`${o} <= ${e.length}`);r.if((0,Ph.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:eQ.Type.Num},u),a.allErrors||r.if((0,Ph.not)(u),()=>r.break())})}}bS.validateAdditionalItems=dTe;bS.default=sqt});var rQ=_(_S=>{"use strict";Object.defineProperty(_S,"__esModule",{value:!0});_S.validateTuple=void 0;var fTe=Jt(),YP=Fr(),iqt=gc(),aqt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return pTe(t,"additionalItems",e);r.items=!0,!(0,YP.alwaysValidSchema)(r,e)&&t.ok((0,iqt.validateArray)(t))}};function pTe(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=YP.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,fTe._)`${i}.length`);r.forEach((d,f)=>{(0,YP.alwaysValidSchema)(o,d)||(n.if((0,fTe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:m}=o,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let y=`"${a}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,YP.checkStrictMode)(o,y,f.strictTuples)}}}_S.validateTuple=pTe;_S.default=aqt});var mTe=_(nQ=>{"use strict";Object.defineProperty(nQ,"__esModule",{value:!0});var oqt=rQ(),cqt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,oqt.validateTuple)(t,"items")};nQ.default=cqt});var gTe=_(sQ=>{"use strict";Object.defineProperty(sQ,"__esModule",{value:!0});var hTe=Jt(),uqt=Fr(),lqt=gc(),dqt=tQ(),fqt={message:({params:{len:t}})=>(0,hTe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,hTe._)`{limit: ${t}}`},pqt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:fqt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,uqt.alwaysValidSchema)(n,e)&&(s?(0,dqt.validateAdditionalItems)(t,s):t.ok((0,lqt.validateArray)(t)))}};sQ.default=pqt});var yTe=_(iQ=>{"use strict";Object.defineProperty(iQ,"__esModule",{value:!0});var Ac=Jt(),JP=Fr(),mqt={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}}`},hqt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:mqt,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,JP.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,JP.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,JP.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?m(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,Ac._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),y=e.let("count",0);m(h,()=>e.if(h,()=>p(y)))}function m(h,y){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:JP.Type.Num,compositeRule:!0},h),y()})}function p(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)))}}};iQ.default=hqt});var bTe=_(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});Al.validateSchemaDeps=Al.validatePropertyDeps=Al.error=void 0;var aQ=Jt(),gqt=Fr(),ES=gc();Al.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,aQ.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,aQ._)`{property: ${t},
missingProperty: ${n},
depsCount: ${e},
deps: ${r}}`};var yqt={keyword:"dependencies",type:"object",schemaType:"object",error:Al.error,code(t){let[e,r]=Aqt(t);ATe(t,e),xTe(t,r)}};function Aqt({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 ATe(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,ES.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,ES.checkReportMissingProp)(t,u)}):(r.if((0,aQ._)`${c} && (${(0,ES.checkMissingProp)(t,o,i)})`),(0,ES.reportMissingProp)(t,i),r.else())}}Al.validatePropertyDeps=ATe;function xTe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,gqt.alwaysValidSchema)(i,e[o])||(r.if((0,ES.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))}Al.validateSchemaDeps=xTe;Al.default=yqt});var ETe=_(oQ=>{"use strict";Object.defineProperty(oQ,"__esModule",{value:!0});var _Te=Jt(),xqt=Fr(),bqt={message:"property name must be valid",params:({params:t})=>(0,_Te._)`{propertyName: ${t.propertyName}}`},_qt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:bqt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,xqt.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,_Te.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};oQ.default=_qt});var uQ=_(cQ=>{"use strict";Object.defineProperty(cQ,"__esModule",{value:!0});var XP=gc(),pu=Jt(),Eqt=ef(),ZP=Fr(),vqt={message:"must NOT have additional properties",params:({params:t})=>(0,pu._)`{additionalProperty: ${t.additionalProperty}}`},Sqt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:vqt,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,ZP.alwaysValidSchema)(a,r))return;let u=(0,XP.allSchemaProperties)(n.properties),l=(0,XP.allSchemaProperties)(n.patternProperties);d(),t.ok((0,pu._)`${i} === ${Eqt.default.errors}`);function d(){e.forIn("key",s,y=>{!u.length&&!l.length?p(y):e.if(f(y),()=>p(y))})}function f(y){let g;if(u.length>8){let A=(0,ZP.schemaRefOrVal)(a,n.properties,"properties");g=(0,XP.isOwnProperty)(e,A,y)}else u.length?g=(0,pu.or)(...u.map(A=>(0,pu._)`${y} === ${A}`)):g=pu.nil;return l.length&&(g=(0,pu.or)(g,...l.map(A=>(0,pu._)`${(0,XP.usePattern)(t,A)}.test(${y})`))),(0,pu.not)(g)}function m(y){e.code((0,pu._)`delete ${s}[${y}]`)}function p(y){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(y);return}if(r===!1){t.setParams({additionalProperty:y}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,ZP.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(y,g,!1),e.if((0,pu.not)(g),()=>{t.reset(),m(y)})):(h(y,g),o||e.if((0,pu.not)(g),()=>e.break()))}}function h(y,g,A){let b={keyword:"additionalProperties",dataProp:y,dataPropType:ZP.Type.Str};A===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,g)}}};cQ.default=Sqt});var ITe=_(dQ=>{"use strict";Object.defineProperty(dQ,"__esModule",{value:!0});var Iqt=cS(),vTe=gc(),lQ=Fr(),STe=uQ(),Cqt={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&&STe.default.code(new Iqt.KeywordCxt(i,STe.default,"additionalProperties"));let a=(0,vTe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=lQ.mergeEvaluated.props(e,(0,lQ.toHash)(a),i.props));let o=a.filter(d=>!(0,lQ.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,vTe.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)}}};dQ.default=Cqt});var RTe=_(fQ=>{"use strict";Object.defineProperty(fQ,"__esModule",{value:!0});var CTe=gc(),e3=Jt(),TTe=Fr(),wTe=Fr(),Tqt={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,CTe.allSchemaProperties)(r),c=o.filter(h=>(0,TTe.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 e3.Name)&&(i.props=(0,wTe.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&m(h),i.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function m(h){for(let y in u)new RegExp(h).test(y)&&(0,TTe.checkStrictMode)(i,`property ${y} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,y=>{e.if((0,e3._)`${(0,CTe.usePattern)(t,h)}.test(${y})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:y,dataPropType:wTe.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,e3._)`${d}[${y}]`,!0):!g&&!i.allErrors&&e.if((0,e3.not)(l),()=>e.break())})})}}};fQ.default=Tqt});var NTe=_(pQ=>{"use strict";Object.defineProperty(pQ,"__esModule",{value:!0});var wqt=Fr(),Rqt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,wqt.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"}};pQ.default=Rqt});var OTe=_(mQ=>{"use strict";Object.defineProperty(mQ,"__esModule",{value:!0});var Nqt=gc(),Oqt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Nqt.validateUnion,error:{message:"must match a schema in anyOf"}};mQ.default=Oqt});var kTe=_(hQ=>{"use strict";Object.defineProperty(hQ,"__esModule",{value:!0});var t3=Jt(),kqt=Fr(),Pqt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,t3._)`{passingSchemas: ${t.passing}}`},Dqt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Pqt,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,kqt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,t3._)`${c} && ${a}`).assign(a,!1).assign(o,(0,t3._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,t3.Name)})})}}};hQ.default=Dqt});var PTe=_(gQ=>{"use strict";Object.defineProperty(gQ,"__esModule",{value:!0});var Bqt=Fr(),Lqt={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,Bqt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};gQ.default=Lqt});var LTe=_(yQ=>{"use strict";Object.defineProperty(yQ,"__esModule",{value:!0});var r3=Jt(),BTe=Fr(),Mqt={message:({params:t})=>(0,r3.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,r3._)`{failingKeyword: ${t.ifClause}}`},Wqt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Mqt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,BTe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=DTe(n,"then"),i=DTe(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,r3.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,r3._)`${l}`):t.setParams({ifClause:l})}}}};function DTe(t,e){let r=t.schema[e];return r!==void 0&&!(0,BTe.alwaysValidSchema)(t,r)}yQ.default=Wqt});var MTe=_(AQ=>{"use strict";Object.defineProperty(AQ,"__esModule",{value:!0});var $qt=Fr(),Uqt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,$qt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};AQ.default=Uqt});var WTe=_(xQ=>{"use strict";Object.defineProperty(xQ,"__esModule",{value:!0});var Fqt=tQ(),qqt=mTe(),jqt=rQ(),Qqt=gTe(),Hqt=yTe(),Gqt=bTe(),Vqt=ETe(),Kqt=uQ(),zqt=ITe(),Yqt=RTe(),Jqt=NTe(),Xqt=OTe(),Zqt=kTe(),ejt=PTe(),tjt=LTe(),rjt=MTe();function njt(t=!1){let e=[Jqt.default,Xqt.default,Zqt.default,ejt.default,tjt.default,rjt.default,Vqt.default,Kqt.default,Gqt.default,zqt.default,Yqt.default];return t?e.push(qqt.default,Qqt.default):e.push(Fqt.default,jqt.default),e.push(Hqt.default),e}xQ.default=njt});var $Te=_(bQ=>{"use strict";Object.defineProperty(bQ,"__esModule",{value:!0});var hs=Jt(),sjt={message:({schemaCode:t})=>(0,hs.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,hs._)`{format: ${t}}`},ijt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:sjt,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():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,hs._)`${p}[${a}]`),y=r.let("fType"),g=r.let("format");r.if((0,hs._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(y,(0,hs._)`${h}.type || "string"`).assign(g,(0,hs._)`${h}.validate`),()=>r.assign(y,(0,hs._)`"string"`).assign(g,h)),t.fail$data((0,hs.or)(A(),b()));function A(){return c.strictSchema===!1?hs.nil:(0,hs._)`${a} && !${g}`}function b(){let x=l.$async?(0,hs._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,hs._)`${g}(${n})`,S=(0,hs._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,hs._)`${g} && ${g} !== true && ${y} === ${e} && !${S}`}}function m(){let p=d.formats[i];if(!p){A();return}if(p===!0)return;let[h,y,g]=b(p);h===e&&t.pass(x());function A(){if(c.strictSchema===!1){d.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function b(S){let T=S instanceof RegExp?(0,hs.regexpCode)(S):c.code.formats?(0,hs._)`${c.code.formats}${(0,hs.getProperty)(i)}`:void 0,I=r.scopeValue("formats",{key:i,ref:S,code:T});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,hs._)`${I}.validate`]:["string",S,I]}function x(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,hs._)`await ${g}(${n})`}return typeof y=="function"?(0,hs._)`${g}(${n})`:(0,hs._)`${g}.test(${n})`}}}};bQ.default=ijt});var UTe=_(_Q=>{"use strict";Object.defineProperty(_Q,"__esModule",{value:!0});var ajt=$Te(),ojt=[ajt.default];_Q.default=ojt});var FTe=_(Nx=>{"use strict";Object.defineProperty(Nx,"__esModule",{value:!0});Nx.contentVocabulary=Nx.metadataVocabulary=void 0;Nx.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Nx.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var jTe=_(EQ=>{"use strict";Object.defineProperty(EQ,"__esModule",{value:!0});var cjt=Y2e(),ujt=lTe(),ljt=WTe(),djt=UTe(),qTe=FTe(),fjt=[cjt.default,ujt.default,(0,ljt.default)(),djt.default,qTe.metadataVocabulary,qTe.contentVocabulary];EQ.default=fjt});var HTe=_(n3=>{"use strict";Object.defineProperty(n3,"__esModule",{value:!0});n3.DiscrError=void 0;var QTe;(function(t){t.Tag="tag",t.Mapping="mapping"})(QTe||(n3.DiscrError=QTe={}))});var VTe=_(SQ=>{"use strict";Object.defineProperty(SQ,"__esModule",{value:!0});var Ox=Jt(),vQ=HTe(),GTe=WP(),pjt=uS(),mjt=Fr(),hjt={message:({params:{discrError:t,tagName:e}})=>t===vQ.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Ox._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},gjt={keyword:"discriminator",type:"object",schemaType:"object",error:hjt,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,Ox._)`${r}${(0,Ox.getProperty)(o)}`);e.if((0,Ox._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:vQ.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,Ox._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:vQ.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,Ox.Name),p}function f(){var m;let p={},h=g(s),y=!0;for(let x=0;x<a.length;x++){let S=a[x];if(S?.$ref&&!(0,mjt.schemaHasRulesButRef)(S,i.self.RULES)){let I=S.$ref;if(S=GTe.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,I),S instanceof GTe.SchemaEnv&&(S=S.schema),S===void 0)throw new pjt.default(i.opts.uriResolver,i.baseId,I)}let T=(m=S?.properties)===null||m===void 0?void 0:m[o];if(typeof T!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${o}"`);y=y&&(h||g(S)),A(T,x)}if(!y)throw new Error(`discriminator: "${o}" must be required`);return p;function g({required:x}){return Array.isArray(x)&&x.includes(o)}function A(x,S){if(x.const)b(x.const,S);else if(x.enum)for(let T of x.enum)b(T,S);else throw new Error(`discriminator: "properties/${o}" must have "const" or "enum"`)}function b(x,S){if(typeof x!="string"||x in p)throw new Error(`discriminator: "${o}" values must be unique strings`);p[x]=S}}}};SQ.default=gjt});var KTe=_((G9r,yjt)=>{yjt.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 YTe=_((Ln,IQ)=>{"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 Ajt=Q2e(),xjt=jTe(),bjt=VTe(),zTe=KTe(),_jt=["/properties"],s3="http://json-schema.org/draft-07/schema",kx=class extends Ajt.default{_addVocabularies(){super._addVocabularies(),xjt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(bjt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(zTe,_jt):zTe;this.addMetaSchema(e,s3,!1),this.refs["http://json-schema.org/schema"]=s3}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(s3)?s3:void 0)}};Ln.Ajv=kx;IQ.exports=Ln=kx;IQ.exports.Ajv=kx;Object.defineProperty(Ln,"__esModule",{value:!0});Ln.default=kx;var Ejt=cS();Object.defineProperty(Ln,"KeywordCxt",{enumerable:!0,get:function(){return Ejt.KeywordCxt}});var Px=Jt();Object.defineProperty(Ln,"_",{enumerable:!0,get:function(){return Px._}});Object.defineProperty(Ln,"str",{enumerable:!0,get:function(){return Px.str}});Object.defineProperty(Ln,"stringify",{enumerable:!0,get:function(){return Px.stringify}});Object.defineProperty(Ln,"nil",{enumerable:!0,get:function(){return Px.nil}});Object.defineProperty(Ln,"Name",{enumerable:!0,get:function(){return Px.Name}});Object.defineProperty(Ln,"CodeGen",{enumerable:!0,get:function(){return Px.CodeGen}});var vjt=LP();Object.defineProperty(Ln,"ValidationError",{enumerable:!0,get:function(){return vjt.default}});var Sjt=uS();Object.defineProperty(Ln,"MissingRefError",{enumerable:!0,get:function(){return Sjt.default}})});var JTe=_(Dx=>{"use strict";Object.defineProperty(Dx,"__esModule",{value:!0});Dx.formatLimitDefinition=void 0;var Ijt=YTe(),mu=Jt(),f0=mu.operators,i3={formatMaximum:{okStr:"<=",ok:f0.LTE,fail:f0.GT},formatMinimum:{okStr:">=",ok:f0.GTE,fail:f0.LT},formatExclusiveMaximum:{okStr:"<",ok:f0.LT,fail:f0.GTE},formatExclusiveMinimum:{okStr:">",ok:f0.GT,fail:f0.LTE}},Cjt={message:({keyword:t,schemaCode:e})=>mu.str`should be ${i3[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>mu._`{comparison: ${i3[t].okStr}, limit: ${e}}`};Dx.formatLimitDefinition={keyword:Object.keys(i3),type:"string",schemaType:"string",$data:!0,error:Cjt,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 Ijt.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}),m=e.const("fmt",mu._`${f}[${c.schemaCode}]`);t.fail$data(mu.or(mu._`typeof ${m} != "object"`,mu._`${m} instanceof RegExp`,mu._`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=o.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:a.code.formats?mu._`${a.code.formats}${mu.getProperty(f)}`:void 0});t.fail$data(d(p))}function d(f){return mu._`${f}.compare(${r}, ${n}) ${i3[s].fail} 0`}},dependencies:["format"]};var Tjt=t=>(t.addKeyword(Dx.formatLimitDefinition),t);Dx.default=Tjt});var twe=_((vS,ewe)=>{"use strict";Object.defineProperty(vS,"__esModule",{value:!0});var Bx=SCe(),wjt=JTe(),CQ=Jt(),XTe=new CQ.Name("fullFormats"),Rjt=new CQ.Name("fastFormats"),TQ=(t,e={keywords:!0})=>{if(Array.isArray(e))return ZTe(t,e,Bx.fullFormats,XTe),t;let[r,n]=e.mode==="fast"?[Bx.fastFormats,Rjt]:[Bx.fullFormats,XTe],s=e.formats||Bx.formatNames;return ZTe(t,s,r,n),e.keywords&&wjt.default(t),t};TQ.get=(t,e="full")=>{let n=(e==="fast"?Bx.fastFormats:Bx.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function ZTe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=CQ._`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}ewe.exports=vS=TQ;Object.defineProperty(vS,"__esModule",{value:!0});vS.default=TQ});var swe=_((K9r,nwe)=>{"use strict";var Njt=EIe().default,Ojt=Mq(),rwe=Wq(),wQ=class{constructor(e,r){r.mode==="JTD"?this.ajv=new Ojt(Object.assign({},rwe,r.customOptions)):this.ajv=new Njt(Object.assign({},rwe,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&&twe()(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)}};nwe.exports=wQ});var awe=_((z9r,iwe)=>{"use strict";var kjt=Mq(),Pjt=Wq(),RQ=class{constructor(e,r){this.ajv=new kjt(Object.assign({},Pjt,r))}buildSerializerFunction({schema:e}){return this.ajv.compileSerializer(e)}};iwe.exports=RQ});var uwe=_((IS,cwe)=>{"use strict";Object.defineProperty(IS,"__esModule",{value:!0});var SS=Uk(),hu=zA();function owe(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,hu._)`"use strict";`;for(let f in o){let m=c(o[f]);if(m){let p=a(l,m.source),h=t.opts.code.esm?(0,hu._)`export const ${(0,hu.getEsmExportName)(f)}`:(0,hu._)`exports${(0,hu.getProperty)(f)}`;d=(0,hu._)`${d}${r}${h} = ${(u=m.source)===null||u===void 0?void 0:u.validateName};${r}${p}`}}return`${d}`}function a(o,c){if(!c)throw new Error('moduleCode: function does not have "source" property');if(f(c.validateName)===SS.UsedValueState.Completed)return hu.nil;m(c.validateName,SS.UsedValueState.Started);let u=t.scope.scopeCode(c.scopeValues,o,d),l=new hu._Code(`${u}${r}${c.validateCode}`);return c.evaluated?(0,hu._)`${l}${c.validateName}.evaluated = ${c.evaluated};${r}`:l;function d(p){var h;let y=(h=p.value)===null||h===void 0?void 0:h.ref;if(p.prefix==="validate"&&typeof y=="function")return a(o,y.source);if((p.prefix==="root"||p.prefix==="wrapper")&&typeof y=="object"){let{validate:g,validateName:A}=y;if(!A)throw new Error("ajv internal error");let b=t.opts.code.es5?SS.varKinds.var:SS.varKinds.const,x=(0,hu._)`${b} ${p} = {validate: ${A}};`;if(f(A)===SS.UsedValueState.Started)return x;let S=a(o,g?.source);return(0,hu._)`${x}${r}${S}`}}function f(p){var h;return(h=o[p.prefix])===null||h===void 0?void 0:h.get(p)}function m(p,h){let{prefix:y}=p;(o[y]=o[y]||new Map).set(p,h)}}}cwe.exports=IS=owe;Object.defineProperty(IS,"__esModule",{value:!0});IS.default=owe});var fwe=_((Y9r,dwe)=>{"use strict";var lwe=NQ(),Djt=uwe().default;function Bjt(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=lwe();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=Djt(i[lwe.AjvReference].ajv,o);return t.storeFunction(a,c),o}}}dwe.exports=Bjt});var NQ=_((J9r,Lx)=>{"use strict";var mwe=Symbol.for("fastify.ajv-compiler.reference"),Ljt=swe(),Mjt=awe();function OQ(t){let e=new Map,r=new Map;return t&&t.jtdSerializer===!0?function(s,i){let a=pwe({},i);if(r.has(a))return r.get(a);let o=new Mjt(s,i),c=o.buildSerializerFunction.bind(o);return r.set(a,c),c}:function(s,i){let a=pwe(s,i.customOptions);if(e.has(a))return e.get(a);let o=new Ljt(s,i),c=o.buildValidatorFunction.bind(o);return e.set(a,c),i.customOptions.code!==void 0&&(c[mwe]=o),c}}function pwe(t,e){let r=JSON.stringify(t),n=JSON.stringify(e);return`${r}${n}`}Lx.exports=OQ;Lx.exports.default=OQ;Lx.exports.AjvCompiler=OQ;Lx.exports.AjvReference=mwe;Lx.exports.StandaloneValidator=fwe()});var kQ=_((X9r,hwe)=>{"use strict";var{buildSchemas:Wjt}=bE(),$jt=_7(),Ujt=NQ();function Fjt(t,e){if(t)return new Mx(t,e);let r=Object.assign({buildValidator:null,buildSerializer:null},e?.compilersFactory);r.buildValidator||(r.buildValidator=Ujt()),r.buildSerializer||(r.buildSerializer=$jt());let n={bucket:e&&e.bucket||Wjt,compilersFactory:r,isCustomValidatorCompiler:typeof e?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof e?.compilersFactory?.buildValidator=="function"};return new Mx(void 0,n)}var Mx=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))}};Mx.buildSchemaController=Fjt;hwe.exports=Mx});var WQ=_((Z9r,MQ)=>{"use strict";var PQ=jF(),BQ=require("node:assert"),LQ=Symbol.for("registered-plugin"),{kTestInternals:qjt}=Ks(),{exist:jjt,existReply:Qjt,existRequest:Hjt}=ZF(),{FST_ERR_PLUGIN_VERSION_MISMATCH:Gjt,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:Vjt}=Bi(),{FSTWRN002:Kjt}=Od();function CS(t){return t[Symbol.for("plugin-meta")]}function gwe(t){let e=ywe(t);if(e)return e;let r=require.cache;if(r){let n=Object.keys(r);for(let s=0;s<n.length;s++){let i=n[s];if(r[i].exports===t)return i}}return t.name?t.name:null}function zjt(t){return t.toString().split(`
`).slice(0,2).map(e=>e.trim()).join(" -- ")}function ywe(t){return t[Symbol.for("fastify.display-name")]}function Awe(t){return!!t[Symbol.for("skip-override")]}function xwe(t){let e=CS(t);if(!e)return;let r=e.dependencies;r&&(BQ(Array.isArray(r),"The dependencies should be an array of strings"),r.forEach(n=>{BQ(this[LQ].indexOf(n)>-1,`The dependency '${n}' of plugin '${e.name}' is not registered`)}))}function bwe(t){let e=CS(t);if(!e)return;let{decorators:r,name:n}=e;r&&(r.fastify&&DQ(this,"Fastify",r.fastify,n),r.reply&&DQ(this,"Reply",r.reply,n),r.request&&DQ(this,"Request",r.request,n))}var Yjt={Fastify:jjt,Request:Hjt,Reply:Qjt};function DQ(t,e,r,n){BQ(Array.isArray(r),"The decorators should be an array of strings"),r.forEach(s=>{let i=typeof n=="string"?` required by '${n}'`:"";if(!Yjt[e].call(t,s))throw new Vjt(s,i,e)})}function Jjt(t){let e=CS(t);if(!e)return;let r=e.fastify,n=/-rc.+$/.test(this.version);if(!(n===!0&&PQ.gt(this.version,PQ.coerce(r))===!0)&&r&&PQ.satisfies(this.version,r,{includePrerelease:n})===!1)throw new Gjt(e.name,r,this.version)}function Xjt(t){let e=CS(t);if(!e)return;let r=e.name;if(r)return this[LQ].push(r),r}function Zjt(t,e){t.constructor.name==="AsyncFunction"&&t.length===3&&Kjt(e||"anonymous")}function eQt(t){let e=Xjt.call(this,t)||gwe(t);return Zjt.call(this,t,e),Jjt.call(this,t),bwe.call(this,t),xwe.call(this,t),Awe(t)}MQ.exports={getPluginName:gwe,getFuncPreview:zjt,kRegisteredPlugins:LQ,getDisplayName:ywe,registerPlugin:eQt};MQ.exports[qjt]={shouldSkipOverride:Awe,getMeta:CS,checkDecorators:bwe,checkDependencies:xwe}});var a3=_((eqr,_we)=>{"use strict";function tQt(t,e){let r=e||nQt();return t?sQt(t,r):r}function rQt(t,e){return t.genReqId(e)}function nQt(){let e=0;return function(){return e=e+1&2147483647,`req-${e.toString(36)}`}}function sQt(t,e){return function(r){return r.headers[t]||e(r)}}_we.exports={getGenReqId:rQt,reqIdGenFactory:tQt}});var Iwe=_((tqr,Swe)=>{"use strict";var Ewe=12,iQt=0,$Q=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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 aQt(t){var e=t.indexOf("%");if(e===-1)return t;for(var r=t.length,n="",s=0,i=0,a=e,o=Ewe;e>-1&&e<r;){var c=vwe(t[e+1],4),u=vwe(t[e+2],0),l=c|u,d=$Q[l];if(o=$Q[256+o+d],i=i<<6|l&$Q[364+d],o===Ewe)n+=t.slice(s,a),n+=i<=65535?String.fromCharCode(i):String.fromCharCode(55232+(i>>10),56320+(i&1023)),i=0,s=e+3,e=a=t.indexOf("%",s);else{if(o===iQt)return null;if(e+=3,e<r&&t.charCodeAt(e)===37)continue;return null}}return n+t.slice(s)}var oQt={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};function vwe(t,e){var r=oQt[t];return r===void 0?255:r<<e}Swe.exports=aQt});var Nwe=_((rqr,Rwe)=>{"use strict";var Cwe=Iwe(),Twe=/\+/g,wwe=function(){};wwe.prototype=Object.create(null);function cQt(t){let e=new wwe;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 m=0;m<r+1;m++)if(f=m!==r?t.charCodeAt(m):38,f===38){if(d=a>i,d||(a=m),n=t.slice(i+1,a),d||n.length>0){u&&(n=n.replace(Twe," ")),o&&(n=Cwe(n)||n),d&&(s=t.slice(a+1,m),l&&(s=s.replace(Twe," ")),c&&(s=Cwe(s)||s));let p=e[n];p===void 0?e[n]=s:p.pop?p.push(s):e[n]=[p,s]}s="",i=m,a=m,o=!1,c=!1,u=!1,l=!1}else f===61?a<=i?a=m:c=!0:f===43?a>i?l=!0:u=!0:f===37&&(a>i?c=!0:o=!0);return e}Rwe.exports=cQt});var kwe=_((nqr,Owe)=>{var xl=Array.from({length:256},(t,e)=>"%"+((e<16?"0":"")+e.toString(16)).toUpperCase()),uQt=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 lQt(t){let e=t.length;if(e===0)return"";let r="",n=0,s=0;e:for(;s<e;s++){let i=t.charCodeAt(s);for(;i<128;){if(uQt[i]!==1&&(n<s&&(r+=t.slice(n,s)),n=s+1,r+=xl[i]),++s===e)break e;i=t.charCodeAt(s)}if(n<s&&(r+=t.slice(n,s)),i<2048){n=s+1,r+=xl[192|i>>6]+xl[128|i&63];continue}if(i<55296||i>=57344){n=s+1,r+=xl[224|i>>12]+xl[128|i>>6&63]+xl[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+=xl[240|i>>18]+xl[128|i>>12&63]+xl[128|i>>6&63]+xl[128|i&63]}return n===0?t:n<e?r+t.slice(n):r}Owe.exports={encodeString:lQt}});var Bwe=_((sqr,Dwe)=>{"use strict";var{encodeString:UQ}=kwe();function Pwe(t){let e=typeof t;return e==="string"?UQ(t):e==="bigint"?t.toString():e==="boolean"?t?"true":"false":e==="number"&&Number.isFinite(t)?t<1e21?""+t:UQ(""+t):""}function dQt(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<s;a++){let o=n[a],c=t[o],u=UQ(o)+"=";if(a&&(e+=r),Array.isArray(c)){i=c.length;for(let l=0;l<i;l++)l&&(e+=r),e+=u,e+=Pwe(c[l])}else e+=u,e+=Pwe(c)}return e}Dwe.exports=dQt});var $we=_((iqr,TS)=>{"use strict";var Lwe=Nwe(),Mwe=Bwe(),Wwe={parse:Lwe,stringify:Mwe};TS.exports=Wwe;TS.exports.default=Wwe;TS.exports.parse=Lwe;TS.exports.stringify=Mwe});var Fwe=_(Uwe=>{"use strict";Object.defineProperty(Uwe,"__esModule",{value:!0})});var qwe=_(wS=>{"use strict";Object.defineProperty(wS,"__esModule",{value:!0});wS.types=void 0;var fQt;(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"})(fQt=wS.types||(wS.types={}))});var Qwe=_(jwe=>{"use strict";Object.defineProperty(jwe,"__esModule",{value:!0})});var sf=_(nf=>{"use strict";var pQt=nf&&nf.__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]}),FQ=nf&&nf.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&pQt(e,t,r)};Object.defineProperty(nf,"__esModule",{value:!0});FQ(Fwe(),nf);FQ(qwe(),nf);FQ(Qwe(),nf)});var o3=_(Ki=>{"use strict";Object.defineProperty(Ki,"__esModule",{value:!0});Ki.anyChar=Ki.notWhitespace=Ki.whitespace=Ki.notInts=Ki.ints=Ki.notWords=Ki.words=void 0;var Qr=sf(),Hwe=()=>[{type:Qr.types.RANGE,from:48,to:57}],Gwe=()=>[{type:Qr.types.CHAR,value:95},{type:Qr.types.RANGE,from:97,to:122},{type:Qr.types.RANGE,from:65,to:90},{type:Qr.types.RANGE,from:48,to:57}],Vwe=()=>[{type:Qr.types.CHAR,value:9},{type:Qr.types.CHAR,value:10},{type:Qr.types.CHAR,value:11},{type:Qr.types.CHAR,value:12},{type:Qr.types.CHAR,value:13},{type:Qr.types.CHAR,value:32},{type:Qr.types.CHAR,value:160},{type:Qr.types.CHAR,value:5760},{type:Qr.types.RANGE,from:8192,to:8202},{type:Qr.types.CHAR,value:8232},{type:Qr.types.CHAR,value:8233},{type:Qr.types.CHAR,value:8239},{type:Qr.types.CHAR,value:8287},{type:Qr.types.CHAR,value:12288},{type:Qr.types.CHAR,value:65279}],mQt=()=>[{type:Qr.types.CHAR,value:10},{type:Qr.types.CHAR,value:13},{type:Qr.types.CHAR,value:8232},{type:Qr.types.CHAR,value:8233}];Ki.words=()=>({type:Qr.types.SET,set:Gwe(),not:!1});Ki.notWords=()=>({type:Qr.types.SET,set:Gwe(),not:!0});Ki.ints=()=>({type:Qr.types.SET,set:Hwe(),not:!1});Ki.notInts=()=>({type:Qr.types.SET,set:Hwe(),not:!0});Ki.whitespace=()=>({type:Qr.types.SET,set:Vwe(),not:!1});Ki.notWhitespace=()=>({type:Qr.types.SET,set:Vwe(),not:!0});Ki.anyChar=()=>({type:Qr.types.SET,set:mQt(),not:!0})});var zwe=_(xc=>{"use strict";var hQt=xc&&xc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),gQt=xc&&xc.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),yQt=xc&&xc.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&hQt(e,t,r);return gQt(e,t),e};Object.defineProperty(xc,"__esModule",{value:!0});xc.tokenizeClass=xc.strToChars=void 0;var Kwe=sf(),Wx=yQt(o3()),AQt="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";xc.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?AQt.indexOf(o):{0:0,t:9,n:10,v:11,f:12,r:13}[c],l=String.fromCharCode(u);return/[[\]{}^$.|?*+()]/.test(l)?`\\${l}`:l})};xc.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 m=(c=(o=(a=(i=(s=(n=(r=l[1]&&Wx.words())!==null&&r!==void 0?r:l[2]&&Wx.ints())!==null&&n!==void 0?n:l[3]&&Wx.whitespace())!==null&&s!==void 0?s:l[4]&&Wx.notWords())!==null&&i!==void 0?i:l[5]&&Wx.notInts())!==null&&a!==void 0?a:l[6]&&Wx.notWhitespace())!==null&&o!==void 0?o:l[7]&&{type:Kwe.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:Kwe.types.CHAR,value:d.charCodeAt(0)};if(m)u.push(m);else return[u,f.lastIndex]}throw new SyntaxError(`Invalid regular expression: /${e}/: Unterminated character class`)}});var qQ=_(bl=>{"use strict";var xQt=bl&&bl.__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]}),bQt=bl&&bl.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Jwe=bl&&bl.__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)&&xQt(e,t,r);return bQt(e,t),e};Object.defineProperty(bl,"__esModule",{value:!0});bl.tokenizer=void 0;var Ywe=Jwe(zwe()),Si=sf(),Dh=Jwe(o3());bl.tokenizer=t=>{let e=0,r,n={type:Si.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=Ywe.strToChars(t);for(;e<l.length;)switch(r=l[e++]){case"\\":if(e===l.length)throw new SyntaxError(`Invalid regular expression: /${t}/: \\ at end of pattern`);switch(r=l[e++]){case"b":i.push({type:Si.types.POSITION,value:"b"});break;case"B":i.push({type:Si.types.POSITION,value:"B"});break;case"w":i.push(Dh.words());break;case"W":i.push(Dh.notWords());break;case"d":i.push(Dh.ints());break;case"D":i.push(Dh.notInts());break;case"s":i.push(Dh.whitespace());break;case"S":i.push(Dh.notWhitespace());break;default:if(/\d/.test(r)){let d=r;for(;e<l.length&&/\d/.test(l[e]);)d+=l[e++];let f=parseInt(d,10),m={type:Si.types.REFERENCE,value:f};i.push(m),o.push({reference:m,stack:i,index:i.length-1})}else i.push({type:Si.types.CHAR,value:r.charCodeAt(0)})}break;case"^":i.push({type:Si.types.POSITION,value:"^"});break;case"$":i.push({type:Si.types.POSITION,value:"$"});break;case"[":{let d;l[e]==="^"?(d=!0,e++):d=!1;let f=Ywe.tokenizeClass(l.slice(e),t);e+=f[1],i.push({type:Si.types.SET,set:f[0],not:d});break}case".":i.push(Dh.anyChar());break;case"(":{let d={type:Si.types.GROUP,stack:[],remember:!0};if(l[e]==="?"){if(r=l[e+1],e+=2,r==="=")d.followedBy=!0;else if(r==="!")d.notFollowedBy=!0;else if(r!==":")throw new SyntaxError(`Invalid regular expression: /${t}/: Invalid group, character '${r}' after '?' at column ${e-1}`);d.remember=!1}else c+=1;i.push(d),a.push(s),s=d,i=d.stack;break}case")":if(a.length===0)throw new SyntaxError(`Invalid regular expression: /${t}/: Unmatched ) at column ${e-1}`);s=a.pop(),i=s.options?s.options[s.options.length-1]:s.stack;break;case"|":{s.options||(s.options=[s.stack],delete s.stack);let d=[];s.options.push(d),i=d;break}case"{":{let d=/^(\d+)(,(\d+)?)?\}/.exec(l.slice(e)),f,m;d!==null?(i.length===0&&u(e),f=parseInt(d[1],10),m=d[2]?d[3]?parseInt(d[3],10):1/0:f,e+=d[0].length,i.push({type:Si.types.REPETITION,min:f,max:m,value:i.pop()})):i.push({type:Si.types.CHAR,value:123});break}case"?":i.length===0&&u(e),i.push({type:Si.types.REPETITION,min:0,max:1,value:i.pop()});break;case"+":i.length===0&&u(e),i.push({type:Si.types.REPETITION,min:1,max:1/0,value:i.pop()});break;case"*":i.length===0&&u(e),i.push({type:Si.types.REPETITION,min:0,max:1/0,value:i.pop()});break;default:i.push({type:Si.types.CHAR,value:r.charCodeAt(0)})}if(a.length!==0)throw new SyntaxError(`Invalid regular expression: /${t}/: Unterminated group`);return _Qt(o,c),n};function _Qt(t,e){for(let r of t.reverse())if(e<r.reference.value){r.reference.type=Si.types.CHAR;let n=r.reference.value.toString();if(r.reference.value=parseInt(n,8),!/^[0-7]+$/.test(n)){let s=0;for(;n[s]!=="8"&&n[s]!=="9";)s+=1;if(s===0?(r.reference.value=n.charCodeAt(0),s+=1):r.reference.value=parseInt(n.slice(0,s),8),n.length>s){let i=r.stack.splice(r.index+1);for(let a of n.slice(s))r.stack.push({type:Si.types.CHAR,value:a.charCodeAt(0)});r.stack.push(...i)}}}}});var Zwe=_(zi=>{"use strict";var EQt=zi&&zi.__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]}),vQt=zi&&zi.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),SQt=zi&&zi.__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)&&EQt(e,t,r);return vQt(e,t),e};Object.defineProperty(zi,"__esModule",{value:!0});zi.NOTANYCHAR=zi.WHITESPACE=zi.WORDS=zi.INTS=void 0;var c3=SQt(o3()),Xwe=sf();function u3(t){let e={},r=0;for(let n of t)n.type===Xwe.types.CHAR&&(e[n.value]=!0),n.type===Xwe.types.RANGE&&(e[`${n.from}-${n.to}`]=!0),r+=1;return{lookup:()=>Object.assign({},e),len:r}}zi.INTS=u3(c3.ints().set);zi.WORDS=u3(c3.words().set);zi.WHITESPACE=u3(c3.whitespace().set);zi.NOTANYCHAR=u3(c3.anyChar().set)});var tRe=_(bc=>{"use strict";var IQt=bc&&bc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),CQt=bc&&bc.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),TQt=bc&&bc.__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)&&IQt(e,t,r);return CQt(e,t),e};Object.defineProperty(bc,"__esModule",{value:!0});bc.writeSetTokens=bc.setChar=void 0;var p3=sf(),l3=TQt(Zwe());function f3(t){return t===94?"\\^":t===92?"\\\\":t===93?"\\]":t===45?"\\-":String.fromCharCode(t)}bc.setChar=f3;function d3(t,{lookup:e,len:r}){if(r!==t.length)return!1;let n=e();for(let s of t){if(s.type===p3.types.SET)return!1;let i=s.type===p3.types.CHAR?s.value:`${s.from}-${s.to}`;if(n[i])n[i]=!1;else return!1}return!0}function eRe(t,e=!1){if(d3(t.set,l3.INTS))return t.not?"\\D":"\\d";if(d3(t.set,l3.WORDS))return t.not?"\\W":"\\w";if(t.not&&d3(t.set,l3.NOTANYCHAR))return".";if(d3(t.set,l3.WHITESPACE))return t.not?"\\S":"\\s";let r="";for(let s=0;s<t.set.length;s++){let i=t.set[s];r+=wQt(i)}let n=`${t.not?"^":""}${r}`;return e?n:`[${n}]`}bc.writeSetTokens=eRe;function wQt(t){return t.type===p3.types.CHAR?f3(t.value):t.type===p3.types.RANGE?`${f3(t.from)}-${f3(t.to)}`:eRe(t,!0)}});var QQ=_($x=>{"use strict";Object.defineProperty($x,"__esModule",{value:!0});$x.reconstruct=void 0;var p0=sf(),jQ=tRe(),rRe=t=>t.map($x.reconstruct).join(""),nRe=t=>{if("options"in t)return t.options.map(rRe).join("|");if("stack"in t)return rRe(t.stack);throw new Error("options or stack must be Root or Group token")};$x.reconstruct=t=>{switch(t.type){case p0.types.ROOT:return nRe(t);case p0.types.CHAR:{let e=String.fromCharCode(t.value);return(/[[\\{}$^.|?*+()]/.test(e)?"\\":"")+e}case p0.types.POSITION:return t.value==="^"||t.value==="$"?t.value:`\\${t.value}`;case p0.types.REFERENCE:return`\\${t.value}`;case p0.types.SET:return jQ.writeSetTokens(t);case p0.types.GROUP:return`(${t.remember?"":t.followedBy?"?=":t.notFollowedBy?"?!":"?:"}${nRe(t)})`;case p0.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}}`,`${$x.reconstruct(t.value)}${n}`}case p0.types.RANGE:return`${jQ.setChar(t.from)}-${jQ.setChar(t.to)}`;default:throw new Error(`Invalid token type ${t}`)}}});var aRe=_((_c,m3)=>{"use strict";var RQt=_c&&_c.__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]}),HQ=_c&&_c.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&RQt(e,t,r)};Object.defineProperty(_c,"__esModule",{value:!0});_c.types=void 0;var sRe=sf();Object.defineProperty(_c,"types",{enumerable:!0,get:function(){return sRe.types}});HQ(qQ(),_c);HQ(QQ(),_c);var iRe=qQ(),NQt=QQ();HQ(sf(),_c);_c.default=iRe.tokenizer;m3.exports=iRe.tokenizer;m3.exports.types=sRe.types;m3.exports.reconstruct=NQt.reconstruct});var cRe=_((gqr,h3)=>{"use strict";var oRe=aRe(),OQt=oRe.types;function GQ(t,e){e||(e={});let r=e.limit===void 0?25:e.limit;kQt(t)?t=t.source:typeof t!="string"&&(t=String(t));try{t=oRe(t)}catch{return!1}let n=0;return function s(i,a){let o,c,u;if(i.type===OQt.REPETITION&&(a++,n++,a>1||n>r))return!1;if(i.options){for(o=0,u=i.options.length;o<u;o++)if(c=s({stack:i.options[o]},a),!c)return!1}let l=i.stack||i.value&&i.value.stack;if(!l)return!0;for(o=0;o<l.length;o++)if(c=s(l[o],a),!c)return!1;return!0}(t,0)}function kQt(t){return{}.toString.call(t)==="[object RegExp]"}h3.exports=GQ;h3.exports.default=GQ;h3.exports.safeRegex=GQ});var g3=_((yqr,uRe)=>{"use strict";uRe.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 gRe=_((Aqr,hRe)=>{"use strict";var lRe=ic(),dRe=g3(),fRe=Symbol("treeData");function pRe(t,e=""){let r="",n=Object.keys(t);for(let s=0;s<n.length;s++){let i=n[s],a=t[i],o=s===n.length-1,c=o?"\u2514\u2500\u2500 ":"\u251C\u2500\u2500 ",u=o?" ":"\u2502 ",d=(a[fRe]||"").split(`
`).join(`
`+e+u);r+=e+c+i+d+`
`,r+=pRe(a,e+u)}return r}function PQt(t){let e=t.name||"";return e=e.replace("bound","").trim(),e=(e||"anonymous")+"()",e}function mRe(t){return Array.isArray(t)?t.map(e=>mRe(e)):typeof t=="symbol"?t.toString():typeof t=="function"?PQt(t):t}function DQt(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(mRe(o));n[a]=c}}return n}function BQt(t){let e="";for(let[r,n]of Object.entries(t))e+=`
\u2022 (${r}) ${n}`;return e}function LQt(t){let e={...t.opts.constraints},r=e[dRe.name];return delete e[dRe.name],{...t,method:r,opts:{constraints:e}}}function MQt(t){let e=` (${t.method})`,r=t.opts.constraints||{};return Object.keys(r).length!==0&&(e+=" "+JSON.stringify(r)),e+=BQt(t.metaData),e}function WQt(t){return t.reduce((e,r)=>{for(let n of e)if(lRe(r.opts.constraints,n.opts.constraints)&&lRe(r.metaData,n.metaData))return n.method+=", "+r.method,e;return e.push(r),e},[])}function $Qt(t,e,r){let n=t.routes;return r.method===void 0&&(n=n.map(LQt)),n=n.map(s=>(s.metaData=DQt(s,r),s)),r.method===void 0&&(n=WQt(n)),n.map(MQt).join(`
${e}`)}function y3(t,e,r,n){if((t.isLeafNode||n.commonPrefix!==!1)&&(r=r||"(empty root node)",e=e[r]={},t.isLeafNode&&(e[fRe]=$Qt(t,r,n)),r=""),t.staticChildren)for(let s of Object.values(t.staticChildren))y3(s,e,r+s.prefix,n);if(t.parametricChildren)for(let s of Object.values(t.parametricChildren)){let i=Array.from(s.nodePaths).join("|");y3(s,e,r+i,n)}t.wildcardChild&&y3(t.wildcardChild,e,"*",n)}function UQt(t,e){let r={};return y3(t,r,t.prefix,e),pRe(r)}hRe.exports={prettyPrintTree:UQt}});var ARe=_((xqr,yRe)=>{"use strict";var FQt=g3(),VQ=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(FQt.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<e.length;n++)r.push(`'${e[n]}': paramsArray[${n}]`);return new Function("paramsArray",`return {${r.join(",")}}`)}_getHandlerMatchingConstraints(){return null}_buildConstraintStore(e,r){for(let n=0;n<this.handlers.length;n++){let i=this.handlers[n].constraints[r];if(i!==void 0){let a=e.get(i)||0;a|=1<<n,e.set(i,a)}}}_constrainedIndexBitmask(e){let r=0;for(let n=0;n<this.handlers.length;n++)this.handlers[n].constraints[e]!==void 0&&(r|=1<<n);return~r}_compileGetHandlerMatchingConstraints(e){this.constrainedHandlerStores={};for(let n of this.constraints){let s=e.newStoreForConstraint(n);this.constrainedHandlerStores[n]=s,this._buildConstraintStore(s,n)}let r=[];r.push(`
let candidates = ${(1<<this.handlers.length)-1}
let mask, matches
`);for(let n of this.constraints){r.push(`
mask = ${this._constrainedIndexBitmask(n)}
value = derivedConstraints.${n}
`);let i=e.strategies[n].mustMatchWhenDerived?"matches":"(matches | mask)";r.push(`
if (value === undefined) {
candidates &= mask
} else {
matches = this.constrainedHandlerStores.${n}.get(value) || 0
candidates &= ${i}
}
if (candidates === 0) return null;
`)}for(let n in e.strategies)e.strategies[n].mustMatchWhenDerived&&!this.constraints.includes(n)&&r.push(`if (derivedConstraints.${n} !== undefined) return null`);r.push("return this.handlers[Math.floor(Math.log2(candidates))]"),this._getHandlerMatchingConstraints=new Function("derivedConstraints",r.join(`
`))}};yRe.exports=VQ});var bRe=_((bqr,xRe)=>{"use strict";var qQt=ARe(),v3={STATIC:0,PARAMETRIC:1,WILDCARD:2},A3=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 qQt),this.isLeafNode=!0,this.routes.push(e),this.handlerStorage.addHandler(r,e)}},x3=class extends A3{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<r.prefix.length;s++)if(e.charCodeAt(s)!==r.prefix.charCodeAt(s)){r=r.split(this,s);break}return r.createStaticChild(e.slice(s))}let n=e.charAt(0);return this.staticChildren[n]=new b3(e),this.staticChildren[n]}},b3=class t extends x3{constructor(e){super(),this.prefix=e,this.wildcardChild=null,this.parametricChildren=[],this.kind=v3.STATIC,this._compilePrefixMatch()}getParametricChild(e){let r=e&&e.source,n=this.parametricChildren.find(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 _3(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 E3,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<this.prefix.length;r++){let n=this.prefix.charCodeAt(r);e.push(`path.charCodeAt(i + ${r}) === ${n}`)}this.matchPrefix=new Function("path","i",`return ${e.join(" && ")}`)}},_3=class extends x3{constructor(e,r,n){super(),this.isRegex=!!e,this.regex=e||null,this.staticSuffix=r||null,this.kind=v3.PARAMETRIC,this.nodePaths=new Set([n])}getNextNode(e,r){return this.findStaticMatchingChild(e,r)}},E3=class extends A3{constructor(){super(),this.kind=v3.WILDCARD}getNextNode(){return null}};xRe.exports={StaticNode:b3,ParametricNode:_3,WildcardNode:E3,NODE_TYPES:v3}});var ERe=_((_qr,_Re)=>{"use strict";var jQt=require("node:assert");function RS(){if(!(this instanceof RS))return new RS;this.store={},this.maxMajor=0,this.maxMinors={},this.maxPatches={}}RS.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};RS.prototype.get=function(t){return this.store[t]};_Re.exports={name:"version",mustMatchWhenDerived:!0,storage:RS,validate(t){jQt(typeof t=="string","Version should be a string")}}});var SRe=_((Eqr,vRe)=>{"use strict";var QQt=require("node:assert");function HQt(){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}}}vRe.exports={name:"host",mustMatchWhenDerived:!1,storage:HQt,validate(t){QQt(typeof t=="string"||Object.prototype.toString.call(t)==="[object RegExp]","Host should be a string or a RegExp")}}});var CRe=_((vqr,IRe)=>{"use strict";var GQt=ERe(),VQt=SRe(),KQ=require("node:assert"),zQ=class{constructor(e){if(this.strategies={version:GQt,host:VQt},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(KQ(typeof e.name=="string"&&e.name!=="","strategy.name is required."),KQ(e.storage&&typeof e.storage=="function","strategy.storage function is required."),KQ(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)}};IRe.exports=zQ});var wRe=_((Sqr,TRe)=>{"use strict";var KQt=["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"];TRe.exports=KQt});var ORe=_((Iqr,NRe)=>{"use strict";function RRe(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 zQt(t,e){let r=!1,n=!1,s="";for(let a=1;a<t.length;a++){let o=t.charCodeAt(a);if(o===37){let c=t.charCodeAt(a+1),u=t.charCodeAt(a+2);RRe(c,u)===null?r=!0:(n=!0,c===50&&u===53&&(r=!0,t=t.slice(0,a+1)+"25"+t.slice(a+1),a+=2),a+=2)}else if(o===63||o===35||o===59&&e){s=t.slice(a+1),t=t.slice(0,a);break}}return{path:r?decodeURI(t):t,querystring:s,shouldDecodeParam:n}}function YQt(t){let e=t.indexOf("%");if(e===-1)return t;let r="",n=e;for(let s=e;s<t.length;s++)if(t.charCodeAt(s)===37){let i=t.charCodeAt(s+1),a=t.charCodeAt(s+2),o=RRe(i,a);r+=t.slice(n,s)+o,n=s+3}return t.slice(0,e)+r+t.slice(n)}NRe.exports={safeDecodeURI:zQt,safeDecodeURIComponent:YQt}});var eH=_((Cqr,$Re)=>{"use strict";var gs=require("node:assert"),JQt=$we(),S3=cRe(),JQ=ic(),{prettyPrintTree:XQt}=gRe(),{StaticNode:kRe,NODE_TYPES:PRe}=bRe(),ZQt=CRe(),Ux=wRe(),YQ=g3(),{safeDecodeURI:eHt,safeDecodeURIComponent:DRe}=ORe(),BRe=/^https?:\/\/.*?\//,Bh=/(\/:[^/()]*?)\?(\/?)/;if(!S3(BRe))throw new Error("the FULL_PATH_REGEXP is not safe, update this module");if(!S3(Bh))throw new Error("the OPTIONAL_PARAM_REGEXP is not safe, update this module");function Yn(t){if(!(this instanceof Yn))return new Yn(t);t=t||{},this._opts=t,t.defaultRoute?(gs(typeof t.defaultRoute=="function","The default route must be a function"),this.defaultRoute=t.defaultRoute):this.defaultRoute=null,t.onBadUrl?(gs(typeof t.onBadUrl=="function","The bad url handler must be a function"),this.onBadUrl=t.onBadUrl):this.onBadUrl=null,t.buildPrettyMeta?(gs(typeof t.buildPrettyMeta=="function","buildPrettyMeta must be a function"),this.buildPrettyMeta=t.buildPrettyMeta):this.buildPrettyMeta=tHt,t.querystringParser?(gs(typeof t.querystringParser=="function","querystringParser must be a function"),this.querystringParser=t.querystringParser):this.querystringParser=e=>e===""?{}:JQt.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 ZQt(t.constraints),this.useSemicolonDelimiter=t.useSemicolonDelimiter||!1,this.routes=[],this.trees={}}Yn.prototype.on=function(e,r,n,s,i){typeof n=="function"&&(s!==void 0&&(i=s),s=n,n={}),gs(typeof r=="string","Path should be a string"),gs(r.length>0,"The path could not be empty"),gs(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),gs(typeof s=="function","Handler should be a function");let a=r.match(Bh);if(a){gs(r.length===a.index+a[0].length,"Optional Parameter needs to be the last parameter of the path");let u=r.replace(Bh,"$1$2"),l=r.replace(Bh,"$2")||"/";this.on(e,u,n,s,i),this.on(e,l,n,s,i);return}let o=r;this.ignoreDuplicateSlashes&&(r=XQ(r)),this.ignoreTrailingSlash&&(r=ZQ(r));let c=Array.isArray(e)?e:[e];for(let u of c)gs(typeof u=="string","Method should be a string"),gs(Ux.includes(u),`Method '${u}' is not an http method.`),this._on(u,r,n,s,i,o)};Yn.prototype._on=function(e,r,n,s,i){let a={};n.constraints!==void 0&&(gs(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 kRe("/"));let o=r;if(o==="*"&&this.trees[e].prefix.length!==0){let f=this.trees[e];this.trees[e]=new kRe(""),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 m=o.charCodeAt(f)===58&&o.charCodeAt(f+1)!==58,p=o.charCodeAt(f)===42;if(m||p||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(m){let h=!1,y=!0,g="",A=[],b=f+1;for(let x=b;;x++){let S=o.charCodeAt(x),T=S===40,I=S===45||S===46,R=S===47||x===o.length;if(T||I||R){let N=o.slice(b,x);if(l.push(N),h=h||T||I,T){let M=WRe(o,x),P=o.slice(x,M+1);this.allowUnsafeRegex||gs(S3(new RegExp(P)),`The regex '${P}' is not safe!`),A.push(MRe(P)),x=M+1,y=!0}else A.push(y?"(.*?)":`(${g}|(?:(?!${g}).)*)`),y=!1;let k=x;for(;x<o.length;x++){let M=o.charCodeAt(x);if(M===47)break;if(M===58)if(o.charCodeAt(x+1)===58)x++;else break}let B=o.slice(k,x);if(B&&(B=B.split("::").join(":"),B=B.split("%").join("%25"),A.push(g=LRe(B))),b=x+1,R||o.charCodeAt(x)===47||x===o.length){let M=h?"()"+B:B,P=o.slice(f,x);o=o.slice(0,f+1)+M+o.slice(x),f+=M.length;let L=h?new RegExp("^"+A.join("")+"$"):null;c=c.createParametricChild(L,B||null,P),u=f+1;break}}}}else if(p&&(l.push("*"),c=c.createWildcardChild(),u=f+1,f!==o.length-1))throw new Error("Wildcard must be the last character in the route")}this.caseSensitive||(o=o.toLowerCase()),o==="*"&&(o="/*");for(let f of this.routes){let m=f.opts.constraints||{};if(f.method===e&&f.pattern===o&&JQ(m,a))throw new Error(`Method '${e}' already declared for route '${o}' with constraints '${JSON.stringify(a)}'`)}let d={method:e,path:r,pattern:o,params:l,opts:n,handler:s,store:i};this.routes.push(d),c.addRoute(d,this.constrainer)};Yn.prototype.hasRoute=function(e,r,n){return this.findRoute(e,r,n)!==null};Yn.prototype.findRoute=function(e,r,n={}){if(this.trees[e]===void 0)return null;let s=r,i=this.trees[e],a=i.prefix.length,o=[];for(let c=0;c<=s.length;c++){if(s.charCodeAt(c)===58&&s.charCodeAt(c+1)===58){c++;continue}let u=s.charCodeAt(c)===58&&s.charCodeAt(c+1)!==58,l=s.charCodeAt(c)===42;if(u||l||c===s.length&&c!==a){let d=s.slice(a,c);if(this.caseSensitive||(d=d.toLowerCase()),d=d.split("::").join(":"),d=d.split("%").join("%25"),i=i.getStaticChild(d),i===null)return null}if(u){let d=!1,f=!0,m="",p=[],h=c+1;for(let y=h;;y++){let g=s.charCodeAt(y),A=g===40,b=g===45||g===46,x=g===47||y===s.length;if(A||b||x){let S=s.slice(h,y);if(o.push(S),d=d||A||b,A){let R=WRe(s,y),N=s.slice(y,R+1);this.allowUnsafeRegex||gs(S3(new RegExp(N)),`The regex '${N}' is not safe!`),p.push(MRe(N)),y=R+1,f=!1}else p.push(f?"(.*?)":`(${m}|(?:(?!${m}).)*)`),f=!1;let T=y;for(;y<s.length;y++){let R=s.charCodeAt(y);if(R===47)break;if(R===58)if(s.charCodeAt(y+1)===58)y++;else break}let I=s.slice(T,y);if(I&&(I=I.split("::").join(":"),I=I.split("%").join("%25"),p.push(m=LRe(I))),h=y+1,x||s.charCodeAt(y)===47||y===s.length){let R=d?"()"+I:I,N=s.slice(c,y);s=s.slice(0,c+1)+R+s.slice(y),c+=R.length;let k=d?new RegExp("^"+p.join("")+"$"):null;if(i=i.getParametricChild(k,I||null,N),i===null)return null;a=c+1;break}}}}else if(l&&(o.push("*"),i=i.getWildcardChild(),a=c+1,c!==s.length-1))throw new Error("Wildcard must be the last character in the route")}this.caseSensitive||(s=s.toLowerCase());for(let c of this.routes){let u=c.opts.constraints||{};if(c.method===e&&c.pattern===s&&JQ(u,n))return{handler:c.handler,store:c.store,params:c.params}}return null};Yn.prototype.hasConstraintStrategy=function(t){return this.constrainer.hasConstraintStrategy(t)};Yn.prototype.addConstraintStrategy=function(t){this.constrainer.addConstraintStrategy(t),this._rebuild(this.routes)};Yn.prototype.reset=function(){this.trees={},this.routes=[]};Yn.prototype.off=function(e,r,n){gs(typeof r=="string","Path should be a string"),gs(r.length>0,"The path could not be empty"),gs(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),gs(typeof n>"u"||typeof n=="object"&&!Array.isArray(n)&&n!==null,"Constraints should be an object or undefined.");let s=r.match(Bh);if(s){gs(r.length===s.index+s[0].length,"Optional Parameter needs to be the last parameter of the path");let a=r.replace(Bh,"$1$2"),o=r.replace(Bh,"$2");this.off(e,a,n),this.off(e,o,n);return}this.ignoreDuplicateSlashes&&(r=XQ(r)),this.ignoreTrailingSlash&&(r=ZQ(r));let i=Array.isArray(e)?e:[e];for(let a of i)this._off(a,r,n)};Yn.prototype._off=function(e,r,n){gs(typeof e=="string","Method should be a string"),gs(Ux.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)||!JQ(n,c.opts.constraints||{})}let a=n?i:s,o=this.routes.filter(a);this._rebuild(o)};Yn.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)}})};Yn.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)};Yn.prototype.find=function(e,r,n){let s=this.trees[e];if(s===void 0)return null;r.charCodeAt(0)!==47&&(r=r.replace(BRe,"/")),this.ignoreDuplicateSlashes&&(r=XQ(r));let i,a,o;try{i=eHt(r,this.useSemicolonDelimiter),r=i.path,a=i.querystring,o=i.shouldDecodeParam}catch{return this._onBadUrl(r)}this.ignoreTrailingSlash&&(r=ZQ(r));let c=r;this.caseSensitive===!1&&(r=r.toLowerCase());let u=this.maxParamLength,l=s.prefix.length,d=[],f=r.length,m=[];for(;;){if(l===f&&s.isLeafNode){let g=s.handlerStorage.getMatchingHandler(n);if(g!==null)return{handler:g.handler,store:g.store,params:g._createParamsObject(d),searchParams:this.querystringParser(a)}}let p=s.getNextNode(r,l,m,d.length);if(p===null){if(m.length===0)return null;let g=m.pop();l=g.brotherPathIndex,d.splice(g.paramsCount),p=g.brotherNode}if(s=p,s.kind===PRe.STATIC){l+=s.prefix.length;continue}if(s.kind===PRe.WILDCARD){let g=c.slice(l);o&&(g=DRe(g)),d.push(g),l=f;continue}let h=c.indexOf("/",l);h===-1&&(h=f);let y=c.slice(l,h);if(o&&(y=DRe(y)),s.isRegex){let g=s.regex.exec(y);if(g===null)continue;for(let A=1;A<g.length;A++){let b=g[A];if(b.length>u)return null;d.push(b)}}else{if(y.length>u)return null;d.push(y)}l=h}};Yn.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)}};Yn.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()};Yn.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}};Yn.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[YQ.name]=YQ;let a=new Yn({...this._opts,constraints:i}),o=this.routes.map(c=>{let u={...c.opts.constraints,[YQ.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)":XQt(r,t)};for(let t in Ux){if(!Ux.hasOwnProperty(t))continue;let e=Ux[t],r=e.toLowerCase();Yn.prototype[r]=function(n,s,i){return this.on(e,n,s,i)}}Yn.prototype.all=function(t,e,r){this.on(Ux,t,e,r)};$Re.exports=Yn;function LRe(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function XQ(t){return t.replace(/\/\/+/g,"/")}function ZQ(t){return t.length>1&&t.charCodeAt(t.length-1)===47?t.slice(0,-1):t}function MRe(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 WRe(t,e){let r=1;for(;e<t.length;){if(e++,t[e]==="\\"){e++;continue}if(t[e]===")"?r--:t[e]==="("&&r++,!r)return e}throw new TypeError('Invalid regexp expression in "'+t+'"')}function tHt(t){return t?t.store?Object.assign({},t.store):{}:{}}});var FRe=_((Tqr,URe)=>{"use strict";function tH(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 rHt(t){return t==null?tH:Array.isArray(t)?[...t,tH]:[t,tH]}URe.exports={parseHeadOnSendHandlers:rHt}});var sNe=_((wqr,nNe)=>{"use strict";var nHt=eH(),sHt=_k(),qRe=g8(),{onRequestAbortHookRunner:iHt,lifecycleHooks:jRe,preParsingHookRunner:aHt,onTimeoutHookRunner:oHt,onRequestHookRunner:cHt}=kp(),{supportedMethods:uHt}=KF(),{normalizeSchema:lHt}=bE(),{parseHeadOnSendHandlers:dHt}=FRe(),{FSTDEP007:fHt,FSTDEP008:pHt,FSTDEP014:QRe}=Od(),{compileSchemasForValidation:mHt,compileSchemasForSerialization:hHt}=d8(),{FST_ERR_SCH_VALIDATION_BUILD:gHt,FST_ERR_SCH_SERIALIZATION_BUILD:yHt,FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:AHt,FST_ERR_DUPLICATED_ROUTE:xHt,FST_ERR_INVALID_URL:bHt,FST_ERR_HOOK_INVALID_HANDLER:HRe,FST_ERR_ROUTE_OPTIONS_NOT_OBJ:_Ht,FST_ERR_ROUTE_DUPLICATED_HANDLER:EHt,FST_ERR_ROUTE_HANDLER_NOT_FN:GRe,FST_ERR_ROUTE_MISSING_HANDLER:vHt,FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:SHt,FST_ERR_ROUTE_METHOD_INVALID:IHt,FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:CHt,FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:THt,FST_ERR_HOOK_INVALID_ASYNC_HANDLER:rH}=Bi(),{kRoutePrefix:wHt,kLogLevel:RHt,kLogSerializers:VRe,kHooks:KRe,kSchemaController:NHt,kOptions:zRe,kReplySerializerDefault:nH,kReplyIsError:OHt,kRequestPayloadStream:kHt,kDisableRequestLogging:PHt,kSchemaErrorFormatter:DHt,kErrorHandler:YRe,kHasBeenDecorated:JRe,kRequestAcceptVersion:sH,kRouteByFastify:iH,kRouteContext:XRe}=Ks(),{buildErrorHandler:BHt}=XE(),{createChildLogger:LHt}=xE(),{getGenReqId:MHt}=a3();function WHt(t){let e=nHt(t.config),r,n,s,i,a,o,c,u,l,d,f,m,p,h=!1;return{setup(R,N){r=N.avvio,n=N.fourOhFour,s=N.logger,i=N.hasLogger,a=N.setupResponseListeners,o=N.throwIfAlreadyStarted,m=N.validateHTTPVersion,f=R.exposeHeadRoutes,c=R.disableRequestLogging,u=R.ignoreTrailingSlash,l=R.ignoreDuplicateSlashes,d=Object.prototype.hasOwnProperty.call(R,"return503OnClosing")?R.return503OnClosing:!0,p=N.keepAliveConnections},routing:e.lookup.bind(e),route:T,hasRoute:x,prepareRoute:b,getDefaultRoute:function(){return QRe(),e.defaultRoute},setDefaultRoute:function(R){if(QRe(),typeof R!="function")throw new AHt;e.defaultRoute=R},routeHandler:I,closeRoutes:()=>{h=!0},printRoutes:e.prettyPrint.bind(e),addConstraintStrategy:y,hasConstraintStrategy:g,isAsyncConstraint:A,findRoute:S};function y(R){return o("Cannot add constraint strategy!"),e.addConstraintStrategy(R)}function g(R){return e.hasConstraintStrategy(R)}function A(){return e.constrainer.asyncStrategiesInUse.size>0}function b({method:R,url:N,options:k,handler:B,isFastify:M}){if(typeof N!="string")throw new bHt(typeof N);if(!B&&typeof k=="function")B=k,k={};else if(B&&typeof B=="function"){if(Object.prototype.toString.call(k)!=="[object Object]")throw new _Ht(R,N);if(k.handler)throw typeof k.handler=="function"?new EHt(R,N):new GRe(R,N)}return k=Object.assign({},k,{method:R,url:N,path:N,handler:B||k&&k.handler}),T.call(this,{options:k,isFastify:M})}function x({options:R}){return S(R)!==null}function S(R){let N=e.find(R.method,R.url||"",R.constraints);return N?{handler:N.handler,params:N.params,searchParams:N.searchParams}:null}function T({options:R,isFastify:N}){let k={...R},{exposeHeadRoute:B}=k,P=B!=null?B:f,L=k.method==="GET"||Array.isArray(k.method)&&k.method.includes("GET"),Z=k.method==="HEAD"||Array.isArray(k.method)&&k.method.includes("HEAD"),W=P&&L?{...R}:null;o("Cannot add route!");let U=k.url||k.path||"";if(Array.isArray(k.method))for(var V=0;V<k.method.length;++V)k.method[V]=ZRe(k.method[V]),eNe(k.method[V],U,k.schema);else k.method=ZRe(k.method),eNe(k.method,U,k.schema);if(!k.handler)throw new vHt(k.method,U);if(k.errorHandler!==void 0&&typeof k.errorHandler!="function")throw new GRe(k.method,U);rNe(k.bodyLimit);let j=this[wHt];if(U==="/"&&j.length>0&&k.method!=="HEAD")switch(k.prefixTrailingSlash){case"slash":J.call(this,{path:U,isFastify:N});break;case"no-slash":J.call(this,{path:"",isFastify:N});break;case"both":default:J.call(this,{path:"",isFastify:N}),u!==!0&&(l!==!0||!j.endsWith("/"))&&J.call(this,{path:U,prefixing:!0,isFastify:N})}else U[0]==="/"&&j.endsWith("/")?J.call(this,{path:U.slice(1),isFastify:N}):J.call(this,{path:U,isFastify:N});return this;function J({path:se,prefixing:oe=!1,isFastify:ue=!1}){let Te=j+se;if(k.url=Te,k.path=Te,k.routePath=se,k.prefix=j,k.logLevel=k.logLevel||this[RHt],(this[VRe]||k.logSerializers)&&(k.logSerializers=Object.assign(Object.create(this[VRe]),k.logSerializers)),k.attachValidation==null&&(k.attachValidation=!1),oe===!1)for(let G of this[KRe].onRoute)G.call(this,k);for(let G of jRe)if(k&&G in k){if(Array.isArray(k[G]))for(let K of k[G]){if(typeof K!="function")throw new HRe(G,Object.prototype.toString.call(K));if(G==="onSend"||G==="preSerialization"||G==="onError"||G==="preParsing"){if(K.constructor.name==="AsyncFunction"&&K.length===4)throw new rH}else if(G==="onRequestAbort"){if(K.constructor.name==="AsyncFunction"&&K.length!==1)throw new rH}else if(K.constructor.name==="AsyncFunction"&&K.length===3)throw new rH}else if(k[G]!==void 0&&typeof k[G]!="function")throw new HRe(G,Object.prototype.toString.call(k[G]))}let Ne=k.constraints||{},je={...k.config,url:Te,method:k.method},Fe=new sHt({schema:k.schema,handler:k.handler.bind(this),config:je,errorHandler:k.errorHandler,childLoggerFactory:k.childLoggerFactory,bodyLimit:k.bodyLimit,logLevel:k.logLevel,logSerializers:k.logSerializers,attachValidation:k.attachValidation,schemaErrorFormatter:k.schemaErrorFormatter,replySerializer:this[nH],validatorCompiler:k.validatorCompiler,serializerCompiler:k.serializerCompiler,exposeHeadRoute:P,prefixTrailingSlash:k.prefixTrailingSlash||"both",server:this,isFastify:ue});k.version&&(pHt(),Ne.version=k.version);let ve=e.findRoute("HEAD",k.url,Ne),F=ve!==null;Z&&F&&!Fe[iH]&&ve.store[iH]&&e.off("HEAD",k.url,Ne);try{e.on(k.method,k.url,{constraints:Ne},I,Fe)}catch(G){if(!Fe[iH])throw G.message.includes(`Method '${k.method}' already declared for route '${k.url}'`)?new xHt(k.method,k.url):G}if(this.after((G,K)=>{Fe.errorHandler=k.errorHandler?BHt(this[YRe],k.errorHandler):this[YRe],Fe._parserOptions.limit=k.bodyLimit||null,Fe.logLevel=k.logLevel,Fe.logSerializers=k.logSerializers,Fe.attachValidation=k.attachValidation,Fe[nH]=this[nH],Fe.schemaErrorFormatter=k.schemaErrorFormatter||this[DHt]||Fe.schemaErrorFormatter,r.once("preReady",()=>{for(let q of jRe){let Q=this[KRe][q].concat(k[q]||[]).map(ee=>ee.bind(this));Fe[q]=Q.length?Q:null}for(;!Fe.Request[JRe]&&Fe.Request.parent;)Fe.Request=Fe.Request.parent;for(;!Fe.Reply[JRe]&&Fe.Reply.parent;)Fe.Reply=Fe.Reply.parent;if(n.setContext(this,Fe),k.schema){Fe.schema=lHt(Fe.schema,this.initialConfig);let q=this[NHt];!k.validatorCompiler&&(k.schema.body||k.schema.headers||k.schema.querystring||k.schema.params)&&q.setupValidator(this[zRe]);try{let Q=typeof k?.validatorCompiler=="function"||q.isCustomValidatorCompiler;mHt(Fe,k.validatorCompiler||q.validatorCompiler,Q)}catch(Q){throw new gHt(k.method,Te,Q.message)}k.schema.response&&!k.serializerCompiler&&q.setupSerializer(this[zRe]);try{hHt(Fe,k.serializerCompiler||q.serializerCompiler)}catch(Q){throw new yHt(k.method,Te,Q.message)}}}),K(G)}),P&&L&&!Z&&!F){let G=dHt(W.onSend);b.call(this,{method:"HEAD",url:se,options:{...W,onSend:G},isFastify:!0})}else F&&B&&fHt()}}function I(R,N,k,B,M){let P=MHt(B.server,R),L={level:B.logLevel};B.logSerializers&&(L.serializers=B.logSerializers);let Z=LHt(B,s,R,P,L);if(Z[PHt]=c,!m(R.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&&(R.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(R.headers.connection||"")==="keep-alive"&&p.has(R.socket)===!1&&(p.add(R.socket),R.socket.on("close",FHt.bind({keepAliveConnections:p,socket:R.socket}))),R.headers[sH]!==void 0&&(R.headers["accept-version"]=R.headers[sH],R.headers[sH]=void 0);let U=new B.Request(P,k,R,M,Z,B),V=new B.Reply(N,U,Z);c===!1&&Z.info({req:U},"incoming request"),(i===!0||B.onResponse!==null)&&a(V),B.onRequest!==null?cHt(B.onRequest,U,V,tNe):tNe(null,U,V),B.onRequestAbort!==null&&R.on("close",()=>{R.aborted&&iHt(B.onRequestAbort,U,$Ht.bind(null,V))}),B.onTimeout!==null&&(U.raw.socket._meta||U.raw.socket.on("timeout",UHt),U.raw.socket._meta={context:B,request:U,reply:V})}}function $Ht(t,e){e&&t.log.error({err:e},"onRequestAborted hook failed")}function UHt(){let{context:t,request:e,reply:r}=this._meta;oHt(t.onTimeout,e,r,qHt)}function ZRe(t){if(typeof t!="string")throw new IHt;if(t=t.toUpperCase(),uHt.indexOf(t)===-1)throw new SHt(t);return t}function eNe(t,e,r){if((t==="GET"||t==="HEAD")&&r&&r.body)throw new CHt(t,e)}function rNe(t){if(t!==void 0&&(!Number.isInteger(t)||t<=0))throw new THt(t)}function tNe(t,e,r){if(r.sent!==!0){if(t!=null){r[OHt]=!0,r.send(t);return}e[kHt]=e.raw,e[XRe].preParsing!==null?aHt(e[XRe].preParsing,e,r,qRe):qRe(null,e,r)}}function FHt(){this.keepAliveConnections.delete(this.socket)}function qHt(){}nNe.exports={buildRouting:WHt,validateBodyLimitOption:rNe}});var dNe=_((Rqr,lNe)=>{"use strict";var jHt=eH(),iNe=nk(),aNe=bk(),QHt=_k(),{kRoutePrefix:HHt,kCanSetNotFoundHandler:NS,kFourOhFourLevelInstance:OS,kFourOhFourContext:_l,kHooks:GHt,kErrorHandler:oNe}=Ks(),{lifecycleHooks:VHt}=kp(),{buildErrorHandler:KHt}=XE(),{FST_ERR_NOT_FOUND:zHt}=Bi(),{createChildLogger:cNe}=xE(),{getGenReqId:uNe}=a3();function YHt(t){let{logger:e}=t,r=jHt({onBadUrl:a(),defaultRoute:l}),n=null;return{router:r,setNotFoundHandler:c,setContext:o,arrange404:s};function s(d){d[OS]=d,d[NS]=!0,r.onBadUrl=r.onBadUrl.bind(d),r.defaultRoute=r.defaultRoute.bind(d)}function i(d,f){let{url:m,method:p}=d.raw,h=`Route ${p}:${m} not found`;d.log.info(h),f.code(404).send({message:h,error:"Not Found",statusCode:404})}function a(){return function(f,m,p){let h=this[OS][_l],y=uNe(h.server,m),g=cNe(h,e,m,y),A=new aNe(y,null,m,null,g,h),b=new iNe(p,A,g);n(A,b)}}function o(d,f){let m=Object.assign({},d[_l]);m.onSend=f.onSend,f[_l]=m}function c(d,f,m,p){this[NS]===void 0&&(this[NS]=!0),this[_l]===void 0&&(this[_l]=null);let h=this,y=this[HHt]||"/";if(this[NS]===!1)throw new Error(`Not found handler already set for Fastify instance with prefix: '${y}'`);typeof d=="object"&&(d.preHandler&&(Array.isArray(d.preHandler)?d.preHandler=d.preHandler.map(g=>g.bind(h)):d.preHandler=d.preHandler.bind(h)),d.preValidation&&(Array.isArray(d.preValidation)?d.preValidation=d.preValidation.map(g=>g.bind(h)):d.preValidation=d.preValidation.bind(h))),typeof d=="function"&&(f=d,d=void 0),d=d||{},f?(this[OS][NS]=!1,f=f.bind(this),n=f):(f=i,n=i),this.after((g,A)=>{u.call(this,y,d,f,m,p),A(g)})}function u(d,f,m,p,h){let y=new QHt({schema:f.schema,handler:m,config:f.config||{},server:this});if(p.once("preReady",()=>{let g=this[_l];for(let A of VHt){let b=this[GHt][A].concat(f[A]||[]).map(x=>x.bind(this));g[A]=b.length?b:null}g.errorHandler=f.errorHandler?KHt(this[oNe],f.errorHandler):this[oNe]}),this[_l]!==null&&d==="/"){Object.assign(this[_l],y);return}this[OS][_l]=y,r.all(d+(d.endsWith("/")?"*":"/*"),h,y),r.all(d,h,y)}function l(d,f){let m=this[OS][_l],p=uNe(m.server,d),h=cNe(m,e,d,p);h.info({req:d},"incoming request");let y=new aNe(p,null,d,null,h,m),g=new iNe(f,y,h);y.log.warn("the default handler for 404 did not catch this, this is likely a fastify bug, please report it"),y.log.warn(r.prettyPrint()),g.code(404).send(new zHt)}}lNe.exports=YHt});var pNe=_((Nqr,I3)=>{"use strict";I3.exports=qr;I3.exports.default=qr;var fNe={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:{}}}}}},JHt=Object.prototype.hasOwnProperty,XHt=new RegExp("idle","u");function qr(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){t.connectionTimeout===void 0&&(t.connectionTimeout=0),t.keepAliveTimeout===void 0&&(t.keepAliveTimeout=72e3),t.maxRequestsPerSocket===void 0&&(t.maxRequestsPerSocket=0),t.requestTimeout===void 0&&(t.requestTimeout=0),t.bodyLimit===void 0&&(t.bodyLimit=1048576),t.caseSensitive===void 0&&(t.caseSensitive=!0),t.allowUnsafeRegex===void 0&&(t.allowUnsafeRegex=!1),t.ignoreTrailingSlash===void 0&&(t.ignoreTrailingSlash=!1),t.ignoreDuplicateSlashes===void 0&&(t.ignoreDuplicateSlashes=!1),t.disableRequestLogging===void 0&&(t.disableRequestLogging=!1),t.jsonShorthand===void 0&&(t.jsonShorthand=!0),t.maxParamLength===void 0&&(t.maxParamLength=100),t.onProtoPoisoning===void 0&&(t.onProtoPoisoning="error"),t.onConstructorPoisoning===void 0&&(t.onConstructorPoisoning="error"),t.pluginTimeout===void 0&&(t.pluginTimeout=1e4),t.requestIdHeader===void 0&&(t.requestIdHeader="request-id"),t.requestIdLogLabel===void 0&&(t.requestIdLogLabel="reqId"),t.http2SessionTimeout===void 0&&(t.http2SessionTimeout=72e3),t.exposeHeadRoutes===void 0&&(t.exposeHeadRoutes=!0),t.useSemicolonDelimiter===void 0&&(t.useSemicolonDelimiter=!0);let p=a;for(let h in t)JHt.call(fNe.properties,h)||delete t[h];if(p===a){let h=t.connectionTimeout,y=a;if(!(typeof h=="number"&&!(h%1)&&!isNaN(h)&&isFinite(h))){let g=typeof h,A;if(A===void 0)if(g==="boolean"||h===null||g==="string"&&h&&h==+h&&!(h%1))A=+h;else return qr.errors=[{instancePath:e+"/connectionTimeout",schemaPath:"#/properties/connectionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;A!==void 0&&(h=A,t!==void 0&&(t.connectionTimeout=A))}var o=y===a;if(o){let g=t.keepAliveTimeout,A=a;if(!(typeof g=="number"&&!(g%1)&&!isNaN(g)&&isFinite(g))){let x=typeof g,S;if(S===void 0)if(x==="boolean"||g===null||x==="string"&&g&&g==+g&&!(g%1))S=+g;else return qr.errors=[{instancePath:e+"/keepAliveTimeout",schemaPath:"#/properties/keepAliveTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;S!==void 0&&(g=S,t!==void 0&&(t.keepAliveTimeout=S))}var o=A===a;if(o){if(t.forceCloseConnections!==void 0){let x=t.forceCloseConnections,S=a,T=a,I=!1,R=null,N=a;if(typeof x!="string"){let M=typeof x,P;if(P===void 0)if(M=="number"||M=="boolean")P=""+x;else if(x===null)P="";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++}P!==void 0&&(x=P,t!==void 0&&(t.forceCloseConnections=P))}if(a===N&&typeof x=="string"&&!XHt.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&&(I=!0,R=0);let k=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 P={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/1/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"};i===null?i=[P]:i.push(P),a++}M!==void 0&&(x=M,t!==void 0&&(t.forceCloseConnections=M))}var c=k===a;if(c&&I?(I=!1,R=[R,1]):c&&(I=!0,R=1),I)a=T,i!==null&&(T?i.length=T:i=null);else{let M={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf",keyword:"oneOf",params:{passingSchemas:R},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,qr.errors=i,!1}var o=S===a}else var o=!0;if(o){let x=t.maxRequestsPerSocket,S=a;if(!(typeof x=="number"&&!(x%1)&&!isNaN(x)&&isFinite(x))&&x!==null){let I=typeof x,R;if(R===void 0)if(I==="boolean"||x===null||I==="string"&&x&&x==+x&&!(x%1))R=+x;else if(x===""||x===0||x===!1)R=null;else return qr.errors=[{instancePath:e+"/maxRequestsPerSocket",schemaPath:"#/properties/maxRequestsPerSocket/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;R!==void 0&&(x=R,t!==void 0&&(t.maxRequestsPerSocket=R))}var o=S===a;if(o){let I=t.requestTimeout,R=a;if(!(typeof I=="number"&&!(I%1)&&!isNaN(I)&&isFinite(I))){let k=typeof I,B;if(B===void 0)if(k==="boolean"||I===null||k==="string"&&I&&I==+I&&!(I%1))B=+I;else return qr.errors=[{instancePath:e+"/requestTimeout",schemaPath:"#/properties/requestTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;B!==void 0&&(I=B,t!==void 0&&(t.requestTimeout=B))}var o=R===a;if(o){let k=t.bodyLimit,B=a;if(!(typeof k=="number"&&!(k%1)&&!isNaN(k)&&isFinite(k))){let P=typeof k,L;if(L===void 0)if(P==="boolean"||k===null||P==="string"&&k&&k==+k&&!(k%1))L=+k;else return qr.errors=[{instancePath:e+"/bodyLimit",schemaPath:"#/properties/bodyLimit/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;L!==void 0&&(k=L,t!==void 0&&(t.bodyLimit=L))}var o=B===a;if(o){let P=t.caseSensitive,L=a;if(typeof P!="boolean"){let W;if(W===void 0)if(P==="false"||P===0||P===null)W=!1;else if(P==="true"||P===1)W=!0;else return qr.errors=[{instancePath:e+"/caseSensitive",schemaPath:"#/properties/caseSensitive/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;W!==void 0&&(P=W,t!==void 0&&(t.caseSensitive=W))}var o=L===a;if(o){let W=t.allowUnsafeRegex,U=a;if(typeof W!="boolean"){let j;if(j===void 0)if(W==="false"||W===0||W===null)j=!1;else if(W==="true"||W===1)j=!0;else return qr.errors=[{instancePath:e+"/allowUnsafeRegex",schemaPath:"#/properties/allowUnsafeRegex/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;j!==void 0&&(W=j,t!==void 0&&(t.allowUnsafeRegex=j))}var o=U===a;if(o){if(t.http2!==void 0){let j=t.http2,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return qr.errors=[{instancePath:e+"/http2",schemaPath:"#/properties/http2/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.http2=oe))}var o=J===a}else var o=!0;if(o){if(t.https!==void 0){let j=t.https,J=a,se=a,oe=!0,ue=a,Te=a,Ne=a,je=a,Fe=!1,ve=null,F=a;if(typeof j!="boolean"){let q;if(q===void 0)if(j==="false"||j===0||j===null)q=!1;else if(j==="true"||j===1)q=!0;else{let Q={};i===null?i=[Q]:i.push(Q),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=F===a;u&&(Fe=!0,ve=0);let G=a;if(j!==null){let q;if(q===void 0)if(j===""||j===0||j===!1)q=null;else{let Q={};i===null?i=[Q]:i.push(Q),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=G===a;if(u&&Fe)Fe=!1,ve=[ve,1];else{u&&(Fe=!0,ve=1);let q=a;if(a===q)if(j&&typeof j=="object"&&!Array.isArray(j)){let ee;if(j.allowHTTP1===void 0&&(ee="allowHTTP1")){let ne={};i===null?i=[ne]:i.push(ne),a++}else{let ne=a;for(let re in j)re!=="allowHTTP1"&&delete j[re];if(ne===a&&j.allowHTTP1!==void 0){let re=j.allowHTTP1;if(typeof re!="boolean"){let X;if(X===void 0)if(re==="false"||re===0||re===null)X=!1;else if(re==="true"||re===1)X=!0;else{let ie={};i===null?i=[ie]:i.push(ie),a++}X!==void 0&&(re=X,j!==void 0&&(j.allowHTTP1=X))}}}}else{let ee={};i===null?i=[ee]:i.push(ee),a++}var u=q===a;u&&Fe?(Fe=!1,ve=[ve,2]):u&&(Fe=!0,ve=2)}if(Fe)a=je,i!==null&&(je?i.length=je:i=null);else{let q={};i===null?i=[q]:i.push(q),a++}var l=Ne===a;if(l){let q={};i===null?i=[q]:i.push(q),a++}else a=Te,i!==null&&(Te?i.length=Te:i=null);var d=ue===a;if(a=se,i!==null&&(se?i.length=se:i=null),d){let q=a;t.https=!0;var d=q===a;oe=d}if(!oe){let q={instancePath:e+"/https",schemaPath:"#/properties/https/if",keyword:"if",params:{failingKeyword:"then"},message:'must match "then" schema'};return i===null?i=[q]:i.push(q),a++,qr.errors=i,!1}var o=J===a}else var o=!0;if(o){let j=t.ignoreTrailingSlash,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return qr.errors=[{instancePath:e+"/ignoreTrailingSlash",schemaPath:"#/properties/ignoreTrailingSlash/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.ignoreTrailingSlash=oe))}var o=J===a;if(o){let oe=t.ignoreDuplicateSlashes,ue=a;if(typeof oe!="boolean"){let Ne;if(Ne===void 0)if(oe==="false"||oe===0||oe===null)Ne=!1;else if(oe==="true"||oe===1)Ne=!0;else return qr.errors=[{instancePath:e+"/ignoreDuplicateSlashes",schemaPath:"#/properties/ignoreDuplicateSlashes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Ne!==void 0&&(oe=Ne,t!==void 0&&(t.ignoreDuplicateSlashes=Ne))}var o=ue===a;if(o){let Ne=t.disableRequestLogging,je=a;if(typeof Ne!="boolean"){let ve;if(ve===void 0)if(Ne==="false"||Ne===0||Ne===null)ve=!1;else if(Ne==="true"||Ne===1)ve=!0;else return qr.errors=[{instancePath:e+"/disableRequestLogging",schemaPath:"#/properties/disableRequestLogging/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;ve!==void 0&&(Ne=ve,t!==void 0&&(t.disableRequestLogging=ve))}var o=je===a;if(o){let ve=t.jsonShorthand,F=a;if(typeof ve!="boolean"){let K;if(K===void 0)if(ve==="false"||ve===0||ve===null)K=!1;else if(ve==="true"||ve===1)K=!0;else return qr.errors=[{instancePath:e+"/jsonShorthand",schemaPath:"#/properties/jsonShorthand/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;K!==void 0&&(ve=K,t!==void 0&&(t.jsonShorthand=K))}var o=F===a;if(o){let K=t.maxParamLength,q=a;if(!(typeof K=="number"&&!(K%1)&&!isNaN(K)&&isFinite(K))){let ee=typeof K,ne;if(ne===void 0)if(ee==="boolean"||K===null||ee==="string"&&K&&K==+K&&!(K%1))ne=+K;else return qr.errors=[{instancePath:e+"/maxParamLength",schemaPath:"#/properties/maxParamLength/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ne!==void 0&&(K=ne,t!==void 0&&(t.maxParamLength=ne))}var o=q===a;if(o){let ee=t.onProtoPoisoning,ne=a;if(typeof ee!="string"){let X=typeof ee,ie;if(ie===void 0)if(X=="number"||X=="boolean")ie=""+ee;else if(ee===null)ie="";else return qr.errors=[{instancePath:e+"/onProtoPoisoning",schemaPath:"#/properties/onProtoPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;ie!==void 0&&(ee=ie,t!==void 0&&(t.onProtoPoisoning=ie))}var o=ne===a;if(o){let X=t.onConstructorPoisoning,ie=a;if(typeof X!="string"){let me=typeof X,Oe;if(Oe===void 0)if(me=="number"||me=="boolean")Oe=""+X;else if(X===null)Oe="";else return qr.errors=[{instancePath:e+"/onConstructorPoisoning",schemaPath:"#/properties/onConstructorPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Oe!==void 0&&(X=Oe,t!==void 0&&(t.onConstructorPoisoning=Oe))}var o=ie===a;if(o){let me=t.pluginTimeout,Oe=a;if(!(typeof me=="number"&&!(me%1)&&!isNaN(me)&&isFinite(me))){let qe=typeof me,Ye;if(Ye===void 0)if(qe==="boolean"||me===null||qe==="string"&&me&&me==+me&&!(me%1))Ye=+me;else return qr.errors=[{instancePath:e+"/pluginTimeout",schemaPath:"#/properties/pluginTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;Ye!==void 0&&(me=Ye,t!==void 0&&(t.pluginTimeout=Ye))}var o=Oe===a;if(o){let qe=t.requestIdHeader,Ye=a,Je=a,et=!1,st=a;if(qe!==!1){let rt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/0/enum",keyword:"enum",params:{allowedValues:fNe.properties.requestIdHeader.anyOf[0].enum},message:"must be equal to one of the allowed values"};i===null?i=[rt]:i.push(rt),a++}var f=st===a;if(et=et||f,!et){let rt=a;if(typeof qe!="string"){let dt=typeof qe,Be;if(Be===void 0)if(dt=="number"||dt=="boolean")Be=""+qe;else if(qe===null)Be="";else{let Xe={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[Xe]:i.push(Xe),a++}Be!==void 0&&(qe=Be,t!==void 0&&(t.requestIdHeader=Be))}var f=rt===a;et=et||f}if(et)a=Je,i!==null&&(Je?i.length=Je:i=null);else{let rt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[rt]:i.push(rt),a++,qr.errors=i,!1}var o=Ye===a;if(o){let rt=t.requestIdLogLabel,Pt=a;if(typeof rt!="string"){let Be=typeof rt,Xe;if(Xe===void 0)if(Be=="number"||Be=="boolean")Xe=""+rt;else if(rt===null)Xe="";else return qr.errors=[{instancePath:e+"/requestIdLogLabel",schemaPath:"#/properties/requestIdLogLabel/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Xe!==void 0&&(rt=Xe,t!==void 0&&(t.requestIdLogLabel=Xe))}var o=Pt===a;if(o){let Be=t.http2SessionTimeout,Xe=a;if(!(typeof Be=="number"&&!(Be%1)&&!isNaN(Be)&&isFinite(Be))){let nt=typeof Be,bt;if(bt===void 0)if(nt==="boolean"||Be===null||nt==="string"&&Be&&Be==+Be&&!(Be%1))bt=+Be;else return qr.errors=[{instancePath:e+"/http2SessionTimeout",schemaPath:"#/properties/http2SessionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;bt!==void 0&&(Be=bt,t!==void 0&&(t.http2SessionTimeout=bt))}var o=Xe===a;if(o){let nt=t.exposeHeadRoutes,bt=a;if(typeof nt!="boolean"){let St;if(St===void 0)if(nt==="false"||nt===0||nt===null)St=!1;else if(nt==="true"||nt===1)St=!0;else return qr.errors=[{instancePath:e+"/exposeHeadRoutes",schemaPath:"#/properties/exposeHeadRoutes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;St!==void 0&&(nt=St,t!==void 0&&(t.exposeHeadRoutes=St))}var o=bt===a;if(o){let St=t.useSemicolonDelimiter,Rr=a;if(typeof St!="boolean"){let Lr;if(Lr===void 0)if(St==="false"||St===0||St===null)Lr=!1;else if(St==="true"||St===1)Lr=!0;else return qr.errors=[{instancePath:e+"/useSemicolonDelimiter",schemaPath:"#/properties/useSemicolonDelimiter/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Lr!==void 0&&(St=Lr,t!==void 0&&(t.useSemicolonDelimiter=Lr))}var o=Rr===a;if(o){if(t.versioning!==void 0){let Lr=t.versioning,Hs=a;if(a===Hs)if(Lr&&typeof Lr=="object"&&!Array.isArray(Lr)){let Es;if(Lr.storage===void 0&&(Es="storage")||Lr.deriveVersion===void 0&&(Es="deriveVersion"))return qr.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/required",keyword:"required",params:{missingProperty:Es},message:"must have required property '"+Es+"'"}],!1}else return qr.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=Hs===a}else var o=!0;if(o)if(t.constraints!==void 0){let Lr=t.constraints,Hs=a;if(a===Hs)if(Lr&&typeof Lr=="object"&&!Array.isArray(Lr))for(let Es in Lr){let Vs=Lr[Es],zu=a;if(a===zu)if(Vs&&typeof Vs=="object"&&!Array.isArray(Vs)){let To;if(Vs.name===void 0&&(To="name")||Vs.storage===void 0&&(To="storage")||Vs.validate===void 0&&(To="validate")||Vs.deriveConstraint===void 0&&(To="deriveConstraint"))return qr.errors=[{instancePath:e+"/constraints/"+Es.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/required",keyword:"required",params:{missingProperty:To},message:"must have required property '"+To+"'"}],!1;if(Vs.name!==void 0){let Kc=Vs.name;if(typeof Kc!="string"){let La=typeof Kc,xn;if(xn===void 0)if(La=="number"||La=="boolean")xn=""+Kc;else if(Kc===null)xn="";else return qr.errors=[{instancePath:e+"/constraints/"+Es.replace(/~/g,"~0").replace(/\//g,"~1")+"/name",schemaPath:"#/properties/constraints/additionalProperties/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;xn!==void 0&&(Kc=xn,Vs!==void 0&&(Vs.name=xn))}}}else return qr.errors=[{instancePath:e+"/constraints/"+Es.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var m=zu===a;if(!m)break}else return qr.errors=[{instancePath:e+"/constraints",schemaPath:"#/properties/constraints/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=Hs===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}else return qr.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return qr.errors=i,a===0}I3.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 mNe=_((Oqr,T3)=>{"use strict";var C3=pNe(),ZHt=lO()({circles:!0,proto:!1}),{FST_ERR_INIT_OPTS_INVALID:eGt}=Bi();function tGt(t){let e=ZHt(t);if(!C3(e)){let r=new eGt(JSON.stringify(C3.errors.map(n=>n.message)));throw r.errors=C3.errors,r}return aH(e)}function aH(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"?aH(n):n)}return Object.freeze(t)}T3.exports=tGt;T3.exports.defaultInitOptions=C3.defaultInitOptions;T3.exports.utils={deepFreezeObject:aH}});var vNe=_((kqr,ENe)=>{"use strict";var{kAvvioBoot:rGt,kChildren:hNe,kRoutePrefix:gNe,kLogLevel:yNe,kLogSerializers:oH,kHooks:cH,kSchemaController:Fx,kContentTypeParser:ANe,kReply:xNe,kRequest:bNe,kFourOhFour:nGt,kPluginNameChain:_Ne}=Ks(),sGt=nk(),iGt=bk(),aGt=kQ(),oGt=c7(),{buildHooks:cGt}=kp(),kS=WQ();ENe.exports=function(e,r,n){let s=kS.registerPlugin.call(e,r),i=kS.getPluginName(r)||kS.getFuncPreview(r);if(s)return e[_Ne].push(i),e;let a=Object.create(e);e[hNe].push(a),a.ready=e[rGt].bind(a),a[hNe]=[],a[xNe]=sGt.buildReply(a[xNe]),a[bNe]=iGt.buildRequest(a[bNe]),a[ANe]=oGt.helpers.buildContentTypeParser(a[ANe]),a[cH]=cGt(a[cH]),a[gNe]=uGt(a[gNe],n.prefix),a[yNe]=n.logLevel||a[yNe],a[Fx]=aGt.buildSchemaController(e[Fx]),a.getSchema=a[Fx].getSchema.bind(a[Fx]),a.getSchemas=a[Fx].getSchemas.bind(a[Fx]),a[kS.kRegisteredPlugins]=Object.create(a[kS.kRegisteredPlugins]),a[_Ne]=[i],(a[oH]||n.logSerializers)&&(a[oH]=Object.assign(Object.create(a[oH]),n.logSerializers)),n.prefix&&a[nGt].arrange404(a);for(let o of a[cH].onRegister)o.call(this,a,n);return a};function uGt(t,e){return e?(t.endsWith("/")&&e[0]==="/"?e=e.slice(1):e[0]!=="/"&&(e="/"+e),t+e):t}});var INe=_((Pqr,SNe)=>{"use strict";SNe.exports=function(){return{[Symbol.iterator]:function*(){},add(){},delete(){},has(){return!0}}}});var wNe=_(uH=>{"use strict";uH.parse=gGt;uH.serialize=yGt;var lGt=Object.prototype.toString,dGt=Object.prototype.hasOwnProperty,fGt=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,pGt=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,mGt=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,hGt=/^[\u0020-\u003A\u003D-\u007E]*$/;function gGt(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||AGt,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=CNe(t,i,a),u=TNe(t,a,c),l=t.slice(c,u);if(!dGt.call(r,l)){var d=CNe(t,a+1,o),f=TNe(t,o,d);t.charCodeAt(d)===34&&t.charCodeAt(f-1)===34&&(d++,f--);var m=t.slice(d,f);r[l]=bGt(m,s)}i=o+1}while(i<n);return r}function CNe(t,e,r){do{var n=t.charCodeAt(e);if(n!==32&&n!==9)return e}while(++e<r);return r}function TNe(t,e,r){for(;e>r;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function yGt(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!fGt.test(t))throw new TypeError("argument name is invalid");var s=n(e);if(!pGt.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(!mGt.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!hGt.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){var o=r.expires;if(!xGt(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 AGt(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function xGt(t){return lGt.call(t)==="[object Date]"}function bGt(t,e){try{return e(t)}catch{return t}}});var ONe=_((Bqr,NNe)=>{"use strict";var{URL:RNe}=require("node:url"),lH="http://localhost";NNe.exports=function(e,r){(typeof e=="string"||Object.prototype.toString.call(e)==="[object String]")&&e.startsWith("//")&&(e=lH+e);let n=typeof e=="object"?Object.assign(new RNe(lH),e):new RNe(e,lH);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 kNe=_((Lqr,dH)=>{"use strict";var{randomUUID:_Gt}=require("node:crypto"),{Readable:EGt}=require("node:stream"),qx;function vGt(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 SGt(t){qx=qx??new TextEncoder;let e=`----formdata-${_Gt()}`,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 qx.encode(`${r}; name="${n(s(c))}"\r
\r
`),yield qx.encode(`${s(u)}\r
`);else{let l=`${r}; name="${n(s(c))}"`;u.name&&(l+=`; filename="${n(u.name)}"`),l+=`\r
Content-Type: ${u.type||"application/octet-stream"}\r
\r
`,yield qx.encode(l),u.stream?yield*u.stream():yield u,yield i}yield qx.encode(`--${e}--`)}return{stream:EGt.from(a()),contentType:`multipart/form-data; boundary=${e}`}}dH.exports.isFormDataLike=vGt;dH.exports.formDataToStream=SGt});var BNe=_((Mqr,w3)=>{"use strict";var{Readable:PNe,addAbortSignal:IGt}=require("node:stream"),pH=require("node:util"),CGt=wNe(),TGt=require("node:assert"),{createDeprecation:wGt}=i8(),RGt=ONe(),{isFormDataLike:NGt,formDataToStream:OGt}=kNe(),{EventEmitter:kGt}=require("node:events"),PGt=wGt({name:"FastifyDeprecationLightMyRequest",code:"FST_LIGHTMYREQUEST_DEP01",message:'You are accessing "request.connection", use "request.socket" instead.'});function DGt(t){return t.port?t.host:t.hostname+(t.protocol==="https:"?":443":":80")}var fH=class extends kGt{constructor(e){super(),this.remoteAddress=e}};function DNe(t){return new e(this);function e(r){El.call(r,{...t,Request:void 0}),Object.assign(this,r);for(let n of Object.keys(El.prototype))this.constructor.prototype[n]=El.prototype[n];return pH.inherits(this.constructor,t.Request),this}}function El(t){PNe.call(this,{autoDestroy:!1});let e=RGt(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];TGt(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||DGt(e),t.cookies){let{cookies:a}=t,o=Object.keys(a).map(c=>CGt.serialize(c,a[c]));this.headers.cookie&&o.unshift(this.headers.cookie),this.headers.cookie=o.join("; ")}this.socket=new fH(t.remoteAddress||"127.0.0.1"),Object.defineProperty(this,"connection",{get(){return PGt(),this.socket},configurable:!0});let n=t.payload||t.body||null,s=n&&typeof n.resume=="function";if(NGt(n)){let a=OGt(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&&IGt(i,this),this}pH.inherits(El,PNe);pH.inherits(DNe,El);El.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()};El.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)})};El.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")))};w3.exports=El;w3.exports.Request=El;w3.exports.CustomRequest=DNe});var MNe=_((Wqr,PS)=>{"use strict";var R3={decodeValues:!0,map:!1,silent:!1};function mH(t){return typeof t!="string"||t in{}}function hH(){return Object.create(null)}function gH(t){return typeof t=="string"&&!!t.trim()}function yH(t,e){var r=t.split(";").filter(gH),n=r.shift(),s=BGt(n),i=s.name,a=s.value;if(e=e?Object.assign({},R3,e):R3,mH(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=hH();return o.name=i,o.value=a,r.forEach(function(c){var u=c.split("="),l=u.shift().trimLeft().toLowerCase();if(!mH(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 BGt(t){var e="",r="",n=t.split("=");return n.length>1?(e=n.shift(),r=n.join("=")):r=t,{name:e,value:r}}function LNe(t,e){if(e=e?Object.assign({},R3,e):R3,!t)return e.map?hH():[];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=hH();return t.filter(gH).reduce(function(s,i){var a=yH(i,e);return a&&!mH(a.name)&&(s[a.name]=a),s},n)}else return t.filter(gH).map(function(s){return yH(s,e)}).filter(Boolean)}function LGt(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&&/\s/.test(t.charAt(r));)r+=1;return r<t.length}function u(){return s=t.charAt(r),s!=="="&&s!==";"&&s!==","}for(;r<t.length;){for(n=r,o=!1;c();)if(s=t.charAt(r),s===","){for(i=r,r+=1,c(),a=r;r<t.length&&u();)r+=1;r<t.length&&t.charAt(r)==="="?(o=!0,r=a,e.push(t.substring(n,i)),n=r):r=i+1}else r+=1;(!o||r>=t.length)&&e.push(t.substring(n,t.length))}return e}PS.exports=LNe;PS.exports.parse=LNe;PS.exports.parseString=yH;PS.exports.splitCookiesString=LGt});var UNe=_(($qr,$Ne)=>{"use strict";var DS=require("node:http"),{Writable:MGt,Readable:WGt}=require("node:stream"),$Gt=require("node:util"),UGt=MNe();function m0(t,e,r){DS.ServerResponse.call(this,t),this._lightMyRequest={headers:null,trailers:{},payloadChunks:[]},this.setHeader("foo","bar"),this.removeHeader("foo"),this.assignSocket(qGt()),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=FGt(this);a.raw.req=t,s(a)}),this.connection.once("error",i),this.once("error",i),this.once("close",i)}$Gt.inherits(m0,DS.ServerResponse);m0.prototype.setTimeout=function(t,e){return this.timeoutHandle=setTimeout(()=>{this.emit("timeout")},t),this.on("timeout",e),this};m0.prototype.writeHead=function(){let t=DS.ServerResponse.prototype.writeHead.apply(this,arguments);return WNe(this),t};m0.prototype.write=function(t,e,r){return this.timeoutHandle&&clearTimeout(this.timeoutHandle),DS.ServerResponse.prototype.write.call(this,t,e,r),this._lightMyRequest.payloadChunks.push(Buffer.from(t,e)),!0};m0.prototype.end=function(t,e,r){t&&this.write(t,e),DS.ServerResponse.prototype.end.call(this,r),this.emit("finish"),this.destroy()};m0.prototype.destroy=function(t){this.destroyed||(this.destroyed=!0,t&&process.nextTick(()=>this.emit("error",t)),process.nextTick(()=>this.emit("close")))};m0.prototype.addTrailers=function(t){for(let e in t)this._lightMyRequest.trailers[e.toLowerCase().trim()]=t[e].toString().trim()};function FGt(t){t._lightMyRequest.headers===null&&WNe(t),jGt(t);let e={raw:{res:t},headers:t._lightMyRequest.headers,statusCode:t.statusCode,statusMessage:t.statusMessage,trailers:{},get cookies(){return UGt.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 WGt.from(t._lightMyRequest.payloadChunks)},e}function qGt(){return new MGt({write(t,e,r){setImmediate(r)}})}function jGt(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 WNe(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])})}$Ne.exports=m0});var FNe=_((Uqr,AH)=>{"use strict";AH.exports=vs;AH.exports.default=vs;var QGt={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 vs(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 S={instancePath:e,schemaPath:"#/oneOf/0/required",keyword:"required",params:{missingProperty:x},message:"must have required property '"+x+"'"};i===null?i=[S]:i.push(S),a++}}var f=l===a;f&&(c=!0,u=0);let d=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let x;if(t.path===void 0&&(x="path")){let S={instancePath:e,schemaPath:"#/oneOf/1/required",keyword:"required",params:{missingProperty:x},message:"must have required property '"+x+"'"};i===null?i=[S]:i.push(S),a++}}var f=d===a;if(f&&c?(c=!1,u=[u,1]):f&&(c=!0,u=1),c)a=o,i!==null&&(o?i.length=o:i=null);else{let 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++,vs.errors=i,!1}if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){if(t.url!==void 0){let x=t.url,S=a,T=a,I=!1,R=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 P={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[P]:i.push(P),a++}M!==void 0&&(x=M,t!==void 0&&(t.url=M))}var p=N===a;p&&(I=!0,R=0);let k=a;if(a===k)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,P=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 m=P===a}else var m=!0;if(m){if(x.hostname!==void 0){let M=x.hostname,P=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let U={instancePath:e+"/url/hostname",schemaPath:"#/properties/url/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}W!==void 0&&(M=W,x!==void 0&&(x.hostname=W))}var m=P===a}else var m=!0;if(m)if(x.pathname!==void 0){let M=x.pathname,P=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let U={instancePath:e+"/url/pathname",schemaPath:"#/properties/url/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}W!==void 0&&(M=W,x!==void 0&&(x.pathname=W))}var m=P===a}else var m=!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 p=k===a;if(p&&I?(I=!1,R=[R,1]):p&&(I=!0,R=1),I)a=T,i!==null&&(T?i.length=T:i=null);else{let B={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf",keyword:"oneOf",params:{passingSchemas:R},message:"must match exactly one schema in oneOf"};return i===null?i=[B]:i.push(B),a++,vs.errors=i,!1}var h=S===a}else var h=!0;if(h){if(t.path!==void 0){let x=t.path,S=a,T=a,I=!1,R=null,N=a;if(typeof x!="string"){let M=typeof x,P;if(P===void 0)if(M=="number"||M=="boolean")P=""+x;else if(x===null)P="";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++}P!==void 0&&(x=P,t!==void 0&&(t.path=P))}var g=N===a;g&&(I=!0,R=0);let k=a;if(a===k)if(x&&typeof x=="object"&&!Array.isArray(x)){let M;if(x.pathname===void 0&&(M="pathname")){let P={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/required",keyword:"required",params:{missingProperty:M},message:"must have required property '"+M+"'"};i===null?i=[P]:i.push(P),a++}else{if(x.protocol!==void 0){let P=x.protocol,L=a;if(typeof P!="string"){let Z=typeof P,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+P;else if(P===null)W="";else{let U={instancePath:e+"/path/protocol",schemaPath:"#/properties/path/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[U]:i.push(U),a++}W!==void 0&&(P=W,x!==void 0&&(x.protocol=W))}var y=L===a}else var y=!0;if(y){if(x.hostname!==void 0){let P=x.hostname,L=a;if(typeof P!="string"){let W=typeof P,U;if(U===void 0)if(W=="number"||W=="boolean")U=""+P;else if(P===null)U="";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++}U!==void 0&&(P=U,x!==void 0&&(x.hostname=U))}var y=L===a}else var y=!0;if(y)if(x.pathname!==void 0){let P=x.pathname,L=a;if(typeof P!="string"){let W=typeof P,U;if(U===void 0)if(W=="number"||W=="boolean")U=""+P;else if(P===null)U="";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++}U!==void 0&&(P=U,x!==void 0&&(x.pathname=U))}var y=L===a}else var y=!0}}}else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[M]:i.push(M),a++}var g=k===a;if(g&&I?(I=!1,R=[R,1]):g&&(I=!0,R=1),I)a=T,i!==null&&(T?i.length=T:i=null);else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf",keyword:"oneOf",params:{passingSchemas:R},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,vs.errors=i,!1}var h=S===a}else var h=!0;if(h){if(t.cookies!==void 0){let x=t.cookies,S=a;if(a===S&&!(x&&typeof x=="object"&&!Array.isArray(x)))return vs.errors=[{instancePath:e+"/cookies",schemaPath:"#/properties/cookies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=S===a}else var h=!0;if(h){if(t.headers!==void 0){let x=t.headers,S=a;if(a===S&&!(x&&typeof x=="object"&&!Array.isArray(x)))return vs.errors=[{instancePath:e+"/headers",schemaPath:"#/properties/headers/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=S===a}else var h=!0;if(h){if(t.query!==void 0){let x=t.query,S=a,T=a,I=!1,R=a;if(a===R&&!(x&&typeof x=="object"&&!Array.isArray(x))){let k={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/0/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[k]:i.push(k),a++}var A=R===a;if(I=I||A,!I){let k=a;if(typeof x!="string"){let M=typeof x,P;if(P===void 0)if(M=="number"||M=="boolean")P=""+x;else if(x===null)P="";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++}P!==void 0&&(x=P,t!==void 0&&(t.query=P))}var A=k===a;I=I||A}if(I)a=T,i!==null&&(T?i.length=T:i=null);else{let k={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[k]:i.push(k),a++,vs.errors=i,!1}var h=S===a}else var h=!0;if(h){if(t.simulate!==void 0){let x=t.simulate,S=a;if(a===S)if(x&&typeof x=="object"&&!Array.isArray(x)){if(x.end!==void 0){let I=x.end,R=a;if(typeof I!="boolean"){let N;if(N===void 0)if(I==="false"||I===0||I===null)N=!1;else if(I==="true"||I===1)N=!0;else return vs.errors=[{instancePath:e+"/simulate/end",schemaPath:"#/properties/simulate/properties/end/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;N!==void 0&&(I=N,x!==void 0&&(x.end=N))}var b=R===a}else var b=!0;if(b){if(x.split!==void 0){let I=x.split,R=a;if(typeof I!="boolean"){let k;if(k===void 0)if(I==="false"||I===0||I===null)k=!1;else if(I==="true"||I===1)k=!0;else return vs.errors=[{instancePath:e+"/simulate/split",schemaPath:"#/properties/simulate/properties/split/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;k!==void 0&&(I=k,x!==void 0&&(x.split=k))}var b=R===a}else var b=!0;if(b){if(x.error!==void 0){let I=x.error,R=a;if(typeof I!="boolean"){let k;if(k===void 0)if(I==="false"||I===0||I===null)k=!1;else if(I==="true"||I===1)k=!0;else return vs.errors=[{instancePath:e+"/simulate/error",schemaPath:"#/properties/simulate/properties/error/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;k!==void 0&&(I=k,x!==void 0&&(x.error=k))}var b=R===a}else var b=!0;if(b)if(x.close!==void 0){let I=x.close,R=a;if(typeof I!="boolean"){let k;if(k===void 0)if(I==="false"||I===0||I===null)k=!1;else if(I==="true"||I===1)k=!0;else return vs.errors=[{instancePath:e+"/simulate/close",schemaPath:"#/properties/simulate/properties/close/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;k!==void 0&&(I=k,x!==void 0&&(x.close=k))}var b=R===a}else var b=!0}}}else return vs.errors=[{instancePath:e+"/simulate",schemaPath:"#/properties/simulate/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=S===a}else var h=!0;if(h){if(t.authority!==void 0){let x=t.authority,S=a;if(typeof x!="string"){let I=typeof x,R;if(R===void 0)if(I=="number"||I=="boolean")R=""+x;else if(x===null)R="";else return vs.errors=[{instancePath:e+"/authority",schemaPath:"#/properties/authority/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;R!==void 0&&(x=R,t!==void 0&&(t.authority=R))}var h=S===a}else var h=!0;if(h){if(t.remoteAddress!==void 0){let x=t.remoteAddress,S=a;if(typeof x!="string"){let I=typeof x,R;if(R===void 0)if(I=="number"||I=="boolean")R=""+x;else if(x===null)R="";else return vs.errors=[{instancePath:e+"/remoteAddress",schemaPath:"#/properties/remoteAddress/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;R!==void 0&&(x=R,t!==void 0&&(t.remoteAddress=R))}var h=S===a}else var h=!0;if(h){if(t.method!==void 0){let x=t.method,S=a;if(typeof x!="string"){let I=typeof x,R;if(R===void 0)if(I=="number"||I=="boolean")R=""+x;else if(x===null)R="";else return vs.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;R!==void 0&&(x=R,t!==void 0&&(t.method=R))}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 vs.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/enum",keyword:"enum",params:{allowedValues:QGt.properties.method.enum},message:"must be equal to one of the allowed values"}],!1;var h=S===a}else var h=!0;if(h)if(t.validate!==void 0){let x=t.validate,S=a;if(typeof x!="boolean"){let I;if(I===void 0)if(x==="false"||x===0||x===null)I=!1;else if(x==="true"||x===1)I=!0;else return vs.errors=[{instancePath:e+"/validate",schemaPath:"#/properties/validate/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;I!==void 0&&(x=I,t!==void 0&&(t.validate=I))}var h=S===a}else var h=!0}}}}}}}}}else return vs.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return vs.errors=i,a===0}});var QNe=_((Fqr,LS)=>{"use strict";var HGt=require("node:assert"),xH=BNe(),N3=UNe(),k3="The dispatch function has already been invoked",qNe=FNe();function bH(t,e,r){return r===void 0?new BS(t,e):O3(t,e,r)}function jNe(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 O3(t,e,r){if(e=typeof e=="string"?{url:e}:e,e.validate!==!1&&(HGt(typeof t=="function","dispatchFunc should be a function"),!qNe(e)))throw new Error(qNe.errors.map(a=>a.message));let n=e.server||{},s=e.Request?xH.CustomRequest:xH;if(t.request&&t.request.app===t&&(Object.setPrototypeOf(Object.getPrototypeOf(t.request),s.prototype),Object.setPrototypeOf(Object.getPrototypeOf(t.response),N3.prototype)),typeof r=="function"){let i=new s(e),a=new N3(i,r);return jNe(t,n,i,a)}else return new Promise((i,a)=>{let o=new s(e),c=new N3(o,i,a);jNe(t,n,o,c)})}function BS(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 GGt=["delete","get","head","options","patch","post","put","trace"];GGt.forEach(t=>{BS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(k3);return this.option.url=e,this.option.method=t.toUpperCase(),this}});var VGt=["body","cookies","headers","payload","query"];VGt.forEach(t=>{BS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(k3);return this.option[t]=e,this}});BS.prototype.end=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(k3);if(this._hasInvoked=!0,typeof t=="function")O3(this.dispatch,this.option,t);else return this._promise=O3(this.dispatch,this.option),this._promise};Object.getOwnPropertyNames(Promise.prototype).forEach(t=>{t!=="constructor"&&(BS.prototype[t]=function(...e){if(!this._promise){if(this._hasInvoked===!0)throw new Error(k3);this._hasInvoked=!0,this._promise=O3(this.dispatch,this.option)}return this._promise[t](...e)})});function KGt(t){return t instanceof xH||t instanceof N3||t&&t.constructor&&t.constructor.name==="_CustomLMRRequest"}LS.exports=bH;LS.exports.default=bH;LS.exports.inject=bH;LS.exports.isInjection=KGt});var iOe=_((qqr,L3)=>{"use strict";var zGt="4.26.0",YGt=_me(),_H=require("node:http"),MS,{kAvvioBoot:WS,kChildren:EH,kServerBindings:HNe,kBodyLimit:JGt,kRoutePrefix:GNe,kLogLevel:XGt,kLogSerializers:ZGt,kHooks:vH,kSchemaController:h0,kRequestAcceptVersion:eVt,kReplySerializerDefault:VNe,kContentTypeParser:tVt,kReply:rVt,kRequest:nVt,kFourOhFour:sVt,kState:ys,kOptions:SH,kPluginNameChain:$S,kSchemaErrorFormatter:IH,kErrorHandler:P3,kKeepAliveConnections:CH,kChildLoggerFactory:TH,kGenReqId:wH}=Ks(),{createServer:iVt,compileValidateHTTPVersion:aVt}=Qme(),US=nk(),D3=bk(),oVt=_k(),{supportedMethods:cVt}=KF(),jx=ZF(),Lh=c7(),KNe=kQ(),{Hooks:uVt,hookRunnerApplication:zNe,supportedHooks:RH}=kp(),{createLogger:lVt,createChildLogger:YNe,defaultChildLoggerFactory:dVt}=xE(),JNe=WQ(),{getGenReqId:XNe,reqIdGenFactory:ZNe}=a3(),{buildRouting:fVt,validateBodyLimitOption:pVt}=sNe(),mVt=dNe(),sOe=mNe(),hVt=vNe(),{FSTDEP009:gVt}=Od(),yVt=INe(),{appendStackTrace:AVt,AVVIO_ERRORS_MAP:eOe,...Mh}=Bi(),{defaultInitOptions:Za}=sOe,{FST_ERR_ASYNC_CONSTRAINT:xVt,FST_ERR_BAD_URL:bVt,FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:_Vt,FST_ERR_OPTIONS_NOT_OBJ:EVt,FST_ERR_QSP_NOT_FN:vVt,FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:SVt,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:IVt,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:CVt,FST_ERR_VERSION_CONSTRAINT_NOT_STR:TVt,FST_ERR_INSTANCE_ALREADY_LISTENING:wVt,FST_ERR_REOPENED_CLOSE_SERVER:RVt,FST_ERR_ROUTE_REWRITE_NOT_STR:NVt,FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:tOe}=Mh,{buildErrorHandler:rOe}=XE();function OVt(t){let e={};return["errorHandler","logLevel","logSerializers"].concat(RH).forEach(n=>{e[n]=t.store[n]}),Object.assign({},e)}function B3(t){if(t=t||{},typeof t!="object")throw new EVt;if(t.querystringParser&&typeof t.querystringParser!="function")throw new vVt(typeof t.querystringParser);if(t.schemaController&&t.schemaController.bucket&&typeof t.schemaController.bucket!="function")throw new SVt(typeof t.schemaController.bucket);pVt(t.bodyLimit);let e=t.requestIdHeader===!1?!1:(t.requestIdHeader||Za.requestIdHeader).toLowerCase(),r=ZNe(e,t.genReqId),n=t.requestIdLogLabel||"reqId",s=t.bodyLimit||Za.bodyLimit,i=t.disableRequestLogging||!1,a=Object.assign({customOptions:{},plugins:[]},t.ajv),o=t.frameworkErrors;if(!a.customOptions||Object.prototype.toString.call(a.customOptions)!=="[object Object]")throw new IVt(typeof a.customOptions);if(!a.plugins||!Array.isArray(a.plugins))throw new CVt(typeof a.plugins);let{logger:c,hasLogger:u}=lVt(t);t.connectionTimeout=t.connectionTimeout||Za.connectionTimeout,t.keepAliveTimeout=t.keepAliveTimeout||Za.keepAliveTimeout,t.maxRequestsPerSocket=t.maxRequestsPerSocket||Za.maxRequestsPerSocket,t.requestTimeout=t.requestTimeout||Za.requestTimeout,t.logger=c,t.requestIdHeader=e,t.requestIdLogLabel=n,t.disableRequestLogging=i,t.ajv=a,t.clientErrorHandler=t.clientErrorHandler||U;let l=sOe(t);t.exposeHeadRoutes=l.exposeHeadRoutes;let d=t.constraints;t.versioning&&(gVt(),d={...d,version:{name:"version",mustMatchWhenDerived:!0,storage:t.versioning.storage,deriveConstraint:t.versioning.deriveVersion,validate(q){if(typeof q!="string")throw new TVt}}});let f=fVt({config:{defaultRoute:V,onBadUrl:j,constraints:d,ignoreTrailingSlash:t.ignoreTrailingSlash||Za.ignoreTrailingSlash,ignoreDuplicateSlashes:t.ignoreDuplicateSlashes||Za.ignoreDuplicateSlashes,maxParamLength:t.maxParamLength||Za.maxParamLength,caseSensitive:t.caseSensitive,allowUnsafeRegex:t.allowUnsafeRegex||Za.allowUnsafeRegex,buildPrettyMeta:OVt,querystringParser:t.querystringParser,useSemicolonDelimiter:t.useSemicolonDelimiter??Za.useSemicolonDelimiter}}),m=mVt(t),p=G(f,t);t.http2SessionTimeout=l.http2SessionTimeout;let{server:h,listen:y}=iVt(t,p),g=typeof h.closeAllConnections=="function",A=typeof h.closeIdleConnections=="function",b=t.forceCloseConnections;if(b==="idle"&&!A)throw new _Vt;typeof b!="boolean"&&(b=A?"idle":!1);let x=!g&&b===!0?new Set:yVt(),S=US.setupResponseListeners,T=KNe.buildSchemaController(null,t.schemaController),I={[ys]:{listening:!1,closing:!1,started:!1,ready:!1,booting:!1,readyPromise:null},[CH]:x,[SH]:t,[EH]:[],[HNe]:[],[JGt]:s,[GNe]:"",[XGt]:"",[ZGt]:null,[vH]:new uVt,[h0]:T,[IH]:null,[P3]:rOe(),[TH]:dVt,[VNe]:null,[tVt]:new Lh(s,t.onProtoPoisoning||Za.onProtoPoisoning,t.onConstructorPoisoning||Za.onConstructorPoisoning),[rVt]:US.buildReply(US),[nVt]:D3.buildRequest(D3,t.trustProxy),[sVt]:m,[JNe.kRegisteredPlugins]:[],[$S]:["fastify"],[WS]:null,[wH]:r,routing:p,getDefaultRoute:f.getDefaultRoute.bind(f),setDefaultRoute:f.setDefaultRoute.bind(f),delete:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"DELETE",url:Q,options:ee,handler:ne})},get:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"GET",url:Q,options:ee,handler:ne})},head:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"HEAD",url:Q,options:ee,handler:ne})},patch:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"PATCH",url:Q,options:ee,handler:ne})},post:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"POST",url:Q,options:ee,handler:ne})},put:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"PUT",url:Q,options:ee,handler:ne})},options:function(Q,ee,ne){return f.prepareRoute.call(this,{method:"OPTIONS",url:Q,options:ee,handler:ne})},all:function(Q,ee,ne){return f.prepareRoute.call(this,{method:cVt,url:Q,options:ee,handler:ne})},route:function(Q){return f.route.call(this,{options:Q})},hasRoute:function(Q){return f.hasRoute.call(this,{options:Q})},findRoute:function(Q){return f.findRoute(Q)},log:c,withTypeProvider:L,addHook:Z,addSchema:W,getSchema:T.getSchema.bind(T),getSchemas:T.getSchemas.bind(T),setValidatorCompiler:oe,setSerializerCompiler:Te,setSchemaController:Ne,setReplySerializer:je,setSchemaErrorFormatter:ue,setGenReqId:K,addContentTypeParser:Lh.helpers.addContentTypeParser,hasContentTypeParser:Lh.helpers.hasContentTypeParser,getDefaultJsonParser:Lh.defaultParsers.getDefaultJsonParser,defaultTextParser:Lh.defaultParsers.defaultTextParser,removeContentTypeParser:Lh.helpers.removeContentTypeParser,removeAllContentTypeParsers:Lh.helpers.removeAllContentTypeParsers,register:null,after:null,ready:null,onClose:null,close:null,printPlugins:null,hasPlugin:function(q){return this[JNe.kRegisteredPlugins].includes(q)||this[$S].includes(q)},listen:y,server:h,addresses:function(){let q=this[HNe].map(Q=>Q.address());return q.push(this.server.address()),q.filter(Q=>Q)},decorate:jx.add,hasDecorator:jx.exist,decorateReply:jx.decorateReply,decorateRequest:jx.decorateRequest,hasRequestDecorator:jx.existRequest,hasReplyDecorator:jx.existReply,inject:M,printRoutes:F,setNotFoundHandler:se,setErrorHandler:Fe,setChildLoggerFactory:ve,initialConfig:l,addConstraintStrategy:f.addConstraintStrategy.bind(f),hasConstraintStrategy:f.hasConstraintStrategy.bind(f)};Object.defineProperties(I,{listeningOrigin:{get(){let q=this.addresses().slice(-1).pop();if(typeof q=="string")return q;let Q=q.family==="IPv6"?`[${q.address}]`:q.address;return`${this[SH].https?"https":"http"}://${Q}:${q.port}`}},pluginName:{configurable:!0,get(){return this[$S].length>1?this[$S].join(" -> "):this[$S][0]}},prefix:{configurable:!0,get(){return this[GNe]}},validatorCompiler:{configurable:!0,get(){return this[h0].getValidatorCompiler()}},serializerCompiler:{configurable:!0,get(){return this[h0].getSerializerCompiler()}},childLoggerFactory:{configurable:!0,get(){return this[TH]}},version:{configurable:!0,get(){return zGt}},errorHandler:{configurable:!0,get(){return this[P3].func}},genReqId:{configurable:!0,get(){return this[wH]}}}),t.schemaErrorFormatter&&(nOe(t.schemaErrorFormatter),I[IH]=t.schemaErrorFormatter.bind(I));let R=Number(t.pluginTimeout),N=YGt(I,{autostart:!1,timeout:isNaN(R)===!1?R:Za.pluginTimeout,expose:{use:"register"}});N.override=hVt,N.on("start",()=>I[ys].started=!0),I[WS]=I.ready,I.ready=P,I.printPlugins=N.prettyPrint.bind(N),N.once("preReady",()=>{I.onClose((q,Q)=>{I[ys].closing=!0,f.closeRoutes(),zNe("preClose",I[WS],I,function(){if(I[ys].listening){if(b==="idle")q.server.closeIdleConnections();else if(g&&b)q.server.closeAllConnections();else if(b===!0)for(let ee of I[CH])ee.destroy(),I[CH].delete(ee)}!t.serverFactory||I[ys].listening?q.server.close(function(ee){ee&&ee.code!=="ERR_SERVER_NOT_RUNNING"?Q(null):Q()}):process.nextTick(Q,null)})})});let k=new oVt({server:I,config:{}});I.setNotFoundHandler(),m.arrange404(I),f.setup(t,{avvio:N,fourOhFour:m,logger:c,hasLogger:u,setupResponseListeners:S,throwIfAlreadyStarted:B,validateHTTPVersion:aVt(t),keepAliveConnections:x}),h.on("clientError",t.clientErrorHandler.bind(I));try{let Q=require("node:diagnostics_channel").channel("fastify.initialization");Q.hasSubscribers&&Q.publish({fastify:I})}catch{}return"asyncDispose"in Symbol&&(I[Symbol.asyncDispose]=function(){return I.close()}),I;function B(q){if(I[ys].started)throw new wVt(q)}function M(q,Q){if(MS===void 0&&(MS=QNe()),I[ys].started){if(I[ys].closing){let ee=new RVt;if(Q){Q(ee);return}else return Promise.reject(ee)}return MS(p,q,Q)}if(Q)this.ready(ee=>{ee?Q(ee,null):MS(p,q,Q)});else return MS((ee,ne)=>{this.ready(function(re){if(re){ne.emit("error",re);return}p(ee,ne)})},q)}function P(q){if(this[ys].readyPromise!==null){if(q!=null){this[ys].readyPromise.then(()=>q(null,I),q);return}return this[ys].readyPromise}let Q,ee;if(process.nextTick(ne),this[ys].readyPromise=new Promise(function(X,ie){Q=X,ee=ie}),q)this[ys].readyPromise.then(()=>q(null,I),q);else return this[ys].readyPromise;function ne(){I[WS]((X,ie)=>{X||I[ys].started||I[ys].ready||I[ys].booting?re(X):(I[ys].booting=!0,zNe("onReady",I[WS],I,re)),ie()})}function re(X){if(X=X!=null&&eOe[X.code]!=null?AVt(X,new eOe[X.code](X.message)):X,X)return ee(X);Q(I),I[ys].booting=!1,I[ys].ready=!0,I[ys].promise=null}}function L(){return this}function Z(q,Q){if(B('Cannot call "addHook"!'),Q==null)throw new Mh.FST_ERR_HOOK_INVALID_HANDLER(q,Q);if(q==="onSend"||q==="preSerialization"||q==="onError"||q==="preParsing"){if(Q.constructor.name==="AsyncFunction"&&Q.length===4)throw new Mh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onReady"||q==="onListen"){if(Q.constructor.name==="AsyncFunction"&&Q.length!==0)throw new Mh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onRequestAbort"){if(Q.constructor.name==="AsyncFunction"&&Q.length!==1)throw new Mh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(Q.constructor.name==="AsyncFunction"&&Q.length===3)throw new Mh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER;return q==="onClose"?this.onClose(Q):q==="onReady"||q==="onListen"||q==="onRoute"?this[vH].add(q,Q):this.after((ne,re)=>{ee.call(this,q,Q),re(ne)}),this;function ee(ne,re){this[vH].add(ne,re),this[EH].forEach(X=>ee.call(X,ne,re))}}function W(q){return B('Cannot call "addSchema"!'),this[h0].add(q),this[EH].forEach(Q=>Q.addSchema(q)),this}function U(q,Q){if(q.code==="ECONNRESET"||Q.destroyed)return;let ee,ne,re,X;q.code==="ERR_HTTP_REQUEST_TIMEOUT"?(ne="408",re=_H.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Timeout","statusCode":408}`,X="timeout"):q.code==="HPE_HEADER_OVERFLOW"?(ne="431",re=_H.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Exceeded maximum allowed HTTP header size","statusCode":431}`,X="header_overflow"):(ne="400",re=_H.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Error","statusCode":400}`,X="error"),this.log.trace({err:q},`client ${X}`),Q.writable&&Q.write(`HTTP/1.1 ${ne} ${re}\r
Content-Length: ${ee.length}\r
Content-Type: application/json\r
\r
${ee}`),Q.destroy(q)}function V(q,Q){q.headers["accept-version"]!==void 0&&(q.headers[eVt]=q.headers["accept-version"],q.headers["accept-version"]=void 0),m.router.lookup(q,Q)}function j(q,Q,ee){if(o){let re=XNe(k.server,Q),X=YNe(k,c,Q,re),ie=new D3(re,null,Q,null,X,k),ce=new US(ee,ie,X);return i===!1&&X.info({req:ie},"incoming request"),o(new bVt(q),ie,ce)}let ne=`{"error":"Bad Request","code":"FST_ERR_BAD_URL","message":"'${q}' is not a valid url component","statusCode":400}`;ee.writeHead(400,{"Content-Type":"application/json","Content-Length":ne.length}),ee.end(ne)}function J(q,Q,ee){if(q!==!1)return function(re){if(re){if(o){let ie=XNe(k.server,Q),ce=YNe(k,c,Q,ie),me=new D3(ie,null,Q,null,ce,k),Oe=new US(ee,me,ce);return i===!1&&ce.info({req:me},"incoming request"),o(new xVt,me,Oe)}let X='{"error":"Internal Server Error","message":"Unexpected error from async constraint","statusCode":500}';ee.writeHead(500,{"Content-Type":"application/json","Content-Length":X.length}),ee.end(X)}}}function se(q,Q){return B('Cannot call "setNotFoundHandler"!'),m.setNotFoundHandler.call(this,q,Q,N,f.routeHandler),this}function oe(q){return B('Cannot call "setValidatorCompiler"!'),this[h0].setValidatorCompiler(q),this}function ue(q){return B('Cannot call "setSchemaErrorFormatter"!'),nOe(q),this[IH]=q.bind(this),this}function Te(q){return B('Cannot call "setSerializerCompiler"!'),this[h0].setSerializerCompiler(q),this}function Ne(q){B('Cannot call "setSchemaController"!');let Q=this[h0],ee=KNe.buildSchemaController(Q,Object.assign({},Q.opts,q));return this[h0]=ee,this.getSchema=ee.getSchema.bind(ee),this.getSchemas=ee.getSchemas.bind(ee),this}function je(q){return B('Cannot call "setReplySerializer"!'),this[VNe]=q,this}function Fe(q){return B('Cannot call "setErrorHandler"!'),this[P3]=rOe(this[P3],q.bind(this)),this}function ve(q){return B('Cannot call "setChildLoggerFactory"!'),this[TH]=q,this}function F(q={}){return q.includeMeta=q.includeHooks?q.includeMeta?RH.concat(q.includeMeta):RH:q.includeMeta,f.printRoutes(q)}function G(q,{rewriteUrl:Q,logger:ee}){let ne;return function(X,ie){if(ne===void 0&&(ne=q.isAsyncConstraint()),Q){X.originalUrl=X.url;let ce=Q.call(I,X);if(typeof ce=="string")X.url=ce;else{let me=new NVt(X.url,typeof ce);X.destroy(me)}}q.routing(X,ie,J(ne,X,ie))}}function K(q){return B('Cannot call "setGenReqId"!'),this[wH]=ZNe(this[SH].requestIdHeader,q),this}}B3.errorCodes=Mh;function nOe(t){if(typeof t!="function")throw new tOe(typeof t);if(t.constructor.name==="AsyncFunction")throw new tOe("AsyncFunction")}L3.exports=B3;L3.exports.fastify=B3;L3.exports.default=B3});var xOe=_((Kqr,AOe)=>{var yOe=require("stream").Stream,fKt=require("util");AOe.exports=gu;function gu(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}fKt.inherits(gu,yOe);gu.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(gu.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});gu.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};gu.prototype.resume=function(){this._released||this.release(),this.source.resume()};gu.prototype.pause=function(){this.source.pause()};gu.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(t){this.emit.apply(this,t)}.bind(this)),this._bufferedEvents=[]};gu.prototype.pipe=function(){var t=yOe.prototype.pipe.apply(this,arguments);return this.resume(),t};gu.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)};gu.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 vOe=_((zqr,EOe)=>{var pKt=require("util"),_Oe=require("stream").Stream,bOe=xOe();EOe.exports=Jn;function Jn(){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}pKt.inherits(Jn,_Oe);Jn.create=function(t){var e=new this;t=t||{};for(var r in t)e[r]=t[r];return e};Jn.isStreamLike=function(t){return typeof t!="function"&&typeof t!="string"&&typeof t!="boolean"&&typeof t!="number"&&!Buffer.isBuffer(t)};Jn.prototype.append=function(t){var e=Jn.isStreamLike(t);if(e){if(!(t instanceof bOe)){var r=bOe.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};Jn.prototype.pipe=function(t,e){return _Oe.prototype.pipe.call(this,t,e),this.resume(),t};Jn.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}};Jn.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=Jn.isStreamLike(r);n&&(r.on("data",this._checkDataSize.bind(this)),this._handleErrors(r)),this._pipeNext(r)}.bind(this))};Jn.prototype._pipeNext=function(t){this._currentStream=t;var e=Jn.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()};Jn.prototype._handleErrors=function(t){var e=this;t.on("error",function(r){e._emitError(r)})};Jn.prototype.write=function(t){this.emit("data",t)};Jn.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};Jn.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")};Jn.prototype.end=function(){this._reset(),this.emit("end")};Jn.prototype.destroy=function(){this._reset(),this.emit("close")};Jn.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};Jn.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(t))}};Jn.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)};Jn.prototype._emitError=function(t){this._reset(),this.emit("error",t)}});var SOe=_((Yqr,mKt)=>{mKt.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 COe=_((Jqr,IOe)=>{IOe.exports=SOe()});var ROe=_(eo=>{"use strict";var F3=COe(),hKt=require("path").extname,TOe=/^\s*([^;\s]*)(?:;|\s|$)/,gKt=/^text\//i;eo.charset=wOe;eo.charsets={lookup:wOe};eo.contentType=yKt;eo.extension=AKt;eo.extensions=Object.create(null);eo.lookup=xKt;eo.types=Object.create(null);bKt(eo.extensions,eo.types);function wOe(t){if(!t||typeof t!="string")return!1;var e=TOe.exec(t),r=e&&F3[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&gKt.test(e[1])?"UTF-8":!1}function yKt(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?eo.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=eo.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function AKt(t){if(!t||typeof t!="string")return!1;var e=TOe.exec(t),r=e&&eo.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function xKt(t){if(!t||typeof t!="string")return!1;var e=hKt("x."+t).toLowerCase().substr(1);return e&&eo.types[e]||!1}function bKt(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(F3).forEach(function(s){var i=F3[s],a=i.extensions;if(!(!a||!a.length)){t[s]=a;for(var o=0;o<a.length;o++){var c=a[o];if(e[c]){var u=r.indexOf(F3[e[c]].source),l=r.indexOf(i.source);if(e[c]!=="application/octet-stream"&&(u>l||u===l&&e[c].substr(0,12)==="application/"))continue}e[c]=s}}})}});var OOe=_((Zqr,NOe)=>{NOe.exports=_Kt;function _Kt(t){var e=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;e?e(t):setTimeout(t,0)}});var PH=_((ejr,POe)=>{var kOe=OOe();POe.exports=EKt;function EKt(t){var e=!1;return kOe(function(){e=!0}),function(n,s){e?t(n,s):kOe(function(){t(n,s)})}}});var DH=_((tjr,DOe)=>{DOe.exports=vKt;function vKt(t){Object.keys(t.jobs).forEach(SKt.bind(t)),t.jobs={}}function SKt(t){typeof this.jobs[t]=="function"&&this.jobs[t]()}});var BH=_((rjr,LOe)=>{var BOe=PH(),IKt=DH();LOe.exports=CKt;function CKt(t,e,r,n){var s=r.keyedList?r.keyedList[r.index]:r.index;r.jobs[s]=TKt(e,s,t[s],function(i,a){s in r.jobs&&(delete r.jobs[s],i?IKt(r):r.results[s]=a,n(i,r.results))})}function TKt(t,e,r,n){var s;return t.length==2?s=t(r,BOe(n)):s=t(r,e,BOe(n)),s}});var LH=_((njr,MOe)=>{MOe.exports=wKt;function wKt(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 MH=_((sjr,WOe)=>{var RKt=DH(),NKt=PH();WOe.exports=OKt;function OKt(t){Object.keys(this.jobs).length&&(this.index=this.size,RKt(this),NKt(t)(null,this.results))}});var UOe=_((ijr,$Oe)=>{var kKt=BH(),PKt=LH(),DKt=MH();$Oe.exports=BKt;function BKt(t,e,r){for(var n=PKt(t);n.index<(n.keyedList||t).length;)kKt(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 DKt.bind(n,r)}});var WH=_((ajr,q3)=>{var FOe=BH(),LKt=LH(),MKt=MH();q3.exports=WKt;q3.exports.ascending=qOe;q3.exports.descending=$Kt;function WKt(t,e,r,n){var s=LKt(t,r);return FOe(t,e,s,function i(a,o){if(a){n(a,o);return}if(s.index++,s.index<(s.keyedList||t).length){FOe(t,e,s,i);return}n(null,s.results)}),MKt.bind(s,n)}function qOe(t,e){return t<e?-1:t>e?1:0}function $Kt(t,e){return-1*qOe(t,e)}});var QOe=_((ojr,jOe)=>{var UKt=WH();jOe.exports=FKt;function FKt(t,e,r){return UKt(t,e,null,r)}});var GOe=_((cjr,HOe)=>{HOe.exports={parallel:UOe(),serial:QOe(),serialOrdered:WH()}});var $H=_((ujr,VOe)=>{"use strict";VOe.exports=Object});var zOe=_((ljr,KOe)=>{"use strict";KOe.exports=Error});var JOe=_((djr,YOe)=>{"use strict";YOe.exports=EvalError});var ZOe=_((fjr,XOe)=>{"use strict";XOe.exports=RangeError});var tke=_((pjr,eke)=>{"use strict";eke.exports=ReferenceError});var nke=_((mjr,rke)=>{"use strict";rke.exports=SyntaxError});var g0=_((hjr,ske)=>{"use strict";ske.exports=TypeError});var ake=_((gjr,ike)=>{"use strict";ike.exports=URIError});var cke=_((yjr,oke)=>{"use strict";oke.exports=Math.abs});var lke=_((Ajr,uke)=>{"use strict";uke.exports=Math.floor});var fke=_((xjr,dke)=>{"use strict";dke.exports=Math.max});var mke=_((bjr,pke)=>{"use strict";pke.exports=Math.min});var gke=_((_jr,hke)=>{"use strict";hke.exports=Math.pow});var Ake=_((Ejr,yke)=>{"use strict";yke.exports=Math.round});var bke=_((vjr,xke)=>{"use strict";xke.exports=Number.isNaN||function(e){return e!==e}});var Eke=_((Sjr,_ke)=>{"use strict";var qKt=bke();_ke.exports=function(e){return qKt(e)||e===0?e:e<0?-1:1}});var Ske=_((Ijr,vke)=>{"use strict";vke.exports=Object.getOwnPropertyDescriptor});var UH=_((Cjr,Ike)=>{"use strict";var j3=Ske();if(j3)try{j3([],"length")}catch{j3=null}Ike.exports=j3});var Tke=_((Tjr,Cke)=>{"use strict";var Q3=Object.defineProperty||!1;if(Q3)try{Q3({},"a",{value:1})}catch{Q3=!1}Cke.exports=Q3});var FH=_((wjr,wke)=>{"use strict";wke.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 Oke=_((Rjr,Nke)=>{"use strict";var Rke=typeof Symbol<"u"&&Symbol,jKt=FH();Nke.exports=function(){return typeof Rke!="function"||typeof Symbol!="function"||typeof Rke("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:jKt()}});var qH=_((Njr,kke)=>{"use strict";kke.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var jH=_((Ojr,Pke)=>{"use strict";var QKt=$H();Pke.exports=QKt.getPrototypeOf||null});var Lke=_((kjr,Bke)=>{"use strict";var HKt="Function.prototype.bind called on incompatible ",GKt=Object.prototype.toString,VKt=Math.max,KKt="[object Function]",Dke=function(e,r){for(var n=[],s=0;s<e.length;s+=1)n[s]=e[s];for(var i=0;i<r.length;i+=1)n[i+e.length]=r[i];return n},zKt=function(e,r){for(var n=[],s=r||0,i=0;s<e.length;s+=1,i+=1)n[i]=e[s];return n},YKt=function(t,e){for(var r="",n=0;n<t.length;n+=1)r+=t[n],n+1<t.length&&(r+=e);return r};Bke.exports=function(e){var r=this;if(typeof r!="function"||GKt.apply(r)!==KKt)throw new TypeError(HKt+r);for(var n=zKt(arguments,1),s,i=function(){if(this instanceof s){var l=r.apply(this,Dke(n,arguments));return Object(l)===l?l:this}return r.apply(e,Dke(n,arguments))},a=VKt(0,r.length-n.length),o=[],c=0;c<a;c++)o[c]="$"+c;if(s=Function("binder","return function ("+YKt(o,",")+"){ return binder.apply(this,arguments); }")(i),r.prototype){var u=function(){};u.prototype=r.prototype,s.prototype=new u,u.prototype=null}return s}});var QS=_((Pjr,Mke)=>{"use strict";var JKt=Lke();Mke.exports=Function.prototype.bind||JKt});var H3=_((Djr,Wke)=>{"use strict";Wke.exports=Function.prototype.call});var QH=_((Bjr,$ke)=>{"use strict";$ke.exports=Function.prototype.apply});var Fke=_((Ljr,Uke)=>{"use strict";Uke.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var jke=_((Mjr,qke)=>{"use strict";var XKt=QS(),ZKt=QH(),ezt=H3(),tzt=Fke();qke.exports=tzt||XKt.call(ezt,ZKt)});var HH=_((Wjr,Qke)=>{"use strict";var rzt=QS(),nzt=g0(),szt=H3(),izt=jke();Qke.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new nzt("a function is required");return izt(rzt,szt,e)}});var Yke=_(($jr,zke)=>{"use strict";var azt=HH(),Hke=UH(),Vke;try{Vke=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var GH=!!Vke&&Hke&&Hke(Object.prototype,"__proto__"),Kke=Object,Gke=Kke.getPrototypeOf;zke.exports=GH&&typeof GH.get=="function"?azt([GH.get]):typeof Gke=="function"?function(e){return Gke(e==null?e:Kke(e))}:!1});var tPe=_((Ujr,ePe)=>{"use strict";var Jke=qH(),Xke=jH(),Zke=Yke();ePe.exports=Jke?function(e){return Jke(e)}:Xke?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return Xke(e)}:Zke?function(e){return Zke(e)}:null});var G3=_((Fjr,rPe)=>{"use strict";var ozt=Function.prototype.call,czt=Object.prototype.hasOwnProperty,uzt=QS();rPe.exports=uzt.call(ozt,czt)});var KS=_((qjr,cPe)=>{"use strict";var hr,lzt=$H(),dzt=zOe(),fzt=JOe(),pzt=ZOe(),mzt=tke(),zx=nke(),Kx=g0(),hzt=ake(),gzt=cke(),yzt=lke(),Azt=fke(),xzt=mke(),bzt=gke(),_zt=Ake(),Ezt=Eke(),aPe=Function,VH=function(t){try{return aPe('"use strict"; return ('+t+").constructor;")()}catch{}},HS=UH(),vzt=Tke(),KH=function(){throw new Kx},Szt=HS?function(){try{return arguments.callee,KH}catch{try{return HS(arguments,"callee").get}catch{return KH}}}():KH,Gx=Oke()(),Ys=tPe(),Izt=jH(),Czt=qH(),oPe=QH(),GS=H3(),Vx={},Tzt=typeof Uint8Array>"u"||!Ys?hr:Ys(Uint8Array),Wh={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?hr:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?hr:ArrayBuffer,"%ArrayIteratorPrototype%":Gx&&Ys?Ys([][Symbol.iterator]()):hr,"%AsyncFromSyncIteratorPrototype%":hr,"%AsyncFunction%":Vx,"%AsyncGenerator%":Vx,"%AsyncGeneratorFunction%":Vx,"%AsyncIteratorPrototype%":Vx,"%Atomics%":typeof Atomics>"u"?hr:Atomics,"%BigInt%":typeof BigInt>"u"?hr:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?hr:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?hr:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?hr:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":dzt,"%eval%":eval,"%EvalError%":fzt,"%Float16Array%":typeof Float16Array>"u"?hr:Float16Array,"%Float32Array%":typeof Float32Array>"u"?hr:Float32Array,"%Float64Array%":typeof Float64Array>"u"?hr:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?hr:FinalizationRegistry,"%Function%":aPe,"%GeneratorFunction%":Vx,"%Int8Array%":typeof Int8Array>"u"?hr:Int8Array,"%Int16Array%":typeof Int16Array>"u"?hr:Int16Array,"%Int32Array%":typeof Int32Array>"u"?hr:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":Gx&&Ys?Ys(Ys([][Symbol.iterator]())):hr,"%JSON%":typeof JSON=="object"?JSON:hr,"%Map%":typeof Map>"u"?hr:Map,"%MapIteratorPrototype%":typeof Map>"u"||!Gx||!Ys?hr:Ys(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":lzt,"%Object.getOwnPropertyDescriptor%":HS,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?hr:Promise,"%Proxy%":typeof Proxy>"u"?hr:Proxy,"%RangeError%":pzt,"%ReferenceError%":mzt,"%Reflect%":typeof Reflect>"u"?hr:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?hr:Set,"%SetIteratorPrototype%":typeof Set>"u"||!Gx||!Ys?hr:Ys(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?hr:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":Gx&&Ys?Ys(""[Symbol.iterator]()):hr,"%Symbol%":Gx?Symbol:hr,"%SyntaxError%":zx,"%ThrowTypeError%":Szt,"%TypedArray%":Tzt,"%TypeError%":Kx,"%Uint8Array%":typeof Uint8Array>"u"?hr:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?hr:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?hr:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?hr:Uint32Array,"%URIError%":hzt,"%WeakMap%":typeof WeakMap>"u"?hr:WeakMap,"%WeakRef%":typeof WeakRef>"u"?hr:WeakRef,"%WeakSet%":typeof WeakSet>"u"?hr:WeakSet,"%Function.prototype.call%":GS,"%Function.prototype.apply%":oPe,"%Object.defineProperty%":vzt,"%Object.getPrototypeOf%":Izt,"%Math.abs%":gzt,"%Math.floor%":yzt,"%Math.max%":Azt,"%Math.min%":xzt,"%Math.pow%":bzt,"%Math.round%":_zt,"%Math.sign%":Ezt,"%Reflect.getPrototypeOf%":Czt};if(Ys)try{null.error}catch(t){nPe=Ys(Ys(t)),Wh["%Error.prototype%"]=nPe}var nPe,wzt=function t(e){var r;if(e==="%AsyncFunction%")r=VH("async function () {}");else if(e==="%GeneratorFunction%")r=VH("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=VH("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var s=t("%AsyncGenerator%");s&&Ys&&(r=Ys(s.prototype))}return Wh[e]=r,r},sPe={__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"]},VS=QS(),V3=G3(),Rzt=VS.call(GS,Array.prototype.concat),Nzt=VS.call(oPe,Array.prototype.splice),iPe=VS.call(GS,String.prototype.replace),K3=VS.call(GS,String.prototype.slice),Ozt=VS.call(GS,RegExp.prototype.exec),kzt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,Pzt=/\\(\\)?/g,Dzt=function(e){var r=K3(e,0,1),n=K3(e,-1);if(r==="%"&&n!=="%")throw new zx("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new zx("invalid intrinsic syntax, expected opening `%`");var s=[];return iPe(e,kzt,function(i,a,o,c){s[s.length]=o?iPe(c,Pzt,"$1"):a||i}),s},Bzt=function(e,r){var n=e,s;if(V3(sPe,n)&&(s=sPe[n],n="%"+s[0]+"%"),V3(Wh,n)){var i=Wh[n];if(i===Vx&&(i=wzt(n)),typeof i>"u"&&!r)throw new Kx("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new zx("intrinsic "+e+" does not exist!")};cPe.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new Kx("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new Kx('"allowMissing" argument must be a boolean');if(Ozt(/^%?[^%]*%?$/,e)===null)throw new zx("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=Dzt(e),s=n.length>0?n[0]:"",i=Bzt("%"+s+"%",r),a=i.name,o=i.value,c=!1,u=i.alias;u&&(s=u[0],Nzt(n,Rzt([0,1],u)));for(var l=1,d=!0;l<n.length;l+=1){var f=n[l],m=K3(f,0,1),p=K3(f,-1);if((m==='"'||m==="'"||m==="`"||p==='"'||p==="'"||p==="`")&&m!==p)throw new zx("property names with quotes must have matching quotes");if((f==="constructor"||!d)&&(c=!0),s+="."+f,a="%"+s+"%",V3(Wh,a))o=Wh[a];else if(o!=null){if(!(f in o)){if(!r)throw new Kx("base intrinsic for "+e+" exists, but the property is not available.");return}if(HS&&l+1>=n.length){var h=HS(o,f);d=!!h,d&&"get"in h&&!("originalValue"in h.get)?o=h.get:o=o[f]}else d=V3(o,f),o=o[f];d&&!c&&(Wh[a]=o)}}return o}});var lPe=_((jjr,uPe)=>{"use strict";var Lzt=FH();uPe.exports=function(){return Lzt()&&!!Symbol.toStringTag}});var pPe=_((Qjr,fPe)=>{"use strict";var Mzt=KS(),dPe=Mzt("%Object.defineProperty%",!0),Wzt=lPe()(),$zt=G3(),Uzt=g0(),z3=Wzt?Symbol.toStringTag:null;fPe.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 Uzt("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");z3&&(n||!$zt(e,z3))&&(dPe?dPe(e,z3,{configurable:!s,enumerable:!1,value:r,writable:!1}):e[z3]=r)}});var hPe=_((Hjr,mPe)=>{"use strict";mPe.exports=function(t,e){return Object.keys(e).forEach(function(r){t[r]=t[r]||e[r]}),t}});var yPe=_((Gjr,gPe)=>{"use strict";var XH=vOe(),Fzt=require("util"),zH=require("path"),qzt=require("http"),jzt=require("https"),Qzt=require("url").parse,Hzt=require("fs"),Gzt=require("stream").Stream,Vzt=require("crypto"),YH=ROe(),Kzt=GOe(),zzt=pPe(),y0=G3(),JH=hPe();function Pr(t){if(!(this instanceof Pr))return new Pr(t);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],XH.call(this),t=t||{};for(var e in t)this[e]=t[e]}Fzt.inherits(Pr,XH);Pr.LINE_BREAK=`\r
`;Pr.DEFAULT_CONTENT_TYPE="application/octet-stream";Pr.prototype.append=function(t,e,r){r=r||{},typeof r=="string"&&(r={filename:r});var n=XH.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)};Pr.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)+Pr.LINE_BREAK.length,!(!e||!e.path&&!(e.readable&&y0(e,"httpVersion"))&&!(e instanceof Gzt))&&(r.knownLength||this._valuesToMeasure.push(e))};Pr.prototype._lengthRetriever=function(t,e){y0(t,"fd")?t.end!=null&&t.end!=1/0&&t.start!=null?e(null,t.end+1-(t.start?t.start:0)):Hzt.stat(t.path,function(r,n){if(r){e(r);return}var s=n.size-(t.start?t.start:0);e(null,s)}):y0(t,"httpVersion")?e(null,Number(t.headers["content-length"])):y0(t,"httpModule")?(t.on("response",function(r){t.pause(),e(null,Number(r.headers["content-length"]))}),t.resume()):e("Unknown stream")};Pr.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"&&JH(a,r.header);var o;for(var c in a)if(y0(a,c)){if(o=a[c],o==null)continue;Array.isArray(o)||(o=[o]),o.length&&(i+=c+": "+o.join("; ")+Pr.LINE_BREAK)}return"--"+this.getBoundary()+Pr.LINE_BREAK+i+Pr.LINE_BREAK};Pr.prototype._getContentDisposition=function(t,e){var r;if(typeof e.filepath=="string"?r=zH.normalize(e.filepath).replace(/\\/g,"/"):e.filename||t&&(t.name||t.path)?r=zH.basename(e.filename||t&&(t.name||t.path)):t&&t.readable&&y0(t,"httpVersion")&&(r=zH.basename(t.client._httpMessage.path||"")),r)return'filename="'+r+'"'};Pr.prototype._getContentType=function(t,e){var r=e.contentType;return!r&&t&&t.name&&(r=YH.lookup(t.name)),!r&&t&&t.path&&(r=YH.lookup(t.path)),!r&&t&&t.readable&&y0(t,"httpVersion")&&(r=t.headers["content-type"]),!r&&(e.filepath||e.filename)&&(r=YH.lookup(e.filepath||e.filename)),!r&&t&&typeof t=="object"&&(r=Pr.DEFAULT_CONTENT_TYPE),r};Pr.prototype._multiPartFooter=function(){return function(t){var e=Pr.LINE_BREAK,r=this._streams.length===0;r&&(e+=this._lastBoundary()),t(e)}.bind(this)};Pr.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+Pr.LINE_BREAK};Pr.prototype.getHeaders=function(t){var e,r={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(e in t)y0(t,e)&&(r[e.toLowerCase()]=t[e]);return r};Pr.prototype.setBoundary=function(t){if(typeof t!="string")throw new TypeError("FormData boundary must be a string");this._boundary=t};Pr.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};Pr.prototype.getBuffer=function(){for(var t=new Buffer.alloc(0),e=this.getBoundary(),r=0,n=this._streams.length;r<n;r++)typeof this._streams[r]!="function"&&(Buffer.isBuffer(this._streams[r])?t=Buffer.concat([t,this._streams[r]]):t=Buffer.concat([t,Buffer.from(this._streams[r])]),(typeof this._streams[r]!="string"||this._streams[r].substring(2,e.length+2)!==e)&&(t=Buffer.concat([t,Buffer.from(Pr.LINE_BREAK)])));return Buffer.concat([t,Buffer.from(this._lastBoundary())])};Pr.prototype._generateBoundary=function(){this._boundary="--------------------------"+Vzt.randomBytes(12).toString("hex")};Pr.prototype.getLengthSync=function(){var t=this._overheadLength+this._valueLength;return this._streams.length&&(t+=this._lastBoundary().length),this.hasKnownLength()||this._error(new Error("Cannot calculate proper length in synchronous way.")),t};Pr.prototype.hasKnownLength=function(){var t=!0;return this._valuesToMeasure.length&&(t=!1),t};Pr.prototype.getLength=function(t){var e=this._overheadLength+this._valueLength;if(this._streams.length&&(e+=this._lastBoundary().length),!this._valuesToMeasure.length){process.nextTick(t.bind(this,null,e));return}Kzt.parallel(this._valuesToMeasure,this._lengthRetriever,function(r,n){if(r){t(r);return}n.forEach(function(s){e+=s}),t(null,e)})};Pr.prototype.submit=function(t,e){var r,n,s={method:"post"};return typeof t=="string"?(t=Qzt(t),n=JH({port:t.port,path:t.pathname,host:t.hostname,protocol:t.protocol},s)):(n=JH(t,s),n.port||(n.port=n.protocol==="https:"?443:80)),n.headers=this.getHeaders(t.headers),n.protocol==="https:"?r=jzt.request(n):r=qzt.request(n),this.getLength(function(i,a){if(i&&i!=="Unknown stream"){this._error(i);return}if(a&&r.setHeader("Content-Length",a),this.pipe(r),e){var o,c=function(u,l){return r.removeListener("error",c),r.removeListener("response",o),e.call(this,u,l)};o=c.bind(this,null),r.on("error",c),r.on("response",o)}}.bind(this)),r};Pr.prototype._error=function(t){this.error||(this.error=t,this.pause(),this.emit("error",t))};Pr.prototype.toString=function(){return"[object FormData]"};zzt(Pr.prototype,"FormData");gPe.exports=Pr});var PPe=_(kPe=>{"use strict";var dYt=require("url").parse,fYt={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},pYt=String.prototype.endsWith||function(t){return t.length<=this.length&&this.indexOf(t,this.length-t.length)!==-1};function mYt(t){var e=typeof t=="string"?dYt(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)||fYt[r]||0,!hYt(n,s)))return"";var i=Zx("npm_config_"+r+"_proxy")||Zx(r+"_proxy")||Zx("npm_config_proxy")||Zx("all_proxy");return i&&i.indexOf("://")===-1&&(i=r+"://"+i),i}function hYt(t,e){var r=(Zx("npm_config_no_proxy")||Zx("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)),!pYt.call(t,i)):t!==i}):!0}function Zx(t){return process.env[t.toLowerCase()]||process.env[t.toUpperCase()]||""}kPe.getProxyForUrl=mYt});var BPe=_((VQr,DPe)=>{var eb=1e3,tb=eb*60,rb=tb*60,Fh=rb*24,gYt=Fh*7,yYt=Fh*365.25;DPe.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return AYt(t);if(r==="number"&&isFinite(t))return e.long?bYt(t):xYt(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function AYt(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*yYt;case"weeks":case"week":case"w":return r*gYt;case"days":case"day":case"d":return r*Fh;case"hours":case"hour":case"hrs":case"hr":case"h":return r*rb;case"minutes":case"minute":case"mins":case"min":case"m":return r*tb;case"seconds":case"second":case"secs":case"sec":case"s":return r*eb;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function xYt(t){var e=Math.abs(t);return e>=Fh?Math.round(t/Fh)+"d":e>=rb?Math.round(t/rb)+"h":e>=tb?Math.round(t/tb)+"m":e>=eb?Math.round(t/eb)+"s":t+"ms"}function bYt(t){var e=Math.abs(t);return e>=Fh?Z3(t,e,Fh,"day"):e>=rb?Z3(t,e,rb,"hour"):e>=tb?Z3(t,e,tb,"minute"):e>=eb?Z3(t,e,eb,"second"):t+" ms"}function Z3(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var cG=_((KQr,LPe)=>{function _Yt(t){r.debug=r,r.default=r,r.coerce=c,r.disable=a,r.enable=s,r.enabled=o,r.humanize=BPe(),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<l.length;f++)d=(d<<5)-d+l.charCodeAt(f),d|=0;return r.colors[Math.abs(d)%r.colors.length]}r.selectColor=e;function r(l){let d,f=null,m,p;function h(...y){if(!h.enabled)return;let g=h,A=Number(new Date),b=A-(d||A);g.diff=b,g.prev=d,g.curr=A,d=A,y[0]=r.coerce(y[0]),typeof y[0]!="string"&&y.unshift("%O");let x=0;y[0]=y[0].replace(/%([a-zA-Z%])/g,(T,I)=>{if(T==="%%")return"%";x++;let R=r.formatters[I];if(typeof R=="function"){let N=y[x];T=R.call(g,N),y.splice(x,1),x--}return T}),r.formatArgs.call(g,y),(g.log||r.log).apply(g,y)}return h.namespace=l,h.useColors=r.useColors(),h.color=r.selectColor(l),h.extend=n,h.destroy=r.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(m!==r.namespaces&&(m=r.namespaces,p=r.enabled(l)),p),set:y=>{f=y}}),typeof r.init=="function"&&r.init(h),h}function n(l,d){let f=r(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function s(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let d=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?r.skips.push(f.slice(1)):r.names.push(f)}function i(l,d){let f=0,m=0,p=-1,h=0;for(;f<l.length;)if(m<d.length&&(d[m]===l[f]||d[m]==="*"))d[m]==="*"?(p=m,h=f,m++):(f++,m++);else if(p!==-1)m=p+1,h++,f=h;else return!1;for(;m<d.length&&d[m]==="*";)m++;return m===d.length}function a(){let l=[...r.names,...r.skips.map(d=>"-"+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}LPe.exports=_Yt});var MPe=_((to,eD)=>{to.formatArgs=vYt;to.save=SYt;to.load=IYt;to.useColors=EYt;to.storage=CYt();to.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();to.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function EYt(){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 vYt(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+eD.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),t.splice(n,0,e)}to.log=console.debug||console.log||(()=>{});function SYt(t){try{t?to.storage.setItem("debug",t):to.storage.removeItem("debug")}catch{}}function IYt(){let t;try{t=to.storage.getItem("debug")||to.storage.getItem("DEBUG")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function CYt(){try{return localStorage}catch{}}eD.exports=cG()(to);var{formatters:TYt}=eD.exports;TYt.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var $Pe=_((zQr,WPe)=>{"use strict";WPe.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<s)}});var qPe=_((YQr,FPe)=>{"use strict";var wYt=require("os"),UPe=require("tty"),vc=$Pe(),{env:Js}=process,b0;vc("no-color")||vc("no-colors")||vc("color=false")||vc("color=never")?b0=0:(vc("color")||vc("colors")||vc("color=true")||vc("color=always"))&&(b0=1);"FORCE_COLOR"in Js&&(Js.FORCE_COLOR==="true"?b0=1:Js.FORCE_COLOR==="false"?b0=0:b0=Js.FORCE_COLOR.length===0?1:Math.min(parseInt(Js.FORCE_COLOR,10),3));function uG(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function lG(t,e){if(b0===0)return 0;if(vc("color=16m")||vc("color=full")||vc("color=truecolor"))return 3;if(vc("color=256"))return 2;if(t&&!e&&b0===void 0)return 0;let r=b0||0;if(Js.TERM==="dumb")return r;if(process.platform==="win32"){let n=wYt.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in Js)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in Js)||Js.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in Js)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Js.TEAMCITY_VERSION)?1:0;if(Js.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in Js){let n=parseInt((Js.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Js.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(Js.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(Js.TERM)||"COLORTERM"in Js?1:r}function RYt(t){let e=lG(t,t&&t.isTTY);return uG(e)}FPe.exports={supportsColor:RYt,stdout:uG(lG(!0,UPe.isatty(1))),stderr:uG(lG(!0,UPe.isatty(2)))}});var QPe=_((Xs,rD)=>{var NYt=require("tty"),tD=require("util");Xs.init=MYt;Xs.log=DYt;Xs.formatArgs=kYt;Xs.save=BYt;Xs.load=LYt;Xs.useColors=OYt;Xs.destroy=tD.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Xs.colors=[6,2,3,4,5,1];try{let t=qPe();t&&(t.stderr||t).level>=2&&(Xs.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{}Xs.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 OYt(){return"colors"in Xs.inspectOpts?!!Xs.inspectOpts.colors:NYt.isatty(process.stderr.fd)}function kYt(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+"+rD.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=PYt()+e+" "+t[0]}function PYt(){return Xs.inspectOpts.hideDate?"":new Date().toISOString()+" "}function DYt(...t){return process.stderr.write(tD.formatWithOptions(Xs.inspectOpts,...t)+`
`)}function BYt(t){t?process.env.DEBUG=t:delete process.env.DEBUG}function LYt(){return process.env.DEBUG}function MYt(t){t.inspectOpts={};let e=Object.keys(Xs.inspectOpts);for(let r=0;r<e.length;r++)t.inspectOpts[e[r]]=Xs.inspectOpts[e[r]]}rD.exports=cG()(Xs);var{formatters:jPe}=rD.exports;jPe.o=function(t){return this.inspectOpts.colors=this.useColors,tD.inspect(t,this.inspectOpts).split(`
`).map(e=>e.trim()).join(" ")};jPe.O=function(t){return this.inspectOpts.colors=this.useColors,tD.inspect(t,this.inspectOpts)}});var HPe=_((JQr,dG)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?dG.exports=MPe():dG.exports=QPe()});var VPe=_((XQr,GPe)=>{var XS;GPe.exports=function(){if(!XS){try{XS=HPe()("follow-redirects")}catch{}typeof XS!="function"&&(XS=function(){})}XS.apply(null,arguments)}});var XPe=_((ZQr,vG)=>{var eI=require("url"),ZS=eI.URL,WYt=require("http"),$Yt=require("https"),gG=require("stream").Writable,yG=require("assert"),KPe=VPe();(function(){var e=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=jh(Error.captureStackTrace);!e&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var AG=!1;try{yG(new ZS(""))}catch(t){AG=t.code==="ERR_INVALID_URL"}var UYt=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],xG=["abort","aborted","connect","error","socket","timeout"],bG=Object.create(null);xG.forEach(function(t){bG[t]=function(e,r,n){this._redirectable.emit(t,e,r,n)}});var pG=tI("ERR_INVALID_URL","Invalid URL",TypeError),mG=tI("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),FYt=tI("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",mG),qYt=tI("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),jYt=tI("ERR_STREAM_WRITE_AFTER_END","write after end"),QYt=gG.prototype.destroy||YPe;function ro(t,e){gG.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 mG?s:new mG({cause:s}))}},this._performRequest()}ro.prototype=Object.create(gG.prototype);ro.prototype.abort=function(){EG(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};ro.prototype.destroy=function(t){return EG(this._currentRequest,t),QYt.call(this,t),this};ro.prototype.write=function(t,e,r){if(this._ending)throw new jYt;if(!qh(t)&&!VYt(t))throw new TypeError("data should be a string, Buffer or Uint8Array");if(jh(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 qYt),this.abort())};ro.prototype.end=function(t,e,r){if(jh(t)?(r=t,t=e=null):jh(e)&&(r=e,e=null),!t)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,s=this._currentRequest;this.write(t,e,function(){n._ended=!0,s.end(null,null,r)}),this._ending=!0}};ro.prototype.setHeader=function(t,e){this._options.headers[t]=e,this._currentRequest.setHeader(t,e)};ro.prototype.removeHeader=function(t){delete this._options.headers[t],this._currentRequest.removeHeader(t)};ro.prototype.setTimeout=function(t,e){var r=this;function n(a){a.setTimeout(t),a.removeListener("timeout",a.destroy),a.addListener("timeout",a.destroy)}function s(a){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),i()},t),n(a)}function i(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",i),r.removeListener("error",i),r.removeListener("response",i),r.removeListener("close",i),e&&r.removeListener("timeout",e),r.socket||r._currentRequest.removeListener("socket",s)}return e&&this.on("timeout",e),this.socket?s(this.socket):this._currentRequest.once("socket",s),this.on("socket",n),this.on("abort",i),this.on("error",i),this.on("response",i),this.on("close",i),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(t){ro.prototype[t]=function(e,r){return this._currentRequest[t](e,r)}});["aborted","connection","socket"].forEach(function(t){Object.defineProperty(ro.prototype,t,{get:function(){return this._currentRequest[t]}})});ro.prototype._sanitizeOptions=function(t){if(t.headers||(t.headers={}),t.host&&(t.hostname||(t.hostname=t.host),delete t.host),!t.pathname&&t.path){var e=t.path.indexOf("?");e<0?t.pathname=t.path:(t.pathname=t.path.substring(0,e),t.search=t.path.substring(e))}};ro.prototype._performRequest=function(){var t=this._options.protocol,e=this._options.nativeProtocols[t];if(!e)throw new TypeError("Unsupported protocol "+t);if(this._options.agents){var r=t.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=e.request(this._options,this._onNativeResponse);n._redirectable=this;for(var s of xG)n.on(s,bG[s]);if(this._currentUrl=/^\//.test(this._options.path)?eI.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<o.length){var l=o[i++];n.finished||n.write(l.data,l.encoding,c)}else a._ended&&n.end()})()}};ro.prototype._processResponse=function(t){var e=t.statusCode;this._options.trackRedirects&&this._redirects.push({url:this._currentUrl,headers:t.headers,statusCode:e});var r=t.headers.location;if(!r||this._options.followRedirects===!1||e<300||e>=400){t.responseUrl=this._currentUrl,t.redirects=this._redirects,this.emit("response",t),this._requestBodyBuffers=[];return}if(EG(this._currentRequest),t.destroy(),++this._redirectCount>this._options.maxRedirects)throw new FYt;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=[],fG(/^content-/i,this._options.headers));var a=fG(/^host$/i,this._options.headers),o=_G(this._currentUrl),c=a||o.host,u=/^\w+:/.test(r)?this._currentUrl:eI.format(Object.assign(o,{host:c})),l=HYt(r,u);if(KPe("redirecting to",l.href),this._isRedirect=!0,hG(l,this._options),(l.protocol!==o.protocol&&l.protocol!=="https:"||l.host!==c&&!GYt(l.host,c))&&fG(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),jh(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 zPe(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 KYt(u)?u=hG(u):qh(u)?u=hG(_G(u)):(d=l,l=JPe(u),u={protocol:s}),jh(l)&&(d=l,l=null),l=Object.assign({maxRedirects:e.maxRedirects,maxBodyLength:e.maxBodyLength},u,l),l.nativeProtocols=r,!qh(l.host)&&!qh(l.hostname)&&(l.hostname="::1"),yG.equal(l.protocol,s,"protocol mismatch"),KPe("options",l),new ro(l,d)}function c(u,l,d){var f=a.request(u,l,d);return f.end(),f}Object.defineProperties(a,{request:{value:o,configurable:!0,enumerable:!0,writable:!0},get:{value:c,configurable:!0,enumerable:!0,writable:!0}})}),e}function YPe(){}function _G(t){var e;if(AG)e=new ZS(t);else if(e=JPe(eI.parse(t)),!qh(e.protocol))throw new pG({input:t});return e}function HYt(t,e){return AG?new ZS(t,e):_G(eI.resolve(e,t))}function JPe(t){if(/^\[/.test(t.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(t.hostname))throw new pG({input:t.href||t});if(/^\[/.test(t.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(t.host))throw new pG({input:t.href||t});return t}function hG(t,e){var r=e||{};for(var n of UYt)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 fG(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 tI(t,e,r){function n(s){jh(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 EG(t,e){for(var r of xG)t.removeListener(r,bG[r]);t.on("error",YPe),t.destroy(e)}function GYt(t,e){yG(qh(t)&&qh(e));var r=t.length-e.length-1;return r>0&&t[r]==="."&&t.endsWith(e)}function qh(t){return typeof t=="string"||t instanceof String}function jh(t){return typeof t=="function"}function VYt(t){return typeof t=="object"&&"length"in t}function KYt(t){return ZS&&t instanceof ZS}vG.exports=zPe({http:WYt,https:$Yt});vG.exports.wrap=zPe});var wD=_(Il=>{"use strict";Object.defineProperty(Il,"__esModule",{value:!0});Il.AttributeAction=Il.IgnoreCaseMode=Il.SelectorType=void 0;var gXt;(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"})(gXt=Il.SelectorType||(Il.SelectorType={}));Il.IgnoreCaseMode={Unknown:null,QuirksMode:"quirks",IgnoreCase:!0,CaseSensitive:!1};var yXt;(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"})(yXt=Il.AttributeAction||(Il.AttributeAction={}))});var SDe=_(db=>{"use strict";Object.defineProperty(db,"__esModule",{value:!0});db.parse=db.isTraversal=void 0;var Hr=wD(),bDe=/^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/,AXt=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,xXt=new Map([[126,Hr.AttributeAction.Element],[94,Hr.AttributeAction.Start],[36,Hr.AttributeAction.End],[42,Hr.AttributeAction.Any],[33,Hr.AttributeAction.Not],[124,Hr.AttributeAction.Hyphen]]),bXt=new Set(["has","not","matches","is","where","host","host-context"]);function EDe(t){switch(t.type){case Hr.SelectorType.Adjacent:case Hr.SelectorType.Child:case Hr.SelectorType.Descendant:case Hr.SelectorType.Parent:case Hr.SelectorType.Sibling:case Hr.SelectorType.ColumnCombinator:return!0;default:return!1}}db.isTraversal=EDe;var _Xt=new Set(["contains","icontains"]);function EXt(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 gI(t){return t.replace(AXt,EXt)}function tV(t){return t===39||t===34}function _De(t){return t===32||t===9||t===10||t===12||t===13}function vXt(t){var e=[],r=vDe(e,"".concat(t),0);if(r<t.length)throw new Error("Unmatched selector: ".concat(t.slice(r)));return e}db.parse=vXt;function vDe(t,e,r){var n=[];function s(P){var L=e.slice(r+P).match(bDe);if(!L)throw new Error("Expected name, found ".concat(e.slice(r)));var Z=L[0];return r+=P+Z.length,gI(Z)}function i(P){for(r+=P;r<e.length&&_De(e.charCodeAt(r));)r++}function a(){r+=1;for(var P=r,L=1;L>0&&r<e.length;r++)e.charCodeAt(r)===40&&!o(r)?L++:e.charCodeAt(r)===41&&!o(r)&&L--;if(L)throw new Error("Parenthesis not matched");return gI(e.slice(P,r-1))}function o(P){for(var L=0;e.charCodeAt(--P)===92;)L++;return(L&1)===1}function c(){if(n.length>0&&EDe(n[n.length-1]))throw new Error("Did not expect successive traversals.")}function u(P){if(n.length>0&&n[n.length-1].type===Hr.SelectorType.Descendant){n[n.length-1].type=P;return}c(),n.push({type:P})}function l(P,L){n.push({type:Hr.SelectorType.Attribute,name:P,action:L,value:s(1),namespace:null,ignoreCase:"quirks"})}function d(){if(n.length&&n[n.length-1].type===Hr.SelectorType.Descendant&&n.pop(),n.length===0)throw new Error("Empty sub-selector");t.push(n)}if(i(0),e.length===r)return r;e:for(;r<e.length;){var f=e.charCodeAt(r);switch(f){case 32:case 9:case 10:case 12:case 13:{(n.length===0||n[0].type!==Hr.SelectorType.Descendant)&&(c(),n.push({type:Hr.SelectorType.Descendant})),i(1);break}case 62:{u(Hr.SelectorType.Child),i(1);break}case 60:{u(Hr.SelectorType.Parent),i(1);break}case 126:{u(Hr.SelectorType.Sibling),i(1);break}case 43:{u(Hr.SelectorType.Adjacent),i(1);break}case 46:{l("class",Hr.AttributeAction.Element);break}case 35:{l("id",Hr.AttributeAction.Equals);break}case 91:{i(1);var m=void 0,p=null;e.charCodeAt(r)===124?m=s(1):e.startsWith("*|",r)?(p="*",m=s(2)):(m=s(0),e.charCodeAt(r)===124&&e.charCodeAt(r+1)!==61&&(p=m,m=s(1))),i(0);var h=Hr.AttributeAction.Exists,y=xXt.get(e.charCodeAt(r));if(y){if(h=y,e.charCodeAt(r+1)!==61)throw new Error("Expected `=`");i(2)}else e.charCodeAt(r)===61&&(h=Hr.AttributeAction.Equals,i(1));var g="",A=null;if(h!=="exists"){if(tV(e.charCodeAt(r))){for(var b=e.charCodeAt(r),x=r+1;x<e.length&&(e.charCodeAt(x)!==b||o(x));)x+=1;if(e.charCodeAt(x)!==b)throw new Error("Attribute value didn't end");g=gI(e.slice(r+1,x)),r=x+1}else{for(var S=r;r<e.length&&(!_De(e.charCodeAt(r))&&e.charCodeAt(r)!==93||o(r));)r+=1;g=gI(e.slice(S,r))}i(0);var T=e.charCodeAt(r)|32;T===115?(A=!1,i(1)):T===105&&(A=!0,i(1))}if(e.charCodeAt(r)!==93)throw new Error("Attribute selector didn't terminate");r+=1;var I={type:Hr.SelectorType.Attribute,name:m,action:h,value:g,namespace:p,ignoreCase:A};n.push(I);break}case 58:{if(e.charCodeAt(r+1)===58){n.push({type:Hr.SelectorType.PseudoElement,name:s(2).toLowerCase(),data:e.charCodeAt(r)===40?a():null});continue}var R=s(1).toLowerCase(),N=null;if(e.charCodeAt(r)===40)if(bXt.has(R)){if(tV(e.charCodeAt(r+1)))throw new Error("Pseudo-selector ".concat(R," cannot be quoted"));if(N=[],r=vDe(N,e,r+1),e.charCodeAt(r)!==41)throw new Error("Missing closing parenthesis in :".concat(R," (").concat(e,")"));r+=1}else{if(N=a(),_Xt.has(R)){var k=N.charCodeAt(0);k===N.charCodeAt(N.length-1)&&tV(k)&&(N=N.slice(1,-1))}N=gI(N)}n.push({type:Hr.SelectorType.Pseudo,name:R,data:N});break}case 44:{d(),n=[],i(1);break}default:{if(e.startsWith("/*",r)){var B=e.indexOf("*/",r+2);if(B<0)throw new Error("Comment was not terminated");r=B+2,n.length===0&&i(0);break}var p=null,M=void 0;if(f===42)r+=1,M="*";else if(f===124){if(M="",e.charCodeAt(r+1)===124){u(Hr.SelectorType.ColumnCombinator),i(2);break}}else if(bDe.test(e.slice(r)))M=s(0);else break e;e.charCodeAt(r)===124&&e.charCodeAt(r+1)!==124&&(p=M,e.charCodeAt(r+1)===42?(M="*",r+=2):M=s(1)),n.push(M==="*"?{type:Hr.SelectorType.Universal,namespace:p}:{type:Hr.SelectorType.Tag,name:M,namespace:p})}}}return d(),r}});var ODe=_(pb=>{"use strict";var RD=pb&&pb.__spreadArray||function(t,e,r){if(r||arguments.length===2)for(var n=0,s=e.length,i;n<s;n++)(i||!(n in e))&&(i||(i=Array.prototype.slice.call(e,0,n)),i[n]=e[n]);return t.concat(i||Array.prototype.slice.call(e))};Object.defineProperty(pb,"__esModule",{value:!0});pb.stringify=void 0;var Xn=wD(),TDe=["\\",'"'],wDe=RD(RD([],TDe,!0),["(",")"],!1),SXt=new Set(TDe.map(function(t){return t.charCodeAt(0)})),IDe=new Set(wDe.map(function(t){return t.charCodeAt(0)})),fb=new Set(RD(RD([],wDe,!0),["~","^","$","*","+","!","|",":","[","]"," ","."],!1).map(function(t){return t.charCodeAt(0)}));function RDe(t){return t.map(function(e){return e.map(IXt).join("")}).join(", ")}pb.stringify=RDe;function IXt(t,e,r){switch(t.type){case Xn.SelectorType.Child:return e===0?"> ":" > ";case Xn.SelectorType.Parent:return e===0?"< ":" < ";case Xn.SelectorType.Sibling:return e===0?"~ ":" ~ ";case Xn.SelectorType.Adjacent:return e===0?"+ ":" + ";case Xn.SelectorType.Descendant:return" ";case Xn.SelectorType.ColumnCombinator:return e===0?"|| ":" || ";case Xn.SelectorType.Universal:return t.namespace==="*"&&e+1<r.length&&"name"in r[e+1]?"":"".concat(NDe(t.namespace),"*");case Xn.SelectorType.Tag:return CDe(t);case Xn.SelectorType.PseudoElement:return"::".concat(ff(t.name,fb)).concat(t.data===null?"":"(".concat(ff(t.data,IDe),")"));case Xn.SelectorType.Pseudo:return":".concat(ff(t.name,fb)).concat(t.data===null?"":"(".concat(typeof t.data=="string"?ff(t.data,IDe):RDe(t.data),")"));case Xn.SelectorType.Attribute:{if(t.name==="id"&&t.action===Xn.AttributeAction.Equals&&t.ignoreCase==="quirks"&&!t.namespace)return"#".concat(ff(t.value,fb));if(t.name==="class"&&t.action===Xn.AttributeAction.Element&&t.ignoreCase==="quirks"&&!t.namespace)return".".concat(ff(t.value,fb));var n=CDe(t);return t.action===Xn.AttributeAction.Exists?"[".concat(n,"]"):"[".concat(n).concat(CXt(t.action),'="').concat(ff(t.value,SXt),'"').concat(t.ignoreCase===null?"":t.ignoreCase?" i":" s","]")}}}function CXt(t){switch(t){case Xn.AttributeAction.Equals:return"";case Xn.AttributeAction.Element:return"~";case Xn.AttributeAction.Start:return"^";case Xn.AttributeAction.End:return"$";case Xn.AttributeAction.Any:return"*";case Xn.AttributeAction.Not:return"!";case Xn.AttributeAction.Hyphen:return"|";case Xn.AttributeAction.Exists:throw new Error("Shouldn't be here")}}function CDe(t){return"".concat(NDe(t.namespace)).concat(ff(t.name,fb))}function NDe(t){return t!==null?"".concat(t==="*"?"*":ff(t,fb),"|"):""}function ff(t,e){for(var r=0,n="",s=0;s<t.length;s++)e.has(t.charCodeAt(s))&&(n+="".concat(t.slice(r,s),"\\").concat(t.charAt(s)),r=s+1);return n.length>0?n+t.slice(r):t}});var mb=_(Do=>{"use strict";var TXt=Do&&Do.__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]}),wXt=Do&&Do.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&TXt(e,t,r)};Object.defineProperty(Do,"__esModule",{value:!0});Do.stringify=Do.parse=Do.isTraversal=void 0;wXt(wD(),Do);var kDe=SDe();Object.defineProperty(Do,"isTraversal",{enumerable:!0,get:function(){return kDe.isTraversal}});Object.defineProperty(Do,"parse",{enumerable:!0,get:function(){return kDe.parse}});var RXt=ODe();Object.defineProperty(Do,"stringify",{enumerable:!0,get:function(){return RXt.stringify}})});var T0=_((WKr,PDe)=>{PDe.exports={trueFunc:function(){return!0},falseFunc:function(){return!1}}});var BI=_((jV,QV)=>{(function(t,e){typeof jV=="object"&&typeof QV<"u"?QV.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(jV,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",m="Invalid Date",p=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,h=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,y={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(M){var P=["th","st","nd","rd"],L=M%100;return"["+M+(P[(L-20)%10]||P[L]||P[0])+"]"}},g=function(M,P,L){var Z=String(M);return!Z||Z.length>=P?M:""+Array(P+1-Z.length).join(L)+M},A={s:g,z:function(M){var P=-M.utcOffset(),L=Math.abs(P),Z=Math.floor(L/60),W=L%60;return(P<=0?"+":"-")+g(Z,2,"0")+":"+g(W,2,"0")},m:function M(P,L){if(P.date()<L.date())return-M(L,P);var Z=12*(L.year()-P.year())+(L.month()-P.month()),W=P.clone().add(Z,u),U=L-W<0,V=P.clone().add(Z+(U?-1:1),u);return+(-(Z+(L-W)/(U?W-V:V-W))||0)},a:function(M){return M<0?Math.ceil(M)||0:Math.floor(M)},p:function(M){return{M:u,y:d,w:c,d:o,D:f,h:a,m:i,s,ms:n,Q:l}[M]||String(M||"").toLowerCase().replace(/s$/,"")},u:function(M){return M===void 0}},b="en",x={};x[b]=y;var S="$isDayjsObject",T=function(M){return M instanceof k||!(!M||!M[S])},I=function M(P,L,Z){var W;if(!P)return b;if(typeof P=="string"){var U=P.toLowerCase();x[U]&&(W=U),L&&(x[U]=L,W=U);var V=P.split("-");if(!W&&V.length>1)return M(V[0])}else{var j=P.name;x[j]=P,W=j}return!Z&&W&&(b=W),W||!Z&&b},R=function(M,P){if(T(M))return M.clone();var L=typeof P=="object"?P:{};return L.date=M,L.args=arguments,new k(L)},N=A;N.l=I,N.i=T,N.w=function(M,P){return R(M,{locale:P.$L,utc:P.$u,x:P.$x,$offset:P.$offset})};var k=function(){function M(L){this.$L=I(L.locale,null,!0),this.parse(L),this.$x=this.$x||L.x||{},this[S]=!0}var P=M.prototype;return P.parse=function(L){this.$d=function(Z){var W=Z.date,U=Z.utc;if(W===null)return new Date(NaN);if(N.u(W))return new Date;if(W instanceof Date)return new Date(W);if(typeof W=="string"&&!/Z$/i.test(W)){var V=W.match(p);if(V){var j=V[2]-1||0,J=(V[7]||"0").substring(0,3);return U?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)}(L),this.init()},P.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()},P.$utils=function(){return N},P.isValid=function(){return this.$d.toString()!==m},P.isSame=function(L,Z){var W=R(L);return this.startOf(Z)<=W&&W<=this.endOf(Z)},P.isAfter=function(L,Z){return R(L)<this.startOf(Z)},P.isBefore=function(L,Z){return this.endOf(Z)<R(L)},P.$g=function(L,Z,W){return N.u(L)?this[Z]:this.set(W,L)},P.unix=function(){return Math.floor(this.valueOf()/1e3)},P.valueOf=function(){return this.$d.getTime()},P.startOf=function(L,Z){var W=this,U=!!N.u(Z)||Z,V=N.p(L),j=function(Fe,ve){var F=N.w(W.$u?Date.UTC(W.$y,ve,Fe):new Date(W.$y,ve,Fe),W);return U?F:F.endOf(o)},J=function(Fe,ve){return N.w(W.toDate()[Fe].apply(W.toDate("s"),(U?[0,0,0,0]:[23,59,59,999]).slice(ve)),W)},se=this.$W,oe=this.$M,ue=this.$D,Te="set"+(this.$u?"UTC":"");switch(V){case d:return U?j(1,0):j(31,11);case u:return U?j(1,oe):j(0,oe+1);case c:var Ne=this.$locale().weekStart||0,je=(se<Ne?se+7:se)-Ne;return j(U?ue-je:ue+(6-je),oe);case o:case f:return J(Te+"Hours",0);case a:return J(Te+"Minutes",1);case i:return J(Te+"Seconds",2);case s:return J(Te+"Milliseconds",3);default:return this.clone()}},P.endOf=function(L){return this.startOf(L,!1)},P.$set=function(L,Z){var W,U=N.p(L),V="set"+(this.$u?"UTC":""),j=(W={},W[o]=V+"Date",W[f]=V+"Date",W[u]=V+"Month",W[d]=V+"FullYear",W[a]=V+"Hours",W[i]=V+"Minutes",W[s]=V+"Seconds",W[n]=V+"Milliseconds",W)[U],J=U===o?this.$D+(Z-this.$W):Z;if(U===u||U===d){var se=this.clone().set(f,1);se.$d[j](J),se.init(),this.$d=se.set(f,Math.min(this.$D,se.daysInMonth())).$d}else j&&this.$d[j](J);return this.init(),this},P.set=function(L,Z){return this.clone().$set(L,Z)},P.get=function(L){return this[N.p(L)]()},P.add=function(L,Z){var W,U=this;L=Number(L);var V=N.p(Z),j=function(oe){var ue=R(U);return N.w(ue.date(ue.date()+Math.round(oe*L)),U)};if(V===u)return this.set(u,this.$M+L);if(V===d)return this.set(d,this.$y+L);if(V===o)return j(1);if(V===c)return j(7);var J=(W={},W[i]=e,W[a]=r,W[s]=t,W)[V]||1,se=this.$d.getTime()+L*J;return N.w(se,this)},P.subtract=function(L,Z){return this.add(-1*L,Z)},P.format=function(L){var Z=this,W=this.$locale();if(!this.isValid())return W.invalidDate||m;var U=L||"YYYY-MM-DDTHH:mm:ssZ",V=N.z(this),j=this.$H,J=this.$m,se=this.$M,oe=W.weekdays,ue=W.months,Te=W.meridiem,Ne=function(ve,F,G,K){return ve&&(ve[F]||ve(Z,U))||G[F].slice(0,K)},je=function(ve){return N.s(j%12||12,ve,"0")},Fe=Te||function(ve,F,G){var K=ve<12?"AM":"PM";return G?K.toLowerCase():K};return U.replace(h,function(ve,F){return F||function(G){switch(G){case"YY":return String(Z.$y).slice(-2);case"YYYY":return N.s(Z.$y,4,"0");case"M":return se+1;case"MM":return N.s(se+1,2,"0");case"MMM":return Ne(W.monthsShort,se,ue,3);case"MMMM":return Ne(ue,se);case"D":return Z.$D;case"DD":return N.s(Z.$D,2,"0");case"d":return String(Z.$W);case"dd":return Ne(W.weekdaysMin,Z.$W,oe,2);case"ddd":return Ne(W.weekdaysShort,Z.$W,oe,3);case"dddd":return oe[Z.$W];case"H":return String(j);case"HH":return N.s(j,2,"0");case"h":return je(1);case"hh":return je(2);case"a":return Fe(j,J,!0);case"A":return Fe(j,J,!1);case"m":return String(J);case"mm":return N.s(J,2,"0");case"s":return String(Z.$s);case"ss":return N.s(Z.$s,2,"0");case"SSS":return N.s(Z.$ms,3,"0");case"Z":return V}return null}(ve)||V.replace(":","")})},P.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},P.diff=function(L,Z,W){var U,V=this,j=N.p(Z),J=R(L),se=(J.utcOffset()-this.utcOffset())*e,oe=this-J,ue=function(){return N.m(V,J)};switch(j){case d:U=ue()/12;break;case u:U=ue();break;case l:U=ue()/3;break;case c:U=(oe-se)/6048e5;break;case o:U=(oe-se)/864e5;break;case a:U=oe/r;break;case i:U=oe/e;break;case s:U=oe/t;break;default:U=oe}return W?U:N.a(U)},P.daysInMonth=function(){return this.endOf(u).$D},P.$locale=function(){return x[this.$L]},P.locale=function(L,Z){if(!L)return this.$L;var W=this.clone(),U=I(L,Z,!0);return U&&(W.$L=U),W},P.clone=function(){return N.w(this.$d,this)},P.toDate=function(){return new Date(this.valueOf())},P.toJSON=function(){return this.isValid()?this.toISOString():null},P.toISOString=function(){return this.$d.toISOString()},P.toString=function(){return this.$d.toUTCString()},M}(),B=k.prototype;return R.prototype=B,[["$ms",n],["$s",s],["$m",i],["$H",a],["$W",o],["$M",u],["$y",d],["$D",f]].forEach(function(M){B[M[1]]=function(P){return this.$g(P,M[0],M[1])}}),R.extend=function(M,P){return M.$i||(M(P,k,R),M.$i=!0),R},R.locale=I,R.isDayjs=T,R.unix=function(M){return R(1e3*M)},R.en=x[b],R.Ls=x,R.p={},R})});var xr=_((u4,mBe)=>{(function(t,e){typeof u4=="object"?mBe.exports=u4=e():typeof define=="function"&&define.amd?define([],e):t.CryptoJS=e()})(u4,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(A){var b;return g.prototype=A,b=new g,g.prototype=null,b}}(),a={},o=a.lib={},c=o.Base=function(){return{extend:function(g){var A=i(this);return g&&A.mixIn(g),(!A.hasOwnProperty("init")||this.init===A.init)&&(A.init=function(){A.$super.init.apply(this,arguments)}),A.init.prototype=A,A.$super=this,A},create:function(){var g=this.extend();return g.init.apply(g,arguments),g},init:function(){},mixIn:function(g){for(var A in g)g.hasOwnProperty(A)&&(this[A]=g[A]);g.hasOwnProperty("toString")&&(this.toString=g.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),u=o.WordArray=c.extend({init:function(g,A){g=this.words=g||[],A!=r?this.sigBytes=A:this.sigBytes=g.length*4},toString:function(g){return(g||d).stringify(this)},concat:function(g){var A=this.words,b=g.words,x=this.sigBytes,S=g.sigBytes;if(this.clamp(),x%4)for(var T=0;T<S;T++){var I=b[T>>>2]>>>24-T%4*8&255;A[x+T>>>2]|=I<<24-(x+T)%4*8}else for(var R=0;R<S;R+=4)A[x+R>>>2]=b[R>>>2];return this.sigBytes+=S,this},clamp:function(){var g=this.words,A=this.sigBytes;g[A>>>2]&=4294967295<<32-A%4*8,g.length=e.ceil(A/4)},clone:function(){var g=c.clone.call(this);return g.words=this.words.slice(0),g},random:function(g){for(var A=[],b=0;b<g;b+=4)A.push(s());return new u.init(A,g)}}),l=a.enc={},d=l.Hex={stringify:function(g){for(var A=g.words,b=g.sigBytes,x=[],S=0;S<b;S++){var T=A[S>>>2]>>>24-S%4*8&255;x.push((T>>>4).toString(16)),x.push((T&15).toString(16))}return x.join("")},parse:function(g){for(var A=g.length,b=[],x=0;x<A;x+=2)b[x>>>3]|=parseInt(g.substr(x,2),16)<<24-x%8*4;return new u.init(b,A/2)}},f=l.Latin1={stringify:function(g){for(var A=g.words,b=g.sigBytes,x=[],S=0;S<b;S++){var T=A[S>>>2]>>>24-S%4*8&255;x.push(String.fromCharCode(T))}return x.join("")},parse:function(g){for(var A=g.length,b=[],x=0;x<A;x++)b[x>>>2]|=(g.charCodeAt(x)&255)<<24-x%4*8;return new u.init(b,A)}},m=l.Utf8={stringify:function(g){try{return decodeURIComponent(escape(f.stringify(g)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(g){return f.parse(unescape(encodeURIComponent(g)))}},p=o.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(g){typeof g=="string"&&(g=m.parse(g)),this._data.concat(g),this._nDataBytes+=g.sigBytes},_process:function(g){var A,b=this._data,x=b.words,S=b.sigBytes,T=this.blockSize,I=T*4,R=S/I;g?R=e.ceil(R):R=e.max((R|0)-this._minBufferSize,0);var N=R*T,k=e.min(N*4,S);if(N){for(var B=0;B<N;B+=T)this._doProcessBlock(x,B);A=x.splice(0,N),b.sigBytes-=k}return new u.init(A,k)},clone:function(){var g=c.clone.call(this);return g._data=this._data.clone(),g},_minBufferSize:0}),h=o.Hasher=p.extend({cfg:c.extend(),init:function(g){this.cfg=this.cfg.extend(g),this.reset()},reset:function(){p.reset.call(this),this._doReset()},update:function(g){return this._append(g),this._process(),this},finalize:function(g){g&&this._append(g);var A=this._doFinalize();return A},blockSize:512/32,_createHelper:function(g){return function(A,b){return new g.init(b).finalize(A)}},_createHmacHelper:function(g){return function(A,b){return new y.HMAC.init(g,b).finalize(A)}}}),y=a.algo={};return a}(Math);return t})});var LI=_((l4,hBe)=>{(function(t,e){typeof l4=="object"?hBe.exports=l4=e(xr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(l4,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<l;f++){var m=u[f];d.push(m.high),d.push(m.low)}return i.create(d,this.sigBytes)},clone:function(){for(var u=s.clone.call(this),l=u.words=this.words.slice(0),d=l.length,f=0;f<d;f++)l[f]=l[f].clone();return u}})}(),t})});var yBe=_((d4,gBe)=>{(function(t,e){typeof d4=="object"?gBe.exports=d4=e(xr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(d4,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<o;u++)c[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 xBe=_((f4,ABe)=>{(function(t,e){typeof f4=="object"?ABe.exports=f4=e(xr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(f4,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<u;d+=2){var f=c[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<c;l++)u[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<u;d+=2){var f=a(c[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<c;l++)u[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 B0=_((p4,bBe)=>{(function(t,e){typeof p4=="object"?bBe.exports=p4=e(xr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(p4,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<u;f+=3)for(var m=c[f>>>2]>>>24-f%4*8&255,p=c[f+1>>>2]>>>24-(f+1)%4*8&255,h=c[f+2>>>2]>>>24-(f+2)%4*8&255,y=m<<16|p<<8|h,g=0;g<4&&f+g*.75<u;g++)d.push(l.charAt(y>>>6*(3-g)&63));var A=l.charAt(64);if(A)for(;d.length%4;)d.push(A);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<u.length;d++)l[u.charCodeAt(d)]=d}var f=u.charAt(64);if(f){var m=o.indexOf(f);m!==-1&&(c=m)}return a(o,c,l)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="};function a(o,c,u){for(var l=[],d=0,f=0;f<c;f++)if(f%4){var m=u[o.charCodeAt(f-1)]<<f%4*2,p=u[o.charCodeAt(f)]>>>6-f%4*2,h=m|p;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64})});var EBe=_((m4,_Be)=>{(function(t,e){typeof m4=="object"?_Be.exports=m4=e(xr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(m4,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=[],m=0;m<l;m+=3)for(var p=u[m>>>2]>>>24-m%4*8&255,h=u[m+1>>>2]>>>24-(m+1)%4*8&255,y=u[m+2>>>2]>>>24-(m+2)%4*8&255,g=p<<16|h<<8|y,A=0;A<4&&m+A*.75<l;A++)f.push(d.charAt(g>>>6*(3-A)&63));var b=d.charAt(64);if(b)for(;f.length%4;)f.push(b);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<l.length;f++)d[l.charCodeAt(f)]=f}var m=l.charAt(64);if(m){var p=o.indexOf(m);p!==-1&&(u=p)}return a(o,u,d)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_safe_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"};function a(o,c,u){for(var l=[],d=0,f=0;f<c;f++)if(f%4){var m=u[o.charCodeAt(f-1)]<<f%4*2,p=u[o.charCodeAt(f)]>>>6-f%4*2,h=m|p;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64url})});var L0=_((h4,vBe)=>{(function(t,e){typeof h4=="object"?vBe.exports=h4=e(xr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(h4,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[];(function(){for(var m=0;m<64;m++)o[m]=e.abs(e.sin(m+1))*4294967296|0})();var c=a.MD5=i.extend({_doReset:function(){this._hash=new s.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(m,p){for(var h=0;h<16;h++){var y=p+h,g=m[y];m[y]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360}var A=this._hash.words,b=m[p+0],x=m[p+1],S=m[p+2],T=m[p+3],I=m[p+4],R=m[p+5],N=m[p+6],k=m[p+7],B=m[p+8],M=m[p+9],P=m[p+10],L=m[p+11],Z=m[p+12],W=m[p+13],U=m[p+14],V=m[p+15],j=A[0],J=A[1],se=A[2],oe=A[3];j=u(j,J,se,oe,b,7,o[0]),oe=u(oe,j,J,se,x,12,o[1]),se=u(se,oe,j,J,S,17,o[2]),J=u(J,se,oe,j,T,22,o[3]),j=u(j,J,se,oe,I,7,o[4]),oe=u(oe,j,J,se,R,12,o[5]),se=u(se,oe,j,J,N,17,o[6]),J=u(J,se,oe,j,k,22,o[7]),j=u(j,J,se,oe,B,7,o[8]),oe=u(oe,j,J,se,M,12,o[9]),se=u(se,oe,j,J,P,17,o[10]),J=u(J,se,oe,j,L,22,o[11]),j=u(j,J,se,oe,Z,7,o[12]),oe=u(oe,j,J,se,W,12,o[13]),se=u(se,oe,j,J,U,17,o[14]),J=u(J,se,oe,j,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,L,14,o[18]),J=l(J,se,oe,j,b,20,o[19]),j=l(j,J,se,oe,R,5,o[20]),oe=l(oe,j,J,se,P,9,o[21]),se=l(se,oe,j,J,V,14,o[22]),J=l(J,se,oe,j,I,20,o[23]),j=l(j,J,se,oe,M,5,o[24]),oe=l(oe,j,J,se,U,9,o[25]),se=l(se,oe,j,J,T,14,o[26]),J=l(J,se,oe,j,B,20,o[27]),j=l(j,J,se,oe,W,5,o[28]),oe=l(oe,j,J,se,S,9,o[29]),se=l(se,oe,j,J,k,14,o[30]),J=l(J,se,oe,j,Z,20,o[31]),j=d(j,J,se,oe,R,4,o[32]),oe=d(oe,j,J,se,B,11,o[33]),se=d(se,oe,j,J,L,16,o[34]),J=d(J,se,oe,j,U,23,o[35]),j=d(j,J,se,oe,x,4,o[36]),oe=d(oe,j,J,se,I,11,o[37]),se=d(se,oe,j,J,k,16,o[38]),J=d(J,se,oe,j,P,23,o[39]),j=d(j,J,se,oe,W,4,o[40]),oe=d(oe,j,J,se,b,11,o[41]),se=d(se,oe,j,J,T,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,S,23,o[47]),j=f(j,J,se,oe,b,6,o[48]),oe=f(oe,j,J,se,k,10,o[49]),se=f(se,oe,j,J,U,15,o[50]),J=f(J,se,oe,j,R,21,o[51]),j=f(j,J,se,oe,Z,6,o[52]),oe=f(oe,j,J,se,T,10,o[53]),se=f(se,oe,j,J,P,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,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,I,6,o[60]),oe=f(oe,j,J,se,L,10,o[61]),se=f(se,oe,j,J,S,15,o[62]),J=f(J,se,oe,j,M,21,o[63]),A[0]=A[0]+j|0,A[1]=A[1]+J|0,A[2]=A[2]+se|0,A[3]=A[3]+oe|0},_doFinalize:function(){var m=this._data,p=m.words,h=this._nDataBytes*8,y=m.sigBytes*8;p[y>>>5]|=128<<24-y%32;var g=e.floor(h/4294967296),A=h;p[(y+64>>>9<<4)+15]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,p[(y+64>>>9<<4)+14]=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360,m.sigBytes=(p.length+1)*4,this._process();for(var b=this._hash,x=b.words,S=0;S<4;S++){var T=x[S];x[S]=(T<<8|T>>>24)&16711935|(T<<24|T>>>8)&4278255360}return b},clone:function(){var m=i.clone.call(this);return m._hash=this._hash.clone(),m}});function u(m,p,h,y,g,A,b){var x=m+(p&h|~p&y)+g+b;return(x<<A|x>>>32-A)+p}function l(m,p,h,y,g,A,b){var x=m+(p&y|h&~y)+g+b;return(x<<A|x>>>32-A)+p}function d(m,p,h,y,g,A,b){var x=m+(p^h^y)+g+b;return(x<<A|x>>>32-A)+p}function f(m,p,h,y,g,A,b){var x=m+(h^(p|~y))+g+b;return(x<<A|x>>>32-A)+p}r.MD5=i._createHelper(c),r.HmacMD5=i._createHmacHelper(c)}(Math),t.MD5})});var HV=_((g4,SBe)=>{(function(t,e){typeof g4=="object"?SBe.exports=g4=e(xr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(g4,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],m=l[2],p=l[3],h=l[4],y=0;y<80;y++){if(y<16)a[y]=c[u+y]|0;else{var g=a[y-3]^a[y-8]^a[y-14]^a[y-16];a[y]=g<<1|g>>>31}var A=(d<<5|d>>>27)+h+a[y];y<20?A+=(f&m|~f&p)+1518500249:y<40?A+=(f^m^p)+1859775393:y<60?A+=(f&m|f&p|m&p)-1894007588:A+=(f^m^p)-899497514,h=p,p=m,m=f<<30|f>>>2,f=d,d=A}l[0]=l[0]+d|0,l[1]=l[1]+f|0,l[2]=l[2]+m|0,l[3]=l[3]+p|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 A4=_((y4,IBe)=>{(function(t,e){typeof y4=="object"?IBe.exports=y4=e(xr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(y4,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[],c=[];(function(){function d(h){for(var y=e.sqrt(h),g=2;g<=y;g++)if(!(h%g))return!1;return!0}function f(h){return(h-(h|0))*4294967296|0}for(var m=2,p=0;p<64;)d(m)&&(p<8&&(o[p]=f(e.pow(m,1/2))),c[p]=f(e.pow(m,1/3)),p++),m++})();var u=[],l=a.SHA256=i.extend({_doReset:function(){this._hash=new s.init(o.slice(0))},_doProcessBlock:function(d,f){for(var m=this._hash.words,p=m[0],h=m[1],y=m[2],g=m[3],A=m[4],b=m[5],x=m[6],S=m[7],T=0;T<64;T++){if(T<16)u[T]=d[f+T]|0;else{var I=u[T-15],R=(I<<25|I>>>7)^(I<<14|I>>>18)^I>>>3,N=u[T-2],k=(N<<15|N>>>17)^(N<<13|N>>>19)^N>>>10;u[T]=R+u[T-7]+k+u[T-16]}var B=A&b^~A&x,M=p&h^p&y^h&y,P=(p<<30|p>>>2)^(p<<19|p>>>13)^(p<<10|p>>>22),L=(A<<26|A>>>6)^(A<<21|A>>>11)^(A<<7|A>>>25),Z=S+L+B+c[T]+u[T],W=P+M;S=x,x=b,b=A,A=g+Z|0,g=y,y=h,h=p,p=Z+W|0}m[0]=m[0]+p|0,m[1]=m[1]+h|0,m[2]=m[2]+y|0,m[3]=m[3]+g|0,m[4]=m[4]+A|0,m[5]=m[5]+b|0,m[6]=m[6]+x|0,m[7]=m[7]+S|0},_doFinalize:function(){var d=this._data,f=d.words,m=this._nDataBytes*8,p=d.sigBytes*8;return f[p>>>5]|=128<<24-p%32,f[(p+64>>>9<<4)+14]=e.floor(m/4294967296),f[(p+64>>>9<<4)+15]=m,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 TBe=_((x4,CBe)=>{(function(t,e,r){typeof x4=="object"?CBe.exports=x4=e(xr(),A4()):typeof define=="function"&&define.amd?define(["./core","./sha256"],e):e(t.CryptoJS)})(x4,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 GV=_((b4,wBe)=>{(function(t,e,r){typeof b4=="object"?wBe.exports=b4=e(xr(),LI()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(b4,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,m){for(var p=this._hash.words,h=p[0],y=p[1],g=p[2],A=p[3],b=p[4],x=p[5],S=p[6],T=p[7],I=h.high,R=h.low,N=y.high,k=y.low,B=g.high,M=g.low,P=A.high,L=A.low,Z=b.high,W=b.low,U=x.high,V=x.low,j=S.high,J=S.low,se=T.high,oe=T.low,ue=I,Te=R,Ne=N,je=k,Fe=B,ve=M,F=P,G=L,K=Z,q=W,Q=U,ee=V,ne=j,re=J,X=se,ie=oe,ce=0;ce<80;ce++){var me,Oe,Pe=l[ce];if(ce<16)Oe=Pe.high=f[m+ce*2]|0,me=Pe.low=f[m+ce*2+1]|0;else{var qe=l[ce-15],Ye=qe.high,Je=qe.low,et=(Ye>>>1|Je<<31)^(Ye>>>8|Je<<24)^Ye>>>7,st=(Je>>>1|Ye<<31)^(Je>>>8|Ye<<24)^(Je>>>7|Ye<<25),ut=l[ce-2],rt=ut.high,Pt=ut.low,dt=(rt>>>19|Pt<<13)^(rt<<3|Pt>>>29)^rt>>>6,Be=(Pt>>>19|rt<<13)^(Pt<<3|rt>>>29)^(Pt>>>6|rt<<26),Xe=l[ce-7],pt=Xe.high,nt=Xe.low,bt=l[ce-16],An=bt.high,St=bt.low;me=st+nt,Oe=et+pt+(me>>>0<st>>>0?1:0),me=me+Be,Oe=Oe+dt+(me>>>0<Be>>>0?1:0),me=me+St,Oe=Oe+An+(me>>>0<St>>>0?1:0),Pe.high=Oe,Pe.low=me}var Rr=K&Q^~K&ne,Qs=q&ee^~q&re,Lr=ue&Ne^ue&Fe^Ne&Fe,Hs=Te&je^Te&ve^je&ve,Gs=(ue>>>28|Te<<4)^(ue<<30|Te>>>2)^(ue<<25|Te>>>7),Es=(Te>>>28|ue<<4)^(Te<<30|ue>>>2)^(Te<<25|ue>>>7),Vs=(K>>>14|q<<18)^(K>>>18|q<<14)^(K<<23|q>>>9),zu=(q>>>14|K<<18)^(q>>>18|K<<14)^(q<<23|K>>>9),To=u[ce],Kc=To.high,La=To.low,xn=ie+zu,Ma=X+Vs+(xn>>>0<ie>>>0?1:0),xn=xn+Qs,Ma=Ma+Rr+(xn>>>0<Qs>>>0?1:0),xn=xn+La,Ma=Ma+Kc+(xn>>>0<La>>>0?1:0),xn=xn+me,Ma=Ma+Oe+(xn>>>0<me>>>0?1:0),Id=Es+Hs,wo=Gs+Lr+(Id>>>0<Es>>>0?1:0);X=ne,ie=re,ne=Q,re=ee,Q=K,ee=q,q=G+xn|0,K=F+Ma+(q>>>0<G>>>0?1:0)|0,F=Fe,G=ve,Fe=Ne,ve=je,Ne=ue,je=Te,Te=xn+Id|0,ue=Ma+wo+(Te>>>0<xn>>>0?1:0)|0}R=h.low=R+Te,h.high=I+ue+(R>>>0<Te>>>0?1:0),k=y.low=k+je,y.high=N+Ne+(k>>>0<je>>>0?1:0),M=g.low=M+ve,g.high=B+Fe+(M>>>0<ve>>>0?1:0),L=A.low=L+G,A.high=P+F+(L>>>0<G>>>0?1:0),W=b.low=W+q,b.high=Z+K+(W>>>0<q>>>0?1:0),V=x.low=V+ee,x.high=U+Q+(V>>>0<ee>>>0?1:0),J=S.low=J+re,S.high=j+ne+(J>>>0<re>>>0?1:0),oe=T.low=oe+ie,T.high=se+X+(oe>>>0<ie>>>0?1:0)},_doFinalize:function(){var f=this._data,m=f.words,p=this._nDataBytes*8,h=f.sigBytes*8;m[h>>>5]|=128<<24-h%32,m[(h+128>>>10<<5)+30]=Math.floor(p/4294967296),m[(h+128>>>10<<5)+31]=p,f.sigBytes=m.length*4,this._process();var y=this._hash.toX32();return y},clone:function(){var f=n.clone.call(this);return f._hash=this._hash.clone(),f},blockSize:1024/32});e.SHA512=n._createHelper(d),e.HmacSHA512=n._createHmacHelper(d)}(),t.SHA512})});var NBe=_((_4,RBe)=>{(function(t,e,r){typeof _4=="object"?RBe.exports=_4=e(xr(),LI(),GV()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./sha512"],e):e(t.CryptoJS)})(_4,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 kBe=_((E4,OBe)=>{(function(t,e,r){typeof E4=="object"?OBe.exports=E4=e(xr(),LI()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(E4,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 p=1,h=0,y=0;y<24;y++){u[p+5*h]=(y+1)*(y+2)/2%64;var g=h%5,A=(2*p+3*h)%5;p=g,h=A}for(var p=0;p<5;p++)for(var h=0;h<5;h++)l[p+5*h]=h+(2*p+3*h)%5*5;for(var b=1,x=0;x<24;x++){for(var S=0,T=0,I=0;I<7;I++){if(b&1){var R=(1<<I)-1;R<32?T^=1<<R:S^=1<<R-32}b&128?b=b<<1^113:b<<=1}d[x]=o.create(S,T)}})();var f=[];(function(){for(var p=0;p<25;p++)f[p]=o.create()})();var m=c.SHA3=i.extend({cfg:i.cfg.extend({outputLength:512}),_doReset:function(){for(var p=this._state=[],h=0;h<25;h++)p[h]=new o.init;this.blockSize=(1600-2*this.cfg.outputLength)/32},_doProcessBlock:function(p,h){for(var y=this._state,g=this.blockSize/2,A=0;A<g;A++){var b=p[h+2*A],x=p[h+2*A+1];b=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360,x=(x<<8|x>>>24)&16711935|(x<<24|x>>>8)&4278255360;var S=y[A];S.high^=x,S.low^=b}for(var T=0;T<24;T++){for(var I=0;I<5;I++){for(var R=0,N=0,k=0;k<5;k++){var S=y[I+5*k];R^=S.high,N^=S.low}var B=f[I];B.high=R,B.low=N}for(var I=0;I<5;I++)for(var M=f[(I+4)%5],P=f[(I+1)%5],L=P.high,Z=P.low,R=M.high^(L<<1|Z>>>31),N=M.low^(Z<<1|L>>>31),k=0;k<5;k++){var S=y[I+5*k];S.high^=R,S.low^=N}for(var W=1;W<25;W++){var R,N,S=y[W],U=S.high,V=S.low,j=u[W];j<32?(R=U<<j|V>>>32-j,N=V<<j|U>>>32-j):(R=V<<j-32|U>>>64-j,N=U<<j-32|V>>>64-j);var J=f[l[W]];J.high=R,J.low=N}var se=f[0],oe=y[0];se.high=oe.high,se.low=oe.low;for(var I=0;I<5;I++)for(var k=0;k<5;k++){var W=I+5*k,S=y[W],ue=f[W],Te=f[(I+1)%5+5*k],Ne=f[(I+2)%5+5*k];S.high=ue.high^~Te.high&Ne.high,S.low=ue.low^~Te.low&Ne.low}var S=y[0],je=d[T];S.high^=je.high,S.low^=je.low}},_doFinalize:function(){var p=this._data,h=p.words,y=this._nDataBytes*8,g=p.sigBytes*8,A=this.blockSize*32;h[g>>>5]|=1<<24-g%32,h[(e.ceil((g+1)/A)*A>>>5)-1]|=128,p.sigBytes=h.length*4,this._process();for(var b=this._state,x=this.cfg.outputLength/8,S=x/8,T=[],I=0;I<S;I++){var R=b[I],N=R.high,k=R.low;N=(N<<8|N>>>24)&16711935|(N<<24|N>>>8)&4278255360,k=(k<<8|k>>>24)&16711935|(k<<24|k>>>8)&4278255360,T.push(k),T.push(N)}return new s.init(T,x)},clone:function(){for(var p=i.clone.call(this),h=p._state=this._state.slice(0),y=0;y<25;y++)h[y]=h[y].clone();return p}});r.SHA3=i._createHelper(m),r.HmacSHA3=i._createHmacHelper(m)}(Math),t.SHA3})});var DBe=_((v4,PBe)=>{(function(t,e){typeof v4=="object"?PBe.exports=v4=e(xr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(v4,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]),m=a.RIPEMD160=i.extend({_doReset:function(){this._hash=s.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(x,S){for(var T=0;T<16;T++){var I=S+T,R=x[I];x[I]=(R<<8|R>>>24)&16711935|(R<<24|R>>>8)&4278255360}var N=this._hash.words,k=d.words,B=f.words,M=o.words,P=c.words,L=u.words,Z=l.words,W,U,V,j,J,se,oe,ue,Te,Ne;se=W=N[0],oe=U=N[1],ue=V=N[2],Te=j=N[3],Ne=J=N[4];for(var je,T=0;T<80;T+=1)je=W+x[S+M[T]]|0,T<16?je+=p(U,V,j)+k[0]:T<32?je+=h(U,V,j)+k[1]:T<48?je+=y(U,V,j)+k[2]:T<64?je+=g(U,V,j)+k[3]:je+=A(U,V,j)+k[4],je=je|0,je=b(je,L[T]),je=je+J|0,W=J,J=j,j=b(V,10),V=U,U=je,je=se+x[S+P[T]]|0,T<16?je+=A(oe,ue,Te)+B[0]:T<32?je+=g(oe,ue,Te)+B[1]:T<48?je+=y(oe,ue,Te)+B[2]:T<64?je+=h(oe,ue,Te)+B[3]:je+=p(oe,ue,Te)+B[4],je=je|0,je=b(je,Z[T]),je=je+Ne|0,se=Ne,Ne=Te,Te=b(ue,10),ue=oe,oe=je;je=N[1]+V+Te|0,N[1]=N[2]+j+Ne|0,N[2]=N[3]+J+se|0,N[3]=N[4]+W+oe|0,N[4]=N[0]+U+ue|0,N[0]=je},_doFinalize:function(){var x=this._data,S=x.words,T=this._nDataBytes*8,I=x.sigBytes*8;S[I>>>5]|=128<<24-I%32,S[(I+64>>>9<<4)+14]=(T<<8|T>>>24)&16711935|(T<<24|T>>>8)&4278255360,x.sigBytes=(S.length+1)*4,this._process();for(var R=this._hash,N=R.words,k=0;k<5;k++){var B=N[k];N[k]=(B<<8|B>>>24)&16711935|(B<<24|B>>>8)&4278255360}return R},clone:function(){var x=i.clone.call(this);return x._hash=this._hash.clone(),x}});function p(x,S,T){return x^S^T}function h(x,S,T){return x&S|~x&T}function y(x,S,T){return(x|~S)^T}function g(x,S,T){return x&T|S&~T}function A(x,S,T){return x^(S|~T)}function b(x,S){return x<<S|x>>>32-S}r.RIPEMD160=i._createHelper(m),r.HmacRIPEMD160=i._createHmacHelper(m)}(Math),t.RIPEMD160})});var I4=_((S4,BBe)=>{(function(t,e){typeof S4=="object"?BBe.exports=S4=e(xr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(S4,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(),m=this._iKey=u.clone(),p=f.words,h=m.words,y=0;y<l;y++)p[y]^=1549556828,h[y]^=909522486;f.sigBytes=m.sigBytes=d,this.reset()},reset:function(){var c=this._hasher;c.reset(),c.update(this._iKey)},update:function(c){return this._hasher.update(c),this},finalize:function(c){var u=this._hasher,l=u.finalize(c);u.reset();var d=u.finalize(this._oKey.clone().concat(l));return d}})})()})});var MBe=_((C4,LBe)=>{(function(t,e,r){typeof C4=="object"?LBe.exports=C4=e(xr(),A4(),I4()):typeof define=="function"&&define.amd?define(["./core","./sha256","./hmac"],e):e(t.CryptoJS)})(C4,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),m=s.create(),p=s.create([1]),h=m.words,y=p.words,g=d.keySize,A=d.iterations;h.length<g;){var b=f.update(l).finalize(p);f.reset();for(var x=b.words,S=x.length,T=b,I=1;I<A;I++){T=f.finalize(T),f.reset();for(var R=T.words,N=0;N<S;N++)x[N]^=R[N]}m.concat(b),y[0]++}return m.sigBytes=g*4,m}});e.PBKDF2=function(u,l,d){return c.create(d).compute(u,l)}}(),t.PBKDF2})});var gf=_((T4,WBe)=>{(function(t,e,r){typeof T4=="object"?WBe.exports=T4=e(xr(),HV(),I4()):typeof define=="function"&&define.amd?define(["./core","./sha1","./hmac"],e):e(t.CryptoJS)})(T4,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(),m=s.create(),p=m.words,h=d.keySize,y=d.iterations;p.length<h;){l&&f.update(l),l=f.update(c).finalize(u),f.reset();for(var g=1;g<y;g++)l=f.finalize(l),f.reset();m.concat(l)}return m.sigBytes=h*4,m}});e.EvpKDF=function(c,u,l){return o.create(l).compute(c,u)}}(),t.EvpKDF})});var Bs=_((w4,$Be)=>{(function(t,e,r){typeof w4=="object"?$Be.exports=w4=e(xr(),gf()):typeof define=="function"&&define.amd?define(["./core","./evpkdf"],e):e(t.CryptoJS)})(w4,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,P){this.cfg=this.cfg.extend(P),this._xformMode=B,this._key=M,this.reset()},reset:function(){a.reset.call(this),this._doReset()},process:function(B){return this._append(B),this._process()},finalize:function(B){B&&this._append(B);var M=this._doFinalize();return M},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function B(M){return typeof M=="string"?k:I}return function(M){return{encrypt:function(P,L,Z){return B(L).encrypt(M,P,L,Z)},decrypt:function(P,L,Z){return B(L).decrypt(M,P,L,Z)}}}}()}),m=n.StreamCipher=f.extend({_doFinalize:function(){var B=this._process(!0);return B},blockSize:1}),p=r.mode={},h=n.BlockCipherMode=s.extend({createEncryptor:function(B,M){return this.Encryptor.create(B,M)},createDecryptor:function(B,M){return this.Decryptor.create(B,M)},init:function(B,M){this._cipher=B,this._iv=M}}),y=p.CBC=function(){var B=h.extend();B.Encryptor=B.extend({processBlock:function(P,L){var Z=this._cipher,W=Z.blockSize;M.call(this,P,L,W),Z.encryptBlock(P,L),this._prevBlock=P.slice(L,L+W)}}),B.Decryptor=B.extend({processBlock:function(P,L){var Z=this._cipher,W=Z.blockSize,U=P.slice(L,L+W);Z.decryptBlock(P,L),M.call(this,P,L,W),this._prevBlock=U}});function M(P,L,Z){var W,U=this._iv;U?(W=U,this._iv=e):W=this._prevBlock;for(var V=0;V<Z;V++)P[L+V]^=W[V]}return B}(),g=r.pad={},A=g.Pkcs7={pad:function(B,M){for(var P=M*4,L=P-B.sigBytes%P,Z=L<<24|L<<16|L<<8|L,W=[],U=0;U<L;U+=4)W.push(Z);var V=i.create(W,L);B.concat(V)},unpad:function(B){var M=B.words[B.sigBytes-1>>>2]&255;B.sigBytes-=M}},b=n.BlockCipher=f.extend({cfg:f.cfg.extend({mode:y,padding:A}),reset:function(){var B;f.reset.call(this);var M=this.cfg,P=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,P&&P.words):(this._mode=B.call(L,this,P&&P.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)}}),S=r.format={},T=S.OpenSSL={stringify:function(B){var M,P=B.ciphertext,L=B.salt;return L?M=i.create([1398893684,1701076831]).concat(L).concat(P):M=P,M.toString(u)},parse:function(B){var M,P=u.parse(B),L=P.words;return L[0]==1398893684&&L[1]==1701076831&&(M=i.create(L.slice(2,4)),L.splice(0,4),P.sigBytes-=16),x.create({ciphertext:P,salt:M})}},I=n.SerializableCipher=s.extend({cfg:s.extend({format:T}),encrypt:function(B,M,P,L){L=this.cfg.extend(L);var Z=B.createEncryptor(P,L),W=Z.finalize(M),U=Z.cfg;return x.create({ciphertext:W,key:P,iv:U.iv,algorithm:B,mode:U.mode,padding:U.padding,blockSize:B.blockSize,formatter:L.format})},decrypt:function(B,M,P,L){L=this.cfg.extend(L),M=this._parse(M,L.format);var Z=B.createDecryptor(P,L).finalize(M.ciphertext);return Z},_parse:function(B,M){return typeof B=="string"?M.parse(B,this):B}}),R=r.kdf={},N=R.OpenSSL={execute:function(B,M,P,L,Z){if(L||(L=i.random(64/8)),Z)var W=d.create({keySize:M+P,hasher:Z}).compute(B,L);else var W=d.create({keySize:M+P}).compute(B,L);var U=i.create(W.words.slice(M),P*4);return W.sigBytes=M*4,x.create({key:W,iv:U,salt:L})}},k=n.PasswordBasedCipher=I.extend({cfg:I.cfg.extend({kdf:N}),encrypt:function(B,M,P,L){L=this.cfg.extend(L);var Z=L.kdf.execute(P,B.keySize,B.ivSize,L.salt,L.hasher);L.iv=Z.iv;var W=I.encrypt.call(this,B,M,Z.key,L);return W.mixIn(Z),W},decrypt:function(B,M,P,L){L=this.cfg.extend(L),M=this._parse(M,L.format);var Z=L.kdf.execute(P,B.keySize,B.ivSize,M.salt,L.hasher);L.iv=Z.iv;var W=I.decrypt.call(this,B,M,Z.key,L);return W}})}()})});var FBe=_((R4,UBe)=>{(function(t,e,r){typeof R4=="object"?UBe.exports=R4=e(xr(),Bs()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(R4,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<i;u++)n[s+u]^=o[u]}return e}(),t.mode.CFB})});var jBe=_((N4,qBe)=>{(function(t,e,r){typeof N4=="object"?qBe.exports=N4=e(xr(),Bs()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(N4,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<a;l++)n[s+l]^=u[l]}});return e.Decryptor=r,e}(),t.mode.CTR})});var HBe=_((O4,QBe)=>{(function(t,e,r){typeof O4=="object"?QBe.exports=O4=e(xr(),Bs()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(O4,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<c;f++)i[a+f]^=d[f]}});return e.Decryptor=s,e}(),t.mode.CTRGladman})});var VBe=_((k4,GBe)=>{(function(t,e,r){typeof k4=="object"?GBe.exports=k4=e(xr(),Bs()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(k4,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<a;u++)n[s+u]^=c[u]}});return e.Decryptor=r,e}(),t.mode.OFB})});var zBe=_((P4,KBe)=>{(function(t,e,r){typeof P4=="object"?KBe.exports=P4=e(xr(),Bs()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(P4,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 JBe=_((D4,YBe)=>{(function(t,e,r){typeof D4=="object"?YBe.exports=D4=e(xr(),Bs()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(D4,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 ZBe=_((B4,XBe)=>{(function(t,e,r){typeof B4=="object"?XBe.exports=B4=e(xr(),Bs()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(B4,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 tLe=_((L4,eLe)=>{(function(t,e,r){typeof L4=="object"?eLe.exports=L4=e(xr(),Bs()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(L4,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 nLe=_((M4,rLe)=>{(function(t,e,r){typeof M4=="object"?rLe.exports=M4=e(xr(),Bs()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(M4,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 iLe=_((W4,sLe)=>{(function(t,e,r){typeof W4=="object"?sLe.exports=W4=e(xr(),Bs()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(W4,function(t){return t.pad.NoPadding={pad:function(){},unpad:function(){}},t.pad.NoPadding})});var oLe=_(($4,aLe)=>{(function(t,e,r){typeof $4=="object"?aLe.exports=$4=e(xr(),Bs()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})($4,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 uLe=_((U4,cLe)=>{(function(t,e,r){typeof U4=="object"?cLe.exports=U4=e(xr(),B0(),L0(),gf(),Bs()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(U4,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.algo,i=[],a=[],o=[],c=[],u=[],l=[],d=[],f=[],m=[],p=[];(function(){for(var g=[],A=0;A<256;A++)A<128?g[A]=A<<1:g[A]=A<<1^283;for(var b=0,x=0,A=0;A<256;A++){var S=x^x<<1^x<<2^x<<3^x<<4;S=S>>>8^S&255^99,i[b]=S,a[S]=b;var T=g[b],I=g[T],R=g[I],N=g[S]*257^S*16843008;o[b]=N<<24|N>>>8,c[b]=N<<16|N>>>16,u[b]=N<<8|N>>>24,l[b]=N;var N=R*16843009^I*65537^T*257^b*16843008;d[S]=N<<24|N>>>8,f[S]=N<<16|N>>>16,m[S]=N<<8|N>>>24,p[S]=N,b?(b=T^g[g[g[R^T]]],x^=g[g[x]]):b=x=1}})();var h=[0,1,2,4,8,16,32,64,128,27,54],y=s.AES=n.extend({_doReset:function(){var g;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var A=this._keyPriorReset=this._key,b=A.words,x=A.sigBytes/4,S=this._nRounds=x+6,T=(S+1)*4,I=this._keySchedule=[],R=0;R<T;R++)R<x?I[R]=b[R]:(g=I[R-1],R%x?x>6&&R%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[R/x|0]<<24),I[R]=I[R-x]^g);for(var N=this._invKeySchedule=[],k=0;k<T;k++){var R=T-k;if(k%4)var g=I[R];else var g=I[R-4];k<4||R<=4?N[k]=g:N[k]=d[i[g>>>24]]^f[i[g>>>16&255]]^m[i[g>>>8&255]]^p[i[g&255]]}}},encryptBlock:function(g,A){this._doCryptBlock(g,A,this._keySchedule,o,c,u,l,i)},decryptBlock:function(g,A){var b=g[A+1];g[A+1]=g[A+3],g[A+3]=b,this._doCryptBlock(g,A,this._invKeySchedule,d,f,m,p,a);var b=g[A+1];g[A+1]=g[A+3],g[A+3]=b},_doCryptBlock:function(g,A,b,x,S,T,I,R){for(var N=this._nRounds,k=g[A]^b[0],B=g[A+1]^b[1],M=g[A+2]^b[2],P=g[A+3]^b[3],L=4,Z=1;Z<N;Z++){var W=x[k>>>24]^S[B>>>16&255]^T[M>>>8&255]^I[P&255]^b[L++],U=x[B>>>24]^S[M>>>16&255]^T[P>>>8&255]^I[k&255]^b[L++],V=x[M>>>24]^S[P>>>16&255]^T[k>>>8&255]^I[B&255]^b[L++],j=x[P>>>24]^S[k>>>16&255]^T[B>>>8&255]^I[M&255]^b[L++];k=W,B=U,M=V,P=j}var W=(R[k>>>24]<<24|R[B>>>16&255]<<16|R[M>>>8&255]<<8|R[P&255])^b[L++],U=(R[B>>>24]<<24|R[M>>>16&255]<<16|R[P>>>8&255]<<8|R[k&255])^b[L++],V=(R[M>>>24]<<24|R[P>>>16&255]<<16|R[k>>>8&255]<<8|R[B&255])^b[L++],j=(R[P>>>24]<<24|R[k>>>16&255]<<16|R[B>>>8&255]<<8|R[M&255])^b[L++];g[A]=W,g[A+1]=U,g[A+2]=V,g[A+3]=j},keySize:256/32});e.AES=n._createHelper(y)}(),t.AES})});var dLe=_((F4,lLe)=>{(function(t,e,r){typeof F4=="object"?lLe.exports=F4=e(xr(),B0(),L0(),gf(),Bs()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(F4,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.BlockCipher,i=e.algo,a=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],o=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],c=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],u=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],l=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],d=i.DES=s.extend({_doReset:function(){for(var h=this._key,y=h.words,g=[],A=0;A<56;A++){var b=a[A]-1;g[A]=y[b>>>5]>>>31-b%32&1}for(var x=this._subKeys=[],S=0;S<16;S++){for(var T=x[S]=[],I=c[S],A=0;A<24;A++)T[A/6|0]|=g[(o[A]-1+I)%28]<<31-A%6,T[4+(A/6|0)]|=g[28+(o[A+24]-1+I)%28]<<31-A%6;T[0]=T[0]<<1|T[0]>>>31;for(var A=1;A<7;A++)T[A]=T[A]>>>(A-1)*4+3;T[7]=T[7]<<5|T[7]>>>27}for(var R=this._invSubKeys=[],A=0;A<16;A++)R[A]=x[15-A]},encryptBlock:function(h,y){this._doCryptBlock(h,y,this._subKeys)},decryptBlock:function(h,y){this._doCryptBlock(h,y,this._invSubKeys)},_doCryptBlock:function(h,y,g){this._lBlock=h[y],this._rBlock=h[y+1],f.call(this,4,252645135),f.call(this,16,65535),m.call(this,2,858993459),m.call(this,8,16711935),f.call(this,1,1431655765);for(var A=0;A<16;A++){for(var b=g[A],x=this._lBlock,S=this._rBlock,T=0,I=0;I<8;I++)T|=u[I][((S^b[I])&l[I])>>>0];this._lBlock=S,this._rBlock=x^T}var R=this._lBlock;this._lBlock=this._rBlock,this._rBlock=R,f.call(this,1,1431655765),m.call(this,8,16711935),m.call(this,2,858993459),f.call(this,16,65535),f.call(this,4,252645135),h[y]=this._lBlock,h[y+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function f(h,y){var g=(this._lBlock>>>h^this._rBlock)&y;this._rBlock^=g,this._lBlock^=g<<h}function m(h,y){var g=(this._rBlock>>>h^this._lBlock)&y;this._lBlock^=g,this._rBlock^=g<<h}e.DES=s._createHelper(d);var p=i.TripleDES=s.extend({_doReset:function(){var h=this._key,y=h.words;if(y.length!==2&&y.length!==4&&y.length<6)throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");var g=y.slice(0,2),A=y.length<4?y.slice(0,2):y.slice(2,4),b=y.length<6?y.slice(0,2):y.slice(4,6);this._des1=d.createEncryptor(n.create(g)),this._des2=d.createEncryptor(n.create(A)),this._des3=d.createEncryptor(n.create(b))},encryptBlock:function(h,y){this._des1.encryptBlock(h,y),this._des2.decryptBlock(h,y),this._des3.encryptBlock(h,y)},decryptBlock:function(h,y){this._des3.decryptBlock(h,y),this._des2.encryptBlock(h,y),this._des1.decryptBlock(h,y)},keySize:192/32,ivSize:64/32,blockSize:64/32});e.TripleDES=s._createHelper(p)}(),t.TripleDES})});var pLe=_((q4,fLe)=>{(function(t,e,r){typeof q4=="object"?fLe.exports=q4=e(xr(),B0(),L0(),gf(),Bs()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(q4,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,m=0;f<256;f++){var p=f%l,h=u[p>>>2]>>>24-p%4*8&255;m=(m+d[f]+h)%256;var y=d[f];d[f]=d[m],d[m]=y}this._i=this._j=0},_doProcessBlock:function(c,u){c[u]^=a.call(this)},keySize:256/32,ivSize:0});function a(){for(var c=this._S,u=this._i,l=this._j,d=0,f=0;f<4;f++){u=(u+1)%256,l=(l+c[u])%256;var m=c[u];c[u]=c[l],c[l]=m,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 hLe=_((j4,mLe)=>{(function(t,e,r){typeof j4=="object"?mLe.exports=j4=e(xr(),B0(),L0(),gf(),Bs()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(j4,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 m=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],p=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var f=0;f<4;f++)u.call(this);for(var f=0;f<8;f++)p[f]^=m[f+4&7];if(d){var h=d.words,y=h[0],g=h[1],A=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,b=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,x=A>>>16|b&4294901760,S=b<<16|A&65535;p[0]^=A,p[1]^=x,p[2]^=b,p[3]^=S,p[4]^=A,p[5]^=x,p[6]^=b,p[7]^=S;for(var f=0;f<4;f++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var m=0;m<4;m++)i[m]=(i[m]<<8|i[m]>>>24)&16711935|(i[m]<<24|i[m]>>>8)&4278255360,l[d+m]^=i[m]},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<a[0]>>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0<a[1]>>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0<a[2]>>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0<a[3]>>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0<a[4]>>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0<a[5]>>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0<a[6]>>>0?1:0)|0,this._b=d[7]>>>0<a[7]>>>0?1:0;for(var f=0;f<8;f++){var m=l[f]+d[f],p=m&65535,h=m>>>16,y=((p*p>>>17)+p*h>>>15)+h*h,g=((m&4294901760)*m|0)+((m&65535)*m|0);o[f]=y^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}e.Rabbit=n._createHelper(c)}(),t.Rabbit})});var yLe=_((Q4,gLe)=>{(function(t,e,r){typeof Q4=="object"?gLe.exports=Q4=e(xr(),B0(),L0(),gf(),Bs()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(Q4,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],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 p=0;p<4;p++)u.call(this);for(var p=0;p<8;p++)m[p]^=f[p+4&7];if(d){var h=d.words,y=h[0],g=h[1],A=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,b=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,x=A>>>16|b&4294901760,S=b<<16|A&65535;m[0]^=A,m[1]^=x,m[2]^=b,m[3]^=S,m[4]^=A,m[5]^=x,m[6]^=b,m[7]^=S;for(var p=0;p<4;p++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var m=0;m<4;m++)i[m]=(i[m]<<8|i[m]>>>24)&16711935|(i[m]<<24|i[m]>>>8)&4278255360,l[d+m]^=i[m]},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<a[0]>>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0<a[1]>>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0<a[2]>>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0<a[3]>>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0<a[4]>>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0<a[5]>>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0<a[6]>>>0?1:0)|0,this._b=d[7]>>>0<a[7]>>>0?1:0;for(var f=0;f<8;f++){var m=l[f]+d[f],p=m&65535,h=m>>>16,y=((p*p>>>17)+p*h>>>15)+h*h,g=((m&4294901760)*m|0)+((m&65535)*m|0);o[f]=y^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}e.RabbitLegacy=n._createHelper(c)}(),t.RabbitLegacy})});var xLe=_((H4,ALe)=>{(function(t,e,r){typeof H4=="object"?ALe.exports=H4=e(xr(),B0(),L0(),gf(),Bs()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(H4,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(p,h){let y=h>>24&255,g=h>>16&255,A=h>>8&255,b=h&255,x=p.sbox[0][y]+p.sbox[1][g];return x=x^p.sbox[2][A],x=x+p.sbox[3][b],x}function l(p,h,y){let g=h,A=y,b;for(let x=0;x<i;++x)g=g^p.pbox[x],A=u(p,g)^A,b=g,g=A,A=b;return b=g,g=A,A=b,A=A^p.pbox[i],g=g^p.pbox[i+1],{left:g,right:A}}function d(p,h,y){let g=h,A=y,b;for(let x=i+1;x>1;--x)g=g^p.pbox[x],A=u(p,g)^A,b=g,g=A,A=b;return b=g,g=A,A=b,A=A^p.pbox[1],g=g^p.pbox[0],{left:g,right:A}}function f(p,h,y){for(let S=0;S<4;S++){p.sbox[S]=[];for(let T=0;T<256;T++)p.sbox[S][T]=o[S][T]}let g=0;for(let S=0;S<i+2;S++)p.pbox[S]=a[S]^h[g],g++,g>=y&&(g=0);let A=0,b=0,x=0;for(let S=0;S<i+2;S+=2)x=l(p,A,b),A=x.left,b=x.right,p.pbox[S]=A,p.pbox[S+1]=b;for(let S=0;S<4;S++)for(let T=0;T<256;T+=2)x=l(p,A,b),A=x.left,b=x.right,p.sbox[S][T]=A,p.sbox[S][T+1]=b;return!0}var m=s.Blowfish=n.extend({_doReset:function(){if(this._keyPriorReset!==this._key){var p=this._keyPriorReset=this._key,h=p.words,y=p.sigBytes/4;f(c,h,y)}},encryptBlock:function(p,h){var y=l(c,p[h],p[h+1]);p[h]=y.left,p[h+1]=y.right},decryptBlock:function(p,h){var y=d(c,p[h],p[h+1]);p[h]=y.left,p[h+1]=y.right},blockSize:64/32,keySize:128/32,ivSize:64/32});e.Blowfish=n._createHelper(m)}(),t.Blowfish})});var Zn=_((G4,bLe)=>{(function(t,e,r){typeof G4=="object"?bLe.exports=G4=e(xr(),LI(),yBe(),xBe(),B0(),EBe(),L0(),HV(),A4(),TBe(),GV(),NBe(),kBe(),DBe(),I4(),MBe(),gf(),Bs(),FBe(),jBe(),HBe(),VBe(),zBe(),JBe(),ZBe(),tLe(),nLe(),iLe(),oLe(),uLe(),dLe(),pLe(),hLe(),yLe(),xLe()):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)})(G4,function(t){return t})});var $I=_(lr=>{"use strict";Object.defineProperty(lr,"__esModule",{value:!0});lr.getOptions=lr.setOptions=lr.hasOwnProp=lr.formatDate=lr.camelify=lr.splitByCommaWithPreservingQuotes=lr.trim=lr.splitAt=lr.tryCatch=lr.byteSequenceToHex=lr.hexToByteSequence=lr.toNumber=lr.INVALIDPLAYLIST=lr.CONDITIONALPARAMCHECK=lr.PARAMCHECK=lr.CONDITIONALASSERT=lr.ASSERT=lr.THROW=void 0;var WI={};function ng(t){if(!WI.strictMode){WI.silent||console.error(t.message);return}throw t}lr.THROW=ng;function qrr(t,...e){for(let[r,n]of e.entries())n||ng(new Error(`${t} : Failed at [${r}]`))}lr.ASSERT=qrr;function jrr(...t){for(let[e,[r,n]]of t.entries())r&&(n||ng(new Error(`Conditional Assert : Failed at [${e}]`)))}lr.CONDITIONALASSERT=jrr;function Qrr(...t){for(let[e,r]of t.entries())r===void 0&&ng(new Error(`Param Check : Failed at [${e}]`))}lr.PARAMCHECK=Qrr;function Hrr(...t){for(let[e,[r,n]]of t.entries())r&&n===void 0&&ng(new Error(`Conditional Param Check : Failed at [${e}]`))}lr.CONDITIONALPARAMCHECK=Hrr;function Grr(t){ng(new Error(`Invalid Playlist : ${t}`))}lr.INVALIDPLAYLIST=Grr;function SLe(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}lr.toNumber=SLe;function Vrr(t){(t.startsWith("0x")||t.startsWith("0X"))&&(t=t.slice(2));let e=[];for(let r=0;r<t.length;r+=2)e.push(SLe(t.slice(r,r+2),16));return Buffer.from(e)}lr.hexToByteSequence=Vrr;function Krr(t,e=0,r=t.length){r<=e&&ng(new Error(`end must be larger than start : start=${e}, end=${r}`));let n=[];for(let s=e;s<r;s++)n.push(`0${(t[s]&255).toString(16).toUpperCase()}`.slice(-2));return`0x${n.join("")}`}lr.byteSequenceToHex=Krr;function zrr(t,e){try{return t()}catch(r){return e(r)}}lr.tryCatch=zrr;function Yrr(t,e,r=0){let n=-1;for(let s=0,i=0;s<t.length;s++)if(t[s]===e){if(i++===r)return[t.slice(0,s),t.slice(s+1)];n=s}return n!==-1?[t.slice(0,n),t.slice(n+1)]:[t]}lr.splitAt=Yrr;function Jrr(t,e=" "){return!t||(t=t.trim(),e===" ")||(t.startsWith(e)&&(t=t.slice(1)),t.endsWith(e)&&(t=t.slice(0,-1))),t}lr.trim=Jrr;function Xrr(t){let e=[],r=!0,n=0,s=[];for(let i=0;i<t.length;i++){let a=t[i];if(r&&a===","){e.push(t.slice(n,i).trim()),n=i+1;continue}(a==='"'||a==="'")&&(r?(s.push(a),r=!1):a===s.at(-1)?(s.pop(),r=!0):s.push(a))}return e.push(t.slice(n).trim()),e}lr.splitByCommaWithPreservingQuotes=Xrr;function Zrr(t){let e=[],r=!1;for(let n of t){if(n==="-"||n==="_"){r=!0;continue}if(r){e.push(n.toUpperCase()),r=!1;continue}e.push(n.toLowerCase())}return e.join("")}lr.camelify=Zrr;function enr(t){let e=t.getUTCFullYear(),r=("0"+(t.getUTCMonth()+1)).slice(-2),n=("0"+t.getUTCDate()).slice(-2),s=("0"+t.getUTCHours()).slice(-2),i=("0"+t.getUTCMinutes()).slice(-2),a=("0"+t.getUTCSeconds()).slice(-2),o=("00"+t.getUTCMilliseconds()).slice(-3);return`${e}-${r}-${n}T${s}:${i}:${a}.${o}Z`}lr.formatDate=enr;function tnr(t,e){return Object.hasOwnProperty.call(t,e)}lr.hasOwnProp=tnr;function rnr(t={}){WI=Object.assign(WI,t)}lr.setOptions=rnr;function nnr(){return Object.assign({},WI)}lr.getOptions=nnr});var oK=_(br=>{"use strict";var snr=br&&br.__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]}),inr=br&&br.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),anr=br&&br.__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)&&snr(e,t,r);return inr(e,t),e};Object.defineProperty(br,"__esModule",{value:!0});br.RenditionReport=br.PrefetchSegment=br.PartialSegment=br.Segment=br.MediaPlaylist=br.MasterPlaylist=br.Playlist=br.SpliceInfo=br.DateRange=br.MediaInitializationSection=br.Key=br.SessionData=br.Variant=br.Rendition=void 0;var Is=anr($I()),KV=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}){Is.PARAMCHECK(e,n,a),Is.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}};br.Rendition=KV;var zV=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:m,audio:p=[],video:h=[],subtitles:y=[],closedCaptions:g=[],currentRenditions:A={audio:0,video:0,subtitles:0,closedCaptions:0}}){Is.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=m,this.audio=p,this.video=h,this.subtitles=y,this.closedCaptions=g,this.currentRenditions=A}};br.Variant=zV;var YV=class{constructor({id:e,value:r,uri:n,language:s}){Is.PARAMCHECK(e,r||n),Is.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}};br.SessionData=YV;var JV=class{constructor({method:e,uri:r,iv:n,format:s,formatVersion:i}){Is.PARAMCHECK(e),Is.CONDITIONALPARAMCHECK([e!=="NONE",r]),Is.CONDITIONALASSERT([e==="NONE",!(r||n||s||i)]),this.method=e,this.uri=r,this.iv=n,this.format=s,this.formatVersion=i}};br.Key=JV;var XV=class{constructor({hint:e=!1,uri:r,mimeType:n,byterange:s}){Is.PARAMCHECK(r),this.hint=e,this.uri=r,this.mimeType=n,this.byterange=s}};br.MediaInitializationSection=XV;var ZV=class{constructor({id:e,classId:r,start:n,end:s,duration:i,plannedDuration:a,endOnNext:o,attributes:c={}}){Is.PARAMCHECK(e),Is.CONDITIONALPARAMCHECK([o===!0,r]),Is.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}};br.DateRange=ZV;var eK=class{constructor({type:e,duration:r,tagName:n,value:s}){Is.PARAMCHECK(e),Is.CONDITIONALPARAMCHECK([e==="OUT",r]),Is.CONDITIONALPARAMCHECK([e==="RAW",n]),this.type=e,this.duration=r,this.tagName=n,this.value=s}};br.SpliceInfo=eK;var Ib=class{constructor(e){Is.PARAMCHECK(e),this.type=e}},UI=class extends Ib{constructor({isMasterPlaylist:e,uri:r,version:n,independentSegments:s=!1,start:i,source:a}){super("playlist"),Is.PARAMCHECK(e),this.isMasterPlaylist=e,this.uri=r,this.version=n,this.independentSegments=s,this.start=i,this.source=a}};br.Playlist=UI;var tK=class extends UI{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}};br.MasterPlaylist=tK;var rK=class extends UI{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:m=0,hash:p}=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=m,this.hash=p}};br.MediaPlaylist=rK;var nK=class extends Ib{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:m,markers:p=[],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=m,this.markers=p,this.parts=h}};br.Segment=nK;var sK=class extends Ib{constructor({hint:e=!1,uri:r,duration:n,independent:s,byterange:i,gap:a}){super("part"),Is.PARAMCHECK(r),this.hint=e,this.uri=r,this.duration=n,this.independent=s,this.duration=n,this.byterange=i,this.gap=a}};br.PartialSegment=sK;var iK=class extends Ib{constructor({uri:e,discontinuity:r,mediaSequenceNumber:n=0,discontinuitySequence:s=0,key:i}){super("prefetch"),Is.PARAMCHECK(e),this.uri=e,this.discontinuity=r,this.mediaSequenceNumber=n,this.discontinuitySequence=s,this.key=i}};br.PrefetchSegment=iK;var aK=class{constructor({uri:e,lastMSN:r,lastPart:n}){Is.PARAMCHECK(e),this.uri=e,this.lastMSN=r,this.lastPart=n}};br.RenditionReport=aK});var kLe=_(yf=>{"use strict";var onr=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]}),cnr=yf&&yf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),unr=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)&&onr(e,t,r);return cnr(e,t),e};Object.defineProperty(yf,"__esModule",{value:!0});var $e=unr($I()),ni=oK();function NLe(t){return $e.trim(t,'"')}function lnr(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 dnr(t){let e=$e.splitAt(t,",");return{duration:$e.toNumber(e[0]),title:decodeURIComponent(escape(e[1]))}}function OLe(t){let e=$e.splitAt(t,"@");return{length:$e.toNumber(e[0]),offset:e[1]?$e.toNumber(e[1]):-1}}function fnr(t){let e=$e.splitAt(t,"x");return{width:$e.toNumber(e[0]),height:$e.toNumber(e[1])}}function pnr(t){let e="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",r=t.split(",");r.length===0&&$e.INVALIDPLAYLIST(e);let n=[];for(let s of r){let[i,a]=$e.splitAt(s,":");if(!i||!a){$e.INVALIDPLAYLIST(e);continue}n.push({format:i,cpcList:a.split("/")})}return n}function mnr(t){let e=$e.hexToByteSequence(t);return e.length!==16&&$e.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),e}function hnr(t){return t.startsWith('"')?NLe(t):t.startsWith("0x")||t.startsWith("0X")?$e.hexToByteSequence(t):$e.toNumber(t)}function cK(t,e){e.IV&&t.compatibleVersion<2&&(t.compatibleVersion=2),(e.KEYFORMAT||e.KEYFORMATVERSIONS)&&t.compatibleVersion<5&&(t.compatibleVersion=5)}function ILe(t){let e={};for(let r of $e.splitByCommaWithPreservingQuotes(t)){let[n,s]=$e.splitAt(r,"="),i=NLe(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]=mnr(i);break;case"BYTERANGE":e[n]=OLe(i);break;case"RESOLUTION":e[n]=fnr(i);break;case"ALLOWED-CPC":e[n]=pnr(i);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":e[n]=i==="YES";break;case"DURATION":case"PLANNED-DURATION":case"BANDWIDTH":case"AVERAGE-BANDWIDTH":case"FRAME-RATE":case"TIME-OFFSET":case"CAN-SKIP-UNTIL":case"HOLD-BACK":case"PART-HOLD-BACK":case"PART-TARGET":case"BYTERANGE-START":case"BYTERANGE-LENGTH":case"LAST-MSN":case"LAST-PART":case"SKIPPED-SEGMENTS":case"SCORE":case"PROGRAM-ID":e[n]=$e.toNumber(i);break;default:n.startsWith("SCTE35-")?e[n]=$e.hexToByteSequence(i):n.startsWith("X-")?e[n]=hnr(s):(n==="VIDEO-RANGE"&&i!=="SDR"&&i!=="HLG"&&i!=="PQ"&&$e.INVALIDPLAYLIST(`VIDEO-RANGE: unknown value "${i}"`),e[n]=i)}}return e}function gnr(t,e){switch(t){case"EXTM3U":case"EXT-X-DISCONTINUITY":case"EXT-X-ENDLIST":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-CUE-IN":return[null,null];case"EXT-X-VERSION":case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":return[$e.toNumber(e),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(e))?[null,ILe(e)]:[$e.toNumber(e),null];case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-DATERANGE":case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":case"EXT-X-START":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return[null,ILe(e)];case"EXTINF":return[dnr(e),null];case"EXT-X-BYTERANGE":return[OLe(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 CLe(){$e.INVALIDPLAYLIST("The file contains both media and master playlist tags.")}function ynr(t){let e=t.indexOf(":");return e===-1?[t.slice(1).trim(),null]:[t.slice(1,e).trim(),t.slice(e+1).trim()]}function Anr({attributes:t}){return new ni.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 xnr(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 bnr(t,e,r){let n=Anr(e),s=t[$e.camelify(r)],i=xnr(s,n);i&&$e.INVALIDPLAYLIST(i),s.push(n),n.isDefault&&(t.currentRenditions[$e.camelify(r)]=s.length-1)}function _nr(t,e,r){for(let n of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])n==="CLOSED-CAPTIONS"&&t[n]==="NONE"?(r.isClosedCaptionsNone=!0,e.closedCaptions=[]):t[n]&&!e[$e.camelify(n)].some(s=>s.groupId===t[n])&&$e.INVALIDPLAYLIST(`${n} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${n}.`)}function TLe(t,e,r,n,s){let i=new ni.Variant({uri:r,bandwidth:e.BANDWIDTH,averageBandwidth:e["AVERAGE-BANDWIDTH"],score:e.SCORE,codecs:e.CODECS,resolution:e.RESOLUTION,frameRate:e["FRAME-RATE"],hdcpLevel:e["HDCP-LEVEL"],allowedCpc:e["ALLOWED-CPC"],videoRange:e["VIDEO-RANGE"],stableVariantId:e["STABLE-VARIANT-ID"],programId:e["PROGRAM-ID"]});for(let a of t)if(a.name==="EXT-X-MEDIA"){let o=a.attributes,c=o.TYPE;if((!c||!o["GROUP-ID"])&&$e.INVALIDPLAYLIST("EXT-X-MEDIA TYPE attribute is REQUIRED."),e[c]===o["GROUP-ID"]&&(bnr(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 _nr(e,i,s),i.isIFrameOnly=n,i}function Enr(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;r<t.iv.length;r++)if(t.iv[r]!==e.iv[r])return!1}else if(e.iv)return!1;return!(t.format!==e.format||t.formatVersion!==e.formatVersion)}function vnr(t,e){let r=new ni.MasterPlaylist,n=!1;for(let[s,{name:i,value:a,attributes:o}]of t.entries())if(i==="EXT-X-VERSION")r.version=a;else if(i==="EXT-X-STREAM-INF"){let c=t[s+1];(typeof c!="string"||c.startsWith("#EXT"))&&$e.INVALIDPLAYLIST("EXT-X-STREAM-INF must be followed by a URI line");let u=TLe(t,o,c,!1,e);u&&(typeof u.score=="number"&&(n=!0,u.score<0&&$e.INVALIDPLAYLIST("SCORE attribute on EXT-X-STREAM-INF must be positive decimal-floating-point number.")),r.variants.push(u))}else if(i==="EXT-X-I-FRAME-STREAM-INF"){let c=TLe(t,o,o.URI,!0,e);c&&r.variants.push(c)}else if(i==="EXT-X-SESSION-DATA"){let c=new ni.SessionData({id:o["DATA-ID"],value:o.VALUE,uri:o.URI,language:o.LANGUAGE});r.sessionDataList.some(u=>u.id===c.id&&u.language===c.language)&&$e.INVALIDPLAYLIST("A Playlist MUST NOT contain more than one EXT-X-SESSION-DATA tag with the same DATA-ID attribute and the same LANGUAGE attribute."),r.sessionDataList.push(c)}else if(i==="EXT-X-SESSION-KEY"){o.METHOD==="NONE"&&$e.INVALIDPLAYLIST("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE");let c=new ni.Key({method:o.METHOD,uri:o.URI,iv:o.IV,format:o.KEYFORMAT,formatVersion:o.KEYFORMATVERSIONS});r.sessionKeyList.some(u=>Enr(u,c))&&$e.INVALIDPLAYLIST("A Master Playlist MUST NOT contain more than one EXT-X-SESSION-KEY tag with the same METHOD, URI, IV, KEYFORMAT, and KEYFORMATVERSIONS attribute values."),cK(e,o),r.sessionKeyList.push(c)}else i==="EXT-X-INDEPENDENT-SEGMENTS"?(r.independentSegments&&$e.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0):i==="EXT-X-START"&&(r.start&&$e.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof o["TIME-OFFSET"]!="number"&&$e.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:o["TIME-OFFSET"],precise:o.PRECISE||!1});if(n)for(let s of r.variants)typeof s.score!="number"&&$e.INVALIDPLAYLIST("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute");if(e.isClosedCaptionsNone)for(let s of r.variants)s.closedCaptions.length>0&&$e.INVALIDPLAYLIST("If there is a variant with CLOSED-CAPTIONS attribute of NONE, all EXT-X-STREAM-INF tags MUST have this attribute with a value of NONE");return r}function wLe(t,e,r,n,s,i,a){let o=new ni.Segment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i}),c=!1,u=!1;for(let l=r;l<=n;l++){let{name:d,value:f,attributes:m}=t[l];if(d==="EXTINF")!Number.isInteger(f.duration)&&a.compatibleVersion<3&&(a.compatibleVersion=3),Math.round(f.duration)>a.targetDuration&&$e.INVALIDPLAYLIST("EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration"),o.duration=f.duration,o.title=f.title;else if(d==="EXT-X-BYTERANGE")a.compatibleVersion<4&&(a.compatibleVersion=4),o.byterange=f;else if(d==="EXT-X-DISCONTINUITY")o.parts.length>0&&$e.INVALIDPLAYLIST("EXT-X-DISCONTINUITY must appear before the first EXT-X-PART tag of the Parent Segment."),o.discontinuity=!0;else if(d==="EXT-X-KEY")o.parts.length>0&&$e.INVALIDPLAYLIST("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment."),cK(a,m),o.key=new ni.Key({method:m.METHOD,uri:m.URI,iv:m.IV,format:m.KEYFORMAT,formatVersion:m.KEYFORMATVERSIONS});else if(d==="EXT-X-MAP")o.parts.length>0&&$e.INVALIDPLAYLIST("EXT-X-MAP must appear before the first EXT-X-PART tag of the Parent Segment."),a.compatibleVersion<5&&(a.compatibleVersion=5),a.hasMap=!0,o.map=new ni.MediaInitializationSection({uri:m.URI,byterange:m.BYTERANGE});else if(d==="EXT-X-PROGRAM-DATE-TIME")o.programDateTime=f;else if(d==="EXT-X-DATERANGE"){let p={};for(let h of Object.keys(m))(h.startsWith("SCTE35-")||h.startsWith("X-"))&&(p[h]=m[h]);o.dateRange=new ni.DateRange({id:m.ID,classId:m.CLASS,start:m["START-DATE"],end:m["END-DATE"],duration:m.DURATION,plannedDuration:m["PLANNED-DURATION"],endOnNext:m["END-ON-NEXT"],attributes:p})}else if(d==="EXT-X-CUE-OUT")o.markers.push(new ni.SpliceInfo({type:"OUT",duration:m&&m.DURATION||f}));else if(d==="EXT-X-CUE-IN")o.markers.push(new ni.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 ni.SpliceInfo({type:"RAW",tagName:d,value:f}));else if(d==="EXT-X-PRELOAD-HINT"&&!m.TYPE)$e.INVALIDPLAYLIST("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&m.TYPE==="PART"&&u)$e.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist.");else if((d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT")&&!m.URI)$e.INVALIDPLAYLIST("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&m.TYPE==="MAP")c&&$e.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist."),c=!0,a.hasMap=!0,o.map=new ni.MediaInitializationSection({hint:!0,uri:m.URI,byterange:{length:m["BYTERANGE-LENGTH"],offset:m["BYTERANGE-START"]||0}});else if(d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT"&&m.TYPE==="PART"){d==="EXT-X-PART"&&!m.DURATION&&$e.INVALIDPLAYLIST("EXT-X-PART: DURATION attribute is mandatory"),d==="EXT-X-PRELOAD-HINT"&&(u=!0);let p=new ni.PartialSegment({hint:d==="EXT-X-PRELOAD-HINT",uri:m.URI,byterange:d==="EXT-X-PART"?m.BYTERANGE:{length:m["BYTERANGE-LENGTH"],offset:m["BYTERANGE-START"]||0},duration:m.DURATION,independent:m.INDEPENDENT,gap:m.GAP});o.parts.push(p)}}return o}function Snr(t,e,r,n,s,i,a){let o=new ni.PrefetchSegment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i});for(let c=r;c<=n;c++){let{name:u,attributes:l}=t[c];u==="EXTINF"?$e.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXTINF tag."):u==="EXT-X-DISCONTINUITY"?$e.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXT-X-DISCONTINUITY tag."):u==="EXT-X-PREFETCH-DISCONTINUITY"?o.discontinuity=!0:u==="EXT-X-KEY"?(cK(a,l),o.key=new ni.Key({method:l.METHOD,uri:l.URI,iv:l.IV,format:l.KEYFORMAT,formatVersion:l.KEYFORMATVERSIONS})):u==="EXT-X-MAP"&&$e.INVALIDPLAYLIST("Prefetch segments must not be advertised with an EXT-X-MAP tag.")}return o}function Inr(t,e){let r=new ni.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:m,value:p,attributes:h,category:y}=f;if(y==="Segment"){n===-1&&(n=d),m==="EXT-X-DISCONTINUITY"&&(i=!0);continue}if(m==="EXT-X-VERSION")r.version===void 0?r.version=p:$e.INVALIDPLAYLIST("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.");else if(m==="EXT-X-TARGETDURATION")r.targetDuration=e.targetDuration=p;else if(m==="EXT-X-MEDIA-SEQUENCE")r.segments.length>0&&$e.INVALIDPLAYLIST("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),r.mediaSequenceBase=s=p;else if(m==="EXT-X-DISCONTINUITY-SEQUENCE")r.segments.length>0&&$e.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),i&&$e.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag."),r.discontinuitySequenceBase=o=p;else if(m==="EXT-X-ENDLIST")r.endlist=!0;else if(m==="EXT-X-PLAYLIST-TYPE")r.playlistType=p;else if(m==="EXT-X-I-FRAMES-ONLY")e.compatibleVersion<4&&(e.compatibleVersion=4),r.isIFrame=!0;else if(m==="EXT-X-INDEPENDENT-SEGMENTS")r.independentSegments&&$e.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0;else if(m==="EXT-X-START")r.start&&$e.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof h["TIME-OFFSET"]!="number"&&$e.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:h["TIME-OFFSET"],precise:h.PRECISE||!1};else if(m==="EXT-X-SERVER-CONTROL")h["CAN-BLOCK-RELOAD"]||$e.INVALIDPLAYLIST("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS"),r.lowLatencyCompatibility={canBlockReload:h["CAN-BLOCK-RELOAD"],canSkipUntil:h["CAN-SKIP-UNTIL"],holdBack:h["HOLD-BACK"],partHoldBack:h["PART-HOLD-BACK"]};else if(m==="EXT-X-PART-INF")h["PART-TARGET"]||$e.INVALIDPLAYLIST("EXT-X-PART-INF: PART-TARGET attribute is mandatory"),r.partTargetDuration=h["PART-TARGET"];else if(m==="EXT-X-RENDITION-REPORT")h.URI||$e.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI attribute is mandatory"),h.URI.search(/^[a-z]+:/)===0&&$e.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri"),r.renditionReports.push(new ni.RenditionReport({uri:h.URI,lastMSN:h["LAST-MSN"],lastPart:h["LAST-PART"]}));else if(m==="EXT-X-SKIP")h["SKIPPED-SEGMENTS"]||$e.INVALIDPLAYLIST("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory"),e.compatibleVersion<9&&(e.compatibleVersion=9),r.skip=h["SKIPPED-SEGMENTS"],s+=r.skip;else if(m==="EXT-X-PREFETCH"){let g=Snr(t,p,n===-1?d:n,d-1,s++,o,e);g&&(g.discontinuity&&(g.discontinuitySequence++,o=g.discontinuitySequence),g.key?c=g.key:g.key=c,r.prefetchSegments.push(g)),a=!0,n=-1}else if(typeof f=="string"){n===-1&&$e.INVALIDPLAYLIST("A URI line is not preceded by any segment tags"),r.targetDuration||$e.INVALIDPLAYLIST("The EXT-X-TARGETDURATION tag is REQUIRED"),a&&$e.INVALIDPLAYLIST("These segments must appear after all complete segments.");let g=wLe(t,f,n,d-1,s++,o,e);g&&([o,c,u]=RLe(r,g,o,c,u),!l&&g.parts.length>0&&(l=!0)),n=-1}}if(n!==-1){let d=wLe(t,"",n,t.length-1,s++,o,e);if(d){let{parts:f}=d;f.length>0&&!r.endlist&&!f.at(-1)?.hint&&$e.INVALIDPLAYLIST("If the Playlist contains EXT-X-PART tags and does not contain an EXT-X-ENDLIST tag, the Playlist must contain an EXT-X-PRELOAD-HINT tag with a TYPE=PART attribute"),RLe(r,d,c,u),!l&&d.parts.length>0&&(l=!0)}}return Cnr(r.segments),r.lowLatencyCompatibility&&Tnr(r,l),r}function RLe(t,e,r,n,s){let{discontinuity:i,key:a,map:o,byterange:c,uri:u}=e;if(i&&(e.discontinuitySequence=r+1),a||(e.key=n),o||(e.map=s),c&&c.offset===-1){let{segments:l}=t;if(l.length>0){let d=l.at(-1);d.byterange&&d.uri===u?c.offset=d.byterange.offset+d.byterange.length:$e.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST be a sub-range of the same media resource")}else $e.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file")}return t.segments.push(e),[e.discontinuitySequence,e.key,e.map]}function Cnr(t){let e=new Map,r=new Map,n=!1,s=!1;for(let i=t.length-1;i>=0;i--){let{programDateTime:a,dateRange:o}=t[i];if(a&&(s=!0),o&&o.start){n=!0,o.endOnNext&&(o.end||o.duration)&&$e.INVALIDPLAYLIST("An EXT-X-DATERANGE tag with an END-ON-NEXT=YES attribute MUST NOT contain DURATION or END-DATE attributes.");let c=o.start.getTime(),u=o.duration||0;o.end&&o.duration&&c+u*1e3!==o.end.getTime()&&$e.INVALIDPLAYLIST("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION"),o.endOnNext&&(o.end=e.get(o.classId)),e.set(o.classId,o.start);let l=o.end?o.end.getTime():o.start.getTime()+(o.duration||0)*1e3,d=r.get(o.classId);if(d){for(let f of d)(f.start<=c&&f.end>c||f.start>=c&&f.start<l)&&$e.INVALIDPLAYLIST("DATERANGE tags with the same CLASS should not overlap");d.push({start:c,end:l})}else o.classId&&r.set(o.classId,[{start:c,end:l}])}}n&&!s&&$e.INVALIDPLAYLIST("If a Playlist contains an EXT-X-DATERANGE tag, it MUST also contain at least one EXT-X-PROGRAM-DATE-TIME tag.")}function Tnr({lowLatencyCompatibility:t,targetDuration:e,partTargetDuration:r,segments:n,renditionReports:s},i){let{canSkipUntil:a,holdBack:o,partHoldBack:c}=t;if(a<e*6&&$e.INVALIDPLAYLIST("The Skip Boundary must be at least six times the EXT-X-TARGETDURATION."),o<e*3&&$e.INVALIDPLAYLIST("HOLD-BACK must be at least three times the EXT-X-TARGETDURATION."),i){r===void 0&&$e.INVALIDPLAYLIST("EXT-X-PART-INF is required if a Playlist contains one or more EXT-X-PART tags"),c===void 0&&$e.INVALIDPLAYLIST("EXT-X-PART: PART-HOLD-BACK attribute is mandatory"),c<r&&$e.INVALIDPLAYLIST("PART-HOLD-BACK must be at least PART-TARGET");for(let[u,{parts:l}]of n.entries()){l.length>0&&u<n.length-3&&$e.INVALIDPLAYLIST("Remove EXT-X-PART tags from the Playlist after they are greater than three target durations from the end of the Playlist.");for(let[d,{duration:f}]of l.entries())f!==void 0&&(f>r&&$e.INVALIDPLAYLIST("PART-TARGET is the maximum duration of any Partial Segment"),d<l.length-1&&f<r*.85&&$e.INVALIDPLAYLIST("All Partial Segments except the last part of a segment must have a duration of at least 85% of PART-TARGET"))}}for(let u of s){let l=n.at(-1);(u.lastMSN===null||u.lastMSN===void 0)&&(u.lastMSN=l.mediaSequenceNumber),(u.lastPart===null||u.lastPart===void 0)&&l.parts.length>0&&(u.lastPart=l.parts.length-1)}}function wnr(t,e){if(t==="Segment"||t==="MediaPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!1;return}e.isMasterPlaylist&&CLe();return}if(t==="MasterPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!0;return}e.isMasterPlaylist===!1&&CLe()}}function Rnr(t,e){let[r,n]=ynr(t),s=lnr(r);if(wnr(s,e),s==="Unknown")return null;s==="MediaPlaylist"&&r!=="EXT-X-RENDITION-REPORT"&&r!=="EXT-X-PREFETCH"&&(e.hash[r]&&$e.INVALIDPLAYLIST("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist"),e.hash[r]=!0);let[i,a]=gnr(r,n);return{name:r,category:s,value:i,attributes:a}}function Nnr(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=Rnr(s,e);i&&r.push(i)}continue}r.push(s)}}return(r.length===0||r[0].name!=="EXTM3U")&&$e.INVALIDPLAYLIST("The EXTM3U tag MUST be the first line."),r}function Onr(t,e){let r;return e.isMasterPlaylist?r=vnr(t,e):(r=Inr(t,e),!r.isIFrame&&e.hasMap&&e.compatibleVersion<6&&(e.compatibleVersion=6)),e.compatibleVersion>1&&(!r.version||r.version<e.compatibleVersion)&&$e.INVALIDPLAYLIST(`EXT-X-VERSION needs to be ${e.compatibleVersion} or higher.`),r}function knr(t){let e={version:void 0,isMasterPlaylist:void 0,hasMap:!1,targetDuration:0,compatibleVersion:1,isClosedCaptionsNone:!1,hash:{}},r=Nnr(t,e),n=Onr(r,e);return n.source=t,n}yf.default=knr});var DLe=_(Af=>{"use strict";var Pnr=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]}),Dnr=Af&&Af.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Bnr=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)&&Pnr(e,t,r);return Dnr(e,t),e};Object.defineProperty(Af,"__esModule",{value:!0});var vu=Bnr($I()),Lnr=["#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"],Mnr=["#EXT-X-MEDIA"],uK=class extends Array{constructor(e){super(),this.baseUri=e}push(...e){for(let r of e){if(!r.startsWith("#")){super.push(r);continue}if(Lnr.some(n=>r.startsWith(n))){super.push(r);continue}if(this.includes(r)){if(Mnr.some(n=>r.startsWith(n)))continue;vu.INVALIDPLAYLIST(`Redundant item (${r})`)}super.push(r)}return this.length}};function lK(t,e){let r=1e3;e&&(r=10**e);let n=Math.round(t*r)/r;return e?n.toFixed(e):n}function Wnr(t){let e=t.toString(10),r=e.indexOf(".");return r===-1?0:e.length-r-1}function $nr(t,e){for(let r of e.sessionDataList)t.push(Unr(r));for(let r of e.sessionKeyList)t.push(PLe(r,!0));for(let r of e.variants)Fnr(t,r)}function Unr(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 PLe(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&&vu.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),n.push(`IV=${vu.byteSequenceToHex(t.iv)}`)),t.format&&n.push(`KEYFORMAT="${t.format}"`),t.formatVersion&&n.push(`KEYFORMATVERSIONS="${t.formatVersion}"`),`${r}:${n.join(",")}`}function Fnr(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=${lK(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(V4(s))}if(e.video.length>0){n.push(`VIDEO="${e.video[0].groupId}"`);for(let s of e.video)t.push(V4(s))}if(e.subtitles.length>0){n.push(`SUBTITLES="${e.subtitles[0].groupId}"`);for(let s of e.subtitles)t.push(V4(s))}if(vu.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(V4(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 V4(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 qnr(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]=jnr(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&&vu.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 jnr(t,e,r,n,s=1){let i=!1,a="";if(e.discontinuity&&t.push("#EXT-X-DISCONTINUITY"),e.key){let c=PLe(e.key);c!==r&&(t.push(c),r=c)}if(e.map){let c=Qnr(e.map);c!==n&&(t.push(c),n=c)}if(e.programDateTime&&t.push(`#EXT-X-PROGRAM-DATE-TIME:${vu.formatDate(e.programDateTime)}`),e.dateRange&&t.push(Hnr(e.dateRange)),e.markers.length>0&&(a=Gnr(t,e.markers)),e.parts.length>0&&(i=Vnr(t,e.parts)),i)return[r,n];let o=s<3?Math.round(e.duration):lK(e.duration,Wnr(e.duration));return t.push(`#EXTINF:${o},${unescape(encodeURIComponent(e.title||""))}`),e.byterange&&t.push(`#EXT-X-BYTERANGE:${dK(e.byterange)}`),Array.prototype.push.call(t,`${e.uri}`),[r,n,a]}function Qnr(t){let e=[`URI="${t.uri}"`];return t.byterange&&e.push(`BYTERANGE="${dK(t.byterange)}"`),`#EXT-X-MAP:${e.join(",")}`}function dK({offset:t,length:e}){return`${e}@${t}`}function Hnr(t){let e=[`ID="${t.id}"`];t.start&&e.push(`START-DATE="${vu.formatDate(t.start)}"`),t.end&&e.push(`END-DATE="${vu.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}=${vu.byteSequenceToHex(t.attributes[r])}`);return`#EXT-X-DATERANGE:${e.join(",")}`}function Gnr(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 Vnr(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=${dK(n.byterange)}`),n.independent&&s.push("INDEPENDENT=YES"),n.gap&&s.push("GAP=YES"),t.push(`#EXT-X-PART:${s.join(",")}`)}return r}function Knr(t){vu.PARAMCHECK(t),vu.ASSERT("Not a playlist",t.type==="playlist");let e=new uK(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=${lK(t.start.offset)}${t.start.precise?",PRECISE=YES":""}`),t.isMasterPlaylist?$nr(e,t):qnr(e,t),e.join(`
`)}Af.default=Knr});var MLe=_(Cs=>{"use strict";var znr=Cs&&Cs.__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]}),Ynr=Cs&&Cs.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Jnr=Cs&&Cs.__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)&&znr(e,t,r);return Ynr(e,t),e},BLe=Cs&&Cs.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Cs,"__esModule",{value:!0});Cs.setOptions=Cs.getOptions=Cs.types=Cs.stringify=Cs.parse=void 0;var LLe=$I();Object.defineProperty(Cs,"getOptions",{enumerable:!0,get:function(){return LLe.getOptions}});Object.defineProperty(Cs,"setOptions",{enumerable:!0,get:function(){return LLe.setOptions}});var Xnr=BLe(kLe());Cs.parse=Xnr.default;var Znr=BLe(DLe());Cs.stringify=Znr.default;var esr=Jnr(oK());Cs.types=esr});var IK=_((MJr,I6e)=>{I6e.exports=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}});var U0=_(cg=>{var CK,Psr=[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];cg.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};cg.getSymbolTotalCodewords=function(e){return Psr[e]};cg.getBCHDigit=function(t){let e=0;for(;t!==0;)e++,t>>>=1;return e};cg.setToSJISFunction=function(e){if(typeof e!="function")throw new Error('"toSJISFunc" is not a valid function.');CK=e};cg.isKanjiModeEnabled=function(){return typeof CK<"u"};cg.toSJIS=function(e){return CK(e)}});var aB=_(Oc=>{Oc.L={bit:1};Oc.M={bit:0};Oc.Q={bit:3};Oc.H={bit:2};function Dsr(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return Oc.L;case"m":case"medium":return Oc.M;case"q":case"quartile":return Oc.Q;case"h":case"high":return Oc.H;default:throw new Error("Unknown EC Level: "+t)}}Oc.isValid=function(e){return e&&typeof e.bit<"u"&&e.bit>=0&&e.bit<4};Oc.from=function(e,r){if(Oc.isValid(e))return e;try{return Dsr(e)}catch{return r}}});var w6e=_((UJr,T6e)=>{function C6e(){this.buffer=[],this.length=0}C6e.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++)this.putBit((t>>>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++}};T6e.exports=C6e});var N6e=_((FJr,R6e)=>{function HI(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)}HI.prototype.set=function(t,e,r,n){let s=t*this.size+e;this.data[s]=r,n&&(this.reservedBit[s]=!0)};HI.prototype.get=function(t,e){return this.data[t*this.size+e]};HI.prototype.xor=function(t,e,r){this.data[t*this.size+e]^=r};HI.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]};R6e.exports=HI});var O6e=_(oB=>{var Bsr=U0().getSymbolSize;oB.getRowColCoords=function(e){if(e===1)return[];let r=Math.floor(e/7)+2,n=Bsr(e),s=n===145?26:Math.ceil((n-13)/(2*r-2))*2,i=[n-7];for(let a=1;a<r-1;a++)i[a]=i[a-1]-s;return i.push(6),i.reverse()};oB.getPositions=function(e){let r=[],n=oB.getRowColCoords(e),s=n.length;for(let i=0;i<s;i++)for(let a=0;a<s;a++)i===0&&a===0||i===0&&a===s-1||i===s-1&&a===0||r.push([n[i],n[a]]);return r}});var D6e=_(P6e=>{var Lsr=U0().getSymbolSize,k6e=7;P6e.getPositions=function(e){let r=Lsr(e);return[[0,0],[r-k6e,0],[0,r-k6e]]}});var B6e=_(Sn=>{Sn.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var ug={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<r;c++){s=i=0,a=o=null;for(let u=0;u<r;u++){let l=e.get(c,u);l===a?s++:(s>=5&&(n+=ug.N1+(s-5)),a=l,s=1),l=e.get(u,c),l===o?i++:(i>=5&&(n+=ug.N1+(i-5)),o=l,i=1)}s>=5&&(n+=ug.N1+(s-5)),i>=5&&(n+=ug.N1+(i-5))}return n};Sn.getPenaltyN2=function(e){let r=e.size,n=0;for(let s=0;s<r-1;s++)for(let i=0;i<r-1;i++){let a=e.get(s,i)+e.get(s,i+1)+e.get(s+1,i)+e.get(s+1,i+1);(a===4||a===0)&&n++}return n*ug.N2};Sn.getPenaltyN3=function(e){let r=e.size,n=0,s=0,i=0;for(let a=0;a<r;a++){s=i=0;for(let o=0;o<r;o++)s=s<<1&2047|e.get(a,o),o>=10&&(s===1488||s===93)&&n++,i=i<<1&2047|e.get(o,a),o>=10&&(i===1488||i===93)&&n++}return n*ug.N3};Sn.getPenaltyN4=function(e){let r=0,n=e.data.length;for(let i=0;i<n;i++)r+=e.data[i];return Math.abs(Math.ceil(r*100/n/5)-10)*ug.N4};function Msr(t,e,r){switch(t){case Sn.Patterns.PATTERN000:return(e+r)%2===0;case Sn.Patterns.PATTERN001:return e%2===0;case Sn.Patterns.PATTERN010:return r%3===0;case Sn.Patterns.PATTERN011:return(e+r)%3===0;case Sn.Patterns.PATTERN100:return(Math.floor(e/2)+Math.floor(r/3))%2===0;case Sn.Patterns.PATTERN101:return e*r%2+e*r%3===0;case Sn.Patterns.PATTERN110:return(e*r%2+e*r%3)%2===0;case Sn.Patterns.PATTERN111:return(e*r%3+(e+r)%2)%2===0;default:throw new Error("bad maskPattern:"+t)}}Sn.applyMask=function(e,r){let n=r.size;for(let s=0;s<n;s++)for(let i=0;i<n;i++)r.isReserved(i,s)||r.xor(i,s,Msr(e,i,s))};Sn.getBestMask=function(e,r){let n=Object.keys(Sn.Patterns).length,s=0,i=1/0;for(let a=0;a<n;a++){r(a),Sn.applyMask(a,e);let o=Sn.getPenaltyN1(e)+Sn.getPenaltyN2(e)+Sn.getPenaltyN3(e)+Sn.getPenaltyN4(e);Sn.applyMask(a,e),o<i&&(i=o,s=a)}return s}});var wK=_(TK=>{var F0=aB(),cB=[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],uB=[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];TK.getBlocksCount=function(e,r){switch(r){case F0.L:return cB[(e-1)*4+0];case F0.M:return cB[(e-1)*4+1];case F0.Q:return cB[(e-1)*4+2];case F0.H:return cB[(e-1)*4+3];default:return}};TK.getTotalCodewordsCount=function(e,r){switch(r){case F0.L:return uB[(e-1)*4+0];case F0.M:return uB[(e-1)*4+1];case F0.Q:return uB[(e-1)*4+2];case F0.H:return uB[(e-1)*4+3];default:return}}});var L6e=_(dB=>{var GI=new Uint8Array(512),lB=new Uint8Array(256);(function(){let e=1;for(let r=0;r<255;r++)GI[r]=e,lB[e]=r,e<<=1,e&256&&(e^=285);for(let r=255;r<512;r++)GI[r]=GI[r-255]})();dB.log=function(e){if(e<1)throw new Error("log("+e+")");return lB[e]};dB.exp=function(e){return GI[e]};dB.mul=function(e,r){return e===0||r===0?0:GI[lB[e]+lB[r]]}});var M6e=_(VI=>{var RK=L6e();VI.mul=function(e,r){let n=new Uint8Array(e.length+r.length-1);for(let s=0;s<e.length;s++)for(let i=0;i<r.length;i++)n[s+i]^=RK.mul(e[s],r[i]);return n};VI.mod=function(e,r){let n=new Uint8Array(e);for(;n.length-r.length>=0;){let s=n[0];for(let a=0;a<r.length;a++)n[a]^=RK.mul(r[a],s);let i=0;for(;i<n.length&&n[i]===0;)i++;n=n.slice(i)}return n};VI.generateECPolynomial=function(e){let r=new Uint8Array([1]);for(let n=0;n<e;n++)r=VI.mul(r,new Uint8Array([1,RK.exp(n)]));return r}});var U6e=_((KJr,$6e)=>{var W6e=M6e();function NK(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}NK.prototype.initialize=function(e){this.degree=e,this.genPoly=W6e.generateECPolynomial(this.degree)};NK.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=W6e.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};$6e.exports=NK});var OK=_(F6e=>{F6e.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}});var kK=_(xf=>{var q6e="[0-9]+",Wsr="[A-Z $%*+\\-./:]+",KI="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";KI=KI.replace(/u/g,"\\u");var $sr="(?:(?![A-Z0-9 $%*+\\-./:]|"+KI+`)(?:.|[\r
]))+`;xf.KANJI=new RegExp(KI,"g");xf.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");xf.BYTE=new RegExp($sr,"g");xf.NUMERIC=new RegExp(q6e,"g");xf.ALPHANUMERIC=new RegExp(Wsr,"g");var Usr=new RegExp("^"+KI+"$"),Fsr=new RegExp("^"+q6e+"$"),qsr=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");xf.testKanji=function(e){return Usr.test(e)};xf.testNumeric=function(e){return Fsr.test(e)};xf.testAlphanumeric=function(e){return qsr.test(e)}});var q0=_(Rs=>{var jsr=OK(),PK=kK();Rs.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]};Rs.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]};Rs.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]};Rs.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]};Rs.MIXED={bit:-1};Rs.getCharCountIndicator=function(e,r){if(!e.ccBits)throw new Error("Invalid mode: "+e);if(!jsr.isValid(r))throw new Error("Invalid version: "+r);return r>=1&&r<10?e.ccBits[0]:r<27?e.ccBits[1]:e.ccBits[2]};Rs.getBestModeForData=function(e){return PK.testNumeric(e)?Rs.NUMERIC:PK.testAlphanumeric(e)?Rs.ALPHANUMERIC:PK.testKanji(e)?Rs.KANJI:Rs.BYTE};Rs.toString=function(e){if(e&&e.id)return e.id;throw new Error("Invalid mode")};Rs.isValid=function(e){return e&&e.bit&&e.ccBits};function Qsr(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return Rs.NUMERIC;case"alphanumeric":return Rs.ALPHANUMERIC;case"kanji":return Rs.KANJI;case"byte":return Rs.BYTE;default:throw new Error("Unknown mode: "+t)}}Rs.from=function(e,r){if(Rs.isValid(e))return e;try{return Qsr(e)}catch{return r}}});var V6e=_(lg=>{var fB=U0(),Hsr=wK(),j6e=aB(),j0=q0(),DK=OK(),H6e=7973,Q6e=fB.getBCHDigit(H6e);function Gsr(t,e,r){for(let n=1;n<=40;n++)if(e<=lg.getCapacity(n,r,t))return n}function G6e(t,e){return j0.getCharCountIndicator(t,e)+4}function Vsr(t,e){let r=0;return t.forEach(function(n){let s=G6e(n.mode,e);r+=s+n.getBitsLength()}),r}function Ksr(t,e){for(let r=1;r<=40;r++)if(Vsr(t,r)<=lg.getCapacity(r,e,j0.MIXED))return r}lg.from=function(e,r){return DK.isValid(e)?parseInt(e,10):r};lg.getCapacity=function(e,r,n){if(!DK.isValid(e))throw new Error("Invalid QR Code version");typeof n>"u"&&(n=j0.BYTE);let s=fB.getSymbolTotalCodewords(e),i=Hsr.getTotalCodewordsCount(e,r),a=(s-i)*8;if(n===j0.MIXED)return a;let o=a-G6e(n,e);switch(n){case j0.NUMERIC:return Math.floor(o/10*3);case j0.ALPHANUMERIC:return Math.floor(o/11*2);case j0.KANJI:return Math.floor(o/13);case j0.BYTE:default:return Math.floor(o/8)}};lg.getBestVersionForData=function(e,r){let n,s=j6e.from(r,j6e.M);if(Array.isArray(e)){if(e.length>1)return Ksr(e,s);if(e.length===0)return 1;n=e[0]}else n=e;return Gsr(n.mode,n.getLength(),s)};lg.getEncodedBits=function(e){if(!DK.isValid(e)||e<7)throw new Error("Invalid QR Code version");let r=e<<12;for(;fB.getBCHDigit(r)-Q6e>=0;)r^=H6e<<fB.getBCHDigit(r)-Q6e;return e<<12|r}});var J6e=_(Y6e=>{var BK=U0(),z6e=1335,zsr=21522,K6e=BK.getBCHDigit(z6e);Y6e.getEncodedBits=function(e,r){let n=e.bit<<3|r,s=n<<10;for(;BK.getBCHDigit(s)-K6e>=0;)s^=z6e<<BK.getBCHDigit(s)-K6e;return(n<<10|s)^zsr}});var Z6e=_((eXr,X6e)=>{var Ysr=q0();function Rb(t){this.mode=Ysr.NUMERIC,this.data=t.toString()}Rb.getBitsLength=function(e){return 10*Math.floor(e/3)+(e%3?e%3*3+1:0)};Rb.prototype.getLength=function(){return this.data.length};Rb.prototype.getBitsLength=function(){return Rb.getBitsLength(this.data.length)};Rb.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))};X6e.exports=Rb});var tMe=_((tXr,eMe)=>{var Jsr=q0(),LK=["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 Nb(t){this.mode=Jsr.ALPHANUMERIC,this.data=t}Nb.getBitsLength=function(e){return 11*Math.floor(e/2)+6*(e%2)};Nb.prototype.getLength=function(){return this.data.length};Nb.prototype.getBitsLength=function(){return Nb.getBitsLength(this.data.length)};Nb.prototype.write=function(e){let r;for(r=0;r+2<=this.data.length;r+=2){let n=LK.indexOf(this.data[r])*45;n+=LK.indexOf(this.data[r+1]),e.put(n,11)}this.data.length%2&&e.put(LK.indexOf(this.data[r]),6)};eMe.exports=Nb});var nMe=_((rXr,rMe)=>{var Xsr=q0();function Ob(t){this.mode=Xsr.BYTE,typeof t=="string"?this.data=new TextEncoder().encode(t):this.data=new Uint8Array(t)}Ob.getBitsLength=function(e){return e*8};Ob.prototype.getLength=function(){return this.data.length};Ob.prototype.getBitsLength=function(){return Ob.getBitsLength(this.data.length)};Ob.prototype.write=function(t){for(let e=0,r=this.data.length;e<r;e++)t.put(this.data[e],8)};rMe.exports=Ob});var iMe=_((nXr,sMe)=>{var Zsr=q0(),eir=U0();function kb(t){this.mode=Zsr.KANJI,this.data=t}kb.getBitsLength=function(e){return e*13};kb.prototype.getLength=function(){return this.data.length};kb.prototype.getBitsLength=function(){return kb.getBitsLength(this.data.length)};kb.prototype.write=function(t){let e;for(e=0;e<this.data.length;e++){let r=eir.toSJIS(this.data[e]);if(r>=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)}};sMe.exports=kb});var aMe=_((sXr,MK)=>{"use strict";var zI={single_source_shortest_paths:function(t,e,r){var n={},s={};s[e]=0;var i=zI.PriorityQueue.make();i.push(e,0);for(var a,o,c,u,l,d,f,m,p;!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,m=s[c],p=typeof s[c]>"u",(p||m>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=zI.single_source_shortest_paths(t,e,r);return zI.extract_shortest_path_from_predecessor_list(n,r)},PriorityQueue:{make:function(t){var e=zI.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 MK<"u"&&(MK.exports=zI)});var mMe=_(Pb=>{var Vr=q0(),uMe=Z6e(),lMe=tMe(),dMe=nMe(),fMe=iMe(),YI=kK(),pB=U0(),tir=aMe();function oMe(t){return unescape(encodeURIComponent(t)).length}function JI(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 pMe(t){let e=JI(YI.NUMERIC,Vr.NUMERIC,t),r=JI(YI.ALPHANUMERIC,Vr.ALPHANUMERIC,t),n,s;return pB.isKanjiModeEnabled()?(n=JI(YI.BYTE,Vr.BYTE,t),s=JI(YI.KANJI,Vr.KANJI,t)):(n=JI(YI.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 WK(t,e){switch(e){case Vr.NUMERIC:return uMe.getBitsLength(t);case Vr.ALPHANUMERIC:return lMe.getBitsLength(t);case Vr.KANJI:return fMe.getBitsLength(t);case Vr.BYTE:return dMe.getBitsLength(t)}}function rir(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 nir(t){let e=[];for(let r=0;r<t.length;r++){let n=t[r];switch(n.mode){case Vr.NUMERIC:e.push([n,{data:n.data,mode:Vr.ALPHANUMERIC,length:n.length},{data:n.data,mode:Vr.BYTE,length:n.length}]);break;case Vr.ALPHANUMERIC:e.push([n,{data:n.data,mode:Vr.BYTE,length:n.length}]);break;case Vr.KANJI:e.push([n,{data:n.data,mode:Vr.BYTE,length:oMe(n.data)}]);break;case Vr.BYTE:e.push([{data:n.data,mode:Vr.BYTE,length:oMe(n.data)}])}}return e}function sir(t,e){let r={},n={start:{}},s=["start"];for(let i=0;i<t.length;i++){let a=t[i],o=[];for(let c=0;c<a.length;c++){let u=a[c],l=""+i+c;o.push(l),r[l]={node:u,lastCount:0},n[l]={};for(let d=0;d<s.length;d++){let f=s[d];r[f]&&r[f].node.mode===u.mode?(n[f][l]=WK(r[f].lastCount+u.length,u.mode)-WK(r[f].lastCount,u.mode),r[f].lastCount+=u.length):(r[f]&&(r[f].lastCount=u.length),n[f][l]=WK(u.length,u.mode)+4+Vr.getCharCountIndicator(u.mode,e))}}s=o}for(let i=0;i<s.length;i++)n[s[i]].end=0;return{map:n,table:r}}function cMe(t,e){let r,n=Vr.getBestModeForData(t);if(r=Vr.from(e,n),r!==Vr.BYTE&&r.bit<n.bit)throw new Error('"'+t+'" cannot be encoded with mode '+Vr.toString(r)+`.
Suggested mode is: `+Vr.toString(n));switch(r===Vr.KANJI&&!pB.isKanjiModeEnabled()&&(r=Vr.BYTE),r){case Vr.NUMERIC:return new uMe(t);case Vr.ALPHANUMERIC:return new lMe(t);case Vr.KANJI:return new fMe(t);case Vr.BYTE:return new dMe(t)}}Pb.fromArray=function(e){return e.reduce(function(r,n){return typeof n=="string"?r.push(cMe(n,null)):n.data&&r.push(cMe(n.data,n.mode)),r},[])};Pb.fromString=function(e,r){let n=pMe(e,pB.isKanjiModeEnabled()),s=nir(n),i=sir(s,r),a=tir.find_path(i.map,"start","end"),o=[];for(let c=1;c<a.length-1;c++)o.push(i.table[a[c]].node);return Pb.fromArray(rir(o))};Pb.rawSplit=function(e){return Pb.fromArray(pMe(e,pB.isKanjiModeEnabled()))}});var QK=_(hMe=>{var hB=U0(),$K=aB(),iir=w6e(),air=N6e(),oir=O6e(),cir=D6e(),qK=B6e(),jK=wK(),uir=U6e(),mB=V6e(),lir=J6e(),dir=q0(),UK=mMe();function fir(t,e){let r=t.size,n=cir.getPositions(e);for(let s=0;s<n.length;s++){let i=n[s][0],a=n[s][1];for(let o=-1;o<=7;o++)if(!(i+o<=-1||r<=i+o))for(let c=-1;c<=7;c++)a+c<=-1||r<=a+c||(o>=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 pir(t){let e=t.size;for(let r=8;r<e-8;r++){let n=r%2===0;t.set(r,6,n,!0),t.set(6,r,n,!0)}}function mir(t,e){let r=oir.getPositions(e);for(let n=0;n<r.length;n++){let s=r[n][0],i=r[n][1];for(let a=-2;a<=2;a++)for(let o=-2;o<=2;o++)a===-2||a===2||o===-2||o===2||a===0&&o===0?t.set(s+a,i+o,!0,!0):t.set(s+a,i+o,!1,!0)}}function hir(t,e){let r=t.size,n=mB.getEncodedBits(e),s,i,a;for(let o=0;o<18;o++)s=Math.floor(o/3),i=o%3+r-8-3,a=(n>>o&1)===1,t.set(s,i,a,!0),t.set(i,s,a,!0)}function FK(t,e,r){let n=t.size,s=lir.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 gir(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<e.length&&(u=(e[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 yir(t,e,r){let n=new iir;r.forEach(function(c){n.put(c.mode.bit,4),n.put(c.getLength(),dir.getCharCountIndicator(c.mode,t)),c.write(n)});let s=hB.getSymbolTotalCodewords(t),i=jK.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<o;c++)n.put(c%2?17:236,8);return Air(n,t,e)}function Air(t,e,r){let n=hB.getSymbolTotalCodewords(e),s=jK.getTotalCodewordsCount(e,r),i=n-s,a=jK.getBlocksCount(e,r),o=n%a,c=a-o,u=Math.floor(n/a),l=Math.floor(i/a),d=l+1,f=u-l,m=new uir(f),p=0,h=new Array(a),y=new Array(a),g=0,A=new Uint8Array(t.buffer);for(let I=0;I<a;I++){let R=I<c?l:d;h[I]=A.slice(p,p+R),y[I]=m.encode(h[I]),p+=R,g=Math.max(g,R)}let b=new Uint8Array(n),x=0,S,T;for(S=0;S<g;S++)for(T=0;T<a;T++)S<h[T].length&&(b[x++]=h[T][S]);for(S=0;S<f;S++)for(T=0;T<a;T++)b[x++]=y[T][S];return b}function xir(t,e,r,n){let s;if(Array.isArray(t))s=UK.fromArray(t);else if(typeof t=="string"){let u=e;if(!u){let l=UK.rawSplit(t);u=mB.getBestVersionForData(l,r)}s=UK.fromString(t,u||40)}else throw new Error("Invalid data");let i=mB.getBestVersionForData(s,r);if(!i)throw new Error("The amount of data is too big to be stored in a QR Code");if(!e)e=i;else if(e<i)throw new Error(`
The chosen QR Code version cannot contain this amount of data.
Minimum version required to store current data is: `+i+`.
`);let a=yir(e,r,s),o=hB.getSymbolSize(e),c=new air(o);return fir(c,e),pir(c),mir(c,e),FK(c,r,0),e>=7&&hir(c,e),gir(c,a),isNaN(n)&&(n=qK.getBestMask(c,FK.bind(null,c,r))),qK.applyMask(n,c),FK(c,r,n),{modules:c,version:e,errorCorrectionLevel:r,maskPattern:n,segments:s}}hMe.create=function(e,r){if(typeof e>"u"||e==="")throw new Error("No input text");let n=$K.M,s,i;return typeof r<"u"&&(n=$K.from(r.errorCorrectionLevel,$K.M),s=mB.from(r.version),i=qK.from(r.maskPattern),r.toSJISFunc&&hB.setToSJISFunction(r.toSJISFunc)),xir(e,s,n,i)}});var HK=_((oXr,yMe)=>{"use strict";var bir=require("util"),gMe=require("stream"),Cu=yMe.exports=function(){gMe.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};bir.inherits(Cu,gMe);Cu.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))};Cu.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};Cu.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()))};Cu.prototype.destroySoon=Cu.prototype.end;Cu.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};Cu.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};Cu.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))};Cu.prototype._processRead=function(t){this._reads.shift();let e=0,r=0,n=Buffer.alloc(t.length);for(;e<t.length;){let s=this._buffers[r++],i=Math.min(s.length,t.length-e);s.copy(n,e,0,i),e+=i,i!==s.length&&(this._buffers[--r]=s.slice(i))}r>0&&this._buffers.splice(0,r),this._buffered-=t.length,t.func.call(this,n)};Cu.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 VK=_(GK=>{"use strict";var Q0=[{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]}];GK.getImagePasses=function(t,e){let r=[],n=t%8,s=e%8,i=(t-n)/8,a=(e-s)/8;for(let o=0;o<Q0.length;o++){let c=Q0[o],u=i*c.x.length,l=a*c.y.length;for(let d=0;d<c.x.length&&c.x[d]<n;d++)u++;for(let d=0;d<c.y.length&&c.y[d]<s;d++)l++;u>0&&l>0&&r.push({width:u,height:l,index:o})}return r};GK.getInterlaceIterator=function(t){return function(e,r,n){let s=e%Q0[n].x.length,i=(e-s)/Q0[n].x.length*8+Q0[n].x[s],a=r%Q0[n].y.length,o=(r-a)/Q0[n].y.length*8+Q0[n].y[a];return i*4+o*t*4}}});var KK=_((uXr,AMe)=>{"use strict";AMe.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 zK=_((lXr,bMe)=>{"use strict";var _ir=VK(),Eir=KK();function xMe(t,e,r){let n=t*e;return r!==8&&(n=Math.ceil(n/(8/r))),n}var Db=bMe.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=_ir.getImagePasses(r,n);for(let c=0;c<o.length;c++)this._images.push({byteWidth:xMe(o[c].width,i,a),height:o[c].height,lineIndex:0})}else this._images.push({byteWidth:xMe(r,i,a),height:n,lineIndex:0});a===8?this._xComparison=i:a===16?this._xComparison=i*2:this._xComparison=1};Db.prototype.start=function(){this.read(this._images[this._imageIndex].byteWidth+1,this._reverseFilterLine.bind(this))};Db.prototype._unFilterType1=function(t,e,r){let n=this._xComparison,s=n-1;for(let i=0;i<r;i++){let a=t[1+i],o=i>s?e[i-n]:0;e[i]=a+o}};Db.prototype._unFilterType2=function(t,e,r){let n=this._lastLine;for(let s=0;s<r;s++){let i=t[1+s],a=n?n[s]:0;e[s]=i+a}};Db.prototype._unFilterType3=function(t,e,r){let n=this._xComparison,s=n-1,i=this._lastLine;for(let a=0;a<r;a++){let o=t[1+a],c=i?i[a]:0,u=a>s?e[a-n]:0,l=Math.floor((u+c)/2);e[a]=o+l}};Db.prototype._unFilterType4=function(t,e,r){let n=this._xComparison,s=n-1,i=this._lastLine;for(let a=0;a<r;a++){let o=t[1+a],c=i?i[a]:0,u=a>s?e[a-n]:0,l=a>s&&i?i[a-n]:0,d=Eir(u,c,l);e[a]=o+d}};Db.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 vMe=_((dXr,EMe)=>{"use strict";var vir=require("util"),_Me=HK(),Sir=zK(),Iir=EMe.exports=function(t){_Me.call(this);let e=[],r=this;this._filter=new Sir(t,{read:this.read.bind(this),write:function(n){e.push(n)},complete:function(){r.emit("complete",Buffer.concat(e))}}),this._filter.start()};vir.inherits(Iir,_Me)});var Bb=_((fXr,SMe)=>{"use strict";SMe.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 XK=_((pXr,IMe)=>{"use strict";var YK=[];(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;YK[t]=e}})();var JK=IMe.exports=function(){this._crc=-1};JK.prototype.write=function(t){for(let e=0;e<t.length;e++)this._crc=YK[(this._crc^t[e])&255]^this._crc>>>8;return!0};JK.prototype.crc32=function(){return this._crc^-1};JK.crc32=function(t){let e=-1;for(let r=0;r<t.length;r++)e=YK[(e^t[r])&255]^e>>>8;return e^-1}});var ZK=_((mXr,CMe)=>{"use strict";var Ls=Bb(),Cir=XK(),si=CMe.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[Ls.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[Ls.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[Ls.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[Ls.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[Ls.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[Ls.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=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(){}};si.prototype.start=function(){this.read(Ls.PNG_SIGNATURE.length,this._parseSignature.bind(this))};si.prototype._parseSignature=function(t){let e=Ls.PNG_SIGNATURE;for(let r=0;r<e.length;r++)if(t[r]!==e[r]){this.error(new Error("Invalid file signature"));return}this.read(8,this._parseChunkBegin.bind(this))};si.prototype._parseChunkBegin=function(t){let e=t.readUInt32BE(0),r=t.readUInt32BE(4),n="";for(let i=4;i<8;i++)n+=String.fromCharCode(t[i]);let s=!!(t[4]&32);if(!this._hasIHDR&&r!==Ls.TYPE_IHDR){this.error(new Error("Expected IHDR on beggining"));return}if(this._crc=new Cir,this._crc.write(Buffer.from(n)),this._chunks[r])return this._chunks[r](e);if(!s){this.error(new Error("Unsupported critical chunk type "+n));return}this.read(e+4,this._skipChunk.bind(this))};si.prototype._skipChunk=function(){this.read(8,this._parseChunkBegin.bind(this))};si.prototype._handleChunkEnd=function(){this.read(4,this._parseChunkEnd.bind(this))};si.prototype._parseChunkEnd=function(t){let e=t.readInt32BE(0),r=this._crc.crc32();if(this._options.checkCRC&&r!==e){this.error(new Error("Crc error - "+e+" - "+r));return}this._hasIEND||this.read(8,this._parseChunkBegin.bind(this))};si.prototype._handleIHDR=function(t){this.read(t,this._parseIHDR.bind(this))};si.prototype._parseIHDR=function(t){this._crc.write(t);let e=t.readUInt32BE(0),r=t.readUInt32BE(4),n=t[8],s=t[9],i=t[10],a=t[11],o=t[12];if(n!==8&&n!==4&&n!==2&&n!==1&&n!==16){this.error(new Error("Unsupported bit depth "+n));return}if(!(s in Ls.COLORTYPE_TO_BPP_MAP)){this.error(new Error("Unsupported color type"));return}if(i!==0){this.error(new Error("Unsupported compression method"));return}if(a!==0){this.error(new Error("Unsupported filter method"));return}if(o!==0&&o!==1){this.error(new Error("Unsupported interlace method"));return}this._colorType=s;let c=Ls.COLORTYPE_TO_BPP_MAP[this._colorType];this._hasIHDR=!0,this.metadata({width:e,height:r,depth:n,interlace:!!o,palette:!!(s&Ls.COLORTYPE_PALETTE),color:!!(s&Ls.COLORTYPE_COLOR),alpha:!!(s&Ls.COLORTYPE_ALPHA),bpp:c,colorType:s}),this._handleChunkEnd()};si.prototype._handlePLTE=function(t){this.read(t,this._parsePLTE.bind(this))};si.prototype._parsePLTE=function(t){this._crc.write(t);let e=Math.floor(t.length/3);for(let r=0;r<e;r++)this._palette.push([t[r*3],t[r*3+1],t[r*3+2],255]);this.palette(this._palette),this._handleChunkEnd()};si.prototype._handleTRNS=function(t){this.simpleTransparency(),this.read(t,this._parseTRNS.bind(this))};si.prototype._parseTRNS=function(t){if(this._crc.write(t),this._colorType===Ls.COLORTYPE_PALETTE_COLOR){if(this._palette.length===0){this.error(new Error("Transparency chunk must be after palette"));return}if(t.length>this._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let e=0;e<t.length;e++)this._palette[e][3]=t[e];this.palette(this._palette)}this._colorType===Ls.COLORTYPE_GRAYSCALE&&this.transColor([t.readUInt16BE(0)]),this._colorType===Ls.COLORTYPE_COLOR&&this.transColor([t.readUInt16BE(0),t.readUInt16BE(2),t.readUInt16BE(4)]),this._handleChunkEnd()};si.prototype._handleGAMA=function(t){this.read(t,this._parseGAMA.bind(this))};si.prototype._parseGAMA=function(t){this._crc.write(t),this.gamma(t.readUInt32BE(0)/Ls.GAMMA_DIVISION),this._handleChunkEnd()};si.prototype._handleIDAT=function(t){this._emittedHeadersFinished||(this._emittedHeadersFinished=!0,this.headersFinished()),this.read(-t,this._parseIDAT.bind(this,t))};si.prototype._parseIDAT=function(t,e){if(this._crc.write(e),this._colorType===Ls.COLORTYPE_PALETTE_COLOR&&this._palette.length===0)throw new Error("Expected palette not found");this.inflateData(e);let r=t-e.length;r>0?this._handleIDAT(r):this._handleChunkEnd()};si.prototype._handleIEND=function(t){this.read(t,this._parseIEND.bind(this))};si.prototype._parseIEND=function(t){this._crc.write(t),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var ez=_(wMe=>{"use strict";var TMe=VK(),Tir=[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]}],wir=[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 Rir(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,m;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,m=i>>4,r.push(m,f);break;case 2:l=i&3,d=i>>2&3,f=i>>4&3,m=i>>6&3,r.push(m,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,m=i>>7&1,r.push(m,f,d,l,u,c,o,a);break}}return{get:function(i){for(;r.length<i;)s();let a=r.slice(0,i);return r=r.slice(i),a},resetAfterLine:function(){r.length=0},end:function(){if(n!==t.length)throw new Error("extra data found")}}}function Nir(t,e,r,n,s,i){let a=t.width,o=t.height,c=t.index;for(let u=0;u<o;u++)for(let l=0;l<a;l++){let d=r(l,u,c);Tir[n](e,s,d,i),i+=n}return i}function Oir(t,e,r,n,s,i){let a=t.width,o=t.height,c=t.index;for(let u=0;u<o;u++){for(let l=0;l<a;l++){let d=s.get(n),f=r(l,u,c);wir[n](e,d,f,i)}s.resetAfterLine()}}wMe.dataToBitMap=function(t,e){let r=e.width,n=e.height,s=e.depth,i=e.bpp,a=e.interlace,o;s!==8&&(o=Rir(t,s));let c;s<=8?c=Buffer.alloc(r*n*4):c=new Uint16Array(r*n*4);let u=Math.pow(2,s)-1,l=0,d,f;if(a)d=TMe.getImagePasses(r,n),f=TMe.getInterlaceIterator(r,n);else{let m=0;f=function(){let p=m;return m+=4,p},d=[{width:r,height:n}]}for(let m=0;m<d.length;m++)s===8?l=Nir(d[m],c,f,i,t,l):Oir(d[m],c,f,i,o,u);if(s===8){if(l!==t.length)throw new Error("extra data found")}else o.end();return c}});var tz=_((gXr,RMe)=>{"use strict";function kir(t,e,r,n,s){let i=0;for(let a=0;a<n;a++)for(let o=0;o<r;o++){let c=s[t[i]];if(!c)throw new Error("index "+t[i]+" not in palette");for(let u=0;u<4;u++)e[i+u]=c[u];i+=4}}function Pir(t,e,r,n,s){let i=0;for(let a=0;a<n;a++)for(let o=0;o<r;o++){let c=!1;if(s.length===1?s[0]===t[i]&&(c=!0):s[0]===t[i]&&s[1]===t[i+1]&&s[2]===t[i+2]&&(c=!0),c)for(let u=0;u<4;u++)e[i+u]=0;i+=4}}function Dir(t,e,r,n,s){let i=255,a=Math.pow(2,s)-1,o=0;for(let c=0;c<n;c++)for(let u=0;u<r;u++){for(let l=0;l<4;l++)e[o+l]=Math.floor(t[o+l]*i/a+.5);o+=4}}RMe.exports=function(t,e){let r=e.depth,n=e.width,s=e.height,i=e.colorType,a=e.transColor,o=e.palette,c=t;return i===3?kir(t,c,n,s,o):(a&&Pir(t,c,n,s,a),r!==8&&(r===16&&(c=Buffer.alloc(n*s*4)),Dir(t,c,n,s,r))),c}});var kMe=_((yXr,OMe)=>{"use strict";var Bir=require("util"),rz=require("zlib"),NMe=HK(),Lir=vMe(),Mir=ZK(),Wir=ez(),$ir=tz(),Pl=OMe.exports=function(t){NMe.call(this),this._parser=new Mir(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()};Bir.inherits(Pl,NMe);Pl.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};Pl.prototype._inflateData=function(t){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=rz.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,rz.Z_MIN_CHUNK);this._inflate=rz.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)};Pl.prototype._handleMetaData=function(t){this._metaData=t,this._bitmapInfo=Object.create(t),this._filter=new Lir(this._bitmapInfo)};Pl.prototype._handleTransColor=function(t){this._bitmapInfo.transColor=t};Pl.prototype._handlePalette=function(t){this._bitmapInfo.palette=t};Pl.prototype._simpleTransparency=function(){this._metaData.alpha=!0};Pl.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};Pl.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};Pl.prototype._complete=function(t){if(this.errord)return;let e;try{let r=Wir.dataToBitMap(t,this._bitmapInfo);e=$ir(r,this._bitmapInfo),r=null}catch(r){this._handleError(r);return}this.emit("parsed",e)}});var DMe=_((AXr,PMe)=>{"use strict";var kc=Bb();PMe.exports=function(t,e,r,n){let s=[kc.COLORTYPE_COLOR_ALPHA,kc.COLORTYPE_ALPHA].indexOf(n.colorType)!==-1;if(n.colorType===n.inputColorType){let p=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&&p)return t}let i=n.bitDepth!==16?t:new Uint16Array(t.buffer),a=255,o=kc.COLORTYPE_TO_BPP_MAP[n.inputColorType];o===4&&!n.inputHasAlpha&&(o=3);let c=kc.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 m(){let p,h,y,g=a;switch(n.inputColorType){case kc.COLORTYPE_COLOR_ALPHA:g=i[l+3],p=i[l],h=i[l+1],y=i[l+2];break;case kc.COLORTYPE_COLOR:p=i[l],h=i[l+1],y=i[l+2];break;case kc.COLORTYPE_ALPHA:g=i[l+1],p=i[l],h=p,y=p;break;case kc.COLORTYPE_GRAYSCALE:p=i[l],h=p,y=p;break;default:throw new Error("input color type:"+n.inputColorType+" is not supported at present")}return n.inputHasAlpha&&(s||(g/=a,p=Math.min(Math.max(Math.round((1-g)*f.red+g*p),0),a),h=Math.min(Math.max(Math.round((1-g)*f.green+g*h),0),a),y=Math.min(Math.max(Math.round((1-g)*f.blue+g*y),0),a))),{red:p,green:h,blue:y,alpha:g}}for(let p=0;p<r;p++)for(let h=0;h<e;h++){let y=m(i,l);switch(n.colorType){case kc.COLORTYPE_COLOR_ALPHA:case kc.COLORTYPE_COLOR:n.bitDepth===8?(u[d]=y.red,u[d+1]=y.green,u[d+2]=y.blue,s&&(u[d+3]=y.alpha)):(u.writeUInt16BE(y.red,d),u.writeUInt16BE(y.green,d+2),u.writeUInt16BE(y.blue,d+4),s&&u.writeUInt16BE(y.alpha,d+6));break;case kc.COLORTYPE_ALPHA:case kc.COLORTYPE_GRAYSCALE:{let g=(y.red+y.green+y.blue)/3;n.bitDepth===8?(u[d]=g,s&&(u[d+1]=y.alpha)):(u.writeUInt16BE(g,d),s&&u.writeUInt16BE(y.alpha,d+2));break}default:throw new Error("unrecognised color Type "+n.colorType)}l+=o,d+=c}return u}});var MMe=_((xXr,LMe)=>{"use strict";var BMe=KK();function Uir(t,e,r,n,s){for(let i=0;i<r;i++)n[s+i]=t[e+i]}function Fir(t,e,r){let n=0,s=e+r;for(let i=e;i<s;i++)n+=Math.abs(t[i]);return n}function qir(t,e,r,n,s,i){for(let a=0;a<r;a++){let o=a>=i?t[e+a-i]:0,c=t[e+a]-o;n[s+a]=c}}function jir(t,e,r,n){let s=0;for(let i=0;i<r;i++){let a=i>=n?t[e+i-n]:0,o=t[e+i]-a;s+=Math.abs(o)}return s}function Qir(t,e,r,n,s){for(let i=0;i<r;i++){let a=e>0?t[e+i-r]:0,o=t[e+i]-a;n[s+i]=o}}function Hir(t,e,r){let n=0,s=e+r;for(let i=e;i<s;i++){let a=e>0?t[i-r]:0,o=t[i]-a;n+=Math.abs(o)}return n}function Gir(t,e,r,n,s,i){for(let a=0;a<r;a++){let o=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 Vir(t,e,r,n){let s=0;for(let i=0;i<r;i++){let a=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 Kir(t,e,r,n,s,i){for(let a=0;a<r;a++){let o=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]-BMe(o,c,u);n[s+a]=l}}function zir(t,e,r,n){let s=0;for(let i=0;i<r;i++){let a=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]-BMe(a,o,c);s+=Math.abs(u)}return s}var Yir={0:Uir,1:qir,2:Qir,3:Gir,4:Kir},Jir={0:Fir,1:jir,2:Hir,3:Vir,4:zir};LMe.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;d<r;d++){if(i.length>1){let f=1/0;for(let m=0;m<i.length;m++){let p=Jir[i[m]](t,c,a,s);p<f&&(l=i[m],f=p)}}u[o]=l,o++,Yir[l](t,c,a,u,o,s),o+=a,c+=a}return u}});var nz=_((bXr,WMe)=>{"use strict";var ea=Bb(),Xir=XK(),Zir=DMe(),ear=MMe(),tar=require("zlib"),H0=WMe.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||tar.createDeflate,t.bitDepth=t.bitDepth||8,t.colorType=typeof t.colorType=="number"?t.colorType:ea.COLORTYPE_COLOR_ALPHA,t.inputColorType=typeof t.inputColorType=="number"?t.inputColorType:ea.COLORTYPE_COLOR_ALPHA,[ea.COLORTYPE_GRAYSCALE,ea.COLORTYPE_COLOR,ea.COLORTYPE_COLOR_ALPHA,ea.COLORTYPE_ALPHA].indexOf(t.colorType)===-1)throw new Error("option color type:"+t.colorType+" is not supported at present");if([ea.COLORTYPE_GRAYSCALE,ea.COLORTYPE_COLOR,ea.COLORTYPE_COLOR_ALPHA,ea.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")};H0.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};H0.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};H0.prototype.filterData=function(t,e,r){let n=Zir(t,e,r,this._options),s=ea.COLORTYPE_TO_BPP_MAP[this._options.colorType];return ear(n,e,r,this._options,s)};H0.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(Xir.crc32(n.slice(4,n.length-4)),n.length-4),n};H0.prototype.packGAMA=function(t){let e=Buffer.alloc(4);return e.writeUInt32BE(Math.floor(t*ea.GAMMA_DIVISION),0),this._packChunk(ea.TYPE_gAMA,e)};H0.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(ea.TYPE_IHDR,r)};H0.prototype.packIDAT=function(t){return this._packChunk(ea.TYPE_IDAT,t)};H0.prototype.packIEND=function(){return this._packChunk(ea.TYPE_IEND,null)}});var qMe=_((_Xr,FMe)=>{"use strict";var rar=require("util"),$Me=require("stream"),nar=Bb(),sar=nz(),UMe=FMe.exports=function(t){$Me.call(this);let e=t||{};this._packer=new sar(e),this._deflate=this._packer.createDeflate(),this.readable=!0};rar.inherits(UMe,$Me);UMe.prototype.pack=function(t,e,r,n){this.emit("data",Buffer.from(nar.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 KMe=_((XI,VMe)=>{"use strict";var jMe=require("assert").ok,Lb=require("zlib"),iar=require("util"),QMe=require("buffer").kMaxLength;function dg(t){if(!(this instanceof dg))return new dg(t);t&&t.chunkSize<Lb.Z_MIN_CHUNK&&(t.chunkSize=Lb.Z_MIN_CHUNK),Lb.Inflate.call(this,t),this._offset=this._offset===void 0?this._outOffset:this._offset,this._buffer=this._buffer||this._outBuffer,t&&t.maxLength!=null&&(this._maxLength=t.maxLength)}function aar(t){return new dg(t)}function HMe(t,e){e&&process.nextTick(e),t._handle&&(t._handle.close(),t._handle=null)}dg.prototype._processChunk=function(t,e,r){if(typeof r=="function")return Lb.Inflate._processChunk.call(this,t,e,r);let n=this,s=t&&t.length,i=this._chunkSize-this._offset,a=this._maxLength,o=0,c=[],u=0,l;this.on("error",function(p){l=p});function d(p,h){if(n._hadError)return;let y=i-h;if(jMe(y>=0,"have should not go down"),y>0){let g=n._buffer.slice(n._offset,n._offset+y);if(n._offset+=y,g.length>a&&(g=g.slice(0,a)),c.push(g),u+=g.length,a-=g.length,a===0)return!1}return(h===0||n._offset>=n._chunkSize)&&(i=n._chunkSize,n._offset=0,n._buffer=Buffer.allocUnsafe(n._chunkSize)),h===0?(o+=s-p,s=p,!0):!1}jMe(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>=QMe)throw HMe(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+QMe.toString(16)+" bytes");let m=Buffer.concat(c,u);return HMe(this),m};iar.inherits(dg,Lb.Inflate);function oar(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=Lb.Z_FINISH),t._processChunk(e,r)}function GMe(t,e){return oar(new dg(e),t)}VMe.exports=XI=GMe;XI.Inflate=dg;XI.createInflate=aar;XI.inflateSync=GMe});var sz=_((EXr,YMe)=>{"use strict";var zMe=YMe.exports=function(t){this._buffer=t,this._reads=[]};zMe.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e})};zMe.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 XMe=_(JMe=>{"use strict";var car=sz(),uar=zK();JMe.process=function(t,e){let r=[],n=new car(t);return new uar(e,{read:n.read.bind(n),write:function(i){r.push(i)},complete:function(){}}).start(),n.process(),Buffer.concat(r)}});var r5e=_((SXr,t5e)=>{"use strict";var ZMe=!0,e5e=require("zlib"),lar=KMe();e5e.deflateSync||(ZMe=!1);var dar=sz(),far=XMe(),par=ZK(),mar=ez(),har=tz();t5e.exports=function(t,e){if(!ZMe)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 m=new dar(t);if(new par(e,{read:m.read.bind(m),error:n,metadata:i,gamma:l,palette:o,transColor:a,inflateData:f,simpleTransparency:c}).start(),m.process(),r)throw r;let h=Buffer.concat(d);d.length=0;let y;if(s.interlace)y=e5e.inflateSync(h);else{let S=((s.width*s.bpp*s.depth+7>>3)+1)*s.height;y=lar(h,{chunkSize:S,maxLength:S})}if(h=null,!y||!y.length)throw new Error("bad png - invalid inflate data response");let g=far.process(y,s);h=null;let A=mar.dataToBitMap(g,s);g=null;let b=har(A,s);return s.data=b,s.gamma=u||0,s}});var a5e=_((IXr,i5e)=>{"use strict";var n5e=!0,s5e=require("zlib");s5e.deflateSync||(n5e=!1);var gar=Bb(),yar=nz();i5e.exports=function(t,e){if(!n5e)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 yar(r),s=[];s.push(Buffer.from(gar.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=s5e.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 o5e=_(iz=>{"use strict";var Aar=r5e(),xar=a5e();iz.read=function(t,e){return Aar(t,e||{})};iz.write=function(t,e){return xar(t,e)}});var l5e=_(u5e=>{"use strict";var bar=require("util"),c5e=require("stream"),_ar=kMe(),Ear=qMe(),Sar=o5e(),ba=u5e.PNG=function(t){c5e.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 _ar(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 Ear(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"))};bar.inherits(ba,c5e);ba.sync=Sar;ba.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)};ba.prototype.parse=function(t,e){if(e){let r,n;r=function(s){this.removeListener("error",n),this.data=s,e(null,this)}.bind(this),n=function(s){this.removeListener("parsed",r),e(s,null)}.bind(this),this.once("parsed",r),this.once("error",n)}return this.end(t),this};ba.prototype.write=function(t){return this._parser.write(t),!0};ba.prototype.end=function(t){this._parser.end(t)};ba.prototype._metadata=function(t){this.width=t.width,this.height=t.height,this.emit("metadata",t)};ba.prototype._gamma=function(t){this.gamma=t};ba.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};ba.bitblt=function(t,e,r,n,s,i,a,o){if(r|=0,n|=0,s|=0,i|=0,a|=0,o|=0,r>t.width||n>t.height||r+s>t.width||n+i>t.height)throw new Error("bitblt reading outside image");if(a>e.width||o>e.height||a+s>e.width||o+i>e.height)throw new Error("bitblt writing outside image");for(let c=0;c<i;c++)t.data.copy(e.data,(o+c)*e.width+a<<2,(n+c)*t.width+r<<2,(n+c)*t.width+r+s<<2)};ba.prototype.bitblt=function(t,e,r,n,s,i,a){return ba.bitblt(this,t,e,r,n,s,i,a),this};ba.adjustGamma=function(t){if(t.gamma){for(let e=0;e<t.height;e++)for(let r=0;r<t.width;r++){let n=t.width*e+r<<2;for(let s=0;s<3;s++){let i=t.data[n+s]/255;i=Math.pow(i,1/2.2/t.gamma),t.data[n+s]=Math.round(i*255)}}t.gamma=0}};ba.prototype.adjustGamma=function(){ba.adjustGamma(this)}});var ZI=_(fg=>{function d5e(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("")}}fg.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:d5e(e.color.dark||"#000000ff"),light:d5e(e.color.light||"#ffffffff")},type:e.type,rendererOpts:e.rendererOpts||{}}};fg.getScale=function(e,r){return r.width&&r.width>=e+r.margin*2?r.width/(e+r.margin*2):r.scale};fg.getImageWidth=function(e,r){let n=fg.getScale(e,r);return Math.floor((e+r.margin*2)*n)};fg.qrToImageData=function(e,r,n){let s=r.modules.size,i=r.modules.data,a=fg.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<o;l++)for(let d=0;d<o;d++){let f=(l*o+d)*4,m=n.color.light;if(l>=c&&d>=c&&l<o-c&&d<o-c){let p=Math.floor((l-c)/a),h=Math.floor((d-c)/a);m=u[i[p*s+h]?1:0]}e[f++]=m.r,e[f++]=m.g,e[f++]=m.b,e[f]=m.a}}});var f5e=_(Dl=>{var Iar=require("fs"),Car=l5e().PNG,az=ZI();Dl.render=function(e,r){let n=az.getOptions(r),s=n.rendererOpts,i=az.getImageWidth(e.modules.size,n);s.width=i,s.height=i;let a=new Car(s);return az.qrToImageData(a.data,e,n),a};Dl.renderToDataURL=function(e,r,n){typeof n>"u"&&(n=r,r=void 0),Dl.renderToBuffer(e,r,function(s,i){s&&n(s);let a="data:image/png;base64,";a+=i.toString("base64"),n(null,a)})};Dl.renderToBuffer=function(e,r,n){typeof n>"u"&&(n=r,r=void 0);let s=Dl.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()};Dl.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=Iar.createWriteStream(e);o.on("error",a),o.on("close",a),Dl.renderToFileStream(o,r,n)};Dl.renderToFileStream=function(e,r,n){Dl.render(r,n).pack().pipe(e)}});var p5e=_(gB=>{var Tar=ZI(),war={WW:" ",WB:"\u2584",BB:"\u2588",BW:"\u2580"},Rar={BB:" ",BW:"\u2584",WW:"\u2588",WB:"\u2580"};function Nar(t,e,r){return t&&e?r.BB:t&&!e?r.BW:!t&&e?r.WB:r.WW}gB.render=function(t,e,r){let n=Tar.getOptions(e),s=war;(n.color.dark.hex==="#ffffff"||n.color.light.hex==="#000000")&&(s=Rar);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<i;l+=2){o+=u;for(let d=0;d<i;d++){let f=a[l*i+d],m=a[(l+1)*i+d];o+=Nar(f,m,s)}o+=u+`
`}return o+=c.slice(0,-1),typeof r=="function"&&r(null,o),o};gB.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),a=gB.render(r,n);i.writeFile(e,a,s)}});var h5e=_(m5e=>{m5e.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<n;++l){o+=a;for(let d=0;d<n;d++)o+=s[l*n+d]?i:a;o+=u+`
`}return o+=c+`
`,typeof r=="function"&&r(null,o),o}});var x5e=_(A5e=>{var Oar="\x1B[47m",kar="\x1B[40m",oz="\x1B[37m",cz="\x1B[30m",pg="\x1B[0m",Par=Oar+cz,Dar=kar+oz,Bar=function(t,e,r){return{"00":pg+" "+t,"01":pg+e+"\u2584"+t,"02":pg+r+"\u2584"+t,10:pg+e+"\u2580"+t,11:" ",12:"\u2584",20:pg+r+"\u2580"+t,21:"\u2580",22:"\u2588"}},g5e=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"},y5e=function(t,e,r,n){return g5e(t,e,r,n)+g5e(t,e,r,n+1)};A5e.render=function(t,e,r){let n=t.modules.size,s=t.modules.data,i=!!(e&&e.inverse),a=e&&e.inverse?Dar:Par,u=Bar(a,i?cz:oz,i?oz:cz),l=pg+`
`+a,d=a;for(let f=-1;f<n+1;f+=2){for(let m=-1;m<n;m++)d+=u[y5e(s,n,m,f)];d+=u[y5e(s,n,n,f)]+l}return d+=pg,typeof r=="function"&&r(null,d),d}});var _5e=_(b5e=>{var Lar=h5e(),Mar=x5e();b5e.render=function(t,e,r){return e&&e.small?Mar.render(t,e,r):Lar.render(t,e,r)}});var lz=_(v5e=>{var War=ZI();function E5e(t,e){let r=t.a/255,n=e+'="'+t.hex+'"';return r<1?n+" "+e+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function uz(t,e,r){let n=t+e;return typeof r<"u"&&(n+=" "+r),n}function $ar(t,e,r){let n="",s=0,i=!1,a=0;for(let o=0;o<t.length;o++){let c=Math.floor(o%e),u=Math.floor(o/e);!c&&!i&&(i=!0),t[o]?(a++,o>0&&c>0&&t[o-1]||(n+=i?uz("M",c+r,.5+u+r):uz("m",s,0),s=0,i=!1),c+1<e&&t[o+1]||(n+=uz("h",a),a=0)):s++}return n}v5e.render=function(e,r,n){let s=War.getOptions(r),i=e.modules.size,a=e.modules.data,o=i+s.margin*2,c=s.color.light.a?"<path "+E5e(s.color.light,"fill")+' d="M0 0h'+o+"v"+o+'H0z"/>':"",u="<path "+E5e(s.color.dark,"stroke")+' d="'+$ar(a,i,s.margin)+'"/>',l='viewBox="0 0 '+o+" "+o+'"',f='<svg xmlns="http://www.w3.org/2000/svg" '+(s.width?'width="'+s.width+'" height="'+s.width+'" ':"")+l+' shape-rendering="crispEdges">'+c+u+`</svg>
`;return typeof n=="function"&&n(null,f),f}});var S5e=_(yB=>{var Uar=lz();yB.render=Uar.render;yB.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),o='<?xml version="1.0" encoding="utf-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">'+yB.render(r,n);i.writeFile(e,o,s)}});var I5e=_(AB=>{var dz=ZI();function Far(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 qar(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}AB.render=function(e,r,n){let s=n,i=r;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),r||(i=qar()),s=dz.getOptions(s);let a=dz.getImageWidth(e.modules.size,s),o=i.getContext("2d"),c=o.createImageData(a,a);return dz.qrToImageData(c.data,e,s),Far(o,i,a),o.putImageData(c,0,0),i};AB.renderToDataURL=function(e,r,n){let s=n;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),s||(s={});let i=AB.render(e,r,s),a=s.type||"image/png",o=s.rendererOpts||{};return i.toDataURL(a,o.quality)}});var T5e=_(eC=>{var jar=IK(),fz=QK(),C5e=I5e(),Qar=lz();function pz(t,e,r,n,s){let i=[].slice.call(arguments,1),a=i.length,o=typeof i[a-1]=="function";if(!o&&!jar())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=fz.create(r,n);c(t(l,e,n))}catch(l){u(l)}})}try{let c=fz.create(r,n);s(null,t(c,e,n))}catch(c){s(c)}}eC.create=fz.create;eC.toCanvas=pz.bind(null,C5e.render);eC.toDataURL=pz.bind(null,C5e.renderToDataURL);eC.toString=pz.bind(null,function(t,e,r){return Qar.render(t,r)})});var O5e=_(G0=>{var w5e=IK(),mz=QK(),Har=f5e(),R5e=p5e(),Gar=_5e(),N5e=S5e();function tC(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(w5e())e=r||{},r=null;else throw new Error("Callback required as last argument");return{opts:e,cb:r}}function Var(t){return t.slice((t.lastIndexOf(".")-1>>>0)+2).toLowerCase()}function xB(t){switch(t){case"svg":return N5e;case"txt":case"utf8":return R5e;case"png":case"image/png":default:return Har}}function Kar(t){switch(t){case"svg":return N5e;case"terminal":return Gar;case"utf8":default:return R5e}}function rC(t,e,r){if(!r.cb)return new Promise(function(n,s){try{let i=mz.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=mz.create(e,r.opts);return t(n,r.opts,r.cb)}catch(n){r.cb(n)}}G0.create=mz.create;G0.toCanvas=T5e().toCanvas;G0.toString=function(e,r,n){let s=tC(e,r,n),i=s.opts?s.opts.type:void 0,a=Kar(i);return rC(a.render,e,s)};G0.toDataURL=function(e,r,n){let s=tC(e,r,n),i=xB(s.opts.type);return rC(i.renderToDataURL,e,s)};G0.toBuffer=function(e,r,n){let s=tC(e,r,n),i=xB(s.opts.type);return rC(i.renderToBuffer,e,s)};G0.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&&!w5e())throw new Error("Too few arguments provided");let i=tC(r,n,s),a=i.opts.type||Var(e),c=xB(a).renderToFile.bind(null,e);return rC(c,r,i)};G0.toFileStream=function(e,r,n){if(arguments.length<2)throw new Error("Too few arguments provided");let s=tC(r,n,e.emit.bind(e,"error")),a=xB("png").renderToFileStream.bind(null,e);rC(a,r,s)}});var V0=_(($Xr,k5e)=>{k5e.exports=O5e()});var eWe=_((YXr,Z5e)=>{Z5e.exports=require("util").inspect});var lC=_((JXr,bWe)=>{var Oz=typeof Map=="function"&&Map.prototype,Ez=Object.getOwnPropertyDescriptor&&Oz?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,TB=Oz&&Ez&&typeof Ez.get=="function"?Ez.get:null,tWe=Oz&&Map.prototype.forEach,kz=typeof Set=="function"&&Set.prototype,vz=Object.getOwnPropertyDescriptor&&kz?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,wB=kz&&vz&&typeof vz.get=="function"?vz.get:null,rWe=kz&&Set.prototype.forEach,lor=typeof WeakMap=="function"&&WeakMap.prototype,oC=lor?WeakMap.prototype.has:null,dor=typeof WeakSet=="function"&&WeakSet.prototype,cC=dor?WeakSet.prototype.has:null,por=typeof WeakRef=="function"&&WeakRef.prototype,nWe=por?WeakRef.prototype.deref:null,mor=Boolean.prototype.valueOf,hor=Object.prototype.toString,gor=Function.prototype.toString,yor=String.prototype.match,Pz=String.prototype.slice,z0=String.prototype.replace,Aor=String.prototype.toUpperCase,sWe=String.prototype.toLowerCase,pWe=RegExp.prototype.test,iWe=Array.prototype.concat,Ml=Array.prototype.join,xor=Array.prototype.slice,aWe=Math.floor,Cz=typeof BigInt=="function"?BigInt.prototype.valueOf:null,Sz=Object.getOwnPropertySymbols,Tz=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,Wb=typeof Symbol=="function"&&typeof Symbol.iterator=="object",uC=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===Wb||!0)?Symbol.toStringTag:null,mWe=Object.prototype.propertyIsEnumerable,oWe=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function cWe(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||pWe.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-aWe(-t):aWe(t);if(n!==t){var s=String(n),i=Pz.call(e,s.length+1);return z0.call(s,r,"$&_")+"."+z0.call(z0.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return z0.call(e,r,"$&_")}var wz=eWe(),uWe=wz.custom,lWe=yWe(uWe)?uWe:null,hWe={__proto__:null,double:'"',single:"'"},bor={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};bWe.exports=function t(e,r,n,s){var i=r||{};if(vf(i,"quoteStyle")&&!vf(hWe,i.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(vf(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=vf(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(vf(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(vf(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 xWe(e,i);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return o?cWe(e,c):c}if(typeof e=="bigint"){var u=String(e)+"n";return o?cWe(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 Rz(e)?"[Array]":"[Object]";var d=Wor(i,n);if(typeof s>"u")s=[];else if(AWe(s,e)>=0)return"[Circular]";function f(P,L,Z){if(L&&(s=xor.call(s),s.push(L)),Z){var W={depth:i.depth};return vf(i,"quoteStyle")&&(W.quoteStyle=i.quoteStyle),t(P,W,n+1,s)}return t(P,i,n+1,s)}if(typeof e=="function"&&!dWe(e)){var m=Ror(e),p=CB(e,f);return"[Function"+(m?": "+m:" (anonymous)")+"]"+(p.length>0?" { "+Ml.call(p,", ")+" }":"")}if(yWe(e)){var h=Wb?z0.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):Tz.call(e);return typeof e=="object"&&!Wb?aC(h):h}if(Bor(e)){for(var y="<"+sWe.call(String(e.nodeName)),g=e.attributes||[],A=0;A<g.length;A++)y+=" "+g[A].name+"="+gWe(_or(g[A].value),"double",i);return y+=">",e.childNodes&&e.childNodes.length&&(y+="..."),y+="</"+sWe.call(String(e.nodeName))+">",y}if(Rz(e)){if(e.length===0)return"[]";var b=CB(e,f);return d&&!Mor(b)?"["+Nz(b,d)+"]":"[ "+Ml.call(b,", ")+" ]"}if(vor(e)){var x=CB(e,f);return!("cause"in Error.prototype)&&"cause"in e&&!mWe.call(e,"cause")?"{ ["+String(e)+"] "+Ml.call(iWe.call("[cause]: "+f(e.cause),x),", ")+" }":x.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+Ml.call(x,", ")+" }"}if(typeof e=="object"&&a){if(lWe&&typeof e[lWe]=="function"&&wz)return wz(e,{depth:l-n});if(a!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(Nor(e)){var S=[];return tWe&&tWe.call(e,function(P,L){S.push(f(L,e,!0)+" => "+f(P,e))}),fWe("Map",TB.call(e),S,d)}if(Por(e)){var T=[];return rWe&&rWe.call(e,function(P){T.push(f(P,e))}),fWe("Set",wB.call(e),T,d)}if(Oor(e))return Iz("WeakMap");if(Dor(e))return Iz("WeakSet");if(kor(e))return Iz("WeakRef");if(Ior(e))return aC(f(Number(e)));if(Tor(e))return aC(f(Cz.call(e)));if(Cor(e))return aC(mor.call(e));if(Sor(e))return aC(f(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(typeof globalThis<"u"&&e===globalThis||typeof global<"u"&&e===global)return"{ [object globalThis] }";if(!Eor(e)&&!dWe(e)){var I=CB(e,f),R=oWe?oWe(e)===Object.prototype:e instanceof Object||e.constructor===Object,N=e instanceof Object?"":"null prototype",k=!R&&uC&&Object(e)===e&&uC in e?Pz.call(Y0(e),8,-1):N?"Object":"",B=R||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",M=B+(k||N?"["+Ml.call(iWe.call([],k||[],N||[]),": ")+"] ":"");return I.length===0?M+"{}":d?M+"{"+Nz(I,d)+"}":M+"{ "+Ml.call(I,", ")+" }"}return String(e)};function gWe(t,e,r){var n=r.quoteStyle||e,s=hWe[n];return s+t+s}function _or(t){return z0.call(String(t),/"/g,"&quot;")}function yg(t){return!uC||!(typeof t=="object"&&(uC in t||typeof t[uC]<"u"))}function Rz(t){return Y0(t)==="[object Array]"&&yg(t)}function Eor(t){return Y0(t)==="[object Date]"&&yg(t)}function dWe(t){return Y0(t)==="[object RegExp]"&&yg(t)}function vor(t){return Y0(t)==="[object Error]"&&yg(t)}function Sor(t){return Y0(t)==="[object String]"&&yg(t)}function Ior(t){return Y0(t)==="[object Number]"&&yg(t)}function Cor(t){return Y0(t)==="[object Boolean]"&&yg(t)}function yWe(t){if(Wb)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!Tz)return!1;try{return Tz.call(t),!0}catch{}return!1}function Tor(t){if(!t||typeof t!="object"||!Cz)return!1;try{return Cz.call(t),!0}catch{}return!1}var wor=Object.prototype.hasOwnProperty||function(t){return t in this};function vf(t,e){return wor.call(t,e)}function Y0(t){return hor.call(t)}function Ror(t){if(t.name)return t.name;var e=yor.call(gor.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function AWe(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;r<n;r++)if(t[r]===e)return r;return-1}function Nor(t){if(!TB||!t||typeof t!="object")return!1;try{TB.call(t);try{wB.call(t)}catch{return!0}return t instanceof Map}catch{}return!1}function Oor(t){if(!oC||!t||typeof t!="object")return!1;try{oC.call(t,oC);try{cC.call(t,cC)}catch{return!0}return t instanceof WeakMap}catch{}return!1}function kor(t){if(!nWe||!t||typeof t!="object")return!1;try{return nWe.call(t),!0}catch{}return!1}function Por(t){if(!wB||!t||typeof t!="object")return!1;try{wB.call(t);try{TB.call(t)}catch{return!0}return t instanceof Set}catch{}return!1}function Dor(t){if(!cC||!t||typeof t!="object")return!1;try{cC.call(t,cC);try{oC.call(t,oC)}catch{return!0}return t instanceof WeakSet}catch{}return!1}function Bor(t){return!t||typeof t!="object"?!1:typeof HTMLElement<"u"&&t instanceof HTMLElement?!0:typeof t.nodeName=="string"&&typeof t.getAttribute=="function"}function xWe(t,e){if(t.length>e.maxStringLength){var r=t.length-e.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return xWe(Pz.call(t,0,e.maxStringLength),e)+n}var s=bor[e.quoteStyle||"single"];s.lastIndex=0;var i=z0.call(z0.call(t,s,"\\$1"),/[\x00-\x1f]/g,Lor);return gWe(i,"single",e)}function Lor(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":"")+Aor.call(e.toString(16))}function aC(t){return"Object("+t+")"}function Iz(t){return t+" { ? }"}function fWe(t,e,r,n){var s=n?Nz(r,n):Ml.call(r,", ");return t+" ("+e+") {"+s+"}"}function Mor(t){for(var e=0;e<t.length;e++)if(AWe(t[e],`
`)>=0)return!1;return!0}function Wor(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=Ml.call(Array(t.indent+1)," ");else return null;return{base:r,prev:Ml.call(Array(e+1),r)}}function Nz(t,e){if(t.length===0)return"";var r=`
`+e.prev+e.base;return r+Ml.call(t,","+r)+`
`+e.prev}function CB(t,e){var r=Rz(t),n=[];if(r){n.length=t.length;for(var s=0;s<t.length;s++)n[s]=vf(t,s)?e(t[s],t):""}var i=typeof Sz=="function"?Sz(t):[],a;if(Wb){a={};for(var o=0;o<i.length;o++)a["$"+i[o]]=i[o]}for(var c in t)vf(t,c)&&(r&&String(Number(c))===c&&c<t.length||Wb&&a["$"+c]instanceof Symbol||(pWe.call(/[^\w$]/,c)?n.push(e(c,t)+": "+e(t[c],t)):n.push(c+": "+e(t[c],t))));if(typeof Sz=="function")for(var u=0;u<i.length;u++)mWe.call(t,i[u])&&n.push("["+e(i[u])+"]: "+e(t[i[u]],t));return n}});var EWe=_((XXr,_We)=>{"use strict";var $or=lC(),Uor=g0(),RB=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},For=function(t,e){if(t){var r=RB(t,e);return r&&r.value}},qor=function(t,e,r){var n=RB(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},jor=function(t,e){return t?!!RB(t,e):!1},Qor=function(t,e){if(t)return RB(t,e,!0)};_We.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new Uor("Side channel does not contain "+$or(n))},delete:function(n){var s=e&&e.next,i=Qor(e,n);return i&&s&&s===i&&(e=void 0),!!i},get:function(n){return For(e,n)},has:function(n){return jor(e,n)},set:function(n,s){e||(e={next:void 0}),qor(e,n,s)}};return r}});var Dz=_((ZXr,IWe)=>{"use strict";var vWe=KS(),SWe=HH(),Hor=SWe([vWe("%String.prototype.indexOf%")]);IWe.exports=function(e,r){var n=vWe(e,!!r);return typeof n=="function"&&Hor(e,".prototype.")>-1?SWe([n]):n}});var Bz=_((eZr,TWe)=>{"use strict";var Gor=KS(),dC=Dz(),Vor=lC(),Kor=g0(),CWe=Gor("%Map%",!0),zor=dC("Map.prototype.get",!0),Yor=dC("Map.prototype.set",!0),Jor=dC("Map.prototype.has",!0),Xor=dC("Map.prototype.delete",!0),Zor=dC("Map.prototype.size",!0);TWe.exports=!!CWe&&function(){var e,r={assert:function(n){if(!r.has(n))throw new Kor("Side channel does not contain "+Vor(n))},delete:function(n){if(e){var s=Xor(e,n);return Zor(e)===0&&(e=void 0),s}return!1},get:function(n){if(e)return zor(e,n)},has:function(n){return e?Jor(e,n):!1},set:function(n,s){e||(e=new CWe),Yor(e,n,s)}};return r}});var RWe=_((tZr,wWe)=>{"use strict";var ecr=KS(),OB=Dz(),tcr=lC(),NB=Bz(),rcr=g0(),$b=ecr("%WeakMap%",!0),ncr=OB("WeakMap.prototype.get",!0),scr=OB("WeakMap.prototype.set",!0),icr=OB("WeakMap.prototype.has",!0),acr=OB("WeakMap.prototype.delete",!0);wWe.exports=$b?function(){var e,r,n={assert:function(s){if(!n.has(s))throw new rcr("Side channel does not contain "+tcr(s))},delete:function(s){if($b&&s&&(typeof s=="object"||typeof s=="function")){if(e)return acr(e,s)}else if(NB&&r)return r.delete(s);return!1},get:function(s){return $b&&s&&(typeof s=="object"||typeof s=="function")&&e?ncr(e,s):r&&r.get(s)},has:function(s){return $b&&s&&(typeof s=="object"||typeof s=="function")&&e?icr(e,s):!!r&&r.has(s)},set:function(s,i){$b&&s&&(typeof s=="object"||typeof s=="function")?(e||(e=new $b),scr(e,s,i)):NB&&(r||(r=NB()),r.set(s,i))}};return n}:NB});var OWe=_((rZr,NWe)=>{"use strict";var ocr=g0(),ccr=lC(),ucr=EWe(),lcr=Bz(),dcr=RWe(),fcr=dcr||lcr||ucr;NWe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new ocr("Side channel does not contain "+ccr(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=fcr()),e.set(n,s)}};return r}});var kB=_((nZr,kWe)=>{"use strict";var pcr=String.prototype.replace,mcr=/%20/g,Lz={RFC1738:"RFC1738",RFC3986:"RFC3986"};kWe.exports={default:Lz.RFC3986,formatters:{RFC1738:function(t){return pcr.call(t,mcr,"+")},RFC3986:function(t){return String(t)}},RFC1738:Lz.RFC1738,RFC3986:Lz.RFC3986}});var $z=_((sZr,DWe)=>{"use strict";var hcr=kB(),Mz=Object.prototype.hasOwnProperty,Ag=Array.isArray,Wl=function(){for(var t=[],e=0;e<256;++e)t.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return t}(),gcr=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(Ag(n)){for(var s=[],i=0;i<n.length;++i)typeof n[i]<"u"&&s.push(n[i]);r.obj[r.prop]=s}}},PWe=function(e,r){for(var n=r&&r.plainObjects?{__proto__:null}:{},s=0;s<e.length;++s)typeof e[s]<"u"&&(n[s]=e[s]);return n},ycr=function t(e,r,n){if(!r)return e;if(typeof r!="object"&&typeof r!="function"){if(Ag(e))e.push(r);else if(e&&typeof e=="object")(n&&(n.plainObjects||n.allowPrototypes)||!Mz.call(Object.prototype,r))&&(e[r]=!0);else return[e,r];return e}if(!e||typeof e!="object")return[e].concat(r);var s=e;return Ag(e)&&!Ag(r)&&(s=PWe(e,n)),Ag(e)&&Ag(r)?(r.forEach(function(i,a){if(Mz.call(e,a)){var o=e[a];o&&typeof o=="object"&&i&&typeof i=="object"?e[a]=t(o,i,n):e.push(i)}else e[a]=i}),e):Object.keys(r).reduce(function(i,a){var o=r[a];return Mz.call(i,a)?i[a]=t(i[a],o,n):i[a]=o,i},s)},Acr=function(e,r){return Object.keys(r).reduce(function(n,s){return n[s]=r[s],n},e)},xcr=function(t,e,r){var n=t.replace(/\+/g," ");if(r==="iso-8859-1")return n.replace(/%[0-9a-f]{2}/gi,unescape);try{return decodeURIComponent(n)}catch{return n}},Wz=1024,bcr=function(e,r,n,s,i){if(e.length===0)return e;var a=e;if(typeof e=="symbol"?a=Symbol.prototype.toString.call(e):typeof e!="string"&&(a=String(e)),n==="iso-8859-1")return escape(a).replace(/%u[0-9a-f]{4}/gi,function(m){return"%26%23"+parseInt(m.slice(2),16)+"%3B"});for(var o="",c=0;c<a.length;c+=Wz){for(var u=a.length>=Wz?a.slice(c,c+Wz):a,l=[],d=0;d<u.length;++d){var f=u.charCodeAt(d);if(f===45||f===46||f===95||f===126||f>=48&&f<=57||f>=65&&f<=90||f>=97&&f<=122||i===hcr.RFC1738&&(f===40||f===41)){l[l.length]=u.charAt(d);continue}if(f<128){l[l.length]=Wl[f];continue}if(f<2048){l[l.length]=Wl[192|f>>6]+Wl[128|f&63];continue}if(f<55296||f>=57344){l[l.length]=Wl[224|f>>12]+Wl[128|f>>6&63]+Wl[128|f&63];continue}d+=1,f=65536+((f&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=Wl[240|f>>18]+Wl[128|f>>12&63]+Wl[128|f>>6&63]+Wl[128|f&63]}o+=l.join("")}return o},_cr=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],s=0;s<r.length;++s)for(var i=r[s],a=i.obj[i.prop],o=Object.keys(a),c=0;c<o.length;++c){var u=o[c],l=a[u];typeof l=="object"&&l!==null&&n.indexOf(l)===-1&&(r.push({obj:a,prop:u}),n.push(l))}return gcr(r),e},Ecr=function(e){return Object.prototype.toString.call(e)==="[object RegExp]"},vcr=function(e){return!e||typeof e!="object"?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},Scr=function(e,r){return[].concat(e,r)},Icr=function(e,r){if(Ag(e)){for(var n=[],s=0;s<e.length;s+=1)n.push(r(e[s]));return n}return r(e)};DWe.exports={arrayToObject:PWe,assign:Acr,combine:Scr,compact:_cr,decode:xcr,encode:bcr,isBuffer:vcr,isRegExp:Ecr,maybeMap:Icr,merge:ycr}});var UWe=_((iZr,$We)=>{"use strict";var LWe=OWe(),PB=$z(),fC=kB(),Ccr=Object.prototype.hasOwnProperty,MWe={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},$l=Array.isArray,Tcr=Array.prototype.push,WWe=function(t,e){Tcr.apply(t,$l(e)?e:[e])},wcr=Date.prototype.toISOString,BWe=fC.default,Ms={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:PB.encode,encodeValuesOnly:!1,filter:void 0,format:BWe,formatter:fC.formatters[BWe],indices:!1,serializeDate:function(e){return wcr.call(e)},skipNulls:!1,strictNullHandling:!1},Rcr=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},Uz={},Ncr=function t(e,r,n,s,i,a,o,c,u,l,d,f,m,p,h,y,g,A){for(var b=e,x=A,S=0,T=!1;(x=x.get(Uz))!==void 0&&!T;){var I=x.get(e);if(S+=1,typeof I<"u"){if(I===S)throw new RangeError("Cyclic object value");T=!0}typeof x.get(Uz)>"u"&&(S=0)}if(typeof l=="function"?b=l(r,b):b instanceof Date?b=m(b):n==="comma"&&$l(b)&&(b=PB.maybeMap(b,function(J){return J instanceof Date?m(J):J})),b===null){if(a)return u&&!y?u(r,Ms.encoder,g,"key",p):r;b=""}if(Rcr(b)||PB.isBuffer(b)){if(u){var R=y?r:u(r,Ms.encoder,g,"key",p);return[h(R)+"="+h(u(b,Ms.encoder,g,"value",p))]}return[h(r)+"="+h(String(b))]}var N=[];if(typeof b>"u")return N;var k;if(n==="comma"&&$l(b))y&&u&&(b=PB.maybeMap(b,u)),k=[{value:b.length>0?b.join(",")||null:void 0}];else if($l(l))k=l;else{var B=Object.keys(b);k=d?B.sort(d):B}var M=c?String(r).replace(/\./g,"%2E"):String(r),P=s&&$l(b)&&b.length===1?M+"[]":M;if(i&&$l(b)&&b.length===0)return P+"[]";for(var L=0;L<k.length;++L){var Z=k[L],W=typeof Z=="object"&&Z&&typeof Z.value<"u"?Z.value:b[Z];if(!(o&&W===null)){var U=f&&c?String(Z).replace(/\./g,"%2E"):String(Z),V=$l(b)?typeof n=="function"?n(P,U):P:P+(f?"."+U:"["+U+"]");A.set(e,S);var j=LWe();j.set(Uz,A),WWe(N,t(W,V,n,s,i,a,o,c,n==="comma"&&y&&$l(b)?null:u,l,d,f,m,p,h,y,g,j))}}return N},Ocr=function(e){if(!e)return Ms;if(typeof e.allowEmptyArrays<"u"&&typeof e.allowEmptyArrays!="boolean")throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(typeof e.encodeDotInKeys<"u"&&typeof e.encodeDotInKeys!="boolean")throw new TypeError("`encodeDotInKeys` option can only be `true` or `false`, when provided");if(e.encoder!==null&&typeof e.encoder<"u"&&typeof e.encoder!="function")throw new TypeError("Encoder has to be a function.");var r=e.charset||Ms.charset;if(typeof e.charset<"u"&&e.charset!=="utf-8"&&e.charset!=="iso-8859-1")throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var n=fC.default;if(typeof e.format<"u"){if(!Ccr.call(fC.formatters,e.format))throw new TypeError("Unknown format option provided.");n=e.format}var s=fC.formatters[n],i=Ms.filter;(typeof e.filter=="function"||$l(e.filter))&&(i=e.filter);var a;if(e.arrayFormat in MWe?a=e.arrayFormat:"indices"in e?a=e.indices?"indices":"repeat":a=Ms.arrayFormat,"commaRoundTrip"in e&&typeof e.commaRoundTrip!="boolean")throw new TypeError("`commaRoundTrip` must be a boolean, or absent");var o=typeof e.allowDots>"u"?e.encodeDotInKeys===!0?!0:Ms.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:Ms.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Ms.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Ms.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?Ms.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:Ms.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:Ms.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:Ms.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:Ms.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:Ms.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:Ms.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Ms.strictNullHandling}};$We.exports=function(t,e){var r=t,n=Ocr(e),s,i;typeof n.filter=="function"?(i=n.filter,r=i("",r)):$l(n.filter)&&(i=n.filter,s=i);var a=[];if(typeof r!="object"||r===null)return"";var o=MWe[n.arrayFormat],c=o==="comma"&&n.commaRoundTrip;s||(s=Object.keys(r)),n.sort&&s.sort(n.sort);for(var u=LWe(),l=0;l<s.length;++l){var d=s[l],f=r[d];n.skipNulls&&f===null||WWe(a,Ncr(f,d,o,c,n.allowEmptyArrays,n.strictNullHandling,n.skipNulls,n.encodeDotInKeys,n.encode?n.encoder:null,n.filter,n.sort,n.allowDots,n.serializeDate,n.format,n.formatter,n.encodeValuesOnly,n.charset,u))}var m=a.join(n.delimiter),p=n.addQueryPrefix===!0?"?":"";return n.charsetSentinel&&(n.charset==="iso-8859-1"?p+="utf8=%26%2310003%3B&":p+="utf8=%E2%9C%93&"),m.length>0?p+m:""}});var QWe=_((aZr,jWe)=>{"use strict";var xg=$z(),Fz=Object.prototype.hasOwnProperty,FWe=Array.isArray,ts={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:xg.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},kcr=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},qWe=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},Pcr="utf8=%26%2310003%3B",Dcr="utf8=%E2%9C%93",Bcr=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<a.length;++c)a[c].indexOf("utf8=")===0&&(a[c]===Dcr?u="utf-8":a[c]===Pcr&&(u="iso-8859-1"),o=c,c=a.length);for(c=0;c<a.length;++c)if(c!==o){var l=a[c],d=l.indexOf("]="),f=d===-1?l.indexOf("="):d+1,m,p;f===-1?(m=r.decoder(l,ts.decoder,u,"key"),p=r.strictNullHandling?null:""):(m=r.decoder(l.slice(0,f),ts.decoder,u,"key"),p=xg.maybeMap(qWe(l.slice(f+1),r,FWe(n[m])?n[m].length:0),function(y){return r.decoder(y,ts.decoder,u,"value")})),p&&r.interpretNumericEntities&&u==="iso-8859-1"&&(p=kcr(String(p))),l.indexOf("[]=")>-1&&(p=FWe(p)?[p]:p);var h=Fz.call(n,m);h&&r.duplicates==="combine"?n[m]=xg.combine(n[m],p):(!h||r.duplicates==="last")&&(n[m]=p)}return n},Lcr=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:qWe(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)?[]:xg.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},Mcr=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&&Fz.call(Object.prototype,u)&&!n.allowPrototypes)return;l.push(u)}for(var d=0;n.depth>0&&(c=o.exec(i))!==null&&d<n.depth;){if(d+=1,!n.plainObjects&&Fz.call(Object.prototype,c[1].slice(1,-1))&&!n.allowPrototypes)return;l.push(c[1])}if(c){if(n.strictDepth===!0)throw new RangeError("Input depth exceeded depth option of "+n.depth+" and strictDepth is true");l.push("["+i.slice(c.index)+"]")}return Lcr(l,r,n,s)}},Wcr=function(e){if(!e)return ts;if(typeof e.allowEmptyArrays<"u"&&typeof e.allowEmptyArrays!="boolean")throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(typeof e.decodeDotInKeys<"u"&&typeof e.decodeDotInKeys!="boolean")throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(e.decoder!==null&&typeof e.decoder<"u"&&typeof e.decoder!="function")throw new TypeError("Decoder has to be a function.");if(typeof e.charset<"u"&&e.charset!=="utf-8"&&e.charset!=="iso-8859-1")throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");if(typeof e.throwOnLimitExceeded<"u"&&typeof e.throwOnLimitExceeded!="boolean")throw new TypeError("`throwOnLimitExceeded` option must be a boolean");var r=typeof e.charset>"u"?ts.charset:e.charset,n=typeof e.duplicates>"u"?ts.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:ts.allowDots:!!e.allowDots;return{allowDots:s,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:ts.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:ts.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:ts.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:ts.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:ts.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:ts.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:ts.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:ts.decoder,delimiter:typeof e.delimiter=="string"||xg.isRegExp(e.delimiter)?e.delimiter:ts.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:ts.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:ts.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:ts.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:ts.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:ts.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:ts.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};jWe.exports=function(t,e){var r=Wcr(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?Bcr(t,r):t,s=r.plainObjects?{__proto__:null}:{},i=Object.keys(n),a=0;a<i.length;++a){var o=i[a],c=Mcr(o,n[o],r,typeof t=="string");s=xg.merge(s,c,r)}return r.allowSparse===!0?s:xg.compact(s)}});var pC=_((oZr,HWe)=>{"use strict";var $cr=UWe(),Ucr=QWe(),Fcr=kB();HWe.exports={formats:Fcr,parse:Ucr,stringify:$cr}});var qz=_((GWe,DB)=>{(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 m(S){var T,I,R,N=ue.prototype={constructor:ue,toString:null,valueOf:null},k=new ue(1),B=20,M=4,P=-7,L=21,Z=-1e7,W=1e7,U=!1,V=1,j=0,J={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},se="0123456789abcdefghijklmnopqrstuvwxyz",oe=!0;function ue(F,G){var K,q,Q,ee,ne,re,X,ie,ce=this;if(!(ce instanceof ue))return new ue(F,G);if(G==null){if(F&&F._isBigNumber===!0){ce.s=F.s,!F.c||F.e>W?ce.c=ce.e=null:F.e<Z?ce.c=[ce.e=0]:(ce.e=F.e,ce.c=F.c.slice());return}if((re=typeof F=="number")&&F*0==0){if(ce.s=1/F<0?(F=-F,-1):1,F===~~F){for(ee=0,ne=F;ne>=10;ne/=10,ee++);ee>W?ce.c=ce.e=null:(ce.e=ee,ce.c=[F]);return}ie=String(F)}else{if(!r.test(ie=String(F)))return R(ce,ie,re);ce.s=ie.charCodeAt(0)==45?(ie=ie.slice(1),-1):1}(ee=ie.indexOf("."))>-1&&(ie=ie.replace(".","")),(ne=ie.search(/e/i))>0?(ee<0&&(ee=ne),ee+=+ie.slice(ne+1),ie=ie.substring(0,ne)):ee<0&&(ee=ie.length)}else{if(g(G,2,se.length,"Base"),G==10&&oe)return ce=new ue(F),Fe(ce,B+ce.e+1,M);if(ie=String(F),re=typeof F=="number"){if(F*0!=0)return R(ce,ie,re,G);if(ce.s=1/F<0?(ie=ie.slice(1),-1):1,ue.DEBUG&&ie.replace(/^0\.0*|\./,"").length>15)throw Error(a+F)}else ce.s=ie.charCodeAt(0)===45?(ie=ie.slice(1),-1):1;for(K=se.slice(0,G),ee=ne=0,X=ie.length;ne<X;ne++)if(K.indexOf(q=ie.charAt(ne))<0){if(q=="."){if(ne>ee){ee=X;continue}}else if(!Q&&(ie==ie.toUpperCase()&&(ie=ie.toLowerCase())||ie==ie.toLowerCase()&&(ie=ie.toUpperCase()))){Q=!0,ne=-1,ee=0;continue}return R(ce,String(F),re,G)}re=!1,ie=I(ie,G,10,ce.s),(ee=ie.indexOf("."))>-1?ie=ie.replace(".",""):ee=ie.length}for(ne=0;ie.charCodeAt(ne)===48;ne++);for(X=ie.length;ie.charCodeAt(--X)===48;);if(ie=ie.slice(ne,++X)){if(X-=ne,re&&ue.DEBUG&&X>15&&(F>u||F!==s(F)))throw Error(a+ce.s*F);if((ee=ee-ne-1)>W)ce.c=ce.e=null;else if(ee<Z)ce.c=[ce.e=0];else{if(ce.e=ee,ce.c=[],ne=(ee+1)%c,ee<0&&(ne+=c),ne<X){for(ne&&ce.c.push(+ie.slice(0,ne)),X-=c;ne<X;)ce.c.push(+ie.slice(ne,ne+=c));ne=c-(ie=ie.slice(ne)).length}else ne-=X;for(;ne--;ie+="0");ce.c.push(+ie)}}else ce.c=[ce.e=0]}ue.clone=m,ue.ROUND_UP=0,ue.ROUND_DOWN=1,ue.ROUND_CEIL=2,ue.ROUND_FLOOR=3,ue.ROUND_HALF_UP=4,ue.ROUND_HALF_DOWN=5,ue.ROUND_HALF_EVEN=6,ue.ROUND_HALF_CEIL=7,ue.ROUND_HALF_FLOOR=8,ue.EUCLID=9,ue.config=ue.set=function(F){var G,K;if(F!=null)if(typeof F=="object"){if(F.hasOwnProperty(G="DECIMAL_PLACES")&&(K=F[G],g(K,0,f,G),B=K),F.hasOwnProperty(G="ROUNDING_MODE")&&(K=F[G],g(K,0,8,G),M=K),F.hasOwnProperty(G="EXPONENTIAL_AT")&&(K=F[G],K&&K.pop?(g(K[0],-f,0,G),g(K[1],0,f,G),P=K[0],L=K[1]):(g(K,-f,f,G),P=-(L=K<0?-K:K))),F.hasOwnProperty(G="RANGE"))if(K=F[G],K&&K.pop)g(K[0],-f,-1,G),g(K[1],1,f,G),Z=K[0],W=K[1];else if(g(K,-f,f,G),K)Z=-(W=K<0?-K:K);else throw Error(i+G+" cannot be zero: "+K);if(F.hasOwnProperty(G="CRYPTO"))if(K=F[G],K===!!K)if(K)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))U=K;else throw U=!K,Error(i+"crypto unavailable");else U=K;else throw Error(i+G+" not true or false: "+K);if(F.hasOwnProperty(G="MODULO_MODE")&&(K=F[G],g(K,0,9,G),V=K),F.hasOwnProperty(G="POW_PRECISION")&&(K=F[G],g(K,0,f,G),j=K),F.hasOwnProperty(G="FORMAT"))if(K=F[G],typeof K=="object")J=K;else throw Error(i+G+" not an object: "+K);if(F.hasOwnProperty(G="ALPHABET"))if(K=F[G],typeof K=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(K))oe=K.slice(0,10)=="0123456789",se=K;else throw Error(i+G+" invalid: "+K)}else throw Error(i+"Object expected: "+F);return{DECIMAL_PLACES:B,ROUNDING_MODE:M,EXPONENTIAL_AT:[P,L],RANGE:[Z,W],CRYPTO:U,MODULO_MODE:V,POW_PRECISION:j,FORMAT:J,ALPHABET:se}},ue.isBigNumber=function(F){if(!F||F._isBigNumber!==!0)return!1;if(!ue.DEBUG)return!0;var G,K,q=F.c,Q=F.e,ee=F.s;e:if({}.toString.call(q)=="[object Array]"){if((ee===1||ee===-1)&&Q>=-f&&Q<=f&&Q===s(Q)){if(q[0]===0){if(Q===0&&q.length===1)return!0;break e}if(G=(Q+1)%c,G<1&&(G+=c),String(q[0]).length==G){for(G=0;G<q.length;G++)if(K=q[G],K<0||K>=o||K!==s(K))break e;if(K!==0)return!0}}}else if(q===null&&Q===null&&(ee===null||ee===1||ee===-1))return!0;throw Error(i+"Invalid BigNumber: "+F)},ue.maximum=ue.max=function(){return Ne(arguments,-1)},ue.minimum=ue.min=function(){return Ne(arguments,1)},ue.random=function(){var F=9007199254740992,G=Math.random()*F&2097151?function(){return s(Math.random()*F)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(K){var q,Q,ee,ne,re,X=0,ie=[],ce=new ue(k);if(K==null?K=B:g(K,0,f),ne=n(K/c),U)if(crypto.getRandomValues){for(q=crypto.getRandomValues(new Uint32Array(ne*=2));X<ne;)re=q[X]*131072+(q[X+1]>>>11),re>=9e15?(Q=crypto.getRandomValues(new Uint32Array(2)),q[X]=Q[0],q[X+1]=Q[1]):(ie.push(re%1e14),X+=2);X=ne/2}else if(crypto.randomBytes){for(q=crypto.randomBytes(ne*=7);X<ne;)re=(q[X]&31)*281474976710656+q[X+1]*1099511627776+q[X+2]*4294967296+q[X+3]*16777216+(q[X+4]<<16)+(q[X+5]<<8)+q[X+6],re>=9e15?crypto.randomBytes(7).copy(q,X):(ie.push(re%1e14),X+=7);X=ne/7}else throw U=!1,Error(i+"crypto unavailable");if(!U)for(;X<ne;)re=G(),re<9e15&&(ie[X++]=re%1e14);for(ne=ie[--X],K%=c,ne&&K&&(re=l[c-K],ie[X]=s(ne/re)*re);ie[X]===0;ie.pop(),X--);if(X<0)ie=[ee=0];else{for(ee=-1;ie[0]===0;ie.splice(0,1),ee-=c);for(X=1,re=ie[0];re>=10;re/=10,X++);X<c&&(ee-=c-X)}return ce.e=ee,ce.c=ie,ce}}(),ue.sum=function(){for(var F=1,G=arguments,K=new ue(G[0]);F<G.length;)K=K.plus(G[F++]);return K},I=function(){var F="0123456789";function G(K,q,Q,ee){for(var ne,re=[0],X,ie=0,ce=K.length;ie<ce;){for(X=re.length;X--;re[X]*=q);for(re[0]+=ee.indexOf(K.charAt(ie++)),ne=0;ne<re.length;ne++)re[ne]>Q-1&&(re[ne+1]==null&&(re[ne+1]=0),re[ne+1]+=re[ne]/Q|0,re[ne]%=Q)}return re.reverse()}return function(K,q,Q,ee,ne){var re,X,ie,ce,me,Oe,Pe,qe,Ye=K.indexOf("."),Je=B,et=M;for(Ye>=0&&(ce=j,j=0,K=K.replace(".",""),qe=new ue(q),Oe=qe.pow(K.length-Ye),j=ce,qe.c=G(x(h(Oe.c),Oe.e,"0"),10,Q,F),qe.e=qe.c.length),Pe=G(K,q,Q,ne?(re=se,F):(re=F,se)),ie=ce=Pe.length;Pe[--ce]==0;Pe.pop());if(!Pe[0])return re.charAt(0);if(Ye<0?--ie:(Oe.c=Pe,Oe.e=ie,Oe.s=ee,Oe=T(Oe,qe,Je,et,Q),Pe=Oe.c,me=Oe.r,ie=Oe.e),X=ie+Je+1,Ye=Pe[X],ce=Q/2,me=me||X<0||Pe[X+1]!=null,me=et<4?(Ye!=null||me)&&(et==0||et==(Oe.s<0?3:2)):Ye>ce||Ye==ce&&(et==4||me||et==6&&Pe[X-1]&1||et==(Oe.s<0?8:7)),X<1||!Pe[0])K=me?x(re.charAt(1),-Je,re.charAt(0)):re.charAt(0);else{if(Pe.length=X,me)for(--Q;++Pe[--X]>Q;)Pe[X]=0,X||(++ie,Pe=[1].concat(Pe));for(ce=Pe.length;!Pe[--ce];);for(Ye=0,K="";Ye<=ce;K+=re.charAt(Pe[Ye++]));K=x(K,ie,re.charAt(0))}return K}}(),T=function(){function F(q,Q,ee){var ne,re,X,ie,ce=0,me=q.length,Oe=Q%d,Pe=Q/d|0;for(q=q.slice();me--;)X=q[me]%d,ie=q[me]/d|0,ne=Pe*X+ie*Oe,re=Oe*X+ne%d*d+ce,ce=(re/ee|0)+(ne/d|0)+Pe*ie,q[me]=re%ee;return ce&&(q=[ce].concat(q)),q}function G(q,Q,ee,ne){var re,X;if(ee!=ne)X=ee>ne?1:-1;else for(re=X=0;re<ee;re++)if(q[re]!=Q[re]){X=q[re]>Q[re]?1:-1;break}return X}function K(q,Q,ee,ne){for(var re=0;ee--;)q[ee]-=re,re=q[ee]<Q[ee]?1:0,q[ee]=re*ne+q[ee]-Q[ee];for(;!q[0]&&q.length>1;q.splice(0,1));}return function(q,Q,ee,ne,re){var X,ie,ce,me,Oe,Pe,qe,Ye,Je,et,st,ut,rt,Pt,dt,Be,Xe,pt=q.s==Q.s?1:-1,nt=q.c,bt=Q.c;if(!nt||!nt[0]||!bt||!bt[0])return new ue(!q.s||!Q.s||(nt?bt&&nt[0]==bt[0]:!bt)?NaN:nt&&nt[0]==0||!bt?pt*0:pt/0);for(Ye=new ue(pt),Je=Ye.c=[],ie=q.e-Q.e,pt=ee+ie+1,re||(re=o,ie=p(q.e/c)-p(Q.e/c),pt=pt/c|0),ce=0;bt[ce]==(nt[ce]||0);ce++);if(bt[ce]>(nt[ce]||0)&&ie--,pt<0)Je.push(1),me=!0;else{for(Pt=nt.length,Be=bt.length,ce=0,pt+=2,Oe=s(re/(bt[0]+1)),Oe>1&&(bt=F(bt,Oe,re),nt=F(nt,Oe,re),Be=bt.length,Pt=nt.length),rt=Be,et=nt.slice(0,Be),st=et.length;st<Be;et[st++]=0);Xe=bt.slice(),Xe=[0].concat(Xe),dt=bt[0],bt[1]>=re/2&&dt++;do{if(Oe=0,X=G(bt,et,Be,st),X<0){if(ut=et[0],Be!=st&&(ut=ut*re+(et[1]||0)),Oe=s(ut/dt),Oe>1)for(Oe>=re&&(Oe=re-1),Pe=F(bt,Oe,re),qe=Pe.length,st=et.length;G(Pe,et,qe,st)==1;)Oe--,K(Pe,Be<qe?Xe:bt,qe,re),qe=Pe.length,X=1;else Oe==0&&(X=Oe=1),Pe=bt.slice(),qe=Pe.length;if(qe<st&&(Pe=[0].concat(Pe)),K(et,Pe,st,re),st=et.length,X==-1)for(;G(bt,et,Be,st)<1;)Oe++,K(et,Be<st?Xe:bt,st,re),st=et.length}else X===0&&(Oe++,et=[0]);Je[ce++]=Oe,et[0]?et[st++]=nt[rt]||0:(et=[nt[rt]],st=1)}while((rt++<Pt||et[0]!=null)&&pt--);me=et[0]!=null,Je[0]||Je.splice(0,1)}if(re==o){for(ce=1,pt=Je[0];pt>=10;pt/=10,ce++);Fe(Ye,ee+(Ye.e=ce+ie*c-1)+1,ne,me)}else Ye.e=ie,Ye.r=+me;return Ye}}();function Te(F,G,K,q){var Q,ee,ne,re,X;if(K==null?K=M:g(K,0,8),!F.c)return F.toString();if(Q=F.c[0],ne=F.e,G==null)X=h(F.c),X=q==1||q==2&&(ne<=P||ne>=L)?b(X,ne):x(X,ne,"0");else if(F=Fe(new ue(F),G,K),ee=F.e,X=h(F.c),re=X.length,q==1||q==2&&(G<=ee||ee<=P)){for(;re<G;X+="0",re++);X=b(X,ee)}else if(G-=ne+(q===2&&ee>ne),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 F.s<0&&Q?"-"+X:X}function Ne(F,G){for(var K,q,Q=1,ee=new ue(F[0]);Q<F.length;Q++)q=new ue(F[Q]),(!q.s||(K=y(ee,q))===G||K===0&&ee.s===G)&&(ee=q);return ee}function je(F,G,K){for(var q=1,Q=G.length;!G[--Q];G.pop());for(Q=G[0];Q>=10;Q/=10,q++);return(K=q+K*c-1)>W?F.c=F.e=null:K<Z?F.c=[F.e=0]:(F.e=K,F.c=G),F}R=function(){var F=/^(-?)0([xbo])(?=\w[\w.]*$)/i,G=/^([^.]+)\.$/,K=/^\.([^.]+)$/,q=/^-?(Infinity|NaN)$/,Q=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(ee,ne,re,X){var ie,ce=re?ne:ne.replace(Q,"");if(q.test(ce))ee.s=isNaN(ce)?null:ce<0?-1:1;else{if(!re&&(ce=ce.replace(F,function(me,Oe,Pe){return ie=(Pe=Pe.toLowerCase())=="x"?16:Pe=="b"?2:8,!X||X==ie?Oe:me}),X&&(ie=X,ce=ce.replace(G,"$1").replace(K,"0.$1")),ne!=ce))return new ue(ce,ie);if(ue.DEBUG)throw Error(i+"Not a"+(X?" base "+X:"")+" number: "+ne);ee.s=null}ee.c=ee.e=null}}();function Fe(F,G,K,q){var Q,ee,ne,re,X,ie,ce,me=F.c,Oe=l;if(me){e:{for(Q=1,re=me[0];re>=10;re/=10,Q++);if(ee=G-Q,ee<0)ee+=c,ne=G,X=me[ie=0],ce=s(X/Oe[Q-ne-1]%10);else if(ie=n((ee+1)/c),ie>=me.length)if(q){for(;me.length<=ie;me.push(0));X=ce=0,Q=1,ee%=c,ne=ee-c+1}else break e;else{for(X=re=me[ie],Q=1;re>=10;re/=10,Q++);ee%=c,ne=ee-c+Q,ce=ne<0?0:s(X/Oe[Q-ne-1]%10)}if(q=q||G<0||me[ie+1]!=null||(ne<0?X:X%Oe[Q-ne-1]),q=K<4?(ce||q)&&(K==0||K==(F.s<0?3:2)):ce>5||ce==5&&(K==4||q||K==6&&(ee>0?ne>0?X/Oe[Q-ne]:0:me[ie-1])%10&1||K==(F.s<0?8:7)),G<1||!me[0])return me.length=0,q?(G-=F.e+1,me[0]=Oe[(c-G%c)%c],F.e=-G||0):me[0]=F.e=0,F;if(ee==0?(me.length=ie,re=1,ie--):(me.length=ie+1,re=Oe[c-ee],me[ie]=ne>0?s(X/Oe[Q-ne]%Oe[ne])*re:0),q)for(;;)if(ie==0){for(ee=1,ne=me[0];ne>=10;ne/=10,ee++);for(ne=me[0]+=re,re=1;ne>=10;ne/=10,re++);ee!=re&&(F.e++,me[0]==o&&(me[0]=1));break}else{if(me[ie]+=re,me[ie]!=o)break;me[ie--]=0,re=1}for(ee=me.length;me[--ee]===0;me.pop());}F.e>W?F.c=F.e=null:F.e<Z&&(F.c=[F.e=0])}return F}function ve(F){var G,K=F.e;return K===null?F.toString():(G=h(F.c),G=K<=P||K>=L?b(G,K):x(G,K,"0"),F.s<0?"-"+G:G)}return N.absoluteValue=N.abs=function(){var F=new ue(this);return F.s<0&&(F.s=1),F},N.comparedTo=function(F,G){return y(this,new ue(F,G))},N.decimalPlaces=N.dp=function(F,G){var K,q,Q,ee=this;if(F!=null)return g(F,0,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),F+ee.e+1,G);if(!(K=ee.c))return null;if(q=((Q=K.length-1)-p(this.e/c))*c,Q=K[Q])for(;Q%10==0;Q/=10,q--);return q<0&&(q=0),q},N.dividedBy=N.div=function(F,G){return T(this,new ue(F,G),B,M)},N.dividedToIntegerBy=N.idiv=function(F,G){return T(this,new ue(F,G),0,1)},N.exponentiatedBy=N.pow=function(F,G){var K,q,Q,ee,ne,re,X,ie,ce,me=this;if(F=new ue(F),F.c&&!F.isInteger())throw Error(i+"Exponent not an integer: "+ve(F));if(G!=null&&(G=new ue(G)),re=F.e>14,!me.c||!me.c[0]||me.c[0]==1&&!me.e&&me.c.length==1||!F.c||!F.c[0])return ce=new ue(Math.pow(+ve(me),re?F.s*(2-A(F)):+ve(F))),G?ce.mod(G):ce;if(X=F.s<0,G){if(G.c?!G.c[0]:!G.s)return new ue(NaN);q=!X&&me.isInteger()&&G.isInteger(),q&&(me=me.mod(G))}else{if(F.e>9&&(me.e>0||me.e<-1||(me.e==0?me.c[0]>1||re&&me.c[1]>=24e7:me.c[0]<8e13||re&&me.c[0]<=9999975e7)))return ee=me.s<0&&A(F)?-0:0,me.e>-1&&(ee=1/ee),new ue(X?1/ee:ee);j&&(ee=n(j/c+2))}for(re?(K=new ue(.5),X&&(F.s=1),ie=A(F)):(Q=Math.abs(+ve(F)),ie=Q%2),ce=new ue(k);;){if(ie){if(ce=ce.times(me),!ce.c)break;ee?ce.c.length>ee&&(ce.c.length=ee):q&&(ce=ce.mod(G))}if(Q){if(Q=s(Q/2),Q===0)break;ie=Q%2}else if(F=F.times(K),Fe(F,F.e+1,1),F.e>14)ie=A(F);else{if(Q=+ve(F),Q===0)break;ie=Q%2}me=me.times(me),ee?me.c&&me.c.length>ee&&(me.c.length=ee):q&&(me=me.mod(G))}return q?ce:(X&&(ce=k.div(ce)),G?ce.mod(G):ee?Fe(ce,j,M,ne):ce)},N.integerValue=function(F){var G=new ue(this);return F==null?F=M:g(F,0,8),Fe(G,G.e+1,F)},N.isEqualTo=N.eq=function(F,G){return y(this,new ue(F,G))===0},N.isFinite=function(){return!!this.c},N.isGreaterThan=N.gt=function(F,G){return y(this,new ue(F,G))>0},N.isGreaterThanOrEqualTo=N.gte=function(F,G){return(G=y(this,new ue(F,G)))===1||G===0},N.isInteger=function(){return!!this.c&&p(this.e/c)>this.c.length-2},N.isLessThan=N.lt=function(F,G){return y(this,new ue(F,G))<0},N.isLessThanOrEqualTo=N.lte=function(F,G){return(G=y(this,new ue(F,G)))===-1||G===0},N.isNaN=function(){return!this.s},N.isNegative=function(){return this.s<0},N.isPositive=function(){return this.s>0},N.isZero=function(){return!!this.c&&this.c[0]==0},N.minus=function(F,G){var K,q,Q,ee,ne=this,re=ne.s;if(F=new ue(F,G),G=F.s,!re||!G)return new ue(NaN);if(re!=G)return F.s=-G,ne.plus(F);var X=ne.e/c,ie=F.e/c,ce=ne.c,me=F.c;if(!X||!ie){if(!ce||!me)return ce?(F.s=-G,F):new ue(me?ne:NaN);if(!ce[0]||!me[0])return me[0]?(F.s=-G,F):new ue(ce[0]?ne:M==3?-0:0)}if(X=p(X),ie=p(ie),ce=ce.slice(),re=X-ie){for((ee=re<0)?(re=-re,Q=ce):(ie=X,Q=me),Q.reverse(),G=re;G--;Q.push(0));Q.reverse()}else for(q=(ee=(re=ce.length)<(G=me.length))?re:G,re=G=0;G<q;G++)if(ce[G]!=me[G]){ee=ce[G]<me[G];break}if(ee&&(Q=ce,ce=me,me=Q,F.s=-F.s),G=(q=me.length)-(K=ce.length),G>0)for(;G--;ce[K++]=0);for(G=o-1;q>re;){if(ce[--q]<me[q]){for(K=q;K&&!ce[--K];ce[K]=G);--ce[K],ce[q]+=o}ce[q]-=me[q]}for(;ce[0]==0;ce.splice(0,1),--ie);return ce[0]?je(F,ce,ie):(F.s=M==3?-1:1,F.c=[F.e=0],F)},N.modulo=N.mod=function(F,G){var K,q,Q=this;return F=new ue(F,G),!Q.c||!F.s||F.c&&!F.c[0]?new ue(NaN):!F.c||Q.c&&!Q.c[0]?new ue(Q):(V==9?(q=F.s,F.s=1,K=T(Q,F,0,3),F.s=q,K.s*=q):K=T(Q,F,0,V),F=Q.minus(K.times(F)),!F.c[0]&&V==1&&(F.s=Q.s),F)},N.multipliedBy=N.times=function(F,G){var K,q,Q,ee,ne,re,X,ie,ce,me,Oe,Pe,qe,Ye,Je,et=this,st=et.c,ut=(F=new ue(F,G)).c;if(!st||!ut||!st[0]||!ut[0])return!et.s||!F.s||st&&!st[0]&&!ut||ut&&!ut[0]&&!st?F.c=F.e=F.s=null:(F.s*=et.s,!st||!ut?F.c=F.e=null:(F.c=[0],F.e=0)),F;for(q=p(et.e/c)+p(F.e/c),F.s*=et.s,X=st.length,me=ut.length,X<me&&(qe=st,st=ut,ut=qe,Q=X,X=me,me=Q),Q=X+me,qe=[];Q--;qe.push(0));for(Ye=o,Je=d,Q=me;--Q>=0;){for(K=0,Oe=ut[Q]%Je,Pe=ut[Q]/Je|0,ne=X,ee=Q+ne;ee>Q;)ie=st[--ne]%Je,ce=st[ne]/Je|0,re=Pe*ie+ce*Oe,ie=Oe*ie+re%Je*Je+qe[ee]+K,K=(ie/Ye|0)+(re/Je|0)+Pe*ce,qe[ee--]=ie%Ye;qe[ee]=K}return K?++q:qe.splice(0,1),je(F,qe,q)},N.negated=function(){var F=new ue(this);return F.s=-F.s||null,F},N.plus=function(F,G){var K,q=this,Q=q.s;if(F=new ue(F,G),G=F.s,!Q||!G)return new ue(NaN);if(Q!=G)return F.s=-G,q.minus(F);var ee=q.e/c,ne=F.e/c,re=q.c,X=F.c;if(!ee||!ne){if(!re||!X)return new ue(Q/0);if(!re[0]||!X[0])return X[0]?F:new ue(re[0]?q:Q*0)}if(ee=p(ee),ne=p(ne),re=re.slice(),Q=ee-ne){for(Q>0?(ne=ee,K=X):(Q=-Q,K=re),K.reverse();Q--;K.push(0));K.reverse()}for(Q=re.length,G=X.length,Q-G<0&&(K=X,X=re,re=K,G=Q),Q=0;G;)Q=(re[--G]=re[G]+X[G]+Q)/o|0,re[G]=o===re[G]?0:re[G]%o;return Q&&(re=[Q].concat(re),++ne),je(F,re,ne)},N.precision=N.sd=function(F,G){var K,q,Q,ee=this;if(F!=null&&F!==!!F)return g(F,1,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),F,G);if(!(K=ee.c))return null;if(Q=K.length-1,q=Q*c+1,Q=K[Q]){for(;Q%10==0;Q/=10,q--);for(Q=K[0];Q>=10;Q/=10,q++);}return F&&ee.e+1>q&&(q=ee.e+1),q},N.shiftedBy=function(F){return g(F,-u,u),this.times("1e"+F)},N.squareRoot=N.sqrt=function(){var F,G,K,q,Q,ee=this,ne=ee.c,re=ee.s,X=ee.e,ie=B+4,ce=new ue("0.5");if(re!==1||!ne||!ne[0])return new ue(!re||re<0&&(!ne||ne[0])?NaN:ne?ee:1/0);if(re=Math.sqrt(+ve(ee)),re==0||re==1/0?(G=h(ne),(G.length+X)%2==0&&(G+="0"),re=Math.sqrt(+G),X=p((X+1)/2)-(X<0||X%2),re==1/0?G="5e"+X:(G=re.toExponential(),G=G.slice(0,G.indexOf("e")+1)+X),K=new ue(G)):K=new ue(re+""),K.c[0]){for(X=K.e,re=X+ie,re<3&&(re=0);;)if(Q=K,K=ce.times(Q.plus(T(ee,Q,ie,1))),h(Q.c).slice(0,re)===(G=h(K.c)).slice(0,re))if(K.e<X&&--re,G=G.slice(re-3,re+1),G=="9999"||!q&&G=="4999"){if(!q&&(Fe(Q,Q.e+B+2,0),Q.times(Q).eq(ee))){K=Q;break}ie+=4,re+=4,q=1}else{(!+G||!+G.slice(1)&&G.charAt(0)=="5")&&(Fe(K,K.e+B+2,1),F=!K.times(K).eq(ee));break}}return Fe(K,K.e+B+1,M,F)},N.toExponential=function(F,G){return F!=null&&(g(F,0,f),F++),Te(this,F,G,1)},N.toFixed=function(F,G){return F!=null&&(g(F,0,f),F=F+this.e+1),Te(this,F,G)},N.toFormat=function(F,G,K){var q,Q=this;if(K==null)F!=null&&G&&typeof G=="object"?(K=G,G=null):F&&typeof F=="object"?(K=F,F=G=null):K=J;else if(typeof K!="object")throw Error(i+"Argument not an object: "+K);if(q=Q.toFixed(F,G),Q.c){var ee,ne=q.split("."),re=+K.groupSize,X=+K.secondaryGroupSize,ie=K.groupSeparator||"",ce=ne[0],me=ne[1],Oe=Q.s<0,Pe=Oe?ce.slice(1):ce,qe=Pe.length;if(X&&(ee=re,re=X,X=ee,qe-=ee),re>0&&qe>0){for(ee=qe%re||re,ce=Pe.substr(0,ee);ee<qe;ee+=re)ce+=ie+Pe.substr(ee,re);X>0&&(ce+=ie+Pe.slice(ee)),Oe&&(ce="-"+ce)}q=me?ce+(K.decimalSeparator||"")+((X=+K.fractionGroupSize)?me.replace(new RegExp("\\d{"+X+"}\\B","g"),"$&"+(K.fractionGroupSeparator||"")):me):ce}return(K.prefix||"")+q+(K.suffix||"")},N.toFraction=function(F){var G,K,q,Q,ee,ne,re,X,ie,ce,me,Oe,Pe=this,qe=Pe.c;if(F!=null&&(re=new ue(F),!re.isInteger()&&(re.c||re.s!==1)||re.lt(k)))throw Error(i+"Argument "+(re.isInteger()?"out of range: ":"not an integer: ")+ve(re));if(!qe)return new ue(Pe);for(G=new ue(k),ie=K=new ue(k),q=X=new ue(k),Oe=h(qe),ee=G.e=Oe.length-Pe.e-1,G.c[0]=l[(ne=ee%c)<0?c+ne:ne],F=!F||re.comparedTo(G)>0?ee>0?G:ie:re,ne=W,W=1/0,re=new ue(Oe),X.c[0]=0;ce=T(re,G,0,1),Q=K.plus(ce.times(q)),Q.comparedTo(F)!=1;)K=q,q=Q,ie=X.plus(ce.times(Q=ie)),X=Q,G=re.minus(ce.times(Q=G)),re=Q;return Q=T(F.minus(K),q,0,1),X=X.plus(Q.times(ie)),K=K.plus(Q.times(q)),X.s=ie.s=Pe.s,ee=ee*2,me=T(ie,q,ee,M).minus(Pe).abs().comparedTo(T(X,K,ee,M).minus(Pe).abs())<1?[ie,q]:[X,K],W=ne,me},N.toNumber=function(){return+ve(this)},N.toPrecision=function(F,G){return F!=null&&g(F,1,f),Te(this,F,G,2)},N.toString=function(F){var G,K=this,q=K.s,Q=K.e;return Q===null?q?(G="Infinity",q<0&&(G="-"+G)):G="NaN":(F==null?G=Q<=P||Q>=L?b(h(K.c),Q):x(h(K.c),Q,"0"):F===10&&oe?(K=Fe(new ue(K),B+Q+1,M),G=x(h(K.c),K.e,"0")):(g(F,2,se.length,"Base"),G=I(x(h(K.c),Q,"0"),10,F,q,!0)),q<0&&K.c[0]&&(G="-"+G)),G},N.valueOf=N.toJSON=function(){return ve(this)},N._isBigNumber=!0,S!=null&&ue.set(S),ue}function p(S){var T=S|0;return S>0||S===T?T:T-1}function h(S){for(var T,I,R=1,N=S.length,k=S[0]+"";R<N;){for(T=S[R++]+"",I=c-T.length;I--;T="0"+T);k+=T}for(N=k.length;k.charCodeAt(--N)===48;);return k.slice(0,N+1||1)}function y(S,T){var I,R,N=S.c,k=T.c,B=S.s,M=T.s,P=S.e,L=T.e;if(!B||!M)return null;if(I=N&&!N[0],R=k&&!k[0],I||R)return I?R?0:-M:B;if(B!=M)return B;if(I=B<0,R=P==L,!N||!k)return R?0:!N^I?1:-1;if(!R)return P>L^I?1:-1;for(M=(P=N.length)<(L=k.length)?P:L,B=0;B<M;B++)if(N[B]!=k[B])return N[B]>k[B]^I?1:-1;return P==L?0:P>L^I?1:-1}function g(S,T,I,R){if(S<T||S>I||S!==s(S))throw Error(i+(R||"Argument")+(typeof S=="number"?S<T||S>I?" out of range: ":" not an integer: ":" not a primitive number: ")+String(S))}function A(S){var T=S.c.length-1;return p(S.e/c)==T&&S.c[T]%2!=0}function b(S,T){return(S.length>1?S.charAt(0)+"."+S.slice(1):S)+(T<0?"e":"e+")+T}function x(S,T,I){var R,N;if(T<0){for(N=I+".";++T;N+=I);S=N+S}else if(R=S.length,++T>R){for(N=I,T-=R;--T;N+=I);S+=N}else T<R&&(S=S.slice(0,T)+"."+S.slice(T));return S}e=m(),e.default=e.BigNumber=e,typeof define=="function"&&define.amd?define(function(){return e}):typeof DB<"u"&&DB.exports?DB.exports=e:(t||(t=typeof self<"u"&&self?self:window),t.BigNumber=e)})(GWe)});var YWe=_((cZr,zWe)=>{var VWe=qz(),KWe=zWe.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,m,p,h=n,y,g=l[u],A=g!=null&&(g instanceof VWe||VWe.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 A?g:o(g);case"number":return isFinite(g)?String(g):"null";case"boolean":case"null":case"bigint":return String(g);case"object":if(!g)return"null";if(n+=s,y=[],Object.prototype.toString.apply(g)==="[object Array]"){for(p=g.length,d=0;d<p;d+=1)y[d]=c(d,g)||"null";return m=y.length===0?"[]":n?`[
`+n+y.join(`,
`+n)+`
`+h+"]":"["+y.join(",")+"]",n=h,m}if(a&&typeof a=="object")for(p=a.length,d=0;d<p;d+=1)typeof a[d]=="string"&&(f=a[d],m=c(f,g),m&&y.push(o(f)+(n?": ":":")+m));else Object.keys(g).forEach(function(b){var x=c(b,g);x&&y.push(o(b)+(n?": ":":")+x)});return m=y.length===0?"{}":n?`{
`+n+y.join(`,
`+n)+`
`+h+"}":"{"+y.join(",")+"}",n=h,m}}typeof KWe.stringify!="function"&&(KWe.stringify=function(u,l,d){var f;if(n="",s="",typeof d=="number")for(f=0;f<d;f+=1)s+=" ";else typeof d=="string"&&(s=d);if(a=l,l&&typeof l!="function"&&(typeof l!="object"||typeof l.length!="number"))throw new Error("JSON.stringify");return c("",{"":u})})})()});var XWe=_((uZr,JWe)=>{var BB=null,qcr=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,jcr=/(?: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)/,Qcr=function(t){"use strict";var e={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(t!=null){if(t.strict===!0&&(e.strict=!0),t.storeAsString===!0&&(e.storeAsString=!0),e.alwaysParseAsBig=t.alwaysParseAsBig===!0?t.alwaysParseAsBig:!1,e.useNativeBigInt=t.useNativeBigInt===!0?t.useNativeBigInt:!1,typeof t.constructorAction<"u")if(t.constructorAction==="error"||t.constructorAction==="ignore"||t.constructorAction==="preserve")e.constructorAction=t.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${t.constructorAction}`);if(typeof t.protoAction<"u")if(t.protoAction==="error"||t.protoAction==="ignore"||t.protoAction==="preserve")e.protoAction=t.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${t.protoAction}`)}var r,n,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
`,r:"\r",t:" "},i,a=function(h){throw{name:"SyntaxError",message:h,at:r,text:i}},o=function(h){return h&&h!==n&&a("Expected '"+h+"' instead of '"+n+"'"),n=i.charAt(r),r+=1,n},c=function(){var h,y="";for(n==="-"&&(y="-",o("-"));n>="0"&&n<="9";)y+=n,o();if(n===".")for(y+=".";o()&&n>="0"&&n<="9";)y+=n;if(n==="e"||n==="E")for(y+=n,o(),(n==="-"||n==="+")&&(y+=n,o());n>="0"&&n<="9";)y+=n,o();if(h=+y,!isFinite(h))a("Bad number");else return BB==null&&(BB=qz()),y.length>15?e.storeAsString?y:e.useNativeBigInt?BigInt(y):new BB(y):e.alwaysParseAsBig?e.useNativeBigInt?BigInt(h):new BB(h):h},u=function(){var h,y,g="",A;if(n==='"')for(var b=r;o();){if(n==='"')return r-1>b&&(g+=i.substring(b,r-1)),o(),g;if(n==="\\"){if(r-1>b&&(g+=i.substring(b,r-1)),o(),n==="u"){for(A=0,y=0;y<4&&(h=parseInt(o(),16),!!isFinite(h));y+=1)A=A*16+h;g+=String.fromCharCode(A)}else if(typeof s[n]=="string")g+=s[n];else break;b=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,m=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")},p=function(){var h,y=Object.create(null);if(n==="{"){if(o("{"),l(),n==="}")return o("}"),y;for(;n;){if(h=u(),l(),o(":"),e.strict===!0&&Object.hasOwnProperty.call(y,h)&&a('Duplicate key "'+h+'"'),qcr.test(h)===!0?e.protoAction==="error"?a("Object contains forbidden prototype property"):e.protoAction==="ignore"?f():y[h]=f():jcr.test(h)===!0?e.constructorAction==="error"?a("Object contains forbidden constructor property"):e.constructorAction==="ignore"?f():y[h]=f():y[h]=f(),l(),n==="}")return o("}"),y;o(","),l()}}a("Bad object")};return f=function(){switch(l(),n){case"{":return p();case"[":return m();case'"':return u();case"-":return c();default:return n>="0"&&n<="9"?c():d()}},function(h,y){var g;return i=h+"",r=0,n=" ",g=f(),l(),n&&a("Syntax error"),typeof y=="function"?function A(b,x){var S,T,I=b[x];return I&&typeof I=="object"&&Object.keys(I).forEach(function(R){T=A(I,R),T!==void 0?I[R]=T:delete I[R]}),y.call(b,x,I)}({"":g},""):g}};JWe.exports=Qcr});var t8e=_((lZr,LB)=>{var ZWe=YWe().stringify,e8e=XWe();LB.exports=function(t){return{parse:e8e(t),stringify:ZWe}};LB.exports.parse=e8e();LB.exports.stringify=ZWe});function E(t,...e){let r={error:0,warn:1,info:2},n=r[O.logLevel]!==void 0?r[O.logLevel]:1;if((r[t]||0)>n)return;let s=e.map(u=>{if(typeof u=="object"){let l=JSON.stringify(u);return F$e(l)}else return typeof u=="string"?F$e(u):u}),i=s.map(u=>typeof u=="object"?JSON.stringify(u):u).join(" "),a=new Date,c=new Date(a.getTime()+8*60*60*1e3).toISOString().replace("Z","+08:00");O.logBuffer.push({timestamp:c,level:t,message:i}),O.logBuffer.length>O.MAX_LOGS&&O.logBuffer.shift(),console[t](...s)}function F$e(t){let e=t;if(O.originalEnvVars&&O.accessedEnvVars)for(let[r,n]of Object.entries(O.originalEnvVars)){let s=O.accessedEnvVars[r];if(n&&typeof n=="string"&&n.length>0&&s&&typeof s=="string"&&s.match(/^\*+$/)&&s.length===n.length){let i="*".repeat(n.length),a=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g");e=e.replace(a,i)}}return e}function q$e(t){try{let e=JSON.parse(t);return JSON.stringify(e,null,2).replace(/\n/g,`
`)}catch{return t}}var Et=yr(()=>{kt()});function j$e(){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 BY(){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 Mo(t){let e="";for(let r=0;r<t.length;r++){let n=t.charAt(r);if(ddr.has(n)){e+=n;continue}let s=j$e().indexOf(n);s!==-1?e+=BY().charAt(s):e+=n}return e}function Vt(t){let e="";for(let r=0;r<t.length;r++)BY().indexOf(t.charAt(r))!=-1?e+=j$e().charAt(BY().indexOf(t.charAt(r))):e+=t.charAt(r);return e}function If(t){return!/[\u4e00-\u9fff]/.test(t)}var ddr,po=yr(()=>{ddr=new Map([["\u5403","\u5403"],["\u6CE8","\u6CE8"]])});function ns(t){let e;if(typeof t=="string")e=t;else if(Array.isArray(t))e=JSON.stringify(t);else if(typeof t=="object")e=JSON.stringify(t);else{E("error","[Utils] [Common] Unsupported data type");return}E("info","[Utils] [Common]",e.slice(0,200))}function im(t){let e=t.match(/\((\d{4})\)/);return e?parseInt(e[1]):null}function Hl(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<t.length;a++){let o=t[a];if(e[o]!==void 0)s=e[o];else if(r[o]!==void 0){let c=r[o];s===0&&(s=1),c>=i?n=s*c:n+=s*c,i=c,s=0}}return s>0&&(n+=s),n}function Q$e(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:LY(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:LY(n)}}else return{cleanFileName:r,preferredPlatform:LY(n)}}}function LY(t){if(!t||typeof t!="string")return"";let e=t.trim();return O.allowedPlatforms.includes(e)?e:""}function H$e(t){if(!t)return[...O.platformOrderArr];if(!O.allowedPlatforms.includes(t))return E("warn",`[Utils] [Common] Invalid platform: ${t}, using default order`),[...O.platformOrderArr];let e=[t];for(let r of O.platformOrderArr)r!==t&&r!==null&&e.push(r);return e.push(null),e}function G$e(t){return t?String(t).replace(/[\u200B-\u200F\uFEFF]/g,"").trim():""}function ir(t){return t?String(t).replace(/[^\u4e00-\u9fa5\u3400-\u4DBF\u{20000}-\u{2EE5F}\u{30000}-\u{323AF}\u3040-\u30ff\uFF65-\uFF9F\uAC00-\uD7AFa-zA-Z0-9\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\u2160-\u217F\u0400-\u04FF\u00C0-\u024F\u0370-\u03FF]/gu,""):""}function am(t,e){if(!t||!e)return!1;let r=ir(t),n=ir(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 Ut(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 Hl(r)}return null}function Ct(t,e,r=null){if(t==null||e==null)return!1;let n=String(t),s=String(e);if(!n||!s)return!1;if(O.strictTitleMatch)return am(n,s);let i=O.titleNoiseFilter||null,a=i?n.replace(i,"").trim():n,o=ir(a).toLowerCase(),u=[ir(s).toLowerCase()];try{u=[...new Set([s,Vt(s),Mo(s)])].map(f=>ir(f).toLowerCase()).filter(Boolean)}catch{}let l=r!==null?r:Ut(s);if(l!==null&&r===null){let f=s.replace(/(?:season|s|第)\s*[0-9一二三四五六七八九十]+\s*(?:季|期|部(?!分))?/gi,"").trim();f&&f!==s&&(u=[...new Set([...u,ir(f).toLowerCase()])])}if(i){let f=s.replace(i,"").trim();f&&f!==s&&(u=[...new Set([...u,ir(f).toLowerCase()])])}if(l!==null){let f=Ut(n);if(l>1){if((f||1)!==l)return!1}else if(l===1&&f!==null&&f!==1)return!1}if(u.some(f=>o.includes(f)))return!0;if(!u.some(f=>{if(Math.abs(o.length-f.length)>Math.max(o.length,f.length)*.7||/^[a-zA-Z0-9]+$/.test(f))return!1;let m=0,p=0;for(let h of f){let y=o.indexOf(h,p);y!==-1&&(m++,p=y+1)}return m/f.length>.8})){let f=s.replace(/[\(\(]\s*(?:19|20)\d{2}\s*[\)\)]|\b(?:19|20)\d{2}\b/g,"").trim();if(f&&f!==s){let m=i?f.replace(i,"").trim():f,p=ir(m).toLowerCase(),h=/[\(\(]\s*(?:19|20)\d{2}\s*[\)\)]|\b(?:19|20)\d{2}\b/.test(n);if(p&&o.includes(p)&&!h)return!0}}return!1}function tt(t,e){let r=t?.constructor?.name;if(e==="array"){if(!Array.isArray(t))throw new TypeError(`${t} \u5FC5\u987B\u662F\u4E00\u4E2A\u6570\u7EC4\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(e==="boolean"){if(typeof t!="boolean"&&typeof t!="number")throw new TypeError(`${t} \u5FC5\u987B\u662F boolean \u6216 number\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(typeof t!==e)throw new TypeError(`${t} \u5FC5\u987B\u662F ${e}\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}function Tt(t){if(!t)return{season:null,baseTitle:null};let e=t.match(/^(.*?)\(\d{4}\)/),r=e?e[1].trim():t.split("(")[0].trim(),n=ir(r),s=n.match(/第\s*([0-9一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)\s*[季期部]/);if(s)return{season:Hl(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:Hl(c[1]),baseTitle:n.replace(c[0],"").trim()}:{season:null,baseTitle:n}}function Cf(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 WY(t,e){let{season:r,baseTitle:n}=Tt(t),s=Cf(e);return{baseTitle:n,season:r,episode:s}}var sm,MY,sn=yr(()=>{kt();Et();po();sm=t=>{let e=t.match(/【(.*?)】/);return e?e[1]:null},MY=t=>t.split("(")[0].trim()});function K$e(t){let e=t.match(/^S(\d+)$/i);if(e)return`S${String(parseInt(e[1])).padStart(2,"0")}`;let r=t.match(/^E(\d+)$/i);return r?`E${String(parseInt(r[1])).padStart(2,"0")}`:t}function z$e(t){return!t||typeof t!="string"?[]:t.split(",").map(e=>{let r=e.trim(),n=r.lastIndexOf(":");if(n===-1)return null;let s=r.substring(0,n),i=r.substring(n+1);if(!s||i==="")return null;let a=parseFloat(i);if(!Number.isFinite(a))return null;let o=!1,c=s.trim();c.endsWith("%")&&(o=!0,c=c.slice(0,-1).trim());let u=c.lastIndexOf("@"),l,d,f;if(u!==-1){l=c.substring(0,u);let g=c.substring(u+1).trim().toLowerCase();if(g==="all"||g==="*")d=null,f=!0;else if(d=g.split("&").map(A=>A.trim()).filter(Boolean),f=!1,d.length===0)return null}else l=c,d=null,f=!1;let m=l.match(/^(.*?)\/([SE]\d+)(?:\/([SE]\d+))?$/i),p=m?m[1].trim():l.trim();if(!p)return null;let h=m?K$e(m[2]):null,y=m&&m[3]?K$e(m[3]):null;return{anime:p,season:h,episode:y,sources:d,all:f,offset:a,usePercent:o}}).filter(Boolean)}function $Y(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),V$e[c]&&i.add(V$e[c]))}let a=[{matchSeason:!0,matchEpisode:!0},{matchSeason:!0,matchEpisode:!1},{matchSeason:!1,matchEpisode:!1}];for(let o of a){let c=null,u=null,l=null;for(let d of t)if(ir(d.anime)===ir(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 Ig(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=p=>{if(!p||typeof p!="object")return null;if(typeof p.p=="string"){let h=p.p.split(","),y=parseFloat(h[0]);if(Number.isFinite(y))return y}if(p.t!==void 0&&p.t!==null){let h=Number(p.t);if(Number.isFinite(h))return h}if(p.progress!==void 0&&p.progress!==null){let h=Number(p.progress);if(Number.isFinite(h))return h/1e3}if(p.timepoint!==void 0&&p.timepoint!==null){let h=Number(p.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=p=>Math.max(0,p),d=(p,h=2)=>Number(p.toFixed(h)),f=p=>{let h=l(c!==null?p*c:p+n);return c!==null?d(h,2):h},m=p=>{let h=l(c!==null?p*c:p+u);return c!==null?Math.round(h):h};return t.map(p=>{if(!p||typeof p!="object")return p;let h={...p};if(typeof h.p=="string"){let y=h.p.split(","),g=parseFloat(y[0]);Number.isFinite(g)&&(y[0]=f(g).toFixed(2),h.p=y.join(","))}if(h.t!==void 0&&h.t!==null){let y=Number(h.t);Number.isFinite(y)&&(h.t=f(y))}if(h.progress!==void 0&&h.progress!==null){let y=Number(h.progress);Number.isFinite(y)&&(h.progress=m(y))}if(h.timepoint!==void 0&&h.timepoint!==null){let y=Number(h.timepoint);Number.isFinite(y)&&(h.timepoint=f(y))}return h})}var V$e,UY=yr(()=>{sn();V$e={tencent:"qq",iqiyi:"qiyi",bilibili:"bilibili1"}});var Tf,Y$e=yr(()=>{UY();Tf=class{static env;static originalEnvVars=new Map;static accessedEnvVars=new Map;static VOD_ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","sohu","leshi","xigua","maiduidui","aiyifan"];static ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static ALLOWED_SOURCES=["360","vod","tmdb","douban","tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static MERGE_ALLOWED_SOURCES=["tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko"];static DEFAULT_AI_MATCH_PROMPT=`\u4F60\u662F\u4E00\u4E2A\u4E13\u4E1A\u7684\u5F71\u89C6\u5339\u914D\u4E13\u5BB6\uFF0C\u4F60\u7684\u7684\u4EFB\u52A1\u662F\u6839\u636E\u7528\u6237\u63D0\u4F9B\u7684 JSON \u6570\u636E\uFF0C\u4ECE\u5019\u9009\u52A8\u6F2B\u5217\u8868\u4E2D\u5339\u914D\u6700\u7B26\u5408\u6761\u4EF6\u7684\u52A8\u6F2B\u53CA\u96C6\u6570\u3002
\u8F93\u5165\u5B57\u6BB5\u8BF4\u660E\uFF1A
- title: \u67E5\u8BE2\u6807\u9898
- season: \u5B63\u6570\uFF08\u53EF\u4E3A null\uFF09
- episode: \u96C6\u6570\uFF08\u53EF\u4E3A null\uFF09
- year: \u5E74\u4EFD\uFF08\u53EF\u4E3A null\uFF09
- dynamicPlatformOrder: \u5E73\u53F0\u504F\u597D\u5217\u8868\uFF08\u53EF\u4E3A null\uFF09
- preferAnimeId: \u504F\u597D\u52A8\u6F2B ID\uFF08\u53EF\u4E3A null\uFF09
- animes: \u5019\u9009\u52A8\u6F2B\u5217\u8868
- animeId: \u52A8\u6F2Bid
animeTitle: \u52A8\u6F2B\u6807\u9898\uFF0C(\u5E74\u4EFD)\u524D\u9762\u624D\u662F\u771F\u5B9E\u7684\u6807\u9898
aliases: \u52A8\u6F2B\u6807\u9898\u7684\u522B\u540D\uFF0C\u89C6\u60C5\u51B5\u53EF\u4EE5\u4F5C\u4E3A(\u52A8\u6F2B\u6807\u9898)\u770B\u5F85
type: \u7C7B\u578B
startDate: \u53D1\u5E03\u65E5\u671F\uFF0C\u6709\u5E74\u4EFD
episodeCount: \u603B\u96C6\u6570
source: \u5F39\u5E55\u6765\u6E90
\u5339\u914D\u89C4\u5219 (\u6309\u4F18\u5148\u7EA7\u6392\u5E8F):
1. \u5982\u679CpreferAnimeId\u975E\u7A7A\uFF0C\u4E14animes\u5B58\u5728\u8BE5animeId\uFF0C\u5219\u8FD4\u56DE\u8BE5id\u5BF9\u5E94\u7684anime\u548Cepisode
2. \u6807\u9898\u76F8\u4F3C\u5EA6: \u4F18\u5148\u5339\u914D\u6807\u9898\u76F8\u4F3C\u5EA6\u6700\u9AD8\u7684\u6761\u76EE
3. \u5B63\u5EA6\u4E25\u683C\u5339\u914D: \u5982\u679C\u6307\u5B9A\u4E86\u5B63\u5EA6,\u5FC5\u987B\u4E25\u683C\u5339\u914D
4. \u7C7B\u578B\u5339\u914D: episode\u4E3A\u7A7A\u5219\u4F18\u5148\u5339\u914D\u7535\u5F71\uFF0C\u975E\u7A7A\u5219\u5339\u914D\u7535\u89C6\u5267\u7B49
5. \u5E74\u4EFD\u63A5\u8FD1: \u4F18\u5148\u9009\u62E9\u5E74\u4EFD\u63A5\u8FD1\u7684
6. \u5E73\u53F0\u5339\u914D\uFF1A\u5982\u679C\u6709\u591A\u4E2A\u9AD8\u5EA6\u76F8\u4F3C\u7684\u7ED3\u679C\u4E14dynamicPlatformOrder\u975E\u7A7A\uFF0C\u5219\u4ECE\u524D\u5F80\u540E\u9009\u62E9\u76F8\u5BF9\u5E94\u7684\u5E73\u53F0
7. \u96C6\u6570\u5B8C\u6574: \u5982\u679C\u6709\u591A\u4E2A\u9AD8\u5EA6\u76F8\u4F3C\u7684\u7ED3\u679C,\u9009\u62E9\u96C6\u6570\u6700\u5B8C\u6574\u7684
\u8BF7\u5206\u6790\u54EA\u4E2A\u52A8\u6F2B\u6700\u7B26\u5408\u67E5\u8BE2\u6761\u4EF6\uFF0C\u5982\u679C\u6307\u5B9A\u4E86\u5B63\u6570\u548C\u96C6\u6570\uFF0C\u8BF7\u4E5F\u8FD4\u56DE\u5BF9\u5E94\u7684\u96C6\u4FE1\u606F\u3002
\u8BF7\u4E25\u683C\u6309\u7167\u4EE5\u4E0B JSON \u683C\u5F0F\u8FD4\u56DE\u7ED3\u679C\uFF0C\u4E0D\u8981\u5305\u542B\u4EFB\u4F55\u5176\u4ED6\u5185\u5BB9\uFF1A
{
"animeIndex": \u5339\u914D\u7684\u52A8\u6F2B\u5728\u5217\u8868\u4E2D\u7684\u7D22\u5F15(\u4ECE0\u5F00\u59CB) \u6216 null
}
\u5982\u679C\u6CA1\u6709\u627E\u5230\u5408\u9002\u7684\u5339\u914D\uFF0C\u8FD4\u56DE\uFF1A
{
"animeIndex": null
}`;static get(e,r,n="string",s=!1){let i;typeof this.env<"u"&&this.env[e]?(i=this.env[e],this.originalEnvVars.set(e,i)):typeof process<"u"&&process.env?.[e]?(i=process.env[e],this.originalEnvVars.set(e,i)):(i=r,this.originalEnvVars.set(e,""));let a;switch(n){case"number":if(a=Number(i),isNaN(a))throw new Error(`Environment variable ${e} must be a valid number`);break;case"boolean":a=i===!0||i==="true"||i===1||i==="1";break;case"string":default:a=String(i);break}let o=s?this.encryptStr(a):a;return this.accessedEnvVars.set(e,o),a}static set(e,r){typeof process<"u"&&(process.env[e]=String(r)),this.accessedEnvVars.set(e,r)}static encryptStr(e){return"*".repeat(e.length)}static resolveVodServers(){let r=this.get("VOD_SERVERS","\u91D1\u8749@https://zy.jinchancaiji.com,789@https://www.caiji.cyou,\u542C\u98CE@https://gctf.tfdh.top","string");return!r||r.trim()===""?[]:r.split(",").map(n=>n.trim()).filter(n=>n.length>0).map((n,s)=>{if(n.includes("@")){let[i,a]=n.split("@").map(o=>o.trim());return{name:i||`vod-${s+1}`,url:a}}return{name:`vod-${s+1}`,url:n}}).filter(n=>n.url&&n.url.length>0)}static resolveSourceOrder(){let r=this.get("SOURCE_ORDER","douban,360,renren,hanjutv","string").split(",").map(n=>n.trim()).filter(n=>this.ALLOWED_SOURCES.includes(n));return this.accessedEnvVars.set("SOURCE_ORDER",r),r.length>0?r:["douban","360","renren","hanjutv"]}static resolvePlatformOrder(){let r=this.get("PLATFORM_ORDER","","string").split(",").map(n=>n.trim()).filter(n=>n?n.includes("&")?n.split("&").map(i=>i.trim()).every(i=>this.ALLOWED_PLATFORMS.includes(i)):this.ALLOWED_PLATFORMS.includes(n):!1);return this.accessedEnvVars.set("PLATFORM_ORDER",r),r.length>0?[...r,null]:[null]}static resolveMergeSourcePairs(){let e=this.get("MERGE_SOURCE_PAIRS","","string");return e?e.split(/[,;]/).map(r=>{if(!r)return null;let n=r.split("&").map(o=>o.trim()).filter(o=>o);if(n.length<1)return null;let s=n[0],i=n.slice(1);if(!this.MERGE_ALLOWED_SOURCES.includes(s))return null;let a=i.filter(o=>o!==s&&this.MERGE_ALLOWED_SOURCES.includes(o));return{primary:s,secondaries:a}}).filter(Boolean):[]}static resolveCustomMergeRules(){let e=this.get("CUSTOM_MERGE_RULES","","string").trim();if(!e)return[];let r=[],n=e.split(";");for(let s of n)if(s.trim())try{let i=s.split("|"),a=i[0],o=i[1]||"",c,u,l="merge";if(a.includes("->"))[c,u]=a.split("->").map(y=>y.trim());else if(a.includes("\xD7"))[c,u]=a.split("\xD7").map(y=>y.trim()),l="block";else continue;if(!c||!u)continue;let d=y=>{let g=y.match(/^(.+?)(?:\/S(\d+))?@([a-zA-Z0-9_&]+)$/i);return g?{title:g[1].trim(),season:g[2]?parseInt(g[2],10):null,source:g[3].toLowerCase()}:null},f=d(c),m=d(u);if(!f||!m)continue;let p=[],h=!1;if(l==="merge"&&o.trim()){h=!0;let y=o.split(",");for(let g of y){if(!g.trim())continue;let[A,b]=g.split(">").map(I=>I.trim());if(!A||!b)continue;let x=I=>{let R=I.match(/^E(\d+)(?:~E(\d+))?$/i);return R?{start:parseInt(R[1],10),end:R[2]?parseInt(R[2],10):parseInt(R[1],10)}:null},S=x(A),T=x(b);S&&T&&p.push({sec:S,prim:T})}}r.push({action:l,secondary:f,primary:m,routes:p,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|(?<!(Chain|Chemical|Nuclear|\u8FDE\u9501|\u5316\u5B66|\u6838|\u751F\u5316|\u751F\u7406|\u5E94\u6FC0))reaction|(?<!(\u5355))\u7EAF\u4EAB|\u52A0\u66F4(\u7248|\u7BC7)?|\u62A2\u5148(\u770B|\u7248|\u96C6|\u7BC7)?|(?<!(\u88AB|\u4E89|\u8C01))\u62A2[\u5148\u9C9C](?!(\u4E00\u6B65|\u624B|\u653B|\u4E86|\u544A|\u8A00|\u673A|\u8BDD))|\u62A2\u9C9C|\u9884\u544A(?!(\u51FD|\u4FE1|\u4E66|\u72AF))|(?<!(\u6B7B\u4EA1|\u6050\u6016|\u7075\u5F02|\u602A\u8C08))\u82B1\u7D6E(\u72EC\u5BB6)?|(?<!(\u4E00|\u76F4))\u76F4\u62CD|(\u5236\u4F5C|\u62CD\u6444|\u5E55\u540E|\u82B1\u7D6E|\u672A\u64AD|\u72EC\u5BB6|\u6F14\u5458|\u5BFC\u6F14|\u4E3B\u521B|\u6740\u9752|\u63A2\u73ED|\u6536\u5B98|\u5F00\u64AD|\u5148\u5BFC|\u5F69\u86CB|NG|\u56DE\u987E|\u9AD8\u5149|\u4E2A\u4EBA|\u4E3B\u521B)\u7279\u8F91|(?<!(\u884C\u52A8|\u8BA1\u5212|\u6E38\u620F|\u4EFB\u52A1|\u5371\u673A|\u795E\u79D8|\u9EC4\u91D1))\u5F69\u86CB|(?<!(\u5ACC\u7591\u4EBA|\u8BC1\u4EBA|\u5BB6\u5C5E|\u5F8B\u5E08|\u8B66\u65B9|\u51F6\u624B|\u6B7B\u8005))\u4E13\u8BBF|(?<!(\u8BC1\u4EBA))\u91C7\u8BBF(?!(\u5438\u8840\u9B3C|\u9B3C))|(\u6B63\u5F0F|\u89D2\u8272|\u5148\u5BFC|\u6982\u5FF5|\u9996\u66DD|\u5B9A\u6863|\u5267\u60C5|\u52A8\u753B|\u5BA3\u4F20|\u4E3B\u9898\u66F2|\u5370\u8C61)[\\s\\.]*[Pp\uFF30\uFF50][Vv\uFF36\uFF56]|(?<!(\u9E26|\u96EA|\u7EB8|\u76F8|\u7167|\u56FE|\u540D|\u5927))\u7247\u82B1|(?<!(\u9000\u5C45|\u56DE\u5F52|\u8D70\u5411|\u8F6C\u6218|\u9690\u8EAB|\u85CF\u8EAB|\u7684))\u5E55\u540E(?!(\u4E3B\u8C0B|\u4E3B\u4F7F|\u9ED1\u624B|\u771F\u51F6|\u73A9\u5BB6|\u8001\u677F|\u91D1\u4E3B|\u82F1\u96C4|\u529F\u81E3|\u63A8\u624B|\u5927\u4F6C|\u64CD\u7EB5|\u4EA4\u6613|\u7B56\u5212|\u535A\u5F08|BOSS|\u771F\u76F8))(\u6545\u4E8B|\u82B1\u7D6E|\u72EC\u5BB6)?|\u884D\u751F(?!(\u54C1|\u7269|\u517D))|\u756A\u5916(?!(\u5730|\u4EBA))|\u76F4\u64AD(\u966A\u770B|\u56DE\u987E)|\u672A\u64AD(\u7247\u6BB5)?|\u4F1A\u5458(\u4E13\u4EAB|\u52A0\u957F|\u5C0A\u4EAB|\u4E13\u5C5E|\u7248)?|(?<!(\u63D0\u53D6|\u5438\u6536|\u751F\u547D|\u9B54\u6CD5|\u4FEE\u62A4|\u7F8E\u767D))\u7CBE\u534E|\u770B\u70B9|\u901F\u770B|\u89E3\u8BFB(?!.*(\u5BC6\u6587|\u5BC6\u7801|\u5BC6\u7535|\u7535\u62A5|\u6863\u6848|\u4E66\u4FE1|\u9057\u4E66|\u7891\u6587|\u4EE3\u7801|\u4FE1\u53F7|\u6697\u53F7|\u8BAF\u606F|\u8C1C\u9898|\u4EBA\u5FC3|\u5507\u8BED|\u771F\u76F8|\u8C1C\u56E2|\u68A6\u5883))|(?<!(\u6848\u60C5|\u4EBA\u751F|\u6B7B\u524D|\u5386\u53F2|\u4E16\u7EAA))\u56DE\u987E|\u5F71\u8BC4|\u89E3\u8BF4|\u5410\u69FD|(?<!(\u5E74\u7EC8|\u5B63\u5EA6|\u5E93\u5B58|\u8D44\u4EA7|\u7269\u8D44|\u8D22\u52A1|\u6536\u83B7|\u6218\u5229))\u76D8\u70B9|\u62CD\u6444\u82B1\u7D6E|\u5236\u4F5C\u82B1\u7D6E|\u5E55\u540E\u82B1\u7D6E|\u672A\u64AD\u82B1\u7D6E|\u72EC\u5BB6\u82B1\u7D6E|\u82B1\u7D6E\u7279\u8F91|\u5148\u5BFC\u9884\u544A|\u7EC8\u6781\u9884\u544A|\u6B63\u5F0F\u9884\u544A|\u5B98\u65B9\u9884\u544A|\u5F69\u86CB\u7247\u6BB5|\u5220\u51CF\u7247\u6BB5|\u672A\u64AD\u7247\u6BB5|\u756A\u5916\u5F69\u86CB|\u7CBE\u5F69\u7247\u6BB5|\u7CBE\u5F69\u770B\u70B9|\u7CBE\u5F69\u96C6\u9526|\u770B\u70B9\u89E3\u6790|\u770B\u70B9\u9884\u544A|NG\u955C\u5934|NG\u82B1\u7D6E|\u756A\u5916\u7BC7|\u756A\u5916\u7279\u8F91|\u5236\u4F5C\u7279\u8F91|\u62CD\u6444\u7279\u8F91|\u5E55\u540E\u7279\u8F91|\u5BFC\u6F14\u7279\u8F91|\u6F14\u5458\u7279\u8F91|\u7247\u5C3E\u66F2|(?<!(\u751F\u547D|\u751F\u6D3B|\u60C5\u611F|\u7231\u60C5|\u4E00\u6BB5|\u5C0F|\u610F\u5916))\u63D2\u66F2|\u9AD8\u5149\u56DE\u987E|\u80CC\u666F\u97F3\u4E50|OST|\u97F3\u4E50MV|\u6B4C\u66F2MV|\u524D\u5B63\u56DE\u987E|\u5267\u60C5\u56DE\u987E|\u5F80\u671F\u56DE\u987E|\u5185\u5BB9\u603B\u7ED3|\u5267\u60C5\u76D8\u70B9|\u7CBE\u9009\u5408\u96C6|\u526A\u8F91\u5408\u96C6|\u6DF7\u526A\u89C6\u9891|\u72EC\u5BB6\u4E13\u8BBF|\u6F14\u5458\u8BBF\u8C08|\u5BFC\u6F14\u8BBF\u8C08|\u4E3B\u521B\u8BBF\u8C08|\u5A92\u4F53\u91C7\u8BBF|\u53D1\u5E03\u4F1A\u91C7\u8BBF|\u966A\u770B(\u8BB0)?|\u8BD5\u770B\u7248|\u77ED\u5267|\u7CBE\u7F16|(?<!(Love|Disney|One|C|Note|S\\d+|\\+|&|\\s))Plus|\u72EC\u5BB6\u7248|(?<!(\u5BFC\u6F14|\u52A0\u957F|\u5468\u5E74))\u7279\u522B\u7248(?!(\u56FE|\u753B))|\u77ED\u7247|(?<!(\u65B0\u95FB|\u7D27\u6025|\u4E34\u65F6|\u53EC\u5F00|\u7834\u574F|\u5927\u95F9|\u6F84\u6E05|\u9053\u6B49|\u65B0\u54C1|\u4EA7\u54C1|\u4E8B\u6545))\u53D1\u5E03\u4F1A|\u89E3\u5FE7\u5C40|\u8D70\u5FC3\u5C40|\u706B\u9505\u5C40|\u5DC5\u5CF0\u65F6\u523B|\u575E\u91CC\u90FD\u77E5\u9053|\u798F\u6301\u76EE\u6807\u575E\u6C11|\u798F\u5229(?!(\u9662|\u4F1A|\u4E3B\u4E49|\u8BFE))\u7BC7|(\u798F\u5229|\u52A0\u66F4|\u756A\u5916|\u5F69\u86CB|\u884D\u751F|\u7279\u522B|\u6536\u5B98|\u6E38\u620F|\u6574\u86CA|\u65E5\u5E38)\u7BC7|\u72EC\u5BB6(?!(\u8BB0\u5FC6|\u8BD5\u7231|\u62A5\u9053|\u79D8\u65B9|\u5360\u6709|\u5BA0\u7231|\u6069\u5BA0))|.{2,}(?<!(\u5E02|\u5206|\u8B66|\u603B|\u7701|\u536B|\u836F|\u653F|\u76D1|\u7ED3|\u5927|\u5F00|\u7834|\u5E03|\u50F5|\u56F0|\u9A97|\u8D4C|\u80DC|\u8D25|\u5B9A|\u4E71|\u5371|\u8FF7|\u8C1C|\u5165|\u6405|\u8BBE|\u4E2D|\u6B8B|\u5E73|\u548C|\u7EC8|\u53D8|\u5BF9|\u5B89|\u505A|\u4E66|\u753B|\u5BDF|\u52A1|\u6848|\u901A|\u4FE1|\u80B2|\u5546|\u8C61|\u6E90|\u4E1A|\u51B0))\u5C40(?!(\u957F|\u5EA7|\u52BF|\u9762|\u90E8|\u5185|\u5916|\u4E2D|\u9650|\u4FC3|\u6C14))|(?<!(\u91CD\u75C7|\u9694\u79BB|\u5B9E\u9A8C|\u5FC3\u7406|\u5BA1\u8BAF|\u5355\u5411|\u672F\u540E))\u89C2\u5BDF\u5BA4|\u4E0A\u73ED\u90A3\u70B9\u4E8B\u513F|\u5468top|\u8D5B\u6BB5|VLOG|(?<!(\u5927\u6848|\u8981\u6848|\u5211\u4FA6|\u4FA6\u67E5|\u7834\u6848|\u6863\u6848|\u98CE\u4E91|\u5386\u53F2|\u6218\u4E89|\u63A2\u6848|\u81EA\u7136|\u4EBA\u6587|\u79D1\u5B66|\u533B\u5B66|\u5730\u7406|\u5B87\u5B99|\u8D5B\u4E8B|\u4E16\u754C\u676F|\u5965\u8FD0))\u5168\u7EAA\u5F55|\u5F00\u64AD|\u5148\u5BFC|\u603B\u5BA3|\u5C55\u6F14|\u96C6\u9526|\u65C5\u884C\u65E5\u8BB0|\u7CBE\u5F69\u5206\u4EAB|\u5267\u60C5\u63ED\u79D8(?!(\u8005|\u4EBA))|(?:^|\u3011\\s*|\\]\\s*)(?:[SC]|SP|OP|ED|PV)\\d+(?:[\\s:\uFF1A\\.\\-]|$)",n=this.get("EPISODE_TITLE_FILTER","","string",!1).trim()||e;this.accessedEnvVars.set("EPISODE_TITLE_FILTER",n);try{return new RegExp(`^(.*?)(?:${n})(.*?)$`,"i")}catch{return console.warn("Invalid EPISODE_TITLE_FILTER format, using default."),new RegExp(`^(.*?)(?:${e})(.*?)$`,"i")}}static resolveIpBlacklist(){let e=this.get("IP_BLACKLIST","","string",!1).trim();if(!e)return this.accessedEnvVars.set("IP_BLACKLIST",[]),[];let r=e.split(/[\n,;]+/).map(s=>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 m=f.split(".").map(y=>Number(y)),p=(m[0]<<8|m[1]).toString(16),h=(m[2]<<8|m[3]).toString(16);return[...d.slice(0,-1),p,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 resolveTitleNoiseFilter(){let e="[\uFF08(](?:\u81FB\u5F69|\u771F\u5F69|\u9AD8\u6E05|\u6807\u6E05|\u8D85\u6E05|\u56FD\u914D|\u4E2D\u914D|\u65E5\u914D|\u7CA4\u8BED|\u539F\u58F0|\u53F0\u914D|\u65E0\u4FEE|\u672A\u5220\u51CF|\u5B8C\u6574\u7248)[\uFF09)]",r=this.get("TITLE_NOISE_FILTER","","string").trim(),n=this.env&&"TITLE_NOISE_FILTER"in this.env||typeof process<"u"&&"TITLE_NOISE_FILTER"in process.env;if(r)this.accessedEnvVars.set("TITLE_NOISE_FILTER",r);else{if(n)return this.accessedEnvVars.set("TITLE_NOISE_FILTER",""),null;this.accessedEnvVars.set("TITLE_NOISE_FILTER",e)}try{return new RegExp(r||e,"gi")}catch{console.warn("Invalid TITLE_NOISE_FILTER regex, using default.");try{return new RegExp(e,"gi")}catch{return 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
\u683C\u5F0F2(\u963B\u65AD)\uFF1A\u526F\u6E90\u5267\u540D/S\u5B63\u6570@\u6765\u6E90 \xD7 \u4E3B\u6E90\u5267\u540D/S\u5B63\u6570@\u6765\u6E90
\u8BF4\u660E\uFF1A[/S\u5B63\u6570] \u4E0E [|\u8DEF\u7531\u89C4\u5219] \u4E3A\u53EF\u9009\u9879\uFF0C\u7559\u7A7A\u5219\u4EA4\u7531\u7A0B\u5E8F\u5224\u65AD\u3002\u591A\u4E2A\u89C4\u5219\u7528\u5206\u53F7\u9694\u5F00\uFF0C\u591A\u6BB5\u8DEF\u7531\u7528\u9017\u53F7\u5206\u9694\u3002
\u793A\u4F8B\uFF1A
1. \u5E38\u89C4\u5408\u5E76\uFF1A\u5929\u6C14\u4E4B\u5B50@bilibili -> \u5929\u6C14\u4E4B\u5B50@dandan
2. \u591A\u96C6\u8DEF\u7531\uFF1A\u6211\u63A8\u7684\u5B69\u5B50/S01@bahamut -> \u6211\u63A8\u7684\u5B69\u5B50/S03@dandan | E25~E35>E25~E35
3. \u963B\u65AD\u5408\u5E76\uFF1A\u8F89\u591C\u5927\u5C0F\u59D0\u60F3\u8BA9\u6211\u544A\u767D\uFF1F\uFF5E\u5929\u624D\u4EEC\u7684\u604B\u7231\u5934\u8111\u6218\uFF5E(2020)@bilibili \xD7 \u8F89\u591C\u5927\u5C0F\u59D0\u60F3\u8BA9\u6211\u544A\u767D\uFF5E\u5929\u624D\u4EEC\u7684\u604B\u7231\u5934\u8111\u6218\uFF5E OVA(2021)\u3010OVA\u3011@dandan`},OTHER_SERVER:{category:"source",type:"text",description:"\u7B2C\u4E09\u65B9\u5F39\u5E55\u670D\u52A1\u5668\uFF0C\u9ED8\u8BA4https://api.danmu.icu"},CUSTOM_SOURCE_API_URL:{category:"source",type:"text",description:"\u81EA\u5B9A\u4E49\u5F39\u5E55\u6E90API\u5730\u5740\uFF0C\u9ED8\u8BA4\u4E3A\u7A7A\uFF0C\u914D\u7F6E\u540E\u8FD8\u9700\u5728SOURCE_ORDER\u6DFB\u52A0custom\u6E90"},VOD_SERVERS:{category:"source",type:"text",description:"VOD\u7AD9\u70B9\u914D\u7F6E\uFF0C\u683C\u5F0F\uFF1A\u540D\u79F0@URL,\u540D\u79F0@URL\uFF0C\u9ED8\u8BA4\u91D1\u8749@https://zy.jinchancaiji.com,789@https://www.caiji.cyou,\u542C\u98CE@https://gctf.tfdh.top"},VOD_RETURN_MODE:{category:"source",type:"select",options:["all","fastest"],description:"VOD\u8FD4\u56DE\u6A21\u5F0F\uFF1Aall\uFF08\u6240\u6709\u7AD9\u70B9\uFF09\u6216 fastest\uFF08\u6700\u5FEB\u7684\u7AD9\u70B9\uFF09\uFF0C\u9ED8\u8BA4fastest"},VOD_REQUEST_TIMEOUT:{category:"source",type:"number",description:"VOD\u8BF7\u6C42\u8D85\u65F6\u65F6\u95F4\uFF0C\u9ED8\u8BA410000",min:5e3,max:3e4},BILIBILI_COOKIE:{category:"source",type:"text",description:"B\u7AD9Cookie"},DOUBAN_COOKIE:{category:"source",type:"text",description:"\u8C46\u74E3Cookie"},YOUKU_CONCURRENCY:{category:"source",type:"number",description:"\u4F18\u9177\u5E76\u53D1\u914D\u7F6E\uFF0C\u9ED8\u8BA48",min:1,max:16},PLATFORM_ORDER:{category:"match",type:"multi-select",options:this.ALLOWED_PLATFORMS,description:`\u5E73\u53F0\u6392\u5E8F\u914D\u7F6E\uFF0C\u53EF\u4EE5\u914D\u7F6E\u81EA\u52A8\u5339\u914D\u65F6\u7684\u4F18\u9009\u5E73\u53F0\u3002
\u5F53\u914D\u7F6E\u5408\u5E76\u5E73\u53F0\u7684\u65F6\u5019\uFF0C\u53EF\u4EE5\u6307\u5B9A\u671F\u671B\u7684\u5408\u5E76\u6E90\uFF0C
\u793A\u4F8B\uFF1A\u4E00\u4E2A\u7ED3\u679C\u8FD4\u56DE\u4E86"dandan&bilibili1&animeko"\u548C"youku"\u65F6\uFF0C
\u5F53\u914D\u7F6E"youku"\u65F6\u8FD4\u56DE"youku"
\u5F53\u914D\u7F6E"dandan&animeko"\u65F6\u8FD4\u56DE"dandan&bilibili1&animeko"`},ANIME_TITLE_FILTER:{category:"match",type:"text",description:"\u5267\u540D\u8FC7\u6EE4\u89C4\u5219"},EPISODE_TITLE_FILTER:{category:"match",type:"text",description:"\u5267\u96C6\u6807\u9898\u8FC7\u6EE4\u89C4\u5219"},ENABLE_ANIME_EPISODE_FILTER:{category:"match",type:"boolean",description:"\u63A7\u5236\u624B\u52A8\u641C\u7D22\u7684\u65F6\u5019\u662F\u5426\u6839\u636EANIME_TITLE_FILTER\u8FDB\u884C\u5267\u540D\u8FC7\u6EE4\u4EE5\u53CA\u6839\u636EEPISODE_TITLE_FILTER\u8FDB\u884C\u96C6\u6807\u9898\u8FC7\u6EE4"},STRICT_TITLE_MATCH:{category:"match",type:"boolean",description:"\u4E25\u683C\u6807\u9898\u5339\u914D\u6A21\u5F0F"},TITLE_TO_CHINESE:{category:"match",type:"boolean",description:"\u5916\u8BED\u6807\u9898\u8F6C\u6362\u4E2D\u6587\u5F00\u5173"},ANIME_TITLE_SIMPLIFIED:{category:"match",type:"boolean",description:"\u641C\u7D22\u7684\u5267\u540D\u6807\u9898\u81EA\u52A8\u7E41\u8F6C\u7B80"},TITLE_MAPPING_TABLE:{category:"match",type:"map",description:'\u5267\u540D\u6620\u5C04\u8868\uFF0C\u7528\u4E8E\u81EA\u52A8\u5339\u914D\u65F6\u66FF\u6362\u6807\u9898\u8FDB\u884C\u641C\u7D22\uFF0C\u683C\u5F0F\uFF1A\u539F\u59CB\u6807\u9898->\u6620\u5C04\u6807\u9898;\u539F\u59CB\u6807\u9898->\u6620\u5C04\u6807\u9898;... \uFF0C\u4F8B\u5982\uFF1A"\u5510\u671D\u8BE1\u4E8B\u5F55->\u5510\u671D\u8BE1\u4E8B\u5F55\u4E4B\u897F\u884C;\u56FD\u8272\u82B3\u534E->\u9526\u7EE3\u82B3\u534E"'},TITLE_NOISE_FILTER:{category:"match",type:"text",description:"\u5267\u540D\u6742\u97F3\u6E05\u7406\u89C4\u5219\uFF0C\u6309\u6B63\u5219\u8868\u8FBE\u5F0F\u6E05\u7406\u641C\u7D22\u4E0E\u5339\u914D\u9636\u6BB5\u7684\u5267\u540D\u6742\u97F3\u8BCD\uFF08\u5982`\u767E\u82B1\u6740\uFF08\u771F\u5F69\uFF09`\u2192`\u767E\u82B1\u6740`\uFF09\u3002\u9ED8\u8BA4\u503C\uFF1A[\uFF08(](?:\u81FB\u5F69|\u771F\u5F69|\u9AD8\u6E05|\u6807\u6E05|\u8D85\u6E05|\u56FD\u914D|\u4E2D\u914D|\u65E5\u914D|\u7CA4\u8BED|\u539F\u58F0|\u53F0\u914D|\u65E0\u4FEE|\u672A\u5220\u51CF|\u5B8C\u6574\u7248)[\uFF09)]\uFF0C\u4E2D\u82F1\u6587\u62EC\u53F7\u5747\u5339\u914D\u3002\u8BBE\u4E3A\u7A7A\u503C\u53EF\u7981\u7528"},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://:[email protected]: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(),titleNoiseFilter:this.resolveTitleNoiseFilter(),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:z$e(this.get("DANMU_OFFSET","","string")),tmdbApiKey:this.get("TMDB_API_KEY","","string",!0),redisUrl:this.get("UPSTASH_REDIS_REST_URL","","string",!0),redisToken:this.get("UPSTASH_REDIS_REST_TOKEN","","string",!0),localRedisUrl:this.get("LOCAL_REDIS_URL","","string",!0),rateLimitMaxRequests:this.get("RATE_LIMIT_MAX_REQUESTS",3,"number"),enableAnimeEpisodeFilter:this.get("ENABLE_ANIME_EPISODE_FILTER",!1,"boolean"),logLevel:this.get("LOG_LEVEL","info","string"),searchCacheMinutes:this.get("SEARCH_CACHE_MINUTES",3,"number"),commentCacheMinutes:this.get("COMMENT_CACHE_MINUTES",3,"number"),convertTopBottomToScroll:this.get("CONVERT_TOP_BOTTOM_TO_SCROLL",!1,"boolean"),convertColor:this.get("CONVERT_COLOR","default","string"),colorPool:this.get("COLOR_POOL","16777215,16777215,16777215,16777215,16777215,16777215,16777215,16777215,16744319,16752762,16774799,9498256,8388564,8900346,14204888,16758465","string"),danmuOutputFormat:this.get("DANMU_OUTPUT_FORMAT","json","string"),strictTitleMatch:this.get("STRICT_TITLE_MATCH",!1,"boolean"),titleToChinese:this.get("TITLE_TO_CHINESE",!1,"boolean"),animeTitleSimplified:this.get("ANIME_TITLE_SIMPLIFIED",!1,"boolean"),titleMappingTable:this.resolveTitleMappingTable(),ipBlacklist:this.resolveIpBlacklist(),aiBaseUrl:this.get("AI_BASE_URL","https://api.openai.com/v1","string"),aiModel:this.get("AI_MODEL","gpt-4o","string"),aiApiKey:this.get("AI_API_KEY","","string",!0),aiMatchPrompt:this.get("AI_MATCH_PROMPT",this.DEFAULT_AI_MATCH_PROMPT,"string"),useBangumiData:this.get("USE_BANGUMI_DATA",!1,"boolean"),rememberLastSelect:this.get("REMEMBER_LAST_SELECT",!0,"boolean"),MAX_LAST_SELECT_MAP:this.get("MAX_LAST_SELECT_MAP",100,"number"),MAX_ANIMES:this.get("MAX_ANIMES",100,"number"),bangumiDataCacheDays:this.get("BANGUMI_DATA_CACHE_DAYS",7,"number"),deployPlatformAccount:this.get("DEPLOY_PLATFROM_ACCOUNT","","string",!0),deployPlatformProject:this.get("DEPLOY_PLATFROM_PROJECT","","string",!0),deployPlatformToken:this.get("DEPLOY_PLATFROM_TOKEN","","string",!0),NODE_TLS_REJECT_UNAUTHORIZED:this.get("NODE_TLS_REJECT_UNAUTHORIZED",1,"number"),envVarConfig:r}}}});var Cg,O,kt=yr(()=>{Y$e();Cg={env:{},envs:{},originalEnvVars:{},accessedEnvVars:{},VERSION:"1.19.16",MAX_LOGS:1e3,MAX_RECORDS:100,animes:[],episodeIds:[],episodeNum:10001,logBuffer:[],requestHistory:new Map,localCacheValid:!1,localCacheInitialized:!1,redisValid:!1,localRedisValid:!1,aiValid:!1,redisCacheInitialized:!1,lastSelectMap:new Map,reqRecords:[],todayReqNum:0,lastHashes:{animes:null,episodeIds:null,episodeNum:null,lastSelectMap:null,reqRecords:null,todayReqNum:null},searchCache:new Map,commentCache:new Map,deployPlatform:"",currentToken:"",init(t={}){return this.env=t,this.envs=Tf.load(this.env),this.originalEnvVars=Object.fromEntries(Tf.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(Tf.getAccessedEnvVars()),this.getConfig()},reInit(){return this.envs=Tf.load(this.env),this.originalEnvVars=Object.fromEntries(Tf.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(Tf.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 Cg.getConfig()[e]},set(t,e,r){return Cg.getConfig()[e]=r,!0},has(t,e){return e in Cg.getConfig()},ownKeys(t){return Reflect.ownKeys(Cg.getConfig())},getOwnPropertyDescriptor(t,e){return Object.getOwnPropertyDescriptor(Cg.getConfig(),e)}})});function fdr(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<r.length;l++)r[l]==="base64"?s=!0:r[l]&&(a+=`;${r[l]}`,r[l].indexOf("charset=")===0&&(n=r[l].substring(8)));!r[0]&&!n.length&&(a+=";charset=US-ASCII",n="US-ASCII");let o=s?"base64":"ascii",c=unescape(t.substring(e+1)),u=Buffer.from(c,o);return u.type=i,u.typeFull=a,u.charset=n,u}var J$e,X$e=yr(()=>{J$e=fdr});var eUe=_((nL,Z$e)=>{(function(t,e){typeof nL=="object"&&typeof Z$e<"u"?e(nL):typeof define=="function"&&define.amd?define(["exports"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t.WebStreamsPolyfill={}))})(nL,function(t){"use strict";function e(){}function r(v){return typeof v=="object"&&v!==null||typeof v=="function"}let n=e;function s(v,w){try{Object.defineProperty(v,"name",{value:w,configurable:!0})}catch{}}let i=Promise,a=Promise.prototype.then,o=Promise.reject.bind(i);function c(v){return new i(v)}function u(v){return c(w=>w(v))}function l(v){return o(v)}function d(v,w,D){return a.call(v,w,D)}function f(v,w,D){d(d(v,w,D),void 0,n)}function m(v,w){f(v,w)}function p(v,w){f(v,void 0,w)}function h(v,w,D){return d(v,w,D)}function y(v){d(v,void 0,n)}let g=v=>{if(typeof queueMicrotask=="function")g=queueMicrotask;else{let w=u(void 0);g=D=>d(w,D)}return g(v)};function A(v,w,D){if(typeof v!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(v,w,D)}function b(v,w,D){try{return u(A(v,w,D))}catch(z){return l(z)}}let x=16384;class S{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(w){let D=this._back,z=D;D._elements.length===x-1&&(z={_elements:[],_next:void 0}),D._elements.push(w),z!==D&&(this._back=z,D._next=z),++this._size}shift(){let w=this._front,D=w,z=this._cursor,ae=z+1,ge=w._elements,be=ge[z];return ae===x&&(D=w._next,ae=0),--this._size,this._cursor=ae,w!==D&&(this._front=D),ge[z]=void 0,be}forEach(w){let D=this._cursor,z=this._front,ae=z._elements;for(;(D!==ae.length||z._next!==void 0)&&!(D===ae.length&&(z=z._next,ae=z._elements,D=0,ae.length===0));)w(ae[D]),++D}peek(){let w=this._front,D=this._cursor;return w._elements[D]}}let T=Symbol("[[AbortSteps]]"),I=Symbol("[[ErrorSteps]]"),R=Symbol("[[CancelSteps]]"),N=Symbol("[[PullSteps]]"),k=Symbol("[[ReleaseSteps]]");function B(v,w){v._ownerReadableStream=w,w._reader=v,w._state==="readable"?Z(v):w._state==="closed"?U(v):W(v,w._storedError)}function M(v,w){let D=v._ownerReadableStream;return Yc(D,w)}function P(v){let w=v._ownerReadableStream;w._state==="readable"?V(v,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):j(v,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),w._readableStreamController[k](),w._reader=void 0,v._ownerReadableStream=void 0}function L(v){return new TypeError("Cannot "+v+" a stream using a released reader")}function Z(v){v._closedPromise=c((w,D)=>{v._closedPromise_resolve=w,v._closedPromise_reject=D})}function W(v,w){Z(v),V(v,w)}function U(v){Z(v),J(v)}function V(v,w){v._closedPromise_reject!==void 0&&(y(v._closedPromise),v._closedPromise_reject(w),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0)}function j(v,w){W(v,w)}function J(v){v._closedPromise_resolve!==void 0&&(v._closedPromise_resolve(void 0),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0)}let se=Number.isFinite||function(v){return typeof v=="number"&&isFinite(v)},oe=Math.trunc||function(v){return v<0?Math.ceil(v):Math.floor(v)};function ue(v){return typeof v=="object"||typeof v=="function"}function Te(v,w){if(v!==void 0&&!ue(v))throw new TypeError(`${w} is not an object.`)}function Ne(v,w){if(typeof v!="function")throw new TypeError(`${w} is not a function.`)}function je(v){return typeof v=="object"&&v!==null||typeof v=="function"}function Fe(v,w){if(!je(v))throw new TypeError(`${w} is not an object.`)}function ve(v,w,D){if(v===void 0)throw new TypeError(`Parameter ${w} is required in '${D}'.`)}function F(v,w,D){if(v===void 0)throw new TypeError(`${w} is required in '${D}'.`)}function G(v){return Number(v)}function K(v){return v===0?0:v}function q(v){return K(oe(v))}function Q(v,w){let z=Number.MAX_SAFE_INTEGER,ae=Number(v);if(ae=K(ae),!se(ae))throw new TypeError(`${w} is not a finite number`);if(ae=q(ae),ae<0||ae>z)throw new TypeError(`${w} is outside the accepted range of 0 to ${z}, inclusive`);return!se(ae)||ae===0?0:ae}function ee(v,w){if(!Tp(v))throw new TypeError(`${w} is not a ReadableStream.`)}function ne(v){return new me(v)}function re(v,w){v._reader._readRequests.push(w)}function X(v,w,D){let ae=v._reader._readRequests.shift();D?ae._closeSteps():ae._chunkSteps(w)}function ie(v){return v._reader._readRequests.length}function ce(v){let w=v._reader;return!(w===void 0||!Oe(w))}class me{constructor(w){if(ve(w,1,"ReadableStreamDefaultReader"),ee(w,"First parameter"),wp(w))throw new TypeError("This stream has already been locked for exclusive reading by another reader");B(this,w),this._readRequests=new S}get closed(){return Oe(this)?this._closedPromise:l(Je("closed"))}cancel(w=void 0){return Oe(this)?this._ownerReadableStream===void 0?l(L("cancel")):M(this,w):l(Je("cancel"))}read(){if(!Oe(this))return l(Je("read"));if(this._ownerReadableStream===void 0)return l(L("read from"));let w,D,z=c((ge,be)=>{w=ge,D=be});return Pe(this,{_chunkSteps:ge=>w({value:ge,done:!1}),_closeSteps:()=>w({value:void 0,done:!0}),_errorSteps:ge=>D(ge)}),z}releaseLock(){if(!Oe(this))throw Je("releaseLock");this._ownerReadableStream!==void 0&&qe(this)}}Object.defineProperties(me.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(me.prototype.cancel,"cancel"),s(me.prototype.read,"read"),s(me.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(me.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function Oe(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_readRequests")?!1:v instanceof me}function Pe(v,w){let D=v._ownerReadableStream;D._disturbed=!0,D._state==="closed"?w._closeSteps():D._state==="errored"?w._errorSteps(D._storedError):D._readableStreamController[N](w)}function qe(v){P(v);let w=new TypeError("Reader was released");Ye(v,w)}function Ye(v,w){let D=v._readRequests;v._readRequests=new S,D.forEach(z=>{z._errorSteps(w)})}function Je(v){return new TypeError(`ReadableStreamDefaultReader.prototype.${v} can only be used on a ReadableStreamDefaultReader`)}let et=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class st{constructor(w,D){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=w,this._preventCancel=D}next(){let w=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?h(this._ongoingPromise,w,w):w(),this._ongoingPromise}return(w){let D=()=>this._returnSteps(w);return this._ongoingPromise?h(this._ongoingPromise,D,D):D()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let w=this._reader,D,z,ae=c((be,Ge)=>{D=be,z=Ge});return Pe(w,{_chunkSteps:be=>{this._ongoingPromise=void 0,g(()=>D({value:be,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,P(w),D({value:void 0,done:!0})},_errorSteps:be=>{this._ongoingPromise=void 0,this._isFinished=!0,P(w),z(be)}}),ae}_returnSteps(w){if(this._isFinished)return Promise.resolve({value:w,done:!0});this._isFinished=!0;let D=this._reader;if(!this._preventCancel){let z=M(D,w);return P(D),h(z,()=>({value:w,done:!0}))}return P(D),u({value:w,done:!0})}}let ut={next(){return Pt(this)?this._asyncIteratorImpl.next():l(dt("next"))},return(v){return Pt(this)?this._asyncIteratorImpl.return(v):l(dt("return"))}};Object.setPrototypeOf(ut,et);function rt(v,w){let D=ne(v),z=new st(D,w),ae=Object.create(ut);return ae._asyncIteratorImpl=z,ae}function Pt(v){if(!r(v)||!Object.prototype.hasOwnProperty.call(v,"_asyncIteratorImpl"))return!1;try{return v._asyncIteratorImpl instanceof st}catch{return!1}}function dt(v){return new TypeError(`ReadableStreamAsyncIterator.${v} can only be used on a ReadableSteamAsyncIterator`)}let Be=Number.isNaN||function(v){return v!==v};var Xe,pt,nt;function bt(v){return v.slice()}function An(v,w,D,z,ae){new Uint8Array(v).set(new Uint8Array(D,z,ae),w)}let St=v=>(typeof v.transfer=="function"?St=w=>w.transfer():typeof structuredClone=="function"?St=w=>structuredClone(w,{transfer:[w]}):St=w=>w,St(v)),Rr=v=>(typeof v.detached=="boolean"?Rr=w=>w.detached:Rr=w=>w.byteLength===0,Rr(v));function Qs(v,w,D){if(v.slice)return v.slice(w,D);let z=D-w,ae=new ArrayBuffer(z);return An(ae,0,v,w,z),ae}function Lr(v,w){let D=v[w];if(D!=null){if(typeof D!="function")throw new TypeError(`${String(w)} is not a function`);return D}}function Hs(v){let w={[Symbol.iterator]:()=>v.iterator},D=async function*(){return yield*w}(),z=D.next;return{iterator:D,nextMethod:z,done:!1}}let Gs=(nt=(Xe=Symbol.asyncIterator)!==null&&Xe!==void 0?Xe:(pt=Symbol.for)===null||pt===void 0?void 0:pt.call(Symbol,"Symbol.asyncIterator"))!==null&&nt!==void 0?nt:"@@asyncIterator";function Es(v,w="sync",D){if(D===void 0)if(w==="async"){if(D=Lr(v,Gs),D===void 0){let ge=Lr(v,Symbol.iterator),be=Es(v,"sync",ge);return Hs(be)}}else D=Lr(v,Symbol.iterator);if(D===void 0)throw new TypeError("The object is not iterable");let z=A(D,v,[]);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 Vs(v){let w=A(v.nextMethod,v.iterator,[]);if(!r(w))throw new TypeError("The iterator.next() method must return an object");return w}function zu(v){return!!v.done}function To(v){return v.value}function Kc(v){return!(typeof v!="number"||Be(v)||v<0)}function La(v){let w=Qs(v.buffer,v.byteOffset,v.byteOffset+v.byteLength);return new Uint8Array(w)}function xn(v){let w=v._queue.shift();return v._queueTotalSize-=w.size,v._queueTotalSize<0&&(v._queueTotalSize=0),w.value}function Ma(v,w,D){if(!Kc(D)||D===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");v._queue.push({value:w,size:D}),v._queueTotalSize+=D}function Id(v){return v._queue.peek().value}function wo(v){v._queue=new S,v._queueTotalSize=0}function aA(v){return v===DataView}function EW(v){return aA(v.constructor)}function Gyt(v){return aA(v)?1:v.BYTES_PER_ELEMENT}class Wm{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!vW(this))throw wW("view");return this._view}respond(w){if(!vW(this))throw wW("respond");if(ve(w,1,"respond"),w=Q(w,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(Rr(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");cN(this._associatedReadableByteStreamController,w)}respondWithNewView(w){if(!vW(this))throw wW("respondWithNewView");if(ve(w,1,"respondWithNewView"),!ArrayBuffer.isView(w))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(Rr(w.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");uN(this._associatedReadableByteStreamController,w)}}Object.defineProperties(Wm.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),s(Wm.prototype.respond,"respond"),s(Wm.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Wm.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class Cd{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!$m(this))throw sE("byobRequest");return TW(this)}get desiredSize(){if(!$m(this))throw sE("desiredSize");return zpe(this)}close(){if(!$m(this))throw sE("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let w=this._controlledReadableByteStream._state;if(w!=="readable")throw new TypeError(`The stream (in ${w} state) is not in the readable state and cannot be closed`);nE(this)}enqueue(w){if(!$m(this))throw sE("enqueue");if(ve(w,1,"enqueue"),!ArrayBuffer.isView(w))throw new TypeError("chunk must be an array buffer view");if(w.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(w.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`);oN(this,w)}error(w=void 0){if(!$m(this))throw sE("error");ec(this,w)}[R](w){Upe(this),wo(this);let D=this._cancelAlgorithm(w);return aN(this),D}[N](w){let D=this._controlledReadableByteStream;if(this._queueTotalSize>0){Kpe(this,w);return}let z=this._autoAllocateChunkSize;if(z!==void 0){let ae;try{ae=new ArrayBuffer(z)}catch(be){w._errorSteps(be);return}let ge={buffer:ae,bufferByteLength:z,byteOffset:0,byteLength:z,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(ge)}re(D,w),Um(this)}[k](){if(this._pendingPullIntos.length>0){let w=this._pendingPullIntos.peek();w.readerType="none",this._pendingPullIntos=new S,this._pendingPullIntos.push(w)}}}Object.defineProperties(Cd.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),s(Cd.prototype.close,"close"),s(Cd.prototype.enqueue,"enqueue"),s(Cd.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Cd.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function $m(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledReadableByteStream")?!1:v instanceof Cd}function vW(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_associatedReadableByteStreamController")?!1:v instanceof Wm}function Um(v){if(!Jyt(v))return;if(v._pulling){v._pullAgain=!0;return}v._pulling=!0;let D=v._pullAlgorithm();f(D,()=>(v._pulling=!1,v._pullAgain&&(v._pullAgain=!1,Um(v)),null),z=>(ec(v,z),null))}function Upe(v){IW(v),v._pendingPullIntos=new S}function SW(v,w){let D=!1;v._state==="closed"&&(D=!0);let z=Fpe(w);w.readerType==="default"?X(v,z,D):nAt(v,z,D)}function Fpe(v){let w=v.bytesFilled,D=v.elementSize;return new v.viewConstructor(v.buffer,v.byteOffset,w/D)}function iN(v,w,D,z){v._queue.push({buffer:w,byteOffset:D,byteLength:z}),v._queueTotalSize+=z}function qpe(v,w,D,z){let ae;try{ae=Qs(w,D,D+z)}catch(ge){throw ec(v,ge),ge}iN(v,ae,0,z)}function jpe(v,w){w.bytesFilled>0&&qpe(v,w.buffer,w.byteOffset,w.bytesFilled),oA(v)}function Qpe(v,w){let D=Math.min(v._queueTotalSize,w.byteLength-w.bytesFilled),z=w.bytesFilled+D,ae=D,ge=!1,be=z%w.elementSize,Ge=z-be;Ge>=w.minimumFill&&(ae=Ge-w.bytesFilled,ge=!0);let It=v._queue;for(;ae>0;){let ft=It.peek(),Mt=Math.min(ae,ft.byteLength),tr=w.byteOffset+w.bytesFilled;An(w.buffer,tr,ft.buffer,ft.byteOffset,Mt),ft.byteLength===Mt?It.shift():(ft.byteOffset+=Mt,ft.byteLength-=Mt),v._queueTotalSize-=Mt,Hpe(v,Mt,w),ae-=Mt}return ge}function Hpe(v,w,D){D.bytesFilled+=w}function Gpe(v){v._queueTotalSize===0&&v._closeRequested?(aN(v),lE(v._controlledReadableByteStream)):Um(v)}function IW(v){v._byobRequest!==null&&(v._byobRequest._associatedReadableByteStreamController=void 0,v._byobRequest._view=null,v._byobRequest=null)}function CW(v){for(;v._pendingPullIntos.length>0;){if(v._queueTotalSize===0)return;let w=v._pendingPullIntos.peek();Qpe(v,w)&&(oA(v),SW(v._controlledReadableByteStream,w))}}function Vyt(v){let w=v._controlledReadableByteStream._reader;for(;w._readRequests.length>0;){if(v._queueTotalSize===0)return;let D=w._readRequests.shift();Kpe(v,D)}}function Kyt(v,w,D,z){let ae=v._controlledReadableByteStream,ge=w.constructor,be=Gyt(ge),{byteOffset:Ge,byteLength:It}=w,ft=D*be,Mt;try{Mt=St(w.buffer)}catch(un){z._errorSteps(un);return}let tr={buffer:Mt,bufferByteLength:Mt.byteLength,byteOffset:Ge,byteLength:It,bytesFilled:0,minimumFill:ft,elementSize:be,viewConstructor:ge,readerType:"byob"};if(v._pendingPullIntos.length>0){v._pendingPullIntos.push(tr),Xpe(ae,z);return}if(ae._state==="closed"){let un=new ge(tr.buffer,tr.byteOffset,0);z._closeSteps(un);return}if(v._queueTotalSize>0){if(Qpe(v,tr)){let un=Fpe(tr);Gpe(v),z._chunkSteps(un);return}if(v._closeRequested){let un=new TypeError("Insufficient bytes to fill elements in the given buffer");ec(v,un),z._errorSteps(un);return}}v._pendingPullIntos.push(tr),Xpe(ae,z),Um(v)}function zyt(v,w){w.readerType==="none"&&oA(v);let D=v._controlledReadableByteStream;if(RW(D))for(;Zpe(D)>0;){let z=oA(v);SW(D,z)}}function Yyt(v,w,D){if(Hpe(v,w,D),D.readerType==="none"){jpe(v,D),CW(v);return}if(D.bytesFilled<D.minimumFill)return;oA(v);let z=D.bytesFilled%D.elementSize;if(z>0){let ae=D.byteOffset+D.bytesFilled;qpe(v,D.buffer,ae-z,z)}D.bytesFilled-=z,SW(v._controlledReadableByteStream,D),CW(v)}function Vpe(v,w){let D=v._pendingPullIntos.peek();IW(v),v._controlledReadableByteStream._state==="closed"?zyt(v,D):Yyt(v,w,D),Um(v)}function oA(v){return v._pendingPullIntos.shift()}function Jyt(v){let w=v._controlledReadableByteStream;return w._state!=="readable"||v._closeRequested||!v._started?!1:!!(ce(w)&&ie(w)>0||RW(w)&&Zpe(w)>0||zpe(v)>0)}function aN(v){v._pullAlgorithm=void 0,v._cancelAlgorithm=void 0}function nE(v){let w=v._controlledReadableByteStream;if(!(v._closeRequested||w._state!=="readable")){if(v._queueTotalSize>0){v._closeRequested=!0;return}if(v._pendingPullIntos.length>0){let D=v._pendingPullIntos.peek();if(D.bytesFilled%D.elementSize!==0){let z=new TypeError("Insufficient bytes to fill elements in the given buffer");throw ec(v,z),z}}aN(v),lE(w)}}function oN(v,w){let D=v._controlledReadableByteStream;if(v._closeRequested||D._state!=="readable")return;let{buffer:z,byteOffset:ae,byteLength:ge}=w;if(Rr(z))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let be=St(z);if(v._pendingPullIntos.length>0){let Ge=v._pendingPullIntos.peek();if(Rr(Ge.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");IW(v),Ge.buffer=St(Ge.buffer),Ge.readerType==="none"&&jpe(v,Ge)}if(ce(D))if(Vyt(v),ie(D)===0)iN(v,be,ae,ge);else{v._pendingPullIntos.length>0&&oA(v);let Ge=new Uint8Array(be,ae,ge);X(D,Ge,!1)}else RW(D)?(iN(v,be,ae,ge),CW(v)):iN(v,be,ae,ge);Um(v)}function ec(v,w){let D=v._controlledReadableByteStream;D._state==="readable"&&(Upe(v),wo(v),aN(v),v0e(D,w))}function Kpe(v,w){let D=v._queue.shift();v._queueTotalSize-=D.byteLength,Gpe(v);let z=new Uint8Array(D.buffer,D.byteOffset,D.byteLength);w._chunkSteps(z)}function TW(v){if(v._byobRequest===null&&v._pendingPullIntos.length>0){let w=v._pendingPullIntos.peek(),D=new Uint8Array(w.buffer,w.byteOffset+w.bytesFilled,w.byteLength-w.bytesFilled),z=Object.create(Wm.prototype);Zyt(z,v,D),v._byobRequest=z}return v._byobRequest}function zpe(v){let w=v._controlledReadableByteStream._state;return w==="errored"?null:w==="closed"?0:v._strategyHWM-v._queueTotalSize}function cN(v,w){let D=v._pendingPullIntos.peek();if(v._controlledReadableByteStream._state==="closed"){if(w!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(w===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(D.bytesFilled+w>D.byteLength)throw new RangeError("bytesWritten out of range")}D.buffer=St(D.buffer),Vpe(v,w)}function uN(v,w){let D=v._pendingPullIntos.peek();if(v._controlledReadableByteStream._state==="closed"){if(w.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(w.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!==w.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(D.bufferByteLength!==w.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(D.bytesFilled+w.byteLength>D.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let ae=w.byteLength;D.buffer=St(w.buffer),Vpe(v,ae)}function Ype(v,w,D,z,ae,ge,be){w._controlledReadableByteStream=v,w._pullAgain=!1,w._pulling=!1,w._byobRequest=null,w._queue=w._queueTotalSize=void 0,wo(w),w._closeRequested=!1,w._started=!1,w._strategyHWM=ge,w._pullAlgorithm=z,w._cancelAlgorithm=ae,w._autoAllocateChunkSize=be,w._pendingPullIntos=new S,v._readableStreamController=w;let Ge=D();f(u(Ge),()=>(w._started=!0,Um(w),null),It=>(ec(w,It),null))}function Xyt(v,w,D){let z=Object.create(Cd.prototype),ae,ge,be;w.start!==void 0?ae=()=>w.start(z):ae=()=>{},w.pull!==void 0?ge=()=>w.pull(z):ge=()=>u(void 0),w.cancel!==void 0?be=It=>w.cancel(It):be=()=>u(void 0);let Ge=w.autoAllocateChunkSize;if(Ge===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");Ype(v,z,ae,ge,be,D,Ge)}function Zyt(v,w,D){v._associatedReadableByteStreamController=w,v._view=D}function wW(v){return new TypeError(`ReadableStreamBYOBRequest.prototype.${v} can only be used on a ReadableStreamBYOBRequest`)}function sE(v){return new TypeError(`ReadableByteStreamController.prototype.${v} can only be used on a ReadableByteStreamController`)}function eAt(v,w){Te(v,w);let D=v?.mode;return{mode:D===void 0?void 0:tAt(D,`${w} has member 'mode' that`)}}function tAt(v,w){if(v=`${v}`,v!=="byob")throw new TypeError(`${w} '${v}' is not a valid enumeration value for ReadableStreamReaderMode`);return v}function rAt(v,w){var D;Te(v,w);let z=(D=v?.min)!==null&&D!==void 0?D:1;return{min:Q(z,`${w} has member 'min' that`)}}function Jpe(v){return new Ip(v)}function Xpe(v,w){v._reader._readIntoRequests.push(w)}function nAt(v,w,D){let ae=v._reader._readIntoRequests.shift();D?ae._closeSteps(w):ae._chunkSteps(w)}function Zpe(v){return v._reader._readIntoRequests.length}function RW(v){let w=v._reader;return!(w===void 0||!Fm(w))}class Ip{constructor(w){if(ve(w,1,"ReadableStreamBYOBReader"),ee(w,"First parameter"),wp(w))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!$m(w._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");B(this,w),this._readIntoRequests=new S}get closed(){return Fm(this)?this._closedPromise:l(lN("closed"))}cancel(w=void 0){return Fm(this)?this._ownerReadableStream===void 0?l(L("cancel")):M(this,w):l(lN("cancel"))}read(w,D={}){if(!Fm(this))return l(lN("read"));if(!ArrayBuffer.isView(w))return l(new TypeError("view must be an array buffer view"));if(w.byteLength===0)return l(new TypeError("view must have non-zero byteLength"));if(w.buffer.byteLength===0)return l(new TypeError("view's buffer must have non-zero byteLength"));if(Rr(w.buffer))return l(new TypeError("view's buffer has been detached"));let z;try{z=rAt(D,"options")}catch(ft){return l(ft)}let ae=z.min;if(ae===0)return l(new TypeError("options.min must be greater than 0"));if(EW(w)){if(ae>w.byteLength)return l(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(ae>w.length)return l(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return l(L("read from"));let ge,be,Ge=c((ft,Mt)=>{ge=ft,be=Mt});return e0e(this,w,ae,{_chunkSteps:ft=>ge({value:ft,done:!1}),_closeSteps:ft=>ge({value:ft,done:!0}),_errorSteps:ft=>be(ft)}),Ge}releaseLock(){if(!Fm(this))throw lN("releaseLock");this._ownerReadableStream!==void 0&&sAt(this)}}Object.defineProperties(Ip.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(Ip.prototype.cancel,"cancel"),s(Ip.prototype.read,"read"),s(Ip.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Ip.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function Fm(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_readIntoRequests")?!1:v instanceof Ip}function e0e(v,w,D,z){let ae=v._ownerReadableStream;ae._disturbed=!0,ae._state==="errored"?z._errorSteps(ae._storedError):Kyt(ae._readableStreamController,w,D,z)}function sAt(v){P(v);let w=new TypeError("Reader was released");t0e(v,w)}function t0e(v,w){let D=v._readIntoRequests;v._readIntoRequests=new S,D.forEach(z=>{z._errorSteps(w)})}function lN(v){return new TypeError(`ReadableStreamBYOBReader.prototype.${v} can only be used on a ReadableStreamBYOBReader`)}function iE(v,w){let{highWaterMark:D}=v;if(D===void 0)return w;if(Be(D)||D<0)throw new RangeError("Invalid highWaterMark");return D}function dN(v){let{size:w}=v;return w||(()=>1)}function fN(v,w){Te(v,w);let D=v?.highWaterMark,z=v?.size;return{highWaterMark:D===void 0?void 0:G(D),size:z===void 0?void 0:iAt(z,`${w} has member 'size' that`)}}function iAt(v,w){return Ne(v,w),D=>G(v(D))}function aAt(v,w){Te(v,w);let D=v?.abort,z=v?.close,ae=v?.start,ge=v?.type,be=v?.write;return{abort:D===void 0?void 0:oAt(D,v,`${w} has member 'abort' that`),close:z===void 0?void 0:cAt(z,v,`${w} has member 'close' that`),start:ae===void 0?void 0:uAt(ae,v,`${w} has member 'start' that`),write:be===void 0?void 0:lAt(be,v,`${w} has member 'write' that`),type:ge}}function oAt(v,w,D){return Ne(v,D),z=>b(v,w,[z])}function cAt(v,w,D){return Ne(v,D),()=>b(v,w,[])}function uAt(v,w,D){return Ne(v,D),z=>A(v,w,[z])}function lAt(v,w,D){return Ne(v,D),(z,ae)=>b(v,w,[z,ae])}function r0e(v,w){if(!cA(v))throw new TypeError(`${w} is not a WritableStream.`)}function dAt(v){if(typeof v!="object"||v===null)return!1;try{return typeof v.aborted=="boolean"}catch{return!1}}let fAt=typeof AbortController=="function";function pAt(){if(fAt)return new AbortController}class Cp{constructor(w={},D={}){w===void 0?w=null:Fe(w,"First parameter");let z=fN(D,"Second parameter"),ae=aAt(w,"First parameter");if(s0e(this),ae.type!==void 0)throw new RangeError("Invalid type is specified");let be=dN(z),Ge=iE(z,1);TAt(this,ae,Ge,be)}get locked(){if(!cA(this))throw yN("locked");return uA(this)}abort(w=void 0){return cA(this)?uA(this)?l(new TypeError("Cannot abort a stream that already has a writer")):pN(this,w):l(yN("abort"))}close(){return cA(this)?uA(this)?l(new TypeError("Cannot close a stream that already has a writer")):Yu(this)?l(new TypeError("Cannot close an already-closing stream")):i0e(this):l(yN("close"))}getWriter(){if(!cA(this))throw yN("getWriter");return n0e(this)}}Object.defineProperties(Cp.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),s(Cp.prototype.abort,"abort"),s(Cp.prototype.close,"close"),s(Cp.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Cp.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function n0e(v){return new Td(v)}function mAt(v,w,D,z,ae=1,ge=()=>1){let be=Object.create(Cp.prototype);s0e(be);let Ge=Object.create(lA.prototype);return d0e(be,Ge,v,w,D,z,ae,ge),be}function s0e(v){v._state="writable",v._storedError=void 0,v._writer=void 0,v._writableStreamController=void 0,v._writeRequests=new S,v._inFlightWriteRequest=void 0,v._closeRequest=void 0,v._inFlightCloseRequest=void 0,v._pendingAbortRequest=void 0,v._backpressure=!1}function cA(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_writableStreamController")?!1:v instanceof Cp}function uA(v){return v._writer!==void 0}function pN(v,w){var D;if(v._state==="closed"||v._state==="errored")return u(void 0);v._writableStreamController._abortReason=w,(D=v._writableStreamController._abortController)===null||D===void 0||D.abort(w);let z=v._state;if(z==="closed"||z==="errored")return u(void 0);if(v._pendingAbortRequest!==void 0)return v._pendingAbortRequest._promise;let ae=!1;z==="erroring"&&(ae=!0,w=void 0);let ge=c((be,Ge)=>{v._pendingAbortRequest={_promise:void 0,_resolve:be,_reject:Ge,_reason:w,_wasAlreadyErroring:ae}});return v._pendingAbortRequest._promise=ge,ae||OW(v,w),ge}function i0e(v){let w=v._state;if(w==="closed"||w==="errored")return l(new TypeError(`The stream (in ${w} state) is not in the writable state and cannot be closed`));let D=c((ae,ge)=>{let be={_resolve:ae,_reject:ge};v._closeRequest=be}),z=v._writer;return z!==void 0&&v._backpressure&&w==="writable"&&$W(z),wAt(v._writableStreamController),D}function hAt(v){return c((D,z)=>{let ae={_resolve:D,_reject:z};v._writeRequests.push(ae)})}function NW(v,w){if(v._state==="writable"){OW(v,w);return}kW(v)}function OW(v,w){let D=v._writableStreamController;v._state="erroring",v._storedError=w;let z=v._writer;z!==void 0&&o0e(z,w),!bAt(v)&&D._started&&kW(v)}function kW(v){v._state="errored",v._writableStreamController[I]();let w=v._storedError;if(v._writeRequests.forEach(ae=>{ae._reject(w)}),v._writeRequests=new S,v._pendingAbortRequest===void 0){mN(v);return}let D=v._pendingAbortRequest;if(v._pendingAbortRequest=void 0,D._wasAlreadyErroring){D._reject(w),mN(v);return}let z=v._writableStreamController[T](D._reason);f(z,()=>(D._resolve(),mN(v),null),ae=>(D._reject(ae),mN(v),null))}function gAt(v){v._inFlightWriteRequest._resolve(void 0),v._inFlightWriteRequest=void 0}function yAt(v,w){v._inFlightWriteRequest._reject(w),v._inFlightWriteRequest=void 0,NW(v,w)}function AAt(v){v._inFlightCloseRequest._resolve(void 0),v._inFlightCloseRequest=void 0,v._state==="erroring"&&(v._storedError=void 0,v._pendingAbortRequest!==void 0&&(v._pendingAbortRequest._resolve(),v._pendingAbortRequest=void 0)),v._state="closed";let D=v._writer;D!==void 0&&h0e(D)}function xAt(v,w){v._inFlightCloseRequest._reject(w),v._inFlightCloseRequest=void 0,v._pendingAbortRequest!==void 0&&(v._pendingAbortRequest._reject(w),v._pendingAbortRequest=void 0),NW(v,w)}function Yu(v){return!(v._closeRequest===void 0&&v._inFlightCloseRequest===void 0)}function bAt(v){return!(v._inFlightWriteRequest===void 0&&v._inFlightCloseRequest===void 0)}function _At(v){v._inFlightCloseRequest=v._closeRequest,v._closeRequest=void 0}function EAt(v){v._inFlightWriteRequest=v._writeRequests.shift()}function mN(v){v._closeRequest!==void 0&&(v._closeRequest._reject(v._storedError),v._closeRequest=void 0);let w=v._writer;w!==void 0&&MW(w,v._storedError)}function PW(v,w){let D=v._writer;D!==void 0&&w!==v._backpressure&&(w?BAt(D):$W(D)),v._backpressure=w}class Td{constructor(w){if(ve(w,1,"WritableStreamDefaultWriter"),r0e(w,"First parameter"),uA(w))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=w,w._writer=this;let D=w._state;if(D==="writable")!Yu(w)&&w._backpressure?xN(this):g0e(this),AN(this);else if(D==="erroring")WW(this,w._storedError),AN(this);else if(D==="closed")g0e(this),PAt(this);else{let z=w._storedError;WW(this,z),m0e(this,z)}}get closed(){return qm(this)?this._closedPromise:l(jm("closed"))}get desiredSize(){if(!qm(this))throw jm("desiredSize");if(this._ownerWritableStream===void 0)throw oE("desiredSize");return CAt(this)}get ready(){return qm(this)?this._readyPromise:l(jm("ready"))}abort(w=void 0){return qm(this)?this._ownerWritableStream===void 0?l(oE("abort")):vAt(this,w):l(jm("abort"))}close(){if(!qm(this))return l(jm("close"));let w=this._ownerWritableStream;return w===void 0?l(oE("close")):Yu(w)?l(new TypeError("Cannot close an already-closing stream")):a0e(this)}releaseLock(){if(!qm(this))throw jm("releaseLock");this._ownerWritableStream!==void 0&&c0e(this)}write(w=void 0){return qm(this)?this._ownerWritableStream===void 0?l(oE("write to")):u0e(this,w):l(jm("write"))}}Object.defineProperties(Td.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),s(Td.prototype.abort,"abort"),s(Td.prototype.close,"close"),s(Td.prototype.releaseLock,"releaseLock"),s(Td.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Td.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function qm(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_ownerWritableStream")?!1:v instanceof Td}function vAt(v,w){let D=v._ownerWritableStream;return pN(D,w)}function a0e(v){let w=v._ownerWritableStream;return i0e(w)}function SAt(v){let w=v._ownerWritableStream,D=w._state;return Yu(w)||D==="closed"?u(void 0):D==="errored"?l(w._storedError):a0e(v)}function IAt(v,w){v._closedPromiseState==="pending"?MW(v,w):DAt(v,w)}function o0e(v,w){v._readyPromiseState==="pending"?y0e(v,w):LAt(v,w)}function CAt(v){let w=v._ownerWritableStream,D=w._state;return D==="errored"||D==="erroring"?null:D==="closed"?0:f0e(w._writableStreamController)}function c0e(v){let w=v._ownerWritableStream,D=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");o0e(v,D),IAt(v,D),w._writer=void 0,v._ownerWritableStream=void 0}function u0e(v,w){let D=v._ownerWritableStream,z=D._writableStreamController,ae=RAt(z,w);if(D!==v._ownerWritableStream)return l(oE("write to"));let ge=D._state;if(ge==="errored")return l(D._storedError);if(Yu(D)||ge==="closed")return l(new TypeError("The stream is closing or closed and cannot be written to"));if(ge==="erroring")return l(D._storedError);let be=hAt(D);return NAt(z,w,ae),be}let l0e={};class lA{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!DW(this))throw LW("abortReason");return this._abortReason}get signal(){if(!DW(this))throw LW("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(w=void 0){if(!DW(this))throw LW("error");this._controlledWritableStream._state==="writable"&&p0e(this,w)}[T](w){let D=this._abortAlgorithm(w);return hN(this),D}[I](){wo(this)}}Object.defineProperties(lA.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(lA.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function DW(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledWritableStream")?!1:v instanceof lA}function d0e(v,w,D,z,ae,ge,be,Ge){w._controlledWritableStream=v,v._writableStreamController=w,w._queue=void 0,w._queueTotalSize=void 0,wo(w),w._abortReason=void 0,w._abortController=pAt(),w._started=!1,w._strategySizeAlgorithm=Ge,w._strategyHWM=be,w._writeAlgorithm=z,w._closeAlgorithm=ae,w._abortAlgorithm=ge;let It=BW(w);PW(v,It);let ft=D(),Mt=u(ft);f(Mt,()=>(w._started=!0,gN(w),null),tr=>(w._started=!0,NW(v,tr),null))}function TAt(v,w,D,z){let ae=Object.create(lA.prototype),ge,be,Ge,It;w.start!==void 0?ge=()=>w.start(ae):ge=()=>{},w.write!==void 0?be=ft=>w.write(ft,ae):be=()=>u(void 0),w.close!==void 0?Ge=()=>w.close():Ge=()=>u(void 0),w.abort!==void 0?It=ft=>w.abort(ft):It=()=>u(void 0),d0e(v,ae,ge,be,Ge,It,D,z)}function hN(v){v._writeAlgorithm=void 0,v._closeAlgorithm=void 0,v._abortAlgorithm=void 0,v._strategySizeAlgorithm=void 0}function wAt(v){Ma(v,l0e,0),gN(v)}function RAt(v,w){try{return v._strategySizeAlgorithm(w)}catch(D){return aE(v,D),1}}function f0e(v){return v._strategyHWM-v._queueTotalSize}function NAt(v,w,D){try{Ma(v,w,D)}catch(ae){aE(v,ae);return}let z=v._controlledWritableStream;if(!Yu(z)&&z._state==="writable"){let ae=BW(v);PW(z,ae)}gN(v)}function gN(v){let w=v._controlledWritableStream;if(!v._started||w._inFlightWriteRequest!==void 0)return;if(w._state==="erroring"){kW(w);return}if(v._queue.length===0)return;let z=Id(v);z===l0e?OAt(v):kAt(v,z)}function aE(v,w){v._controlledWritableStream._state==="writable"&&p0e(v,w)}function OAt(v){let w=v._controlledWritableStream;_At(w),xn(v);let D=v._closeAlgorithm();hN(v),f(D,()=>(AAt(w),null),z=>(xAt(w,z),null))}function kAt(v,w){let D=v._controlledWritableStream;EAt(D);let z=v._writeAlgorithm(w);f(z,()=>{gAt(D);let ae=D._state;if(xn(v),!Yu(D)&&ae==="writable"){let ge=BW(v);PW(D,ge)}return gN(v),null},ae=>(D._state==="writable"&&hN(v),yAt(D,ae),null))}function BW(v){return f0e(v)<=0}function p0e(v,w){let D=v._controlledWritableStream;hN(v),OW(D,w)}function yN(v){return new TypeError(`WritableStream.prototype.${v} can only be used on a WritableStream`)}function LW(v){return new TypeError(`WritableStreamDefaultController.prototype.${v} can only be used on a WritableStreamDefaultController`)}function jm(v){return new TypeError(`WritableStreamDefaultWriter.prototype.${v} can only be used on a WritableStreamDefaultWriter`)}function oE(v){return new TypeError("Cannot "+v+" a stream using a released writer")}function AN(v){v._closedPromise=c((w,D)=>{v._closedPromise_resolve=w,v._closedPromise_reject=D,v._closedPromiseState="pending"})}function m0e(v,w){AN(v),MW(v,w)}function PAt(v){AN(v),h0e(v)}function MW(v,w){v._closedPromise_reject!==void 0&&(y(v._closedPromise),v._closedPromise_reject(w),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0,v._closedPromiseState="rejected")}function DAt(v,w){m0e(v,w)}function h0e(v){v._closedPromise_resolve!==void 0&&(v._closedPromise_resolve(void 0),v._closedPromise_resolve=void 0,v._closedPromise_reject=void 0,v._closedPromiseState="resolved")}function xN(v){v._readyPromise=c((w,D)=>{v._readyPromise_resolve=w,v._readyPromise_reject=D}),v._readyPromiseState="pending"}function WW(v,w){xN(v),y0e(v,w)}function g0e(v){xN(v),$W(v)}function y0e(v,w){v._readyPromise_reject!==void 0&&(y(v._readyPromise),v._readyPromise_reject(w),v._readyPromise_resolve=void 0,v._readyPromise_reject=void 0,v._readyPromiseState="rejected")}function BAt(v){xN(v)}function LAt(v,w){WW(v,w)}function $W(v){v._readyPromise_resolve!==void 0&&(v._readyPromise_resolve(void 0),v._readyPromise_resolve=void 0,v._readyPromise_reject=void 0,v._readyPromiseState="fulfilled")}function MAt(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let UW=MAt();function WAt(v){if(!(typeof v=="function"||typeof v=="object")||v.name!=="DOMException")return!1;try{return new v,!0}catch{return!1}}function $At(){let v=UW?.DOMException;return WAt(v)?v:void 0}function UAt(){let v=function(D,z){this.message=D||"",this.name=z||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return s(v,"DOMException"),v.prototype=Object.create(Error.prototype),Object.defineProperty(v.prototype,"constructor",{value:v,writable:!0,configurable:!0}),v}let FAt=$At()||UAt();function A0e(v,w,D,z,ae,ge){let be=ne(v),Ge=n0e(w);v._disturbed=!0;let It=!1,ft=u(void 0);return c((Mt,tr)=>{let un;if(ge!==void 0){if(un=()=>{let gt=ge.reason!==void 0?ge.reason:new FAt("Aborted","AbortError"),gr=[];z||gr.push(()=>w._state==="writable"?pN(w,gt):u(void 0)),ae||gr.push(()=>v._state==="readable"?Yc(v,gt):u(void 0)),Wa(()=>Promise.all(gr.map(bn=>bn())),!0,gt)},ge.aborted){un();return}ge.addEventListener("abort",un)}function Jc(){return c((gt,gr)=>{function bn(Ro){Ro?gt():d(mA(),bn,gr)}bn(!1)})}function mA(){return It?u(!0):d(Ge._readyPromise,()=>c((gt,gr)=>{Pe(be,{_chunkSteps:bn=>{ft=d(u0e(Ge,bn),void 0,e),gt(!1)},_closeSteps:()=>gt(!0),_errorSteps:gr})}))}if(Rd(v,be._closedPromise,gt=>(z?tc(!0,gt):Wa(()=>pN(w,gt),!0,gt),null)),Rd(w,Ge._closedPromise,gt=>(ae?tc(!0,gt):Wa(()=>Yc(v,gt),!0,gt),null)),ca(v,be._closedPromise,()=>(D?tc():Wa(()=>SAt(Ge)),null)),Yu(w)||w._state==="closed"){let gt=new TypeError("the destination writable stream closed before all data could be piped to it");ae?tc(!0,gt):Wa(()=>Yc(v,gt),!0,gt)}y(Jc());function Np(){let gt=ft;return d(ft,()=>gt!==ft?Np():void 0)}function Rd(gt,gr,bn){gt._state==="errored"?bn(gt._storedError):p(gr,bn)}function ca(gt,gr,bn){gt._state==="closed"?bn():m(gr,bn)}function Wa(gt,gr,bn){if(It)return;It=!0,w._state==="writable"&&!Yu(w)?m(Np(),Ro):Ro();function Ro(){return f(gt(),()=>Nd(gr,bn),hA=>Nd(!0,hA)),null}}function tc(gt,gr){It||(It=!0,w._state==="writable"&&!Yu(w)?m(Np(),()=>Nd(gt,gr)):Nd(gt,gr))}function Nd(gt,gr){return c0e(Ge),P(be),ge!==void 0&&ge.removeEventListener("abort",un),gt?tr(gr):Mt(void 0),null}})}class wd{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!bN(this))throw EN("desiredSize");return FW(this)}close(){if(!bN(this))throw EN("close");if(!fA(this))throw new TypeError("The stream is not in a state that permits close");Qm(this)}enqueue(w=void 0){if(!bN(this))throw EN("enqueue");if(!fA(this))throw new TypeError("The stream is not in a state that permits enqueue");return dA(this,w)}error(w=void 0){if(!bN(this))throw EN("error");zc(this,w)}[R](w){wo(this);let D=this._cancelAlgorithm(w);return _N(this),D}[N](w){let D=this._controlledReadableStream;if(this._queue.length>0){let z=xn(this);this._closeRequested&&this._queue.length===0?(_N(this),lE(D)):cE(this),w._chunkSteps(z)}else re(D,w),cE(this)}[k](){}}Object.defineProperties(wd.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),s(wd.prototype.close,"close"),s(wd.prototype.enqueue,"enqueue"),s(wd.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(wd.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function bN(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledReadableStream")?!1:v instanceof wd}function cE(v){if(!x0e(v))return;if(v._pulling){v._pullAgain=!0;return}v._pulling=!0;let D=v._pullAlgorithm();f(D,()=>(v._pulling=!1,v._pullAgain&&(v._pullAgain=!1,cE(v)),null),z=>(zc(v,z),null))}function x0e(v){let w=v._controlledReadableStream;return!fA(v)||!v._started?!1:!!(wp(w)&&ie(w)>0||FW(v)>0)}function _N(v){v._pullAlgorithm=void 0,v._cancelAlgorithm=void 0,v._strategySizeAlgorithm=void 0}function Qm(v){if(!fA(v))return;let w=v._controlledReadableStream;v._closeRequested=!0,v._queue.length===0&&(_N(v),lE(w))}function dA(v,w){if(!fA(v))return;let D=v._controlledReadableStream;if(wp(D)&&ie(D)>0)X(D,w,!1);else{let z;try{z=v._strategySizeAlgorithm(w)}catch(ae){throw zc(v,ae),ae}try{Ma(v,w,z)}catch(ae){throw zc(v,ae),ae}}cE(v)}function zc(v,w){let D=v._controlledReadableStream;D._state==="readable"&&(wo(v),_N(v),v0e(D,w))}function FW(v){let w=v._controlledReadableStream._state;return w==="errored"?null:w==="closed"?0:v._strategyHWM-v._queueTotalSize}function qAt(v){return!x0e(v)}function fA(v){let w=v._controlledReadableStream._state;return!v._closeRequested&&w==="readable"}function b0e(v,w,D,z,ae,ge,be){w._controlledReadableStream=v,w._queue=void 0,w._queueTotalSize=void 0,wo(w),w._started=!1,w._closeRequested=!1,w._pullAgain=!1,w._pulling=!1,w._strategySizeAlgorithm=be,w._strategyHWM=ge,w._pullAlgorithm=z,w._cancelAlgorithm=ae,v._readableStreamController=w;let Ge=D();f(u(Ge),()=>(w._started=!0,cE(w),null),It=>(zc(w,It),null))}function jAt(v,w,D,z){let ae=Object.create(wd.prototype),ge,be,Ge;w.start!==void 0?ge=()=>w.start(ae):ge=()=>{},w.pull!==void 0?be=()=>w.pull(ae):be=()=>u(void 0),w.cancel!==void 0?Ge=It=>w.cancel(It):Ge=()=>u(void 0),b0e(v,ae,ge,be,Ge,D,z)}function EN(v){return new TypeError(`ReadableStreamDefaultController.prototype.${v} can only be used on a ReadableStreamDefaultController`)}function QAt(v,w){return $m(v._readableStreamController)?GAt(v):HAt(v)}function HAt(v,w){let D=ne(v),z=!1,ae=!1,ge=!1,be=!1,Ge,It,ft,Mt,tr,un=c(ca=>{tr=ca});function Jc(){return z?(ae=!0,u(void 0)):(z=!0,Pe(D,{_chunkSteps:Wa=>{g(()=>{ae=!1;let tc=Wa,Nd=Wa;ge||dA(ft._readableStreamController,tc),be||dA(Mt._readableStreamController,Nd),z=!1,ae&&Jc()})},_closeSteps:()=>{z=!1,ge||Qm(ft._readableStreamController),be||Qm(Mt._readableStreamController),(!ge||!be)&&tr(void 0)},_errorSteps:()=>{z=!1}}),u(void 0))}function mA(ca){if(ge=!0,Ge=ca,be){let Wa=bt([Ge,It]),tc=Yc(v,Wa);tr(tc)}return un}function Np(ca){if(be=!0,It=ca,ge){let Wa=bt([Ge,It]),tc=Yc(v,Wa);tr(tc)}return un}function Rd(){}return ft=uE(Rd,Jc,mA),Mt=uE(Rd,Jc,Np),p(D._closedPromise,ca=>(zc(ft._readableStreamController,ca),zc(Mt._readableStreamController,ca),(!ge||!be)&&tr(void 0),null)),[ft,Mt]}function GAt(v){let w=ne(v),D=!1,z=!1,ae=!1,ge=!1,be=!1,Ge,It,ft,Mt,tr,un=c(gt=>{tr=gt});function Jc(gt){p(gt._closedPromise,gr=>(gt!==w||(ec(ft._readableStreamController,gr),ec(Mt._readableStreamController,gr),(!ge||!be)&&tr(void 0)),null))}function mA(){Fm(w)&&(P(w),w=ne(v),Jc(w)),Pe(w,{_chunkSteps:gr=>{g(()=>{z=!1,ae=!1;let bn=gr,Ro=gr;if(!ge&&!be)try{Ro=La(gr)}catch(hA){ec(ft._readableStreamController,hA),ec(Mt._readableStreamController,hA),tr(Yc(v,hA));return}ge||oN(ft._readableStreamController,bn),be||oN(Mt._readableStreamController,Ro),D=!1,z?Rd():ae&&ca()})},_closeSteps:()=>{D=!1,ge||nE(ft._readableStreamController),be||nE(Mt._readableStreamController),ft._readableStreamController._pendingPullIntos.length>0&&cN(ft._readableStreamController,0),Mt._readableStreamController._pendingPullIntos.length>0&&cN(Mt._readableStreamController,0),(!ge||!be)&&tr(void 0)},_errorSteps:()=>{D=!1}})}function Np(gt,gr){Oe(w)&&(P(w),w=Jpe(v),Jc(w));let bn=gr?Mt:ft,Ro=gr?ft:Mt;e0e(w,gt,1,{_chunkSteps:gA=>{g(()=>{z=!1,ae=!1;let yA=gr?be:ge;if(gr?ge:be)yA||uN(bn._readableStreamController,gA);else{let L0e;try{L0e=La(gA)}catch(GW){ec(bn._readableStreamController,GW),ec(Ro._readableStreamController,GW),tr(Yc(v,GW));return}yA||uN(bn._readableStreamController,gA),oN(Ro._readableStreamController,L0e)}D=!1,z?Rd():ae&&ca()})},_closeSteps:gA=>{D=!1;let yA=gr?be:ge,NN=gr?ge:be;yA||nE(bn._readableStreamController),NN||nE(Ro._readableStreamController),gA!==void 0&&(yA||uN(bn._readableStreamController,gA),!NN&&Ro._readableStreamController._pendingPullIntos.length>0&&cN(Ro._readableStreamController,0)),(!yA||!NN)&&tr(void 0)},_errorSteps:()=>{D=!1}})}function Rd(){if(D)return z=!0,u(void 0);D=!0;let gt=TW(ft._readableStreamController);return gt===null?mA():Np(gt._view,!1),u(void 0)}function ca(){if(D)return ae=!0,u(void 0);D=!0;let gt=TW(Mt._readableStreamController);return gt===null?mA():Np(gt._view,!0),u(void 0)}function Wa(gt){if(ge=!0,Ge=gt,be){let gr=bt([Ge,It]),bn=Yc(v,gr);tr(bn)}return un}function tc(gt){if(be=!0,It=gt,ge){let gr=bt([Ge,It]),bn=Yc(v,gr);tr(bn)}return un}function Nd(){}return ft=E0e(Nd,Rd,Wa),Mt=E0e(Nd,ca,tc),Jc(w),[ft,Mt]}function VAt(v){return r(v)&&typeof v.getReader<"u"}function KAt(v){return VAt(v)?YAt(v.getReader()):zAt(v)}function zAt(v){let w,D=Es(v,"async"),z=e;function ae(){let be;try{be=Vs(D)}catch(It){return l(It)}let Ge=u(be);return h(Ge,It=>{if(!r(It))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(zu(It))Qm(w._readableStreamController);else{let Mt=To(It);dA(w._readableStreamController,Mt)}})}function ge(be){let Ge=D.iterator,It;try{It=Lr(Ge,"return")}catch(tr){return l(tr)}if(It===void 0)return u(void 0);let ft;try{ft=A(It,Ge,[be])}catch(tr){return l(tr)}let Mt=u(ft);return h(Mt,tr=>{if(!r(tr))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return w=uE(z,ae,ge,0),w}function YAt(v){let w,D=e;function z(){let ge;try{ge=v.read()}catch(be){return l(be)}return h(ge,be=>{if(!r(be))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(be.done)Qm(w._readableStreamController);else{let Ge=be.value;dA(w._readableStreamController,Ge)}})}function ae(ge){try{return u(v.cancel(ge))}catch(be){return l(be)}}return w=uE(D,z,ae,0),w}function JAt(v,w){Te(v,w);let D=v,z=D?.autoAllocateChunkSize,ae=D?.cancel,ge=D?.pull,be=D?.start,Ge=D?.type;return{autoAllocateChunkSize:z===void 0?void 0:Q(z,`${w} has member 'autoAllocateChunkSize' that`),cancel:ae===void 0?void 0:XAt(ae,D,`${w} has member 'cancel' that`),pull:ge===void 0?void 0:ZAt(ge,D,`${w} has member 'pull' that`),start:be===void 0?void 0:ext(be,D,`${w} has member 'start' that`),type:Ge===void 0?void 0:txt(Ge,`${w} has member 'type' that`)}}function XAt(v,w,D){return Ne(v,D),z=>b(v,w,[z])}function ZAt(v,w,D){return Ne(v,D),z=>b(v,w,[z])}function ext(v,w,D){return Ne(v,D),z=>A(v,w,[z])}function txt(v,w){if(v=`${v}`,v!=="bytes")throw new TypeError(`${w} '${v}' is not a valid enumeration value for ReadableStreamType`);return v}function rxt(v,w){return Te(v,w),{preventCancel:!!v?.preventCancel}}function _0e(v,w){Te(v,w);let D=v?.preventAbort,z=v?.preventCancel,ae=v?.preventClose,ge=v?.signal;return ge!==void 0&&nxt(ge,`${w} has member 'signal' that`),{preventAbort:!!D,preventCancel:!!z,preventClose:!!ae,signal:ge}}function nxt(v,w){if(!dAt(v))throw new TypeError(`${w} is not an AbortSignal.`)}function sxt(v,w){Te(v,w);let D=v?.readable;F(D,"readable","ReadableWritablePair"),ee(D,`${w} has member 'readable' that`);let z=v?.writable;return F(z,"writable","ReadableWritablePair"),r0e(z,`${w} has member 'writable' that`),{readable:D,writable:z}}class Pi{constructor(w={},D={}){w===void 0?w=null:Fe(w,"First parameter");let z=fN(D,"Second parameter"),ae=JAt(w,"First parameter");if(qW(this),ae.type==="bytes"){if(z.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let ge=iE(z,0);Xyt(this,ae,ge)}else{let ge=dN(z),be=iE(z,1);jAt(this,ae,be,ge)}}get locked(){if(!Tp(this))throw Hm("locked");return wp(this)}cancel(w=void 0){return Tp(this)?wp(this)?l(new TypeError("Cannot cancel a stream that already has a reader")):Yc(this,w):l(Hm("cancel"))}getReader(w=void 0){if(!Tp(this))throw Hm("getReader");return eAt(w,"First parameter").mode===void 0?ne(this):Jpe(this)}pipeThrough(w,D={}){if(!Tp(this))throw Hm("pipeThrough");ve(w,1,"pipeThrough");let z=sxt(w,"First parameter"),ae=_0e(D,"Second parameter");if(wp(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(uA(z.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let ge=A0e(this,z.writable,ae.preventClose,ae.preventAbort,ae.preventCancel,ae.signal);return y(ge),z.readable}pipeTo(w,D={}){if(!Tp(this))return l(Hm("pipeTo"));if(w===void 0)return l("Parameter 1 is required in 'pipeTo'.");if(!cA(w))return l(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let z;try{z=_0e(D,"Second parameter")}catch(ae){return l(ae)}return wp(this)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):uA(w)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):A0e(this,w,z.preventClose,z.preventAbort,z.preventCancel,z.signal)}tee(){if(!Tp(this))throw Hm("tee");let w=QAt(this);return bt(w)}values(w=void 0){if(!Tp(this))throw Hm("values");let D=rxt(w,"First parameter");return rt(this,D.preventCancel)}[Gs](w){return this.values(w)}static from(w){return KAt(w)}}Object.defineProperties(Pi,{from:{enumerable:!0}}),Object.defineProperties(Pi.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),s(Pi.from,"from"),s(Pi.prototype.cancel,"cancel"),s(Pi.prototype.getReader,"getReader"),s(Pi.prototype.pipeThrough,"pipeThrough"),s(Pi.prototype.pipeTo,"pipeTo"),s(Pi.prototype.tee,"tee"),s(Pi.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Pi.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(Pi.prototype,Gs,{value:Pi.prototype.values,writable:!0,configurable:!0});function uE(v,w,D,z=1,ae=()=>1){let ge=Object.create(Pi.prototype);qW(ge);let be=Object.create(wd.prototype);return b0e(ge,be,v,w,D,z,ae),ge}function E0e(v,w,D){let z=Object.create(Pi.prototype);qW(z);let ae=Object.create(Cd.prototype);return Ype(z,ae,v,w,D,0,void 0),z}function qW(v){v._state="readable",v._reader=void 0,v._storedError=void 0,v._disturbed=!1}function Tp(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_readableStreamController")?!1:v instanceof Pi}function wp(v){return v._reader!==void 0}function Yc(v,w){if(v._disturbed=!0,v._state==="closed")return u(void 0);if(v._state==="errored")return l(v._storedError);lE(v);let D=v._reader;if(D!==void 0&&Fm(D)){let ae=D._readIntoRequests;D._readIntoRequests=new S,ae.forEach(ge=>{ge._closeSteps(void 0)})}let z=v._readableStreamController[R](w);return h(z,e)}function lE(v){v._state="closed";let w=v._reader;if(w!==void 0&&(J(w),Oe(w))){let D=w._readRequests;w._readRequests=new S,D.forEach(z=>{z._closeSteps()})}}function v0e(v,w){v._state="errored",v._storedError=w;let D=v._reader;D!==void 0&&(V(D,w),Oe(D)?Ye(D,w):t0e(D,w))}function Hm(v){return new TypeError(`ReadableStream.prototype.${v} can only be used on a ReadableStream`)}function S0e(v,w){Te(v,w);let D=v?.highWaterMark;return F(D,"highWaterMark","QueuingStrategyInit"),{highWaterMark:G(D)}}let I0e=v=>v.byteLength;s(I0e,"size");class vN{constructor(w){ve(w,1,"ByteLengthQueuingStrategy"),w=S0e(w,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=w.highWaterMark}get highWaterMark(){if(!T0e(this))throw C0e("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!T0e(this))throw C0e("size");return I0e}}Object.defineProperties(vN.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vN.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function C0e(v){return new TypeError(`ByteLengthQueuingStrategy.prototype.${v} can only be used on a ByteLengthQueuingStrategy`)}function T0e(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_byteLengthQueuingStrategyHighWaterMark")?!1:v instanceof vN}let w0e=()=>1;s(w0e,"size");class SN{constructor(w){ve(w,1,"CountQueuingStrategy"),w=S0e(w,"First parameter"),this._countQueuingStrategyHighWaterMark=w.highWaterMark}get highWaterMark(){if(!N0e(this))throw R0e("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!N0e(this))throw R0e("size");return w0e}}Object.defineProperties(SN.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(SN.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function R0e(v){return new TypeError(`CountQueuingStrategy.prototype.${v} can only be used on a CountQueuingStrategy`)}function N0e(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_countQueuingStrategyHighWaterMark")?!1:v instanceof SN}function ixt(v,w){Te(v,w);let D=v?.cancel,z=v?.flush,ae=v?.readableType,ge=v?.start,be=v?.transform,Ge=v?.writableType;return{cancel:D===void 0?void 0:uxt(D,v,`${w} has member 'cancel' that`),flush:z===void 0?void 0:axt(z,v,`${w} has member 'flush' that`),readableType:ae,start:ge===void 0?void 0:oxt(ge,v,`${w} has member 'start' that`),transform:be===void 0?void 0:cxt(be,v,`${w} has member 'transform' that`),writableType:Ge}}function axt(v,w,D){return Ne(v,D),z=>b(v,w,[z])}function oxt(v,w,D){return Ne(v,D),z=>A(v,w,[z])}function cxt(v,w,D){return Ne(v,D),(z,ae)=>b(v,w,[z,ae])}function uxt(v,w,D){return Ne(v,D),z=>b(v,w,[z])}class IN{constructor(w={},D={},z={}){w===void 0&&(w=null);let ae=fN(D,"Second parameter"),ge=fN(z,"Third parameter"),be=ixt(w,"First parameter");if(be.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(be.writableType!==void 0)throw new RangeError("Invalid writableType specified");let Ge=iE(ge,0),It=dN(ge),ft=iE(ae,1),Mt=dN(ae),tr,un=c(Jc=>{tr=Jc});lxt(this,un,ft,Mt,Ge,It),fxt(this,be),be.start!==void 0?tr(be.start(this._transformStreamController)):tr(void 0)}get readable(){if(!O0e(this))throw B0e("readable");return this._readable}get writable(){if(!O0e(this))throw B0e("writable");return this._writable}}Object.defineProperties(IN.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(IN.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function lxt(v,w,D,z,ae,ge){function be(){return w}function Ge(un){return hxt(v,un)}function It(un){return gxt(v,un)}function ft(){return yxt(v)}v._writable=mAt(be,Ge,ft,It,D,z);function Mt(){return Axt(v)}function tr(un){return xxt(v,un)}v._readable=uE(be,Mt,tr,ae,ge),v._backpressure=void 0,v._backpressureChangePromise=void 0,v._backpressureChangePromise_resolve=void 0,CN(v,!0),v._transformStreamController=void 0}function O0e(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_transformStreamController")?!1:v instanceof IN}function k0e(v,w){zc(v._readable._readableStreamController,w),jW(v,w)}function jW(v,w){wN(v._transformStreamController),aE(v._writable._writableStreamController,w),QW(v)}function QW(v){v._backpressure&&CN(v,!1)}function CN(v,w){v._backpressureChangePromise!==void 0&&v._backpressureChangePromise_resolve(),v._backpressureChangePromise=c(D=>{v._backpressureChangePromise_resolve=D}),v._backpressure=w}class Rp{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!TN(this))throw RN("desiredSize");let w=this._controlledTransformStream._readable._readableStreamController;return FW(w)}enqueue(w=void 0){if(!TN(this))throw RN("enqueue");P0e(this,w)}error(w=void 0){if(!TN(this))throw RN("error");pxt(this,w)}terminate(){if(!TN(this))throw RN("terminate");mxt(this)}}Object.defineProperties(Rp.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),s(Rp.prototype.enqueue,"enqueue"),s(Rp.prototype.error,"error"),s(Rp.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Rp.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function TN(v){return!r(v)||!Object.prototype.hasOwnProperty.call(v,"_controlledTransformStream")?!1:v instanceof Rp}function dxt(v,w,D,z,ae){w._controlledTransformStream=v,v._transformStreamController=w,w._transformAlgorithm=D,w._flushAlgorithm=z,w._cancelAlgorithm=ae,w._finishPromise=void 0,w._finishPromise_resolve=void 0,w._finishPromise_reject=void 0}function fxt(v,w){let D=Object.create(Rp.prototype),z,ae,ge;w.transform!==void 0?z=be=>w.transform(be,D):z=be=>{try{return P0e(D,be),u(void 0)}catch(Ge){return l(Ge)}},w.flush!==void 0?ae=()=>w.flush(D):ae=()=>u(void 0),w.cancel!==void 0?ge=be=>w.cancel(be):ge=()=>u(void 0),dxt(v,D,z,ae,ge)}function wN(v){v._transformAlgorithm=void 0,v._flushAlgorithm=void 0,v._cancelAlgorithm=void 0}function P0e(v,w){let D=v._controlledTransformStream,z=D._readable._readableStreamController;if(!fA(z))throw new TypeError("Readable side is not in a state that permits enqueue");try{dA(z,w)}catch(ge){throw jW(D,ge),D._readable._storedError}qAt(z)!==D._backpressure&&CN(D,!0)}function pxt(v,w){k0e(v._controlledTransformStream,w)}function D0e(v,w){let D=v._transformAlgorithm(w);return h(D,void 0,z=>{throw k0e(v._controlledTransformStream,z),z})}function mxt(v){let w=v._controlledTransformStream,D=w._readable._readableStreamController;Qm(D);let z=new TypeError("TransformStream terminated");jW(w,z)}function hxt(v,w){let D=v._transformStreamController;if(v._backpressure){let z=v._backpressureChangePromise;return h(z,()=>{let ae=v._writable;if(ae._state==="erroring")throw ae._storedError;return D0e(D,w)})}return D0e(D,w)}function gxt(v,w){let D=v._transformStreamController;if(D._finishPromise!==void 0)return D._finishPromise;let z=v._readable;D._finishPromise=c((ge,be)=>{D._finishPromise_resolve=ge,D._finishPromise_reject=be});let ae=D._cancelAlgorithm(w);return wN(D),f(ae,()=>(z._state==="errored"?pA(D,z._storedError):(zc(z._readableStreamController,w),HW(D)),null),ge=>(zc(z._readableStreamController,ge),pA(D,ge),null)),D._finishPromise}function yxt(v){let w=v._transformStreamController;if(w._finishPromise!==void 0)return w._finishPromise;let D=v._readable;w._finishPromise=c((ae,ge)=>{w._finishPromise_resolve=ae,w._finishPromise_reject=ge});let z=w._flushAlgorithm();return wN(w),f(z,()=>(D._state==="errored"?pA(w,D._storedError):(Qm(D._readableStreamController),HW(w)),null),ae=>(zc(D._readableStreamController,ae),pA(w,ae),null)),w._finishPromise}function Axt(v){return CN(v,!1),v._backpressureChangePromise}function xxt(v,w){let D=v._transformStreamController;if(D._finishPromise!==void 0)return D._finishPromise;let z=v._writable;D._finishPromise=c((ge,be)=>{D._finishPromise_resolve=ge,D._finishPromise_reject=be});let ae=D._cancelAlgorithm(w);return wN(D),f(ae,()=>(z._state==="errored"?pA(D,z._storedError):(aE(z._writableStreamController,w),QW(v),HW(D)),null),ge=>(aE(z._writableStreamController,ge),QW(v),pA(D,ge),null)),D._finishPromise}function RN(v){return new TypeError(`TransformStreamDefaultController.prototype.${v} can only be used on a TransformStreamDefaultController`)}function HW(v){v._finishPromise_resolve!==void 0&&(v._finishPromise_resolve(),v._finishPromise_resolve=void 0,v._finishPromise_reject=void 0)}function pA(v,w){v._finishPromise_reject!==void 0&&(y(v._finishPromise),v._finishPromise_reject(w),v._finishPromise_resolve=void 0,v._finishPromise_reject=void 0)}function B0e(v){return new TypeError(`TransformStream.prototype.${v} can only be used on a TransformStream`)}t.ByteLengthQueuingStrategy=vN,t.CountQueuingStrategy=SN,t.ReadableByteStreamController=Cd,t.ReadableStream=Pi,t.ReadableStreamBYOBReader=Ip,t.ReadableStreamBYOBRequest=Wm,t.ReadableStreamDefaultController=wd,t.ReadableStreamDefaultReader=me,t.TransformStream=IN,t.TransformStreamDefaultController=Rp,t.WritableStream=Cp,t.WritableStreamDefaultController=lA,t.WritableStreamDefaultWriter=Td})});var tUe=_(()=>{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,eUe())}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*FY(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,rUe),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+rUe)).arrayBuffer();n+=a.byteLength,yield new Uint8Array(a)}}}var den,rUe,nUe,pdr,Nu,SC=yr(()=>{den=Ce(tUe(),1);rUe=65536;nUe=class qY{#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 qY?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 FY(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 FY(this.#e,!1))e.set(n,r),r+=n.length;return e.buffer}stream(){let e=FY(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 m=ArrayBuffer.isView(f)?f.byteLength:f.size;if(i&&m<=i)i-=m,a-=m;else{let p;ArrayBuffer.isView(f)?(p=f.subarray(i,Math.min(m,a)),l+=p.byteLength):(p=f.slice(i,Math.min(m,a)),l+=p.size),a-=m,u.push(p),i=0}}let d=new qY([],{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(nUe.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});pdr=nUe,Nu=pdr});var mdr,hdr,om,jY=yr(()=>{SC();mdr=class extends Nu{#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 Nu&&/^(File)$/.test(e[Symbol.toStringTag])}},hdr=mdr,om=hdr});function aUe(t,e=Nu){var r=`${sUe()}${sUe()}`.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+QY(a)+`"\r
\r
${i.replace(/\r(?!\n)|(?<!\r)\n/g,`\r
`)}\r
`):n.push(s+QY(a)+`"; filename="${QY(i.name,1)}"\r
Content-Type: ${i.type||"application/octet-stream"}\r
\r
`,i,`\r
`)),n.push(`--${r}--`),new e(n,{type:"multipart/form-data; boundary="+r})}var IC,gdr,ydr,sUe,Adr,iUe,QY,Tg,cm,sL=yr(()=>{SC();jY();({toStringTag:IC,iterator:gdr,hasInstance:ydr}=Symbol),sUe=Math.random,Adr="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),iUe=(t,e,r)=>(t+="",/^(Blob|File)$/.test(e&&e[IC])?[(r=r!==void 0?r+"":e[IC]=="File"?e.name:"blob",t),e.name!==r||e[IC]=="blob"?new om([e],r,e):e]:[t,e+""]),QY=(t,e)=>(e?t:t.replace(/\r?\n|\r/g,`\r
`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),Tg=(t,e,r)=>{if(e.length<r)throw new TypeError(`Failed to execute '${t}' on 'FormData': ${r} arguments required, but only ${e.length} present.`)},cm=class{#e=[];constructor(...e){if(e.length)throw new TypeError("Failed to construct 'FormData': parameter 1 is not of type 'HTMLFormElement'.")}get[IC](){return"FormData"}[gdr](){return this.entries()}static[ydr](e){return e&&typeof e=="object"&&e[IC]==="FormData"&&!Adr.some(r=>typeof e[r]!="function")}append(...e){Tg("append",arguments,2),this.#e.push(iUe(...e))}delete(e){Tg("delete",arguments,1),e+="",this.#e=this.#e.filter(([r])=>r!==e)}get(e){Tg("get",arguments,1),e+="";for(var r=this.#e,n=r.length,s=0;s<n;s++)if(r[s][0]===e)return r[s][1];return null}getAll(e,r){return Tg("getAll",arguments,1),r=[],e+="",this.#e.forEach(n=>n[0]===e&&r.push(n[1])),r}has(e){return Tg("has",arguments,1),e+="",this.#e.some(r=>r[0]===e)}forEach(e,r){Tg("forEach",arguments,1);for(var[n,s]of this)e.call(r,s,n,this)}set(...e){Tg("set",arguments,2);var r=[],n=!0;e=iUe(...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 wf,iL=yr(()=>{wf=class extends Error{constructor(e,r){super(e),Error.captureStackTrace(this,this.constructor),this.type=r}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var Sa,HY=yr(()=>{iL();Sa=class extends wf{constructor(e,r,n){super(e,r),n&&(this.code=this.errno=n.code,this.erroredSysCall=n.syscall)}}});var aL,GY,CC,oUe,cUe,uUe,oL=yr(()=>{aL=Symbol.toStringTag,GY=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[aL]==="URLSearchParams",CC=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[aL]),oUe=t=>typeof t=="object"&&(t[aL]==="AbortSignal"||t[aL]==="EventTarget"),cUe=(t,e)=>{let r=new URL(e).hostname,n=new URL(t).hostname;return r===n||r.endsWith(`.${n}`)},uUe=(t,e)=>{let r=new URL(e).protocol,n=new URL(t).protocol;return r===n}});var dUe=_((Sen,lUe)=>{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)}lUe.exports=globalThis.DOMException});var wg,fUe,pUe,VY,mUe,hUe,gUe,yUe,AUe,xUe,cL,KY=yr(()=>{wg=require("node:fs"),fUe=require("node:path"),pUe=Ce(dUe(),1);jY();SC();({stat:VY}=wg.promises),mUe=(t,e)=>AUe((0,wg.statSync)(t),t,e),hUe=(t,e)=>VY(t).then(r=>AUe(r,t,e)),gUe=(t,e)=>VY(t).then(r=>xUe(r,t,e)),yUe=(t,e)=>xUe((0,wg.statSync)(t),t,e),AUe=(t,e,r="")=>new Nu([new cL({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],{type:r}),xUe=(t,e,r="")=>new om([new cL({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],(0,fUe.basename)(e),{type:r,lastModified:t.mtimeMs}),cL=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 VY(this.#e);if(e>this.lastModified)throw new pUe.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,wg.createReadStream)(this.#e,{start:this.#t,end:this.#t+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var _Ue={};us(_Ue,{toFormData:()=>Idr});function Sdr(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 Idr(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 zY(r[1]||r[2]),s,i,a,o,c,u,l=[],d=new cm,f=g=>{a+=y.decode(g,{stream:!0})},m=g=>{l.push(g)},p=()=>{let g=new om(l,u,{type:c});d.append(o,g)},h=()=>{d.append(o,a)},y=new TextDecoder("utf-8");y.decode(),n.onPartBegin=function(){n.onPartData=f,n.onPartEnd=h,s="",i="",a="",o="",c="",u=null,l.length=0},n.onHeaderField=function(g){s+=y.decode(g,{stream:!0})},n.onHeaderValue=function(g){i+=y.decode(g,{stream:!0})},n.onHeaderEnd=function(){if(i+=y.decode(),s=s.toLowerCase(),s==="content-disposition"){let g=i.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);g&&(o=g[2]||g[3]||""),u=Sdr(i),u&&(n.onPartData=m,n.onPartEnd=p)}else s==="content-type"&&(c=i);i="",s=""};for await(let g of t)n.write(g);return n.end(),d}var Gl,In,bUe,um,uL,lL,xdr,TC,bdr,_dr,Edr,vdr,Rg,zY,EUe=yr(()=>{KY();sL();Gl=0,In={START_BOUNDARY:Gl++,HEADER_FIELD_START:Gl++,HEADER_FIELD:Gl++,HEADER_VALUE_START:Gl++,HEADER_VALUE:Gl++,HEADER_VALUE_ALMOST_DONE:Gl++,HEADERS_ALMOST_DONE:Gl++,PART_DATA_START:Gl++,PART_DATA:Gl++,END:Gl++},bUe=1,um={PART_BOUNDARY:bUe,LAST_BOUNDARY:bUe*=2},uL=10,lL=13,xdr=32,TC=45,bdr=58,_dr=97,Edr=122,vdr=t=>t|32,Rg=()=>{},zY=class{constructor(e){this.index=0,this.flags=0,this.onHeaderEnd=Rg,this.onHeaderField=Rg,this.onHeadersEnd=Rg,this.onHeaderValue=Rg,this.onPartBegin=Rg,this.onPartData=Rg,this.onPartEnd=Rg,this.boundaryChars={},e=`\r
--`+e;let r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=e.charCodeAt(n),this.boundaryChars[r[n]]=!0;this.boundary=r,this.lookbehind=new Uint8Array(this.boundary.length+8),this.state=In.START_BOUNDARY}write(e){let r=0,n=e.length,s=this.index,{lookbehind:i,boundary:a,boundaryChars:o,index:c,state:u,flags:l}=this,d=this.boundary.length,f=d-1,m=e.length,p,h,y=x=>{this[x+"Mark"]=r},g=x=>{delete this[x+"Mark"]},A=(x,S,T,I)=>{(S===void 0||S!==T)&&this[x](I&&I.subarray(S,T))},b=(x,S)=>{let T=x+"Mark";T in this&&(S?(A(x,this[T],r,e),delete this[T]):(A(x,this[T],e.length,e),this[T]=0))};for(r=0;r<n;r++)switch(p=e[r],u){case In.START_BOUNDARY:if(c===a.length-2){if(p===TC)l|=um.LAST_BOUNDARY;else if(p!==lL)return;c++;break}else if(c-1===a.length-2){if(l&um.LAST_BOUNDARY&&p===TC)u=In.END,l=0;else if(!(l&um.LAST_BOUNDARY)&&p===uL)c=0,A("onPartBegin"),u=In.HEADER_FIELD_START;else return;break}p!==a[c+2]&&(c=-2),p===a[c+2]&&c++;break;case In.HEADER_FIELD_START:u=In.HEADER_FIELD,y("onHeaderField"),c=0;case In.HEADER_FIELD:if(p===lL){g("onHeaderField"),u=In.HEADERS_ALMOST_DONE;break}if(c++,p===TC)break;if(p===bdr){if(c===1)return;b("onHeaderField",!0),u=In.HEADER_VALUE_START;break}if(h=vdr(p),h<_dr||h>Edr)return;break;case In.HEADER_VALUE_START:if(p===xdr)break;y("onHeaderValue"),u=In.HEADER_VALUE;case In.HEADER_VALUE:p===lL&&(b("onHeaderValue",!0),A("onHeaderEnd"),u=In.HEADER_VALUE_ALMOST_DONE);break;case In.HEADER_VALUE_ALMOST_DONE:if(p!==uL)return;u=In.HEADER_FIELD_START;break;case In.HEADERS_ALMOST_DONE:if(p!==uL)return;A("onHeadersEnd"),u=In.PART_DATA_START;break;case In.PART_DATA_START:u=In.PART_DATA,y("onPartData");case In.PART_DATA:if(s=c,c===0){for(r+=f;r<m&&!(e[r]in o);)r+=d;r-=f,p=e[r]}if(c<a.length)a[c]===p?(c===0&&b("onPartData",!0),c++):c=0;else if(c===a.length)c++,p===lL?l|=um.PART_BOUNDARY:p===TC?l|=um.LAST_BOUNDARY:c=0;else if(c-1===a.length)if(l&um.PART_BOUNDARY){if(c=0,p===uL){l&=~um.PART_BOUNDARY,A("onPartEnd"),A("onPartBegin"),u=In.HEADER_FIELD_START;break}}else l&um.LAST_BOUNDARY&&p===TC?(A("onPartEnd"),u=In.END,l=0):c=0;if(c>0)i[c-1]=p;else if(s>0){let x=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);A("onPartData",0,s,x),s=0,y("onPartData"),r--}break;case In.END:break;default:throw new Error(`Unexpected state entered: ${u}`)}b("onHeaderField"),b("onHeaderValue"),b("onPartData"),this.index=c,this.state=u,this.flags=l}end(){if(this.state===In.HEADER_FIELD_START&&this.index===0||this.state===In.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==In.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function YY(t){if(t[mo].disturbed)throw new TypeError(`body used already for: ${t.url}`);if(t[mo].disturbed=!0,t[mo].error)throw t[mo].error;let{body:e}=t;if(e===null)return Wo.Buffer.alloc(0);if(!(e instanceof Lc.default))return Wo.Buffer.alloc(0);let r=[],n=0;try{for await(let s of e){if(t.size>0&&n+s.length>t.size){let i=new Sa(`content size at ${t.url} over limit: ${t.size}`,"max-size");throw e.destroy(i),i}n+=s.length,r.push(s)}}catch(s){throw s instanceof wf?s:new Sa(`Invalid response body while trying to fetch ${t.url}: ${s.message}`,"system",s)}if(e.readableEnded===!0||e._readableState.ended===!0)try{return r.every(s=>typeof s=="string")?Wo.Buffer.from(r.join("")):Wo.Buffer.concat(r,n)}catch(s){throw new Sa(`Could not create Buffer from response body for ${t.url}: ${s.message}`,"system",s)}else throw new Sa(`Premature close of server response while trying to fetch ${t.url}`)}var Lc,Rf,Wo,Cdr,mo,Vl,Vb,Tdr,dL,vUe,SUe,fL=yr(()=>{Lc=Ce(require("node:stream"),1),Rf=require("node:util"),Wo=require("node:buffer");SC();sL();HY();iL();oL();Cdr=(0,Rf.promisify)(Lc.default.pipeline),mo=Symbol("Body internals"),Vl=class{constructor(e,{size:r=0}={}){let n=null;e===null?e=null:GY(e)?e=Wo.Buffer.from(e.toString()):CC(e)||Wo.Buffer.isBuffer(e)||(Rf.types.isAnyArrayBuffer(e)?e=Wo.Buffer.from(e):ArrayBuffer.isView(e)?e=Wo.Buffer.from(e.buffer,e.byteOffset,e.byteLength):e instanceof Lc.default||(e instanceof cm?(e=aUe(e),n=e.type.split("=")[1]):e=Wo.Buffer.from(String(e))));let s=e;Wo.Buffer.isBuffer(e)?s=Lc.default.Readable.from(e):CC(e)&&(s=Lc.default.Readable.from(e.stream())),this[mo]={body:e,stream:s,boundary:n,disturbed:!1,error:null},this.size=r,e instanceof Lc.default&&e.on("error",i=>{let a=i instanceof wf?i:new Sa(`Invalid response body while trying to fetch ${this.url}: ${i.message}`,"system",i);this[mo].error=a})}get body(){return this[mo].stream}get bodyUsed(){return this[mo].disturbed}async arrayBuffer(){let{buffer:e,byteOffset:r,byteLength:n}=await YY(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 cm,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(()=>(EUe(),_Ue));return r(this.body,e)}async blob(){let e=this.headers&&this.headers.get("content-type")||this[mo].body&&this[mo].body.type||"",r=await this.arrayBuffer();return new Nu([r],{type:e})}async json(){let e=await this.text();return JSON.parse(e)}async text(){let e=await YY(this);return new TextDecoder().decode(e)}buffer(){return YY(this)}};Vl.prototype.buffer=(0,Rf.deprecate)(Vl.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Vl.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,Rf.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});Vb=(t,e)=>{let r,n,{body:s}=t[mo];if(t.bodyUsed)throw new Error("cannot clone body after it is used");return s instanceof Lc.default&&typeof s.getBoundary!="function"&&(r=new Lc.PassThrough({highWaterMark:e}),n=new Lc.PassThrough({highWaterMark:e}),s.pipe(r),s.pipe(n),t[mo].stream=r,s=n),s},Tdr=(0,Rf.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"),dL=(t,e)=>t===null?null:typeof t=="string"?"text/plain;charset=UTF-8":GY(t)?"application/x-www-form-urlencoded;charset=UTF-8":CC(t)?t.type||null:Wo.Buffer.isBuffer(t)||Rf.types.isAnyArrayBuffer(t)||ArrayBuffer.isView(t)?null:t instanceof cm?`multipart/form-data; boundary=${e[mo].boundary}`:t&&typeof t.getBoundary=="function"?`multipart/form-data;boundary=${Tdr(t)}`:t instanceof Lc.default?null:"text/plain;charset=UTF-8",vUe=t=>{let{body:e}=t[mo];return e===null?0:CC(e)?e.size:Wo.Buffer.isBuffer(e)?e.length:e&&typeof e.getLengthSync=="function"&&e.hasKnownLength&&e.hasKnownLength()?e.getLengthSync():null},SUe=async(t,{body:e})=>{e===null?t.end():await Cdr(e,t)}});function IUe(t=[]){return new ho(t.reduce((e,r,n,s)=>(n%2===0&&e.push(s.slice(n,n+2)),e),[]).filter(([e,r])=>{try{return pL(e),XY(e,String(r)),!0}catch{return!1}}))}var JY,wC,pL,XY,ho,mL=yr(()=>{JY=require("node:util"),wC=Ce(require("node:http"),1),pL=typeof wC.default.validateHeaderName=="function"?wC.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}},XY=typeof wC.default.validateHeaderValue=="function"?wC.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}},ho=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"&&!JY.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"||JY.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<sequence<ByteString>> or record<ByteString, ByteString>)");return r=r.length>0?r.map(([n,s])=>(pL(n),XY(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)=>(pL(a),XY(a,String(o)),URLSearchParams.prototype[s].call(n,String(a).toLowerCase(),String(o)));case"delete":case"has":case"getAll":return a=>(pL(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(ho.prototype,["get","entries","forEach","values"].reduce((t,e)=>(t[e]={enumerable:!0},t),{}))});var wdr,RC,ZY=yr(()=>{wdr=new Set([301,302,303,307,308]),RC=t=>wdr.has(t)});var Ou,$o,CUe=yr(()=>{mL();fL();ZY();Ou=Symbol("Response internals"),$o=class t extends Vl{constructor(e=null,r={}){super(e,r);let n=r.status!=null?r.status:200,s=new ho(r.headers);if(e!==null&&!s.has("Content-Type")){let i=dL(e,this);i&&s.append("Content-Type",i)}this[Ou]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:s,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[Ou].type}get url(){return this[Ou].url||""}get status(){return this[Ou].status}get ok(){return this[Ou].status>=200&&this[Ou].status<300}get redirected(){return this[Ou].counter>0}get statusText(){return this[Ou].statusText}get headers(){return this[Ou].headers}get highWaterMark(){return this[Ou].highWaterMark}clone(){return new t(Vb(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(!RC(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[Ou].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 ho(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($o.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 TUe,wUe=yr(()=>{TUe=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 RUe(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 PUe(t){if(!OUe.has(t))throw new TypeError(`Invalid referrerPolicy: ${t}`);return t}function Rdr(t){if(/^(http|ws)s:$/.test(t.protocol))return!0;let e=t.host.replace(/(^\[)|(]$)/g,""),r=(0,NUe.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 Kb(t){return/^about:(blank|srcdoc)$/.test(t)||t.protocol==="data:"||/^(blob|filesystem):$/.test(t.protocol)?!0:Rdr(t)}function DUe(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=RUe(s),a=RUe(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 Kb(i)&&!Kb(o)?"no-referrer":a.toString();case"strict-origin-when-cross-origin":return i.origin===o.origin?i:Kb(i)&&!Kb(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 Kb(i)&&!Kb(o)?"no-referrer":i;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function BUe(t){let e=(t.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of e)n&&OUe.has(n)&&(r=n);return r}var NUe,OUe,kUe,eJ=yr(()=>{NUe=require("node:net");OUe=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),kUe="strict-origin-when-cross-origin"});var LUe,MUe,ci,NC,Ndr,lm,WUe,$Ue=yr(()=>{LUe=require("node:url"),MUe=require("node:util");mL();fL();oL();wUe();eJ();ci=Symbol("Request internals"),NC=t=>typeof t=="object"&&typeof t[ci]=="object",Ndr=(0,MUe.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),lm=class t extends Vl{constructor(e,r={}){let n;if(NC(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()),!NC(r)&&"data"in r&&Ndr(),(r.body!=null||NC(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:NC(e)&&e.body!==null?Vb(e):null;super(i,{size:r.size||e.size||0});let a=new ho(r.headers||e.headers||{});if(i!==null&&!a.has("Content-Type")){let u=dL(i,this);u&&a.set("Content-Type",u)}let o=NC(e)?e.signal:null;if("signal"in r&&(o=r.signal),o!=null&&!oUe(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[ci]={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[ci].method}get url(){return(0,LUe.format)(this[ci].parsedURL)}get headers(){return this[ci].headers}get redirect(){return this[ci].redirect}get signal(){return this[ci].signal}get referrer(){if(this[ci].referrer==="no-referrer")return"";if(this[ci].referrer==="client")return"about:client";if(this[ci].referrer)return this[ci].referrer.toString()}get referrerPolicy(){return this[ci].referrerPolicy}set referrerPolicy(e){this[ci].referrerPolicy=PUe(e)}clone(){return new t(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(lm.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}});WUe=t=>{let{parsedURL:e}=t[ci],r=new ho(t[ci].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=vUe(t);typeof o=="number"&&!Number.isNaN(o)&&(n=String(o))}n&&r.set("Content-Length",n),t.referrerPolicy===""&&(t.referrerPolicy=kUe),t.referrer&&t.referrer!=="no-referrer"?t[ci].referrer=DUe(t):t[ci].referrer="no-referrer",t[ci].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=TUe(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 OC,UUe=yr(()=>{iL();OC=class extends wf{constructor(e,r="aborted"){super(e,r)}}});var hL={};us(hL,{AbortError:()=>OC,Blob:()=>Nu,FetchError:()=>Sa,File:()=>om,FormData:()=>cm,Headers:()=>ho,Request:()=>lm,Response:()=>$o,blobFrom:()=>hUe,blobFromSync:()=>mUe,default:()=>zb,fileFrom:()=>gUe,fileFromSync:()=>yUe,isRedirect:()=>RC});async function zb(t,e){return new Promise((r,n)=>{let s=new lm(t,e),{parsedURL:i,options:a}=WUe(s);if(!Odr.has(i.protocol))throw new TypeError(`node-fetch cannot load ${t}. URL scheme "${i.protocol.replace(/:$/,"")}" is not supported.`);if(i.protocol==="data:"){let p=J$e(s.url),h=new $o(p,{headers:{"Content-Type":p.typeFull}});r(h);return}let o=(i.protocol==="https:"?qUe.default:FUe.default).request,{signal:c}=s,u=null,l=()=>{let p=new OC("The operation was aborted.");n(p),s.body&&s.body instanceof Uo.default.Readable&&s.body.destroy(p),!(!u||!u.body)&&u.body.emit("error",p)};if(c&&c.aborted){l();return}let d=()=>{l(),m()},f=o(i.toString(),a);c&&c.addEventListener("abort",d);let m=()=>{f.abort(),c&&c.removeEventListener("abort",d)};f.on("error",p=>{n(new Sa(`request to ${s.url} failed, reason: ${p.message}`,"system",p)),m()}),kdr(f,p=>{u&&u.body&&u.body.destroy(p)}),process.version<"v14"&&f.on("socket",p=>{let h;p.prependListener("end",()=>{h=p._eventsCount}),p.prependListener("close",y=>{if(u&&h<p._eventsCount&&!y){let g=new Error("Premature close");g.code="ERR_STREAM_PREMATURE_CLOSE",u.body.emit("error",g)}})}),f.on("response",p=>{f.setTimeout(0);let h=IUe(p.rawHeaders);if(RC(p.statusCode)){let x=h.get("Location"),S=null;try{S=x===null?null:new URL(x,s.url)}catch{if(s.redirect!=="manual"){n(new Sa(`uri requested responds with an invalid redirect URL: ${x}`,"invalid-redirect")),m();return}}switch(s.redirect){case"error":n(new Sa(`uri requested responds with a redirect, redirect mode is set to error: ${s.url}`,"no-redirect")),m();return;case"manual":break;case"follow":{if(S===null)break;if(s.counter>=s.follow){n(new Sa(`maximum redirect reached at: ${s.url}`,"max-redirect")),m();return}let T={headers:new ho(s.headers),follow:s.follow,counter:s.counter+1,agent:s.agent,compress:s.compress,method:s.method,body:Vb(s),signal:s.signal,size:s.size,referrer:s.referrer,referrerPolicy:s.referrerPolicy};if(!cUe(s.url,S)||!uUe(s.url,S))for(let R of["authorization","www-authenticate","cookie","cookie2"])T.headers.delete(R);if(p.statusCode!==303&&s.body&&e.body instanceof Uo.default.Readable){n(new Sa("Cannot follow redirect with body being a readable stream","unsupported-redirect")),m();return}(p.statusCode===303||(p.statusCode===301||p.statusCode===302)&&s.method==="POST")&&(T.method="GET",T.body=void 0,T.headers.delete("content-length"));let I=BUe(h);I&&(T.referrerPolicy=I),r(zb(new lm(S,T))),m();return}default:return n(new TypeError(`Redirect option '${s.redirect}' is not a valid value of RequestRedirect`))}}c&&p.once("end",()=>{c.removeEventListener("abort",d)});let y=(0,Uo.pipeline)(p,new Uo.PassThrough,x=>{x&&n(x)});process.version<"v12.10"&&p.on("aborted",d);let g={url:s.url,status:p.statusCode,statusText:p.statusMessage,headers:h,size:s.size,counter:s.counter,highWaterMark:s.highWaterMark},A=h.get("Content-Encoding");if(!s.compress||s.method==="HEAD"||A===null||p.statusCode===204||p.statusCode===304){u=new $o(y,g),r(u);return}let b={flush:Ng.default.Z_SYNC_FLUSH,finishFlush:Ng.default.Z_SYNC_FLUSH};if(A==="gzip"||A==="x-gzip"){y=(0,Uo.pipeline)(y,Ng.default.createGunzip(b),x=>{x&&n(x)}),u=new $o(y,g),r(u);return}if(A==="deflate"||A==="x-deflate"){let x=(0,Uo.pipeline)(p,new Uo.PassThrough,S=>{S&&n(S)});x.once("data",S=>{(S[0]&15)===8?y=(0,Uo.pipeline)(y,Ng.default.createInflate(),T=>{T&&n(T)}):y=(0,Uo.pipeline)(y,Ng.default.createInflateRaw(),T=>{T&&n(T)}),u=new $o(y,g),r(u)}),x.once("end",()=>{u||(u=new $o(y,g),r(u))});return}if(A==="br"){y=(0,Uo.pipeline)(y,Ng.default.createBrotliDecompress(),x=>{x&&n(x)}),u=new $o(y,g),r(u);return}u=new $o(y,g),r(u)}),SUe(f,s).catch(n)})}function kdr(t,e){let r=kC.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=kC.Buffer.compare(u.slice(-5),r)===0,!s&&i&&(s=kC.Buffer.compare(i.slice(-3),r.slice(0,3))===0&&kC.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 FUe,qUe,Ng,Uo,kC,Odr,PC=yr(()=>{FUe=Ce(require("node:http"),1),qUe=Ce(require("node:https"),1),Ng=Ce(require("node:zlib"),1),Uo=Ce(require("node:stream"),1),kC=require("node:buffer");X$e();fL();CUe();mL();$Ue();HY();UUe();ZY();sL();oL();eJ();KY();Odr=new Set(["data:","http:","https:"])});function hn(t){return Pdr[t]||t}function tJ(t,e){if(!t)return()=>{};if(t.aborted)return e.abort(),()=>{};let r=()=>{e.abort()};return t.addEventListener("abort",r,{once:!0}),()=>{t.removeEventListener("abort",r)}}async function Ae(t,e={}){let r=parseInt(e.retries||"0",10)||0,n=Array.isArray(e.validStatusCodes)?e.validStatusCodes:[],s;for(let a=0;a<=r;a++){let o=_e.getStore()||"system";a>0?(E("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${a} \u6B21\u91CD\u8BD5: ${t}`),s&&(s.cause?.code==="ETIMEDOUT"||s.cause?.code==="ECONNRESET"||s.name==="AbortError")?await new Promise(f=>setTimeout(f,100)):await new Promise(f=>setTimeout(f,Math.min(1e3*Math.pow(2,a-1),5e3)))):E("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${t}`);let c=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,u=new AbortController,l=setTimeout(()=>u.abort(),c),d=tJ(e.signal,u);try{let f;if(typeof WebAssembly>"u"){E("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let g=(await Promise.resolve().then(()=>(PC(),hL))).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 m;if(e.base64Data){E("info","[Utils] [HTTP] base64\u6A21\u5F0F");let g=await f.arrayBuffer(),A=new Uint8Array(g),b="",x=32768;for(let S=0;S<A.length;S+=x){let T=A.subarray(S,S+x);b+=String.fromCharCode.apply(null,T)}m=btoa(b)}else if(e.zlibMode){E("info","[Utils] [HTTP] zlib\u6A21\u5F0F");let g=await f.arrayBuffer(),A;if(typeof DecompressionStream<"u"){let b=new DecompressionStream("deflate"),x=new Response(new Blob([g]).stream().pipeThrough(b));try{A=await x.text()}catch(S){throw E("error",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u89E3\u538B\u7F29\u5931\u8D25`,S),S}}else{E("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528pako\u89E3\u538B");try{let x=(await import("pako")).inflate(new Uint8Array(g));A=new TextDecoder("utf-8").decode(x)}catch(b){throw E("error",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] pako\u89E3\u538B\u7F29\u5931\u8D25`,b),b}}m=A}else m=await f.text();let p;try{p=JSON.parse(m)}catch{p=m}let h={},y=[];for(let[g,A]of f.headers.entries())g.toLowerCase()==="set-cookie"?y.push(A):h[g]=A;return y.length>0&&(h["set-cookie"]=y.join(";")),a>0&&E("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:p,status:f.status,headers:h}}catch(f){clearTimeout(l),s=f;let m=_e.getStore()||"system";if(e.signal?.aborted)throw f;if(f.name==="AbortError"?(E("error",`[${m}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,f.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u8D85\u65F6\u65F6\u95F4:",`${c}ms`),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`)):(E("error",`[${m}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,f.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u9519\u8BEF\u7C7B\u578B:",f.name),E("error","- \u6D88\u606F:",f.message),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`),f.cause&&(E("error","- \u7801:",f.cause.code),E("error","- \u539F\u56E0:",f.cause.message))),a<r){E("info",`[${m}] [\u8BF7\u6C42\u6A21\u62DF] \u51C6\u5907\u91CD\u8BD5...`);continue}}finally{d()}}let i=_e.getStore()||"system";throw E("error",`[${i}] [\u8BF7\u6C42\u6A21\u62DF] \u6240\u6709\u91CD\u8BD5\u5747\u5931\u8D25 (${r+1} \u6B21\u5C1D\u8BD5)`),s}async function Gr(t,e,r={}){let n=parseInt(r.retries||"0",10)||0,s=Array.isArray(r.validStatusCodes)?r.validStatusCodes:[],i;for(let o=0;o<=n;o++){let c=_e.getStore()||"system";o>0?(E("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${o} \u6B21\u91CD\u8BD5: ${t}`),i&&(i.cause?.code==="ETIMEDOUT"||i.cause?.code==="ECONNRESET"||i.name==="AbortError")?await new Promise(g=>setTimeout(g,100)):await new Promise(g=>setTimeout(g,Math.min(1e3*Math.pow(2,o-1),5e3)))):E("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] HTTP POST: ${t}`);let u=parseInt(r.timeout||O.vodRequestTimeout||"5000",10)||5e3,l=new AbortController,d=setTimeout(()=>l.abort(),u),f=tJ(r.signal,l),{headers:m={},params:p,allow_redirects:h=!0}=r,y={method:"POST",headers:{...m},body:e,signal:l.signal};h||(y.redirect="manual");try{let g;if(typeof WebAssembly>"u"){E("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let x=(await Promise.resolve().then(()=>(PC(),hL))).default;g=await x(t,y)}else g=await fetch(t,y);clearTimeout(d);let A=await g.text();if(!g.ok&&!s.includes(g.status))throw E("error",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] response data: `,A),new Error(`HTTP error! status: ${g.status}`);let b;try{b=JSON.parse(A)}catch{b=A}return o>0&&E("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:b,status:g.status,headers:Object.fromEntries(g.headers.entries())}}catch(g){clearTimeout(d),i=g;let A=_e.getStore()||"system";if(r.signal?.aborted)throw g;if(g.name==="AbortError"?(E("error",`[${A}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,g.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u8D85\u65F6\u65F6\u95F4:",`${u}ms`),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`)):(E("error",`[${A}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,g.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",t),E("error","- \u9519\u8BEF\u7C7B\u578B:",g.name),E("error","- \u6D88\u606F:",g.message),E("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`),g.cause&&(E("error","- \u7801:",g.cause.code),E("error","- \u539F\u56E0:",g.cause.message))),o<n){E("info",`[${A}] [\u8BF7\u6C42\u6A21\u62DF] \u51C6\u5907\u91CD\u8BD5...`);continue}}finally{f()}}let a=_e.getStore()||"system";throw E("error",`[${a}] [\u8BF7\u6C42\u6A21\u62DF] \u6240\u6709\u91CD\u8BD5\u5747\u5931\u8D25 (${n+1} \u6B21\u5C1D\u8BD5)`),i}async function rJ(t,e,r,n={}){let s=_e.getStore()||"system";E("info",`[${s}] [\u8BF7\u6C42\u6A21\u62DF] HTTP ${t}: ${e}`);let{headers:i={}}=n,a=Array.isArray(n.validStatusCodes)?n.validStatusCodes:[],o={method:t,headers:{...i}};r!=null&&(o.body=r),n.body!==void 0&&n.body!==null&&(o.body=n.body),n.signal&&(o.signal=n.signal);try{let c=await fetch(e,o),u=await c.text();if(!c.ok&&!a.includes(c.status))throw E("error",`[${s}] [\u8BF7\u6C42\u6A21\u62DF] response data: `,u),new Error(`HTTP error! status: ${c.status}`);let l;try{l=JSON.parse(u)}catch{l=u}return{data:l,status:c.status,headers:Object.fromEntries(c.headers.entries())}}catch(c){let u=_e.getStore()||"system";throw E("error",`[${u}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,c.message),E("error","\u8BE6\u7EC6\u8BCA\u65AD:"),E("error","- URL:",e),E("error","- \u9519\u8BEF\u7C7B\u578B:",c.name),E("error","- \u6D88\u606F:",c.message),c.cause&&(E("error","- \u7801:",c.cause?.code),E("error","- \u539F\u56E0:",c.cause?.message)),c}}async function gL(t,e,r={}){return rJ("PATCH",t,e,r)}async function QUe(t,e,r={}){return rJ("PUT",t,e,r)}async function Yb(t,e={}){return rJ("DELETE",t,void 0,e)}async function nJ(t){try{let n=(await Ae(t,{headers:{"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_0 like Mac OS X) AppleWebKit/605.1.15"}})).data.match(/<title[^>]*>(.*?)<\/title>/i);return n&&n[1]?n[1].replace(/&nbsp;/g," ").replace(/&amp;/g,"&").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&#39;/g,"'").trim():t}catch(e){let r=_e.getStore()||"system";return E("error",`[${r}] \u83B7\u53D6\u6807\u9898\u5931\u8D25: ${e.message}`),t}}function Me(t,e=200){return new Response(JSON.stringify(t),{status:e,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}function HUe(t,e=200){if(typeof t!="string"||!t.trim().startsWith("<?xml"))throw new Error("Expected data to be an XML string starting with <?xml");return new Response(t,{status:e,headers:{"Content-Type":"application/xml","Access-Control-Allow-Origin":"*"}})}function Ci(t,e=!0){let r=e?encodeURIComponent:s=>s,n="";for(let s in t)t.hasOwnProperty(s)&&(n.length>0&&(n+="&"),n+=r(s)+"="+r(t[s]));return n}function DC(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 Jb(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 GUe(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 sJ(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=tJ(e.signal,o);try{let l=_e.getStore()||"system";E("info",`[${l}] [\u6D41\u5F0F\u8BF7\u6C42] HTTP GET: ${t}`);let d=await fetch(t,{method:"GET",headers:n,signal:o.signal});if(!d.ok)throw new Error(`HTTP error! status: ${d.status}`);let f=d.body.getReader?d.body.getReader():null;if(!f){let S=_e.getStore()||"system";E("warn",`[${S}] [\u6D41\u5F0F\u8BF7\u6C42] \u73AF\u5883\u4E0D\u652F\u6301\u6D41\u5F0F\u8BFB\u53D6,\u56DE\u9000\u5230\u666E\u901A\u8BF7\u6C42`);let T=await d.text();if(clearTimeout(c),r&&!r(T.slice(0,i)))return E("info",`[${S}] [\u6D41\u5F0F\u8BF7\u6C42] \u68C0\u6D4B\u5230\u65E0\u6548\u6570\u636E(\u56DE\u9000\u6A21\u5F0F),\u4E22\u5F03\u7ED3\u679C`),null;try{return JSON.parse(T)}catch{return T}}let m=0,p=[],h=!1,y="",g=!1;for(;;){let{done:S,value:T}=await f.read();if(S)break;if(m+=T.length,!g&&r){let I=new TextDecoder("utf-8").decode(T,{stream:!0});if(y+=I,!r(y)){let R=_e.getStore()||"system";E("info",`[${R}] [\u6D41\u5F0F\u8BF7\u6C42] \u55C5\u63A2\u5230\u65E0\u6548\u7279\u5F81(\u5DF2\u8BFB${m}\u5B57\u8282),\u7ACB\u5373\u7194\u65AD`),o.abort(),h=!0;break}m>i&&(g=!0,y=null)}p.push(T)}if(clearTimeout(c),h)return null;let A=new Uint8Array(m),b=0;for(let S of p)A.set(S,b),b+=S.length;let x=new TextDecoder("utf-8").decode(A);try{return JSON.parse(x)}catch{return x}}catch(l){let d=_e.getStore()||"system";return clearTimeout(c),l.name==="AbortError"||E("error",`[${d}] [\u6D41\u5F0F\u8BF7\u6C42] \u5931\u8D25: ${l.message}`),null}finally{u()}}var jUe,_e,Pdr,fr=yr(()=>{kt();Et();jUe=require("node:async_hooks"),_e=new jUe.AsyncLocalStorage,Pdr={360:"360kan",imgo:"mango"}});function an(t){let e=0;for(let r=0;r<t.length;r++){let n=t.charCodeAt(r);e=(e<<5)-e+n,e=e>>>0}return e.toString(16)}function Xb(t,e){return t==="lastSelectMap"&&e instanceof Map?JSON.stringify(Object.fromEntries(e)):JSON.stringify(e)}function ss(t){function e(b){let x="";for(let S=0;S<b.length;S++){let T=b.charCodeAt(S);T<128?x+=String.fromCharCode(T):T<2048?(x+=String.fromCharCode(192|T>>6),x+=String.fromCharCode(128|T&63)):(x+=String.fromCharCode(224|T>>12),x+=String.fromCharCode(128|T>>6&63),x+=String.fromCharCode(128|T&63))}return x}t=e(t);function r(b,x){return b<<x|b>>>32-x}function n(b,x){let S=b&1073741824,T=x&1073741824,I=b&2147483648,R=x&2147483648,N=(b&1073741823)+(x&1073741823);return S&T?N^2147483648^I^R:S|T?N&1073741824?N^3221225472^I^R:N^1073741824^I^R:N^I^R}function s(b,x,S){return b&x|~b&S}function i(b,x,S){return b&S|x&~S}function a(b,x,S){return b^x^S}function o(b,x,S){return x^(b|~S)}function c(b,x,S,T,I,R,N){return b=n(b,n(n(s(x,S,T),I),N)),n(r(b,R),x)}function u(b,x,S,T,I,R,N){return b=n(b,n(n(i(x,S,T),I),N)),n(r(b,R),x)}function l(b,x,S,T,I,R,N){return b=n(b,n(n(a(x,S,T),I),N)),n(r(b,R),x)}function d(b,x,S,T,I,R,N){return b=n(b,n(n(o(x,S,T),I),N)),n(r(b,R),x)}function f(b){let x=b.length,S=((x+8>>>6)+1)*16,T=new Array(S).fill(0);for(let I=0;I<x;I++)T[I>>2]|=b.charCodeAt(I)<<I%4*8;return T[x>>2]|=128<<x%4*8,T[S-2]=x*8,T}function m(b){let x="";for(let S=0;S<=3;S++){let I="0"+(b>>>S*8&255).toString(16);x+=I.substr(I.length-2,2)}return x}let p=f(t),h=1732584193,y=4023233417,g=2562383102,A=271733878;for(let b=0;b<p.length;b+=16){let x=h,S=y,T=g,I=A;h=c(h,y,g,A,p[b+0],7,3614090360),A=c(A,h,y,g,p[b+1],12,3905402710),g=c(g,A,h,y,p[b+2],17,606105819),y=c(y,g,A,h,p[b+3],22,3250441966),h=c(h,y,g,A,p[b+4],7,4118548399),A=c(A,h,y,g,p[b+5],12,1200080426),g=c(g,A,h,y,p[b+6],17,2821735955),y=c(y,g,A,h,p[b+7],22,4249261313),h=c(h,y,g,A,p[b+8],7,1770035416),A=c(A,h,y,g,p[b+9],12,2336552879),g=c(g,A,h,y,p[b+10],17,4294925233),y=c(y,g,A,h,p[b+11],22,2304563134),h=c(h,y,g,A,p[b+12],7,1804603682),A=c(A,h,y,g,p[b+13],12,4254626195),g=c(g,A,h,y,p[b+14],17,2792965006),y=c(y,g,A,h,p[b+15],22,1236535329),h=u(h,y,g,A,p[b+1],5,4129170786),A=u(A,h,y,g,p[b+6],9,3225465664),g=u(g,A,h,y,p[b+11],14,643717713),y=u(y,g,A,h,p[b+0],20,3921069994),h=u(h,y,g,A,p[b+5],5,3593408605),A=u(A,h,y,g,p[b+10],9,38016083),g=u(g,A,h,y,p[b+15],14,3634488961),y=u(y,g,A,h,p[b+4],20,3889429448),h=u(h,y,g,A,p[b+9],5,568446438),A=u(A,h,y,g,p[b+14],9,3275163606),g=u(g,A,h,y,p[b+3],14,4107603335),y=u(y,g,A,h,p[b+8],20,1163531501),h=u(h,y,g,A,p[b+13],5,2850285829),A=u(A,h,y,g,p[b+2],9,4243563512),g=u(g,A,h,y,p[b+7],14,1735328473),y=u(y,g,A,h,p[b+12],20,2368359562),h=l(h,y,g,A,p[b+5],4,4294588738),A=l(A,h,y,g,p[b+8],11,2272392833),g=l(g,A,h,y,p[b+11],16,1839030562),y=l(y,g,A,h,p[b+14],23,4259657740),h=l(h,y,g,A,p[b+1],4,2763975236),A=l(A,h,y,g,p[b+4],11,1272893353),g=l(g,A,h,y,p[b+7],16,4139469664),y=l(y,g,A,h,p[b+10],23,3200236656),h=l(h,y,g,A,p[b+13],4,681279174),A=l(A,h,y,g,p[b+0],11,3936430074),g=l(g,A,h,y,p[b+3],16,3572445317),y=l(y,g,A,h,p[b+6],23,76029189),h=l(h,y,g,A,p[b+9],4,3654602809),A=l(A,h,y,g,p[b+12],11,3873151461),g=l(g,A,h,y,p[b+15],16,530742520),y=l(y,g,A,h,p[b+2],23,3299628645),h=d(h,y,g,A,p[b+0],6,4096336452),A=d(A,h,y,g,p[b+7],10,1126891415),g=d(g,A,h,y,p[b+14],15,2878612391),y=d(y,g,A,h,p[b+5],21,4237533241),h=d(h,y,g,A,p[b+12],6,1700485571),A=d(A,h,y,g,p[b+3],10,2399980690),g=d(g,A,h,y,p[b+10],15,4293915773),y=d(y,g,A,h,p[b+1],21,2240044497),h=d(h,y,g,A,p[b+8],6,1873313359),A=d(A,h,y,g,p[b+15],10,4264355552),g=d(g,A,h,y,p[b+6],15,2734768916),y=d(y,g,A,h,p[b+13],21,1309151649),h=d(h,y,g,A,p[b+4],6,4149444226),A=d(A,h,y,g,p[b+11],10,3174756917),g=d(g,A,h,y,p[b+2],15,718787259),y=d(y,g,A,h,p[b+9],21,3951481745),h=n(h,x),y=n(y,S),g=n(g,T),A=n(A,I)}return(m(h)+m(y)+m(g)+m(A)).toLowerCase()}function YUe(t){let e=Og(t),r=[],n=0;for(;n<e.length&&e[n++]===10;){let[i,a]=VUe(e,n);n=a;let o=0,c={};for(;o<i.length;){let u=i[o++],l=u>>3,d=u&7;if(d===0){let[f,m]=oJ(i,o);switch(o=m,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,m]=VUe(i,o);switch(o=m,l){case 6:c.midHash=Mc(f);break;case 7:c.content=Mc(f);break;case 10:c.action=Mc(f);break;case 12:c.idStr=Mc(f);break;case 14:c.animation=Mc(f);break;case 16:c.color_v2=Mc(f);break}}else{let[f,m]=oJ(i,o);o=m}}r.push(c)}return r}function oJ(t,e){let r=0n,n=0n,s=e;for(;;){let i=t[s++];if(r|=BigInt(i&127)<<n,!(i&128))break;n+=7n}return[Number(r),s]}function VUe(t,e){let[r,n]=oJ(t,e),s=n,i=s+r;return[t.slice(s,i),i]}function zr(t){let e=5381;for(let r=0;r<t.length;r++)e=e*33^t.charCodeAt(r);return e=(e>>>0)%9999999,e<1e4?e+1e4:e}function KUe(t,e){let r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=t[n]^e[n];return r}function Bdr(t){return Uint8Array.from([t[1],t[2],t[3],t[0]])}function yL(t){return Uint8Array.from(t.map(e=>JUe[e]))}function AL(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=KUe(yL(Bdr(a)),Uint8Array.from([Ddr[i/4],0,0,0]))),s[i]=KUe(s[i-4],a)}return s}function Ldr(t,e){let s=new Uint8Array(t);s=iJ(s,e.slice(10*4,11*4));for(let i=9;i>=1;i--)s=LC(s),s=BC(s),s=iJ(s,e.slice(i*4,(i+1)*4)),s=Mdr(s);return s=LC(s),s=BC(s),s=iJ(s,e.slice(0,4)),s}function iJ(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 BC(t){let e=new Array(256);for(let r=0;r<256;r++)e[JUe[r]]=r;return Uint8Array.from(t.map(r=>e[r]))}function LC(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 Mdr(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 Wdr(t,e){let r=AL(e),n=16,s=new Uint8Array(t.length);for(let i=0;i<t.length;i+=n){let a=t.slice(i,i+n),o=Ldr(a,r);s.set(o,i)}return s}function $dr(t){let e=t[t.length-1];return t.slice(0,t.length-e)}function Og(t){let e=typeof atob=="function"?atob(t):Udr(t),r=e.length,n=new Uint8Array(r);for(let s=0;s<r;s++)n[s]=e.charCodeAt(s);return n}function Udr(t){let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",r="",n=0,s=0;for(let i=0;i<t.length;i++){let a=t.charAt(i);if(a==="=")break;let o=e.indexOf(a);n=n<<6|o,s+=6,s>=8&&(s-=8,r+=String.fromCharCode(n>>s&255))}return r}function Mc(t){let e="",r=0;for(;r<t.length;){let n=t[r++];if(n<128)e+=String.fromCharCode(n);else if(n>=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 kg(t){let e=[];for(let r=0;r<t.length;r++){let n=t.charCodeAt(r);if(n<128)e.push(n);else if(n<2048)e.push(192|n>>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 Fdr(t,e){try{let r=Og(t),n=kg(e),s=Wdr(r,n),i=$dr(s);return Mc(i)}catch(r){return E("error","[Utils] [Codec]",r),null}}function MC(t){let e=typeof t=="string"?t.trim():JSON.stringify(t??"");try{return JSON.parse(e)}catch{}let n=Fdr(e,"3b744389882a4067");if(n!=null)try{return JSON.parse(n)}catch{return n}return e}function qdr(t){let e=[];for(let r=0;r<t.length;r++){let n=t.charCodeAt(r);n<128?e.push(n):n<2048?(e.push(192|n>>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 xL(t){let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",n;for(n=0;n+2<t.length;n+=3)r+=e[t[n]>>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<t.length&&(r+=e[t[n]>>2],n+1<t.length?(r+=e[(t[n]&3)<<4|t[n+1]>>4],r+=e[(t[n+1]&15)<<2],r+="="):(r+=e[(t[n]&3)<<4],r+="==")),r}function aJ(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<t.length;u++)n[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<n.length;u+=16){let l=a[0],d=a[1],f=a[2],m=a[3],p=a[4],h=a[5],y=a[6],g=a[7];for(let A=0;A<64;A++){if(A<16)i[A]=n[u+A]|0;else{let N=e(7,i[A-15])^e(18,i[A-15])^i[A-15]>>>3,k=e(17,i[A-2])^e(19,i[A-2])^i[A-2]>>>10;i[A]=i[A-16]+N+i[A-7]+k|0}let b=e(6,p)^e(11,p)^e(25,p),x=p&h^~p&y,S=g+b+x+o[A]+i[A]|0,T=e(2,l)^e(13,l)^e(22,l),I=l&d^l&f^d&f,R=T+I|0;g=y,y=h,h=p,p=m+S|0,m=f,f=d,d=l,l=S+R|0}a[0]=a[0]+l|0,a[1]=a[1]+d|0,a[2]=a[2]+f|0,a[3]=a[3]+m|0,a[4]=a[4]+p|0,a[5]=a[5]+h|0,a[6]=a[6]+y|0,a[7]=a[7]+g|0}let c=[];for(let u of a)c.push(u>>24&255),c.push(u>>16&255),c.push(u>>8&255),c.push(u&255);return c}function XUe(t,e){let n=qdr(t);n.length>64&&(n=aJ(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=aJ(String.fromCharCode(...i)+e),o=aJ(String.fromCharCode(...s)+String.fromCharCode(...a));return xL(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,ss(s)}function zUe(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 Nf(t){if(!t)return t;let e={"&lt;":"<","&gt;":">","&amp;":"&","&quot;":'"',"&apos;":"'"};return t.replace(/&[a-zA-Z]+;/g,r=>e[r]||r).replace(/&#(\d+);/g,(r,n)=>zUe(parseInt(n,10))).replace(/&#x([0-9a-fA-F]+);/g,(r,n)=>zUe(parseInt(n,16)))}var JUe,Ddr,Ns=yr(()=>{Et();JUe=[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],Ddr=[0,1,2,4,8,16,32,64,128,27,54]});var eFe={};us(eFe,{getRedisCaches:()=>lJ,getRedisKey:()=>jdr,judgeRedisValid:()=>dJ,pingRedis:()=>ZUe,runPipeline:()=>uJ,setRedisKey:()=>cJ,setRedisKeyWithExpiry:()=>Qdr,updateRedisCaches:()=>$C});async function ZUe(){let t=`${O.redisUrl}/ping`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PING \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(e){E("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",e.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",e.name),e.cause&&(E("error","- [Utils] [Redis] \u7801:",e.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",e.cause.message))}}async function jdr(t){let e=`${O.redisUrl}/get/${t}`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 GET \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(r){E("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",r.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(E("error","- [Utils] [Redis] \u7801:",r.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function cJ(t,e){let r=Xb(t,e),n=an(r);if(O.lastHashes[t]===n)return E("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};let s=`${O.redisUrl}/set/${t}`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SET \u8BF7\u6C42:",s);try{let a=await(await fetch(s,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:r})).json();return O.lastHashes[t]=n,E("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),a}catch(i){E("error","[Utils] [Redis] SET \u8BF7\u6C42\u5931\u8D25:",i.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",i.name),i.cause&&(E("error","- [Utils] [Redis] \u7801:",i.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",i.cause.message))}}async function Qdr(t,e,r){let n=Xb(t,e),s=an(n);if(O.lastHashes[t]===s)return E("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};let i=`${O.redisUrl}/set/${t}?EX=${r}`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SETEX \u8BF7\u6C42:",i);try{let o=await(await fetch(i,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:n})).json();return O.lastHashes[t]=s,E("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),o}catch(a){E("error","[Utils] [Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",a.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",a.name),a.cause&&(E("error","- [Utils] [Redis] \u7801:",a.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",a.cause.message))}}async function uJ(t){let e=`${O.redisUrl}/pipeline`;E("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PIPELINE \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:JSON.stringify(t)})).json()}catch(r){E("error","[Utils] [Redis] Pipeline \u8BF7\u6C42\u5931\u8D25:",r.message),E("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(E("error","- [Utils] [Redis] \u7801:",r.cause.code),E("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function lJ(){if(!O.redisCacheInitialized)try{E("info","[Utils] [Redis] getRedisCaches start.");let e=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"].map(s=>["GET",s]),r=await uJ(e);O.animes=r[0].result?JSON.parse(r[0].result):O.animes,O.episodeIds=r[1].result?JSON.parse(r[1].result):O.episodeIds,O.episodeNum=r[2].result?JSON.parse(r[2].result):O.episodeNum,O.reqRecords=r[3].result?JSON.parse(r[3].result):O.reqRecords;let n=r[4].result?JSON.parse(r[4].result):null;n&&typeof n=="object"&&(O.lastSelectMap=new Map(Object.entries(n)),E("info",`[Utils] [Redis] Restored lastSelectMap from Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=r[5].result?parseInt(r[5].result,10):O.todayReqNum,O.lastHashes.animes=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,E("info","[Utils] [Redis] getRedisCaches completed successfully.")}catch(t){E("error",`[Utils] [Redis] getRedisCaches failed: ${t.message}`,t.stack),O.redisCacheInitialized=!0}}async function $C(){try{E("info","[Utils] [Redis] updateCaches start.");let t=[],e=[],r=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:n,value:s}of r){let i=JSON.stringify(n==="lastSelectMap"?Object.fromEntries(s):s),a=an(i);a!==O.lastHashes[n]&&(t.push(["SET",n,i]),e.push({key:n,hash:a}))}if(t.length>0){E("info",`[Utils] [Redis] Updating ${t.length} changed keys: ${e.map(a=>a.key).join(", ")}`);let n=await uJ(t),s=0,i=0;Array.isArray(n)&&n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,E("warn",`[Utils] [Redis] Failed to update Redis key: ${e[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(e.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),E("info",`[Utils] [Redis] Redis update completed successfully: ${s} keys updated`)):E("warn",`[Utils] [Redis] Redis update partially failed: ${s} succeeded, ${i} failed`)}else E("info","[Utils] [Redis] No changes detected, skipping Redis update.")}catch(t){E("error",`[Utils] [Redis] updateRedisCaches failed: ${t.message}`,t.stack),E("error",`[Utils] [Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function dJ(t){if(!O.redisValid&&O.redisUrl&&O.redisToken&&t!=="/favicon.ico"&&t!=="/robots.txt"){let e=await ZUe();e&&e.result&&e.result==="PONG"&&(O.redisValid=!0)}}var bL=yr(()=>{kt();Et();Ns()});var Kl,_L,EL,vL,SL,fJ,pJ,IL,vt,Zb,xs=yr(()=>{sn();Kl=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:m=[],isHiddenChild:p=!1}={}){tt(e,"number"),tt(r,"string"),tt(n,"string"),tt(s,"string","type"),tt(i,"string"),tt(a,"string"),tt(o,"string"),tt(c,"number"),tt(u,"number"),tt(l,"boolean"),tt(d,"string"),tt(f,"array"),tt(m,"array"),tt(p,"boolean"),this.links=f.map(h=>_L.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:m,isHiddenChild:p})}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=>_L.fromJson(n));return new t({...e,links:r})}toJson(){return{...this,links:this.links.map(e=>e.toJson())}}},_L=class t{constructor({name:e="",url:r="",title:n="",id:s=10001}={}){tt(e,"string"),tt(r,"string"),tt(n,"string"),tt(s,"number"),Object.assign(this,{name:e,url:r,title:n,id:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},EL=class t{constructor({episodeId:e=10001,animeId:r=111,animeTitle:n="",episodeTitle:s="",type:i="",typeDescription:a="",shift:o=1,imageUrl:c=""}={}){tt(e,"number"),tt(r,"number"),tt(n,"string"),tt(s,"string"),tt(i,"string","type"),tt(a,"string"),tt(o,"number"),tt(c,"string"),Object.assign(this,{episodeId:e,animeId:r,animeTitle:n,episodeTitle:s,type:i,typeDescription:a,shift:o,imageUrl:c})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},vL=class{constructor({episodeId:e="",episodeTitle:r=""}={}){this.episodeId=e,this.episodeTitle=r}};vL.prototype.toJson=function(){return{episodeId:this.episodeId,episodeTitle:this.episodeTitle}};SL=class t{constructor({animeId:e=111,animeTitle:r="",type:n="",typeDescription:s="",episodes:i=[]}={}){tt(e,"number"),tt(r,"string"),tt(n,"string"),tt(s,"string"),tt(i,"array"),Object.assign(this,{animeId:e,animeTitle:r,type:n,typeDescription:s,episodes:i.map(a=>new vL(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())}}},fJ=class t{constructor({id:e="",airDate:r="",name:n="",episodeCount:s=0}={}){tt(e,"string"),tt(r,"string"),tt(n,"string"),tt(s,"number"),Object.assign(this,{id:e,airDate:r,name:n,episodeCount:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},pJ=class t{constructor({seasonId:e="",episodeId:r=10001,episodeTitle:n="",episodeNumber:s="",airDate:i=""}={}){tt(e,"string"),tt(r,"number"),tt(n,"string"),tt(s,"string"),tt(i,"string"),Object.assign(this,{seasonId:e,episodeId:r,episodeTitle:n,episodeNumber:s,airDate:i})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},IL=class t{constructor({animeId:e=111,bangumiId:r="",animeTitle:n="",imageUrl:s="",isOnAir:i=!0,airDay:a=1,isFavorited:o=!0,rating:c=0,type:u="",typeDescription:l="",seasons:d=[],episodes:f=[]}={}){tt(e,"number"),tt(r,"string"),tt(n,"string"),tt(s,"string"),tt(i,"boolean"),tt(a,"number"),tt(o,"boolean"),tt(c,"number"),tt(u,"string"),tt(l,"string"),tt(d,"array"),tt(f,"array");let m=d.map(p=>fJ.fromJson(p));Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,imageUrl:s,isOnAir:i,airDay:a,isFavorited:o,rating:c,type:u,typeDescription:l,seasons:m,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=>pJ.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}={}){tt(e,"string"),tt(r,"array"),tt(n,"number"),this.segmentList=r.map(s=>Zb.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=>Zb.fromJson(n));return new t({...e,segmentList:r})}toJson(){return{...this,segmentList:this.segmentList.map(e=>e.toJson())}}},Zb=class t{constructor({type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o}={}){tt(e,"string","type"),tt(r,"number","segment_start"),tt(n,"number","segment_end"),tt(s,"string","url"),i!==void 0&&tt(i,"string","data"),a!==void 0&&tt(a,"string","_m_h5_tk"),o!==void 0&&tt(o,"string","_m_h5_tk_enc"),Object.assign(this,{type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}}});var cFe={};us(cFe,{addAnime:()=>Dt,addEpisode:()=>aFe,cleanupExpiredIPs:()=>RL,findAnimeIdByCommentId:()=>wL,findAnimeTitleById:()=>yJ,findIndexById:()=>TL,findTitleById:()=>gJ,findUrlById:()=>VC,getCommentCache:()=>Of,getDirname:()=>NL,getLastSearch:()=>hJ,getLocalCaches:()=>_J,getPreferAnimeId:()=>bJ,getSearchCache:()=>QC,isCommentCacheValid:()=>iFe,isSearchCacheValid:()=>sFe,judgeLocalCacheValid:()=>EJ,readCacheFromFile:()=>Pg,removeEarliestAnime:()=>Lt,removeEpisodeByUrl:()=>oFe,resolveAnimeById:()=>Dg,resolveAnimeByIdFromDetailStore:()=>Bg,resolveEpisodeContextById:()=>t1,setCommentCache:()=>GC,setLastSearch:()=>mJ,setPreferByAnimeId:()=>xJ,setSearchCache:()=>HC,storeAnimeIdsToMap:()=>AJ,updateLocalCaches:()=>KC,writeCacheToFile:()=>OL});function mJ(t,e){if(UC.set(t,{...e,timestamp:Date.now()}),UC.size>200)for(let[r,n]of UC)Date.now()-n.timestamp>3600*1e3&&UC.delete(r)}function hJ(t){return UC.get(t)}function e1(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 tFe(t,e){if(!(t instanceof Map)||!e)return;let r=e1(e);r&&t.set(r,e)}function*jC(t){if(!(t instanceof Map))return;let e=new Set;for(let r of t.values()){let n=e1(r);n&&e.has(n)||(n&&e.add(n),yield r)}}function Hdr(t){let e=[];for(let r of jC(t))e.push(r);return e}function Gdr(){let t=Date.now(),e=[];for(let[r,n]of O.searchCache.entries()){let s=(t-n.timestamp)/6e4;if(s>O.searchCacheMinutes){O.searchCache.delete(r),E("info",`[Cache] Search cache for "${r}" expired after ${s.toFixed(2)} minutes`);continue}e.push(n)}return e.sort((r,n)=>(n.timestamp||0)-(r.timestamp||0)),e}function rFe(t,e,r){let n=Date.now(),s=0;for(let[i,a]of t.entries())(n-a.timestamp)/6e4>e&&(t.delete(i),s++);s>0&&E("info",`[Cache] ${r} TTL \u626B\u63CF\u5B8C\u6BD5\uFF0C\u5DF2\u79FB\u9664 ${s} \u4E2A\u8FC7\u671F\u6761\u76EE\uFF0C\u5269\u4F59 ${t.size} \u4E2A`)}function Vdr(t,e){return String(t?.animeId)===e||String(t?.bangumiId)===e}function CL(t,e,r=null){let n=null;for(let s of t)if(Vdr(s,e)){if(r&&s?.source===r)return s;n||(n=s)}return n}function*nFe(){let t=new Set;for(let e of Gdr())if(Array.isArray(e.details))for(let r of e.details){let n=e1(r);n&&t.has(n)||(n&&t.add(n),yield r)}}function Dg(t,e=null,r=null){let n=String(t),s=CL(O.animes,n,r);return s||(s=CL(jC(e),n,r),s)?s:CL(nFe(),n,r)}function Bg(t,e=null,r=null){let n=String(t);return CL(jC(e),n,r)}function t1(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 jC(e)){let a=n(i);if(a)return a}let s=new Set;for(let i of O.animes){let a=e1(i);a&&s.add(a)}for(let i of jC(e)){let a=e1(i);a&&s.add(a)}for(let i of nFe()){let a=e1(i);if(a&&s.has(a))continue;a&&s.add(a);let o=n(i);if(o)return o}return null}function sFe(t){if(!O.searchCache.has(t))return!1;let e=O.searchCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.searchCacheMinutes?(O.searchCache.delete(t),E("info",`[Cache] Search cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function QC(t,e=null){if(sFe(t)){E("info",`[Cache] Using search cache for "${t}"`);let r=O.searchCache.get(t);return e instanceof Map&&Array.isArray(r.details)&&r.details.forEach(n=>{tFe(e,n)}),r.results}return null}function HC(t,e,r=null){let n=Hdr(r);if(rFe(O.searchCache,O.searchCacheMinutes,"searchCache"),O.searchCache.set(t,{results:e,details:n,timestamp:Date.now()}),O.searchCache.size>500){let s=O.searchCache.keys().next().value;O.searchCache.delete(s),E("info",`[Cache] searchCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${s}`)}E("info",`[Cache] Cached search results for "${t}" (${e.length} animes)`)}function iFe(t){if(!O.commentCache.has(t))return!1;let e=O.commentCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.commentCacheMinutes?(O.commentCache.delete(t),E("info",`[Cache] Comment cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function Of(t){return iFe(t)?(E("info",`[Cache] Using comment cache for "${t}"`),O.commentCache.get(t).comments):null}function GC(t,e){if(rFe(O.commentCache,O.commentCacheMinutes,"commentCache"),O.commentCache.set(t,{comments:e,timestamp:Date.now()}),O.commentCache.size>500){let r=O.commentCache.keys().next().value;O.commentCache.delete(r),E("info",`[Cache] commentCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${r}`)}E("info",`[Cache] Cached comments for "${t}" (${e.length} comments)`)}function aFe(t,e){let r=O.episodeIds.find(s=>s.url===t&&s.title===e);if(r)return E("info",`[Cache] Episode with URL ${t} and title ${e} already exists in episodeIds, returning existing episode.`),r;O.episodeNum++;let n={id:O.episodeNum,url:t,title:e};return O.episodeIds.push(n),E("info",`[Cache] Added to episodeIds: ${JSON.stringify(n)}`),n}function oFe(t){let e=O.episodeIds.length;O.episodeIds=O.episodeIds.filter(n=>n.url!==t);let r=e-O.episodeIds.length;return r>0?(E("info",`[Cache] Removed ${r} episode(s) from episodeIds with URL: ${t}`),!0):(E("error",`[Cache] No episode found in episodeIds with URL: ${t}`),!1)}function VC(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return E("info",`[Cache] Found URL for ID ${t}: ${e.url}`),e.url;let r=t1(t);return r?.link?.url?(E("info",`[Cache] Found URL for ID ${t} via cached anime details: ${r.link.url}`),r.link.url):(E("error",`[Cache] No URL found for ID: ${t}`),null)}function TL(t){let e=O.episodeIds.findIndex(n=>n.id===t);if(e!==-1)return E("info",`[Cache] Found index for ID ${t}: ${e}`),e;let r=t1(t);return r?(E("info",`[Cache] Found index for ID ${t} via cached anime details: ${r.index}`),r.index):(E("error",`[Cache] No index found for ID: ${t}`),-1)}function gJ(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return E("info",`[Cache] Found TITLE for ID ${t}: ${e.title}`),e.title;let r=t1(t);return r?.link?.title?(E("info",`[Cache] Found TITLE for ID ${t} via cached anime details: ${r.link.title}`),r.link.title):(E("error",`[Cache] No TITLE found for ID: ${t}`),null)}function yJ(t){let e=t1(t);return e?.anime?.animeTitle?(E("info",`[Cache] Found animeTitle for ID ${t}: ${e.anime.animeTitle}`),e.anime.animeTitle):(E("error",`[Cache] No animeTitle found for ID: ${t}`),null)}function Dt(t,e=null){t=Kl.fromJson(t);try{if(!t.links||!Array.isArray(t.links))return E("error",`[Cache] Invalid or missing links in anime: ${JSON.stringify(t)}`),!1;let r=[];t.links.forEach(i=>{if(i.url){let a=aFe(i.url,i.title);a&&r.push(a)}else E("error",`[Cache] Invalid link in anime, missing url: ${JSON.stringify(i)}`)});let n=Kl.fromJson({...t,links:r});tFe(e,n);let s=O.animes.findIndex(i=>i.animeId===t.animeId);return s!==-1&&(O.animes.splice(s,1),E("info",`[Cache] Removed old anime at index: ${s}`)),O.animes.push(n),E("info",`[Cache] Added anime to latest position: ${t.animeId}`),O.animes.length>O.MAX_ANIMES&&(Lt()||E("error","[Cache] Failed to remove earliest anime, but continuing")),E("info",`[Cache] animes: ${JSON.stringify(O.animes.map(i=>({links:i.links,animeId:i.animeId,bangumiId:i.bangumiId,animeTitle:i.animeTitle})),(i,a)=>i==="links"?a.length:a)}`),!0}catch(r){return E("error",`[Cache] addAnime failed: ${r.message}`),!1}}function Lt(){if(O.animes.length===0)return E("error","[Cache] No animes to remove."),!1;let t=O.animes.shift();return E("info",`[Cache] Removed earliest anime: ${JSON.stringify(t)}`),t.links&&Array.isArray(t.links)&&t.links.forEach(e=>{e.url&&oFe(e.url)}),!0}function AJ(t,e){let r=new Set,n=O.lastSelectMap.get(e);if(n&&Array.isArray(n.animeIds))for(let d of n.animeIds)r.add(d);for(let d of t)r.add(d.animeId);let s=n?.prefer,i=n?.source,a=n?.preferBySeason,o=n?.sourceBySeason,c=n?.offsets,u=a?{...a}:{},l=o?{...o}:{};if(s!==void 0&&(u.default=s),i!==void 0&&(l.default=i),O.lastSelectMap.has(e)&&O.lastSelectMap.delete(e),O.lastSelectMap.set(e,{animeIds:[...r],...Object.keys(u).length>0&&{preferBySeason:u},...Object.keys(l).length>0&&{sourceBySeason:l},...c!==void 0&&{offsets:c}}),O.lastSelectMap.size>O.MAX_LAST_SELECT_MAP){let d=O.lastSelectMap.keys().next().value;O.lastSelectMap.delete(d),E("info",`[Cache] Removed earliest entry from lastSelectMap: ${d}`)}}function wL(t){let e=t1(t);return e?[e.anime.animeId,e.anime.source,e.link.title,e.anime.aliases||[]]:[null,null,null,[]]}function xJ(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 bJ(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 RL(t){let r=0;for(let[n,s]of O.requestHistory.entries()){let i=s.filter(a=>t-a<=6e4);i.length===0?(O.requestHistory.delete(n),r++,E("info",`[Utils] [Rate Limit] Cleaned up expired IP record: ${n}`)):i.length<s.length&&O.requestHistory.set(n,i)}r>0&&E("info",`[Utils] [Rate Limit] Cleanup completed: removed ${r} expired IP records`)}function NL(){return typeof __dirname<"u"?__dirname:qC.join(process.cwd(),"danmu_api","utils")}function Pg(t){let e=qC.join(NL(),"..","..",".cache",`${t}`);if(FC.existsSync(e)){let r=FC.readFileSync(e,"utf8");return JSON.parse(r)}return null}function OL(t,e){let r=qC.join(NL(),"..","..",".cache",`${t}`);FC.writeFileSync(r,JSON.stringify(e),"utf8")}async function _J(){if(!O.localCacheInitialized)try{E("info","[Cache] getLocalCaches start."),O.animes=JSON.parse(Pg("animes"))||O.animes,O.episodeIds=JSON.parse(Pg("episodeIds"))||O.episodeIds,O.episodeNum=JSON.parse(Pg("episodeNum"))||O.episodeNum,O.reqRecords=JSON.parse(Pg("reqRecords"))||O.reqRecords,O.todayReqNum=JSON.parse(Pg("todayReqNum"))||O.todayReqNum;let t=Pg("lastSelectMap");t&&(O.lastSelectMap=new Map(Object.entries(JSON.parse(t))),E("info",`[Cache] Restored lastSelectMap from local cache with ${O.lastSelectMap.size} entries`)),O.lastHashes.animes=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,E("info","[Cache] getLocalCaches completed successfully.")}catch(t){E("error",`[Cache] getLocalCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function KC(){try{E("info","[Cache] updateLocalCaches start.");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=an(s);i!==O.lastHashes[r]&&(OL(r,s),t.push({key:r,hash:i}))}t.length>0?(E("info",`[Cache] Updated local caches for keys: ${t.map(r=>r.key).join(", ")}`),t.forEach(({key:r,hash:n})=>{O.lastHashes[r]=n})):E("info","[Cache] No changes detected, skipping local cache update.")}catch(t){E("error",`[Cache] updateLocalCaches failed: ${t.message}`,t.stack),E("error",`[Cache] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function EJ(t,e){if(e==="node")try{if(FC=await import("fs"),qC=await import("path"),!O.localCacheValid&&t!=="/favicon.ico"&&t!=="/robots.txt"){let r=qC.join(NL(),"..","..",".cache");FC.existsSync(r)?O.localCacheValid=!0:O.localCacheValid=!1}}catch(r){E("warn","[Cache] Node.js modules not available:",r.message),O.localCacheValid=!1}}var FC,qC,UC,Un=yr(()=>{kt();Et();xs();Ns();UC=new Map});var TJ=_(ML=>{"use strict";Object.defineProperty(ML,"__esModule",{value:!0});ML.VerbatimString=void 0;var CJ=class extends String{format;constructor(e,r){super(r),this.format=e}};ML.VerbatimString=CJ});var zl=_(_r=>{"use strict";Object.defineProperty(_r,"__esModule",{value:!0});_r.MultiErrorReply=_r.CommandTimeoutDuringMaintenanceError=_r.SocketTimeoutDuringMaintenanceError=_r.TimeoutError=_r.BlobError=_r.SimpleError=_r.ErrorReply=_r.ReconnectStrategyError=_r.RootNodesUnavailableError=_r.SocketClosedUnexpectedlyError=_r.DisconnectsClientError=_r.ClientOfflineError=_r.ClientClosedError=_r.SocketTimeoutError=_r.ConnectionTimeoutError=_r.WatchError=_r.AbortError=void 0;var wJ=class extends Error{constructor(){super("The command was aborted")}};_r.AbortError=wJ;var RJ=class extends Error{constructor(e="One (or more) of the watched keys has been changed"){super(e)}};_r.WatchError=RJ;var NJ=class extends Error{constructor(){super("Connection timeout")}};_r.ConnectionTimeoutError=NJ;var OJ=class extends Error{constructor(e){super(`Socket timeout timeout. Expecting data, but didn't receive any in ${e}ms.`)}};_r.SocketTimeoutError=OJ;var kJ=class extends Error{constructor(){super("The client is closed")}};_r.ClientClosedError=kJ;var PJ=class extends Error{constructor(){super("The client is offline")}};_r.ClientOfflineError=PJ;var DJ=class extends Error{constructor(){super("Disconnects client")}};_r.DisconnectsClientError=DJ;var BJ=class extends Error{constructor(){super("Socket closed unexpectedly")}};_r.SocketClosedUnexpectedlyError=BJ;var LJ=class extends Error{constructor(){super("All the root nodes are unavailable")}};_r.RootNodesUnavailableError=LJ;var MJ=class extends Error{originalError;socketError;constructor(e,r){super(e.message),this.originalError=e,this.socketError=r}};_r.ReconnectStrategyError=MJ;var s1=class extends Error{};_r.ErrorReply=s1;var WJ=class extends s1{};_r.SimpleError=WJ;var $J=class extends s1{};_r.BlobError=$J;var JC=class extends Error{};_r.TimeoutError=JC;var UJ=class extends JC{constructor(e){super(`Socket timeout during maintenance. Expecting data, but didn't receive any in ${e}ms.`)}};_r.SocketTimeoutDuringMaintenanceError=UJ;var FJ=class extends JC{constructor(e){super(`Command timeout during maintenance. Waited to write command for more than ${e}ms.`)}};_r.CommandTimeoutDuringMaintenanceError=FJ;var qJ=class extends s1{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]}};_r.MultiErrorReply=qJ});var UL=_(mt=>{"use strict";var jJ;Object.defineProperty(mt,"__esModule",{value:!0});mt.Decoder=mt.PUSH_TYPE_MAPPING=mt.RESP_TYPES=void 0;var xFe=TJ(),WL=zl();mt.RESP_TYPES={NULL:95,BOOLEAN:35,NUMBER:58,BIG_NUMBER:40,DOUBLE:44,SIMPLE_STRING:43,BLOB_STRING:36,VERBATIM_STRING:61,SIMPLE_ERROR:45,BLOB_ERROR:33,ARRAY:42,SET:126,MAP:37,PUSH:62};var Yr={"\r":13,t:116,"+":43,"-":45,0:48,".":46,i:105,n:110,E:69,e:101};mt.PUSH_TYPE_MAPPING={[mt.RESP_TYPES.BLOB_STRING]:Buffer};var $L=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<e.length);this.#e-=e.length}#r(e,r){return this.#t=void 0,this.#n(e,r)}#n(e,r){switch(e){case mt.RESP_TYPES.NULL:return this.onReply(this.#s()),!1;case mt.RESP_TYPES.BOOLEAN:return this.#a(this.onReply,this.#i(r));case mt.RESP_TYPES.NUMBER:return this.#a(this.onReply,this.#c(this.getTypeMapping()[mt.RESP_TYPES.NUMBER],r));case mt.RESP_TYPES.BIG_NUMBER:return this.#a(this.onReply,this.#d(this.getTypeMapping()[mt.RESP_TYPES.BIG_NUMBER],r));case mt.RESP_TYPES.DOUBLE:return this.#a(this.onReply,this.#g(this.getTypeMapping()[mt.RESP_TYPES.DOUBLE],r));case mt.RESP_TYPES.SIMPLE_STRING:return this.#a(this.onReply,this.#x(this.getTypeMapping()[mt.RESP_TYPES.SIMPLE_STRING],r));case mt.RESP_TYPES.BLOB_STRING:return this.#a(this.onReply,this.#T(this.getTypeMapping()[mt.RESP_TYPES.BLOB_STRING],r));case mt.RESP_TYPES.VERBATIM_STRING:return this.#a(this.onReply,this.#O(this.getTypeMapping()[mt.RESP_TYPES.VERBATIM_STRING],r));case mt.RESP_TYPES.SIMPLE_ERROR:return this.#a(this.onErrorReply,this.#H(r));case mt.RESP_TYPES.BLOB_ERROR:return this.#a(this.onErrorReply,this.#V(r));case mt.RESP_TYPES.ARRAY:return this.#a(this.onReply,this.#q(this.getTypeMapping(),r));case mt.RESP_TYPES.SET:return this.#a(this.onReply,this.#J(this.getTypeMapping(),r));case mt.RESP_TYPES.MAP:return this.#a(this.onReply,this.#te(this.getTypeMapping(),r));case mt.RESP_TYPES.PUSH:return this.#a(this.onPush,this.#q(mt.PUSH_TYPE_MAPPING,r));default:throw new Error(`Unknown RESP type ${e} "${String.fromCharCode(e)}"`)}}#a(e,r){return typeof r=="function"?(this.#t=this.#o.bind(this,e,r),!0):(e(r),!1)}#o(e,r,n){return this.#t=void 0,this.#a(e,r(n))}#s(){return this.#e+=2,null}#i(e){let r=e[this.#e]===Yr.t;return this.#e+=3,r}#c(e,r){if(e===String)return this.#x(String,r);switch(r[this.#e]){case Yr["+"]:return this.#l(!1,r);case Yr["-"]:return this.#l(!0,r);default:return this.#h(!1,this.#p.bind(this,0),r)}}#l(e,r){let n=this.#p.bind(this,0);return++this.#e===r.length?this.#h.bind(this,e,n):this.#h(e,n,r)}#h(e,r,n){let s=r(n);return typeof s=="function"?this.#h.bind(this,e,s):e?-s:s}#p(e,r){let n=this.#e;do{let s=r[n];if(s===Yr["\r"])return this.#e=n+2,e;e=e*10+s-Yr[0]}while(++n<r.length);return this.#e=n,this.#p.bind(this,e)}#d(e,r){if(e===String)return this.#x(String,r);switch(r[this.#e]){case Yr["+"]:return this.#f(!1,r);case Yr["-"]:return this.#f(!0,r);default:return this.#m(!1,this.#A.bind(this,0n),r)}}#f(e,r){let n=this.#A.bind(this,0n);return++this.#e===r.length?this.#m.bind(this,e,n):this.#m(e,n,r)}#m(e,r,n){let s=r(n);return typeof s=="function"?this.#m.bind(this,e,s):e?-s:s}#A(e,r){let n=this.#e;do{let s=r[n];if(s===Yr["\r"])return this.#e=n+2,e;e=e*10n+BigInt(s-Yr[0])}while(++n<r.length);return this.#e=n,this.#A.bind(this,e)}#g(e,r){if(e===String)return this.#x(String,r);switch(r[this.#e]){case Yr.n:return this.#e+=5,NaN;case Yr["+"]:return this.#_(!1,r);case Yr["-"]:return this.#_(!0,r);default:return this.#v(!1,0,r)}}#_(e,r){return++this.#e===r.length?this.#v.bind(this,e,0):this.#v(e,0,r)}#v(e,r,n){return n[this.#e]===Yr.i?(this.#e+=5,e?-1/0:1/0):this.#y(e,r,n)}#y(e,r,n){let s=this.#e;do{let i=n[s];switch(i){case Yr["."]:return this.#e=s+1,this.#e<n.length?this.#E(e,0,r,n):this.#E.bind(this,e,0,r);case Yr.E:case Yr.e:this.#e=s+1;let a=e?-r:r;return this.#e<n.length?this.#S(a,n):this.#S.bind(this,a);case Yr["\r"]:return this.#e=s+2,e?-r:r;default:r=r*10+i-Yr[0]}}while(++s<n.length);return this.#e=s,this.#y.bind(this,e,r)}static#I=[.1,.01,.001,1e-4,1e-5,1e-6,1e-7,1e-8,1e-9,1e-10,1e-11,1e-12,1e-13,1e-14,1e-15,1e-16,1e-17];#E(e,r,n,s){let i=this.#e;do{let a=s[i];switch(a){case Yr.E:case Yr.e:this.#e=i+1;let o=e?-n:n;return this.#e===s.length?this.#S.bind(this,o):this.#S(o,s);case Yr["\r"]:return this.#e=i+2,e?-n:n}r<jJ.#I.length&&(n+=(a-Yr[0])*jJ.#I[r++])}while(++i<s.length);return this.#e=i,this.#E.bind(this,e,r,n)}#S(e,r){switch(r[this.#e]){case Yr["+"]:return++this.#e===r.length?this.#b.bind(this,!1,e,0):this.#b(!1,e,0,r);case Yr["-"]:return++this.#e===r.length?this.#b.bind(this,!0,e,0):this.#b(!0,e,0,r)}return this.#b(!1,e,0,r)}#b(e,r,n,s){let i=this.#e;do{let a=s[i];if(a===Yr["\r"])return this.#e=i+2,r*10**(e?-n:n);n=n*10+a-Yr[0]}while(++i<s.length);return this.#e=i,this.#b.bind(this,e,r,n)}#u(e,r){for(;e[r]!==Yr["\r"];)if(++r===e.length)return this.#e=e.length,-1;return this.#e=r+2,r}#x(e,r){let n=this.#e,s=this.#u(r,n);if(s===-1)return this.#k.bind(this,[r.subarray(n)],e);let i=r.subarray(n,s);return e===Buffer?i:i.toString()}#k(e,r,n){let s=this.#e,i=this.#u(n,s);if(i===-1)return e.push(n.subarray(s)),this.#k.bind(this,e,r);e.push(n.subarray(s,i));let a=Buffer.concat(e);return r===Buffer?a:a.toString()}#T(e,r){if(r[this.#e]===Yr["-"])return this.#e+=4,null;let n=this.#p(0,r);return typeof n=="function"?this.#C.bind(this,n,e):this.#e>=r.length?this.#R.bind(this,n,e):this.#R(n,e,r)}#C(e,r,n){let s=e(n);return typeof s=="function"?this.#C.bind(this,s,r):this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n)}#N(e,r,n,s){let i=this.#e+e;if(i>=s.length){let o=s.subarray(this.#e);return this.#e=s.length,this.#M.bind(this,e-o.length,[o],r,n)}let a=s.subarray(this.#e,i);return this.#e=i+r,n===Buffer?a:a.toString()}#M(e,r,n,s,i){let a=this.#e+e;if(a>=i.length){let c=i.subarray(this.#e);return r.push(c),this.#e=i.length,this.#M.bind(this,e-c.length,r,n,s)}r.push(i.subarray(this.#e,a)),this.#e=a+n;let o=Buffer.concat(r);return s===Buffer?o:o.toString()}#R(e,r,n){return this.#N(e,2,r,n)}#O(e,r){return this.#P(this.#p.bind(this,0),e,r)}#P(e,r,n){let s=e(n);return typeof s=="function"?this.#P.bind(this,s,r):this.#ce(s,r,n)}#ce(e,r,n){let s=e-4;return r===xFe.VerbatimString?this.#ue(s,n):(this.#e+=4,this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n))}#ue(e,r){let n=this.#N.bind(this,3,1,String);return this.#e>=r.length?this.#U.bind(this,e,n):this.#U(e,n,r)}#U(e,r,n){let s=r(n);return typeof s=="function"?this.#U.bind(this,e,s):this.#le(e,s,n)}#le(e,r,n){return this.#Q(r,this.#R.bind(this,e,String),n)}#Q(e,r,n){let s=r(n);return typeof s=="function"?this.#Q.bind(this,e,s):new xFe.VerbatimString(e,s)}#H(e){let r=this.#x(String,e);return typeof r=="function"?this.#G.bind(this,r):new WL.SimpleError(r)}#G(e,r){let n=e(r);return typeof n=="function"?this.#G.bind(this,n):new WL.SimpleError(n)}#V(e){let r=this.#T(String,e);return typeof r=="function"?this.#K.bind(this,r):new WL.BlobError(r)}#K(e,r){let n=e(r);return typeof n=="function"?this.#K.bind(this,n):new WL.BlobError(n)}#w(e,r){let n=r[this.#e];return++this.#e===r.length?this.#F.bind(this,n,e):this.#F(n,e,r)}#F(e,r,n){switch(e){case mt.RESP_TYPES.NULL:return this.#s();case mt.RESP_TYPES.BOOLEAN:return this.#i(n);case mt.RESP_TYPES.NUMBER:return this.#c(r[mt.RESP_TYPES.NUMBER],n);case mt.RESP_TYPES.BIG_NUMBER:return this.#d(r[mt.RESP_TYPES.BIG_NUMBER],n);case mt.RESP_TYPES.DOUBLE:return this.#g(r[mt.RESP_TYPES.DOUBLE],n);case mt.RESP_TYPES.SIMPLE_STRING:return this.#x(r[mt.RESP_TYPES.SIMPLE_STRING],n);case mt.RESP_TYPES.BLOB_STRING:return this.#T(r[mt.RESP_TYPES.BLOB_STRING],n);case mt.RESP_TYPES.VERBATIM_STRING:return this.#O(r[mt.RESP_TYPES.VERBATIM_STRING],n);case mt.RESP_TYPES.SIMPLE_ERROR:return this.#H(n);case mt.RESP_TYPES.BLOB_ERROR:return this.#V(n);case mt.RESP_TYPES.ARRAY:return this.#q(r,n);case mt.RESP_TYPES.SET:return this.#J(r,n);case mt.RESP_TYPES.MAP:return this.#te(r,n);default:throw new Error(`Unknown RESP type ${e} "${String.fromCharCode(e)}"`)}}#q(e,r){return r[this.#e]===Yr["-"]?(this.#e+=4,null):this.#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<e.length;i++){if(this.#e>=s.length)return this.#D.bind(this,e,i,n);let a=this.#w(n,s);if(typeof a=="function")return this.#Y.bind(this,e,i,a,n);e[i]=a}return e}#Y(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#Y.bind(this,e,r,a,s):(e[r++]=a,this.#D(e,r,s,i))}#J(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#X.bind(this,n,e):this.#Z(n,e,r)}#X(e,r,n){let s=e(n);return typeof s=="function"?this.#X.bind(this,s,r):this.#Z(s,r,n)}#Z(e,r,n){return r[mt.RESP_TYPES.SET]===Set?this.#j(new Set,e,r,n):this.#D(new Array(e),0,r,n)}#j(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#j.bind(this,e,r,n);let i=this.#w(n,s);if(typeof i=="function")return this.#ee.bind(this,e,r,i,n);e.add(i),--r}return e}#ee(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#ee.bind(this,e,r,a,s):(e.add(a),this.#j(e,r-1,s,i))}#te(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#re.bind(this,n,e):this.#ne(n,e,r)}#re(e,r,n){let s=e(n);return typeof s=="function"?this.#re.bind(this,s,r):this.#ne(s,r,n)}#ne(e,r,n){switch(r[mt.RESP_TYPES.MAP]){case Map:return this.#W(new Map,e,r,n);case Array:return this.#D(new Array(e*2),0,r,n);default:return this.#$(Object.create(null),e,r,n)}}#W(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#W.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#ae.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#B.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#B.bind(this,e,r,i,a,n);e.set(i,a),--r}return e}#se(e,r){let n=r[this.#e];return++this.#e===r.length?this.#ie.bind(this,n,e):this.#ie(n,e,r)}#ie(e,r,n){switch(e){case mt.RESP_TYPES.SIMPLE_STRING:return this.#x(String,n);case mt.RESP_TYPES.BLOB_STRING:return this.#T(String,n);default:return this.#F(e,r,n)}}#ae(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#ae.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#B.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#B.bind(this,e,r,a,o,s):(e.set(a,o),this.#W(e,r-1,s,i))}#B(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#B.bind(this,e,r,n,o,i):(e.set(n,o),this.#W(e,r-1,i,a))}#$(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#$.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#oe.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#L.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#L.bind(this,e,r,i,a,n);e[i]=a,--r}return e}#oe(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#oe.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#L.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#L.bind(this,e,r,a,o,s):(e[a]=o,this.#$(e,r-1,s,i))}#L(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#L.bind(this,e,r,n,o,i):(e[n]=o,this.#$(e,r-1,i,a))}};mt.Decoder=$L;jJ=$L});var _Fe=_(i1=>{"use strict";Object.defineProperty(i1,"__esModule",{value:!0});i1.scriptSha1=i1.defineScript=void 0;var ffr=require("node:crypto");function pfr(t){return{...t,SHA1:bFe(t.SCRIPT)}}i1.defineScript=pfr;function bFe(t){return(0,ffr.createHash)("sha1").update(t).digest("hex")}i1.scriptSha1=bFe});var EFe=_(FL=>{"use strict";Object.defineProperty(FL,"__esModule",{value:!0});FL.digest=void 0;var QJ=null;async function mfr(){if(!QJ)try{QJ=(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 QJ}async function hfr(t){let e=await mfr(),r=typeof t=="string"?t:new Uint8Array(t);return e.xxh64(r).toString(16).padStart(16,"0")}FL.digest=hfr});var vFe=_(HJ=>{"use strict";Object.defineProperty(HJ,"__esModule",{value:!0});HJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","CAT"),e&&t.push(e)},transformReply:void 0}});var SFe=_(GJ=>{"use strict";Object.defineProperty(GJ,"__esModule",{value:!0});GJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","DELUSER"),t.pushVariadic(e)},transformReply:void 0}});var IFe=_(VJ=>{"use strict";Object.defineProperty(VJ,"__esModule",{value:!0});VJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","DRYRUN",e,...r)},transformReply:void 0}});var CFe=_(KJ=>{"use strict";Object.defineProperty(KJ,"__esModule",{value:!0});KJ.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 TFe=_(zJ=>{"use strict";Object.defineProperty(zJ,"__esModule",{value:!0});zJ.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 wFe=_(YJ=>{"use strict";Object.defineProperty(YJ,"__esModule",{value:!0});YJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LIST")},transformReply:void 0}});var RFe=_(JJ=>{"use strict";Object.defineProperty(JJ,"__esModule",{value:!0});JJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LOAD")},transformReply:void 0}});var Yl=_(qL=>{"use strict";Object.defineProperty(qL,"__esModule",{value:!0});qL.BasicCommandParser=void 0;var XJ=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<this.#e.length;r++)e[r]=this.#e[r].length,e[r+this.#e.length]=this.#e[r];return e.join("_")}push(...e){this.#e.push(...e)}pushVariadic(e){if(Array.isArray(e))for(let r of e)this.push(r);else this.push(e)}pushVariadicWithLength(e){Array.isArray(e)?this.#e.push(e.length.toString()):this.#e.push("1"),this.pushVariadic(e)}pushVariadicNumber(e){if(Array.isArray(e))for(let r of e)this.push(r.toString());else this.push(e.toString())}pushKey(e){this.#t.push(e),this.#e.push(e)}pushKeysLength(e){Array.isArray(e)?this.#e.push(e.length.toString()):this.#e.push("1"),this.pushKeys(e)}pushKeys(e){Array.isArray(e)?(this.#t.push(...e),this.#e.push(...e)):(this.#t.push(e),this.#e.push(e))}};qL.BasicCommandParser=XJ});var we=_(We=>{"use strict";Object.defineProperty(We,"__esModule",{value:!0});We.transformRedisJsonNullReply=We.transformRedisJsonReply=We.transformRedisJsonArgument=We.transformStreamsMessagesReplyResp3=We.transformStreamsMessagesReplyResp2=We.transformStreamMessagesReply=We.transformStreamMessageNullReply=We.transformStreamMessageReply=We.parseArgs=We.parseZKeysArguments=We.transformRangeReply=We.parseSlotRangesArguments=We.transformFunctionListItemReply=We.RedisFunctionFlags=We.transformCommandReply=We.CommandCategories=We.CommandFlags=We.parseOptionalVariadicArgument=We.pushVariadicArgument=We.pushVariadicNumberArguments=We.pushVariadicArguments=We.pushEvalArguments=We.evalFirstKeyIndex=We.transformPXAT=We.transformEXAT=We.transformSortedSetReply=We.transformTuplesReply=We.createTransformTuplesReplyFunc=We.transformTuplesToMap=We.transformNullableDoubleReply=We.createTransformNullableDoubleReplyResp2Func=We.transformDoubleArrayReply=We.createTransformDoubleReplyResp2Func=We.transformDoubleReply=We.transformStringDoubleArgument=We.transformDoubleArgument=We.transformBooleanArrayReply=We.transformBooleanReply=We.isArrayReply=We.isNullReply=void 0;var gfr=Yl(),ZJ=UL();function eX(t){return t===null}We.isNullReply=eX;function yfr(t){return Array.isArray(t)}We.isArrayReply=yfr;We.transformBooleanReply={2:t=>t===1,3:void 0};We.transformBooleanArrayReply={2:t=>t.map(We.transformBooleanReply[2]),3:void 0};function jL(t){switch(t){case 1/0:return"+inf";case-1/0:return"-inf";default:return t.toString()}}We.transformDoubleArgument=jL;function Afr(t){return typeof t!="number"?t:jL(t)}We.transformStringDoubleArgument=Afr;We.transformDoubleReply={2:(t,e,r)=>{switch(r?r[ZJ.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 DFe(t,e){return r=>We.transformDoubleReply[2](r,t,e)}We.createTransformDoubleReplyResp2Func=DFe;We.transformDoubleArrayReply={2:(t,e,r)=>t.map(DFe(e,r)),3:void 0};function xfr(t,e){return r=>We.transformNullableDoubleReply[2](r,t,e)}We.createTransformNullableDoubleReplyResp2Func=xfr;We.transformNullableDoubleReply={2:(t,e,r)=>t===null?null:We.transformDoubleReply[2](t,e,r),3:void 0};function bfr(t,e){let r=Object.create(null);for(let n=0;n<t.length;n+=2)r[t[n].toString()]=e(t[n+1]);return r}We.transformTuplesToMap=bfr;function _fr(t,e){return r=>tX(r,t,e)}We.createTransformTuplesReplyFunc=_fr;function tX(t,e,r){let n=r?r[ZJ.RESP_TYPES.MAP]:void 0,s=t;switch(n){case Array:return t;case Map:{let i=new Map;for(let a=0;a<s.length;a+=2)i.set(s[a].toString(),s[a+1]);return i}default:{let i=Object.create(null);for(let a=0;a<s.length;a+=2)i[s[a].toString()]=s[a+1];return i}}}We.transformTuplesReply=tX;We.transformSortedSetReply={2:(t,e,r)=>{let n=t,s=[];for(let i=0;i<n.length;i+=2)s.push({value:n[i],score:We.transformDoubleReply[2](n[i+1],e,r)});return s},3:t=>t.map(e=>{let[r,n]=e;return{value:r,score:n}})};function Efr(t){return(typeof t=="number"?t:Math.floor(t.getTime()/1e3)).toString()}We.transformEXAT=Efr;function vfr(t){return(typeof t=="number"?t:t.getTime()).toString()}We.transformPXAT=vfr;function Sfr(t){return t?.keys?.[0]}We.evalFirstKeyIndex=Sfr;function Ifr(t,e){return e?.keys?t.push(e.keys.length.toString(),...e.keys):t.push("0"),e?.arguments&&t.push(...e.arguments),t}We.pushEvalArguments=Ifr;function Cfr(t,e){return Array.isArray(e)?t=t.concat(e):t.push(e),t}We.pushVariadicArguments=Cfr;function Tfr(t,e){if(Array.isArray(e))for(let r of e)t.push(r.toString());else t.push(e.toString());return t}We.pushVariadicNumberArguments=Tfr;function wfr(t,e){return Array.isArray(e)?t.push(e.length.toString(),...e):t.push("1",e),t}We.pushVariadicArgument=wfr;function Rfr(t,e,r){r!==void 0&&(t.push(e),t.pushVariadicWithLength(r))}We.parseOptionalVariadicArgument=Rfr;var NFe;(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"})(NFe||(We.CommandFlags=NFe={}));var OFe;(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"})(OFe||(We.CommandCategories=OFe={}));function Nfr([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)}}We.transformCommandReply=Nfr;var kFe;(function(t){t.NO_WRITES="no-writes",t.ALLOW_OOM="allow-oom",t.ALLOW_STALE="allow-stale",t.NO_CLUSTER="no-cluster"})(kFe||(We.RedisFunctionFlags=kFe={}));function Ofr(t){return{libraryName:t[1],engine:t[3],functions:t[5].map(e=>({name:e[1],description:e[3],flags:e[5]}))}}We.transformFunctionListItemReply=Ofr;function PFe(t,e){t.push(e.start.toString(),e.end.toString())}function kfr(t,e){if(Array.isArray(e))for(let r of e)PFe(t,r);else PFe(t,e)}We.parseSlotRangesArguments=kfr;function Pfr([t,e]){return{start:t,end:e}}We.transformRangeReply=Pfr;function Dfr(t,e){if(Array.isArray(e)){if(t.push(e.length.toString()),e.length)if(Bfr(e))t.pushKeys(e);else{for(let r=0;r<e.length;r++)t.pushKey(e[r].key);t.push("WEIGHTS");for(let r=0;r<e.length;r++)t.push(jL(e[r].weight))}}else t.push("1"),BFe(e)?t.pushKey(e):(t.pushKey(e.key),t.push("WEIGHTS",jL(e.weight)))}We.parseZKeysArguments=Dfr;function BFe(t){return typeof t=="string"||t instanceof Buffer}function Bfr(t){return BFe(t[0])}function Lfr(t,...e){let r=new gfr.BasicCommandParser;t.parseCommand(r,...e);let n=r.redisArgs;return r.preserve&&(n.preserve=r.preserve),n}We.parseArgs=Lfr;function rX(t,e){let[r,n,s,i]=e;return{id:r,message:tX(n,void 0,t),...s!==void 0?{millisElapsedFromDelivery:s}:{},...i!==void 0?{deliveriesCounter:i}:{}}}We.transformStreamMessageReply=rX;function Mfr(t,e){return eX(e)?e:rX(t,e)}We.transformStreamMessageNullReply=Mfr;function XC(t,e){return t.map(rX.bind(void 0,e))}We.transformStreamMessagesReply=XC;function Wfr(t,e,r){if(t===null)return null;switch(r?r[ZJ.RESP_TYPES.MAP]:void 0){default:{let n=[];for(let s=0;s<t.length;s++){let i=t[s];n.push({name:i[0],messages:XC(i[1])})}return n}}}We.transformStreamsMessagesReplyResp2=Wfr;function $fr(t){if(t===null)return null;if(t instanceof Map){let e=new Map;for(let[r,n]of t){let s=r;e.set(s.toString(),XC(n))}return e}else if(t instanceof Array){let e=[];for(let r=0;r<t.length;r+=2){let n=t[r],s=t[r+1];e.push(n),e.push(XC(s))}return e}else{let e=Object.create(null);for(let[r,n]of Object.entries(t))e[r]=XC(n);return e}}We.transformStreamsMessagesReplyResp3=$fr;function Ufr(t){return JSON.stringify(t)}We.transformRedisJsonArgument=Ufr;function LFe(t){return JSON.parse(t.toString())}We.transformRedisJsonReply=LFe;function Ffr(t){return eX(t)?t:LFe(t)}We.transformRedisJsonNullReply=Ffr});var sX=_(nX=>{"use strict";Object.defineProperty(nX,"__esModule",{value:!0});var qfr=we();nX.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":qfr.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 MFe=_(ZC=>{"use strict";var jfr=ZC&&ZC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ZC,"__esModule",{value:!0});var Qfr=jfr(sX());ZC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:Qfr.default.IS_READ_ONLY,parseCommand(t){t.push("ACL","LOG","RESET")},transformReply:void 0}});var WFe=_(iX=>{"use strict";Object.defineProperty(iX,"__esModule",{value:!0});iX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","SAVE")},transformReply:void 0}});var $Fe=_(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});aX.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 UFe=_(oX=>{"use strict";Object.defineProperty(oX,"__esModule",{value:!0});oX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","USERS")},transformReply:void 0}});var FFe=_(cX=>{"use strict";Object.defineProperty(cX,"__esModule",{value:!0});cX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","WHOAMI")},transformReply:void 0}});var qFe=_(uX=>{"use strict";Object.defineProperty(uX,"__esModule",{value:!0});uX.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("APPEND",e,r)},transformReply:void 0}});var lX=_(a1=>{"use strict";Object.defineProperty(a1,"__esModule",{value:!0});a1.ASKING_CMD=void 0;a1.ASKING_CMD="ASKING";a1.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push(a1.ASKING_CMD)},transformReply:void 0}});var jFe=_(dX=>{"use strict";Object.defineProperty(dX,"__esModule",{value:!0});dX.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 QFe=_(fX=>{"use strict";Object.defineProperty(fX,"__esModule",{value:!0});fX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("BGREWRITEAOF")},transformReply:void 0}});var HFe=_(pX=>{"use strict";Object.defineProperty(pX,"__esModule",{value:!0});pX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("BGSAVE"),e?.SCHEDULE&&t.push("SCHEDULE")},transformReply:void 0}});var GFe=_(mX=>{"use strict";Object.defineProperty(mX,"__esModule",{value:!0});mX.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 VFe=_(hX=>{"use strict";Object.defineProperty(hX,"__esModule",{value:!0});hX.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 KFe=_(gX=>{"use strict";Object.defineProperty(gX,"__esModule",{value:!0});gX.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 zFe=_(yX=>{"use strict";Object.defineProperty(yX,"__esModule",{value:!0});yX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BITOP",e),t.pushKey(r),t.pushKeys(n)},transformReply:void 0}});var YFe=_(AX=>{"use strict";Object.defineProperty(AX,"__esModule",{value:!0});AX.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 JFe=_(xX=>{"use strict";Object.defineProperty(xX,"__esModule",{value:!0});xX.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 bX=_(e2=>{"use strict";Object.defineProperty(e2,"__esModule",{value:!0});e2.parseLMPopArguments=void 0;function XFe(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())}e2.parseLMPopArguments=XFe;e2.default={IS_READ_ONLY:!1,parseCommand(t,...e){t.push("LMPOP"),XFe(t,...e)},transformReply:void 0}});var e7e=_(Pf=>{"use strict";var Hfr=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]}),Gfr=Pf&&Pf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Vfr=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)&&Hfr(e,t,r);return Gfr(e,t),e};Object.defineProperty(Pf,"__esModule",{value:!0});var ZFe=Vfr(bX());Pf.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BLMPOP",e.toString()),(0,ZFe.parseLMPopArguments)(t,...r)},transformReply:ZFe.default.transformReply}});var EX=_(_X=>{"use strict";Object.defineProperty(_X,"__esModule",{value:!0});_X.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 t7e=_(t2=>{"use strict";var Kfr=t2&&t2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(t2,"__esModule",{value:!0});var zfr=Kfr(EX());t2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BRPOP"),t.pushKeys(e),t.push(r.toString())},transformReply:zfr.default.transformReply}});var r7e=_(vX=>{"use strict";Object.defineProperty(vX,"__esModule",{value:!0});vX.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 SX=_(r2=>{"use strict";Object.defineProperty(r2,"__esModule",{value:!0});r2.parseZMPopArguments=void 0;var n7e=we();function s7e(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT&&t.push("COUNT",n.COUNT.toString())}r2.parseZMPopArguments=s7e;r2.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZMPOP"),s7e(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:n7e.transformDoubleReply[2](i,e,r)}})}},3(t){return t===null?null:{key:t[0],members:n7e.transformSortedSetReply[3](t[1])}}}}});var a7e=_(Df=>{"use strict";var Yfr=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]}),Jfr=Df&&Df.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Xfr=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)&&Yfr(e,t,r);return Jfr(e,t),e};Object.defineProperty(Df,"__esModule",{value:!0});var i7e=Xfr(SX());Df.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BZMPOP",e.toString()),(0,i7e.parseZMPopArguments)(t,...r)},transformReply:i7e.default.transformReply}});var CX=_(IX=>{"use strict";Object.defineProperty(IX,"__esModule",{value:!0});var Zfr=we();IX.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:Zfr.transformDoubleReply[2](t[2],e,r)}},3(t){return t===null?null:{key:t[0],value:t[1],score:t[2]}}}}});var c7e=_(n2=>{"use strict";var epr=n2&&n2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(n2,"__esModule",{value:!0});var o7e=epr(CX());n2.default={IS_READ_ONLY:o7e.default.IS_READ_ONLY,parseCommand(t,e,r){t.push("BZPOPMIN"),t.pushKeys(e),t.push(r.toString())},transformReply:o7e.default.transformReply}});var u7e=_(TX=>{"use strict";Object.defineProperty(TX,"__esModule",{value:!0});TX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","CACHING",e?"YES":"NO")},transformReply:void 0}});var l7e=_(wX=>{"use strict";Object.defineProperty(wX,"__esModule",{value:!0});wX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETNAME")},transformReply:void 0}});var d7e=_(RX=>{"use strict";Object.defineProperty(RX,"__esModule",{value:!0});RX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETREDIR")},transformReply:void 0}});var f7e=_(NX=>{"use strict";Object.defineProperty(NX,"__esModule",{value:!0});NX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","ID")},transformReply:void 0}});var kX=_(OX=>{"use strict";Object.defineProperty(OX,"__esModule",{value:!0});var tpr=/([^\s=]+)=([^\s]*)/g;OX.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(tpr))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 m7e=_(qo=>{"use strict";Object.defineProperty(qo,"__esModule",{value:!0});qo.CLIENT_KILL_FILTERS=void 0;qo.CLIENT_KILL_FILTERS={ADDRESS:"ADDR",LOCAL_ADDRESS:"LADDR",ID:"ID",TYPE:"TYPE",USER:"USER",SKIP_ME:"SKIPME",MAXAGE:"MAXAGE"};qo.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)p7e(t,r);else p7e(t,e)},transformReply:void 0};function p7e(t,e){if(e===qo.CLIENT_KILL_FILTERS.SKIP_ME){t.push("SKIPME");return}switch(t.push(e.filter),e.filter){case qo.CLIENT_KILL_FILTERS.ADDRESS:t.push(e.address);break;case qo.CLIENT_KILL_FILTERS.LOCAL_ADDRESS:t.push(e.localAddress);break;case qo.CLIENT_KILL_FILTERS.ID:t.push(typeof e.id=="number"?e.id.toString():e.id);break;case qo.CLIENT_KILL_FILTERS.TYPE:t.push(e.type);break;case qo.CLIENT_KILL_FILTERS.USER:t.push(e.username);break;case qo.CLIENT_KILL_FILTERS.SKIP_ME:t.push(e.skipMe?"yes":"no");break;case qo.CLIENT_KILL_FILTERS.MAXAGE:t.push(e.maxAge.toString());break}}});var h7e=_(s2=>{"use strict";var rpr=s2&&s2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(s2,"__esModule",{value:!0});var npr=rpr(kX());s2.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<r;s++)n.push(npr.default.transformReply(e[s]));return n}}});var g7e=_(PX=>{"use strict";Object.defineProperty(PX,"__esModule",{value:!0});PX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-EVICT",e?"ON":"OFF")},transformReply:void 0}});var y7e=_(DX=>{"use strict";Object.defineProperty(DX,"__esModule",{value:!0});DX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-TOUCH",e?"ON":"OFF")},transformReply:void 0}});var A7e=_(BX=>{"use strict";Object.defineProperty(BX,"__esModule",{value:!0});BX.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 x7e=_(LX=>{"use strict";Object.defineProperty(LX,"__esModule",{value:!0});LX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","SETNAME",e)},transformReply:void 0}});var b7e=_(MX=>{"use strict";Object.defineProperty(MX,"__esModule",{value:!0});MX.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()),spr(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 ipr(r)?t.push("OPTIN"):apr(r)&&t.push("OPTOUT");r?.NOLOOP&&t.push("NOLOOP")}},transformReply:void 0};function spr(t){return t?.BCAST===!0}function ipr(t){return t?.OPTIN===!0}function apr(t){return t?.OPTOUT===!0}});var _7e=_(WX=>{"use strict";Object.defineProperty(WX,"__esModule",{value:!0});WX.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 E7e=_($X=>{"use strict";Object.defineProperty($X,"__esModule",{value:!0});$X.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","UNPAUSE")},transformReply:void 0}});var v7e=_(UX=>{"use strict";Object.defineProperty(UX,"__esModule",{value:!0});UX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var S7e=_(FX=>{"use strict";Object.defineProperty(FX,"__esModule",{value:!0});var opr=we();FX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTSRANGE"),(0,opr.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var I7e=_(qX=>{"use strict";Object.defineProperty(qX,"__esModule",{value:!0});qX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","BUMPEPOCH")},transformReply:void 0}});var C7e=_(jX=>{"use strict";Object.defineProperty(jX,"__esModule",{value:!0});jX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNT-FAILURE-REPORTS",e)},transformReply:void 0}});var T7e=_(QX=>{"use strict";Object.defineProperty(QX,"__esModule",{value:!0});QX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNTKEYSINSLOT",e.toString())},transformReply:void 0}});var w7e=_(HX=>{"use strict";Object.defineProperty(HX,"__esModule",{value:!0});HX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var R7e=_(GX=>{"use strict";Object.defineProperty(GX,"__esModule",{value:!0});var cpr=we();GX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTSRANGE"),(0,cpr.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var N7e=_(i2=>{"use strict";Object.defineProperty(i2,"__esModule",{value:!0});i2.FAILOVER_MODES=void 0;i2.FAILOVER_MODES={FORCE:"FORCE",TAKEOVER:"TAKEOVER"};i2.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 O7e=_(VX=>{"use strict";Object.defineProperty(VX,"__esModule",{value:!0});VX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","FLUSHSLOTS")},transformReply:void 0}});var k7e=_(KX=>{"use strict";Object.defineProperty(KX,"__esModule",{value:!0});KX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FORGET",e)},transformReply:void 0}});var P7e=_(zX=>{"use strict";Object.defineProperty(zX,"__esModule",{value:!0});zX.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 D7e=_(YX=>{"use strict";Object.defineProperty(YX,"__esModule",{value:!0});YX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","INFO")},transformReply:void 0}});var B7e=_(JX=>{"use strict";Object.defineProperty(JX,"__esModule",{value:!0});JX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","KEYSLOT",e)},transformReply:void 0}});var L7e=_(XX=>{"use strict";Object.defineProperty(XX,"__esModule",{value:!0});XX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("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 M7e=_(ZX=>{"use strict";Object.defineProperty(ZX,"__esModule",{value:!0});ZX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","MEET",e,r.toString())},transformReply:void 0}});var W7e=_(eZ=>{"use strict";Object.defineProperty(eZ,"__esModule",{value:!0});eZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYID")},transformReply:void 0}});var $7e=_(tZ=>{"use strict";Object.defineProperty(tZ,"__esModule",{value:!0});tZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYSHARDID")},transformReply:void 0}});var U7e=_(rZ=>{"use strict";Object.defineProperty(rZ,"__esModule",{value:!0});rZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","NODES")},transformReply:void 0}});var F7e=_(nZ=>{"use strict";Object.defineProperty(nZ,"__esModule",{value:!0});nZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICAS",e)},transformReply:void 0}});var q7e=_(sZ=>{"use strict";Object.defineProperty(sZ,"__esModule",{value:!0});sZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICATE",e)},transformReply:void 0}});var j7e=_(iZ=>{"use strict";Object.defineProperty(iZ,"__esModule",{value:!0});iZ.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 Q7e=_(aZ=>{"use strict";Object.defineProperty(aZ,"__esModule",{value:!0});aZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SAVECONFIG")},transformReply:void 0}});var H7e=_(oZ=>{"use strict";Object.defineProperty(oZ,"__esModule",{value:!0});oZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","SET-CONFIG-EPOCH",e.toString())},transformReply:void 0}});var G7e=_(a2=>{"use strict";Object.defineProperty(a2,"__esModule",{value:!0});a2.CLUSTER_SLOT_STATES=void 0;a2.CLUSTER_SLOT_STATES={IMPORTING:"IMPORTING",MIGRATING:"MIGRATING",STABLE:"STABLE",NODE:"NODE"};a2.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 K7e=_(cZ=>{"use strict";Object.defineProperty(cZ,"__esModule",{value:!0});cZ.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:V7e(n),replicas:s.map(V7e)}))}};function V7e(t){let[e,r,n]=t;return{host:e,port:r,id:n}}});var z7e=_(uZ=>{"use strict";Object.defineProperty(uZ,"__esModule",{value:!0});uZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND","COUNT")},transformReply:void 0}});var Y7e=_(lZ=>{"use strict";Object.defineProperty(lZ,"__esModule",{value:!0});lZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYS"),t.push(...e)},transformReply:void 0}});var J7e=_(dZ=>{"use strict";Object.defineProperty(dZ,"__esModule",{value:!0});dZ.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 X7e=_(fZ=>{"use strict";Object.defineProperty(fZ,"__esModule",{value:!0});var upr=we();fZ.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,upr.transformCommandReply)(e):null)}}});var Z7e=_(o2=>{"use strict";Object.defineProperty(o2,"__esModule",{value:!0});o2.COMMAND_LIST_FILTER_BY=void 0;o2.COMMAND_LIST_FILTER_BY={MODULE:"MODULE",ACLCAT:"ACLCAT",PATTERN:"PATTERN"};o2.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 e9e=_(pZ=>{"use strict";Object.defineProperty(pZ,"__esModule",{value:!0});var lpr=we();pZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND")},transformReply(t){return t.map(lpr.transformCommandReply)}}});var t9e=_(mZ=>{"use strict";Object.defineProperty(mZ,"__esModule",{value:!0});var dpr=we();mZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CONFIG","GET"),t.pushVariadic(e)},transformReply:{2:dpr.transformTuplesReply,3:void 0}}});var r9e=_(hZ=>{"use strict";Object.defineProperty(hZ,"__esModule",{value:!0});hZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","RESETSTAT")},transformReply:void 0}});var n9e=_(gZ=>{"use strict";Object.defineProperty(gZ,"__esModule",{value:!0});gZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","REWRITE")},transformReply:void 0}});var s9e=_(yZ=>{"use strict";Object.defineProperty(yZ,"__esModule",{value:!0});yZ.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 i9e=_(AZ=>{"use strict";Object.defineProperty(AZ,"__esModule",{value:!0});AZ.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 a9e=_(xZ=>{"use strict";Object.defineProperty(xZ,"__esModule",{value:!0});xZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("DBSIZE")},transformReply:void 0}});var o9e=_(bZ=>{"use strict";Object.defineProperty(bZ,"__esModule",{value:!0});bZ.default={parseCommand(t,e){t.push("DECR"),t.pushKey(e)},transformReply:void 0}});var c9e=_(_Z=>{"use strict";Object.defineProperty(_Z,"__esModule",{value:!0});_Z.default={parseCommand(t,e,r){t.push("DECRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var u9e=_(EZ=>{"use strict";Object.defineProperty(EZ,"__esModule",{value:!0});EZ.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("DEL"),t.pushKeys(e)},transformReply:void 0}});var l9e=_(c2=>{"use strict";Object.defineProperty(c2,"__esModule",{value:!0});c2.DelexCondition=void 0;c2.DelexCondition={IFEQ:"IFEQ",IFNE:"IFNE",IFDEQ:"IFDEQ",IFDNE:"IFDNE"};c2.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 d9e=_(vZ=>{"use strict";Object.defineProperty(vZ,"__esModule",{value:!0});vZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DIGEST"),t.pushKey(e)},transformReply:void 0}});var f9e=_(SZ=>{"use strict";Object.defineProperty(SZ,"__esModule",{value:!0});SZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DUMP"),t.pushKey(e)},transformReply:void 0}});var p9e=_(IZ=>{"use strict";Object.defineProperty(IZ,"__esModule",{value:!0});IZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ECHO",e)},transformReply:void 0}});var Wg=_(u2=>{"use strict";Object.defineProperty(u2,"__esModule",{value:!0});u2.parseEvalArguments=void 0;function m9e(t,e,r){t.push(e),r?.keys?t.pushKeysLength(r.keys):t.push("0"),r?.arguments&&t.push(...r.arguments)}u2.parseEvalArguments=m9e;u2.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVAL"),m9e(...t)},transformReply:void 0}});var g9e=_(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]}),ppr=Bf&&Bf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),mpr=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 ppr(e,t),e};Object.defineProperty(Bf,"__esModule",{value:!0});var h9e=mpr(Wg());Bf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVAL_RO"),(0,h9e.parseEvalArguments)(...t)},transformReply:h9e.default.transformReply}});var A9e=_(Lf=>{"use strict";var hpr=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]}),gpr=Lf&&Lf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),ypr=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)&&hpr(e,t,r);return gpr(e,t),e};Object.defineProperty(Lf,"__esModule",{value:!0});var y9e=ypr(Wg());Lf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVALSHA_RO"),(0,y9e.parseEvalArguments)(...t)},transformReply:y9e.default.transformReply}});var b9e=_(Mf=>{"use strict";var Apr=Mf&&Mf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),xpr=Mf&&Mf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),bpr=Mf&&Mf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Apr(e,t,r);return xpr(e,t),e};Object.defineProperty(Mf,"__esModule",{value:!0});var x9e=bpr(Wg());Mf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVALSHA"),(0,x9e.parseEvalArguments)(...t)},transformReply:x9e.default.transformReply}});var E9e=_(CZ=>{"use strict";Object.defineProperty(CZ,"__esModule",{value:!0});CZ.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)_9e(t,s);else _9e(t,r)},transformReply:void 0};function _9e(t,{longitude:e,latitude:r,member:n}){t.push(e.toString(),r.toString(),n)}});var v9e=_(TZ=>{"use strict";Object.defineProperty(TZ,"__esModule",{value:!0});TZ.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 S9e=_(wZ=>{"use strict";Object.defineProperty(wZ,"__esModule",{value:!0});wZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOHASH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var I9e=_(RZ=>{"use strict";Object.defineProperty(RZ,"__esModule",{value:!0});RZ.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 Ug=_($g=>{"use strict";Object.defineProperty($g,"__esModule",{value:!0});$g.parseGeoSearchOptions=$g.parseGeoSearchArguments=void 0;function C9e(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),T9e(t,s)}$g.parseGeoSearchArguments=C9e;function T9e(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")))}$g.parseGeoSearchOptions=T9e;$g.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEOSEARCH"),C9e(t,e,r,n,s)},transformReply:void 0}});var d2=_(l2=>{"use strict";Object.defineProperty(l2,"__esModule",{value:!0});l2.parseGeoRadiusArguments=void 0;var _pr=Ug();function w9e(t,e,r,n,s,i){t.pushKey(e),t.push(r.longitude.toString(),r.latitude.toString(),n.toString(),s),(0,_pr.parseGeoSearchOptions)(t,i)}l2.parseGeoRadiusArguments=w9e;l2.default={IS_READ_ONLY:!1,parseCommand(...t){return t[0].push("GEORADIUS"),w9e(...t)},transformReply:void 0}});var f2=_(Jl=>{"use strict";var Epr=Jl&&Jl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Jl,"__esModule",{value:!0});Jl.GEO_REPLY_WITH=void 0;var R9e=Epr(Ug());Jl.GEO_REPLY_WITH={DISTANCE:"WITHDIST",HASH:"WITHHASH",COORDINATES:"WITHCOORD"};Jl.default={IS_READ_ONLY:R9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i){R9e.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(Jl.GEO_REPLY_WITH.DISTANCE)&&++n,i=r.has(Jl.GEO_REPLY_WITH.HASH)&&++n,a=r.has(Jl.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 QL=_(jo=>{"use strict";var vpr=jo&&jo.__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]}),Spr=jo&&jo.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ipr=jo&&jo.__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)&&vpr(e,t,r);return Spr(e,t),e},Cpr=jo&&jo.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jo,"__esModule",{value:!0});jo.parseGeoRadiusWithArguments=void 0;var N9e=Ipr(d2()),Tpr=Cpr(f2());function O9e(t,e,r,n,s,i,a){(0,N9e.parseGeoRadiusArguments)(t,e,r,n,s,a),t.pushVariadic(i),t.preserve=i}jo.parseGeoRadiusWithArguments=O9e;jo.default={IS_READ_ONLY:N9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),O9e(t,e,r,n,s,i,a)},transformReply:Tpr.default.transformReply}});var k9e=_(p2=>{"use strict";var wpr=p2&&p2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(p2,"__esModule",{value:!0});var Rpr=QL(),Npr=wpr(QL());p2.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,Rpr.parseGeoRadiusWithArguments)(...t)},transformReply:Npr.default.transformReply}});var D9e=_(Wf=>{"use strict";var Opr=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]}),kpr=Wf&&Wf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ppr=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)&&Opr(e,t,r);return kpr(e,t),e};Object.defineProperty(Wf,"__esModule",{value:!0});var P9e=Ppr(d2());Wf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,P9e.parseGeoRadiusArguments)(...t)},transformReply:P9e.default.transformReply}});var L9e=_($f=>{"use strict";var Dpr=$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]}),Bpr=$f&&$f.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Lpr=$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)&&Dpr(e,t,r);return Bpr(e,t),e};Object.defineProperty($f,"__esModule",{value:!0});var B9e=Lpr(d2());$f.default={IS_READ_ONLY:B9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),(0,B9e.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 h2=_(m2=>{"use strict";Object.defineProperty(m2,"__esModule",{value:!0});m2.parseGeoRadiusByMemberArguments=void 0;var Mpr=Ug();function M9e(t,e,r,n,s,i){t.pushKey(e),t.push(r,n.toString(),s),(0,Mpr.parseGeoSearchOptions)(t,i)}m2.parseGeoRadiusByMemberArguments=M9e;m2.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEORADIUSBYMEMBER"),M9e(t,e,r,n,s,i)},transformReply:void 0}});var NZ=_(Fg=>{"use strict";var W9e=Fg&&Fg.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Fg,"__esModule",{value:!0});Fg.parseGeoRadiusByMemberWithArguments=void 0;var Wpr=W9e(h2()),$pr=Ug(),Upr=W9e(f2());function $9e(t,e,r,n,s,i,a){t.pushKey(e),t.push(r,n.toString(),s),(0,$pr.parseGeoSearchOptions)(t,a),t.push(...i),t.preserve=i}Fg.parseGeoRadiusByMemberWithArguments=$9e;Fg.default={IS_READ_ONLY:Wpr.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),$9e(t,e,r,n,s,i,a)},transformReply:Upr.default.transformReply}});var F9e=_(Uf=>{"use strict";var Fpr=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]}),qpr=Uf&&Uf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),jpr=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)&&Fpr(e,t,r);return qpr(e,t),e};Object.defineProperty(Uf,"__esModule",{value:!0});var U9e=jpr(NZ());Uf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,U9e.parseGeoRadiusByMemberWithArguments)(...t)},transformReply:U9e.default.transformReply}});var j9e=_(Ff=>{"use strict";var Qpr=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]}),Hpr=Ff&&Ff.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Gpr=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)&&Qpr(e,t,r);return Hpr(e,t),e};Object.defineProperty(Ff,"__esModule",{value:!0});var q9e=Gpr(h2());Ff.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,q9e.parseGeoRadiusByMemberArguments)(...t)},transformReply:q9e.default.transformReply}});var H9e=_(qf=>{"use strict";var Vpr=qf&&qf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Kpr=qf&&qf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),zpr=qf&&qf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Vpr(e,t,r);return Kpr(e,t),e};Object.defineProperty(qf,"__esModule",{value:!0});var Q9e=zpr(h2());qf.default={IS_READ_ONLY:Q9e.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),(0,Q9e.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 G9e=_(OZ=>{"use strict";Object.defineProperty(OZ,"__esModule",{value:!0});var Ypr=Ug();OZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEOSEARCHSTORE"),e!==void 0&&t.pushKey(e),(0,Ypr.parseGeoSearchArguments)(t,r,n,s,i),i?.STOREDIST&&t.push("STOREDIST")},transformReply:void 0}});var V9e=_(kZ=>{"use strict";Object.defineProperty(kZ,"__esModule",{value:!0});kZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("GET"),t.pushKey(e)},transformReply:void 0}});var K9e=_(PZ=>{"use strict";Object.defineProperty(PZ,"__esModule",{value:!0});PZ.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 z9e=_(DZ=>{"use strict";Object.defineProperty(DZ,"__esModule",{value:!0});DZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("GETDEL"),t.pushKey(e)},transformReply:void 0}});var Y9e=_(LZ=>{"use strict";Object.defineProperty(LZ,"__esModule",{value:!0});var BZ=we();LZ.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,BZ.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,BZ.transformEXAT)(r.EXAT)):"PXAT"in r?t.push("PXAT",(0,BZ.transformPXAT)(r.PXAT)):t.push("PERSIST")},transformReply:void 0}});var J9e=_(MZ=>{"use strict";Object.defineProperty(MZ,"__esModule",{value:!0});MZ.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 X9e=_(WZ=>{"use strict";Object.defineProperty(WZ,"__esModule",{value:!0});WZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETSET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Z9e=_($Z=>{"use strict";Object.defineProperty($Z,"__esModule",{value:!0});$Z.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXISTS"),t.pushKeys(e)},transformReply:void 0}});var eqe=_(UZ=>{"use strict";Object.defineProperty(UZ,"__esModule",{value:!0});UZ.default={parseCommand(t,e,r,n){t.push("EXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var tqe=_(FZ=>{"use strict";Object.defineProperty(FZ,"__esModule",{value:!0});var Jpr=we();FZ.default={parseCommand(t,e,r,n){t.push("EXPIREAT"),t.pushKey(e),t.push((0,Jpr.transformEXAT)(r)),n&&t.push(n)},transformReply:void 0}});var rqe=_(qZ=>{"use strict";Object.defineProperty(qZ,"__esModule",{value:!0});qZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var nqe=_(g2=>{"use strict";Object.defineProperty(g2,"__esModule",{value:!0});g2.REDIS_FLUSH_MODES=void 0;g2.REDIS_FLUSH_MODES={ASYNC:"ASYNC",SYNC:"SYNC"};g2.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHALL"),e&&t.push(e)},transformReply:void 0}});var sqe=_(jZ=>{"use strict";Object.defineProperty(jZ,"__esModule",{value:!0});jZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHDB"),e&&t.push(e)},transformReply:void 0}});var aqe=_(jf=>{"use strict";var Xpr=jf&&jf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Zpr=jf&&jf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),e0r=jf&&jf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Xpr(e,t,r);return Zpr(e,t),e};Object.defineProperty(jf,"__esModule",{value:!0});var iqe=e0r(Wg());jf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL"),(0,iqe.parseEvalArguments)(...t)},transformReply:iqe.default.transformReply}});var cqe=_(Qf=>{"use strict";var t0r=Qf&&Qf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),r0r=Qf&&Qf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),n0r=Qf&&Qf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&t0r(e,t,r);return r0r(e,t),e};Object.defineProperty(Qf,"__esModule",{value:!0});var oqe=n0r(Wg());Qf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL_RO"),(0,oqe.parseEvalArguments)(...t)},transformReply:oqe.default.transformReply}});var uqe=_(QZ=>{"use strict";Object.defineProperty(QZ,"__esModule",{value:!0});QZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","DELETE",e)},transformReply:void 0}});var lqe=_(HZ=>{"use strict";Object.defineProperty(HZ,"__esModule",{value:!0});HZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","DUMP")},transformReply:void 0}});var dqe=_(GZ=>{"use strict";Object.defineProperty(GZ,"__esModule",{value:!0});GZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","FLUSH"),e&&t.push(e)},transformReply:void 0}});var fqe=_(VZ=>{"use strict";Object.defineProperty(VZ,"__esModule",{value:!0});VZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","KILL")},transformReply:void 0}});var zZ=_(KZ=>{"use strict";Object.defineProperty(KZ,"__esModule",{value:!0});KZ.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 pqe=_(y2=>{"use strict";var s0r=y2&&y2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(y2,"__esModule",{value:!0});var YZ=s0r(zZ());y2.default={NOT_KEYED_COMMAND:YZ.default.NOT_KEYED_COMMAND,IS_READ_ONLY:YZ.default.IS_READ_ONLY,parseCommand(...t){YZ.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 mqe=_(JZ=>{"use strict";Object.defineProperty(JZ,"__esModule",{value:!0});JZ.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 hqe=_(XZ=>{"use strict";Object.defineProperty(XZ,"__esModule",{value:!0});XZ.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 gqe=_(ZZ=>{"use strict";Object.defineProperty(ZZ,"__esModule",{value:!0});var i0r=we();ZZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","STATS")},transformReply:{2:t=>({running_script:a0r(t[1]),engines:o0r(t[3])}),3:void 0}};function a0r(t){if((0,i0r.isNullReply)(t))return null;let e=t;return{name:e[1],command:e[3],duration_ms:e[5]}}function o0r(t){let e=t,r=Object.create(null);for(let n=0;n<e.length;n++){let s=e[n],i=e[++n],a=i;r[s.toString()]={libraries_count:a[1],functions_count:a[3]}}return r}});var yqe=_(eee=>{"use strict";Object.defineProperty(eee,"__esModule",{value:!0});eee.default={parseCommand(t,e,r){t.push("HDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var ree=_(tee=>{"use strict";Object.defineProperty(tee,"__esModule",{value:!0});tee.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 Aqe=_(nee=>{"use strict";Object.defineProperty(nee,"__esModule",{value:!0});nee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXISTS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var xqe=_(A2=>{"use strict";Object.defineProperty(A2,"__esModule",{value:!0});A2.HASH_EXPIRATION=void 0;A2.HASH_EXPIRATION={FIELD_NOT_EXISTS:-2,CONDITION_NOT_MET:0,UPDATED:1,DELETED:2};A2.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 bqe=_(see=>{"use strict";Object.defineProperty(see,"__esModule",{value:!0});var c0r=we();see.default={parseCommand(t,e,r,n,s){t.push("HEXPIREAT"),t.pushKey(e),t.push((0,c0r.transformEXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var _qe=_(x2=>{"use strict";Object.defineProperty(x2,"__esModule",{value:!0});x2.HASH_EXPIRATION_TIME=void 0;x2.HASH_EXPIRATION_TIME={FIELD_NOT_EXISTS:-2,NO_EXPIRATION:-1};x2.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 Eqe=_(iee=>{"use strict";Object.defineProperty(iee,"__esModule",{value:!0});iee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HGET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var vqe=_(aee=>{"use strict";Object.defineProperty(aee,"__esModule",{value:!0});var u0r=we();aee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HGETALL"),t.pushKey(e)},TRANSFORM_LEGACY_REPLY:!0,transformReply:{2:u0r.transformTuplesReply,3:void 0}}});var Sqe=_(oee=>{"use strict";Object.defineProperty(oee,"__esModule",{value:!0});oee.default={parseCommand(t,e,r){t.push("HGETDEL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var Iqe=_(cee=>{"use strict";Object.defineProperty(cee,"__esModule",{value:!0});cee.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 Cqe=_(uee=>{"use strict";Object.defineProperty(uee,"__esModule",{value:!0});uee.default={parseCommand(t,e,r,n){t.push("HINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var Tqe=_(lee=>{"use strict";Object.defineProperty(lee,"__esModule",{value:!0});lee.default={parseCommand(t,e,r,n){t.push("HINCRBYFLOAT"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var wqe=_(dee=>{"use strict";Object.defineProperty(dee,"__esModule",{value:!0});dee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HKEYS"),t.pushKey(e)},transformReply:void 0}});var Rqe=_(fee=>{"use strict";Object.defineProperty(fee,"__esModule",{value:!0});fee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HLEN"),t.pushKey(e)},transformReply:void 0}});var Nqe=_(pee=>{"use strict";Object.defineProperty(pee,"__esModule",{value:!0});pee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HMGET"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var Oqe=_(mee=>{"use strict";Object.defineProperty(mee,"__esModule",{value:!0});mee.default={parseCommand(t,e,r){t.push("HPERSIST"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var kqe=_(hee=>{"use strict";Object.defineProperty(hee,"__esModule",{value:!0});hee.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 Pqe=_(gee=>{"use strict";Object.defineProperty(gee,"__esModule",{value:!0});var l0r=we();gee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("HPEXPIREAT"),t.pushKey(e),t.push((0,l0r.transformPXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var Dqe=_(yee=>{"use strict";Object.defineProperty(yee,"__esModule",{value:!0});yee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var Bqe=_(Aee=>{"use strict";Object.defineProperty(Aee,"__esModule",{value:!0});Aee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var Lqe=_(xee=>{"use strict";Object.defineProperty(xee,"__esModule",{value:!0});xee.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(;r<t.length;)e.push({field:t[r++],value:t[r++]});return e},3:t=>t.map(e=>{let[r,n]=e;return{field:r,value:n}})}}});var Mqe=_(bee=>{"use strict";Object.defineProperty(bee,"__esModule",{value:!0});bee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var Wqe=_(_ee=>{"use strict";Object.defineProperty(_ee,"__esModule",{value:!0});_ee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("HRANDFIELD"),t.pushKey(e)},transformReply:void 0}});var b2=_(qg=>{"use strict";Object.defineProperty(qg,"__esModule",{value:!0});qg.pushScanArguments=qg.parseScanArguments=void 0;function $qe(t,e,r){t.push(e),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString())}qg.parseScanArguments=$qe;function d0r(t,e,r){return t.push(e.toString()),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString()),t}qg.pushScanArguments=d0r;qg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SCAN"),$qe(t,e,r),r?.TYPE&&t.push("TYPE",r.TYPE)},transformReply([t,e]){return{cursor:t,keys:e}}}});var vee=_(Eee=>{"use strict";Object.defineProperty(Eee,"__esModule",{value:!0});var f0r=b2();Eee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSCAN"),t.pushKey(e),(0,f0r.parseScanArguments)(t,r,n)},transformReply([t,e]){let r=[],n=0;for(;n<e.length;)r.push({field:e[n++],value:e[n++]});return{cursor:t,entries:r}}}});var Uqe=_(_2=>{"use strict";var p0r=_2&&_2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_2,"__esModule",{value:!0});var m0r=p0r(vee());_2.default={IS_READ_ONLY:!0,parseCommand(...t){let e=t[0];m0r.default.parseCommand(...t),e.push("NOVALUES")},transformReply([t,e]){return{cursor:t,fields:e}}}});var qqe=_(See=>{"use strict";Object.defineProperty(See,"__esModule",{value:!0});See.default={parseCommand(t,...[e,r,n]){t.push("HSET"),t.pushKey(e),typeof r=="string"||typeof r=="number"||r instanceof Buffer?t.push(jg(r),jg(n)):r instanceof Map?h0r(t,r):Array.isArray(r)?Fqe(t,r):g0r(t,r)},transformReply:void 0};function h0r(t,e){for(let[r,n]of e.entries())t.push(jg(r),jg(n))}function Fqe(t,e){for(let r of e){if(Array.isArray(r)){Fqe(t,r);continue}t.push(jg(r))}}function g0r(t,e){for(let r of Object.keys(e))t.push(jg(r),jg(e[r]))}function jg(t){return typeof t=="number"?t.toString():t}});var Qqe=_(Iee=>{"use strict";Object.defineProperty(Iee,"__esModule",{value:!0});var y0r=Yl();Iee.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?A0r(t,r):Array.isArray(r)?x0r(t,r):b0r(t,r)},transformReply:void 0};function A0r(t,e){t.push(e.size.toString());for(let[r,n]of e.entries())t.push(E2(r),E2(n))}function x0r(t,e){let r=new y0r.BasicCommandParser;if(jqe(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 jqe(t,e){for(let r of e){if(Array.isArray(r)){jqe(t,r);continue}t.push(E2(r))}}function b0r(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(E2(n),E2(e[n]))}function E2(t){return typeof t=="number"?t.toString():t}});var Hqe=_(Cee=>{"use strict";Object.defineProperty(Cee,"__esModule",{value:!0});Cee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSETNX"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var Gqe=_(Tee=>{"use strict";Object.defineProperty(Tee,"__esModule",{value:!0});Tee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HSTRLEN"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Vqe=_(wee=>{"use strict";Object.defineProperty(wee,"__esModule",{value:!0});wee.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 Kqe=_(Ree=>{"use strict";Object.defineProperty(Ree,"__esModule",{value:!0});Ree.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HVALS"),t.pushKey(e)},transformReply:void 0}});var Yqe=_(Nee=>{"use strict";Object.defineProperty(Nee,"__esModule",{value:!0});function zqe(t){let e=[];for(let r=0;r<t.length;r+=2)e.push({key:t[r].toString(),value:Number(t[r+1])});return e}function _0r(t){return t.map(e=>{let r=e;return r.length===1?{start:Number(r[0]),end:Number(r[0])}:{start:Number(r[0]),end:Number(r[1])}})}function E0r(t){let e={},r=t[0];for(let n=0;n<r.length;n+=2){let s=r[n].toString(),i=r[n+1];switch(s){case"tracking-active":e.trackingActive=Number(i);break;case"sample-ratio":e.sampleRatio=Number(i);break;case"selected-slots":e.selectedSlots=_0r(i);break;case"sampled-commands-selected-slots-us":e.sampledCommandsSelectedSlotsUs=Number(i);break;case"all-commands-selected-slots-us":e.allCommandsSelectedSlotsUs=Number(i);break;case"all-commands-all-slots-us":e.allCommandsAllSlotsUs=Number(i);break;case"net-bytes-sampled-commands-selected-slots":e.netBytesSampledCommandsSelectedSlots=Number(i);break;case"net-bytes-all-commands-selected-slots":e.netBytesAllCommandsSelectedSlots=Number(i);break;case"net-bytes-all-commands-all-slots":e.netBytesAllCommandsAllSlots=Number(i);break;case"collection-start-time-unix-ms":e.collectionStartTimeUnixMs=Number(i);break;case"collection-duration-ms":e.collectionDurationMs=Number(i);break;case"total-cpu-time-sys-ms":e.totalCpuTimeSysMs=Number(i);break;case"total-cpu-time-user-ms":e.totalCpuTimeUserMs=Number(i);break;case"total-net-bytes":e.totalNetBytes=Number(i);break;case"by-cpu-time-us":e.byCpuTimeUs=zqe(i);break;case"by-net-bytes":e.byNetBytes=zqe(i);break}}return e}Nee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("HOTKEYS","GET")},transformReply:{2:t=>t===null?null:E0r(t),3:void 0},unstableResp3:!0}});var Jqe=_(Oee=>{"use strict";Object.defineProperty(Oee,"__esModule",{value:!0});Oee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","RESET")},transformReply:void 0}});var Xqe=_(v2=>{"use strict";Object.defineProperty(v2,"__esModule",{value:!0});v2.HOTKEYS_METRICS=void 0;v2.HOTKEYS_METRICS={CPU:"CPU",NET:"NET"};v2.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 Zqe=_(kee=>{"use strict";Object.defineProperty(kee,"__esModule",{value:!0});kee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","STOP")},transformReply:void 0}});var eje=_(Pee=>{"use strict";Object.defineProperty(Pee,"__esModule",{value:!0});Pee.default={parseCommand(t,e){t.push("INCR"),t.pushKey(e)},transformReply:void 0}});var tje=_(Dee=>{"use strict";Object.defineProperty(Dee,"__esModule",{value:!0});Dee.default={parseCommand(t,e,r){t.push("INCRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var rje=_(Bee=>{"use strict";Object.defineProperty(Bee,"__esModule",{value:!0});Bee.default={parseCommand(t,e,r){t.push("INCRBYFLOAT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var nje=_(Lee=>{"use strict";Object.defineProperty(Lee,"__esModule",{value:!0});Lee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("INFO"),e&&t.push(e)},transformReply:void 0}});var sje=_(Mee=>{"use strict";Object.defineProperty(Mee,"__esModule",{value:!0});Mee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("KEYS",e)},transformReply:void 0}});var ije=_(Wee=>{"use strict";Object.defineProperty(Wee,"__esModule",{value:!0});Wee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LASTSAVE")},transformReply:void 0}});var aje=_($ee=>{"use strict";Object.defineProperty($ee,"__esModule",{value:!0});$ee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","DOCTOR")},transformReply:void 0}});var Uee=_(S2=>{"use strict";Object.defineProperty(S2,"__esModule",{value:!0});S2.LATENCY_EVENTS=void 0;S2.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"};S2.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","GRAPH",e)},transformReply:void 0}});var oje=_(Fee=>{"use strict";Object.defineProperty(Fee,"__esModule",{value:!0});Fee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","HISTORY",e)},transformReply:void 0}});var cje=_(qee=>{"use strict";Object.defineProperty(qee,"__esModule",{value:!0});qee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","LATEST")},transformReply:void 0}});var uje=_(I2=>{"use strict";Object.defineProperty(I2,"__esModule",{value:!0});I2.LATENCY_EVENTS=void 0;var v0r=Uee();Object.defineProperty(I2,"LATENCY_EVENTS",{enumerable:!0,get:function(){return v0r.LATENCY_EVENTS}});I2.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 HL=_(jee=>{"use strict";Object.defineProperty(jee,"__esModule",{value:!0});jee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LCS"),t.pushKeys([e,r])},transformReply:void 0}});var Qee=_(C2=>{"use strict";var S0r=C2&&C2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(C2,"__esModule",{value:!0});var lje=S0r(HL());C2.default={IS_READ_ONLY:lje.default.IS_READ_ONLY,parseCommand(t,e,r,n){lje.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 fje=_(T2=>{"use strict";var I0r=T2&&T2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(T2,"__esModule",{value:!0});var dje=I0r(Qee());T2.default={IS_READ_ONLY:dje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];dje.default.parseCommand(...t),e.push("WITHMATCHLEN")},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var mje=_(w2=>{"use strict";var C0r=w2&&w2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(w2,"__esModule",{value:!0});var pje=C0r(HL());w2.default={IS_READ_ONLY:pje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];pje.default.parseCommand(...t),e.push("LEN")},transformReply:void 0}});var hje=_(Hee=>{"use strict";Object.defineProperty(Hee,"__esModule",{value:!0});Hee.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 gje=_(Gee=>{"use strict";Object.defineProperty(Gee,"__esModule",{value:!0});Gee.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 yje=_(Vee=>{"use strict";Object.defineProperty(Vee,"__esModule",{value:!0});Vee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LLEN"),t.pushKey(e)},transformReply:void 0}});var Aje=_(Kee=>{"use strict";Object.defineProperty(Kee,"__esModule",{value:!0});Kee.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 xje=_(zee=>{"use strict";Object.defineProperty(zee,"__esModule",{value:!0});zee.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 Jee=_(Yee=>{"use strict";Object.defineProperty(Yee,"__esModule",{value:!0});Yee.default={parseCommand(t,e){t.push("LPOP"),t.pushKey(e)},transformReply:void 0}});var bje=_(R2=>{"use strict";var T0r=R2&&R2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(R2,"__esModule",{value:!0});var w0r=T0r(Jee());R2.default={IS_READ_ONLY:!1,parseCommand(t,e,r){w0r.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var Zee=_(Xee=>{"use strict";Object.defineProperty(Xee,"__esModule",{value:!0});Xee.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 _je=_(N2=>{"use strict";var R0r=N2&&N2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(N2,"__esModule",{value:!0});var ete=R0r(Zee());N2.default={CACHEABLE:ete.default.CACHEABLE,IS_READ_ONLY:ete.default.IS_READ_ONLY,parseCommand(t,e,r,n,s){ete.default.parseCommand(t,e,r,s),t.push("COUNT",n.toString())},transformReply:void 0}});var Eje=_(tte=>{"use strict";Object.defineProperty(tte,"__esModule",{value:!0});tte.default={parseCommand(t,e,r){t.push("LPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var vje=_(rte=>{"use strict";Object.defineProperty(rte,"__esModule",{value:!0});rte.default={parseCommand(t,e,r){t.push("LPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var Sje=_(nte=>{"use strict";Object.defineProperty(nte,"__esModule",{value:!0});nte.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 Ije=_(ste=>{"use strict";Object.defineProperty(ste,"__esModule",{value:!0});ste.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 Cje=_(ite=>{"use strict";Object.defineProperty(ite,"__esModule",{value:!0});ite.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 Tje=_(ate=>{"use strict";Object.defineProperty(ate,"__esModule",{value:!0});ate.default={parseCommand(t,e,r,n){t.push("LTRIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var wje=_(ote=>{"use strict";Object.defineProperty(ote,"__esModule",{value:!0});ote.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","DOCTOR")},transformReply:void 0}});var Rje=_(cte=>{"use strict";Object.defineProperty(cte,"__esModule",{value:!0});cte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","MALLOC-STATS")},transformReply:void 0}});var Nje=_(ute=>{"use strict";Object.defineProperty(ute,"__esModule",{value:!0});ute.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("MEMORY","PURGE")},transformReply:void 0}});var Oje=_(lte=>{"use strict";Object.defineProperty(lte,"__esModule",{value:!0});var N0r=we();lte.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<t.length;)switch(t[s].toString()){case"dataset.percentage":case"peak.percentage":case"allocator-fragmentation.ratio":case"allocator-rss.ratio":case"rss-overhead.ratio":case"fragmentation":n[t[s++]]=N0r.transformDoubleReply[2](t[s++],e,r);break;default:n[t[s++]]=t[s++]}return n},3:void 0}}});var kje=_(dte=>{"use strict";Object.defineProperty(dte,"__esModule",{value:!0});dte.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 Pje=_(fte=>{"use strict";Object.defineProperty(fte,"__esModule",{value:!0});fte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MGET"),t.pushKeys(e)},transformReply:void 0}});var Dje=_(pte=>{"use strict";Object.defineProperty(pte,"__esModule",{value:!0});pte.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 Bje=_(mte=>{"use strict";Object.defineProperty(mte,"__esModule",{value:!0});mte.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 Lje=_(hte=>{"use strict";Object.defineProperty(hte,"__esModule",{value:!0});hte.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 Mje=_(gte=>{"use strict";Object.defineProperty(gte,"__esModule",{value:!0});gte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MODULE","UNLOAD",e)},transformReply:void 0}});var Wje=_(yte=>{"use strict";Object.defineProperty(yte,"__esModule",{value:!0});yte.default={parseCommand(t,e,r){t.push("MOVE"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var Ate=_(O2=>{"use strict";Object.defineProperty(O2,"__esModule",{value:!0});O2.parseMSetArguments=void 0;function $je(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<r.length;n+=2)t.pushKey(r[n]),t.push(r[n+1])}}else for(let r of Object.entries(e))t.pushKey(r[0]),t.push(r[1])}O2.parseMSetArguments=$je;O2.default={IS_READ_ONLY:!0,parseCommand(t,e){return t.push("MSET"),$je(t,e)},transformReply:void 0}});var qje=_(Ti=>{"use strict";Object.defineProperty(Ti,"__esModule",{value:!0});Ti.parseMSetExArguments=Ti.ExpirationMode=Ti.SetMode=void 0;var Uje=we();Ti.SetMode={XX:"XX",NX:"NX"};Ti.ExpirationMode={EX:"EX",PX:"PX",EXAT:"EXAT",PXAT:"PXAT",KEEPTTL:"KEEPTTL"};function Fje(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<n.length;s+=2)r.push([n[s],n[s+1]])}}else for(let n of Object.entries(e))r.push([n[0],n[1]]);t.push(r.length.toString());for(let n of r)t.pushKey(n[0]),t.push(n[1])}Ti.parseMSetExArguments=Fje;Ti.default={parseCommand(t,e,r){if(t.push("MSETEX"),Fje(t,e),r?.mode&&t.push(r.mode),r?.expiration)switch(r.expiration.type){case Ti.ExpirationMode.EXAT:t.push(Ti.ExpirationMode.EXAT,(0,Uje.transformEXAT)(r.expiration.value));break;case Ti.ExpirationMode.PXAT:t.push(Ti.ExpirationMode.PXAT,(0,Uje.transformPXAT)(r.expiration.value));break;case Ti.ExpirationMode.KEEPTTL:t.push(Ti.ExpirationMode.KEEPTTL);break;case Ti.ExpirationMode.EX:case Ti.ExpirationMode.PX:t.push(r.expiration.type,r.expiration.value?.toString());break}},transformReply:void 0}});var jje=_(xte=>{"use strict";Object.defineProperty(xte,"__esModule",{value:!0});var O0r=Ate();xte.default={IS_READ_ONLY:!0,parseCommand(t,e){return t.push("MSETNX"),(0,O0r.parseMSetArguments)(t,e)},transformReply:void 0}});var Qje=_(bte=>{"use strict";Object.defineProperty(bte,"__esModule",{value:!0});bte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","ENCODING"),t.pushKey(e)},transformReply:void 0}});var Hje=_(_te=>{"use strict";Object.defineProperty(_te,"__esModule",{value:!0});_te.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","FREQ"),t.pushKey(e)},transformReply:void 0}});var Gje=_(Ete=>{"use strict";Object.defineProperty(Ete,"__esModule",{value:!0});Ete.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","IDLETIME"),t.pushKey(e)},transformReply:void 0}});var Vje=_(vte=>{"use strict";Object.defineProperty(vte,"__esModule",{value:!0});vte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","REFCOUNT"),t.pushKey(e)},transformReply:void 0}});var Kje=_(Ste=>{"use strict";Object.defineProperty(Ste,"__esModule",{value:!0});Ste.default={parseCommand(t,e){t.push("PERSIST"),t.pushKey(e)},transformReply:void 0}});var zje=_(Ite=>{"use strict";Object.defineProperty(Ite,"__esModule",{value:!0});Ite.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 Yje=_(Cte=>{"use strict";Object.defineProperty(Cte,"__esModule",{value:!0});var k0r=we();Cte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIREAT"),t.pushKey(e),t.push((0,k0r.transformPXAT)(r)),n&&t.push(n)},transformReply:void 0}});var Jje=_(Tte=>{"use strict";Object.defineProperty(Tte,"__esModule",{value:!0});Tte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PEXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var Xje=_(wte=>{"use strict";Object.defineProperty(wte,"__esModule",{value:!0});wte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("PFADD"),t.pushKey(e),r&&t.pushVariadic(r)},transformReply:void 0}});var Zje=_(Rte=>{"use strict";Object.defineProperty(Rte,"__esModule",{value:!0});Rte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PFCOUNT"),t.pushKeys(e)},transformReply:void 0}});var eQe=_(Nte=>{"use strict";Object.defineProperty(Nte,"__esModule",{value:!0});Nte.default={parseCommand(t,e,r){t.push("PFMERGE"),t.pushKey(e),r&&t.pushKeys(r)},transformReply:void 0}});var tQe=_(Ote=>{"use strict";Object.defineProperty(Ote,"__esModule",{value:!0});Ote.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PING"),e&&t.push(e)},transformReply:void 0}});var rQe=_(kte=>{"use strict";Object.defineProperty(kte,"__esModule",{value:!0});kte.default={parseCommand(t,e,r,n){t.push("PSETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var nQe=_(Pte=>{"use strict";Object.defineProperty(Pte,"__esModule",{value:!0});Pte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PTTL"),t.pushKey(e)},transformReply:void 0}});var sQe=_(Dte=>{"use strict";Object.defineProperty(Dte,"__esModule",{value:!0});Dte.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 iQe=_(Bte=>{"use strict";Object.defineProperty(Bte,"__esModule",{value:!0});Bte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","CHANNELS"),e&&t.push(e)},transformReply:void 0}});var aQe=_(Lte=>{"use strict";Object.defineProperty(Lte,"__esModule",{value:!0});Lte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("PUBSUB","NUMPAT")},transformReply:void 0}});var oQe=_(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});Mte.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<t.length;)e[t[r++].toString()]=Number(t[r++]);return e}}});var cQe=_(Wte=>{"use strict";Object.defineProperty(Wte,"__esModule",{value:!0});Wte.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<t.length;r+=2)e[t[r].toString()]=t[r+1];return e}}});var uQe=_($te=>{"use strict";Object.defineProperty($te,"__esModule",{value:!0});$te.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDCHANNELS"),e&&t.push(e)},transformReply:void 0}});var lQe=_(Ute=>{"use strict";Object.defineProperty(Ute,"__esModule",{value:!0});Ute.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RANDOMKEY")},transformReply:void 0}});var dQe=_(Fte=>{"use strict";Object.defineProperty(Fte,"__esModule",{value:!0});Fte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("READONLY")},transformReply:void 0}});var fQe=_(qte=>{"use strict";Object.defineProperty(qte,"__esModule",{value:!0});qte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAME"),t.pushKeys([e,r])},transformReply:void 0}});var pQe=_(jte=>{"use strict";Object.defineProperty(jte,"__esModule",{value:!0});jte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAMENX"),t.pushKeys([e,r])},transformReply:void 0}});var mQe=_(Qte=>{"use strict";Object.defineProperty(Qte,"__esModule",{value:!0});Qte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("REPLICAOF",e,r.toString())},transformReply:void 0}});var hQe=_(Hte=>{"use strict";Object.defineProperty(Hte,"__esModule",{value:!0});Hte.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RESTORE-ASKING")},transformReply:void 0}});var gQe=_(Gte=>{"use strict";Object.defineProperty(Gte,"__esModule",{value:!0});Gte.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 yQe=_(Vte=>{"use strict";Object.defineProperty(Vte,"__esModule",{value:!0});Vte.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 AQe=_(Kte=>{"use strict";Object.defineProperty(Kte,"__esModule",{value:!0});Kte.default={parseCommand(t,e,r){t.push("RPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var xQe=_(zte=>{"use strict";Object.defineProperty(zte,"__esModule",{value:!0});zte.default={parseCommand(t,e){t.push("RPOP"),t.pushKey(e)},transformReply:void 0}});var bQe=_(Yte=>{"use strict";Object.defineProperty(Yte,"__esModule",{value:!0});Yte.default={parseCommand(t,e,r){t.push("RPOPLPUSH"),t.pushKeys([e,r])},transformReply:void 0}});var _Qe=_(Jte=>{"use strict";Object.defineProperty(Jte,"__esModule",{value:!0});Jte.default={parseCommand(t,e,r){t.push("RPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var EQe=_(Xte=>{"use strict";Object.defineProperty(Xte,"__esModule",{value:!0});Xte.default={parseCommand(t,e,r){t.push("RPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var vQe=_(Zte=>{"use strict";Object.defineProperty(Zte,"__esModule",{value:!0});Zte.default={parseCommand(t,e,r){t.push("SADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var SQe=_(ere=>{"use strict";Object.defineProperty(ere,"__esModule",{value:!0});ere.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCARD"),t.pushKey(e)},transformReply:void 0}});var IQe=_(tre=>{"use strict";Object.defineProperty(tre,"__esModule",{value:!0});tre.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","DEBUG",e)},transformReply:void 0}});var CQe=_(rre=>{"use strict";Object.defineProperty(rre,"__esModule",{value:!0});rre.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","EXISTS"),t.pushVariadic(e)},transformReply:void 0}});var TQe=_(nre=>{"use strict";Object.defineProperty(nre,"__esModule",{value:!0});nre.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","FLUSH"),e&&t.push(e)},transformReply:void 0}});var wQe=_(sre=>{"use strict";Object.defineProperty(sre,"__esModule",{value:!0});sre.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("SCRIPT","KILL")},transformReply:void 0}});var RQe=_(ire=>{"use strict";Object.defineProperty(ire,"__esModule",{value:!0});ire.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","LOAD",e)},transformReply:void 0}});var NQe=_(are=>{"use strict";Object.defineProperty(are,"__esModule",{value:!0});are.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SDIFF"),t.pushKeys(e)},transformReply:void 0}});var OQe=_(ore=>{"use strict";Object.defineProperty(ore,"__esModule",{value:!0});ore.default={parseCommand(t,e,r){t.push("SDIFFSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var kQe=_(cre=>{"use strict";Object.defineProperty(cre,"__esModule",{value:!0});cre.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 PQe=_(ure=>{"use strict";Object.defineProperty(ure,"__esModule",{value:!0});ure.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 DQe=_(lre=>{"use strict";Object.defineProperty(lre,"__esModule",{value:!0});lre.default={parseCommand(t,e,r,n){t.push("SETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var BQe=_(dre=>{"use strict";Object.defineProperty(dre,"__esModule",{value:!0});dre.default={parseCommand(t,e,r){t.push("SETNX"),t.pushKey(e),t.push(r)},transformReply:void 0}});var LQe=_(fre=>{"use strict";Object.defineProperty(fre,"__esModule",{value:!0});fre.default={parseCommand(t,e,r,n){t.push("SETRANGE"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var MQe=_(pre=>{"use strict";Object.defineProperty(pre,"__esModule",{value:!0});pre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SINTER"),t.pushKeys(e)},transformReply:void 0}});var WQe=_(mre=>{"use strict";Object.defineProperty(mre,"__esModule",{value:!0});mre.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 $Qe=_(hre=>{"use strict";Object.defineProperty(hre,"__esModule",{value:!0});hre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SINTERSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var UQe=_(gre=>{"use strict";Object.defineProperty(gre,"__esModule",{value:!0});gre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SISMEMBER"),t.pushKey(e),t.push(r)},transformReply:void 0}});var FQe=_(yre=>{"use strict";Object.defineProperty(yre,"__esModule",{value:!0});yre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SMEMBERS"),t.pushKey(e)},transformReply:{2:void 0,3:void 0}}});var qQe=_(Are=>{"use strict";Object.defineProperty(Are,"__esModule",{value:!0});Are.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SMISMEMBER"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var jQe=_(xre=>{"use strict";Object.defineProperty(xre,"__esModule",{value:!0});xre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SMOVE"),t.pushKeys([e,r]),t.push(n)},transformReply:void 0}});var GL=_(k2=>{"use strict";Object.defineProperty(k2,"__esModule",{value:!0});k2.parseSortArguments=void 0;function QQe(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")}k2.parseSortArguments=QQe;k2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SORT"),QQe(t,e,r)},transformReply:void 0}});var GQe=_(Hf=>{"use strict";var P0r=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]}),D0r=Hf&&Hf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),B0r=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)&&P0r(e,t,r);return D0r(e,t),e};Object.defineProperty(Hf,"__esModule",{value:!0});var HQe=B0r(GL());Hf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("SORT_RO"),(0,HQe.parseSortArguments)(...t)},transformReply:HQe.default.transformReply}});var VQe=_(P2=>{"use strict";var L0r=P2&&P2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(P2,"__esModule",{value:!0});var M0r=L0r(GL());P2.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){M0r.default.parseCommand(t,e,n),t.push("STORE",r)},transformReply:void 0}});var KQe=_(bre=>{"use strict";Object.defineProperty(bre,"__esModule",{value:!0});bre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var zQe=_(_re=>{"use strict";Object.defineProperty(_re,"__esModule",{value:!0});_re.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("SPOP"),t.pushKey(e)},transformReply:void 0}});var YQe=_(Ere=>{"use strict";Object.defineProperty(Ere,"__esModule",{value:!0});Ere.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SPUBLISH"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Sre=_(vre=>{"use strict";Object.defineProperty(vre,"__esModule",{value:!0});vre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("SRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var XQe=_(D2=>{"use strict";var W0r=D2&&D2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(D2,"__esModule",{value:!0});var JQe=W0r(Sre());D2.default={IS_READ_ONLY:JQe.default.IS_READ_ONLY,parseCommand(t,e,r){JQe.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var ZQe=_(Ire=>{"use strict";Object.defineProperty(Ire,"__esModule",{value:!0});Ire.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var eHe=_(Cre=>{"use strict";Object.defineProperty(Cre,"__esModule",{value:!0});var $0r=b2();Cre.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("SSCAN"),t.pushKey(e),(0,$0r.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:e}}}});var tHe=_(Tre=>{"use strict";Object.defineProperty(Tre,"__esModule",{value:!0});Tre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("STRLEN"),t.pushKey(e)},transformReply:void 0}});var rHe=_(wre=>{"use strict";Object.defineProperty(wre,"__esModule",{value:!0});wre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SUNION"),t.pushKeys(e)},transformReply:void 0}});var nHe=_(Rre=>{"use strict";Object.defineProperty(Rre,"__esModule",{value:!0});Rre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SUNIONSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var sHe=_(Nre=>{"use strict";Object.defineProperty(Nre,"__esModule",{value:!0});Nre.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SWAPDB",e.toString(),r.toString())},transformReply:void 0}});var iHe=_(Ore=>{"use strict";Object.defineProperty(Ore,"__esModule",{value:!0});Ore.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("TIME")},transformReply:void 0}});var aHe=_(kre=>{"use strict";Object.defineProperty(kre,"__esModule",{value:!0});kre.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TOUCH"),t.pushKeys(e)},transformReply:void 0}});var oHe=_(Pre=>{"use strict";Object.defineProperty(Pre,"__esModule",{value:!0});Pre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TTL"),t.pushKey(e)},transformReply:void 0}});var cHe=_(Dre=>{"use strict";Object.defineProperty(Dre,"__esModule",{value:!0});Dre.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TYPE"),t.pushKey(e)},transformReply:void 0}});var uHe=_(Bre=>{"use strict";Object.defineProperty(Bre,"__esModule",{value:!0});Bre.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("UNLINK"),t.pushKeys(e)},transformReply:void 0}});var lHe=_(Lre=>{"use strict";Object.defineProperty(Lre,"__esModule",{value:!0});Lre.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("WAIT",e.toString(),r.toString())},transformReply:void 0}});var dHe=_(Mre=>{"use strict";Object.defineProperty(Mre,"__esModule",{value:!0});Mre.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 fHe=_(Wre=>{"use strict";Object.defineProperty(Wre,"__esModule",{value:!0});Wre.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 $re=_(B2=>{"use strict";Object.defineProperty(B2,"__esModule",{value:!0});B2.parseXAddArguments=void 0;function pHe(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)}B2.parseXAddArguments=pHe;B2.default={IS_READ_ONLY:!1,parseCommand(...t){return pHe(void 0,...t)},transformReply:void 0}});var mHe=_(Ure=>{"use strict";Object.defineProperty(Ure,"__esModule",{value:!0});var U0r=$re();Ure.default={IS_READ_ONLY:!1,parseCommand(...t){return(0,U0r.parseXAddArguments)("NOMKSTREAM",...t)},transformReply:void 0}});var qre=_(Fre=>{"use strict";Object.defineProperty(Fre,"__esModule",{value:!0});var F0r=we();Fre.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(F0r.transformStreamMessageNullReply.bind(void 0,r)),deletedMessages:t[2]}}}});var gHe=_(L2=>{"use strict";var q0r=L2&&L2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(L2,"__esModule",{value:!0});var hHe=q0r(qre());L2.default={IS_READ_ONLY:hHe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];hHe.default.parseCommand(...t),e.push("JUSTID")},transformReply(t){return{nextId:t[0],messages:t[1],deletedMessages:t[2]}}}});var Qre=_(jre=>{"use strict";Object.defineProperty(jre,"__esModule",{value:!0});var j0r=we();jre.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(j0r.transformStreamMessageNullReply.bind(void 0,r))}}});var AHe=_(M2=>{"use strict";var Q0r=M2&&M2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(M2,"__esModule",{value:!0});var yHe=Q0r(Qre());M2.default={IS_READ_ONLY:yHe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];yHe.default.parseCommand(...t),e.push("JUSTID")},transformReply:void 0}});var xHe=_(Hre=>{"use strict";Object.defineProperty(Hre,"__esModule",{value:!0});Hre.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 bHe=_(Gre=>{"use strict";Object.defineProperty(Gre,"__esModule",{value:!0});Gre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var _He=_(Vre=>{"use strict";Object.defineProperty(Vre,"__esModule",{value:!0});Vre.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 EHe=_(Kre=>{"use strict";Object.defineProperty(Kre,"__esModule",{value:!0});Kre.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 vHe=_(zre=>{"use strict";Object.defineProperty(zre,"__esModule",{value:!0});zre.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 SHe=_(Yre=>{"use strict";Object.defineProperty(Yre,"__esModule",{value:!0});Yre.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 IHe=_(Jre=>{"use strict";Object.defineProperty(Jre,"__esModule",{value:!0});Jre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XGROUP","DESTROY"),t.pushKey(e),t.push(r)},transformReply:void 0}});var CHe=_(Xre=>{"use strict";Object.defineProperty(Xre,"__esModule",{value:!0});Xre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","SETID"),t.pushKey(e),t.push(r,n),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var THe=_(Zre=>{"use strict";Object.defineProperty(Zre,"__esModule",{value:!0});Zre.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 wHe=_(ene=>{"use strict";Object.defineProperty(ene,"__esModule",{value:!0});ene.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 NHe=_(tne=>{"use strict";Object.defineProperty(tne,"__esModule",{value:!0});var RHe=we();tne.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<t.length;r+=2)switch(t[r]){case"first-entry":case"last-entry":e[t[r]]=o1(t[r+1]);break;default:e[t[r]]=t[r+1];break}return e},3(t){if(t instanceof Map)t.set("first-entry",o1(t.get("first-entry"))),t.set("last-entry",o1(t.get("last-entry")));else if(t instanceof Array)for(let e=0;e<t.length;e+=2)(t[e]==="first-entry"||t[e]==="last-entry")&&(t[e+1]=o1(t[e+1]));else t["first-entry"]=o1(t["first-entry"]),t["last-entry"]=o1(t["last-entry"]);return t}}};function o1(t){if((0,RHe.isNullReply)(t))return t;let[e,r]=t;return{id:e,message:(0,RHe.transformTuplesReply)(r)}}});var OHe=_(rne=>{"use strict";Object.defineProperty(rne,"__esModule",{value:!0});rne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("XLEN"),t.pushKey(e)},transformReply:void 0}});var kHe=_(nne=>{"use strict";Object.defineProperty(nne,"__esModule",{value:!0});nne.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 PHe=_(sne=>{"use strict";Object.defineProperty(sne,"__esModule",{value:!0});sne.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 ine=_(W2=>{"use strict";Object.defineProperty(W2,"__esModule",{value:!0});W2.xRangeArguments=void 0;var H0r=we();function DHe(t,e,r){let n=[t,e];return r?.COUNT&&n.push("COUNT",r.COUNT.toString()),n}W2.xRangeArguments=DHe;W2.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("XRANGE"),t.pushKey(e),t.pushVariadic(DHe(r[0],r[1],r[2]))},transformReply(t,e,r){return t.map(H0r.transformStreamMessageReply.bind(void 0,r))}}});var ane=_($2=>{"use strict";Object.defineProperty($2,"__esModule",{value:!0});$2.pushXReadStreams=void 0;var G0r=we();function BHe(t,e){if(t.push("STREAMS"),Array.isArray(e)){for(let r=0;r<e.length;r++)t.pushKey(e[r].key);for(let r=0;r<e.length;r++)t.push(e[r].id)}else t.pushKey(e.key),t.push(e.id)}$2.pushXReadStreams=BHe;$2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XREAD"),r?.COUNT&&t.push("COUNT",r.COUNT.toString()),r?.BLOCK!==void 0&&t.push("BLOCK",r.BLOCK.toString()),BHe(t,e)},transformReply:{2:G0r.transformStreamsMessagesReplyResp2,3:void 0},unstableResp3:!0}});var LHe=_(one=>{"use strict";Object.defineProperty(one,"__esModule",{value:!0});var V0r=ane(),K0r=we();one.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,V0r.pushXReadStreams)(t,n)},transformReply:{2:K0r.transformStreamsMessagesReplyResp2,3:void 0}}});var MHe=_(Gf=>{"use strict";var z0r=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]}),Y0r=Gf&&Gf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),J0r=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)&&z0r(e,t,r);return Y0r(e,t),e};Object.defineProperty(Gf,"__esModule",{value:!0});var VL=J0r(ine());Gf.default={CACHEABLE:VL.default.CACHEABLE,IS_READ_ONLY:VL.default.IS_READ_ONLY,parseCommand(t,e,...r){t.push("XREVRANGE"),t.pushKey(e),t.pushVariadic((0,VL.xRangeArguments)(r[0],r[1],r[2]))},transformReply:VL.default.transformReply}});var WHe=_(cne=>{"use strict";Object.defineProperty(cne,"__esModule",{value:!0});cne.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 $He=_(une=>{"use strict";Object.defineProperty(une,"__esModule",{value:!0});une.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 lne=_(U2=>{"use strict";Object.defineProperty(U2,"__esModule",{value:!0});U2.pushMembers=void 0;var FHe=we();U2.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"),qHe(t,r)},transformReply:FHe.transformDoubleReply};function qHe(t,e){if(Array.isArray(e))for(let r of e)UHe(t,r);else UHe(t,e)}U2.pushMembers=qHe;function UHe(t,e){t.push((0,FHe.transformDoubleArgument)(e.score),e.value)}});var jHe=_(dne=>{"use strict";Object.defineProperty(dne,"__esModule",{value:!0});var X0r=lne(),Z0r=we();dne.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,X0r.pushMembers)(t,r)},transformReply:Z0r.transformNullableDoubleReply}});var QHe=_(fne=>{"use strict";Object.defineProperty(fne,"__esModule",{value:!0});fne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZCARD"),t.pushKey(e)},transformReply:void 0}});var GHe=_(pne=>{"use strict";Object.defineProperty(pne,"__esModule",{value:!0});var HHe=we();pne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZCOUNT"),t.pushKey(e),t.push((0,HHe.transformStringDoubleArgument)(r),(0,HHe.transformStringDoubleArgument)(n))},transformReply:void 0}});var hne=_(mne=>{"use strict";Object.defineProperty(mne,"__esModule",{value:!0});mne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZDIFF"),t.pushKeysLength(e)},transformReply:void 0}});var KHe=_(F2=>{"use strict";var emr=F2&&F2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(F2,"__esModule",{value:!0});var tmr=we(),VHe=emr(hne());F2.default={IS_READ_ONLY:VHe.default.IS_READ_ONLY,parseCommand(t,e){VHe.default.parseCommand(t,e),t.push("WITHSCORES")},transformReply:tmr.transformSortedSetReply}});var zHe=_(gne=>{"use strict";Object.defineProperty(gne,"__esModule",{value:!0});gne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZDIFFSTORE"),t.pushKey(e),t.pushKeysLength(r)},transformReply:void 0}});var JHe=_(yne=>{"use strict";Object.defineProperty(yne,"__esModule",{value:!0});var YHe=we();yne.default={parseCommand(t,e,r,n){t.push("ZINCRBY"),t.pushKey(e),t.push((0,YHe.transformDoubleArgument)(r),n)},transformReply:YHe.transformDoubleReply}});var KL=_(q2=>{"use strict";Object.defineProperty(q2,"__esModule",{value:!0});q2.parseZInterArguments=void 0;var rmr=we();function XHe(t,e,r){(0,rmr.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)}q2.parseZInterArguments=XHe;q2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTER"),XHe(t,e,r)},transformReply:void 0}});var eGe=_(j2=>{"use strict";var nmr=j2&&j2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(j2,"__esModule",{value:!0});var smr=we(),ZHe=nmr(KL());j2.default={IS_READ_ONLY:ZHe.default.IS_READ_ONLY,parseCommand(...t){ZHe.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:smr.transformSortedSetReply}});var tGe=_(Ane=>{"use strict";Object.defineProperty(Ane,"__esModule",{value:!0});Ane.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 rGe=_(xne=>{"use strict";Object.defineProperty(xne,"__esModule",{value:!0});var imr=KL();xne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZINTERSTORE"),t.pushKey(e),(0,imr.parseZInterArguments)(t,r,n)},transformReply:void 0}});var nGe=_(bne=>{"use strict";Object.defineProperty(bne,"__esModule",{value:!0});bne.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 sGe=_(_ne=>{"use strict";Object.defineProperty(_ne,"__esModule",{value:!0});var amr=we();_ne.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,amr.createTransformNullableDoubleReplyResp2Func)(e,r)),3:void 0}}});var iGe=_(Ene=>{"use strict";Object.defineProperty(Ene,"__esModule",{value:!0});var omr=we();Ene.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMAX"),t.pushKey(e),t.push(r.toString())},transformReply:omr.transformSortedSetReply}});var Sne=_(vne=>{"use strict";Object.defineProperty(vne,"__esModule",{value:!0});var cmr=we();vne.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:cmr.transformDoubleReply[2](t[1],e,r)},3:t=>t.length===0?null:{value:t[0],score:t[1]}}}});var aGe=_(Ine=>{"use strict";Object.defineProperty(Ine,"__esModule",{value:!0});var umr=we();Ine.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMIN"),t.pushKey(e),t.push(r.toString())},transformReply:umr.transformSortedSetReply}});var oGe=_(Q2=>{"use strict";var lmr=Q2&&Q2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Q2,"__esModule",{value:!0});var dmr=lmr(Sne());Q2.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMIN"),t.pushKey(e)},transformReply:dmr.default.transformReply}});var Tne=_(Cne=>{"use strict";Object.defineProperty(Cne,"__esModule",{value:!0});Cne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var wne=_(H2=>{"use strict";var fmr=H2&&H2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(H2,"__esModule",{value:!0});var cGe=fmr(Tne());H2.default={IS_READ_ONLY:cGe.default.IS_READ_ONLY,parseCommand(t,e,r){cGe.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var lGe=_(G2=>{"use strict";var pmr=G2&&G2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(G2,"__esModule",{value:!0});var mmr=we(),uGe=pmr(wne());G2.default={IS_READ_ONLY:uGe.default.IS_READ_ONLY,parseCommand(t,e,r){uGe.default.parseCommand(t,e,r),t.push("WITHSCORES")},transformReply:mmr.transformSortedSetReply}});var Rne=_(V2=>{"use strict";Object.defineProperty(V2,"__esModule",{value:!0});V2.zRangeArgument=void 0;var dGe=we();function fGe(t,e,r){let n=[(0,dGe.transformStringDoubleArgument)(t),(0,dGe.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}V2.zRangeArgument=fGe;V2.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGE"),t.pushKey(e),t.pushVariadic(fGe(r,n,s))},transformReply:void 0}});var pGe=_(K2=>{"use strict";var hmr=K2&&K2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(K2,"__esModule",{value:!0});var gmr=we(),Nne=hmr(Rne());K2.default={CACHEABLE:Nne.default.CACHEABLE,IS_READ_ONLY:Nne.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Nne.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:gmr.transformSortedSetReply}});var hGe=_(One=>{"use strict";Object.defineProperty(One,"__esModule",{value:!0});var mGe=we();One.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYLEX"),t.pushKey(e),t.push((0,mGe.transformStringDoubleArgument)(r),(0,mGe.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var Pne=_(kne=>{"use strict";Object.defineProperty(kne,"__esModule",{value:!0});var gGe=we();kne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYSCORE"),t.pushKey(e),t.push((0,gGe.transformStringDoubleArgument)(r),(0,gGe.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var yGe=_(z2=>{"use strict";var ymr=z2&&z2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(z2,"__esModule",{value:!0});var Amr=we(),Dne=ymr(Pne());z2.default={CACHEABLE:Dne.default.CACHEABLE,IS_READ_ONLY:Dne.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Dne.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:Amr.transformSortedSetReply}});var xGe=_(Bne=>{"use strict";Object.defineProperty(Bne,"__esModule",{value:!0});var AGe=we();Bne.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,AGe.transformStringDoubleArgument)(n),(0,AGe.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 _Ge=_(Lne=>{"use strict";Object.defineProperty(Lne,"__esModule",{value:!0});var bGe=we();Lne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYSCORE"),t.pushKey(e),t.push((0,bGe.transformStringDoubleArgument)(r),(0,bGe.transformStringDoubleArgument)(n))},transformReply:void 0}});var Wne=_(Mne=>{"use strict";Object.defineProperty(Mne,"__esModule",{value:!0});Mne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var EGe=_(Y2=>{"use strict";var xmr=Y2&&Y2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Y2,"__esModule",{value:!0});var $ne=xmr(Wne());Y2.default={CACHEABLE:$ne.default.CACHEABLE,IS_READ_ONLY:$ne.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];$ne.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 vGe=_(Une=>{"use strict";Object.defineProperty(Une,"__esModule",{value:!0});Une.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var IGe=_(Fne=>{"use strict";Object.defineProperty(Fne,"__esModule",{value:!0});var SGe=we();Fne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYLEX"),t.pushKey(e),t.push((0,SGe.transformStringDoubleArgument)(r),(0,SGe.transformStringDoubleArgument)(n))},transformReply:void 0}});var CGe=_(qne=>{"use strict";Object.defineProperty(qne,"__esModule",{value:!0});qne.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 TGe=_(jne=>{"use strict";Object.defineProperty(jne,"__esModule",{value:!0});jne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZREVRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var wGe=_(Qne=>{"use strict";Object.defineProperty(Qne,"__esModule",{value:!0});var bmr=b2(),_mr=we();Qne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZSCAN"),t.pushKey(e),(0,bmr.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:_mr.transformSortedSetReply[2](e)}}}});var RGe=_(Hne=>{"use strict";Object.defineProperty(Hne,"__esModule",{value:!0});var Emr=we();Hne.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZSCORE"),t.pushKey(e),t.push(r)},transformReply:Emr.transformNullableDoubleReply}});var Vne=_(Gne=>{"use strict";Object.defineProperty(Gne,"__esModule",{value:!0});var vmr=we();Gne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZUNION"),(0,vmr.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)},transformReply:void 0}});var OGe=_(J2=>{"use strict";var Smr=J2&&J2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(J2,"__esModule",{value:!0});var Imr=we(),NGe=Smr(Vne());J2.default={IS_READ_ONLY:NGe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];NGe.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:Imr.transformSortedSetReply}});var kGe=_(Kne=>{"use strict";Object.defineProperty(Kne,"__esModule",{value:!0});var Cmr=we();Kne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZUNIONSTORE"),t.pushKey(e),(0,Cmr.parseZKeysArguments)(t,r),n?.AGGREGATE&&t.push("AGGREGATE",n.AGGREGATE)},transformReply:void 0}});var DGe=_(zne=>{"use strict";Object.defineProperty(zne,"__esModule",{value:!0});var PGe=we();zne.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,PGe.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:PGe.transformBooleanReply}});var BGe=_(Yne=>{"use strict";Object.defineProperty(Yne,"__esModule",{value:!0});Yne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VCARD"),t.pushKey(e)},transformReply:void 0}});var LGe=_(Jne=>{"use strict";Object.defineProperty(Jne,"__esModule",{value:!0});Jne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VDIM"),t.pushKey(e)},transformReply:void 0}});var Zne=_(Xne=>{"use strict";Object.defineProperty(Xne,"__esModule",{value:!0});var Tmr=we();Xne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VEMB"),t.pushKey(e),t.push(r)},transformReply:Tmr.transformDoubleArrayReply}});var WGe=_(X2=>{"use strict";var wmr=X2&&X2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(X2,"__esModule",{value:!0});var MGe=we(),Rmr=wmr(Zne()),Nmr={2:t=>({quantization:t[0],raw:t[1],l2Norm:MGe.transformDoubleReply[2](t[2]),...t[3]!==void 0&&{quantizationRange:MGe.transformDoubleReply[2](t[3])}}),3:t=>({quantization:t[0],raw:t[1],l2Norm:t[2],quantizationRange:t[3]})};X2.default={IS_READ_ONLY:!0,parseCommand(t,e,r){Rmr.default.parseCommand(t,e,r),t.push("RAW")},transformReply:Nmr}});var $Ge=_(ese=>{"use strict";Object.defineProperty(ese,"__esModule",{value:!0});var Omr=we();ese.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VGETATTR"),t.pushKey(e),t.push(r)},transformReply:Omr.transformRedisJsonNullReply}});var UGe=_(tse=>{"use strict";Object.defineProperty(tse,"__esModule",{value:!0});tse.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<t.length;r+=2)e[t[r].toString()]=t[r+1];return e},3:void 0}}});var nse=_(rse=>{"use strict";Object.defineProperty(rse,"__esModule",{value:!0});rse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VLINKS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var qGe=_(Z2=>{"use strict";var kmr=Z2&&Z2.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Z2,"__esModule",{value:!0});var Pmr=we(),FGe=kmr(nse());function Dmr(t){let e=[];for(let r of t){let n=Object.create(null);for(let s=0;s<r.length;s+=2){let i=r[s],a=Pmr.transformDoubleReply[2](r[s+1]);n[i.toString()]=a}e.push(n)}return e}Z2.default={IS_READ_ONLY:FGe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];FGe.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:{2:Dmr,3:void 0}}});var jGe=_(sse=>{"use strict";Object.defineProperty(sse,"__esModule",{value:!0});sse.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 QGe=_(ise=>{"use strict";Object.defineProperty(ise,"__esModule",{value:!0});ise.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 HGe=_(ase=>{"use strict";Object.defineProperty(ase,"__esModule",{value:!0});var Bmr=we();ase.default={parseCommand(t,e,r){t.push("VREM"),t.pushKey(e),t.push(r)},transformReply:Bmr.transformBooleanReply}});var GGe=_(ose=>{"use strict";Object.defineProperty(ose,"__esModule",{value:!0});var Lmr=we();ose.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:Lmr.transformBooleanReply}});var use=_(cse=>{"use strict";Object.defineProperty(cse,"__esModule",{value:!0});var Mmr=we();cse.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("VSIM"),t.pushKey(e),Array.isArray(r)){t.push("VALUES",r.length.toString());for(let s of r)t.push((0,Mmr.transformDoubleArgument)(s))}else t.push("ELE",r);n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.EPSILON!==void 0&&t.push("EPSILON",n.EPSILON.toString()),n?.EF!==void 0&&t.push("EF",n.EF.toString()),n?.FILTER&&t.push("FILTER",n.FILTER),n?.["FILTER-EF"]!==void 0&&t.push("FILTER-EF",n["FILTER-EF"].toString()),n?.TRUTH&&t.push("TRUTH"),n?.NOTHREAD&&t.push("NOTHREAD")},transformReply:void 0}});var KGe=_(eT=>{"use strict";var Wmr=eT&&eT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(eT,"__esModule",{value:!0});var $mr=we(),VGe=Wmr(use());eT.default={IS_READ_ONLY:VGe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];VGe.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:{2:t=>{let e=t,r={};for(let n=0;n<e.length;n+=2)r[e[n].toString()]=$mr.transformDoubleReply[2](e[n+1]);return r},3:void 0}}});var zGe=_(lse=>{"use strict";Object.defineProperty(lse,"__esModule",{value:!0});var Umr=we(),Fmr=t=>t;lse.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<t.length;r+=2){let n=t[r];e[t[r-1]]={calls:n[1],histogram_usec:(0,Umr.transformTuplesToMap)(n[3],Fmr)}}return e},3:void 0}}});var Pu=_(Gn=>{"use strict";var qmr=Gn&&Gn.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),jmr=Gn&&Gn.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),tT=Gn&&Gn.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&qmr(e,t,r);return jmr(e,t),e},$=Gn&&Gn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Gn,"__esModule",{value:!0});Gn.NON_STICKY_COMMANDS=Gn.REDIS_FLUSH_MODES=Gn.COMMAND_LIST_FILTER_BY=Gn.CLUSTER_SLOT_STATES=Gn.FAILOVER_MODES=Gn.CLIENT_KILL_FILTERS=void 0;var YGe=$(vFe()),JGe=$(SFe()),XGe=$(IFe()),ZGe=$(CFe()),eVe=$(TFe()),tVe=$(wFe()),rVe=$(RFe()),nVe=$(MFe()),sVe=$(sX()),iVe=$(WFe()),aVe=$($Fe()),oVe=$(UFe()),cVe=$(FFe()),uVe=$(qFe()),lVe=$(lX()),dVe=$(jFe()),fVe=$(QFe()),pVe=$(HFe()),mVe=$(GFe()),hVe=$(VFe()),gVe=$(KFe()),yVe=$(zFe()),AVe=$(YFe()),xVe=$(JFe()),bVe=$(e7e()),_Ve=$(EX()),EVe=$(t7e()),vVe=$(r7e()),SVe=$(a7e()),IVe=$(CX()),CVe=$(c7e()),TVe=$(u7e()),wVe=$(l7e()),RVe=$(d7e()),NVe=$(f7e()),OVe=$(kX()),dse=tT(m7e());Object.defineProperty(Gn,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return dse.CLIENT_KILL_FILTERS}});var kVe=$(h7e()),PVe=$(g7e()),DVe=$(y7e()),BVe=$(A7e()),LVe=$(x7e()),MVe=$(b7e()),WVe=$(_7e()),$Ve=$(E7e()),UVe=$(v7e()),FVe=$(S7e()),qVe=$(I7e()),jVe=$(C7e()),QVe=$(T7e()),HVe=$(w7e()),GVe=$(R7e()),fse=tT(N7e());Object.defineProperty(Gn,"FAILOVER_MODES",{enumerable:!0,get:function(){return fse.FAILOVER_MODES}});var VVe=$(O7e()),KVe=$(k7e()),zVe=$(P7e()),YVe=$(D7e()),JVe=$(B7e()),XVe=$(L7e()),ZVe=$(M7e()),eKe=$(W7e()),tKe=$($7e()),rKe=$(U7e()),nKe=$(F7e()),sKe=$(q7e()),iKe=$(j7e()),aKe=$(Q7e()),oKe=$(H7e()),pse=tT(G7e());Object.defineProperty(Gn,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return pse.CLUSTER_SLOT_STATES}});var cKe=$(K7e()),uKe=$(z7e()),lKe=$(Y7e()),dKe=$(J7e()),fKe=$(X7e()),mse=tT(Z7e());Object.defineProperty(Gn,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return mse.COMMAND_LIST_FILTER_BY}});var pKe=$(e9e()),mKe=$(t9e()),hKe=$(r9e()),gKe=$(n9e()),yKe=$(s9e()),AKe=$(i9e()),xKe=$(a9e()),bKe=$(o9e()),_Ke=$(c9e()),EKe=$(u9e()),vKe=$(l9e()),SKe=$(d9e()),IKe=$(f9e()),CKe=$(p9e()),TKe=$(g9e()),wKe=$(Wg()),RKe=$(A9e()),NKe=$(b9e()),OKe=$(E9e()),kKe=$(v9e()),PKe=$(S9e()),DKe=$(I9e()),BKe=$(k9e()),LKe=$(D9e()),MKe=$(L9e()),WKe=$(QL()),$Ke=$(d2()),UKe=$(F9e()),FKe=$(j9e()),qKe=$(H9e()),jKe=$(NZ()),QKe=$(h2()),HKe=$(f2()),GKe=$(Ug()),VKe=$(G9e()),KKe=$(V9e()),zKe=$(K9e()),YKe=$(z9e()),JKe=$(Y9e()),XKe=$(J9e()),ZKe=$(X9e()),eze=$(Z9e()),tze=$(eqe()),rze=$(tqe()),nze=$(rqe()),hse=tT(nqe());Object.defineProperty(Gn,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return hse.REDIS_FLUSH_MODES}});var sze=$(sqe()),ize=$(aqe()),aze=$(cqe()),oze=$(uqe()),cze=$(lqe()),uze=$(dqe()),lze=$(fqe()),dze=$(pqe()),fze=$(zZ()),pze=$(mqe()),mze=$(hqe()),hze=$(gqe()),gze=$(yqe()),yze=$(ree()),Aze=$(Aqe()),xze=$(xqe()),bze=$(bqe()),_ze=$(_qe()),Eze=$(Eqe()),vze=$(vqe()),Sze=$(Sqe()),Ize=$(Iqe()),Cze=$(Cqe()),Tze=$(Tqe()),wze=$(wqe()),Rze=$(Rqe()),Nze=$(Nqe()),Oze=$(Oqe()),kze=$(kqe()),Pze=$(Pqe()),Dze=$(Dqe()),Bze=$(Bqe()),Lze=$(Lqe()),Mze=$(Mqe()),Wze=$(Wqe()),$ze=$(vee()),Uze=$(Uqe()),Fze=$(qqe()),qze=$(Qqe()),jze=$(Hqe()),Qze=$(Gqe()),Hze=$(Vqe()),Gze=$(Kqe()),Vze=$(Yqe()),Kze=$(Jqe()),zze=$(Xqe()),Yze=$(Zqe()),Jze=$(eje()),Xze=$(tje()),Zze=$(rje()),eYe=$(nje()),tYe=$(sje()),rYe=$(ije()),nYe=$(aje()),sYe=$(Uee()),iYe=$(oje()),aYe=$(cje()),oYe=$(uje()),cYe=$(fje()),uYe=$(Qee()),lYe=$(mje()),dYe=$(HL()),fYe=$(hje()),pYe=$(gje()),mYe=$(yje()),hYe=$(Aje()),gYe=$(bX()),Qmr=$(xje()),yYe=$(bje()),AYe=$(Jee()),xYe=$(_je()),bYe=$(Zee()),_Ye=$(Eje()),EYe=$(vje()),vYe=$(Sje()),SYe=$(Ije()),IYe=$(Cje()),CYe=$(Tje()),TYe=$(wje()),wYe=$(Rje()),RYe=$(Nje()),NYe=$(Oje()),OYe=$(kje()),kYe=$(Pje()),PYe=$(Dje()),DYe=$(Bje()),BYe=$(Lje()),LYe=$(Mje()),MYe=$(Wje()),WYe=$(Ate()),$Ye=$(qje()),UYe=$(jje()),FYe=$(Qje()),qYe=$(Hje()),jYe=$(Gje()),QYe=$(Vje()),HYe=$(Kje()),GYe=$(zje()),VYe=$(Yje()),KYe=$(Jje()),zYe=$(Xje()),YYe=$(Zje()),JYe=$(eQe()),XYe=$(tQe()),ZYe=$(rQe()),eJe=$(nQe()),tJe=$(sQe()),rJe=$(iQe()),nJe=$(aQe()),sJe=$(oQe()),iJe=$(cQe()),aJe=$(uQe()),oJe=$(lQe()),cJe=$(dQe()),uJe=$(fQe()),lJe=$(pQe()),dJe=$(mQe()),fJe=$(hQe()),pJe=$(gQe()),mJe=$(yQe()),hJe=$(AQe()),gJe=$(xQe()),yJe=$(bQe()),AJe=$(_Qe()),xJe=$(EQe()),bJe=$(vQe()),_Je=$(b2()),EJe=$(SQe()),vJe=$(IQe()),SJe=$(CQe()),IJe=$(TQe()),CJe=$(wQe()),TJe=$(RQe()),wJe=$(NQe()),RJe=$(OQe()),NJe=$(kQe()),OJe=$(PQe()),kJe=$(DQe()),PJe=$(BQe()),DJe=$(LQe()),BJe=$(MQe()),LJe=$(WQe()),MJe=$($Qe()),WJe=$(UQe()),$Je=$(FQe()),UJe=$(qQe()),FJe=$(jQe()),qJe=$(GQe()),jJe=$(VQe()),QJe=$(GL()),HJe=$(KQe()),GJe=$(zQe()),VJe=$(YQe()),KJe=$(XQe()),zJe=$(Sre()),YJe=$(ZQe()),JJe=$(eHe()),XJe=$(tHe()),ZJe=$(rHe()),eXe=$(nHe()),tXe=$(sHe()),rXe=$(iHe()),nXe=$(aHe()),sXe=$(oHe()),iXe=$(cHe()),aXe=$(uHe()),oXe=$(lHe()),cXe=$(dHe()),uXe=$(fHe()),lXe=$(mHe()),dXe=$($re()),fXe=$(gHe()),pXe=$(qre()),mXe=$(AHe()),hXe=$(Qre()),gXe=$(xHe()),yXe=$(bHe()),AXe=$(_He()),xXe=$(EHe()),bXe=$(vHe()),_Xe=$(SHe()),EXe=$(IHe()),vXe=$(CHe()),SXe=$(THe()),IXe=$(wHe()),CXe=$(NHe()),TXe=$(OHe()),wXe=$(kHe()),RXe=$(PHe()),NXe=$(ine()),OXe=$(ane()),kXe=$(LHe()),PXe=$(MHe()),DXe=$(WHe()),BXe=$($He()),LXe=$(jHe()),MXe=$(lne()),WXe=$(QHe()),$Xe=$(GHe()),UXe=$(KHe()),FXe=$(hne()),qXe=$(zHe()),jXe=$(JHe()),QXe=$(eGe()),HXe=$(KL()),GXe=$(tGe()),VXe=$(rGe()),KXe=$(nGe()),zXe=$(SX()),YXe=$(sGe()),JXe=$(iGe()),XXe=$(Sne()),ZXe=$(aGe()),eZe=$(oGe()),tZe=$(lGe()),rZe=$(wne()),nZe=$(Tne()),sZe=$(pGe()),iZe=$(Rne()),aZe=$(hGe()),oZe=$(yGe()),cZe=$(Pne()),uZe=$(xGe()),lZe=$(_Ge()),dZe=$(EGe()),fZe=$(Wne()),pZe=$(vGe()),mZe=$(IGe()),hZe=$(CGe()),gZe=$(TGe()),yZe=$(wGe()),AZe=$(RGe()),xZe=$(OGe()),bZe=$(Vne()),_Ze=$(kGe()),EZe=$(DGe()),vZe=$(BGe()),SZe=$(LGe()),IZe=$(Zne()),CZe=$(WGe()),TZe=$($Ge()),wZe=$(UGe()),RZe=$(nse()),NZe=$(qGe()),OZe=$(jGe()),kZe=$(QGe()),PZe=$(HGe()),DZe=$(GGe()),BZe=$(use()),LZe=$(KGe()),MZe=$(zGe());Gn.default={ACL_CAT:YGe.default,aclCat:YGe.default,ACL_DELUSER:JGe.default,aclDelUser:JGe.default,ACL_DRYRUN:XGe.default,aclDryRun:XGe.default,ACL_GENPASS:ZGe.default,aclGenPass:ZGe.default,ACL_GETUSER:eVe.default,aclGetUser:eVe.default,ACL_LIST:tVe.default,aclList:tVe.default,ACL_LOAD:rVe.default,aclLoad:rVe.default,ACL_LOG_RESET:nVe.default,aclLogReset:nVe.default,ACL_LOG:sVe.default,aclLog:sVe.default,ACL_SAVE:iVe.default,aclSave:iVe.default,ACL_SETUSER:aVe.default,aclSetUser:aVe.default,ACL_USERS:oVe.default,aclUsers:oVe.default,ACL_WHOAMI:cVe.default,aclWhoAmI:cVe.default,APPEND:uVe.default,append:uVe.default,ASKING:lVe.default,asking:lVe.default,AUTH:dVe.default,auth:dVe.default,BGREWRITEAOF:fVe.default,bgRewriteAof:fVe.default,BGSAVE:pVe.default,bgSave:pVe.default,BITCOUNT:mVe.default,bitCount:mVe.default,BITFIELD_RO:hVe.default,bitFieldRo:hVe.default,BITFIELD:gVe.default,bitField:gVe.default,BITOP:yVe.default,bitOp:yVe.default,BITPOS:AVe.default,bitPos:AVe.default,BLMOVE:xVe.default,blMove:xVe.default,BLMPOP:bVe.default,blmPop:bVe.default,BLPOP:_Ve.default,blPop:_Ve.default,BRPOP:EVe.default,brPop:EVe.default,BRPOPLPUSH:vVe.default,brPopLPush:vVe.default,BZMPOP:SVe.default,bzmPop:SVe.default,BZPOPMAX:IVe.default,bzPopMax:IVe.default,BZPOPMIN:CVe.default,bzPopMin:CVe.default,CLIENT_CACHING:TVe.default,clientCaching:TVe.default,CLIENT_GETNAME:wVe.default,clientGetName:wVe.default,CLIENT_GETREDIR:RVe.default,clientGetRedir:RVe.default,CLIENT_ID:NVe.default,clientId:NVe.default,CLIENT_INFO:OVe.default,clientInfo:OVe.default,CLIENT_KILL:dse.default,clientKill:dse.default,CLIENT_LIST:kVe.default,clientList:kVe.default,"CLIENT_NO-EVICT":PVe.default,clientNoEvict:PVe.default,"CLIENT_NO-TOUCH":DVe.default,clientNoTouch:DVe.default,CLIENT_PAUSE:BVe.default,clientPause:BVe.default,CLIENT_SETNAME:LVe.default,clientSetName:LVe.default,CLIENT_TRACKING:MVe.default,clientTracking:MVe.default,CLIENT_TRACKINGINFO:WVe.default,clientTrackingInfo:WVe.default,CLIENT_UNPAUSE:$Ve.default,clientUnpause:$Ve.default,CLUSTER_ADDSLOTS:UVe.default,clusterAddSlots:UVe.default,CLUSTER_ADDSLOTSRANGE:FVe.default,clusterAddSlotsRange:FVe.default,CLUSTER_BUMPEPOCH:qVe.default,clusterBumpEpoch:qVe.default,"CLUSTER_COUNT-FAILURE-REPORTS":jVe.default,clusterCountFailureReports:jVe.default,CLUSTER_COUNTKEYSINSLOT:QVe.default,clusterCountKeysInSlot:QVe.default,CLUSTER_DELSLOTS:HVe.default,clusterDelSlots:HVe.default,CLUSTER_DELSLOTSRANGE:GVe.default,clusterDelSlotsRange:GVe.default,CLUSTER_FAILOVER:fse.default,clusterFailover:fse.default,CLUSTER_FLUSHSLOTS:VVe.default,clusterFlushSlots:VVe.default,CLUSTER_FORGET:KVe.default,clusterForget:KVe.default,CLUSTER_GETKEYSINSLOT:zVe.default,clusterGetKeysInSlot:zVe.default,CLUSTER_INFO:YVe.default,clusterInfo:YVe.default,CLUSTER_KEYSLOT:JVe.default,clusterKeySlot:JVe.default,CLUSTER_LINKS:XVe.default,clusterLinks:XVe.default,CLUSTER_MEET:ZVe.default,clusterMeet:ZVe.default,CLUSTER_MYID:eKe.default,clusterMyId:eKe.default,CLUSTER_MYSHARDID:tKe.default,clusterMyShardId:tKe.default,CLUSTER_NODES:rKe.default,clusterNodes:rKe.default,CLUSTER_REPLICAS:nKe.default,clusterReplicas:nKe.default,CLUSTER_REPLICATE:sKe.default,clusterReplicate:sKe.default,CLUSTER_RESET:iKe.default,clusterReset:iKe.default,CLUSTER_SAVECONFIG:aKe.default,clusterSaveConfig:aKe.default,"CLUSTER_SET-CONFIG-EPOCH":oKe.default,clusterSetConfigEpoch:oKe.default,CLUSTER_SETSLOT:pse.default,clusterSetSlot:pse.default,CLUSTER_SLOTS:cKe.default,clusterSlots:cKe.default,COMMAND_COUNT:uKe.default,commandCount:uKe.default,COMMAND_GETKEYS:lKe.default,commandGetKeys:lKe.default,COMMAND_GETKEYSANDFLAGS:dKe.default,commandGetKeysAndFlags:dKe.default,COMMAND_INFO:fKe.default,commandInfo:fKe.default,COMMAND_LIST:mse.default,commandList:mse.default,COMMAND:pKe.default,command:pKe.default,CONFIG_GET:mKe.default,configGet:mKe.default,CONFIG_RESETASTAT:hKe.default,configResetStat:hKe.default,CONFIG_REWRITE:gKe.default,configRewrite:gKe.default,CONFIG_SET:yKe.default,configSet:yKe.default,COPY:AKe.default,copy:AKe.default,DBSIZE:xKe.default,dbSize:xKe.default,DECR:bKe.default,decr:bKe.default,DECRBY:_Ke.default,decrBy:_Ke.default,DEL:EKe.default,del:EKe.default,DELEX:vKe.default,delEx:vKe.default,DIGEST:SKe.default,digest:SKe.default,DUMP:IKe.default,dump:IKe.default,ECHO:CKe.default,echo:CKe.default,EVAL_RO:TKe.default,evalRo:TKe.default,EVAL:wKe.default,eval:wKe.default,EVALSHA_RO:RKe.default,evalShaRo:RKe.default,EVALSHA:NKe.default,evalSha:NKe.default,EXISTS:eze.default,exists:eze.default,EXPIRE:tze.default,expire:tze.default,EXPIREAT:rze.default,expireAt:rze.default,EXPIRETIME:nze.default,expireTime:nze.default,FLUSHALL:hse.default,flushAll:hse.default,FLUSHDB:sze.default,flushDb:sze.default,FCALL:ize.default,fCall:ize.default,FCALL_RO:aze.default,fCallRo:aze.default,FUNCTION_DELETE:oze.default,functionDelete:oze.default,FUNCTION_DUMP:cze.default,functionDump:cze.default,FUNCTION_FLUSH:uze.default,functionFlush:uze.default,FUNCTION_KILL:lze.default,functionKill:lze.default,FUNCTION_LIST_WITHCODE:dze.default,functionListWithCode:dze.default,FUNCTION_LIST:fze.default,functionList:fze.default,FUNCTION_LOAD:pze.default,functionLoad:pze.default,FUNCTION_RESTORE:mze.default,functionRestore:mze.default,FUNCTION_STATS:hze.default,functionStats:hze.default,GEOADD:OKe.default,geoAdd:OKe.default,GEODIST:kKe.default,geoDist:kKe.default,GEOHASH:PKe.default,geoHash:PKe.default,GEOPOS:DKe.default,geoPos:DKe.default,GEORADIUS_RO_WITH:BKe.default,geoRadiusRoWith:BKe.default,GEORADIUS_RO:LKe.default,geoRadiusRo:LKe.default,GEORADIUS_STORE:MKe.default,geoRadiusStore:MKe.default,GEORADIUS_WITH:WKe.default,geoRadiusWith:WKe.default,GEORADIUS:$Ke.default,geoRadius:$Ke.default,GEORADIUSBYMEMBER_RO_WITH:UKe.default,geoRadiusByMemberRoWith:UKe.default,GEORADIUSBYMEMBER_RO:FKe.default,geoRadiusByMemberRo:FKe.default,GEORADIUSBYMEMBER_STORE:qKe.default,geoRadiusByMemberStore:qKe.default,GEORADIUSBYMEMBER_WITH:jKe.default,geoRadiusByMemberWith:jKe.default,GEORADIUSBYMEMBER:QKe.default,geoRadiusByMember:QKe.default,GEOSEARCH_WITH:HKe.default,geoSearchWith:HKe.default,GEOSEARCH:GKe.default,geoSearch:GKe.default,GEOSEARCHSTORE:VKe.default,geoSearchStore:VKe.default,GET:KKe.default,get:KKe.default,GETBIT:zKe.default,getBit:zKe.default,GETDEL:YKe.default,getDel:YKe.default,GETEX:JKe.default,getEx:JKe.default,GETRANGE:XKe.default,getRange:XKe.default,GETSET:ZKe.default,getSet:ZKe.default,HDEL:gze.default,hDel:gze.default,HELLO:yze.default,hello:yze.default,HEXISTS:Aze.default,hExists:Aze.default,HEXPIRE:xze.default,hExpire:xze.default,HEXPIREAT:bze.default,hExpireAt:bze.default,HEXPIRETIME:_ze.default,hExpireTime:_ze.default,HGET:Eze.default,hGet:Eze.default,HGETALL:vze.default,hGetAll:vze.default,HGETDEL:Sze.default,hGetDel:Sze.default,HGETEX:Ize.default,hGetEx:Ize.default,HINCRBY:Cze.default,hIncrBy:Cze.default,HINCRBYFLOAT:Tze.default,hIncrByFloat:Tze.default,HKEYS:wze.default,hKeys:wze.default,HLEN:Rze.default,hLen:Rze.default,HMGET:Nze.default,hmGet:Nze.default,HPERSIST:Oze.default,hPersist:Oze.default,HPEXPIRE:kze.default,hpExpire:kze.default,HPEXPIREAT:Pze.default,hpExpireAt:Pze.default,HPEXPIRETIME:Dze.default,hpExpireTime:Dze.default,HPTTL:Bze.default,hpTTL:Bze.default,HRANDFIELD_COUNT_WITHVALUES:Lze.default,hRandFieldCountWithValues:Lze.default,HRANDFIELD_COUNT:Mze.default,hRandFieldCount:Mze.default,HRANDFIELD:Wze.default,hRandField:Wze.default,HSCAN:$ze.default,hScan:$ze.default,HSCAN_NOVALUES:Uze.default,hScanNoValues:Uze.default,HSET:Fze.default,hSet:Fze.default,HSETEX:qze.default,hSetEx:qze.default,HSETNX:jze.default,hSetNX:jze.default,HSTRLEN:Qze.default,hStrLen:Qze.default,HTTL:Hze.default,hTTL:Hze.default,HVALS:Gze.default,hVals:Gze.default,HOTKEYS_GET:Vze.default,hotkeysGet:Vze.default,HOTKEYS_RESET:Kze.default,hotkeysReset:Kze.default,HOTKEYS_START:zze.default,hotkeysStart:zze.default,HOTKEYS_STOP:Yze.default,hotkeysStop:Yze.default,INCR:Jze.default,incr:Jze.default,INCRBY:Xze.default,incrBy:Xze.default,INCRBYFLOAT:Zze.default,incrByFloat:Zze.default,INFO:eYe.default,info:eYe.default,KEYS:tYe.default,keys:tYe.default,LASTSAVE:rYe.default,lastSave:rYe.default,LATENCY_DOCTOR:nYe.default,latencyDoctor:nYe.default,LATENCY_GRAPH:sYe.default,latencyGraph:sYe.default,LATENCY_HISTORY:iYe.default,latencyHistory:iYe.default,LATENCY_HISTOGRAM:MZe.default,latencyHistogram:MZe.default,LATENCY_LATEST:aYe.default,latencyLatest:aYe.default,LATENCY_RESET:oYe.default,latencyReset:oYe.default,LCS_IDX_WITHMATCHLEN:cYe.default,lcsIdxWithMatchLen:cYe.default,LCS_IDX:uYe.default,lcsIdx:uYe.default,LCS_LEN:lYe.default,lcsLen:lYe.default,LCS:dYe.default,lcs:dYe.default,LINDEX:fYe.default,lIndex:fYe.default,LINSERT:pYe.default,lInsert:pYe.default,LLEN:mYe.default,lLen:mYe.default,LMOVE:hYe.default,lMove:hYe.default,LMPOP:gYe.default,lmPop:gYe.default,LOLWUT:Qmr.default,LPOP_COUNT:yYe.default,lPopCount:yYe.default,LPOP:AYe.default,lPop:AYe.default,LPOS_COUNT:xYe.default,lPosCount:xYe.default,LPOS:bYe.default,lPos:bYe.default,LPUSH:_Ye.default,lPush:_Ye.default,LPUSHX:EYe.default,lPushX:EYe.default,LRANGE:vYe.default,lRange:vYe.default,LREM:SYe.default,lRem:SYe.default,LSET:IYe.default,lSet:IYe.default,LTRIM:CYe.default,lTrim:CYe.default,MEMORY_DOCTOR:TYe.default,memoryDoctor:TYe.default,"MEMORY_MALLOC-STATS":wYe.default,memoryMallocStats:wYe.default,MEMORY_PURGE:RYe.default,memoryPurge:RYe.default,MEMORY_STATS:NYe.default,memoryStats:NYe.default,MEMORY_USAGE:OYe.default,memoryUsage:OYe.default,MGET:kYe.default,mGet:kYe.default,MIGRATE:PYe.default,migrate:PYe.default,MODULE_LIST:DYe.default,moduleList:DYe.default,MODULE_LOAD:BYe.default,moduleLoad:BYe.default,MODULE_UNLOAD:LYe.default,moduleUnload:LYe.default,MOVE:MYe.default,move:MYe.default,MSET:WYe.default,mSet:WYe.default,MSETEX:$Ye.default,mSetEx:$Ye.default,MSETNX:UYe.default,mSetNX:UYe.default,OBJECT_ENCODING:FYe.default,objectEncoding:FYe.default,OBJECT_FREQ:qYe.default,objectFreq:qYe.default,OBJECT_IDLETIME:jYe.default,objectIdleTime:jYe.default,OBJECT_REFCOUNT:QYe.default,objectRefCount:QYe.default,PERSIST:HYe.default,persist:HYe.default,PEXPIRE:GYe.default,pExpire:GYe.default,PEXPIREAT:VYe.default,pExpireAt:VYe.default,PEXPIRETIME:KYe.default,pExpireTime:KYe.default,PFADD:zYe.default,pfAdd:zYe.default,PFCOUNT:YYe.default,pfCount:YYe.default,PFMERGE:JYe.default,pfMerge:JYe.default,PING:XYe.default,ping:XYe.default,PSETEX:ZYe.default,pSetEx:ZYe.default,PTTL:eJe.default,pTTL:eJe.default,PUBLISH:tJe.default,publish:tJe.default,PUBSUB_CHANNELS:rJe.default,pubSubChannels:rJe.default,PUBSUB_NUMPAT:nJe.default,pubSubNumPat:nJe.default,PUBSUB_NUMSUB:sJe.default,pubSubNumSub:sJe.default,PUBSUB_SHARDNUMSUB:iJe.default,pubSubShardNumSub:iJe.default,PUBSUB_SHARDCHANNELS:aJe.default,pubSubShardChannels:aJe.default,RANDOMKEY:oJe.default,randomKey:oJe.default,READONLY:cJe.default,readonly:cJe.default,RENAME:uJe.default,rename:uJe.default,RENAMENX:lJe.default,renameNX:lJe.default,REPLICAOF:dJe.default,replicaOf:dJe.default,"RESTORE-ASKING":fJe.default,restoreAsking:fJe.default,RESTORE:pJe.default,restore:pJe.default,RPOP_COUNT:hJe.default,rPopCount:hJe.default,ROLE:mJe.default,role:mJe.default,RPOP:gJe.default,rPop:gJe.default,RPOPLPUSH:yJe.default,rPopLPush:yJe.default,RPUSH:AJe.default,rPush:AJe.default,RPUSHX:xJe.default,rPushX:xJe.default,SADD:bJe.default,sAdd:bJe.default,SCAN:_Je.default,scan:_Je.default,SCARD:EJe.default,sCard:EJe.default,SCRIPT_DEBUG:vJe.default,scriptDebug:vJe.default,SCRIPT_EXISTS:SJe.default,scriptExists:SJe.default,SCRIPT_FLUSH:IJe.default,scriptFlush:IJe.default,SCRIPT_KILL:CJe.default,scriptKill:CJe.default,SCRIPT_LOAD:TJe.default,scriptLoad:TJe.default,SDIFF:wJe.default,sDiff:wJe.default,SDIFFSTORE:RJe.default,sDiffStore:RJe.default,SET:NJe.default,set:NJe.default,SETBIT:OJe.default,setBit:OJe.default,SETEX:kJe.default,setEx:kJe.default,SETNX:PJe.default,setNX:PJe.default,SETRANGE:DJe.default,setRange:DJe.default,SINTER:BJe.default,sInter:BJe.default,SINTERCARD:LJe.default,sInterCard:LJe.default,SINTERSTORE:MJe.default,sInterStore:MJe.default,SISMEMBER:WJe.default,sIsMember:WJe.default,SMEMBERS:$Je.default,sMembers:$Je.default,SMISMEMBER:UJe.default,smIsMember:UJe.default,SMOVE:FJe.default,sMove:FJe.default,SORT_RO:qJe.default,sortRo:qJe.default,SORT_STORE:jJe.default,sortStore:jJe.default,SORT:QJe.default,sort:QJe.default,SPOP_COUNT:HJe.default,sPopCount:HJe.default,SPOP:GJe.default,sPop:GJe.default,SPUBLISH:VJe.default,sPublish:VJe.default,SRANDMEMBER_COUNT:KJe.default,sRandMemberCount:KJe.default,SRANDMEMBER:zJe.default,sRandMember:zJe.default,SREM:YJe.default,sRem:YJe.default,SSCAN:JJe.default,sScan:JJe.default,STRLEN:XJe.default,strLen:XJe.default,SUNION:ZJe.default,sUnion:ZJe.default,SUNIONSTORE:eXe.default,sUnionStore:eXe.default,SWAPDB:tXe.default,swapDb:tXe.default,TIME:rXe.default,time:rXe.default,TOUCH:nXe.default,touch:nXe.default,TTL:sXe.default,ttl:sXe.default,TYPE:iXe.default,type:iXe.default,UNLINK:aXe.default,unlink:aXe.default,WAIT:oXe.default,wait:oXe.default,XACK:cXe.default,xAck:cXe.default,XACKDEL:uXe.default,xAckDel:uXe.default,XADD_NOMKSTREAM:lXe.default,xAddNoMkStream:lXe.default,XADD:dXe.default,xAdd:dXe.default,XAUTOCLAIM_JUSTID:fXe.default,xAutoClaimJustId:fXe.default,XAUTOCLAIM:pXe.default,xAutoClaim:pXe.default,XCLAIM_JUSTID:mXe.default,xClaimJustId:mXe.default,XCLAIM:hXe.default,xClaim:hXe.default,XCFGSET:gXe.default,xCfgSet:gXe.default,XDEL:yXe.default,xDel:yXe.default,XDELEX:AXe.default,xDelEx:AXe.default,XGROUP_CREATE:xXe.default,xGroupCreate:xXe.default,XGROUP_CREATECONSUMER:bXe.default,xGroupCreateConsumer:bXe.default,XGROUP_DELCONSUMER:_Xe.default,xGroupDelConsumer:_Xe.default,XGROUP_DESTROY:EXe.default,xGroupDestroy:EXe.default,XGROUP_SETID:vXe.default,xGroupSetId:vXe.default,XINFO_CONSUMERS:SXe.default,xInfoConsumers:SXe.default,XINFO_GROUPS:IXe.default,xInfoGroups:IXe.default,XINFO_STREAM:CXe.default,xInfoStream:CXe.default,XLEN:TXe.default,xLen:TXe.default,XPENDING_RANGE:wXe.default,xPendingRange:wXe.default,XPENDING:RXe.default,xPending:RXe.default,XRANGE:NXe.default,xRange:NXe.default,XREAD:OXe.default,xRead:OXe.default,XREADGROUP:kXe.default,xReadGroup:kXe.default,XREVRANGE:PXe.default,xRevRange:PXe.default,XSETID:DXe.default,xSetId:DXe.default,XTRIM:BXe.default,xTrim:BXe.default,ZADD_INCR:LXe.default,zAddIncr:LXe.default,ZADD:MXe.default,zAdd:MXe.default,ZCARD:WXe.default,zCard:WXe.default,ZCOUNT:$Xe.default,zCount:$Xe.default,ZDIFF_WITHSCORES:UXe.default,zDiffWithScores:UXe.default,ZDIFF:FXe.default,zDiff:FXe.default,ZDIFFSTORE:qXe.default,zDiffStore:qXe.default,ZINCRBY:jXe.default,zIncrBy:jXe.default,ZINTER_WITHSCORES:QXe.default,zInterWithScores:QXe.default,ZINTER:HXe.default,zInter:HXe.default,ZINTERCARD:GXe.default,zInterCard:GXe.default,ZINTERSTORE:VXe.default,zInterStore:VXe.default,ZLEXCOUNT:KXe.default,zLexCount:KXe.default,ZMPOP:zXe.default,zmPop:zXe.default,ZMSCORE:YXe.default,zmScore:YXe.default,ZPOPMAX_COUNT:JXe.default,zPopMaxCount:JXe.default,ZPOPMAX:XXe.default,zPopMax:XXe.default,ZPOPMIN_COUNT:ZXe.default,zPopMinCount:ZXe.default,ZPOPMIN:eZe.default,zPopMin:eZe.default,ZRANDMEMBER_COUNT_WITHSCORES:tZe.default,zRandMemberCountWithScores:tZe.default,ZRANDMEMBER_COUNT:rZe.default,zRandMemberCount:rZe.default,ZRANDMEMBER:nZe.default,zRandMember:nZe.default,ZRANGE_WITHSCORES:sZe.default,zRangeWithScores:sZe.default,ZRANGE:iZe.default,zRange:iZe.default,ZRANGEBYLEX:aZe.default,zRangeByLex:aZe.default,ZRANGEBYSCORE_WITHSCORES:oZe.default,zRangeByScoreWithScores:oZe.default,ZRANGEBYSCORE:cZe.default,zRangeByScore:cZe.default,ZRANGESTORE:uZe.default,zRangeStore:uZe.default,ZRANK_WITHSCORE:dZe.default,zRankWithScore:dZe.default,ZRANK:fZe.default,zRank:fZe.default,ZREM:pZe.default,zRem:pZe.default,ZREMRANGEBYLEX:mZe.default,zRemRangeByLex:mZe.default,ZREMRANGEBYRANK:hZe.default,zRemRangeByRank:hZe.default,ZREMRANGEBYSCORE:lZe.default,zRemRangeByScore:lZe.default,ZREVRANK:gZe.default,zRevRank:gZe.default,ZSCAN:yZe.default,zScan:yZe.default,ZSCORE:AZe.default,zScore:AZe.default,ZUNION_WITHSCORES:xZe.default,zUnionWithScores:xZe.default,ZUNION:bZe.default,zUnion:bZe.default,ZUNIONSTORE:_Ze.default,zUnionStore:_Ze.default,VADD:EZe.default,vAdd:EZe.default,VCARD:vZe.default,vCard:vZe.default,VDIM:SZe.default,vDim:SZe.default,VEMB:IZe.default,vEmb:IZe.default,VEMB_RAW:CZe.default,vEmbRaw:CZe.default,VGETATTR:TZe.default,vGetAttr:TZe.default,VINFO:wZe.default,vInfo:wZe.default,VLINKS:RZe.default,vLinks:RZe.default,VLINKS_WITHSCORES:NZe.default,vLinksWithScores:NZe.default,VRANDMEMBER:OZe.default,vRandMember:OZe.default,VRANGE:kZe.default,vRange:kZe.default,VREM:PZe.default,vRem:PZe.default,VSETATTR:DZe.default,vSetAttr:DZe.default,VSIM:BZe.default,vSim:BZe.default,VSIM_WITHSCORES:LZe.default,vSimWithScores:LZe.default};var Hmr=$(Pu()),{HOTKEYS_GET:Wcn,hotkeysGet:$cn,HOTKEYS_RESET:Ucn,hotkeysReset:Fcn,HOTKEYS_START:qcn,hotkeysStart:jcn,HOTKEYS_STOP:Qcn,hotkeysStop:Hcn,...Gmr}=Hmr.default;Gn.NON_STICKY_COMMANDS=Gmr});var rT=_(pr=>{"use strict";var WZe=pr&&pr.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},$Ze;Object.defineProperty(pr,"__esModule",{value:!0});pr.emitDiagnostics=pr.dbgMaintenance=pr.MAINTENANCE_EVENTS=pr.SMIGRATED_EVENT=void 0;var UZe=require("net"),Vmr=require("dns/promises"),c1=WZe(require("node:assert")),Kmr=require("node:timers/promises"),zmr=WZe(require("node:diagnostics_channel"));pr.SMIGRATED_EVENT="__SMIGRATED";pr.MAINTENANCE_EVENTS={PAUSE_WRITING:"pause-writing",RESUME_WRITING:"resume-writing",TIMEOUTS_UPDATE:"timeouts-update"};var fm={MOVING:"MOVING",MIGRATING:"MIGRATING",MIGRATED:"MIGRATED",FAILING_OVER:"FAILING_OVER",FAILED_OVER:"FAILED_OVER",SMIGRATING:"SMIGRATING",SMIGRATED:"SMIGRATED"},Ymr=(...t)=>{if(process.env.REDIS_DEBUG_MAINTENANCE)return console.log(new Date().toISOString().slice(11,23),"[MNT]",...t)};pr.dbgMaintenance=Ymr;var Jmr=t=>{if(!process.env.REDIS_EMIT_DIAGNOSTICS)return;zmr.default.channel("redis.maintenance").publish(t)};pr.emitDiagnostics=Jmr;var zL=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 Zmr(n,r,e)],errorHandler:i=>{if((0,pr.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,pr.dbgMaintenance)("ONPUSH:",e.map(String)),!Array.isArray(e)||!Object.values(fm).includes(String(e[0])))return!1;let r=String(e[0]);switch((0,pr.emitDiagnostics)({type:r,timestamp:Date.now(),data:{push:e.map(String)}}),r){case fm.MOVING:{let n=e[2],s=e[3]?String(e[3]):null;return(0,pr.dbgMaintenance)("Received MOVING:",n,s),this.#o(n,s),!0}case fm.MIGRATING:case fm.SMIGRATING:case fm.FAILING_OVER:return(0,pr.dbgMaintenance)("Received MIGRATING|SMIGRATING|FAILING_OVER"),this.#s(),!0;case fm.MIGRATED:case fm.FAILED_OVER:return(0,pr.dbgMaintenance)("Received MIGRATED|FAILED_OVER"),this.#i(),!0;case fm.SMIGRATED:return(0,pr.dbgMaintenance)("Received SMIGRATED"),this.#c(e),this.#i(),!0}return!1};#o=async(e,r)=>{this.#s();let n,s;if(r===null){(0,c1.default)(this.#t.maintEndpointType==="none");let{host:u,port:l}=this.#l();n=u,s=l;let d=e*1e3/2;(0,pr.dbgMaintenance)(`Wait for ${d}ms`),await(0,Kmr.setTimeout)(d)}else{let u=r.split(":");n=u[0],s=Number(u[1])}(0,pr.dbgMaintenance)("Pausing writing of new commands to old socket"),this.#n._pause(),(0,pr.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,pr.dbgMaintenance)("[ERR]",u)}),(0,pr.dbgMaintenance)(`Tmp client created in ${(performance.now()-i).toFixed(2)}ms`),(0,pr.dbgMaintenance)(`Set timeout for tmp client to ${this.#t.maintRelaxedSocketTimeout}`),a._maintenanceUpdate({relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout}),(0,pr.dbgMaintenance)(`Connecting tmp client: ${n}:${s}`),i=performance.now(),await a.connect(),(0,pr.dbgMaintenance)(`Connected to tmp client in ${(performance.now()-i).toFixed(2)}ms`),(0,pr.dbgMaintenance)("Wait for all in-flight commands to complete"),await this.#e.waitForInflightCommandsToComplete(),(0,pr.dbgMaintenance)("In-flight commands completed"),(0,pr.dbgMaintenance)("Swap client sockets...");let o=this.#n._ejectSocket(),c=a._ejectSocket();this.#n._insertSocket(c),a._insertSocket(o),a.destroy(),(0,pr.dbgMaintenance)("Swap client sockets done."),(0,pr.dbgMaintenance)("Resume writing"),this.#n._unpause(),this.#i()};#s=()=>{if(this.#r++,this.#r>1){(0,pr.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,pr.dbgMaintenance)("Not ready to unrelax timeouts yet");return}let e={relaxedCommandTimeout:void 0,relaxedSocketTimeout:void 0};this.#n._maintenanceUpdate(e)};#c=e=>{let r=$Ze.parseSMigratedPush(e);(0,pr.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(m=>{let p=m.indexOf("-");return p===-1?Number(m):[Number(m.substring(0,p)),Number(m.substring(p+1))]}),d=r.get(o)??[],f=d.find(m=>m.addr.host===c&&m.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,c1.default)(this.#t.socket!==void 0),(0,c1.default)("host"in this.#t.socket),(0,c1.default)(typeof this.#t.socket.host=="string");let e=this.#t.socket.host;(0,c1.default)(typeof this.#t.socket.port=="number");let r=this.#t.socket.port;return{host:e,port:r}}};$Ze=zL;pr.default=zL;function Xmr(t){let e=(0,UZe.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 Zmr(t,e,r){if((0,c1.default)(r.maintEndpointType!==void 0),r.maintEndpointType!=="auto")return(0,pr.dbgMaintenance)(`Determine endpoint type: ${r.maintEndpointType}`),r.maintEndpointType;let n=(0,UZe.isIP)(e)?e:(await(0,Vmr.lookup)(e,{family:0})).address,s=Xmr(n),i;return t?i=s?"internal-fqdn":"external-fqdn":i=s?"internal-ip":"external-ip",(0,pr.dbgMaintenance)(`Determine endpoint type: ${i}`),i}});var GZe=_(nT=>{"use strict";var HZe=nT&&nT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(nT,"__esModule",{value:!0});var FZe=require("node:events"),qZe=HZe(require("node:net")),ehr=HZe(require("node:tls")),Xl=zl(),jZe=require("node:timers/promises"),QZe=rT(),gse=class extends FZe.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 ehr.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 qZe.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 qZe.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 Xl.ReconnectStrategyError(n,r)):n}async connect(){if(this.#i)throw new Error("Socket already opened");return this.#i=!0,this.#m()}async#m(){let e=0;do try{this.#s=await this.#A(),this.emit("connect");try{if(await this.#e(),!this.#s||this.#s.destroyed||!this.#s.readable||!this.#s.writable){let r=this.#f(e++,new Xl.SocketClosedUnexpectedlyError);if(typeof r!="number")throw r;await(0,jZe.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,jZe.setTimeout)(n),this.emit("reconnecting")}while(this.#i&&!this.#c)}setMaintenanceTimeout(e){if((0,QZe.dbgMaintenance)(`Set socket timeout to ${e}`),this.#o===e){(0,QZe.dbgMaintenance)(`Socket already set maintenanceCommandTimeout to ${e}, skipping`);return}this.#o=e,e!==void 0?this.#s?.setTimeout(e):this.#s?.setTimeout(this.#a??0)}async#A(){let e=this.#n.create(),r;return this.#t!==void 0&&(r=()=>e.destroy(new Xl.ConnectionTimeoutError),e.once("timeout",r),e.setTimeout(this.#t)),this.#l&&e.unref(),await(0,FZe.once)(e,this.#n.event),r&&e.removeListener("timeout",r),this.#a&&(e.once("timeout",()=>{let n=this.#o?new Xl.SocketTimeoutDuringMaintenanceError(this.#o):new Xl.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 Xl.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 Xl.ClientClosedError;this.#i=!1;let r=await e();return this.destroySocket(),r}close(){if(!this.#i)throw new Xl.ClientClosedError;this.#i=!1}destroy(){if(!this.#i)throw new Xl.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 Xl.SocketTimeoutError)return!1;let n=Math.floor(Math.random()*200);return Math.min(Math.pow(2,e)*50,2e3)+n}};nT.default=gse});var Ase=_(YL=>{"use strict";Object.defineProperty(YL,"__esModule",{value:!0});YL.Token=void 0;var yse=class{value;expiresAtMs;receivedAtMs;constructor(e,r,n){this.value=e,this.expiresAtMs=r,this.receivedAtMs=n}getTtlMs(e){return this.expiresAtMs<e?0:this.expiresAtMs-e}};YL.Token=yse});var VZe=_(u1=>{"use strict";Object.defineProperty(u1,"__esModule",{value:!0});u1.TokenManager=u1.IDPError=void 0;var thr=Ase(),JL=class extends Error{message;isRetryable;constructor(e,r){super(e),this.message=e,this.isRetryable=r,this.name="IDPError"}};u1.IDPError=JL;var xse=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 thr.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 JL(n,r))}};u1.TokenManager=xse});var KZe=_(l1=>{"use strict";Object.defineProperty(l1,"__esModule",{value:!0});l1.UnableToObtainNewCredentialsError=l1.CredentialsError=void 0;var bse=class extends Error{constructor(e){super(`Re-authentication with latest credentials failed: ${e}`),this.name="CredentialsError"}};l1.CredentialsError=bse;var _se=class extends Error{constructor(e){super(`Unable to obtain new credentials : ${e}`),this.name="UnableToObtainNewCredentialsError"}};l1.UnableToObtainNewCredentialsError=_se});var JZe=_(Wc=>{"use strict";Object.defineProperty(Wc,"__esModule",{value:!0});Wc.Token=Wc.CredentialsError=Wc.UnableToObtainNewCredentialsError=Wc.IDPError=Wc.TokenManager=void 0;var zZe=VZe();Object.defineProperty(Wc,"TokenManager",{enumerable:!0,get:function(){return zZe.TokenManager}});Object.defineProperty(Wc,"IDPError",{enumerable:!0,get:function(){return zZe.IDPError}});var YZe=KZe();Object.defineProperty(Wc,"UnableToObtainNewCredentialsError",{enumerable:!0,get:function(){return YZe.UnableToObtainNewCredentialsError}});Object.defineProperty(Wc,"CredentialsError",{enumerable:!0,get:function(){return YZe.CredentialsError}});var rhr=Ase();Object.defineProperty(Wc,"Token",{enumerable:!0,get:function(){return rhr.Token}})});var ZL=_(Zl=>{"use strict";var nhr=Zl&&Zl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Zl,"__esModule",{value:!0});Zl.EmptyAwareSinglyLinkedList=Zl.SinglyLinkedList=Zl.DoublyLinkedList=void 0;var shr=nhr(require("events")),Ese=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}}};Zl.DoublyLinkedList=Ese;var XL=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}};Zl.SinglyLinkedList=XL;var vse=class extends XL{events=new shr.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")}};Zl.EmptyAwareSinglyLinkedList=vse});var XZe=_(Sse=>{"use strict";Object.defineProperty(Sse,"__esModule",{value:!0});var sT=`\r
`;function ihr(t){let e=[],r="*"+t.length+sT;for(let n=0;n<t.length;n++){let s=t[n];if(typeof s=="string")r+="$"+Buffer.byteLength(s)+sT+s+sT;else if(s instanceof Buffer)e.push(r+"$"+s.length.toString()+sT,s),r=sT;else throw new TypeError(`"arguments[${n}]" must be of type "string | Buffer", got ${typeof s} instead.`)}return e.push(r),e}Sse.default=ihr});var Cse=_((tun,Ise)=>{var ZZe=[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],ahr=function(e){for(var r,n=0,s=0,i=[],a=e.length;n<a;n++)r=e.charCodeAt(n),r<128?i[s++]=r:r<2048?(i[s++]=r>>6|192,i[s++]=r&63|128):(r&64512)===55296&&n+1<e.length&&(e.charCodeAt(n+1)&64512)===56320?(r=65536+((r&1023)<<10)+(e.charCodeAt(++n)&1023),i[s++]=r>>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},eet=Ise.exports=function(e){for(var r,n=0,s=-1,i=0,a=0,o=typeof e=="string"?ahr(e):e,c=o.length;n<c;){if(r=o[n++],s===-1)r===123&&(s=n);else if(r!==125)a=ZZe[(r^a>>8)&255]^a<<8;else if(n-1!==s)return a&16383;i=ZZe[(r^i>>8)&255]^i<<8}return i&16383};Ise.exports.generateMulti=function(e){for(var r=1,n=e.length,s=eet(e[0]);r<n;)if(eet(e[r++])!==s)return-1;return s}});var iT=_(Bt=>{"use strict";var ohr=Bt&&Bt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Bt,"__esModule",{value:!0});Bt.PubSub=Bt.PUBSUB_TYPE=void 0;var chr=ohr(Cse());Bt.PUBSUB_TYPE={CHANNELS:"CHANNELS",PATTERNS:"PATTERNS",SHARDED:"SHARDED"};var wi={[Bt.PUBSUB_TYPE.CHANNELS]:{subscribe:Buffer.from("subscribe"),unsubscribe:Buffer.from("unsubscribe"),message:Buffer.from("message")},[Bt.PUBSUB_TYPE.PATTERNS]:{subscribe:Buffer.from("psubscribe"),unsubscribe:Buffer.from("punsubscribe"),message:Buffer.from("pmessage")},[Bt.PUBSUB_TYPE.SHARDED]:{subscribe:Buffer.from("ssubscribe"),unsubscribe:Buffer.from("sunsubscribe"),message:Buffer.from("smessage")}},Tse=class t{static isStatusReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return wi[Bt.PUBSUB_TYPE.CHANNELS].subscribe.equals(r)||wi[Bt.PUBSUB_TYPE.CHANNELS].unsubscribe.equals(r)||wi[Bt.PUBSUB_TYPE.PATTERNS].subscribe.equals(r)||wi[Bt.PUBSUB_TYPE.PATTERNS].unsubscribe.equals(r)||wi[Bt.PUBSUB_TYPE.SHARDED].subscribe.equals(r)}static isShardedUnsubscribe(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return wi[Bt.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={[Bt.PUBSUB_TYPE.CHANNELS]:new Map,[Bt.PUBSUB_TYPE.PATTERNS]:new Map,[Bt.PUBSUB_TYPE.SHARDED]:new Map};subscribe(e,r,n,s){let i=[wi[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:[wi[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=[wi[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([wi[e].unsubscribe],NaN,()=>i.clear());let a=t.#e(r);if(!n)return this.#o([wi[e].unsubscribe,...a],a.length,()=>{for(let c of a)i.delete(c)});let o=[wi[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[Bt.PUBSUB_TYPE.CHANNELS].size!==0||this.listeners[Bt.PUBSUB_TYPE.PATTERNS].size!==0||this.listeners[Bt.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===Bt.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:[wi[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:[wi[Bt.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 wi[Bt.PUBSUB_TYPE.CHANNELS].message.equals(r)?(this.#l(Bt.PUBSUB_TYPE.CHANNELS,e[2],e[1]),!0):wi[Bt.PUBSUB_TYPE.PATTERNS].message.equals(r)?(this.#l(Bt.PUBSUB_TYPE.PATTERNS,e[3],e[2],e[1]),!0):wi[Bt.PUBSUB_TYPE.SHARDED].message.equals(r)?(this.#l(Bt.PUBSUB_TYPE.SHARDED,e[2],e[1]),!0):!1}removeShardedListeners(e){let r=this.listeners[Bt.PUBSUB_TYPE.SHARDED].get(e);return this.listeners[Bt.PUBSUB_TYPE.SHARDED].delete(e),this.#s(),r}removeAllListeners(){let e={[Bt.PUBSUB_TYPE.CHANNELS]:this.listeners[Bt.PUBSUB_TYPE.CHANNELS],[Bt.PUBSUB_TYPE.PATTERNS]:this.listeners[Bt.PUBSUB_TYPE.PATTERNS],[Bt.PUBSUB_TYPE.SHARDED]:this.listeners[Bt.PUBSUB_TYPE.SHARDED]};return this.#s(),this.listeners[Bt.PUBSUB_TYPE.CHANNELS]=new Map,this.listeners[Bt.PUBSUB_TYPE.PATTERNS]=new Map,this.listeners[Bt.PUBSUB_TYPE.SHARDED]=new Map,e}removeShardedPubSubListenersForSlots(e){let r=new Map;for(let[n,s]of this.listeners[Bt.PUBSUB_TYPE.SHARDED])e.has((0,chr.default)(n))&&(r.set(n,s),this.listeners[Bt.PUBSUB_TYPE.SHARDED].delete(n));return this.#s(),{[Bt.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)}};Bt.PubSub=Tse});var ret=_(oT=>{"use strict";var uhr=oT&&oT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(oT,"__esModule",{value:!0});var tet=ZL(),lhr=uhr(XZe()),aT=UL(),wse=iT(),d1=zl(),f1=rT(),dhr=Buffer.from("pong"),fhr=Buffer.from("RESET"),phr={...aT.PUSH_TYPE_MAPPING,[aT.RESP_TYPES.SIMPLE_STRING]:Buffer},Rse=class t{#e;#t;#r=new tet.DoublyLinkedList;#n=new tet.EmptyAwareSinglyLinkedList;#a;#o;decoder;#s=new wse.PubSub;#i=[this.#p.bind(this)];#c;setMaintenanceCommandTimeout(e){if(this.#c===e){(0,f1.dbgMaintenance)(`Queue already set maintenanceCommandTimeout to ${e}, skipping`);return}if((0,f1.dbgMaintenance)(`Setting maintenance command timeout to ${e}`),this.#c=e,this.#c===void 0){(0,f1.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 d1.CommandTimeoutDuringMaintenanceError(a))},originalTimeout:i.timeout?.originalTimeout},o.addEventListener("abort",i.timeout.listener,{once:!0})}(0,f1.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=wse.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||wse.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 aT.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,f1.dbgMaintenance)(`waitForInflightCommandsToComplete timed out after ${i}ms with ${a} commands still waiting`),e?.flushOnTimeout&&a>0&&((0,f1.dbgMaintenance)(`Flushing ${a} commands that timed out waiting for reply`),this.#v(new d1.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 d1.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 d1.CommandTimeoutDuringMaintenanceError(o):new d1.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 d1.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:aT.PUSH_TYPE_MAPPING},r)})}#A(){this.#e===2&&(this.decoder.onReply=e=>{if(Array.isArray(e)){if(this.#p(e))return;let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];if(dhr.equals(r)){let{resolve:n,typeMapping:s}=this.#n.shift(),i=e[1].length===0?e[0]:e[1];n(s?.[aT.RESP_TYPES.SIMPLE_STRING]===Buffer?i:i.toString());return}}return this.#l(e)},this.decoder.getTypeMapping=()=>phr)}subscribe(e,r,n,s){let i=this.#s.subscribe(e,r,n,s);if(i)return this.#A(),this.#m(i)}#g(){this.decoder.onReply=e=>this.#l(e),this.decoder.getTypeMapping=()=>this.#d()}unsubscribe(e,r,n,s){let i=this.#s.unsubscribe(e,r,n,s);if(i){if(i&&this.#e===2){let{resolve:a}=i;i.resolve=()=>{this.#s.isActive||this.#g(),a()}}return this.#m(i)}}removeAllPubSubListeners(){return this.#s.removeAllListeners()}removeShardedPubSubListenersForSlots(e){return this.#s.removeShardedPubSubListenersForSlots(e)}resubscribe(e){let r=this.#s.resubscribe();if(r.length)return this.#A(),Promise.all(r.map(n=>this.#m(n,!0,e)))}extendPubSubChannelListeners(e,r,n){let s=this.#s.extendChannelListeners(e,r,n);if(s)return this.#A(),this.#m(s)}extendPubSubListeners(e,r){let n=this.#s.extendTypeListeners(e,r);if(n)return this.#A(),this.#m(n)}getPubSubListeners(e){return this.#s.listeners[e]}monitor(e,r){return new Promise((n,s)=>{let i=r?.typeMapping??{};this.#r.add({args:["MONITOR"],chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:()=>{this.#_?this.#_=e:this.decoder.onReply=e,this.decoder.getTypeMapping=()=>i,n()},reject:s,channelsCounter:void 0,typeMapping:i},r?.asap)})}resetDecoder(){this.#g(),this.decoder.reset()}#_;async reset(e,r){return new Promise((n,s)=>{this.#_=this.decoder.onReply,this.decoder.onReply=i=>{if(typeof i=="string"&&i==="RESET"||i instanceof Buffer&&fhr.equals(i)){this.#g(),this.#_=void 0,this.#s.reset(),this.#n.shift().resolve(i);return}this.#_(i)},this.#r.push({args:["RESET"],chainId:e,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r})})}isWaitingToWrite(){return this.#r.length>0}*commandsToWrite(){let e=this.#r.shift();for(;e;){let r;try{r=(0,lhr.default)(e.args)}catch(n){e.reject(n),e=this.#r.shift();continue}e.args=void 0,e.abort&&(t.#y(e),e.abort=void 0),e.timeout&&(t.#I(e),e.timeout=void 0),this.#o=e.chainId,e.chainId=void 0,this.#n.push(e),yield r,e=this.#r.shift()}}#v(e){for(let r of this.#n)r.reject(e);this.#n.reset()}static#y(e){e.abort.signal.removeEventListener("abort",e.abort.listener)}static#I(e){e.timeout?.signal.removeEventListener("abort",e.timeout.listener)}static#E(e,r){e.abort&&t.#y(e),e.timeout&&t.#I(e),e.reject(r)}flushWaitingForReply(e){if(this.resetDecoder(),this.#s.reset(),this.#v(e),!!this.#o){for(;this.#r.head?.value.chainId===this.#o;)t.#E(this.#r.shift(),e);this.#o=void 0}}flushAll(e){this.resetDecoder(),this.#s.reset(),this.#v(e);for(let r of this.#r)t.#E(r,e);this.#r.reset()}isEmpty(){return this.#r.length===0&&this.#n.length===0}extractCommandsForSlots(e){let r=[],n=this.#r.head;for(;n!==void 0;)if(n.value.slotNumber!==void 0&&e.has(n.value.slotNumber)){r.push(n.value);let s=n;n=n.next,this.#r.remove(s)}else n=n.next;return r}extractAllCommands(){let e=[],r=this.#r.head;for(;r;)e.push(r.value),this.#r.remove(r),r=r.next;return e}prependCommandsToWrite(e){if(e.length)for(let r=e.length-1;r>=0;r--)this.#r.unshift(e[r])}};oT.default=Rse});var td=_(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});ed.scriptArgumentsPrefix=ed.functionArgumentsPrefix=ed.getTransformReply=ed.attachConfig=void 0;function net(){throw new Error("Some RESP3 results for Redis Query Engine responses may change. Refer to the readme for guidance")}function mhr({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]=net: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,m]of Object.entries(l))a.RESP==3&&m.unstableResp3&&!a.unstableResp3?d[f]=net:d[f]=n(m,o);set(c.prototype,u,d)}if(a?.functions)for(let[u,l]of Object.entries(a.functions)){let d=Object.create(null);for(let[f,m]of Object.entries(l))d[f]=s(f,m,o);set(c.prototype,u,d)}if(a?.scripts)for(let[u,l]of Object.entries(a.scripts))c.prototype[u]=i(l,o);return c}ed.attachConfig=mhr;function set(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 hhr(t,e){switch(typeof t.transformReply){case"function":return t.transformReply;case"object":return t.transformReply[e]}}ed.getTransformReply=hhr;function ghr(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}ed.functionArgumentsPrefix=ghr;function yhr(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}ed.scriptArgumentsPrefix=yhr});var cT=_(Ose=>{"use strict";Object.defineProperty(Ose,"__esModule",{value:!0});var iet=zl(),Nse=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 iet.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 iet.MultiErrorReply(n,r);return n}};Ose.default=Nse});var Pse=_(uT=>{"use strict";var aet=uT&&uT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(uT,"__esModule",{value:!0});var Ahr=aet(Pu()),xhr=aet(cT()),p1=td(),e6=Yl(),kse=class t{static#e(e,r){let n=(0,p1.getTransformReply)(e,r);return function(...s){let i=new e6.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,p1.getTransformReply)(e,r);return function(...s){let i=new e6.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,p1.functionArgumentsPrefix)(e,r),i=(0,p1.getTransformReply)(r,n);return function(...a){let o=new e6.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,p1.getTransformReply)(e,r);return function(...s){let i=new e6.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#c(e,a,n)}}static extend(e){return(0,p1.attachConfig)({BaseClass:t,commands:Ahr.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 xhr.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()}};uT.default=kse});var uet=_(h1=>{"use strict";var oet=h1&&h1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(h1,"__esModule",{value:!0});h1.RedisLegacyClient=void 0;var bhr=td(),cet=oet(Pu()),_hr=oet(cT()),m1=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;n<r.length;++n){let s=r[n];Array.isArray(s)?t.pushArguments(e,s):e.push(typeof s=="number"||s instanceof Date?s.toString():s)}}static getTransformReply(e,r){return e.TRANSFORM_LEGACY_REPLY?(0,bhr.getTransformReply)(e,r):void 0}static#t(e,r,n){let s=t.getTransformReply(r,n);return function(...i){let a=[e],o=t.#e(a,i),c=this.#r.sendCommand(a);if(!o){c.catch(u=>this.#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(cet.default))this[n]=t.#t(n,s,r);this.#n=Dse.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)}};h1.RedisLegacyClient=m1;var Dse=class t{static#e(e,r,n){let s=m1.getTransformReply(r,n);return function(...i){let a=[e];return m1.pushArguments(a,i),this.#t.addCommand(a,s),this}}static factory(e){let r=class extends t{};for(let[n,s]of Object.entries(cet.default))r.prototype[n]=t.#e(n,s,e);return n=>new r(n)}#t=new _hr.default;#r;constructor(e){this.#r=e}sendCommand(...e){let r=[];return m1.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 g1=_(go=>{"use strict";Object.defineProperty(go,"__esModule",{value:!0});go.PooledNoRedirectClientSideCache=go.BasicPooledClientSideCache=go.PooledClientSideCacheProvider=go.BasicClientSideCache=go.ClientSideCacheProvider=go.CacheStats=void 0;var Ehr=require("stream"),lT=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)}};go.CacheStats=lT;var t6=class t{static INSTANCE=new t;constructor(){}recordHits(e){}recordMisses(e){}recordLoadSuccess(e){}recordLoadFailure(e){}recordEvictions(e){}snapshot(){return lT.empty()}};function vhr(){return t6.INSTANCE}var r6=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 lT.of(this.#e,this.#t,this.#r,this.#n,this.#a,this.#o)}static create(){return new t}};function Shr(t){let e=new Array(t.length*2);for(let r=0;r<t.length;r++)e[r]=t[r].length,e[r+t.length]=t[r];return e.join("_")}var n6=class{#e=!1;#t;constructor(e){e==0?this.#t=0:this.#t=Date.now()+e}invalidate(){this.#e=!0}validate(){return!this.#e&&(this.#t==0||Date.now()<this.#t)}},dT=class extends n6{#e;get value(){return this.#e}constructor(e,r){super(e),this.#e=r}},fT=class extends n6{#e;get promise(){return this.#e}constructor(e,r){super(e),this.#e=r}},s6=class extends Ehr.EventEmitter{};go.ClientSideCacheProvider=s6;var i6=class extends s6{#e;#t;ttl;maxEntries;lru;#r;recordEvictions(e){this.#r.recordEvictions(e)}recordHits(e){this.#r.recordHits(e)}recordMisses(e){this.#r.recordMisses(e)}constructor(e){super(),this.#e=new Map,this.#t=new Map,this.ttl=e?.ttl??0,this.maxEntries=e?.maxEntries??0,this.lru=e?.evictPolicy!=="FIFO";let r=e?.recordStats!==!1;this.#r=r?r6.create():vhr()}async handleCache(e,r,n,s,i){let a,o=Shr(r.redisArgs),c=this.get(o);if(c){if(c instanceof dT)return this.#r.recordHits(1),structuredClone(c.value);if(c instanceof fT)this.#r.recordMisses(1),a=await c.promise;else throw new Error("unknown cache entry type")}else{this.#r.recordMisses(1);let l=performance.now(),d=n();c=this.createPromiseEntry(e,d),this.set(o,c,r.keys);try{a=await d;let f=performance.now()-l;this.#r.recordLoadSuccess(f)}catch(f){let m=performance.now()-l;throw this.#r.recordLoadFailure(m),c.validate()&&this.delete(o),f}}let u;return s?u=s(a,r.preserve,i):u=a,c.validate()&&(c=this.createValueEntry(e,u),this.set(o,c,r.keys),this.emit("cached-key",o)),structuredClone(u)}trackingOn(){return["CLIENT","TRACKING","ON"]}invalidate(e){if(e===null){this.clear(!1),this.emit("invalidate",e);return}let r=this.#t.get(e.toString());if(r){for(let n of r){let s=this.#e.get(n);s&&s.invalidate(),this.#e.delete(n)}this.#t.delete(e.toString())}this.emit("invalidate",e)}clear(e=!0){let r=this.#e.size;this.#e.clear(),this.#t.clear(),e?this.#r instanceof t6||(this.#r=r6.create()):r>0&&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 dT(this.ttl,r)}createPromiseEntry(e,r){return new fT(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()}};go.BasicClientSideCache=i6;var a6=class extends i6{#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()}};go.PooledClientSideCacheProvider=a6;var o6=class extends a6{onError(){this.clear(!1)}onClose(){this.clear(!1)}};go.BasicPooledClientSideCache=o6;var Bse=class extends dT{#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}},Lse=class extends fT{#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}},Mse=class extends o6{createValueEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new Bse(this.ttl,n,r)}createPromiseEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new Lse(this.ttl,n,r)}onError(){}onClose(){}};go.PooledNoRedirectClientSideCache=Mse});var c6=_($se=>{"use strict";Object.defineProperty($se,"__esModule",{value:!0});var Wse=class{#e;#t;get(e){return JSON.stringify(e,det())===this.#t?this.#e:void 0}set(e,r){this.#e=r,this.#t=JSON.stringify(e,det())}};$se.default=Wse;function det(){let t=new WeakSet;return function(r,n){return n&&typeof n=="object"?t.has(n)?"circular":(t.add(n),n):n}}});var jse=_(y1=>{"use strict";var qse=y1&&y1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(y1,"__esModule",{value:!0});y1.RedisClientPool=void 0;var Ihr=Pu(),Chr=qse(A1()),Thr=require("node:events"),Use=ZL(),whr=zl(),Qg=td(),Rhr=qse(Pse()),fet=g1(),u6=Yl(),Nhr=qse(c6()),Fse=class t extends Thr.EventEmitter{static#e(e,r){let n=(0,Qg.getTransformReply)(e,r);return async function(...s){let i=new u6.BasicCommandParser;return e.parseCommand(i,...s),this.execute(a=>a._executeCommand(e,i,this._commandOptions,n))}}static#t(e,r){let n=(0,Qg.getTransformReply)(e,r);return async function(...s){let i=new u6.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,Qg.functionArgumentsPrefix)(e,r),i=(0,Qg.getTransformReply)(r,n);return async function(...a){let o=new u6.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,Qg.scriptArgumentsPrefix)(e),s=(0,Qg.getTransformReply)(e,r);return async function(...i){let a=new u6.BasicCommandParser;return a.pushVariadic(n),e.parseCommand(a,...i),this.execute(o=>o._executeScript(e,a,this._commandOptions,s))}}static#a=new Nhr.default;static create(e,r){let n=t.#a.get(e);return n||(n=(0,Qg.attachConfig)({BaseClass:t,commands:Ihr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),n.prototype.Multi=Rhr.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 Use.SinglyLinkedList;get idleClients(){return this._self.#c.length}#l=new Use.DoublyLinkedList;get clientsInUse(){return this._self.#l.length}get totalClients(){return this._self.#c.length+this._self.#l.length}#h=new Use.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 fet.PooledClientSideCacheProvider)this.#f=e.clientSideCache=r.clientSideCache;else{let n=r.clientSideCache;this.#f=e.clientSideCache=new fet.BasicPooledClientSideCache(n)}this.#s=Chr.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.length<this._self.#i.minimum;)e.push(this._self.#A());try{await Promise.all(e)}catch(r){throw this.destroy(),r}return this}async#A(){let e=this._self.#l.push(this._self.#s().on("error",r=>this.emit("error",r)));try{await e.value.connect()}catch(r){throw this._self.#l.remove(e),r}this._self.#_(e)}execute(e){return new Promise((r,n)=>{let s=this._self.#c.shift(),{tail:i}=this._self.#h;if(!s){let o;this._self.#i.acquireTimeout>0&&(o=setTimeout(()=>{this._self.#h.remove(c,i),n(new whr.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.totalClients<this._self.#i.maximum&&this._self.#A();return}let a=this._self.#l.push(s);this._self.#g(a,r,n,e)})}#g(e,r,n,s){let i=s(e.value);i instanceof Promise?i.then(r,n).finally(()=>this.#_(e)):(r(i),this.#_(e))}#_(e){let r=this.#h.shift();if(r){clearTimeout(r.timeout),this.#g(e,r.resolve,r.reject,r.fn);return}this.#l.remove(e),this.#c.push(e.value),this.#v()}cleanupTimeout;#v(){this.totalClients<=this.#i.minimum||(clearTimeout(this.cleanupTimeout),this.cleanupTimeout=setTimeout(()=>this.#y(),this.#i.cleanupDelay))}#y(){let e=Math.min(this.#c.length,this.totalClients-this.#i.minimum);for(let r=0;r<e;r++)this.#c.shift().destroy()}sendCommand(e,r){return this.execute(n=>n.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}};y1.RedisClientPool=Fse});var pet=_((pun,Ohr)=>{Ohr.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 A1=_(Bu=>{"use strict";var khr=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]}),Phr=Bu&&Bu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Dhr=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)&&khr(e,t,r);return Phr(e,t),e},_1=Bu&&Bu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Du;Object.defineProperty(Bu,"__esModule",{value:!0});var x1=_1(Pu()),Bhr=_1(GZe()),met=JZe(),Lhr=_1(ret()),Mhr=require("node:events"),Hg=td(),pm=zl(),Whr=require("node:url"),b1=iT(),$hr=_1(Pse()),Uhr=_1(ree()),Fhr=uet(),qhr=jse(),Gg=we(),het=g1(),l6=Yl(),jhr=_1(c6()),Qhr=pet(),d6=Dhr(rT()),f6=class extends Mhr.EventEmitter{static#e(e,r){let n=(0,Hg.getTransformReply)(e,r);return async function(...s){let i=new l6.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 l6.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 l6.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 l6.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._executeScript(e,a,this._commandOptions,s)}}static#a=new jhr.default;static factory(e){let r=Du.#a.get(e);return r||(r=(0,Hg.attachConfig)({BaseClass:Du,commands:x1.default,createCommand:Du.#e,createModuleCommand:Du.#t,createFunctionCommand:Du.#r,createScriptCommand:Du.#n,config:e}),r.prototype.Multi=$hr.default.extend(e),Du.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return Du.factory(e)(e)}static parseOptions(e){if(e?.url){let r=Du.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 Whr.URL(e),c={socket:{host:r.replace(/^\[([0-9a-f:]+)\]$/,"$1"),tls:!1}};if(s!=="redis:"&&s!=="rediss:")throw new TypeError("Invalid protocol");if(c.socket.tls=s==="rediss:",n&&(c.socket.port=Number(n)),i&&(c.username=decodeURIComponent(i)),a&&(c.password=decodeURIComponent(a)),(i||a)&&(c.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:i?decodeURIComponent(i):void 0,password:a?decodeURIComponent(a):void 0})}),o.length>1){let u=Number(o.substring(1));if(isNaN(u))throw new TypeError("Invalid pathname");c.database=u}return c}#o;#s;#i;#c=0;#l;_self=this;_commandOptions;#h;#p;#d;#f=null;#m=!1;get clientSideCache(){return this._self.#d}get options(){return this._self.#o}get isOpen(){return this._self.#s.isOpen}get isReady(){return this._self.#s.isReady}get isPubSubActive(){return this._self.#i.isPubSubActive}get socketEpoch(){return this._self.#s.socketEpoch}get isWatching(){return this._self.#p!==void 0}get isDirtyWatch(){return this._self.#h!==void 0}setDirtyWatch(e){this._self.#h=e}constructor(e){if(super(),this.#A(e),this.#o=this.#g(e),this.#i=this.#_(),this.#s=this.#S(),this.#o.maintNotifications!=="disabled"&&new d6.default(this.#i,this,this.#o),this.#o.clientSideCache){if(this.#o.clientSideCache instanceof het.ClientSideCacheProvider)this.#d=this.#o.clientSideCache;else{let r=this.#o.clientSideCache;this.#d=new het.BasicClientSideCache(r)}this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.#d?.invalidate(n);else this.#d?.invalidate(null);return!0})}else e?.emitInvalidate&&this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.emit("invalidate",n);else this.emit("invalidate",null);return!0})}#A(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3");if(e?.emitInvalidate&&e?.RESP!==3)throw new Error("emitInvalidate is only supported with RESP3");if(e?.clientSideCache&&e?.emitInvalidate)throw new Error("emitInvalidate is not supported (or necessary) when clientSideCache is enabled");if(e?.maintNotifications&&e?.maintNotifications!=="disabled"&&e?.RESP!==3)throw new Error("Graceful Maintenance is only supported with RESP3")}#g(e={}){if(!e.credentialsProvider&&(e.username||e.password)&&(e.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:e.username,password:e.password})}),e.database&&(this._self.#c=e.database),e.commandOptions&&(this._commandOptions=e.commandOptions),e.maintNotifications!=="disabled"&&d6.default.setupDefaultMaintOptions(e),e.url){let r=Du.parseOptions(e);return r?.database&&(this._self.#c=r.database),r}return e}#_(){return new Lhr.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)(x1.default.AUTH,{username:e.username,password:e.password??""}))};#v(e){return e.subscribe({onNext:r=>{this.reAuthenticate(r).catch(n=>{let s=n instanceof Error?n.message:String(n);e.onReAuthenticationError(new met.CredentialsError(s))})},onError:r=>{let n=`Error from streaming credentials provider: ${r.message}`;e.onReAuthenticationError(new met.UnableToObtainNewCredentialsError(n))}})}async#y(e,r){let n=[],s=await this.#I();r&&s.reverse();for(let{cmd:i,errorHandler:a}of s)n.push(this.#i.addCommand(i,{chainId:e,asap:r}).catch(a));return n}async#I(){let e=[],r=this.#o.credentialsProvider;if(this.#o.RESP){let s={};if(r&&r.type==="async-credentials-provider"){let i=await r.credentials();i.password&&(s.AUTH={username:i.username??"default",password:i.password})}if(r&&r.type==="streaming-credentials-provider"){let[i,a]=await this.#v(r);this.#f=a,i.password&&(s.AUTH={username:i.username??"default",password:i.password})}this.#o.name&&(s.SETNAME=this.#o.name),e.push({cmd:(0,Gg.parseArgs)(Uhr.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)(x1.default.AUTH,{username:s.username,password:s.password??""})})}if(r&&r.type==="streaming-credentials-provider"){let[s,i]=await this.#v(r);this.#f=i,(s.username||s.password)&&e.push({cmd:(0,Gg.parseArgs)(x1.default.AUTH,{username:s.username,password:s.password??""})})}this.#o.name&&e.push({cmd:(0,Gg.parseArgs)(x1.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)(x1.default.READONLY)}),this.#o.disableClientInfo||(e.push({cmd:["CLIENT","SETINFO","LIB-VER",Qhr.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 d6.default.getHandshakeCommand(this.#o);return n&&e.push(n),e}#E(e){e.on("data",r=>{try{this.#i.decoder.write(r)}catch(n){this.#i.resetDecoder(),this.emit("error",n)}}).on("error",r=>{this.emit("error",r),this.#d?.onError(),this.#s.isOpen&&!this.#o.disableOfflineQueue?this.#i.flushWaitingForReply(r):this.#i.flushAll(r)}).on("connect",()=>this.emit("connect")).on("ready",()=>{this.emit("ready"),this.#u(),this.#N()}).on("reconnecting",()=>this.emit("reconnecting")).on("drain",()=>this.#N()).on("end",()=>this.emit("end"))}#S(){let e=async()=>{let n=[],s=Symbol("Socket Initiator"),i=this.#i.resubscribe(s);if(i?.catch(a=>{a.message&&a.message.startsWith("MOVED")&&this.emit("__MOVED",this._self.#i.removeAllPubSubListeners())}),i&&n.push(i),this.#l&&n.push(this.#i.monitor(this.#l,{typeMapping:this._commandOptions?.typeMapping,chainId:s,asap:!0})),n.push(...await this.#y(s,!0)),n.length)return this.#k(),Promise.all(n)},r=new Bhr.default(e,this.#o.socket);return this.#E(r),r}#b;#u(){!this.#o.pingInterval||!this.#s.isReady||(clearTimeout(this.#b),this.#b=setTimeout(()=>{this.#s.isReady&&this.sendCommand(["PING"]).then(e=>this.emit("ping-interval",e)).catch(e=>this.emit("error",e)).finally(()=>this.#u())},this.#o.pingInterval))}withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}withAbortSignal(e){return this._commandOptionsProxy("abortSignal",e)}asap(){return this._commandOptionsProxy("asap",!0)}legacy(){return new Fhr.RedisLegacyClient(this)}createPool(e){return qhr.RedisClientPool.create(this._self.#o,e)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self.#o,commandOptions:this._commandOptions,...e})}async connect(){return await this._self.#s.connect(),this}_ejectSocket(){let e=this._self.#s;return this._self.#s=null,e.removeAllListeners(),e}_insertSocket(e){this._self.#s&&this._self._ejectSocket().destroy(),this._self.#s=e,this._self.#E(this._self.#s)}_maintenanceUpdate(e){this._self.#s.setMaintenanceTimeout(e.relaxedSocketTimeout),this._self.#i.setMaintenanceCommandTimeout(e.relaxedCommandTimeout)}_pause(){this._self.#m=!0}_unpause(){this._self.#m=!1,this._self.#N()}_handleSmigrated(e){this._self.emit(d6.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 pm.ClientOfflineError)}else return Promise.reject(new pm.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(b1.PUBSUB_TYPE.CHANNELS,e,r,n))}subscribe=this.SUBSCRIBE;UNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(b1.PUBSUB_TYPE.CHANNELS,e,r,n))}unsubscribe=this.UNSUBSCRIBE;PSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(b1.PUBSUB_TYPE.PATTERNS,e,r,n))}pSubscribe=this.PSUBSCRIBE;PUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(b1.PUBSUB_TYPE.PATTERNS,e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;SSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(b1.PUBSUB_TYPE.SHARDED,e,r,n))}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(b1.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))}#k(){this.#m||this.#s.write(this.#i.commandsToWrite())}#T;#C(){!this.#s.isReady||this.#T||(this.#T=setImmediate(()=>{this.#k(),this.#T=void 0}))}#N(){this.#i.isWaitingToWrite()&&this.#C()}async _executePipeline(e,r){if(!this._self.#s.isOpen)return Promise.reject(new pm.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 pm.ClientClosedError;if(n)throw new pm.WatchError(n);if(s&&s!==this._self.socketEpoch)throw new pm.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 pm.WatchError;return r!==void 0&&(this._self.#c=r),u}MULTI(){return new this.Multi(this._executeMulti.bind(this),this._executePipeline.bind(this),this._commandOptions?.typeMapping)}multi=this.MULTI;async*scanIterator(e){let r=e?.cursor??"0";do{let n=await this.scan(r,e);r=n.cursor,yield n.keys}while(r!=="0")}async*hScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScan(e,n,r);n=s.cursor,yield s.entries}while(n!=="0")}async*hScanValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*hScanNoValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*sScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.sScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async*zScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.zScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async MONITOR(e){let r=this._self.#i.monitor(e,{typeMapping:this._commandOptions?.typeMapping});this._self.#C(),await r,this._self.#l=e}monitor=this.MONITOR;async reset(){let e=Symbol("Reset Chain"),r=[this._self.#i.reset(e)],n=this._self.#o?.database??0;this._self.#f?.dispose(),this._self.#f=null,r.push(...await this._self.#y(e,!1)),this._self.#C(),await Promise.all(r),this._self.#c=n,this._self.#l=void 0,this._self.#h=void 0,this._self.#p=void 0}resetIfDirty(){let e=!1;if(this._self.#c!==(this._self.#o?.database??0)&&(console.warn("Returning a client with a different selected DB"),e=!0),this._self.#l&&(console.warn("Returning a client with active MONITOR"),e=!0),this._self.#i.isPubSubActive&&(console.warn("Returning a client with active PubSub"),e=!0),(this._self.#h||this._self.#p)&&(console.warn("Returning a client with active WATCH"),e=!0),e)return this.reset()}QUIT(){return this._self.#f?.dispose(),this._self.#f=null,this._self.#s.quit(async()=>{clearTimeout(this._self.#b);let e=this._self.#i.addCommand(["QUIT"]);return this._self.#C(),e})}quit=this.QUIT;disconnect(){return Promise.resolve(this.destroy())}close(){return new Promise(e=>{if(clearTimeout(this._self.#b),this._self.#s.close(),this._self.#d?.onClose(),this._self.#i.isEmpty())return this._self.#s.destroySocket(),e();let r=()=>{this._self.#i.isEmpty()&&(this._self.#s.off("data",r),this._self.#s.destroySocket(),e())};this._self.#s.on("data",r),this._self.#f?.dispose(),this._self.#f=null})}destroy(){clearTimeout(this._self.#b),this._self.#i.flushAll(new pm.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()}};Du=f6;Bu.default=f6});var Aet=_(rd=>{"use strict";var yet=rd&&rd.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Hse;Object.defineProperty(rd,"__esModule",{value:!0});rd.RESUBSCRIBE_LISTENERS_EVENT=void 0;var Hhr=zl(),Ghr=yet(A1()),Qo=iT(),Qse=yet(Cse()),get=g1(),yo=rT();rd.RESUBSCRIBE_LISTENERS_EVENT="__resubscribeListeners";var p6=class{static#e=16384;#t;#r;#n;slots=new Array(Hse.#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 get.PooledClientSideCacheProvider?this.clientSideCache=e.clientSideCache:this.clientSideCache=new get.BasicPooledClientSideCache(e.clientSideCache)),this.#r=Ghr.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;r<this.#t.rootNodes.length;r++){if(!this.#a)throw new Error("Cluster closed");if(await this.#c(this.#t.rootNodes[r]))return}for(let r=0;r<e;r++){if(!this.#a)throw new Error("Cluster closed");if(await this.#c(this.#t.rootNodes[r]))return}throw new Hhr.RootNodesUnavailableError}#i(){this.slots=new Array(Hse.#e),this.masters=[],this.replicas=[],this._randomNodeIterator=void 0}async#c(e){this.clientSideCache?.clear(),this.clientSideCache?.disable();try{let r=new Set,n=[],s=this.#t.minimizeConnections!==!0,i=await this.#h(e);this.#i();for(let{from:a,to:o,master:c,replicas:u}of i){let l={master:this.#f(c,!1,s,r,n)};this.#t.useReplicas&&(l.replicas=u.map(d=>this.#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(Qo.PUBSUB_TYPE.CHANNELS),o=this.pubSubNode.client.getPubSubListeners(Qo.PUBSUB_TYPE.PATTERNS);this.pubSubNode.client.destroy(),(a.size||o.size)&&n.push(this.#S({[Qo.PUBSUB_TYPE.CHANNELS]:a,[Qo.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,yo.dbgMaintenance)("[CSlots]: handle smigrated",JSON.stringify(e,null,2)),this.smigratedSeqIdsSeen.has(e.seqId)){(0,yo.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,yo.dbgMaintenance)(`[CSlots]: Looking for sourceAddress=${n}. Available addresses in nodeByAddress: ${Array.from(this.nodeByAddress.keys()).join(", ")}`),!s){(0,yo.dbgMaintenance)(`[CSlots]: address ${n} not in 'nodeByAddress', skipping this entry`);continue}if(s.client===void 0){(0,yo.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:m}of r.destinations){let p=`${d}:${f}`,h=this.nodeByAddress.get(p);(0,yo.dbgMaintenance)(`[CSlots]: Looking for destAddress=${p}. Found in nodeByAddress: ${h?"YES":"NO"}`);let y;if(h){let b=[...new Set(this.slots)].map(S=>`${S.master.host}:${S.master.port}`);(0,yo.dbgMaintenance)(`[CSlots]: Searching for shard with host=${d}, port=${f}. Available masters in slots: ${b.join(", ")}`);let x=this.slots.find(S=>S.master.host===d&&S.master.port===f);if(!x)throw(0,yo.dbgMaintenance)("Could not find shard"),new Error("Could not find shard");y=x,h.client?._pause(),h.pubSub?.client._pause()}else{let b=[];h=this.#f({host:d,port:f,id:`smigrated-${d}:${f}`},!1,!0,new Set,b),await Promise.all([...b,this.#b(h)]),h.client?._pause(),h.pubSub?.client._pause(),y={master:h}}a=h;let g=new Set;for(let b of m)if(typeof b=="number")this.slots[b]=y,g.add(b),i.add(b);else for(let x=b[0];x<=b[1];x++)this.slots[x]=y,g.add(x),i.add(x);(0,yo.dbgMaintenance)(`[CSlots]: Updated slots to point to destination ${h.address}. Sample slots: ${Array.from(m).slice(0,5).join(", ")}${m.length>5?"...":""}`);let A=s.client._getQueue().extractCommandsForSlots(g);h.client?._getQueue().prependCommandsToWrite(A),(0,yo.dbgMaintenance)(`[CSlots]: Extracted ${A.length} commands for ${g.size} slots, prepended to ${h.address}`),h.client?._unpause(),h.pubSub?.client._unpause()}(0,yo.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(rd.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,yo.dbgMaintenance)(`[CSlots]: Moved ${d.length} remaining slotless commands to ${a.address}`)),"pubSub"in s){let f=s.pubSub?.client._getQueue().removeAllPubSubListeners();this.#n(rd.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(Qo.PUBSUB_TYPE.CHANNELS),m=this.pubSubNode.client.getPubSubListeners(Qo.PUBSUB_TYPE.PATTERNS),p=this.pubSubNode.client;f.size||m.size?await this.#S({[Qo.PUBSUB_TYPE.CHANNELS]:f,[Qo.PUBSUB_TYPE.PATTERNS]:m}):this.pubSubNode=void 0,p.destroy()}s.client?.destroy(),"pubSub"in s&&s.pubSub?.client.destroy()}}catch(a){(0,yo.dbgMaintenance)(`[CSlots]: Error during SMIGRATED handling for source ${n}: ${a}`),s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause(),this.#n("error",a)}}};async#h(e){let r=this.#d(e);r.socket??={},r.socket.reconnectStrategy=!1,r.RESP=this.#t.RESP,r.commandOptions=void 0,r.maintNotifications="disabled";let n=await this.#r(r).on("error",s=>this.#n("error",s)).connect();try{return await n.clusterSlots()}finally{n.destroy()}}#p(e){switch(typeof this.#t.nodeAddressMap){case"object":return this.#t.nodeAddressMap[e];case"function":return this.#t.nodeAddressMap(e)}}#d(e){if(!this.#t.defaults)return e;let r;return this.#t.defaults.socket?r={...this.#t.defaults.socket,...e?.socket}:r=e?.socket,{...this.#t.defaults,...e,socket:r}}#f(e,r,n,s,i){let a=`${e.host}:${e.port}`,o=this.nodeByAddress.get(a);return o||(o={...e,address:a,readonly:r,client:void 0,connectPromise:void 0},n&&i.push(this.#A(o)),this.nodeByAddress.set(a,o)),s.has(a)||(s.add(a),(r?this.replicas:this.masters).push(o)),o}#m(e,r=e.readonly){let n=this.#p(e.address)??{host:e.host,port:e.port},s=Object.freeze({host:n.host,port:n.port}),i=this.#n,a=this.#r(this.#d({clientSideCache:this.clientSideCache,RESP:this.#t.RESP,socket:n,readonly:r})).on("error",o=>i("node-error",o,s)).on("reconnecting",()=>i("node-reconnecting",s)).once("ready",()=>i("node-ready",s)).once("connect",()=>i("node-connect",s)).once("end",()=>i("node-disconnect",s)).on(yo.SMIGRATED_EVENT,this.#l).on("__MOVED",async o=>{await this.rediscover(a),this.#n(rd.RESUBSCRIBE_LISTENERS_EVENT,o)});return a}#A(e,r){let n=e.client=this.#m(e,r);return e.connectPromise=n.connect().finally(()=>e.connectPromise=void 0)}nodeClient(e){return e.connectPromise?e.connectPromise:e.client?Promise.resolve(e.client):this.#A(e)}#g;async rediscover(e){return this.#g??=this.#_(e).finally(()=>{this.#g=void 0}),this.#g}async#_(e){if(!await this.#c(e.options))return this.#s()}quit(){return this.#y(e=>e.quit())}disconnect(){return this.#y(e=>e.disconnect())}close(){return this.#y(e=>e.close())}destroy(){this.#a=!1;for(let e of this.#v())e.destroy();this.pubSubNode&&(this.pubSubNode.client.destroy(),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),this.#n("disconnect")}*#v(){for(let e of this.masters)e.client&&(yield e.client),e.pubSub&&(yield e.pubSub.client);for(let e of this.replicas)e.client&&(yield e.client)}async#y(e){this.#a=!1;let r=[];for(let n of this.#v())r.push(e(n));this.pubSubNode&&(r.push(e(this.pubSubNode.client)),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),await Promise.allSettled(r),this.#n("disconnect")}async getClientAndSlotNumber(e,r){if(!e)return{client:await this.nodeClient(this.getRandomNode())};let n=(0,Qse.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<this.masters.length){do yield this.masters[e];while(++e<this.masters.length);for(let r of this.replicas)yield r}else{e-=this.masters.length;do yield this.replicas[e];while(++e<this.replicas.length)}for(;;){for(let r of this.masters)yield r;for(let r of this.replicas)yield r}}_randomNodeIterator;getRandomNode(){return this._randomNodeIterator??=this.#I(),this._randomNodeIterator.next().value}*#E(e){let r=Math.floor(Math.random()*(1+e.replicas.length));if(r<e.replicas.length)do yield e.replicas[r];while(++r<e.replicas.length);for(;;){yield e.master;for(let n of e.replicas)yield n}}getSlotRandomNode(e){let r=this.slots[e];return r.replicas?.length?(r.nodesIterator??=this.#E(r),r.nodesIterator.next().value):r.master}getMasterByAddress(e){let r=this.nodeByAddress.get(e);if(r)return this.nodeClient(r)}getPubSubClient(){return this.pubSubNode?this.pubSubNode.connectPromise??Promise.resolve(this.pubSubNode.client):this.#S()}async#S(e){let r=Math.floor(Math.random()*(this.masters.length+this.replicas.length)),n=r<this.masters.length?this.masters[r]:this.replicas[r-this.masters.length],s=this.#m(n,!1);return this.pubSubNode={address:n.address,client:s,connectPromise:s.connect().then(async i=>(e&&await Promise.all([i.extendPubSubListeners(Qo.PUBSUB_TYPE.CHANNELS,e[Qo.PUBSUB_TYPE.CHANNELS]),i.extendPubSubListeners(Qo.PUBSUB_TYPE.PATTERNS,e[Qo.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,Qse.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(Qo.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,Qse.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)}};Hse=p6;rd.default=p6});var xet=_(pT=>{"use strict";var Vhr=pT&&pT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(pT,"__esModule",{value:!0});var Khr=Pu(),zhr=Vhr(cT()),E1=td(),m6=Yl(),Gse=class t{static#e(e,r){let n=(0,E1.getTransformReply)(e,r);return function(...s){let i=new m6.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,E1.getTransformReply)(e,r);return function(...s){let i=new m6.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,E1.functionArgumentsPrefix)(e,r),i=(0,E1.getTransformReply)(r,n);return function(...a){let o=new m6.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,E1.getTransformReply)(e,r);return function(...s){let i=new m6.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,E1.attachConfig)({BaseClass:t,commands:Khr.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 zhr.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()}};pT.default=Gse});var Eet=_(Lu=>{"use strict";var Yhr=Lu&&Lu.__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]}),Jhr=Lu&&Lu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Xhr=Lu&&Lu.__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)&&Yhr(e,t,r);return Jhr(e,t),e},_et=Lu&&Lu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Lu,"__esModule",{value:!0});var Zhr=Pu(),egr=require("node:events"),Vg=td(),bet=Xhr(Aet()),tgr=_et(xet()),rgr=zl(),h6=Yl(),ngr=lX(),sgr=_et(c6()),Vse=class t extends egr.EventEmitter{static#e(e,r){let n=(0,Vg.getTransformReply)(e,r);return async function(...s){let i=new h6.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,Vg.getTransformReply)(e,r);return async function(...s){let i=new h6.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,Vg.functionArgumentsPrefix)(e,r),i=(0,Vg.getTransformReply)(r,n);return async function(...a){let o=new h6.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,Vg.scriptArgumentsPrefix)(e),s=(0,Vg.getTransformReply)(e,r);return async function(...i){let a=new h6.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 sgr.default;static factory(e){let r=t.#a.get(e);return r||(r=(0,Vg.attachConfig)({BaseClass:t,commands:Zhr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),r.prototype.Multi=tgr.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 bet.default(e,this.emit.bind(this)),this.on(bet.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([ngr.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 rgr.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}};Lu.default=Vse});var Iet=_(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.getMappedNode=ui.createScriptCommand=ui.createModuleCommand=ui.createFunctionCommand=ui.createCommand=ui.clientSocketToNode=ui.createNodeList=ui.parseNode=void 0;var g6=Yl(),v1=td();function vet(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)}}ui.parseNode=vet;function igr(t){var e=[];for(let r of t){let n=vet(r);n!==void 0&&e.push(n)}return e}ui.createNodeList=igr;function agr(t){let e=t;return{host:e.host,port:e.port}}ui.clientSocketToNode=agr;function ogr(t,e){let r=(0,v1.getTransformReply)(t,e);return async function(...n){let s=new g6.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this.commandOptions,r))}}ui.createCommand=ogr;function cgr(t,e,r){let n=(0,v1.functionArgumentsPrefix)(t,e),s=(0,v1.getTransformReply)(e,r);return async function(...i){let a=new g6.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))}}ui.createFunctionCommand=cgr;function ugr(t,e){let r=(0,v1.getTransformReply)(t,e);return async function(...n){let s=new g6.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this._self.commandOptions,r))}}ui.createModuleCommand=ugr;function lgr(t,e){let r=(0,v1.scriptArgumentsPrefix)(t),n=(0,v1.getTransformReply)(t,e);return async function(...s){let i=new g6.BasicCommandParser;return i.push(...r),t.parseCommand(i,...s),this._self._execute(t.IS_READ_ONLY,a=>a._executeScript(t,i,this.commandOptions,n))}}ui.createScriptCommand=lgr;function dgr(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}}}ui.getMappedNode=dgr});var Tet=_(mT=>{"use strict";var fgr=mT&&mT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mT,"__esModule",{value:!0});var pgr=Pu(),Cet=fgr(cT()),S1=td(),y6=Yl(),Kse=class t{static _createCommand(e,r){let n=(0,S1.getTransformReply)(e,r);return function(...s){let i=new y6.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,S1.getTransformReply)(e,r);return function(...s){let i=new y6.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,S1.functionArgumentsPrefix)(e,r),i=(0,S1.getTransformReply)(r,n);return function(...a){let o=new y6.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,S1.getTransformReply)(e,r);return function(...s){let i=new y6.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,S1.attachConfig)({BaseClass:t,commands:pgr.NON_STICKY_COMMANDS,createCommand:t._createCommand,createModuleCommand:t._createModuleCommand,createFunctionCommand:t._createFunctionCommand,createScriptCommand:t._createScriptCommand,config:e})}#e=new Cet.default;#t;#r=!0;constructor(e,r){this.#e=new Cet.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()}};mT.default=Kse});var Net=_(I1=>{"use strict";var Ret=I1&&I1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(I1,"__esModule",{value:!0});I1.PubSubProxy=void 0;var mgr=Ret(require("node:events")),mm=iT(),wet=Ret(A1()),zse=class extends mgr.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 wet.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(mm.PUBSUB_TYPE.CHANNELS,this.#a[mm.PUBSUB_TYPE.CHANNELS]),s.extendPubSubListeners(mm.PUBSUB_TYPE.PATTERNS,this.#a[mm.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={[mm.PUBSUB_TYPE.CHANNELS]:this.#n.client.getPubSubListeners(mm.PUBSUB_TYPE.CHANNELS),[mm.PUBSUB_TYPE.PATTERNS]:this.#n.client.getPubSubListeners(mm.PUBSUB_TYPE.PATTERNS)},this.#n.client.destroy()),await this.#s(!0))}#c(e){let r=this.#i();return r instanceof wet.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)}};I1.PubSubProxy=zse});var Oet=_(Yse=>{"use strict";Object.defineProperty(Yse,"__esModule",{value:!0});var hgr=we();Yse.default={parseCommand(t,e){t.push("SENTINEL","MASTER",e)},transformReply:{2:hgr.transformTuplesReply,3:void 0}}});var ket=_(Jse=>{"use strict";Object.defineProperty(Jse,"__esModule",{value:!0});Jse.default={parseCommand(t,e,r,n,s){t.push("SENTINEL","MONITOR",e,r,n,s)},transformReply:void 0}});var Pet=_(Xse=>{"use strict";Object.defineProperty(Xse,"__esModule",{value:!0});var ggr=we();Xse.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,ggr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var Det=_(Zse=>{"use strict";Object.defineProperty(Zse,"__esModule",{value:!0});var ygr=we();Zse.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,ygr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var Bet=_(eie=>{"use strict";Object.defineProperty(eie,"__esModule",{value:!0});eie.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 Fet=_(hT=>{"use strict";var gT=hT&&hT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hT,"__esModule",{value:!0});var Let=gT(Oet()),Met=gT(ket()),Wet=gT(Pet()),$et=gT(Det()),Uet=gT(Bet());hT.default={SENTINEL_SENTINELS:$et.default,sentinelSentinels:$et.default,SENTINEL_MASTER:Let.default,sentinelMaster:Let.default,SENTINEL_REPLICAS:Wet.default,sentinelReplicas:Wet.default,SENTINEL_MONITOR:Met.default,sentinelMonitor:Met.default,SENTINEL_SET:Uet.default,sentinelSet:Uet.default}});var qet=_(yT=>{"use strict";var Agr=yT&&yT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(yT,"__esModule",{value:!0});var xgr=Agr(Fet());yT.default={sentinel:xgr.default}});var Qet=_(A6=>{"use strict";Object.defineProperty(A6,"__esModule",{value:!0});A6.WaitQueue=void 0;var jet=ZL(),tie=class{#e=new jet.SinglyLinkedList;#t=new jet.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))}};A6.WaitQueue=tie});var zet=_(Vf=>{"use strict";var iie=Vf&&Vf.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Vf,"__esModule",{value:!0});Vf.RedisSentinelFactory=Vf.RedisSentinelClient=void 0;var aie=require("node:events"),C1=iie(A1()),Get=td(),Vet=Pu(),Fn=Iet(),Ket=iie(Tet()),bgr=Net(),_gr=require("node:timers/promises"),x6=iie(qet()),Egr=Qet(),Het=g1(),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,Get.attachConfig)({BaseClass:t,commands:Vet.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=Ket.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}};Vf.RedisSentinelClient=AT;var rie=class t extends aie.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 nie(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,Get.attachConfig)({BaseClass:t,commands:Vet.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=Ket.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)}};Vf.default=rie;var nie=class extends aie.EventEmitter{#e=!1;get isOpen(){return this.#e}#t=!1;get isReady(){return this.#t}#r;#n;#a;#o;#s;#i;#c;#l=!1;#h=0;#p;#d;#f=[];#m;#A;#g=[];#_=0;#v;get useReplicas(){return this.#v>0}#y;#I;#E;#S;#b=!1;#u=()=>{};#x;get clientSideCache(){return this.#x}#k(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e){if(super(),this.#k(e),this.#r=e.name,this.#c=e.RESP,this.#p=Array.from(e.sentinelRootNodes),this.#I=e.maxCommandRediscovers??16,this.#A=e.masterPoolSize??1,this.#v=e.replicaPoolSize??0,this.#o=e.nodeAddressMap,this.#s=e.scanInterval??0,this.#i=e.passthroughClientErrorEvents??!1,this.#n=e.nodeClientOptions?{...e.nodeClientOptions}:{},this.#n.url!==void 0)throw new Error("invalid nodeClientOptions for Sentinel");if(e.clientSideCache)if(e.clientSideCache instanceof Het.PooledClientSideCacheProvider)this.#x=this.#n.clientSideCache=e.clientSideCache;else{let r=e.clientSideCache;this.#x=this.#n.clientSideCache=new Het.BasicPooledClientSideCache(r)}if(this.#a=e.sentinelClientOptions?Object.assign({},e.sentinelClientOptions):{},this.#a.modules=x6.default,this.#a.url!==void 0)throw new Error("invalid sentinelClientOptions for Sentinel");this.#m=new Egr.WaitQueue;for(let r=0;r<this.#A;r++)this.#m.push(r);this.#E=new bgr.PubSubProxy(this.#n,r=>this.emit("error",r))}#T(e,r,n){let s=(0,Fn.getMappedNode)(e.host,e.port,this.#o);return C1.default.create({RESP:this.#c,...r,socket:{...r.socket,host:s.host,port:s.port,...n!==void 0&&{reconnectStrategy:n}}})}getClientLease(){let e=this.#m.shift();return e!==void 0?Promise.resolve({id:e}):this.#m.wait().then(r=>({id:r}))}releaseClientLease(e){let r=this.#f[e.id];if(r!==void 0){let n=r.resetIfDirty();if(n)return n.then(()=>this.#m.push(e.id))}this.#m.push(e.id)}async connect(){if(this.#e)throw new Error("already attempting to open");try{this.#e=!0,this.#y=this.#C(),await this.#y,this.#t=!0}finally{this.#y=void 0,this.#s>0&&(this.#S=setInterval(this.#O.bind(this),this.#s))}}async#C(){let e=0;for(;;){if(this.#u("starting connect loop"),e+=1,this.#b){this.#u("in #connect and want to destroy");return}try{if(this.#l=!1,await this.transform(this.analyze(await this.observe())),this.#l){this.#u("#connect: anotherReset is true, so continuing");continue}this.#u("#connect: returning");return}catch(r){if(this.#u(`#connect: exception ${r.message}`),!this.#t&&e>this.#I)throw r;r.message!=="no valid master node"&&console.log(r),await(0,_gr.setTimeout)(1e3)}finally{this.#u("finished connect")}}}async execute(e,r){let n=0;for(;;){this.#y!==void 0&&await this.#y;let s=this.#R(r);if(!s.isReady){await this.#O();continue}let i=s.options?.socket;this.#u("attemping to send command to "+i?.host+":"+i?.port);try{return await e(s)}catch(a){if(++n>this.#I||!(a instanceof Error))throw a;if(r!==void 0&&(a.message.startsWith("READONLY")||!s.isReady)){await this.#O();continue}throw a}}}async#N(e){return await e.pSubscribe(["switch-master","[-+]sdown","+slave","+sentinel","[-+]odown","+slave-reconf-done"],(r,n)=>{this.#M(n,r)},!0),e}async#M(e,r){this.#u("pubsub control channel message on "+e),this.#O()}#R(e){if(e!==void 0)return this.#f[e.id];if(this.#_>=this.#g.length&&(this.#_=0),this.#g.length==0)throw new Error("no replicas available for read");return this.#g[this.#_++]}async#O(){if(!(this.#t==!1||this.#b==!0)){if(this.#y!==void 0)return this.#l=!0,await this.#y;try{return this.#y=this.#C(),await this.#y}finally{this.#u("finished reconfgure"),this.#y=void 0}}}#P(e){let r=this.#p.findIndex(n=>n.host===e.host&&n.port===e.port);r!==-1&&this.#p.splice(r,1),this.#O()}async close(){this.#b=!0,this.#y!=null&&await this.#y,this.#t=!1,this.#x?.onPoolClose(),this.#S&&(clearInterval(this.#S),this.#S=void 0);let e=[];this.#d!==void 0&&(this.#d.isOpen&&e.push(this.#d.close()),this.#d=void 0);for(let r of this.#f)r.isOpen&&e.push(r.close());this.#f=[];for(let r of this.#g)r.isOpen&&e.push(r.close());this.#g=[],await Promise.all(e),this.#E.destroy(),this.#e=!1}async destroy(){this.#b=!0,this.#y!=null&&await this.#y,this.#t=!1,this.#x?.onPoolClose(),this.#S&&(clearInterval(this.#S),this.#S=void 0),this.#d!==void 0&&(this.#d.isOpen&&this.#d.destroy(),this.#d=void 0);for(let e of this.#f)e.isOpen&&e.destroy();this.#f=[];for(let e of this.#g)e.isOpen&&e.destroy();this.#g=[],this.#E.destroy(),this.#e=!1,this.#b=!1}async subscribe(e,r,n){return this.#E.subscribe(e,r,n)}async unsubscribe(e,r,n){return this.#E.unsubscribe(e,r,n)}async pSubscribe(e,r,n){return this.#E.pSubscribe(e,r,n)}async pUnsubscribe(e,r,n){return this.#E.pUnsubscribe(e,r,n)}async observe(){for(let e of this.#p){let r;try{this.#u(`observe: trying to connect to sentinel: ${e.host}:${e.port}`),r=this.#T(e,this.#a,!1),r.on("error",o=>this.emit("error",`obseve client error: ${o}`)),await r.connect(),this.#u("observe: connected to sentinel");let[n,s,i]=await Promise.all([r.sentinel.sentinelSentinels(this.#r),r.sentinel.sentinelMaster(this.#r),r.sentinel.sentinelReplicas(this.#r)]);return this.#u("observe: got all sentinel data"),{sentinelConnected:e,sentinelData:n,masterData:s,replicaData:i,currentMaster:this.getMasterNode(),currentReplicas:this.getReplicaNodes(),currentSentinel:this.getSentinelNode(),replicaPoolSize:this.#v,useReplicas:this.useReplicas}}catch(n){this.#u(`observe: error ${n}`),this.emit("error",n)}finally{r!==void 0&&r.isOpen&&(this.#u("observe: destroying sentinel client"),r.destroy())}}throw this.#u("observe: none of the sentinels are available"),new Error("None of the sentinels are available")}analyze(e){let r=(0,Fn.parseNode)(e.masterData);if(r===void 0)throw this.#u(`analyze: no valid master node because ${e.masterData.flags}`),new Error("no valid master node");r.host===e.currentMaster?.host&&r.port===e.currentMaster?.port?(this.#u(`analyze: master node hasn't changed from ${e.currentMaster?.host}:${e.currentMaster?.port}`),r=void 0):this.#u(`analyze: master node has changed to ${r.host}:${r.port} from ${e.currentMaster?.host}:${e.currentMaster?.port}`);let n=e.sentinelConnected;n.host===e.currentSentinel?.host&&n.port===e.currentSentinel.port?(this.#u("analyze: sentinel node hasn't changed"),n=void 0):this.#u(`analyze: sentinel node has changed to ${n.host}:${n.port}`);let s=[],i=new Map,a=new Set,o=new Set;if(e.useReplicas){let u=(0,Fn.createNodeList)(e.replicaData);for(let l of u)a.add(JSON.stringify(l));for(let[l,d]of e.currentReplicas)a.has(JSON.stringify(l))?(o.add(JSON.stringify(l)),d!=e.replicaPoolSize&&(i.set(l,e.replicaPoolSize-d),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))):(s.push(l),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToClose`));for(let l of u)o.has(JSON.stringify(l))||(i.set(l,e.replicaPoolSize),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))}return{sentinelList:[e.sentinelConnected].concat((0,Fn.createNodeList)(e.sentinelData)),epoch:Number(e.masterData["config-epoch"]),sentinelToOpen:n,masterToOpen:r,replicasToClose:s,replicasToOpen:i}}async transform(e){this.#u("transform: enter");let r=[];if(e.sentinelToOpen){this.#u("transform: opening a new sentinel"),this.#d!==void 0&&this.#d.isOpen?(this.#u("transform: destroying old sentinel as open"),this.#d.destroy(),this.#d=void 0):this.#u("transform: not destroying old sentinel as not open"),this.#u(`transform: creating new sentinel to ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let a=e.sentinelToOpen,o=this.#T(e.sentinelToOpen,this.#a,!1);o.on("error",l=>{this.#i&&this.emit("error",new Error(`Sentinel Client (${a.host}:${a.port}): ${l.message}`,{cause:l}));let d={type:"SENTINEL",node:(0,Fn.clientSocketToNode)(o.options.socket),error:l};this.emit("client-error",d),this.#P(a)}).on("end",()=>this.#P(a)),this.#d=o,this.#u("transform: adding sentinel client connect() to promise list");let c=this.#d.connect().then(l=>this.#N(l));r.push(c),this.#u(`created sentinel client to ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let u={type:"SENTINEL_CHANGE",node:e.sentinelToOpen};this.#u("transform: emiting topology-change event for sentinel_change"),this.emit("topology-change",u)||this.#u("transform: emit for topology-change for sentinel_change returned false")}if(e.masterToOpen){this.#u("transform: opening a new master");let a=[],o=[];this.#u("transform: destroying old masters if open");for(let u of this.#f)o.push(u.isWatching||u.isDirtyWatch),u.isOpen&&u.destroy();this.#f=[],this.#u("transform: creating all master clients and adding connect promises");for(let u=0;u<this.#A;u++){let l=e.masterToOpen,d=this.#T(e.masterToOpen,this.#n);d.on("error",f=>{this.#i&&this.emit("error",new Error(`Master Client (${l.host}:${l.port}): ${f.message}`,{cause:f}));let m={type:"MASTER",node:(0,Fn.clientSocketToNode)(d.options.socket),error:f};this.emit("client-error",m)}),o[u]&&d.setDirtyWatch("sentinel config changed in middle of a WATCH Transaction"),this.#f.push(d),a.push(d.connect()),this.#u(`created master client to ${e.masterToOpen.host}:${e.masterToOpen.port}`)}this.#u("transform: adding promise to change #pubSubProxy node"),a.push(this.#E.changeNode(e.masterToOpen)),r.push(...a);let c={type:"MASTER_CHANGE",node:e.masterToOpen};this.#u("transform: emiting topology-change event for master_change"),this.emit("topology-change",c)||this.#u("transform: emit for topology-change for master_change returned false"),this.#h++}let n=new Set;for(let a of e.replicasToClose){let o=JSON.stringify(a);n.add(o)}let s=[],i=new Set;for(let a of this.#g){let o=(0,Fn.clientSocketToNode)(a.options.socket),c=JSON.stringify(o);if(n.has(c)||!a.isOpen){if(a.isOpen){let u=a.options?.socket;this.#u(`destroying replica client to ${u?.host}:${u?.port}`),a.destroy()}if(!i.has(c)){let u={type:"REPLICA_REMOVE",node:o};this.emit("topology-change",u),i.add(c)}}else s.push(a)}if(this.#g=s,e.replicasToOpen.size!=0)for(let[a,o]of e.replicasToOpen){for(let u=0;u<o;u++){let l=this.#T(a,this.#n);l.on("error",d=>{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=()=>{}}},sie=class extends aie.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=C1.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:e.host,port:e.port,reconnectStrategy:!1},modules:x6.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=C1.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:x6.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 C1.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=C1.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:x6.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 C1.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:n.host,port:n.port}})}};Vf.RedisSentinelFactory=sie});var bT=_(Kt=>{"use strict";var vgr=Kt&&Kt.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Sgr=Kt&&Kt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&vgr(e,t,r)},oie=Kt&&Kt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Kt,"__esModule",{value:!0});Kt.BasicPooledClientSideCache=Kt.BasicClientSideCache=Kt.REDIS_FLUSH_MODES=Kt.COMMAND_LIST_FILTER_BY=Kt.CLUSTER_SLOT_STATES=Kt.FAILOVER_MODES=Kt.CLIENT_KILL_FILTERS=Kt.GEO_REPLY_WITH=Kt.createSentinel=Kt.createCluster=Kt.createClientPool=Kt.createClient=Kt.digest=Kt.defineScript=Kt.VerbatimString=Kt.RESP_TYPES=void 0;var Igr=UL();Object.defineProperty(Kt,"RESP_TYPES",{enumerable:!0,get:function(){return Igr.RESP_TYPES}});var Cgr=TJ();Object.defineProperty(Kt,"VerbatimString",{enumerable:!0,get:function(){return Cgr.VerbatimString}});var Tgr=_Fe();Object.defineProperty(Kt,"defineScript",{enumerable:!0,get:function(){return Tgr.defineScript}});var wgr=EFe();Object.defineProperty(Kt,"digest",{enumerable:!0,get:function(){return wgr.digest}});Sgr(zl(),Kt);var Rgr=oie(A1());Kt.createClient=Rgr.default.create;var Ngr=jse();Kt.createClientPool=Ngr.RedisClientPool.create;var Ogr=oie(Eet());Kt.createCluster=Ogr.default.create;var kgr=oie(zet());Kt.createSentinel=kgr.default.create;var Pgr=f2();Object.defineProperty(Kt,"GEO_REPLY_WITH",{enumerable:!0,get:function(){return Pgr.GEO_REPLY_WITH}});var xT=Pu();Object.defineProperty(Kt,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return xT.CLIENT_KILL_FILTERS}});Object.defineProperty(Kt,"FAILOVER_MODES",{enumerable:!0,get:function(){return xT.FAILOVER_MODES}});Object.defineProperty(Kt,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return xT.CLUSTER_SLOT_STATES}});Object.defineProperty(Kt,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return xT.COMMAND_LIST_FILTER_BY}});Object.defineProperty(Kt,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return xT.REDIS_FLUSH_MODES}});var Yet=g1();Object.defineProperty(Kt,"BasicClientSideCache",{enumerable:!0,get:function(){return Yet.BasicClientSideCache}});Object.defineProperty(Kt,"BasicPooledClientSideCache",{enumerable:!0,get:function(){return Yet.BasicPooledClientSideCache}})});var Jet=_(cie=>{"use strict";Object.defineProperty(cie,"__esModule",{value:!0});var Dgr=we();cie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.ADD"),t.pushKey(e),t.push(r)},transformReply:Dgr.transformBooleanReply}});var Xet=_(uie=>{"use strict";Object.defineProperty(uie,"__esModule",{value:!0});uie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.CARD"),t.pushKey(e)},transformReply:void 0}});var Zet=_(lie=>{"use strict";Object.defineProperty(lie,"__esModule",{value:!0});var Bgr=we();lie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:Bgr.transformBooleanReply}});var die=_(b6=>{"use strict";Object.defineProperty(b6,"__esModule",{value:!0});b6.transformInfoV2Reply=void 0;var Lgr=bT();function Mgr(t,e){switch(e?e[Lgr.RESP_TYPES.MAP]:void 0){case Array:return t;case Map:{let n=new Map;for(let s=0;s<t.length;s+=2)n.set(t[s].toString(),t[s+1]);return n}default:{let n=Object.create(null);for(let s=0;s<t.length;s+=2)n[t[s].toString()]=t[s+1];return n}}}b6.transformInfoV2Reply=Mgr});var ett=_(fie=>{"use strict";Object.defineProperty(fie,"__esModule",{value:!0});var Wgr=die();fie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Wgr.transformInfoV2Reply)(t,r),3:void 0}}});var ttt=_(pie=>{"use strict";Object.defineProperty(pie,"__esModule",{value:!0});var $gr=we();pie.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:$gr.transformBooleanArrayReply}});var rtt=_(mie=>{"use strict";Object.defineProperty(mie,"__esModule",{value:!0});mie.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 ntt=_(hie=>{"use strict";Object.defineProperty(hie,"__esModule",{value:!0});var Ugr=we();hie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.MADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:Ugr.transformBooleanArrayReply}});var stt=_(gie=>{"use strict";Object.defineProperty(gie,"__esModule",{value:!0});var Fgr=we();gie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.MEXISTS"),t.pushKey(e),t.pushVariadic(r)},transformReply:Fgr.transformBooleanArrayReply}});var itt=_(yie=>{"use strict";Object.defineProperty(yie,"__esModule",{value:!0});yie.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 att=_(Aie=>{"use strict";Object.defineProperty(Aie,"__esModule",{value:!0});Aie.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 T1=_(nd=>{"use strict";var qgr=nd&&nd.__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]}),jgr=nd&&nd.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&qgr(e,t,r)},sd=nd&&nd.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(nd,"__esModule",{value:!0});var ott=sd(Jet()),ctt=sd(Xet()),utt=sd(Zet()),ltt=sd(ett()),dtt=sd(ttt()),ftt=sd(rtt()),ptt=sd(ntt()),mtt=sd(stt()),htt=sd(itt()),gtt=sd(att());jgr(die(),nd);nd.default={ADD:ott.default,add:ott.default,CARD:ctt.default,card:ctt.default,EXISTS:utt.default,exists:utt.default,INFO:ltt.default,info:ltt.default,INSERT:dtt.default,insert:dtt.default,LOADCHUNK:ftt.default,loadChunk:ftt.default,MADD:ptt.default,mAdd:ptt.default,MEXISTS:mtt.default,mExists:mtt.default,RESERVE:htt.default,reserve:htt.default,SCANDUMP:gtt.default,scanDump:gtt.default}});var Att=_(xie=>{"use strict";Object.defineProperty(xie,"__esModule",{value:!0});xie.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)ytt(t,n);else ytt(t,r)},transformReply:void 0};function ytt(t,{item:e,incrementBy:r}){t.push(e,r.toString())}});var xtt=_(bie=>{"use strict";Object.defineProperty(bie,"__esModule",{value:!0});var Qgr=T1();bie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CMS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Qgr.transformInfoV2Reply)(t,r),3:void 0}}});var btt=_(_ie=>{"use strict";Object.defineProperty(_ie,"__esModule",{value:!0});_ie.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 _tt=_(Eie=>{"use strict";Object.defineProperty(Eie,"__esModule",{value:!0});Eie.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 Ett=_(vie=>{"use strict";Object.defineProperty(vie,"__esModule",{value:!0});vie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.MERGE"),t.pushKey(e),t.push(r.length.toString()),Hgr(r))t.pushVariadic(r);else{for(let n=0;n<r.length;n++)t.push(r[n].name);t.push("WEIGHTS");for(let n=0;n<r.length;n++)t.push(r[n].weight.toString())}},transformReply:void 0};function Hgr(t){return typeof t[0]=="string"||t[0]instanceof Buffer}});var vtt=_(Sie=>{"use strict";Object.defineProperty(Sie,"__esModule",{value:!0});Sie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CMS.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var Ntt=_(_T=>{"use strict";var w1=_T&&_T.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_T,"__esModule",{value:!0});var Stt=w1(Att()),Itt=w1(xtt()),Ctt=w1(btt()),Ttt=w1(_tt()),wtt=w1(Ett()),Rtt=w1(vtt());_T.default={INCRBY:Stt.default,incrBy:Stt.default,INFO:Itt.default,info:Itt.default,INITBYDIM:Ctt.default,initByDim:Ctt.default,INITBYPROB:Ttt.default,initByProb:Ttt.default,MERGE:wtt.default,merge:wtt.default,QUERY:Rtt.default,query:Rtt.default}});var Ott=_(Iie=>{"use strict";Object.defineProperty(Iie,"__esModule",{value:!0});var Ggr=we();Iie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADD"),t.pushKey(e),t.push(r)},transformReply:Ggr.transformBooleanReply}});var ktt=_(Cie=>{"use strict";Object.defineProperty(Cie,"__esModule",{value:!0});var Vgr=we();Cie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADDNX"),t.pushKey(e),t.push(r)},transformReply:Vgr.transformBooleanReply}});var Ptt=_(Tie=>{"use strict";Object.defineProperty(Tie,"__esModule",{value:!0});Tie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.COUNT"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Dtt=_(wie=>{"use strict";Object.defineProperty(wie,"__esModule",{value:!0});var Kgr=we();wie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.DEL"),t.pushKey(e),t.push(r)},transformReply:Kgr.transformBooleanReply}});var Btt=_(Rie=>{"use strict";Object.defineProperty(Rie,"__esModule",{value:!0});var zgr=we();Rie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:zgr.transformBooleanReply}});var Ltt=_(Nie=>{"use strict";Object.defineProperty(Nie,"__esModule",{value:!0});var Ygr=T1();Nie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Ygr.transformInfoV2Reply)(t,r),3:void 0}}});var Oie=_(ET=>{"use strict";Object.defineProperty(ET,"__esModule",{value:!0});ET.parseCfInsertArguments=void 0;var Jgr=we();function Mtt(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)}ET.parseCfInsertArguments=Mtt;ET.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("CF.INSERT"),Mtt(...t)},transformReply:Jgr.transformBooleanArrayReply}});var Wtt=_(Kf=>{"use strict";var Xgr=Kf&&Kf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Zgr=Kf&&Kf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),eyr=Kf&&Kf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Xgr(e,t,r);return Zgr(e,t),e};Object.defineProperty(Kf,"__esModule",{value:!0});var kie=eyr(Oie());Kf.default={IS_READ_ONLY:kie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("CF.INSERTNX"),(0,kie.parseCfInsertArguments)(...t)},transformReply:kie.default.transformReply}});var $tt=_(Pie=>{"use strict";Object.defineProperty(Pie,"__esModule",{value:!0});Pie.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 Utt=_(Die=>{"use strict";Object.defineProperty(Die,"__esModule",{value:!0});Die.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 Ftt=_(Bie=>{"use strict";Object.defineProperty(Bie,"__esModule",{value:!0});Bie.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 Ztt=_(vT=>{"use strict";var Mu=vT&&vT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(vT,"__esModule",{value:!0});var qtt=Mu(Ott()),jtt=Mu(ktt()),Qtt=Mu(Ptt()),Htt=Mu(Dtt()),Gtt=Mu(Btt()),Vtt=Mu(Ltt()),Ktt=Mu(Oie()),ztt=Mu(Wtt()),Ytt=Mu($tt()),Jtt=Mu(Utt()),Xtt=Mu(Ftt());vT.default={ADD:qtt.default,add:qtt.default,ADDNX:jtt.default,addNX:jtt.default,COUNT:Qtt.default,count:Qtt.default,DEL:Htt.default,del:Htt.default,EXISTS:Gtt.default,exists:Gtt.default,INFO:Vtt.default,info:Vtt.default,INSERT:Ktt.default,insert:Ktt.default,INSERTNX:ztt.default,insertNX:ztt.default,LOADCHUNK:Ytt.default,loadChunk:Ytt.default,RESERVE:Jtt.default,reserve:Jtt.default,SCANDUMP:Xtt.default,scanDump:Xtt.default}});var ert=_(Lie=>{"use strict";Object.defineProperty(Lie,"__esModule",{value:!0});Lie.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 Mie=_(ST=>{"use strict";Object.defineProperty(ST,"__esModule",{value:!0});ST.transformByRankArguments=void 0;var tyr=we();function trt(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}ST.transformByRankArguments=trt;ST.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.BYRANK"),trt(...t)},transformReply:tyr.transformDoubleArrayReply}});var rrt=_(zf=>{"use strict";var ryr=zf&&zf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),nyr=zf&&zf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),syr=zf&&zf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&ryr(e,t,r);return nyr(e,t),e};Object.defineProperty(zf,"__esModule",{value:!0});var Wie=syr(Mie());zf.default={IS_READ_ONLY:Wie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.BYREVRANK"),(0,Wie.transformByRankArguments)(...t)},transformReply:Wie.default.transformReply}});var nrt=_($ie=>{"use strict";Object.defineProperty($ie,"__esModule",{value:!0});var iyr=we();$ie.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:iyr.transformDoubleArrayReply}});var srt=_(Uie=>{"use strict";Object.defineProperty(Uie,"__esModule",{value:!0});Uie.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 irt=_(Fie=>{"use strict";Object.defineProperty(Fie,"__esModule",{value:!0});var ayr=T1();Fie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,ayr.transformInfoV2Reply)(t,r),3:void 0}}});var art=_(qie=>{"use strict";Object.defineProperty(qie,"__esModule",{value:!0});var oyr=we();qie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MAX"),t.pushKey(e)},transformReply:oyr.transformDoubleReply}});var ort=_(jie=>{"use strict";Object.defineProperty(jie,"__esModule",{value:!0});jie.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 crt=_(Qie=>{"use strict";Object.defineProperty(Qie,"__esModule",{value:!0});var cyr=we();Qie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MIN"),t.pushKey(e)},transformReply:cyr.transformDoubleReply}});var urt=_(Hie=>{"use strict";Object.defineProperty(Hie,"__esModule",{value:!0});var uyr=we();Hie.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:uyr.transformDoubleArrayReply}});var Gie=_(IT=>{"use strict";Object.defineProperty(IT,"__esModule",{value:!0});IT.transformRankArguments=void 0;function lrt(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}IT.transformRankArguments=lrt;IT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.RANK"),lrt(...t)},transformReply:void 0}});var drt=_(Vie=>{"use strict";Object.defineProperty(Vie,"__esModule",{value:!0});Vie.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TDIGEST.RESET"),t.pushKey(e)},transformReply:void 0}});var frt=_(Yf=>{"use strict";var lyr=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]}),dyr=Yf&&Yf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),fyr=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)&&lyr(e,t,r);return dyr(e,t),e};Object.defineProperty(Yf,"__esModule",{value:!0});var Kie=fyr(Gie());Yf.default={IS_READ_ONLY:Kie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.REVRANK"),(0,Kie.transformRankArguments)(...t)},transformReply:Kie.default.transformReply}});var prt=_(zie=>{"use strict";Object.defineProperty(zie,"__esModule",{value:!0});var pyr=we();zie.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:pyr.transformDoubleReply}});var wrt=_(CT=>{"use strict";var Ao=CT&&CT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(CT,"__esModule",{value:!0});var mrt=Ao(ert()),hrt=Ao(Mie()),grt=Ao(rrt()),yrt=Ao(nrt()),Art=Ao(srt()),xrt=Ao(irt()),brt=Ao(art()),_rt=Ao(ort()),Ert=Ao(crt()),vrt=Ao(urt()),Srt=Ao(Gie()),Irt=Ao(drt()),Crt=Ao(frt()),Trt=Ao(prt());CT.default={ADD:mrt.default,add:mrt.default,BYRANK:hrt.default,byRank:hrt.default,BYREVRANK:grt.default,byRevRank:grt.default,CDF:yrt.default,cdf:yrt.default,CREATE:Art.default,create:Art.default,INFO:xrt.default,info:xrt.default,MAX:brt.default,max:brt.default,MERGE:_rt.default,merge:_rt.default,MIN:Ert.default,min:Ert.default,QUANTILE:vrt.default,quantile:vrt.default,RANK:Srt.default,rank:Srt.default,RESET:Irt.default,reset:Irt.default,REVRANK:Crt.default,revRank:Crt.default,TRIMMED_MEAN:Trt.default,trimmedMean:Trt.default}});var Rrt=_(Yie=>{"use strict";Object.defineProperty(Yie,"__esModule",{value:!0});Yie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.ADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var Nrt=_(Jie=>{"use strict";Object.defineProperty(Jie,"__esModule",{value:!0});Jie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TOPK.COUNT"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var krt=_(Xie=>{"use strict";Object.defineProperty(Xie,"__esModule",{value:!0});function Ort(t,{item:e,incrementBy:r}){t.push(e,r.toString())}Xie.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)Ort(t,n);else Ort(t,r)},transformReply:void 0}});var Prt=_(Zie=>{"use strict";Object.defineProperty(Zie,"__esModule",{value:!0});var myr=we(),hyr=T1();Zie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(t[7]=myr.transformDoubleReply[2](t[7],e,r),(0,hyr.transformInfoV2Reply)(t,r)),3:void 0}}});var Drt=_(eae=>{"use strict";Object.defineProperty(eae,"__esModule",{value:!0});eae.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<t.length;r++)e.push({item:t[r],count:t[++r]});return e}}});var Brt=_(tae=>{"use strict";Object.defineProperty(tae,"__esModule",{value:!0});tae.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e)},transformReply:void 0}});var Lrt=_(rae=>{"use strict";Object.defineProperty(rae,"__esModule",{value:!0});var gyr=we();rae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:gyr.transformBooleanArrayReply}});var Mrt=_(nae=>{"use strict";Object.defineProperty(nae,"__esModule",{value:!0});nae.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 Grt=_(TT=>{"use strict";var hm=TT&&TT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(TT,"__esModule",{value:!0});var Wrt=hm(Rrt()),$rt=hm(Nrt()),Urt=hm(krt()),Frt=hm(Prt()),qrt=hm(Drt()),jrt=hm(Brt()),Qrt=hm(Lrt()),Hrt=hm(Mrt());TT.default={ADD:Wrt.default,add:Wrt.default,COUNT:$rt.default,count:$rt.default,INCRBY:Urt.default,incrBy:Urt.default,INFO:Frt.default,info:Frt.default,LIST_WITHCOUNT:qrt.default,listWithCount:qrt.default,LIST:jrt.default,list:jrt.default,QUERY:Qrt.default,query:Qrt.default,RESERVE:Hrt.default,reserve:Hrt.default}});var Vrt=_(wT=>{"use strict";var RT=wT&&wT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(wT,"__esModule",{value:!0});var yyr=RT(T1()),Ayr=RT(Ntt()),xyr=RT(Ztt()),byr=RT(wrt()),_yr=RT(Grt());wT.default={bf:yyr.default,cms:Ayr.default,cf:xyr.default,tDigest:byr.default,topK:_yr.default}});var sae=_(R1=>{"use strict";var Eyr=R1&&R1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(R1,"__esModule",{value:!0});R1.default=void 0;var vyr=Vrt();Object.defineProperty(R1,"default",{enumerable:!0,get:function(){return Eyr(vyr).default}})});var zrt=_(iae=>{"use strict";Object.defineProperty(iae,"__esModule",{value:!0});var Krt=we();iae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,...s){t.push("JSON.ARRAPPEND"),t.pushKey(e),t.push(r,(0,Krt.transformRedisJsonArgument)(n));for(let i=0;i<s.length;i++)t.push((0,Krt.transformRedisJsonArgument)(s[i]))},transformReply:void 0}});var Yrt=_(aae=>{"use strict";Object.defineProperty(aae,"__esModule",{value:!0});var Syr=we();aae.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("JSON.ARRINDEX"),t.pushKey(e),t.push(r,(0,Syr.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 Xrt=_(oae=>{"use strict";Object.defineProperty(oae,"__esModule",{value:!0});var Jrt=we();oae.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,Jrt.transformRedisJsonArgument)(s));for(let a=0;a<i.length;a++)t.push((0,Jrt.transformRedisJsonArgument)(i[a]))},transformReply:void 0}});var Zrt=_(cae=>{"use strict";Object.defineProperty(cae,"__esModule",{value:!0});cae.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 ent=_(lae=>{"use strict";Object.defineProperty(lae,"__esModule",{value:!0});var uae=we();lae.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,uae.isArrayReply)(t)?t.map(e=>(0,uae.transformRedisJsonNullReply)(e)):(0,uae.transformRedisJsonNullReply)(t)}}});var tnt=_(dae=>{"use strict";Object.defineProperty(dae,"__esModule",{value:!0});dae.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 rnt=_(fae=>{"use strict";Object.defineProperty(fae,"__esModule",{value:!0});fae.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 nnt=_(pae=>{"use strict";Object.defineProperty(pae,"__esModule",{value:!0});pae.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 snt=_(mae=>{"use strict";Object.defineProperty(mae,"__esModule",{value:!0});mae.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 int=_(hae=>{"use strict";Object.defineProperty(hae,"__esModule",{value:!0});hae.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 ant=_(gae=>{"use strict";Object.defineProperty(gae,"__esModule",{value:!0});var Iyr=we();gae.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:Iyr.transformRedisJsonNullReply}});var ont=_(yae=>{"use strict";Object.defineProperty(yae,"__esModule",{value:!0});var Cyr=we();yae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.MERGE"),t.pushKey(e),t.push(r,(0,Cyr.transformRedisJsonArgument)(n))},transformReply:void 0}});var cnt=_(Aae=>{"use strict";Object.defineProperty(Aae,"__esModule",{value:!0});var Tyr=we();Aae.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,Tyr.transformRedisJsonNullReply)(e))}}});var unt=_(xae=>{"use strict";Object.defineProperty(xae,"__esModule",{value:!0});var wyr=we();xae.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("JSON.MSET");for(let r=0;r<e.length;r++)t.pushKey(e[r].key),t.push(e[r].path,(0,wyr.transformRedisJsonArgument)(e[r].value))},transformReply:void 0}});var _ae=_(bae=>{"use strict";Object.defineProperty(bae,"__esModule",{value:!0});bae.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 lnt=_(NT=>{"use strict";var Ryr=NT&&NT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(NT,"__esModule",{value:!0});var Nyr=Ryr(_ae());NT.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMMULTBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:Nyr.default.transformReply}});var dnt=_(Eae=>{"use strict";Object.defineProperty(Eae,"__esModule",{value:!0});Eae.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 fnt=_(vae=>{"use strict";Object.defineProperty(vae,"__esModule",{value:!0});vae.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 pnt=_(Sae=>{"use strict";Object.defineProperty(Sae,"__esModule",{value:!0});var Oyr=we();Sae.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.SET"),t.pushKey(e),t.push(r,(0,Oyr.transformRedisJsonArgument)(n)),s?.condition?t.push(s?.condition):s?.NX?t.push("NX"):s?.XX&&t.push("XX")},transformReply:void 0}});var mnt=_(Iae=>{"use strict";Object.defineProperty(Iae,"__esModule",{value:!0});var kyr=we();Iae.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,kyr.transformRedisJsonArgument)(r))},transformReply:void 0}});var hnt=_(Cae=>{"use strict";Object.defineProperty(Cae,"__esModule",{value:!0});Cae.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 gnt=_(Tae=>{"use strict";Object.defineProperty(Tae,"__esModule",{value:!0});Tae.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.TOGGLE"),t.pushKey(e),t.push(r)},transformReply:void 0}});var ynt=_(wae=>{"use strict";Object.defineProperty(wae,"__esModule",{value:!0});wae.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 Fnt=_(Wu=>{"use strict";var Vn=Wu&&Wu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Wu,"__esModule",{value:!0});Wu.transformRedisJsonNullReply=Wu.transformRedisJsonReply=Wu.transformRedisJsonArgument=void 0;var Ant=Vn(zrt()),xnt=Vn(Yrt()),bnt=Vn(Xrt()),_nt=Vn(Zrt()),Ent=Vn(ent()),vnt=Vn(tnt()),Snt=Vn(rnt()),Int=Vn(nnt()),Cnt=Vn(snt()),Tnt=Vn(int()),wnt=Vn(ant()),Rnt=Vn(ont()),Nnt=Vn(cnt()),Ont=Vn(unt()),knt=Vn(_ae()),Pnt=Vn(lnt()),Dnt=Vn(dnt()),Bnt=Vn(fnt()),Lnt=Vn(pnt()),Mnt=Vn(mnt()),Wnt=Vn(hnt()),$nt=Vn(gnt()),Unt=Vn(ynt()),Rae=we();Object.defineProperty(Wu,"transformRedisJsonArgument",{enumerable:!0,get:function(){return Rae.transformRedisJsonArgument}});Object.defineProperty(Wu,"transformRedisJsonReply",{enumerable:!0,get:function(){return Rae.transformRedisJsonReply}});Object.defineProperty(Wu,"transformRedisJsonNullReply",{enumerable:!0,get:function(){return Rae.transformRedisJsonNullReply}});Wu.default={ARRAPPEND:Ant.default,arrAppend:Ant.default,ARRINDEX:xnt.default,arrIndex:xnt.default,ARRINSERT:bnt.default,arrInsert:bnt.default,ARRLEN:_nt.default,arrLen:_nt.default,ARRPOP:Ent.default,arrPop:Ent.default,ARRTRIM:vnt.default,arrTrim:vnt.default,CLEAR:Snt.default,clear:Snt.default,DEBUG_MEMORY:Int.default,debugMemory:Int.default,DEL:Cnt.default,del:Cnt.default,FORGET:Tnt.default,forget:Tnt.default,GET:wnt.default,get:wnt.default,MERGE:Rnt.default,merge:Rnt.default,MGET:Nnt.default,mGet:Nnt.default,MSET:Ont.default,mSet:Ont.default,NUMINCRBY:knt.default,numIncrBy:knt.default,NUMMULTBY:Pnt.default,numMultBy:Pnt.default,OBJKEYS:Dnt.default,objKeys:Dnt.default,OBJLEN:Bnt.default,objLen:Bnt.default,SET:Lnt.default,set:Lnt.default,STRAPPEND:Mnt.default,strAppend:Mnt.default,STRLEN:Wnt.default,strLen:Wnt.default,TOGGLE:$nt.default,toggle:$nt.default,TYPE:Unt.default,type:Unt.default}});var Nae=_(N1=>{"use strict";var Pyr=N1&&N1.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(N1,"__esModule",{value:!0});N1.default=void 0;var Dyr=Fnt();Object.defineProperty(N1,"default",{enumerable:!0,get:function(){return Pyr(Dyr).default}})});var qnt=_(Oae=>{"use strict";Object.defineProperty(Oae,"__esModule",{value:!0});Oae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FT._LIST")},transformReply:{2:void 0,3:void 0}}});var _6=_(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 jnt=we();Cn.SCHEMA_FIELD_TYPE={TEXT:"TEXT",NUMERIC:"NUMERIC",GEO:"GEO",TAG:"TAG",VECTOR:"VECTOR",GEOSHAPE:"GEOSHAPE"};Cn.SCHEMA_TEXT_FIELD_PHONETIC={DM_EN:"dm:en",DM_FR:"dm:fr",DM_PT:"dm:pt",DM_ES:"dm:es"};Cn.SCHEMA_VECTOR_FIELD_ALGORITHM={FLAT:"FLAT",HNSW:"HNSW",VAMANA:"SVS-VAMANA"};Cn.VAMANA_COMPRESSION_ALGORITHM={LVQ4:"LVQ4",LVQ8:"LVQ8",LVQ4x4:"LVQ4x4",LVQ4x8:"LVQ4x8",LeanVec4x8:"LeanVec4x8",LeanVec8x8:"LeanVec8x8"};Cn.SCHEMA_GEO_SHAPE_COORD_SYSTEM={SPHERICAL:"SPHERICAL",FLAT:"FLAT"};function kae(t,e){e.SORTABLE&&(t.push("SORTABLE"),e.SORTABLE==="UNF"&&t.push("UNF")),e.NOINDEX&&t.push("NOINDEX")}function Qnt(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"),kae(t,i);break;case Cn.SCHEMA_FIELD_TYPE.NUMERIC:case Cn.SCHEMA_FIELD_TYPE.GEO:kae(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"),kae(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=Qnt;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,jnt.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,jnt.parseOptionalVariadicArgument)(t,"STOPWORDS",n?.STOPWORDS),t.push("SCHEMA"),Qnt(t,r)},transformReply:void 0}});var Hnt=_(Pae=>{"use strict";Object.defineProperty(Pae,"__esModule",{value:!0});var Byr=_6();Pae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALTER",e,"SCHEMA","ADD"),(0,Byr.parseSchema)(t,r)},transformReply:void 0}});var O1=_(E6=>{"use strict";Object.defineProperty(E6,"__esModule",{value:!0});E6.DEFAULT_DIALECT=void 0;E6.DEFAULT_DIALECT="2"});var zg=_(Kg=>{"use strict";Object.defineProperty(Kg,"__esModule",{value:!0});Kg.parseSearchOptions=Kg.parseParamsArgument=void 0;var OT=we(),Lyr=O1();function Gnt(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)}}Kg.parseParamsArgument=Gnt;function Vnt(t,e){e?.VERBATIM&&t.push("VERBATIM"),e?.NOSTOPWORDS&&t.push("NOSTOPWORDS"),(0,OT.parseOptionalVariadicArgument)(t,"INKEYS",e?.INKEYS),(0,OT.parseOptionalVariadicArgument)(t,"INFIELDS",e?.INFIELDS),(0,OT.parseOptionalVariadicArgument)(t,"RETURN",e?.RETURN),e?.SUMMARIZE&&(t.push("SUMMARIZE"),typeof e.SUMMARIZE=="object"&&((0,OT.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,OT.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()),Gnt(t,e?.PARAMS),e?.DIALECT?t.push("DIALECT",e.DIALECT.toString()):t.push("DIALECT",Lyr.DEFAULT_DIALECT)}Kg.parseSearchOptions=Vnt;Kg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SEARCH",e,r),Vnt(t,n)},transformReply:{2:t=>{let e=t.length>2&&!Array.isArray(t[2]),r=[],n=1;for(;n<t.length;)r.push({id:t[n++],value:e?Object.create(null):Myr(t[n++])});return{total:t[0],documents:r}},3:void 0},unstableResp3:!0};function Myr(t){let e=Object.create(null);if(!t)return e;let r=0;for(;r<t.length;){let n=t[r++],s=t[r++];if(n==="$")try{Object.assign(e,JSON.parse(s));continue}catch{}e[n]=s}return e}});var k1=_(on=>{"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 Wyr=zg(),$yr=we(),Uyr=O1();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),Ynt(t,n)},transformReply:{2:(t,e,r)=>{let n=[];for(let s=1;s<t.length;s++)n.push((0,$yr.transformTuplesReply)(t[s],e,r));return{total:Number(t[0]),results:n}},3:void 0},unstableResp3:!0};function Ynt(t,e){if(e?.VERBATIM&&t.push("VERBATIM"),e?.ADDSCORES&&t.push("ADDSCORES"),e?.LOAD){let r=[];if(Array.isArray(e.LOAD))for(let n of e.LOAD)Knt(r,n);else Knt(r,e.LOAD);t.push("LOAD"),t.pushVariadicWithLength(r)}if(e?.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString()),e?.STEPS)for(let r of e.STEPS)switch(t.push(r.type),r.type){case on.FT_AGGREGATE_STEPS.GROUPBY:if(r.properties?t.pushVariadicWithLength(r.properties):t.push("0"),Array.isArray(r.REDUCE))for(let s of r.REDUCE)Dae(t,s);else Dae(t,r.REDUCE);break;case on.FT_AGGREGATE_STEPS.SORTBY:let n=[];if(Array.isArray(r.BY))for(let s of r.BY)znt(n,s);else znt(n,r.BY);r.MAX&&n.push("MAX",r.MAX.toString()),t.pushVariadicWithLength(n);break;case on.FT_AGGREGATE_STEPS.APPLY:t.push(r.expression,"AS",r.AS);break;case on.FT_AGGREGATE_STEPS.LIMIT:t.push(r.from.toString(),r.size.toString());break;case on.FT_AGGREGATE_STEPS.FILTER:t.push(r.expression);break}(0,Wyr.parseParamsArgument)(t,e?.PARAMS),e?.DIALECT?t.push("DIALECT",e.DIALECT.toString()):t.push("DIALECT",Uyr.DEFAULT_DIALECT)}on.parseAggregateOptions=Ynt;function Knt(t,e){typeof e=="string"||e instanceof Buffer?t.push(e):(t.push(e.identifier),e.AS&&t.push("AS",e.AS))}function Dae(t,e){switch(t.push("REDUCE",e.type),e.type){case on.FT_AGGREGATE_GROUP_BY_REDUCERS.COUNT:t.push("0");break;case on.FT_AGGREGATE_GROUP_BY_REDUCERS.COUNT_DISTINCT:case on.FT_AGGREGATE_GROUP_BY_REDUCERS.COUNT_DISTINCTISH:case on.FT_AGGREGATE_GROUP_BY_REDUCERS.SUM:case on.FT_AGGREGATE_GROUP_BY_REDUCERS.MIN:case on.FT_AGGREGATE_GROUP_BY_REDUCERS.MAX:case on.FT_AGGREGATE_GROUP_BY_REDUCERS.AVG:case on.FT_AGGREGATE_GROUP_BY_REDUCERS.STDDEV:case on.FT_AGGREGATE_GROUP_BY_REDUCERS.TOLIST:t.push("1",e.property);break;case on.FT_AGGREGATE_GROUP_BY_REDUCERS.QUANTILE:t.push("2",e.property,e.quantile.toString());break;case on.FT_AGGREGATE_GROUP_BY_REDUCERS.FIRST_VALUE:{let r=[e.property];e.BY&&(r.push("BY"),typeof e.BY=="string"||e.BY instanceof Buffer?r.push(e.BY):(r.push(e.BY.property),e.BY.direction&&r.push(e.BY.direction))),t.pushVariadicWithLength(r);break}case on.FT_AGGREGATE_GROUP_BY_REDUCERS.RANDOM_SAMPLE:t.push("2",e.property,e.sampleSize.toString());break}e.AS&&t.push("AS",e.AS)}on.parseGroupByReducer=Dae;function znt(t,e){typeof e=="string"||e instanceof Buffer?t.push(e):(t.push(e.BY),e.DIRECTION&&t.push(e.DIRECTION))}});var Lae=_(kT=>{"use strict";var Fyr=kT&&kT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kT,"__esModule",{value:!0});var Bae=Fyr(k1());kT.default={IS_READ_ONLY:Bae.default.IS_READ_ONLY,parseCommand(t,e,r,n){Bae.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=>({...Bae.default.transformReply[2](t[0]),cursor:t[1]}),3:void 0},unstableResp3:!0}});var Jnt=_(Mae=>{"use strict";Object.defineProperty(Mae,"__esModule",{value:!0});Mae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASADD",e,r)},transformReply:void 0}});var Xnt=_(Wae=>{"use strict";Object.defineProperty(Wae,"__esModule",{value:!0});Wae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.ALIASDEL",e)},transformReply:void 0}});var Znt=_($ae=>{"use strict";Object.defineProperty($ae,"__esModule",{value:!0});$ae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASUPDATE",e,r)},transformReply:void 0}});var est=_(Uae=>{"use strict";Object.defineProperty(Uae,"__esModule",{value:!0});Uae.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 tst=_(Fae=>{"use strict";Object.defineProperty(Fae,"__esModule",{value:!0});Fae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CONFIG","SET",e,r)},transformReply:void 0}});var rst=_(qae=>{"use strict";Object.defineProperty(qae,"__esModule",{value:!0});qae.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 nst=_(PT=>{"use strict";var qyr=PT&&PT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(PT,"__esModule",{value:!0});var jyr=qyr(Lae());PT.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:jyr.default.transformReply,unstableResp3:!0}});var sst=_(jae=>{"use strict";Object.defineProperty(jae,"__esModule",{value:!0});jae.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 ist=_(Qae=>{"use strict";Object.defineProperty(Qae,"__esModule",{value:!0});Qae.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 ast=_(Hae=>{"use strict";Object.defineProperty(Hae,"__esModule",{value:!0});Hae.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 ost=_(Gae=>{"use strict";Object.defineProperty(Gae,"__esModule",{value:!0});Gae.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 cst=_(Vae=>{"use strict";Object.defineProperty(Vae,"__esModule",{value:!0});var Qyr=zg(),Hyr=O1();Vae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAIN",e,r),(0,Qyr.parseParamsArgument)(t,n?.PARAMS),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Hyr.DEFAULT_DIALECT)},transformReply:void 0}});var ust=_(Kae=>{"use strict";Object.defineProperty(Kae,"__esModule",{value:!0});var Gyr=O1();Kae.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",Gyr.DEFAULT_DIALECT)},transformReply:void 0}});var fst=_($u=>{"use strict";Object.defineProperty($u,"__esModule",{value:!0});$u.FT_HYBRID_COMBINE_METHOD=$u.FT_HYBRID_VECTOR_METHOD=void 0;var lst=we(),Vyr=zg(),Kyr=k1();$u.FT_HYBRID_VECTOR_METHOD={KNN:"KNN",RANGE:"RANGE"};$u.FT_HYBRID_COMBINE_METHOD={RRF:"RRF",LINEAR:"LINEAR"};function zyr(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 Yyr(t,e){if(t.push("VSIM",e.field,e.vector),e.method){if(e.method.type===$u.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===$u.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 Jyr(t,e){if(e){if(t.push("COMBINE"),e.method.type===$u.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===$u.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 Xyr(t,e){t.push("APPLY",e.expression),e.AS&&t.push("AS",e.AS)}function Zyr(t,e){if(zyr(t,e.SEARCH),Yyr(t,e.VSIM),e.COMBINE&&Jyr(t,e.COMBINE),e.LOAD&&(e.LOAD==="*"?t.push("LOAD","*"):(0,lst.parseOptionalVariadicArgument)(t,"LOAD",e.LOAD)),e.GROUPBY&&((0,lst.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,Kyr.parseGroupByReducer)(t,s)}if(e.APPLY){let n=Array.isArray(e.APPLY)?e.APPLY:[e.APPLY];for(let s of n)Xyr(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,Vyr.parseParamsArgument)(t,r?e.PARAMS:void 0),e.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString())}$u.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.HYBRID",e),Zyr(t,r)},transformReply:{2:t=>eAr(t),3:void 0},unstableResp3:!0};function eAr(t){let e=dst(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=dst(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 dst(t){let e={};if(!Array.isArray(t))return e;for(let r=0;r<t.length;r+=2){let n=t[r],s=t[r+1];typeof n=="string"&&(e[n]=s)}return e}});var pst=_(Yae=>{"use strict";Object.defineProperty(Yae,"__esModule",{value:!0});var zae=we();Yae.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.INFO",e)},transformReply:{2:tAr,3:void 0},unstableResp3:!0};function tAr(t,e,r){let n=(0,zae.createTransformTuplesReplyFunc)(e,r),s={};for(let i=0;i<t.length;i+=2){let a=t[i].toString();switch(a){case"index_name":case"index_options":case"num_docs":case"max_doc_id":case"num_terms":case"num_records":case"total_inverted_index_blocks":case"hash_indexing_failures":case"indexing":case"number_of_uses":case"cleaning":case"stopwords_list":s[a]=t[i+1];break;case"inverted_sz_mb":case"vector_index_sz_mb":case"offset_vectors_sz_mb":case"doc_table_size_mb":case"sortable_values_size_mb":case"key_table_size_mb":case"text_overhead_sz_mb":case"tag_overhead_sz_mb":case"total_index_memory_sz_mb":case"geoshapes_sz_mb":case"records_per_doc_avg":case"bytes_per_record_avg":case"offsets_per_term_avg":case"offset_bits_per_record_avg":case"total_indexing_time":case"percent_indexed":s[a]=zae.transformDoubleReply[2](t[i+1],void 0,r);break;case"index_definition":s[a]=n(t[i+1]);break;case"attributes":s[a]=t[i+1].map(o=>n(o));break;case"gc_stats":{let o={},c=t[i+1];for(let u=0;u<c.length;u+=2){let l=c[u].toString();switch(l){case"bytes_collected":case"total_ms_run":case"total_cycles":case"average_cycle_time_ms":case"last_run_time_ms":case"gc_numeric_trees_missed":case"gc_blocks_denied":o[l]=zae.transformDoubleReply[2](c[u+1],void 0,r);break}}s[a]=o;break}case"cursor_stats":{let o={},c=t[i+1];for(let u=0;u<c.length;u+=2){let l=c[u].toString();switch(l){case"global_idle":case"global_total":case"index_capacity":case"index_total":o[l]=c[u+1];break}}s[a]=o;break}}}return s}});var hst=_(Jf=>{"use strict";var rAr=Jf&&Jf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),nAr=Jf&&Jf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),sAr=Jf&&Jf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&rAr(e,t,r);return nAr(e,t),e};Object.defineProperty(Jf,"__esModule",{value:!0});var mst=sAr(zg());Jf.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,mst.parseSearchOptions)(t,n)},transformReply:{2:t=>({results:mst.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var yst=_(Xf=>{"use strict";var iAr=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]}),aAr=Xf&&Xf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),oAr=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)&&iAr(e,t,r);return aAr(e,t),e};Object.defineProperty(Xf,"__esModule",{value:!0});var gst=oAr(k1());Xf.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,gst.parseAggregateOptions)(t,n)},transformReply:{2:t=>({results:gst.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var Ast=_(DT=>{"use strict";var cAr=DT&&DT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(DT,"__esModule",{value:!0});var Jae=cAr(zg());DT.default={NOT_KEYED_COMMAND:Jae.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Jae.default.IS_READ_ONLY,parseCommand(...t){Jae.default.parseCommand(...t),t[0].push("NOCONTENT")},transformReply:{2:t=>({total:t[0],documents:t.slice(1)}),3:void 0},unstableResp3:!0}});var bst=_(Xae=>{"use strict";Object.defineProperty(Xae,"__esModule",{value:!0});var uAr=O1();Xae.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)xst(t,s);else xst(t,n.TERMS);n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",uAr.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 xst(t,{mode:e,dictionary:r}){t.push("TERMS",e,r)}});var _st=_(Zae=>{"use strict";Object.defineProperty(Zae,"__esModule",{value:!0});Zae.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 Est=_(eoe=>{"use strict";Object.defineProperty(eoe,"__esModule",{value:!0});eoe.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.SUGDEL"),t.pushKey(e),t.push(r)},transformReply:void 0}});var BT=_(toe=>{"use strict";Object.defineProperty(toe,"__esModule",{value:!0});toe.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 Sst=_(LT=>{"use strict";var lAr=LT&&LT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(LT,"__esModule",{value:!0});var dAr=we(),vst=lAr(BT());LT.default={IS_READ_ONLY:vst.default.IS_READ_ONLY,parseCommand(...t){vst.default.parseCommand(...t),t[0].push("WITHPAYLOADS")},transformReply(t){if((0,dAr.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r<t.length;)e[n++]={suggestion:t[r++],payload:t[r++]};return e}}});var Cst=_(MT=>{"use strict";var fAr=MT&&MT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(MT,"__esModule",{value:!0});var roe=we(),Ist=fAr(BT());MT.default={IS_READ_ONLY:Ist.default.IS_READ_ONLY,parseCommand(...t){Ist.default.parseCommand(...t),t[0].push("WITHSCORES","WITHPAYLOADS")},transformReply:{2:(t,e,r)=>{if((0,roe.isNullReply)(t))return null;let n=new Array(t.length/3),s=0,i=0;for(;s<t.length;)n[i++]={suggestion:t[s++],score:roe.transformDoubleReply[2](t[s++],e,r),payload:t[s++]};return n},3:t=>{if((0,roe.isNullReply)(t))return null;let e=new Array(t.length/3),r=0,n=0;for(;r<t.length;)e[n++]={suggestion:t[r++],score:t[r++],payload:t[r++]};return e}}}});var wst=_(WT=>{"use strict";var pAr=WT&&WT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(WT,"__esModule",{value:!0});var noe=we(),Tst=pAr(BT());WT.default={IS_READ_ONLY:Tst.default.IS_READ_ONLY,parseCommand(...t){Tst.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:{2:(t,e,r)=>{if((0,noe.isNullReply)(t))return null;let n=new Array(t.length/2),s=0,i=0;for(;s<t.length;)n[i++]={suggestion:t[s++],score:noe.transformDoubleReply[2](t[s++],e,r)};return n},3:t=>{if((0,noe.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r<t.length;)e[n++]={suggestion:t[r++],score:t[r++]};return e}}}});var Rst=_(soe=>{"use strict";Object.defineProperty(soe,"__esModule",{value:!0});soe.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SUGLEN",e)},transformReply:void 0}});var Nst=_(ioe=>{"use strict";Object.defineProperty(ioe,"__esModule",{value:!0});ioe.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<t.length;){let n=t[r++].toString(),s=t[r++];e[n]=s}return e},3:void 0}}});var Ost=_(aoe=>{"use strict";Object.defineProperty(aoe,"__esModule",{value:!0});aoe.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 kst=_(ooe=>{"use strict";Object.defineProperty(ooe,"__esModule",{value:!0});ooe.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 mit=_($T=>{"use strict";var wr=$T&&$T.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($T,"__esModule",{value:!0});var Pst=wr(qnt()),Dst=wr(Hnt()),Bst=wr(Lae()),Lst=wr(k1()),Mst=wr(Jnt()),Wst=wr(Xnt()),$st=wr(Znt()),Ust=wr(est()),Fst=wr(tst()),qst=wr(_6()),jst=wr(rst()),Qst=wr(nst()),Hst=wr(sst()),Gst=wr(ist()),Vst=wr(ast()),Kst=wr(ost()),zst=wr(cst()),Yst=wr(ust()),Jst=wr(fst()),Xst=wr(pst()),Zst=wr(hst()),eit=wr(yst()),tit=wr(Ast()),rit=wr(zg()),nit=wr(bst()),sit=wr(_st()),iit=wr(Est()),ait=wr(Sst()),oit=wr(Cst()),cit=wr(wst()),uit=wr(BT()),lit=wr(Rst()),dit=wr(Nst()),fit=wr(Ost()),pit=wr(kst());$T.default={_LIST:Pst.default,_list:Pst.default,ALTER:Dst.default,alter:Dst.default,AGGREGATE_WITHCURSOR:Bst.default,aggregateWithCursor:Bst.default,AGGREGATE:Lst.default,aggregate:Lst.default,ALIASADD:Mst.default,aliasAdd:Mst.default,ALIASDEL:Wst.default,aliasDel:Wst.default,ALIASUPDATE:$st.default,aliasUpdate:$st.default,CONFIG_GET:Ust.default,configGet:Ust.default,CONFIG_SET:Fst.default,configSet:Fst.default,CREATE:qst.default,create:qst.default,CURSOR_DEL:jst.default,cursorDel:jst.default,CURSOR_READ:Qst.default,cursorRead:Qst.default,DICTADD:Hst.default,dictAdd:Hst.default,DICTDEL:Gst.default,dictDel:Gst.default,DICTDUMP:Vst.default,dictDump:Vst.default,DROPINDEX:Kst.default,dropIndex:Kst.default,EXPLAIN:zst.default,explain:zst.default,EXPLAINCLI:Yst.default,explainCli:Yst.default,HYBRID:Jst.default,hybrid:Jst.default,INFO:Xst.default,info:Xst.default,PROFILESEARCH:Zst.default,profileSearch:Zst.default,PROFILEAGGREGATE:eit.default,profileAggregate:eit.default,SEARCH_NOCONTENT:tit.default,searchNoContent:tit.default,SEARCH:rit.default,search:rit.default,SPELLCHECK:nit.default,spellCheck:nit.default,SUGADD:sit.default,sugAdd:sit.default,SUGDEL:iit.default,sugDel:iit.default,SUGGET_WITHPAYLOADS:ait.default,sugGetWithPayloads:ait.default,SUGGET_WITHSCORES_WITHPAYLOADS:oit.default,sugGetWithScoresWithPayloads:oit.default,SUGGET_WITHSCORES:cit.default,sugGetWithScores:cit.default,SUGGET:uit.default,sugGet:uit.default,SUGLEN:lit.default,sugLen:lit.default,SYNDUMP:dit.default,synDump:dit.default,SYNUPDATE:fit.default,synUpdate:fit.default,TAGVALS:pit.default,tagVals:pit.default}});var coe=_(li=>{"use strict";var mAr=li&&li.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(li,"__esModule",{value:!0});li.FT_AGGREGATE_STEPS=li.FT_AGGREGATE_GROUP_BY_REDUCERS=li.SCHEMA_VECTOR_FIELD_ALGORITHM=li.SCHEMA_TEXT_FIELD_PHONETIC=li.SCHEMA_FIELD_TYPE=li.REDISEARCH_LANGUAGE=li.default=void 0;var hAr=mit();Object.defineProperty(li,"default",{enumerable:!0,get:function(){return mAr(hAr).default}});var v6=_6();Object.defineProperty(li,"REDISEARCH_LANGUAGE",{enumerable:!0,get:function(){return v6.REDISEARCH_LANGUAGE}});Object.defineProperty(li,"SCHEMA_FIELD_TYPE",{enumerable:!0,get:function(){return v6.SCHEMA_FIELD_TYPE}});Object.defineProperty(li,"SCHEMA_TEXT_FIELD_PHONETIC",{enumerable:!0,get:function(){return v6.SCHEMA_TEXT_FIELD_PHONETIC}});Object.defineProperty(li,"SCHEMA_VECTOR_FIELD_ALGORITHM",{enumerable:!0,get:function(){return v6.SCHEMA_VECTOR_FIELD_ALGORITHM}});var hit=k1();Object.defineProperty(li,"FT_AGGREGATE_GROUP_BY_REDUCERS",{enumerable:!0,get:function(){return hit.FT_AGGREGATE_GROUP_BY_REDUCERS}});Object.defineProperty(li,"FT_AGGREGATE_STEPS",{enumerable:!0,get:function(){return hit.FT_AGGREGATE_STEPS}})});var di=_(Er=>{"use strict";Object.defineProperty(Er,"__esModule",{value:!0});Er.transformRESP2LabelsWithSources=Er.transformRESP2Labels=Er.parseSelectedLabelsArguments=Er.resp3MapToValue=Er.resp2MapToValue=Er.transformSamplesReply=Er.transformSampleReply=Er.parseLabelsArgument=Er.transformTimestampArgument=Er.parseDuplicatePolicy=Er.TIME_SERIES_DUPLICATE_POLICIES=Er.parseChunkSizeArgument=Er.parseEncodingArgument=Er.TIME_SERIES_ENCODING=Er.parseRetentionArgument=Er.parseIgnoreArgument=void 0;var uoe=bT();function gAr(t,e){e!==void 0&&t.push("IGNORE",e.maxTimeDiff.toString(),e.maxValDiff.toString())}Er.parseIgnoreArgument=gAr;function yAr(t,e){e!==void 0&&t.push("RETENTION",e.toString())}Er.parseRetentionArgument=yAr;Er.TIME_SERIES_ENCODING={COMPRESSED:"COMPRESSED",UNCOMPRESSED:"UNCOMPRESSED"};function AAr(t,e){e!==void 0&&t.push("ENCODING",e)}Er.parseEncodingArgument=AAr;function xAr(t,e){e!==void 0&&t.push("CHUNK_SIZE",e.toString())}Er.parseChunkSizeArgument=xAr;Er.TIME_SERIES_DUPLICATE_POLICIES={BLOCK:"BLOCK",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM"};function bAr(t,e){e!==void 0&&t.push("DUPLICATE_POLICY",e)}Er.parseDuplicatePolicy=bAr;function _Ar(t){return typeof t=="string"?t:(typeof t=="number"?t:t.getTime()).toString()}Er.transformTimestampArgument=_Ar;function EAr(t,e){if(e){t.push("LABELS");for(let[r,n]of Object.entries(e))t.push(r,n)}}Er.parseLabelsArgument=EAr;Er.transformSampleReply={2(t){let[e,r]=t;return{timestamp:e,value:Number(r)}},3(t){let[e,r]=t;return{timestamp:e,value:r}}};Er.transformSamplesReply={2(t){return t.map(e=>Er.transformSampleReply[2](e))},3(t){return t.map(e=>Er.transformSampleReply[3](e))}};function vAr(t,e,r){let n=t;switch(r?.[uoe.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}}}Er.resp2MapToValue=vAr;function SAr(t,e){let r=t;if(r instanceof Array)for(let n=1;n<r.length;n+=2)r[n]=e(r[n]);else if(r instanceof Map)for(let[n,s]of r.entries())r.set(n,e(s));else for(let[n,s]of Object.entries(r))r[n]=e(s);return r}Er.resp3MapToValue=SAr;function IAr(t,e){t.push("SELECTED_LABELS"),t.pushVariadic(e)}Er.parseSelectedLabelsArguments=IAr;function CAr(t,e){let r=t;switch(e?.[uoe.RESP_TYPES.MAP]){case Map:let n=new Map;for(let i of r){let[a,o]=i,c=a;n.set(c.toString(),o)}return n;case Array:return r.flat();case Object:default:let s=Object.create(null);for(let i of r){let[a,o]=i,c=a;s[c.toString()]=o}return s}}Er.transformRESP2Labels=CAr;function TAr(t,e){let r=t,n=r.length-2,s;switch(e?.[uoe.RESP_TYPES.MAP]){case Map:let c=new Map;for(let l=0;l<n;l++){let[d,f]=r[l],m=d;c.set(m.toString(),f)}s=c;break;case Array:s=r.slice(0,n).flat();break;case Object:default:let u=Object.create(null);for(let l=0;l<n;l++){let[d,f]=r[l],m=d;u[m.toString()]=f}s=u;break}let a=r[r.length-1],o=wAr(a[1]);return{labels:s,sources:o}}Er.transformRESP2LabelsWithSources=TAr;function wAr(t){let e=t;if(typeof e=="string")return e.split(",");let r=e.indexOf(",");if(r===-1)return[e];let n=[e.subarray(0,r)],s=r+1;for(;;){let i=e.indexOf(",",s);if(i===-1){n.push(e.subarray(s));break}let a=e.subarray(s,i);n.push(a),s=i+1}return n}});var git=_(loe=>{"use strict";Object.defineProperty(loe,"__esModule",{value:!0});var P1=di();loe.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("TS.ADD"),t.pushKey(e),t.push((0,P1.transformTimestampArgument)(r),n.toString()),(0,P1.parseRetentionArgument)(t,s?.RETENTION),(0,P1.parseEncodingArgument)(t,s?.ENCODING),(0,P1.parseChunkSizeArgument)(t,s?.CHUNK_SIZE),s?.ON_DUPLICATE&&t.push("ON_DUPLICATE",s.ON_DUPLICATE),(0,P1.parseLabelsArgument)(t,s?.LABELS),(0,P1.parseIgnoreArgument)(t,s?.IGNORE)},transformReply:void 0}});var yit=_(doe=>{"use strict";Object.defineProperty(doe,"__esModule",{value:!0});var UT=di();doe.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.ALTER"),t.pushKey(e),(0,UT.parseRetentionArgument)(t,r?.RETENTION),(0,UT.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,UT.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,UT.parseLabelsArgument)(t,r?.LABELS),(0,UT.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var Ait=_(foe=>{"use strict";Object.defineProperty(foe,"__esModule",{value:!0});var D1=di();foe.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.CREATE"),t.pushKey(e),(0,D1.parseRetentionArgument)(t,r?.RETENTION),(0,D1.parseEncodingArgument)(t,r?.ENCODING),(0,D1.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,D1.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,D1.parseLabelsArgument)(t,r?.LABELS),(0,D1.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var poe=_(FT=>{"use strict";Object.defineProperty(FT,"__esModule",{value:!0});FT.TIME_SERIES_AGGREGATION_TYPE=void 0;FT.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"};FT.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 moe=_(jT=>{"use strict";Object.defineProperty(jT,"__esModule",{value:!0});jT.parseIncrByArguments=void 0;var qT=di();function xit(t,e,r,n){t.pushKey(e),t.push(r.toString()),n?.TIMESTAMP!==void 0&&n?.TIMESTAMP!==null&&t.push("TIMESTAMP",(0,qT.transformTimestampArgument)(n.TIMESTAMP)),(0,qT.parseRetentionArgument)(t,n?.RETENTION),n?.UNCOMPRESSED&&t.push("UNCOMPRESSED"),(0,qT.parseChunkSizeArgument)(t,n?.CHUNK_SIZE),(0,qT.parseLabelsArgument)(t,n?.LABELS),(0,qT.parseIgnoreArgument)(t,n?.IGNORE)}jT.parseIncrByArguments=xit;jT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("TS.INCRBY"),xit(...t)},transformReply:void 0}});var bit=_(Zf=>{"use strict";var RAr=Zf&&Zf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),NAr=Zf&&Zf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),OAr=Zf&&Zf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&RAr(e,t,r);return NAr(e,t),e};Object.defineProperty(Zf,"__esModule",{value:!0});var hoe=OAr(moe());Zf.default={IS_READ_ONLY:hoe.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.DECRBY"),(0,hoe.parseIncrByArguments)(...t)},transformReply:hoe.default.transformReply}});var Eit=_(goe=>{"use strict";Object.defineProperty(goe,"__esModule",{value:!0});var _it=di();goe.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TS.DEL"),t.pushKey(e),t.push((0,_it.transformTimestampArgument)(r),(0,_it.transformTimestampArgument)(n))},transformReply:void 0}});var vit=_(yoe=>{"use strict";Object.defineProperty(yoe,"__esModule",{value:!0});yoe.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.DELETERULE"),t.pushKeys([e,r])},transformReply:void 0}});var Sit=_(Aoe=>{"use strict";Object.defineProperty(Aoe,"__esModule",{value:!0});Aoe.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 boe=_(xoe=>{"use strict";Object.defineProperty(xoe,"__esModule",{value:!0});var kAr=we();xoe.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<t.length;s+=2){let i=t[s].toString();switch(i){case"totalSamples":case"memoryUsage":case"firstTimestamp":case"lastTimestamp":case"retentionTime":case"chunkCount":case"chunkSize":case"chunkType":case"duplicatePolicy":case"sourceKey":case"ignoreMaxTimeDiff":n[i]=t[s+1];break;case"labels":n[i]=t[s+1].map(([a,o])=>({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]=kAr.transformDoubleReply[2](t[27],void 0,r);break}}return n},3:void 0},unstableResp3:!0}});var Iit=_(QT=>{"use strict";var PAr=QT&&QT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(QT,"__esModule",{value:!0});var _oe=PAr(boe());QT.default={IS_READ_ONLY:_oe.default.IS_READ_ONLY,parseCommand(t,e){_oe.default.parseCommand(t,e),t.push("DEBUG")},transformReply:{2:(t,e,r)=>{let n=_oe.default.transformReply[2](t,e,r);for(let s=0;s<t.length;s+=2){let i=t[s].toString();switch(i){case"keySelfName":{n[i]=t[s+1];break}case"Chunks":{n.chunks=t[s+1].map(a=>({startTimestamp:a[1],endTimestamp:a[3],samples:a[5],size:a[7],bytesPerSample:a[9]}));break}}}return n},3:void 0},unstableResp3:!0}});var Cit=_(Eoe=>{"use strict";Object.defineProperty(Eoe,"__esModule",{value:!0});var DAr=di();Eoe.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TS.MADD");for(let{key:r,timestamp:n,value:s}of e)t.pushKey(r),t.push((0,DAr.transformTimestampArgument)(n),s.toString())},transformReply:void 0}});var id=_(Yg=>{"use strict";Object.defineProperty(Yg,"__esModule",{value:!0});Yg.parseFilterArgument=Yg.parseLatestArgument=void 0;var S6=di();function Tit(t,e){e&&t.push("LATEST")}Yg.parseLatestArgument=Tit;function wit(t,e){t.push("FILTER"),t.pushVariadic(e)}Yg.parseFilterArgument=wit;Yg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),Tit(t,r?.LATEST),wit(t,e)},transformReply:{2(t,e,r){return(0,S6.resp2MapToValue)(t,([,,n])=>({sample:S6.transformSampleReply[2](n)}),r)},3(t){return(0,S6.resp3MapToValue)(t,([,e])=>({sample:S6.transformSampleReply[3](e)}))}}}});var voe=_(GT=>{"use strict";Object.defineProperty(GT,"__esModule",{value:!0});GT.createTransformMGetLabelsReply=void 0;var Rit=id(),HT=di();function Nit(){return{2(t,e,r){return(0,HT.resp2MapToValue)(t,([,n,s])=>({labels:(0,HT.transformRESP2Labels)(n),sample:HT.transformSampleReply[2](s)}),r)},3(t){return(0,HT.resp3MapToValue)(t,([e,r])=>({labels:e,sample:HT.transformSampleReply[3](r)}))}}}GT.createTransformMGetLabelsReply=Nit;GT.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),(0,Rit.parseLatestArgument)(t,r?.LATEST),t.push("WITHLABELS"),(0,Rit.parseFilterArgument)(t,e)},transformReply:Nit()}});var kit=_(Soe=>{"use strict";Object.defineProperty(Soe,"__esModule",{value:!0});var Oit=id(),BAr=di(),LAr=voe();Soe.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TS.MGET"),(0,Oit.parseLatestArgument)(t,n?.LATEST),(0,BAr.parseSelectedLabelsArguments)(t,r),(0,Oit.parseFilterArgument)(t,e)},transformReply:(0,LAr.createTransformMGetLabelsReply)()}});var ad=_(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});ep.transformRangeArguments=ep.parseRangeArguments=ep.TIME_SERIES_BUCKET_TIMESTAMP=void 0;var Jg=di();ep.TIME_SERIES_BUCKET_TIMESTAMP={LOW:"-",MIDDLE:"~",END:"+"};function Pit(t,e,r,n){if(t.push((0,Jg.transformTimestampArgument)(e),(0,Jg.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,Jg.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,Jg.transformTimestampArgument)(n.ALIGN)),t.push("AGGREGATION",n.AGGREGATION.type,(0,Jg.transformTimestampArgument)(n.AGGREGATION.timeBucket)),n.AGGREGATION.BUCKETTIMESTAMP&&t.push("BUCKETTIMESTAMP",n.AGGREGATION.BUCKETTIMESTAMP),n.AGGREGATION.EMPTY&&t.push("EMPTY"))}ep.parseRangeArguments=Pit;function Dit(t,e,r,n,s){t.pushKey(e),Pit(t,r,n,s)}ep.transformRangeArguments=Dit;ep.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TS.RANGE"),Dit(...t)},transformReply:{2(t){return Jg.transformSamplesReply[2](t)},3(t){return Jg.transformSamplesReply[3](t)}}}});var B1=_(Uu=>{"use strict";Object.defineProperty(Uu,"__esModule",{value:!0});Uu.extractResp3MRangeSources=Uu.createTransformMRangeGroupByArguments=Uu.parseGroupByArguments=Uu.TIME_SERIES_REDUCERS=void 0;var I6=di(),MAr=ad(),WAr=id();Uu.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 Bit(t,e){t.push("GROUPBY",e.label,"REDUCE",e.REDUCE)}Uu.parseGroupByArguments=Bit;function Lit(t){return(e,r,n,s,i,a)=>{e.push(t),(0,MAr.parseRangeArguments)(e,r,n,a),(0,WAr.parseFilterArgument)(e,s),Bit(e,i)}}Uu.createTransformMRangeGroupByArguments=Lit;function Mit(t){let e=t;return e instanceof Map?e.get("sources"):e instanceof Array?e[1]:e.sources}Uu.extractResp3MRangeSources=Mit;Uu.default={IS_READ_ONLY:!0,parseCommand:Lit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,I6.resp2MapToValue)(t,([n,s,i])=>({samples:I6.transformSamplesReply[2](i)}),r)},3(t){return(0,I6.resp3MapToValue)(t,([e,r,n,s])=>({sources:Mit(n),samples:I6.transformSamplesReply[3](s)}))}}}});var C6=_(VT=>{"use strict";Object.defineProperty(VT,"__esModule",{value:!0});VT.createTransformMRangeSelectedLabelsArguments=void 0;var L1=di(),$Ar=ad(),UAr=id();function Wit(t){return(e,r,n,s,i,a)=>{e.push(t),(0,$Ar.parseRangeArguments)(e,r,n,a),(0,L1.parseSelectedLabelsArguments)(e,s),(0,UAr.parseFilterArgument)(e,i)}}VT.createTransformMRangeSelectedLabelsArguments=Wit;VT.default={IS_READ_ONLY:!0,parseCommand:Wit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,L1.resp2MapToValue)(t,([n,s,i])=>({labels:(0,L1.transformRESP2Labels)(s,r),samples:L1.transformSamplesReply[2](i)}),r)},3(t){return(0,L1.resp3MapToValue)(t,([e,r,n])=>({labels:r,samples:L1.transformSamplesReply[3](n)}))}}}});var Coe=_(Xg=>{"use strict";var FAr=Xg&&Xg.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Xg,"__esModule",{value:!0});Xg.createMRangeSelectedLabelsGroupByTransformArguments=void 0;var Ioe=di(),qAr=ad(),$it=B1(),jAr=id(),QAr=FAr(C6());function Uit(t){return(e,r,n,s,i,a,o)=>{e.push(t),(0,qAr.parseRangeArguments)(e,r,n,o),(0,Ioe.parseSelectedLabelsArguments)(e,s),(0,jAr.parseFilterArgument)(e,i),(0,$it.parseGroupByArguments)(e,a)}}Xg.createMRangeSelectedLabelsGroupByTransformArguments=Uit;Xg.default={IS_READ_ONLY:!0,parseCommand:Uit("TS.MRANGE"),transformReply:{2:QAr.default.transformReply[2],3(t){return(0,Ioe.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,$it.extractResp3MRangeSources)(n),samples:Ioe.transformSamplesReply[3](s)}))}}}});var Toe=_(zT=>{"use strict";Object.defineProperty(zT,"__esModule",{value:!0});zT.createMRangeWithLabelsGroupByTransformArguments=void 0;var KT=di(),HAr=ad(),Fit=B1(),GAr=id();function qit(t){return(e,r,n,s,i,a)=>{e.push(t),(0,HAr.parseRangeArguments)(e,r,n,a),e.push("WITHLABELS"),(0,GAr.parseFilterArgument)(e,s),(0,Fit.parseGroupByArguments)(e,i)}}zT.createMRangeWithLabelsGroupByTransformArguments=qit;zT.default={IS_READ_ONLY:!0,parseCommand:qit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,KT.resp2MapToValue)(t,([n,s,i])=>{let a=(0,KT.transformRESP2LabelsWithSources)(s);return{labels:a.labels,sources:a.sources,samples:KT.transformSamplesReply[2](i)}},r)},3(t){return(0,KT.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,Fit.extractResp3MRangeSources)(n),samples:KT.transformSamplesReply[3](s)}))}}}});var woe=_(YT=>{"use strict";Object.defineProperty(YT,"__esModule",{value:!0});YT.createTransformMRangeWithLabelsArguments=void 0;var T6=di(),VAr=ad(),KAr=id();function jit(t){return(e,r,n,s,i)=>{e.push(t),(0,VAr.parseRangeArguments)(e,r,n,i),e.push("WITHLABELS"),(0,KAr.parseFilterArgument)(e,s)}}YT.createTransformMRangeWithLabelsArguments=jit;YT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:jit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,T6.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:T6.transformSamplesReply[2](i)}},r)},3(t){return(0,T6.resp3MapToValue)(t,([e,r,n])=>({labels:e,samples:T6.transformSamplesReply[3](n)}))}}}});var Roe=_(JT=>{"use strict";Object.defineProperty(JT,"__esModule",{value:!0});JT.createTransformMRangeArguments=void 0;var w6=di(),zAr=ad(),YAr=id();function Qit(t){return(e,r,n,s,i)=>{e.push(t),(0,zAr.parseRangeArguments)(e,r,n,i),(0,YAr.parseFilterArgument)(e,s)}}JT.createTransformMRangeArguments=Qit;JT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:Qit("TS.MRANGE"),transformReply:{2(t,e,r){return(0,w6.resp2MapToValue)(t,([n,s,i])=>w6.transformSamplesReply[2](i),r)},3(t){return(0,w6.resp3MapToValue)(t,([e,r,n])=>w6.transformSamplesReply[3](n))}}}});var Hit=_(tp=>{"use strict";var JAr=tp&&tp.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),XAr=tp&&tp.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),ZAr=tp&&tp.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&JAr(e,t,r);return XAr(e,t),e};Object.defineProperty(tp,"__esModule",{value:!0});var Noe=ZAr(B1());tp.default={IS_READ_ONLY:Noe.default.IS_READ_ONLY,parseCommand:(0,Noe.createTransformMRangeGroupByArguments)("TS.MREVRANGE"),transformReply:Noe.default.transformReply}});var Git=_(rp=>{"use strict";var exr=rp&&rp.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),txr=rp&&rp.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),rxr=rp&&rp.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&exr(e,t,r);return txr(e,t),e};Object.defineProperty(rp,"__esModule",{value:!0});var Ooe=rxr(Coe());rp.default={IS_READ_ONLY:Ooe.default.IS_READ_ONLY,parseCommand:(0,Ooe.createMRangeSelectedLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:Ooe.default.transformReply}});var Vit=_(np=>{"use strict";var nxr=np&&np.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),sxr=np&&np.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),ixr=np&&np.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&nxr(e,t,r);return sxr(e,t),e};Object.defineProperty(np,"__esModule",{value:!0});var koe=ixr(C6());np.default={IS_READ_ONLY:koe.default.IS_READ_ONLY,parseCommand:(0,koe.createTransformMRangeSelectedLabelsArguments)("TS.MREVRANGE"),transformReply:koe.default.transformReply}});var Kit=_(sp=>{"use strict";var axr=sp&&sp.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),oxr=sp&&sp.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),cxr=sp&&sp.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&axr(e,t,r);return oxr(e,t),e};Object.defineProperty(sp,"__esModule",{value:!0});var Poe=cxr(Toe());sp.default={IS_READ_ONLY:Poe.default.IS_READ_ONLY,parseCommand:(0,Poe.createMRangeWithLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:Poe.default.transformReply}});var zit=_(ip=>{"use strict";var uxr=ip&&ip.__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]}),lxr=ip&&ip.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),dxr=ip&&ip.__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)&&uxr(e,t,r);return lxr(e,t),e};Object.defineProperty(ip,"__esModule",{value:!0});var R6=dxr(woe());ip.default={NOT_KEYED_COMMAND:R6.default.NOT_KEYED_COMMAND,IS_READ_ONLY:R6.default.IS_READ_ONLY,parseCommand:(0,R6.createTransformMRangeWithLabelsArguments)("TS.MREVRANGE"),transformReply:R6.default.transformReply}});var Yit=_(ap=>{"use strict";var fxr=ap&&ap.__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]}),pxr=ap&&ap.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),mxr=ap&&ap.__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)&&fxr(e,t,r);return pxr(e,t),e};Object.defineProperty(ap,"__esModule",{value:!0});var N6=mxr(Roe());ap.default={NOT_KEYED_COMMAND:N6.default.NOT_KEYED_COMMAND,IS_READ_ONLY:N6.default.IS_READ_ONLY,parseCommand:(0,N6.createTransformMRangeArguments)("TS.MREVRANGE"),transformReply:N6.default.transformReply}});var Jit=_(Doe=>{"use strict";Object.defineProperty(Doe,"__esModule",{value:!0});Doe.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 Xit=_(op=>{"use strict";var hxr=op&&op.__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]}),gxr=op&&op.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),yxr=op&&op.__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)&&hxr(e,t,r);return gxr(e,t),e};Object.defineProperty(op,"__esModule",{value:!0});var Boe=yxr(ad());op.default={IS_READ_ONLY:Boe.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.REVRANGE"),(0,Boe.transformRangeArguments)(...t)},transformReply:Boe.default.transformReply}});var Rat=_(od=>{"use strict";var Axr=od&&od.__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]}),xxr=od&&od.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Axr(e,t,r)},Kr=od&&od.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(od,"__esModule",{value:!0});var Zit=Kr(git()),eat=Kr(yit()),tat=Kr(Ait()),rat=Kr(poe()),nat=Kr(bit()),sat=Kr(Eit()),iat=Kr(vit()),aat=Kr(Sit()),oat=Kr(moe()),cat=Kr(Iit()),uat=Kr(boe()),lat=Kr(Cit()),dat=Kr(kit()),fat=Kr(voe()),pat=Kr(id()),mat=Kr(B1()),hat=Kr(Coe()),gat=Kr(C6()),yat=Kr(Toe()),Aat=Kr(woe()),xat=Kr(Roe()),bat=Kr(Hit()),_at=Kr(Git()),Eat=Kr(Vit()),vat=Kr(Kit()),Sat=Kr(zit()),Iat=Kr(Yit()),Cat=Kr(Jit()),Tat=Kr(ad()),wat=Kr(Xit());xxr(di(),od);od.default={ADD:Zit.default,add:Zit.default,ALTER:eat.default,alter:eat.default,CREATE:tat.default,create:tat.default,CREATERULE:rat.default,createRule:rat.default,DECRBY:nat.default,decrBy:nat.default,DEL:sat.default,del:sat.default,DELETERULE:iat.default,deleteRule:iat.default,GET:aat.default,get:aat.default,INCRBY:oat.default,incrBy:oat.default,INFO_DEBUG:cat.default,infoDebug:cat.default,INFO:uat.default,info:uat.default,MADD:lat.default,mAdd:lat.default,MGET_SELECTED_LABELS:dat.default,mGetSelectedLabels:dat.default,MGET_WITHLABELS:fat.default,mGetWithLabels:fat.default,MGET:pat.default,mGet:pat.default,MRANGE_GROUPBY:mat.default,mRangeGroupBy:mat.default,MRANGE_SELECTED_LABELS_GROUPBY:hat.default,mRangeSelectedLabelsGroupBy:hat.default,MRANGE_SELECTED_LABELS:gat.default,mRangeSelectedLabels:gat.default,MRANGE_WITHLABELS_GROUPBY:yat.default,mRangeWithLabelsGroupBy:yat.default,MRANGE_WITHLABELS:Aat.default,mRangeWithLabels:Aat.default,MRANGE:xat.default,mRange:xat.default,MREVRANGE_GROUPBY:bat.default,mRevRangeGroupBy:bat.default,MREVRANGE_SELECTED_LABELS_GROUPBY:_at.default,mRevRangeSelectedLabelsGroupBy:_at.default,MREVRANGE_SELECTED_LABELS:Eat.default,mRevRangeSelectedLabels:Eat.default,MREVRANGE_WITHLABELS_GROUPBY:vat.default,mRevRangeWithLabelsGroupBy:vat.default,MREVRANGE_WITHLABELS:Sat.default,mRevRangeWithLabels:Sat.default,MREVRANGE:Iat.default,mRevRange:Iat.default,QUERYINDEX:Cat.default,queryIndex:Cat.default,RANGE:Tat.default,range:Tat.default,REVRANGE:wat.default,revRange:wat.default}});var Moe=_(ra=>{"use strict";var bxr=ra&&ra.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ra,"__esModule",{value:!0});ra.TIME_SERIES_REDUCERS=ra.TIME_SERIES_BUCKET_TIMESTAMP=ra.TIME_SERIES_AGGREGATION_TYPE=ra.TIME_SERIES_DUPLICATE_POLICIES=ra.TIME_SERIES_ENCODING=ra.default=void 0;var Loe=Rat();Object.defineProperty(ra,"default",{enumerable:!0,get:function(){return bxr(Loe).default}});Object.defineProperty(ra,"TIME_SERIES_ENCODING",{enumerable:!0,get:function(){return Loe.TIME_SERIES_ENCODING}});Object.defineProperty(ra,"TIME_SERIES_DUPLICATE_POLICIES",{enumerable:!0,get:function(){return Loe.TIME_SERIES_DUPLICATE_POLICIES}});var _xr=poe();Object.defineProperty(ra,"TIME_SERIES_AGGREGATION_TYPE",{enumerable:!0,get:function(){return _xr.TIME_SERIES_AGGREGATION_TYPE}});var Exr=ad();Object.defineProperty(ra,"TIME_SERIES_BUCKET_TIMESTAMP",{enumerable:!0,get:function(){return Exr.TIME_SERIES_BUCKET_TIMESTAMP}});var vxr=B1();Object.defineProperty(ra,"TIME_SERIES_REDUCERS",{enumerable:!0,get:function(){return vxr.TIME_SERIES_REDUCERS}})});var Nat=_(bs=>{"use strict";var Sxr=bs&&bs.__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]}),XT=bs&&bs.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Sxr(e,t,r)},O6=bs&&bs.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(bs,"__esModule",{value:!0});bs.createSentinel=bs.createCluster=bs.createClientPool=bs.createClient=void 0;var k6=bT(),Ixr=O6(sae()),Cxr=O6(Nae()),Txr=O6(coe()),wxr=O6(Moe());XT(bT(),bs);XT(sae(),bs);XT(Nae(),bs);XT(coe(),bs);XT(Moe(),bs);var P6={...Ixr.default,json:Cxr.default,ft:Txr.default,ts:wxr.default};function Rxr(t){return(0,k6.createClient)({...t,modules:{...P6,...t?.modules}})}bs.createClient=Rxr;function Nxr(t,e){return(0,k6.createClientPool)({...t,modules:{...P6,...t?.modules}},e)}bs.createClientPool=Nxr;function Oxr(t){return(0,k6.createCluster)({...t,modules:{...P6,...t?.modules}})}bs.createCluster=Oxr;function kxr(t){return(0,k6.createSentinel)({...t,modules:{...P6,...t?.modules}})}bs.createSentinel=kxr});var B6={};us(B6,{closeLocalRedisConnection:()=>Lxr,getLocalRedisCaches:()=>Dxr,getLocalRedisKey:()=>Oat,judgeLocalRedisValid:()=>Bxr,setLocalRedisKey:()=>D6,setLocalRedisKeyWithExpiry:()=>Pxr,updateLocalRedisCaches:()=>ZT});async function M1(){if(is)return is;let t=O.localRedisUrl;try{E("info","[Utils] [Local-Redis] \u6B63\u5728\u8FDE\u63A5\u672C\u5730 Redis");let{createClient:e}=await Promise.resolve().then(()=>Ce(Nat(),1));return is=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}}),is.on("error",r=>{E("error","[Utils] [Local-Redis] \u8FDE\u63A5\u9519\u8BEF"),O.localRedisValid=!1}),is.on("connect",()=>{E("info","[Utils] [Local-Redis] \u8FDE\u63A5\u6210\u529F")}),await is.connect(),O.localRedisValid=!0,E("info","[Utils] [Local-Redis] Redis \u5BA2\u6237\u7AEF\u521D\u59CB\u5316\u5B8C\u6210"),is}catch(e){return E("error","[Utils] [Local-Redis] \u521D\u59CB\u5316\u5931\u8D25:",e.message),O.localRedisValid=!1,null}}async function W1(){if(!is)return!1;try{return await is.ping()==="PONG"}catch(t){return E("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",t.message),O.localRedisValid=!1,!1}}async function Oat(t){try{if(await W1()||await M1(),!is)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");return await is.get(t)}catch(e){return E("error","[Utils] [Local-Redis] GET \u8BF7\u6C42\u5931\u8D25:",e.message),null}}async function D6(t,e){let r=Xb(t,e),n=an(r);if(O.lastHashes[t]===n)return E("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};try{if(await W1()||await M1(),!is)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let s=await is.set(t,r);return O.lastHashes[t]=n,E("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),{result:s}}catch(s){return E("error","[Utils] [Local-Redis] SET \u8BF7\u6C42\u5931\u8D25:",s.message),{result:"ERROR"}}}async function Pxr(t,e,r){let n=Xb(t,e),s=an(n);if(O.lastHashes[t]===s)return E("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};try{if(await W1()||await M1(),!is)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let i=await is.setEx(t,r,n);return O.lastHashes[t]=s,E("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),{result:i}}catch(i){return E("error","[Utils] [Local-Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",i.message),{result:"ERROR"}}}async function Dxr(){if(!O.localCacheInitialized)try{if(E("info","[Utils] [Local-Redis] getLocalRedisCaches start."),await W1()||await M1(),!is)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=>Oat(n)));O.animes=e[0]?JSON.parse(e[0]):O.animes,O.episodeIds=e[1]?JSON.parse(e[1]):O.episodeIds,O.episodeNum=e[2]?JSON.parse(e[2]):O.episodeNum,O.reqRecords=e[3]?JSON.parse(e[3]):O.reqRecords;let r=e[4]?JSON.parse(e[4]):null;r&&typeof r=="object"&&(O.lastSelectMap=new Map(Object.entries(r)),E("info",`[Utils] [Local-Redis] Restored lastSelectMap from Local Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=e[5]?parseInt(e[5],10):O.todayReqNum,O.lastHashes.animes=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,E("info","[Utils] [Local-Redis] getLocalRedisCaches completed successfully.")}catch(t){E("error",`[Utils] [Local-Redis] getLocalRedisCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function ZT(){try{if(E("info","[Utils] [Local-Redis] updateLocalRedisCaches start."),await W1()||await M1(),!is)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){E("info",`[Utils] [Local-Redis] Updating ${t.length} changed keys: ${t.map(a=>a.key).join(", ")}`);let r=t.map(async({key:a,value:o})=>D6(a,o)),n=await Promise.all(r),s=0,i=0;n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,E("warn",`[Utils] [Local-Redis] Failed to update Local Redis key: ${t[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(t.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),E("info",`[Utils] [Local-Redis] Local Redis update completed successfully: ${s} keys updated`)):E("warn",`[Utils] [Local-Redis] Local Redis update partially failed: ${s} succeeded, ${i} failed`)}else E("info","[Utils] [Local-Redis] No changes detected, skipping Local Redis update.")}catch(t){E("error",`[Utils] [Local-Redis] updateLocalRedisCaches failed: ${t.message}`,t.stack),E("error",`[Utils] [Local-Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function Bxr(t){if(!O.localRedisValid&&O.localRedisUrl&&t!=="/favicon.ico"&&t!=="/robots.txt")try{await W1()||await M1(),is&&await is.ping()==="PONG"&&(O.localRedisValid=!0)}catch(e){E("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",e.message),O.localRedisValid=!1}}async function Lxr(){if(is)try{await is.quit(),is=null,O.localRedisValid=!1,E("info","[Utils] [Local-Redis] \u8FDE\u63A5\u5DF2\u5173\u95ED")}catch(t){E("error","[Utils] [Local-Redis] \u5173\u95ED\u8FDE\u63A5\u5931\u8D25:",t.message)}}var is,ew=yr(()=>{kt();Et();Ns();is=null});var Go,V1=yr(()=>{kt();Et();Go=class{constructor(){}updateLocalEnv(e,r){return typeof O.env<"u"?O.env[e]=r:typeof process<"u"&&(process.env[e]=r),O.reInit(),E("info",`[system] [Server] \u2713 Environment variable updated successfully: ${e}`),!0}delLocalEnv(e){return typeof O.env<"u"&&O.env[e]?delete O.env[e]:typeof process<"u"&&process.env?.[e]&&delete process.env[e],O.reInit(),E("info",`[system] [Server] \u2713 Environment variable deleted successfully: ${e}`),!0}getAllEnv(){let e=O.originalEnvVars,r=O.envVarConfig,n={};for(let[s,i]of Object.entries(e)){let a=r[s]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"};n[s]={value:i,category:a.category,type:a.type,description:a.description,options:a.options}}return n}getEnv(e){return this.getAllEnv()[e]}async setEnv(e,r){throw new Error("Method 'setEnv' must be implemented")}async addEnv(e,r){throw new Error("Method 'addEnv' must be implemented")}async delEnv(e){throw new Error("Method 'delEnv' must be implemented")}async checkParams(e,r,n){throw new Error("Method 'checkParams' must be implemented")}async deploy(e,r,n){throw new Error("Method 'deploy' must be implemented")}}});var fct={};us(fct,{CloudflareHandler:()=>sce});var sce,pct=yr(()=>{V1();kt();Et();fr();sce=class extends Go{API_URL="https://api.cloudflare.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/client/v4/accounts/${e}/workers/scripts/${r}/settings`,i={headers:{Authorization:`Bearer ${n}`}},a=await Ae(s,i);return a&&a?.data&&a?.data?.result&&a?.data?.result?.bindings?a?.data?.result?.bindings:null}_setEnv(e,r,n){let s=e.findIndex(i=>i.name===r);return n==null?s!==-1&&e.splice(s,1):s!==-1?e[s].text=n:e.push({name:r,text:n,type:"plain_text"}),e}async setEnv(e,r){try{let n=await this._getAllEnvs(O.deployPlatformAccount,O.deployPlatformProject,O.deployPlatformToken);if(n===null){E("error","[system] [Server] \u2717 Failed to set environment variable: envs is null");return}let s=`${this.API_URL}/client/v4/accounts/${O.deployPlatformAccount}/workers/scripts/${O.deployPlatformProject}/settings`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},a=new FormData,o={bindings:this._setEnv(n,e,r==null?null:r.toString())};return a.append("settings",new Blob([JSON.stringify(o)],{type:"application/json"}),"settings.json"),await gL(s,a,i),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){return await this.setEnv(e,null),this.delLocalEnv(e)}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){return E("info","[system] [Server] After modifying the environment variables on the cloudflare platform, it will be automatically deployed."),!0}}});var mct={};us(mct,{VercelHandler:()=>ice});var ice,hct=yr(()=>{V1();kt();Et();fr();ice=class extends Go{API_URL="https://api.vercel.com";async _getAllEnvs(e,r){let n=`${this.API_URL}/v10/projects/${e}/env`,s={headers:{Authorization:`Bearer ${r}`}};return(await Ae(n,s)).data.envs}async _getEevId(e){try{let n=(await this._getAllEnvs(O.deployPlatformProject,O.deployPlatformToken)).find(s=>s.key===e);return n||null}catch(r){E("error","[system] [Server] \u2717 Failed to _getEevId:",r.message)}}async setEnv(e,r){let n=await this._getEevId(e);if(!n){E("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let s=`${this.API_URL}/v9/projects/${O.deployPlatformProject}/env/${n.id}`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},a={key:e,value:r.toString(),target:n.target,type:n.type};return await gL(s,JSON.stringify(a),i),this.updateLocalEnv(e,r)}catch(s){E("error","[system] [Server] \u2717 Failed to set environment variable:",s.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/v10/projects/${O.deployPlatformProject}/env`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,value:r.toString(),target:["production","preview","development"],type:"encrypted"};return await Gr(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){let r=await this._getEevId(e);if(!r){E("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let n=`${this.API_URL}/v9/projects/${O.deployPlatformProject}/env/${r.id}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Yb(n,s),this.delLocalEnv(e)}catch(n){E("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/v6/deployments?projectId=${O.deployPlatformProject}&limit=1`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},n=await Ae(e,r),s;if(n?.data&&n?.data?.deployments&&n?.data?.deployments.length>0)s=n.data.deployments[0].uid;else return E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(n?.data)),!1;let i=`${this.API_URL}/v13/deployments`,a={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},o={name:O.deployPlatformProject,deploymentId:s,target:"production"},c=await Gr(i,JSON.stringify(o),a);return c?.data?.id?!0:(E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(c?.data)),!1)}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var gct={};us(gct,{NetlifyHandler:()=>ace});var ace,yct=yr(()=>{V1();kt();Et();fr();ace=class extends Go{API_URL="https://api.netlify.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/api/v1/accounts/${e}/env?site_id=${r}`,i={headers:{Authorization:`Bearer ${n}`}};return await Ae(s,i)}async setEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,values:[{context:"all",value:r.toString()}]};return await QUe(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Gr(n,JSON.stringify([{key:e,values:[{context:"all",value:r}]}]),s),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){try{let r=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,n={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Yb(r,n),this.delLocalEnv(e)}catch(r){E("error","[system] [Server] \u2717 Failed to add environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/v1/sites/${O.deployPlatformProject}/builds`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},s=await Gr(e,JSON.stringify({}),r);return s?.data?.id?!0:(E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(s?.data)),!1)}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var Act={};us(Act,{EdgeoneHandler:()=>oce});var oce,xct=yr(()=>{V1();kt();Et();fr();oce=class extends Go{API_URL="https://pages-api.cloud.tencent.com/v1";async _httpPost(e,r){let n=`${this.API_URL}`,s={headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}};return await Gr(n,JSON.stringify(r),s)}async _getAllEnvs(e,r){let n={Action:"ModifyPagesProjectEnvs",ProjectId:e},s=await this._httpPost(r,n);if(s?.data?.Code!==0)return null;let i=s?.data.Data?.Response?.EnvVars??[];return Object.fromEntries(i.map(({Key:a,Value:o})=>[a,o]))}async setEnv(e,r){try{let n={Action:"ModifyPagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[{Key:e,Value:r.toString()}]};return await this._httpPost(O.deployPlatformToken,n),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r={Action:"DeletePagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[e]};return await this._httpPost(O.deployPlatformToken,r),this.delLocalEnv(e)}catch(r){E("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e={Action:"CreatePagesDeployment",ProjectId:O.deployPlatformProject,RepoBranch:"main",ViaMeta:"Github",Provider:"Github"},r=await this._httpPost(O.deployPlatformToken,e);return r?.data?.Code!==0?(E("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(r?.data)),!1):!0}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var bct={};us(bct,{HuggingfaceHandler:()=>cce});var cce,_ct=yr(()=>{V1();kt();Et();fr();cce=class extends Go{API_URL="https://huggingface.co";get repoId(){return`${O.deployPlatformAccount}/${O.deployPlatformProject}`}_getOptions(e=O.deployPlatformToken){return{headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}}}_getVariablesUrl(e){return`${this.API_URL}/api/spaces/${e}/variables`}async _getAllEnvs(e,r,n){let s=`${e}/${r}`,i=this._getVariablesUrl(s);return(await Ae(i,this._getOptions(n)))?.data}async setEnv(e,r){try{let n=this._getVariablesUrl(this.repoId),s={key:e,value:r.toString()};return await Gr(n,JSON.stringify(s),this._getOptions()),this.updateLocalEnv(e,r)}catch(n){E("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r=this._getVariablesUrl(this.repoId);return await Yb(r,{...this._getOptions(),body:JSON.stringify({key:e})}),this.delLocalEnv(e)}catch(r){E("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return E("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/spaces/${this.repoId}/restart`;return await Gr(e,void 0,this._getOptions()),!0}catch(e){return E("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var hht=_(Ky=>{"use strict";Object.defineProperty(Ky,"__esModule",{value:!0});Ky.removeTrailingChar=Ky.merge=void 0;var vBr=(...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,Ky.merge)(e[n],r[n]):e[n]=r[n]}),e};Ky.merge=vBr;var SBr=(t,e)=>t.length>1&&t.endsWith(e)?t.substring(0,t.length-1):t;Ky.removeTrailingChar=SBr});var Q_=_(Bm=>{"use strict";Object.defineProperty(Bm,"__esModule",{value:!0});Bm.DataError=Bm.DatabaseError=Bm.NestedError=void 0;var WR=class extends Error{inner;id;constructor(e,r,n){super(e),this.inner=n,this.id=r,this.name=this.constructor.name}toString(){let e=this.name+": "+this.message;return this.inner?e+`:
`+this.inner:e}};Bm.NestedError=WR;var lfe=class extends WR{};Bm.DatabaseError=lfe;var dfe=class extends WR{};Bm.DataError=dfe});var gfe=_(ka=>{"use strict";Object.defineProperty(ka,"__esModule",{value:!0});ka.getArrayIndicies=ka.validateArrayIndex=ka.validateArrayIndicies=ka.isInt=ka.ArrayInfo=ka.arrayRegex=void 0;var G5=Q_(),IBr=()=>/^([\.0-9a-zA-Z_$\-][0-9a-zA-Z_\-$\.]*)\[((?!(\]|\[)).*|)\]$/gm;ka.arrayRegex=IBr;var ffe={},pfe=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,mfe(n))this.index=parseInt(n);else if(!this.append)throw new G5.DataError("Only numerical values accepted for array index",200)}static processArray(e){if(typeof e>"u")return null;if(ffe[e])return ffe[e];let n=(0,ka.arrayRegex)().exec(e.trim());if(n!=null){let s=n[1],i="["+n[2].toString()+"]",a=hfe(i);return ght(a),ffe[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 G5.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 G5.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;s<this.indicies.length-1;s++){let i=+this.indicies[s];i===-1&&(i=n.length-1),n=n[i]}r===-1&&(r=n.length-1)}return{index:r,dataForProperty:n}}isMultiDimensional(){return this.indicies.length>1}};ka.ArrayInfo=pfe;function mfe(t){return!isNaN(t)&&Number(t)==t&&!isNaN(parseInt(t,10))}ka.isInt=mfe;function ght(t){let e=t.filter(r=>r==="");if(e.length>1)throw Error("Only one append index is supported for nested arrays");if(e.length===1&&t[t.length-1]!=="")throw Error("Append index must be at the end of the nested array")}ka.validateArrayIndicies=ght;function yht(t){if(t.length!==0&&!mfe(t))throw new G5.DataError("Only numerical values accepted for array index",200)}ka.validateArrayIndex=yht;function hfe(t){if(t.length===0)return[];if(t.charAt(0)!=="[")throw new Error("Invalid array syntax detected");let e=t.substring(1,t.indexOf("]"));yht(e);let r=e.length+2;return[e,...hfe(t.substring(r))]}ka.getArrayIndicies=hfe});var bht=_(V5=>{"use strict";Object.defineProperty(V5,"__esModule",{value:!0});V5.DBParentData=void 0;var Aht=gfe(),xht=Q_(),yfe=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=Aht.ArrayInfo.processArray(this.parent);if(r&&(!r.append||e)&&!r.isValid(this.data))throw new xht.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=Aht.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 xht.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]}};V5.DBParentData=yfe});var Eht=_((Wvn,_ht)=>{_ht.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 m=!1;return function(){m||(m=!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 m=!1;return function(){m||(m=!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 vht=_(K5=>{"use strict";Object.defineProperty(K5,"__esModule",{value:!0});K5.TimeoutError=void 0;var CBr=Q_(),Afe=class extends CBr.NestedError{};K5.TimeoutError=Afe});var Cht=_(H_=>{"use strict";Object.defineProperty(H_,"__esModule",{value:!0});H_.writeLockAsync=H_.readLockAsync=void 0;var TBr=Eht(),Sht=vht(),Iht=new TBr,wBr=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{Iht.readLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new Sht.TimeoutError("Timeout",100))}})})};H_.readLockAsync=wBr;var RBr=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{Iht.writeLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new Sht.TimeoutError("Timeout",100))}})})};H_.writeLockAsync=RBr});var bfe=_(z5=>{"use strict";Object.defineProperty(z5,"__esModule",{value:!0});z5.JsonAdapter=void 0;var xfe=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)}};z5.JsonAdapter=xfe});var Efe=_(J5=>{"use strict";Object.defineProperty(J5,"__esModule",{value:!0});J5.FileAdapter=void 0;var Y5=require("fs/promises"),NBr=require("path"),_fe=class{filename;fsync;constructor(e,r){this.filename=e,this.fsync=r}async readAsync(){try{return await(0,Y5.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,Y5.open)(this.filename,"w")}catch(n){if(n.code!=="ENOENT")throw n;let s=NBr.dirname(this.filename);await(0,Y5.mkdir)(s,{recursive:!0}),r=await(0,Y5.open)(this.filename,"w")}try{await r.writeFile(e,{encoding:"utf-8"}),this.fsync&&await r.sync()}finally{await r.close()}}};J5.FileAdapter=_fe});var Tht=_(G_=>{"use strict";Object.defineProperty(G_,"__esModule",{value:!0});G_.ConfigWithAdapter=G_.Config=void 0;var OBr=require("path"),kBr=bfe(),PBr=Efe(),vfe=class{adapter;filename;saveOnPush;separator;constructor(e,r=!0,n=!1,s="/",i=!1){this.filename=e,OBr.extname(e)===""&&(this.filename+=".json"),this.saveOnPush=r,this.separator=s,this.adapter=new kBr.JsonAdapter(new PBr.FileAdapter(this.filename,i),n)}};G_.Config=vfe;var Sfe=class{adapter;saveOnPush;separator;constructor(e,r=!0,n="/"){this.adapter=e,this.saveOnPush=r,this.separator=n}};G_.ConfigWithAdapter=Sfe});var Oht=_(aa=>{"use strict";Object.defineProperty(aa,"__esModule",{value:!0});aa.JsonDB=aa.FileAdapter=aa.JsonAdapter=aa.DataError=aa.DatabaseError=aa.ConfigWithAdapter=aa.Config=void 0;var wht=hht(),ia=Q_(),DBr=bht(),BBr=gfe(),Ife=Cht(),Rht=Tht();Object.defineProperty(aa,"Config",{enumerable:!0,get:function(){return Rht.Config}});Object.defineProperty(aa,"ConfigWithAdapter",{enumerable:!0,get:function(){return Rht.ConfigWithAdapter}});var Nht=Q_();Object.defineProperty(aa,"DatabaseError",{enumerable:!0,get:function(){return Nht.DatabaseError}});Object.defineProperty(aa,"DataError",{enumerable:!0,get:function(){return Nht.DataError}});var LBr=bfe();Object.defineProperty(aa,"JsonAdapter",{enumerable:!0,get:function(){return LBr.JsonAdapter}});var MBr=Efe();Object.defineProperty(aa,"FileAdapter",{enumerable:!0,get:function(){return MBr.FileAdapter}});var Cfe=class{loaded=!1;data={};config;constructor(e){this.config=e}processDataPath(e){if(e===void 0||!e.trim())throw new ia.DataError("The Data Path can't be empty",6);if(e==this.config.separator)return[];e=(0,wht.removeTrailingChar)(e,this.config.separator);let r=e.split(this.config.separator);return r.shift(),r}async retrieveData(e,r=!1){await this.load();let n=this,s=(i,a)=>{let o=e[a];function c(l=!1){if(i.hasOwnProperty(o))i=i[o];else if(r)l?i[o]=[]:i[o]={},i=i[o];else throw new ia.DataError(`Can't find dataPath: ${n.config.separator}${e.join(n.config.separator)}. Stopped at ${o}`,5)}let u=BBr.ArrayInfo.processArray(o);if(u){if(o=u.property,c(!0),!Array.isArray(i))throw new ia.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. ${o} is not an array.`,11);let l=u.getIndex(i,!0);if(!u.append&&i.hasOwnProperty(l))i=u.getData(i);else if(r)u.append?(i.push({}),i=i[i.length-1]):(i[l]={},i=i[l]);else throw new ia.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. . Can't find index ${u.index} in array ${o}`,10)}else c();return e.length==++a?i:s(i,a)};return e.length===0?this.data:s(this.data,0)}async getParentData(e,r){let n=this.processDataPath(e),s=n.pop();return new DBr.DBParentData(await this.retrieveData(n,r),this,e,s)}getData(e){return(0,Ife.readLockAsync)(async()=>{let r=this.processDataPath(e);return this.retrieveData(r,!1)})}getObject(e){return this.getData(e)}async getObjectDefault(e,r){try{return await this.getData(e)}catch(n){if(!(n instanceof ia.DataError)||n.id!=5)throw n;return r}}async exists(e){try{return await this.getData(e),!0}catch(r){if(r instanceof ia.DataError)return!1;throw r}}async count(e){let r=await this.getData(e);if(!Array.isArray(r))throw new ia.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return(await this.retrieveData(n,!1)).length}async getIndex(e,r,n="id"){return(await this.getArrayData(e)).map(function(i){return i[n]}).indexOf(r)}async getIndexValue(e,r){return(await this.getArrayData(e)).indexOf(r)}async getArrayData(e){let r=await this.getData(e);if(!Array.isArray(r))throw new ia.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return this.retrieveData(n,!1)}async filter(e,r){let n=await this.getData(e);if(Array.isArray(n))return n.filter(r);if(n instanceof Object){let i=Object.entries(n).filter(a=>r(a[1],a[0]));return!i||i.length<1?void 0:i.map(a=>a[1])}throw new ia.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async find(e,r){let n=await this.getData(e);if(Array.isArray(n))return n.find(r);if(n instanceof Object){let i=Object.entries(n).find(a=>r(a[1],a[0]));return!i||i.length<2?void 0:i[1]}throw new ia.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async push(e,r,n=!0){return(0,Ife.writeLockAsync)(async()=>{let s=await this.getParentData(e,!0),i=r;if(!n){if(Array.isArray(r)){let a=s.getData();if(a===void 0)a=[];else if(!Array.isArray(a))throw new ia.DataError("Can't merge another type of data with an Array",3);i=a.concat(r)}else if(r===Object(r)){if(Array.isArray(s.getData()))throw new ia.DataError("Can't merge an Array with an Object",4);i=(0,wht.merge)(s.getData(),r)}}s.setData(i),this.config.saveOnPush&&await this.save()})}async delete(e){await(0,Ife.writeLockAsync)(async()=>{(await this.getParentData(e,!0)).delete(),this.config.saveOnPush&&await this.save()})}resetData(e){this.data=e}async reload(){this.loaded=!1,await this.load()}async load(){if(!this.loaded)try{this.data=await this.config.adapter.readAsync(),this.loaded=!0}catch(e){throw new ia.DatabaseError("Can't Load Database",1,e)}}async save(e){if(e=e||!1,!e&&!this.loaded)throw new ia.DatabaseError("DataBase not loaded. Can't write",7);try{await this.config.adapter.writeAsync(this.data)}catch(r){throw new ia.DatabaseError("Can't save the database",2,r)}}async fromPath(e,r="id"){let[,...n]=e.split("/"),s=n.reduce((a,o,c)=>{if(c%2===0)a[`${o}`]="";else{let l=Object.keys(a);a[`${l[l.length-1]}`]=`${o}`}return a},{}),i=[];for await(let a of Object.keys(s)){i.push(`/${a}`);let o=s[a];try{let c=await this.getIndex(i.join(""),o,r);i.push(`[${c}]`)}catch(c){throw new ia.DataError(`DataPath: ${i.join("")}/${o} not found.`,13,c)}}return i.join("")}};aa.JsonDB=Cfe});var aWr={};us(aWr,{start:()=>sWr,stop:()=>iWr});module.exports=Ixt(aWr);var qyt=Ce(iOe(),1);var q_=Ce(require("node:fs/promises"),1),Us=Ce(require("node:path"),1),Q5=require("node:crypto"),rht=require("node:module"),afe=require("node:url");function FS(t,e){return function(){return t.apply(e,arguments)}}var{toString:kVt}=Object.prototype,{getPrototypeOf:kH}=Object,W3=(t=>e=>{let r=kVt.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),vl=t=>(t=t.toLowerCase(),e=>W3(e)===t),$3=t=>e=>typeof e===t,{isArray:Qx}=Array,qS=$3("undefined");function PVt(t){return t!==null&&!qS(t)&&t.constructor!==null&&!qS(t.constructor)&&Ec(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var cOe=vl("ArrayBuffer");function DVt(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&cOe(t.buffer),e}var BVt=$3("string"),Ec=$3("function"),uOe=$3("number"),U3=t=>t!==null&&typeof t=="object",LVt=t=>t===!0||t===!1,M3=t=>{if(W3(t)!=="object")return!1;let e=kH(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},MVt=vl("Date"),WVt=vl("File"),$Vt=vl("Blob"),UVt=vl("FileList"),FVt=t=>U3(t)&&Ec(t.pipe),qVt=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||Ec(t.append)&&((e=W3(t))==="formdata"||e==="object"&&Ec(t.toString)&&t.toString()==="[object FormData]"))},jVt=vl("URLSearchParams"),QVt=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function jS(t,e,{allOwnKeys:r=!1}={}){if(t===null||typeof t>"u")return;let n,s;if(typeof t!="object"&&(t=[t]),Qx(t))for(n=0,s=t.length;n<s;n++)e.call(null,t[n],n,t);else{let i=r?Object.getOwnPropertyNames(t):Object.keys(t),a=i.length,o;for(n=0;n<a;n++)o=i[n],e.call(null,t[o],o,t)}}function lOe(t,e){e=e.toLowerCase();let r=Object.keys(t),n=r.length,s;for(;n-- >0;)if(s=r[n],e===s.toLowerCase())return s;return null}var dOe=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,fOe=t=>!qS(t)&&t!==dOe;function OH(){let{caseless:t}=fOe(this)&&this||{},e={},r=(n,s)=>{let i=t&&lOe(e,s)||s;M3(e[i])&&M3(n)?e[i]=OH(e[i],n):M3(n)?e[i]=OH({},n):Qx(n)?e[i]=n.slice():e[i]=n};for(let n=0,s=arguments.length;n<s;n++)arguments[n]&&jS(arguments[n],r);return e}var HVt=(t,e,r,{allOwnKeys:n}={})=>(jS(e,(s,i)=>{r&&Ec(s)?t[i]=FS(s,r):t[i]=s},{allOwnKeys:n}),t),GVt=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),VVt=(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)},KVt=(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&&kH(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e},zVt=(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},YVt=t=>{if(!t)return null;if(Qx(t))return t;let e=t.length;if(!uOe(e))return null;let r=new Array(e);for(;e-- >0;)r[e]=t[e];return r},JVt=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&kH(Uint8Array)),XVt=(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])}},ZVt=(t,e)=>{let r,n=[];for(;(r=t.exec(e))!==null;)n.push(r);return n},eKt=vl("HTMLFormElement"),tKt=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),aOe=(({hasOwnProperty:t})=>(e,r)=>t.call(e,r))(Object.prototype),rKt=vl("RegExp"),pOe=(t,e)=>{let r=Object.getOwnPropertyDescriptors(t),n={};jS(r,(s,i)=>{let a;(a=e(s,i,t))!==!1&&(n[i]=a||s)}),Object.defineProperties(t,n)},nKt=t=>{pOe(t,(e,r)=>{if(Ec(t)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=t[r];if(Ec(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+"'")})}})},sKt=(t,e)=>{let r={},n=s=>{s.forEach(i=>{r[i]=!0})};return Qx(t)?n(t):n(String(t).split(e)),r},iKt=()=>{},aKt=(t,e)=>(t=+t,Number.isFinite(t)?t:e),NH="abcdefghijklmnopqrstuvwxyz",oOe="0123456789",mOe={DIGIT:oOe,ALPHA:NH,ALPHA_DIGIT:NH+NH.toUpperCase()+oOe},oKt=(t=16,e=mOe.ALPHA_DIGIT)=>{let r="",{length:n}=e;for(;t--;)r+=e[Math.random()*n|0];return r};function cKt(t){return!!(t&&Ec(t.append)&&t[Symbol.toStringTag]==="FormData"&&t[Symbol.iterator])}var uKt=t=>{let e=new Array(10),r=(n,s)=>{if(U3(n)){if(e.indexOf(n)>=0)return;if(!("toJSON"in n)){e[s]=n;let i=Qx(n)?[]:{};return jS(n,(a,o)=>{let c=r(a,s+1);!qS(c)&&(i[o]=c)}),e[s]=void 0,i}}return n};return r(t,0)},lKt=vl("AsyncFunction"),dKt=t=>t&&(U3(t)||Ec(t))&&Ec(t.then)&&Ec(t.catch),fe={isArray:Qx,isArrayBuffer:cOe,isBuffer:PVt,isFormData:qVt,isArrayBufferView:DVt,isString:BVt,isNumber:uOe,isBoolean:LVt,isObject:U3,isPlainObject:M3,isUndefined:qS,isDate:MVt,isFile:WVt,isBlob:$Vt,isRegExp:rKt,isFunction:Ec,isStream:FVt,isURLSearchParams:jVt,isTypedArray:JVt,isFileList:UVt,forEach:jS,merge:OH,extend:HVt,trim:QVt,stripBOM:GVt,inherits:VVt,toFlatObject:KVt,kindOf:W3,kindOfTest:vl,endsWith:zVt,toArray:YVt,forEachEntry:XVt,matchAll:ZVt,isHTMLForm:eKt,hasOwnProperty:aOe,hasOwnProp:aOe,reduceDescriptors:pOe,freezeMethods:nKt,toObjectSet:sKt,toCamelCase:tKt,noop:iKt,toFiniteNumber:aKt,findKey:lOe,global:dOe,isContextDefined:fOe,ALPHABET:mOe,generateString:oKt,isSpecCompliantForm:cKt,toJSONObject:uKt,isAsyncFn:lKt,isThenable:dKt};function Hx(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)}fe.inherits(Hx,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:fe.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var hOe=Hx.prototype,gOe={};["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=>{gOe[t]={value:t}});Object.defineProperties(Hx,gOe);Object.defineProperty(hOe,"isAxiosError",{value:!0});Hx.from=(t,e,r,n,s,i)=>{let a=Object.create(hOe);return fe.toFlatObject(t,a,function(c){return c!==Error.prototype},o=>o!=="isAxiosError"),Hx.call(a,t.message,e,r,n,s),a.cause=t,a.name=t.name,i&&Object.assign(a,i),a};var Ze=Hx;var APe=Ce(yPe(),1),Y3=APe.default;function ZH(t){return fe.isPlainObject(t)||fe.isArray(t)}function bPe(t){return fe.endsWith(t,"[]")?t.slice(0,-2):t}function xPe(t,e,r){return t?t.concat(e).map(function(s,i){return s=bPe(s),!r&&i?"["+s+"]":s}).join(r?".":""):e}function Yzt(t){return fe.isArray(t)&&!t.some(ZH)}var Jzt=fe.toFlatObject(fe,{},null,function(e){return/^is[A-Z]/.test(e)});function Xzt(t,e,r){if(!fe.isObject(t))throw new TypeError("target must be an object");e=e||new(Y3||FormData),r=fe.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,y){return!fe.isUndefined(y[h])});let n=r.metaTokens,s=r.visitor||l,i=r.dots,a=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&fe.isSpecCompliantForm(e);if(!fe.isFunction(s))throw new TypeError("visitor must be a function");function u(p){if(p===null)return"";if(fe.isDate(p))return p.toISOString();if(!c&&fe.isBlob(p))throw new Ze("Blob is not supported. Use a Buffer instead.");return fe.isArrayBuffer(p)||fe.isTypedArray(p)?c&&typeof Blob=="function"?new Blob([p]):Buffer.from(p):p}function l(p,h,y){let g=p;if(p&&!y&&typeof p=="object"){if(fe.endsWith(h,"{}"))h=n?h:h.slice(0,-2),p=JSON.stringify(p);else if(fe.isArray(p)&&Yzt(p)||(fe.isFileList(p)||fe.endsWith(h,"[]"))&&(g=fe.toArray(p)))return h=bPe(h),g.forEach(function(b,x){!(fe.isUndefined(b)||b===null)&&e.append(a===!0?xPe([h],x,i):a===null?h:h+"[]",u(b))}),!1}return ZH(p)?!0:(e.append(xPe(y,h,i),u(p)),!1)}let d=[],f=Object.assign(Jzt,{defaultVisitor:l,convertValue:u,isVisitable:ZH});function m(p,h){if(!fe.isUndefined(p)){if(d.indexOf(p)!==-1)throw Error("Circular reference detected in "+h.join("."));d.push(p),fe.forEach(p,function(g,A){(!(fe.isUndefined(g)||g===null)&&s.call(e,g,fe.isString(A)?A.trim():A,h,f))===!0&&m(g,h?h.concat(A):[A])}),d.pop()}}if(!fe.isObject(t))throw new TypeError("data must be an object");return m(t),e}var A0=Xzt;function _Pe(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function EPe(t,e){this._pairs=[],t&&A0(t,this,e)}var vPe=EPe.prototype;vPe.append=function(e,r){this._pairs.push([e,r])};vPe.toString=function(e){let r=e?function(n){return e.call(this,n,_Pe)}:_Pe;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};var SPe=EPe;function Zzt(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function $h(t,e,r){if(!e)return t;let n=r&&r.encode||Zzt,s=r&&r.serialize,i;if(s?i=s(e,r):i=fe.isURLSearchParams(e)?e.toString():new SPe(e,r).toString(n),i){let a=t.indexOf("#");a!==-1&&(t=t.slice(0,a)),t+=(t.indexOf("?")===-1?"?":"&")+i}return t}var eG=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){fe.forEach(this.handlers,function(n){n!==null&&e(n)})}},tG=eG;var Yx={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var IPe=Ce(require("url"),1),CPe=IPe.default.URLSearchParams;var TPe={isNode:!0,classes:{URLSearchParams:CPe,FormData:Y3,Blob:typeof Blob<"u"&&Blob||null},protocols:["http","https","file","data"]};var rG={};us(rG,{hasBrowserEnv:()=>wPe,hasStandardBrowserEnv:()=>eYt,hasStandardBrowserWebWorkerEnv:()=>tYt});var wPe=typeof window<"u"&&typeof document<"u",eYt=(t=>wPe&&["ReactNative","NativeScript","NS"].indexOf(t)<0)(typeof navigator<"u"&&navigator.product),tYt=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function";var Ps={...rG,...TPe};function nG(t,e){return A0(t,new Ps.classes.URLSearchParams,Object.assign({visitor:function(r,n,s,i){return Ps.isNode&&fe.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function rYt(t){return fe.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function nYt(t){let e={},r=Object.keys(t),n,s=r.length,i;for(n=0;n<s;n++)i=r[n],e[i]=t[i];return e}function sYt(t){function e(r,n,s,i){let a=r[i++];if(a==="__proto__")return!0;let o=Number.isFinite(+a),c=i>=r.length;return a=!a&&fe.isArray(s)?s.length:a,c?(fe.hasOwnProp(s,a)?s[a]=[s[a],n]:s[a]=n,!o):((!s[a]||!fe.isObject(s[a]))&&(s[a]=[]),e(r,n,s[a],i)&&fe.isArray(s[a])&&(s[a]=nYt(s[a])),!o)}if(fe.isFormData(t)&&fe.isFunction(t.entries)){let r={};return fe.forEachEntry(t,(n,s)=>{e(rYt(n),s,r,0)}),r}return null}var J3=sYt;function iYt(t,e,r){if(fe.isString(t))try{return(e||JSON.parse)(t),fe.trim(t)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(t)}var sG={transitional:Yx,adapter:["xhr","http"],transformRequest:[function(e,r){let n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=fe.isObject(e);if(i&&fe.isHTMLForm(e)&&(e=new FormData(e)),fe.isFormData(e))return s?JSON.stringify(J3(e)):e;if(fe.isArrayBuffer(e)||fe.isBuffer(e)||fe.isStream(e)||fe.isFile(e)||fe.isBlob(e))return e;if(fe.isArrayBufferView(e))return e.buffer;if(fe.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 nG(e,this.formSerializer).toString();if((o=fe.isFileList(e))||n.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return A0(o?{"files[]":e}:e,c&&new c,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),iYt(e)):e}],transformResponse:[function(e){let r=this.transitional||sG.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(e&&fe.isString(e)&&(n&&!this.responseType||s)){let a=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(o){if(a)throw o.name==="SyntaxError"?Ze.from(o,Ze.ERR_BAD_RESPONSE,this,null,this.response):o}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Ps.classes.FormData,Blob:Ps.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};fe.forEach(["delete","get","head","post","put","patch"],t=>{sG.headers[t]={}});var Jx=sG;var aYt=fe.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"]),RPe=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]&&aYt[r])&&(r==="set-cookie"?e[r]?e[r].push(n):e[r]=[n]:e[r]=e[r]?e[r]+", "+n:n)}),e};var NPe=Symbol("internals");function zS(t){return t&&String(t).trim().toLowerCase()}function X3(t){return t===!1||t==null?t:fe.isArray(t)?t.map(X3):String(t)}function oYt(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 cYt=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function iG(t,e,r,n,s){if(fe.isFunction(n))return n.call(this,e,r);if(s&&(e=r),!!fe.isString(e)){if(fe.isString(n))return e.indexOf(n)!==-1;if(fe.isRegExp(n))return n.test(e)}}function uYt(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,r,n)=>r.toUpperCase()+n)}function lYt(t,e){let r=fe.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 Xx=class{constructor(e){e&&this.set(e)}set(e,r,n){let s=this;function i(o,c,u){let l=zS(c);if(!l)throw new Error("header name must be a non-empty string");let d=fe.findKey(s,l);(!d||s[d]===void 0||u===!0||u===void 0&&s[d]!==!1)&&(s[d||c]=X3(o))}let a=(o,c)=>fe.forEach(o,(u,l)=>i(u,l,c));return fe.isPlainObject(e)||e instanceof this.constructor?a(e,r):fe.isString(e)&&(e=e.trim())&&!cYt(e)?a(RPe(e),r):e!=null&&i(r,e,n),this}get(e,r){if(e=zS(e),e){let n=fe.findKey(this,e);if(n){let s=this[n];if(!r)return s;if(r===!0)return oYt(s);if(fe.isFunction(r))return r.call(this,s,n);if(fe.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,r){if(e=zS(e),e){let n=fe.findKey(this,e);return!!(n&&this[n]!==void 0&&(!r||iG(this,this[n],n,r)))}return!1}delete(e,r){let n=this,s=!1;function i(a){if(a=zS(a),a){let o=fe.findKey(n,a);o&&(!r||iG(n,n[o],o,r))&&(delete n[o],s=!0)}}return fe.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||iG(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){let r=this,n={};return fe.forEach(this,(s,i)=>{let a=fe.findKey(n,i);if(a){r[a]=X3(s),delete r[i];return}let o=e?uYt(i):String(i).trim();o!==i&&delete r[i],r[o]=X3(s),n[o]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){let r=Object.create(null);return fe.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=e&&fe.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[NPe]=this[NPe]={accessors:{}}).accessors,s=this.prototype;function i(a){let o=zS(a);n[o]||(lYt(s,a),n[o]=!0)}return fe.isArray(e)?e.forEach(i):i(e),this}};Xx.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);fe.reduceDescriptors(Xx.prototype,({value:t},e)=>{let r=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(n){this[r]=n}}});fe.freezeMethods(Xx);var Ds=Xx;function YS(t,e){let r=this||Jx,n=e||r,s=Ds.from(n.headers),i=n.data;return fe.forEach(t,function(o){i=o.call(r,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function JS(t){return!!(t&&t.__CANCEL__)}function OPe(t,e,r){Ze.call(this,t??"canceled",Ze.ERR_CANCELED,e,r),this.name="CanceledError"}fe.inherits(OPe,Ze,{__CANCEL__:!0});var yu=OPe;function x0(t,e,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?t(r):e(new Ze("Request failed with status code "+r.status,[Ze.ERR_BAD_REQUEST,Ze.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function aG(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function oG(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function Uh(t,e){return t&&!aG(e)?oG(t,e):e}var f3e=Ce(PPe(),1),p3e=Ce(require("http"),1),m3e=Ce(require("https"),1),h3e=Ce(require("util"),1),g3e=Ce(XPe(),1),af=Ce(require("zlib"),1);var Qh="1.6.7";function rI(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}var zYt=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function SG(t,e,r){let n=r&&r.Blob||Ps.classes.Blob,s=rI(t);if(e===void 0&&n&&(e=!0),s==="data"){t=s.length?t.slice(s.length+1):t;let i=zYt.exec(t);if(!i)throw new Ze("Invalid URL",Ze.ERR_INVALID_URL);let a=i[1],o=i[2],c=i[3],u=Buffer.from(decodeURIComponent(c),o?"base64":"utf8");if(e){if(!n)throw new Ze("Blob is not supported",Ze.ERR_NOT_SUPPORT);return new n([u],{type:a})}return u}throw new Ze("Unsupported protocol "+s,Ze.ERR_NOT_SUPPORT)}var Hh=Ce(require("stream"),1);var e3e=Ce(require("stream"),1);function YYt(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 ZPe=YYt;function JYt(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<e)return;let m=l&&u-l;return m?Math.round(f*1e3/m):void 0}}var nD=JYt;var sD=Symbol("internals"),IG=class extends e3e.default.Transform{constructor(e){e=fe.toFlatObject(e,{maxRate:0,chunkSize:64*1024,minChunkSize:100,timeWindow:500,ticksRate:2,samplesCount:15},null,(o,c)=>!fe.isUndefined(c[o])),super({readableHighWaterMark:e.chunkSize});let r=this,n=this[sD]={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=nD(n.ticksRate*e.samplesCount,n.timeWindow);this.on("newListener",o=>{o==="progress"&&(n.isCaptured||(n.isCaptured=!0))});let i=0;n.updateProgress=ZPe(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[sD];return r.onReadCallback&&r.onReadCallback(),super._read(e)}_transform(e,r,n){let s=this,i=this[sD],a=i.maxRate,o=this.readableHighWaterMark,c=i.timeWindow,u=1e3/c,l=a/u,d=i.minChunkSize!==!1?Math.max(i.minChunkSize,l*.01):0;function f(p,h){let y=Buffer.byteLength(p);i.bytesSeen+=y,i.bytes+=y,i.isCaptured&&i.updateProgress(),s.push(p)?process.nextTick(h):i.onReadCallback=()=>{i.onReadCallback=null,process.nextTick(h)}}let m=(p,h)=>{let y=Buffer.byteLength(p),g=null,A=o,b,x=0;if(a){let S=Date.now();(!i.ts||(x=S-i.ts)>=c)&&(i.ts=S,b=l-i.bytes,i.bytes=b<0?-b:0,x=0),b=l-i.bytes}if(a){if(b<=0)return setTimeout(()=>{h(null,p)},c-x);b<A&&(A=b)}A&&y>A&&y-A>d&&(g=p.subarray(A),p=p.subarray(0,A)),f(p,g?()=>{process.nextTick(h,null,g)}:h)};m(e,function p(h,y){if(h)return n(h);y?m(y,p):n(null)})}setLength(e){return this[sD].length=+e,this}},CG=IG;var y3e=Ce(require("events"),1);var r3e=require("util"),n3e=require("stream");var{asyncIterator:t3e}=Symbol,XYt=async function*(t){t.stream?yield*t.stream():t.arrayBuffer?yield await t.arrayBuffer():t[t3e]?yield*t[t3e]():yield t},iD=XYt;var ZYt=fe.ALPHABET.ALPHA_DIGIT+"-_",nI=new r3e.TextEncoder,_0=`\r
`,eJt=nI.encode(_0),tJt=2,TG=class{constructor(e,r){let{escapeName:n}=this.constructor,s=fe.isString(r),i=`Content-Disposition: form-data; name="${n(e)}"${!s&&r.name?`; filename="${n(r.name)}"`:""}${_0}`;s?r=nI.encode(String(r).replace(/\r?\n|\r\n?/g,_0)):i+=`Content-Type: ${r.type||"application/octet-stream"}${_0}`,this.headers=nI.encode(i+_0),this.contentLength=s?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+tJt,this.name=e,this.value=r}async*encode(){yield this.headers;let{value:e}=this;fe.isTypedArray(e)?yield e:yield*iD(e),yield eJt}static escapeName(e){return String(e).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},rJt=(t,e,r)=>{let{tag:n="form-data-boundary",size:s=25,boundary:i=n+"-"+fe.generateString(s,ZYt)}=r||{};if(!fe.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=nI.encode("--"+i+_0),o=nI.encode("--"+i+"--"+_0+_0),c=o.byteLength,u=Array.from(t.entries()).map(([d,f])=>{let m=new TG(d,f);return c+=m.size,m});c+=a.byteLength*u.length,c=fe.toFiniteNumber(c);let l={"Content-Type":`multipart/form-data; boundary=${i}`};return Number.isFinite(c)&&(l["Content-Length"]=c),e&&e(l),n3e.Readable.from(async function*(){for(let d of u)yield a,yield*d.encode();yield o}())},s3e=rJt;var i3e=Ce(require("stream"),1),wG=class extends i3e.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)}},a3e=wG;var nJt=(t,e)=>fe.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,o3e=nJt;var c3e={flush:af.default.constants.Z_SYNC_FLUSH,finishFlush:af.default.constants.Z_SYNC_FLUSH},sJt={flush:af.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:af.default.constants.BROTLI_OPERATION_FLUSH},u3e=fe.isFunction(af.default.createBrotliDecompress),{http:iJt,https:aJt}=g3e.default,oJt=/https:?/,l3e=Ps.protocols.map(t=>t+":");function cJt(t,e){t.beforeRedirects.proxy&&t.beforeRedirects.proxy(t),t.beforeRedirects.config&&t.beforeRedirects.config(t,e)}function A3e(t,e,r){let n=e;if(!n&&n!==!1){let s=(0,f3e.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){A3e(i,e,i.href)}}var uJt=typeof process<"u"&&fe.kindOf(process)==="process",lJt=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)}),dJt=({address:t,family:e})=>{if(!fe.isString(t))throw TypeError("address must be a string");return{address:t,family:e||(t.indexOf(".")<0?6:4)}},d3e=(t,e)=>dJt(fe.isObject(t)?t:{address:t,family:e}),x3e=uJt&&function(e){return lJt(async function(n,s,i){let{data:a,lookup:o,family:c}=e,{responseType:u,responseEncoding:l}=e,d=e.method.toUpperCase(),f,m=!1,p;if(o){let U=o3e(o,V=>fe.isArray(V)?V:[V]);o=(V,j,J)=>{U(V,j,(se,oe,ue)=>{if(se)return J(se);let Te=fe.isArray(oe)?oe.map(Ne=>d3e(Ne)):[d3e(oe,ue)];j.all?J(se,Te):J(se,Te[0].address,Te[0].family)})}}let h=new y3e.default,y=()=>{e.cancelToken&&e.cancelToken.unsubscribe(g),e.signal&&e.signal.removeEventListener("abort",g),h.removeAllListeners()};i((U,V)=>{f=!0,V&&(m=!0,y())});function g(U){h.emit("abort",!U||U.type?new yu(null,e,p):U)}h.once("abort",s),(e.cancelToken||e.signal)&&(e.cancelToken&&e.cancelToken.subscribe(g),e.signal&&(e.signal.aborted?g():e.signal.addEventListener("abort",g)));let A=Uh(e.baseURL,e.url),b=new URL(A,"http://localhost"),x=b.protocol||l3e[0];if(x==="data:"){let U;if(d!=="GET")return x0(n,s,{status:405,statusText:"method not allowed",headers:{},config:e});try{U=SG(e.url,u==="blob",{Blob:e.env&&e.env.Blob})}catch(V){throw Ze.from(V,Ze.ERR_BAD_REQUEST,e)}return u==="text"?(U=U.toString(l),(!l||l==="utf8")&&(U=fe.stripBOM(U))):u==="stream"&&(U=Hh.default.Readable.from(U)),x0(n,s,{data:U,status:200,statusText:"OK",headers:new Ds,config:e})}if(l3e.indexOf(x)===-1)return s(new Ze("Unsupported protocol "+x,Ze.ERR_BAD_REQUEST,e));let S=Ds.from(e.headers).normalize();S.set("User-Agent","axios/"+Qh,!1);let T=e.onDownloadProgress,I=e.onUploadProgress,R=e.maxRate,N,k;if(fe.isSpecCompliantForm(a)){let U=S.getContentType(/boundary=([-_\w\d]{10,70})/i);a=s3e(a,V=>{S.set(V)},{tag:`axios-${Qh}-boundary`,boundary:U&&U[1]||void 0})}else if(fe.isFormData(a)&&fe.isFunction(a.getHeaders)){if(S.set(a.getHeaders()),!S.hasContentLength())try{let U=await h3e.default.promisify(a.getLength).call(a);Number.isFinite(U)&&U>=0&&S.setContentLength(U)}catch{}}else if(fe.isBlob(a))a.size&&S.setContentType(a.type||"application/octet-stream"),S.setContentLength(a.size||0),a=Hh.default.Readable.from(iD(a));else if(a&&!fe.isStream(a)){if(!Buffer.isBuffer(a))if(fe.isArrayBuffer(a))a=Buffer.from(new Uint8Array(a));else if(fe.isString(a))a=Buffer.from(a,"utf-8");else return s(new Ze("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",Ze.ERR_BAD_REQUEST,e));if(S.setContentLength(a.length,!1),e.maxBodyLength>-1&&a.length>e.maxBodyLength)return s(new Ze("Request body larger than maxBodyLength limit",Ze.ERR_BAD_REQUEST,e))}let B=fe.toFiniteNumber(S.getContentLength());fe.isArray(R)?(N=R[0],k=R[1]):N=k=R,a&&(I||N)&&(fe.isStream(a)||(a=Hh.default.Readable.from(a,{objectMode:!1})),a=Hh.default.pipeline([a,new CG({length:B,maxRate:fe.toFiniteNumber(N)})],fe.noop),I&&a.on("progress",U=>{I(Object.assign(U,{upload:!0}))}));let M;if(e.auth){let U=e.auth.username||"",V=e.auth.password||"";M=U+":"+V}if(!M&&b.username){let U=b.username,V=b.password;M=U+":"+V}M&&S.delete("authorization");let P;try{P=$h(b.pathname+b.search,e.params,e.paramsSerializer).replace(/^\?/,"")}catch(U){let V=new Error(U.message);return V.config=e,V.url=e.url,V.exists=!0,s(V)}S.set("Accept-Encoding","gzip, compress, deflate"+(u3e?", br":""),!1);let L={path:P,method:d,headers:S.toJSON(),agents:{http:e.httpAgent,https:e.httpsAgent},auth:M,protocol:x,family:c,beforeRedirect:cJt,beforeRedirects:{}};!fe.isUndefined(o)&&(L.lookup=o),e.socketPath?L.socketPath=e.socketPath:(L.hostname=b.hostname,L.port=b.port,A3e(L,e.proxy,x+"//"+b.hostname+(b.port?":"+b.port:"")+L.path));let Z,W=oJt.test(L.protocol);if(L.agent=W?e.httpsAgent:e.httpAgent,e.transport?Z=e.transport:e.maxRedirects===0?Z=W?m3e.default:p3e.default:(e.maxRedirects&&(L.maxRedirects=e.maxRedirects),e.beforeRedirect&&(L.beforeRedirects.config=e.beforeRedirect),Z=W?aJt:iJt),e.maxBodyLength>-1?L.maxBodyLength=e.maxBodyLength:L.maxBodyLength=1/0,e.insecureHTTPParser&&(L.insecureHTTPParser=e.insecureHTTPParser),p=Z.request(L,function(V){if(p.destroyed)return;let j=[V],J=+V.headers["content-length"];if(T){let Ne=new CG({length:fe.toFiniteNumber(J),maxRate:fe.toFiniteNumber(k)});T&&Ne.on("progress",je=>{T(Object.assign(je,{download:!0}))}),j.push(Ne)}let se=V,oe=V.req||p;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(af.default.createUnzip(c3e)),delete V.headers["content-encoding"];break;case"deflate":j.push(new a3e),j.push(af.default.createUnzip(c3e)),delete V.headers["content-encoding"];break;case"br":u3e&&(j.push(af.default.createBrotliDecompress(sJt)),delete V.headers["content-encoding"])}se=j.length>1?Hh.default.pipeline(j,fe.noop):j[0];let ue=Hh.default.finished(se,()=>{ue(),y()}),Te={status:V.statusCode,statusText:V.statusMessage,headers:new Ds(V.headers),config:e,request:oe};if(u==="stream")Te.data=se,x0(n,s,Te);else{let Ne=[],je=0;se.on("data",function(ve){Ne.push(ve),je+=ve.length,e.maxContentLength>-1&&je>e.maxContentLength&&(m=!0,se.destroy(),s(new Ze("maxContentLength size of "+e.maxContentLength+" exceeded",Ze.ERR_BAD_RESPONSE,e,oe)))}),se.on("aborted",function(){if(m)return;let ve=new Ze("maxContentLength size of "+e.maxContentLength+" exceeded",Ze.ERR_BAD_RESPONSE,e,oe);se.destroy(ve),s(ve)}),se.on("error",function(ve){p.destroyed||s(Ze.from(ve,null,e,oe))}),se.on("end",function(){try{let ve=Ne.length===1?Ne[0]:Buffer.concat(Ne);u!=="arraybuffer"&&(ve=ve.toString(l),(!l||l==="utf8")&&(ve=fe.stripBOM(ve))),Te.data=ve}catch(ve){return s(Ze.from(ve,null,e,Te.request,Te))}x0(n,s,Te)})}h.once("abort",Ne=>{se.destroyed||(se.emit("error",Ne),se.destroy())})}),h.once("abort",U=>{s(U),p.destroy(U)}),p.on("error",function(V){s(Ze.from(V,null,e,p))}),p.on("socket",function(V){V.setKeepAlive(!0,1e3*60)}),e.timeout){let U=parseInt(e.timeout,10);if(Number.isNaN(U)){s(new Ze("error trying to parse `config.timeout` to int",Ze.ERR_BAD_OPTION_VALUE,e,p));return}p.setTimeout(U,function(){if(f)return;let j=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",J=e.transitional||Yx;e.timeoutErrorMessage&&(j=e.timeoutErrorMessage),s(new Ze(j,J.clarifyTimeoutError?Ze.ETIMEDOUT:Ze.ECONNABORTED,e,p)),g()})}if(fe.isStream(a)){let U=!1,V=!1;a.on("end",()=>{U=!0}),a.once("error",j=>{V=!0,p.destroy(j)}),a.on("close",()=>{!U&&!V&&g(new yu("Request stream has been aborted",e,p))}),a.pipe(p)}else p.end(a)})};var b3e=Ps.hasStandardBrowserEnv?{write(t,e,r,n,s,i){let a=[t+"="+encodeURIComponent(e)];fe.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),fe.isString(n)&&a.push("path="+n),fe.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 _3e=Ps.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=fe.isString(a)?s(a):a;return o.protocol===n.protocol&&o.host===n.host}}():function(){return function(){return!0}}();function E3e(t,e){let r=0,n=nD(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 fJt=typeof XMLHttpRequest<"u",v3e=fJt&&function(t){return new Promise(function(r,n){let s=t.data,i=Ds.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(fe.isFormData(s)){if(Ps.hasStandardBrowserEnv||Ps.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if((l=i.getContentType())!==!1){let[h,...y]=l?l.split(";").map(g=>g.trim()).filter(Boolean):[];i.setContentType([h||"multipart/form-data",...y].join("; "))}}let d=new XMLHttpRequest;if(t.auth){let h=t.auth.username||"",y=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";i.set("Authorization","Basic "+btoa(h+":"+y))}let f=Uh(t.baseURL,t.url);d.open(t.method.toUpperCase(),$h(f,t.params,t.paramsSerializer),!0),d.timeout=t.timeout;function m(){if(!d)return;let h=Ds.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};x0(function(b){r(b),u()},function(b){n(b),u()},g),d=null}if("onloadend"in d?d.onloadend=m:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(m)},d.onabort=function(){d&&(n(new Ze("Request aborted",Ze.ECONNABORTED,t,d)),d=null)},d.onerror=function(){n(new Ze("Network Error",Ze.ERR_NETWORK,t,d)),d=null},d.ontimeout=function(){let y=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",g=t.transitional||Yx;t.timeoutErrorMessage&&(y=t.timeoutErrorMessage),n(new Ze(y,g.clarifyTimeoutError?Ze.ETIMEDOUT:Ze.ECONNABORTED,t,d)),d=null},Ps.hasStandardBrowserEnv&&(o&&fe.isFunction(o)&&(o=o(t)),o||o!==!1&&_3e(f))){let h=t.xsrfHeaderName&&t.xsrfCookieName&&b3e.read(t.xsrfCookieName);h&&i.set(t.xsrfHeaderName,h)}s===void 0&&i.setContentType(null),"setRequestHeader"in d&&fe.forEach(i.toJSON(),function(y,g){d.setRequestHeader(g,y)}),fe.isUndefined(t.withCredentials)||(d.withCredentials=!!t.withCredentials),a&&a!=="json"&&(d.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&d.addEventListener("progress",E3e(t.onDownloadProgress,!0)),typeof t.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",E3e(t.onUploadProgress)),(t.cancelToken||t.signal)&&(c=h=>{d&&(n(!h||h.type?new yu(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 p=rI(f);if(p&&Ps.protocols.indexOf(p)===-1){n(new Ze("Unsupported protocol "+p+":",Ze.ERR_BAD_REQUEST,t));return}d.send(s||null)})};var RG={http:x3e,xhr:v3e};fe.forEach(RG,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});var S3e=t=>`- ${t}`,pJt=t=>fe.isFunction(t)||t===null||t===!1,aD={getAdapter:t=>{t=fe.isArray(t)?t:[t];let{length:e}=t,r,n,s={};for(let i=0;i<e;i++){r=t[i];let a;if(n=r,!pJt(r)&&(n=RG[(a=String(r)).toLowerCase()],n===void 0))throw new Ze(`Unknown adapter '${a}'`);if(n)break;s[a||"#"+i]=n}if(!n){let i=Object.entries(s).map(([o,c])=>`adapter ${o} `+(c===!1?"is not supported by the environment":"is not available in the build")),a=e?i.length>1?`since :
`+i.map(S3e).join(`
`):" "+S3e(i[0]):"as no adapter specified";throw new Ze("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return n},adapters:RG};function NG(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new yu(null,t)}function oD(t){return NG(t),t.headers=Ds.from(t.headers),t.data=YS.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),aD.getAdapter(t.adapter||Jx.adapter)(t).then(function(n){return NG(t),n.data=YS.call(t,t.transformResponse,n),n.headers=Ds.from(n.headers),n},function(n){return JS(n)||(NG(t),n&&n.response&&(n.response.data=YS.call(t,t.transformResponse,n.response),n.response.headers=Ds.from(n.response.headers))),Promise.reject(n)})}var I3e=t=>t instanceof Ds?t.toJSON():t;function of(t,e){e=e||{};let r={};function n(u,l,d){return fe.isPlainObject(u)&&fe.isPlainObject(l)?fe.merge.call({caseless:d},u,l):fe.isPlainObject(l)?fe.merge({},l):fe.isArray(l)?l.slice():l}function s(u,l,d){if(fe.isUndefined(l)){if(!fe.isUndefined(u))return n(void 0,u,d)}else return n(u,l,d)}function i(u,l){if(!fe.isUndefined(l))return n(void 0,l)}function a(u,l){if(fe.isUndefined(l)){if(!fe.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(I3e(u),I3e(l),!0)};return fe.forEach(Object.keys(Object.assign({},t,e)),function(l){let d=c[l]||s,f=d(t[l],e[l],l);fe.isUndefined(f)&&d!==o||(r[l]=f)}),r}var OG={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{OG[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});var C3e={};OG.transitional=function(e,r,n){function s(i,a){return"[Axios v"+Qh+"] Transitional option '"+i+"'"+a+(n?". "+n:"")}return(i,a,o)=>{if(e===!1)throw new Ze(s(a," has been removed"+(r?" in "+r:"")),Ze.ERR_DEPRECATED);return r&&!C3e[a]&&(C3e[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 mJt(t,e,r){if(typeof t!="object")throw new Ze("options must be an object",Ze.ERR_BAD_OPTION_VALUE);let n=Object.keys(t),s=n.length;for(;s-- >0;){let i=n[s],a=e[i];if(a){let o=t[i],c=o===void 0||a(o,i,t);if(c!==!0)throw new Ze("option "+i+" must be "+c,Ze.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new Ze("Unknown option "+i,Ze.ERR_BAD_OPTION)}}var cD={assertOptions:mJt,validators:OG};var E0=cD.validators,nb=class{constructor(e){this.defaults=e,this.interceptors={request:new tG,response:new tG}}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=of(this.defaults,r);let{transitional:n,paramsSerializer:s,headers:i}=r;n!==void 0&&cD.assertOptions(n,{silentJSONParsing:E0.transitional(E0.boolean),forcedJSONParsing:E0.transitional(E0.boolean),clarifyTimeoutError:E0.transitional(E0.boolean)},!1),s!=null&&(fe.isFunction(s)?r.paramsSerializer={serialize:s}:cD.assertOptions(s,{encode:E0.function,serialize:E0.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=i&&fe.merge(i.common,i[r.method]);i&&fe.forEach(["delete","get","head","post","put","patch","common"],p=>{delete i[p]}),r.headers=Ds.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 p=[oD.bind(this),void 0];for(p.unshift.apply(p,o),p.push.apply(p,u),f=p.length,l=Promise.resolve(r);d<f;)l=l.then(p[d++],p[d++]);return l}f=o.length;let m=r;for(d=0;d<f;){let p=o[d++],h=o[d++];try{m=p(m)}catch(y){h.call(this,y);break}}try{l=oD.call(this,m)}catch(p){return Promise.reject(p)}for(d=0,f=u.length;d<f;)l=l.then(u[d++],u[d++]);return l}getUri(e){e=of(this.defaults,e);let r=Uh(e.baseURL,e.url);return $h(r,e.params,e.paramsSerializer)}};fe.forEach(["delete","get","head","options"],function(e){nb.prototype[e]=function(r,n){return this.request(of(n||{},{method:e,url:r,data:(n||{}).data}))}});fe.forEach(["post","put","patch"],function(e){function r(n){return function(i,a,o){return this.request(of(o||{},{method:e,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:a}))}}nb.prototype[e]=r(),nb.prototype[e+"Form"]=r(!0)});var sI=nb;var kG=class t{constructor(e){if(typeof e!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(i){r=i});let n=this;this.promise.then(s=>{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](s);n._listeners=null}),this.promise.then=s=>{let i,a=new Promise(o=>{n.subscribe(o),i=o}).then(s);return a.cancel=function(){n.unsubscribe(i)},a},e(function(i,a,o){n.reason||(n.reason=new yu(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}}},T3e=kG;function PG(t){return function(r){return t.apply(null,r)}}function DG(t){return fe.isObject(t)&&t.isAxiosError===!0}var BG={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(BG).forEach(([t,e])=>{BG[e]=t});var w3e=BG;function R3e(t){let e=new sI(t),r=FS(sI.prototype.request,e);return fe.extend(r,sI.prototype,e,{allOwnKeys:!0}),fe.extend(r,e,null,{allOwnKeys:!0}),r.create=function(s){return R3e(of(t,s))},r}var Ss=R3e(Jx);Ss.Axios=sI;Ss.CanceledError=yu;Ss.CancelToken=T3e;Ss.isCancel=JS;Ss.VERSION=Qh;Ss.toFormData=A0;Ss.AxiosError=Ze;Ss.Cancel=Ss.CanceledError;Ss.all=function(e){return Promise.all(e)};Ss.spread=PG;Ss.isAxiosError=DG;Ss.mergeConfig=of;Ss.AxiosHeaders=Ds;Ss.formToJSON=t=>J3(fe.isHTMLForm(t)?new FormData(t):t);Ss.getAdapter=aD.getAdapter;Ss.HttpStatusCode=w3e;Ss.default=Ss;var he=Ss;var{Axios:eVr,AxiosError:tVr,CanceledError:rVr,isCancel:nVr,CancelToken:sVr,VERSION:iVr,all:aVr,Cancel:oVr,isAxiosError:cVr,spread:uVr,toFormData:lVr,AxiosHeaders:dVr,HttpStatusCode:fVr,formToJSON:pVr,getAdapter:mVr,mergeConfig:hVr}=he;var N3e=Ce(require("https"),1),O3e=Ce(require("http"),1),hJt=Number.parseInt(process.env.CATPAW_REQ_TIMEOUT_MS||"20000",10)||2e4,gJt=he.create({timeout:hJt,httpsAgent:new N3e.default.Agent({keepAlive:!1,rejectUnauthorized:!1,maxCachedSessions:0}),httpAgent:new O3e.default.Agent({keepAlive:!1}),proxy:!1}),le=gJt;var o4={};us(o4,{contains:()=>Drr,default:()=>Prr,html:()=>KG,load:()=>De,merge:()=>Brr,parseHTML:()=>Lrr,root:()=>Mrr,text:()=>df,xml:()=>zG});var yJt={xml:!1,decodeEntities:!0},iI=yJt,k3e={_useHtmlParser2:!0,xmlMode:!0};function aI(t){return t?.xml?typeof t.xml=="boolean"?k3e:{...k3e,...t.xml}:t??void 0}var C0={};us(C0,{contains:()=>YG,html:()=>KG,merge:()=>cXt,parseHTML:()=>aXt,root:()=>oXt,text:()=>df,xml:()=>zG});var I0={};us(I0,{DocumentPosition:()=>Ic,append:()=>qJt,appendChild:()=>FJt,compareDocumentPosition:()=>aDe,existsOne:()=>sDe,filter:()=>cb,find:()=>_D,findAll:()=>GJt,findOne:()=>ED,findOneChild:()=>HJt,getAttributeValue:()=>MJt,getChildren:()=>ob,getElementById:()=>YJt,getElements:()=>zJt,getElementsByClassName:()=>JJt,getElementsByTagName:()=>Yh,getElementsByTagType:()=>XJt,getFeed:()=>VG,getInnerHTML:()=>LJt,getName:()=>$Jt,getOuterHTML:()=>rDe,getParent:()=>nDe,getSiblings:()=>HG,getText:()=>AD,hasAttrib:()=>WJt,hasChildren:()=>tn,innerText:()=>pI,isCDATA:()=>sb,isComment:()=>zh,isDocument:()=>Au,isTag:()=>it,isText:()=>no,nextElementSibling:()=>xD,prepend:()=>QJt,prependChild:()=>jJt,prevElementSibling:()=>bD,removeElement:()=>lf,removeSubsets:()=>ZJt,replaceElement:()=>UJt,testElement:()=>KJt,textContent:()=>uf,uniqueSort:()=>v0});var Dr;(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"})(Dr||(Dr={}));function P3e(t){return t.type===Dr.Tag||t.type===Dr.Script||t.type===Dr.Style}var D3e=Dr.Root,B3e=Dr.Text,L3e=Dr.Directive,M3e=Dr.Comment,W3e=Dr.Script,$3e=Dr.Style,U3e=Dr.Tag,F3e=Dr.CDATA,q3e=Dr.Doctype;var uD=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 lI(this,e)}},oI=class extends uD{constructor(e){super(),this.data=e}get nodeValue(){return this.data}set nodeValue(e){this.data=e}},Sl=class extends oI{constructor(){super(...arguments),this.type=Dr.Text}get nodeType(){return 3}},Gh=class extends oI{constructor(){super(...arguments),this.type=Dr.Comment}get nodeType(){return 8}},Vh=class extends oI{constructor(e,r){super(r),this.name=e,this.type=Dr.Directive}get nodeType(){return 1}},cI=class extends uD{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}},uI=class extends cI{constructor(){super(...arguments),this.type=Dr.CDATA}get nodeType(){return 4}},ko=class extends cI{constructor(){super(...arguments),this.type=Dr.Root}get nodeType(){return 9}},Kh=class extends cI{constructor(e,r,n=[],s=e==="script"?Dr.Script:e==="style"?Dr.Style:Dr.Tag){super(n),this.name=e,this.attribs=r,this.type=s}get nodeType(){return 1}get tagName(){return this.name}set tagName(e){this.name=e}get attributes(){return Object.keys(this.attribs).map(e=>{var r,n;return{name:e,value:this.attribs[e],namespace:(r=this["x-attribsNamespace"])===null||r===void 0?void 0:r[e],prefix:(n=this["x-attribsPrefix"])===null||n===void 0?void 0:n[e]}})}};function it(t){return P3e(t)}function sb(t){return t.type===Dr.CDATA}function no(t){return t.type===Dr.Text}function zh(t){return t.type===Dr.Comment}function lD(t){return t.type===Dr.Directive}function Au(t){return t.type===Dr.Root}function tn(t){return Object.prototype.hasOwnProperty.call(t,"children")}function lI(t,e=!1){let r;if(no(t))r=new Sl(t.data);else if(zh(t))r=new Gh(t.data);else if(it(t)){let n=e?LG(t.children):[],s=new Kh(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(sb(t)){let n=e?LG(t.children):[],s=new uI(n);n.forEach(i=>i.parent=s),r=s}else if(Au(t)){let n=e?LG(t.children):[],s=new ko(n);n.forEach(i=>i.parent=s),t["x-mode"]&&(s["x-mode"]=t["x-mode"]),r=s}else if(lD(t)){let n=new Vh(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 LG(t){let e=t.map(r=>lI(r,!0));for(let r=1;r<e.length;r++)e[r].prev=e[r-1],e[r-1].next=e[r];return e}var Q3e={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},ib=class{constructor(e,r,n){this.dom=[],this.root=new ko(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,typeof r=="function"&&(n=r,r=Q3e),typeof e=="object"&&(r=e,e=void 0),this.callback=e??null,this.options=r??Q3e,this.elementCB=n??null}onparserinit(e){this.parser=e}onreset(){this.dom=[],this.root=new ko(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null}onend(){this.done||(this.done=!0,this.parser=null,this.handleCallback(null))}onerror(e){this.handleCallback(e)}onclosetag(){this.lastNode=null;let e=this.tagStack.pop();this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),this.elementCB&&this.elementCB(e)}onopentag(e,r){let n=this.options.xmlMode?Dr.Tag:void 0,s=new Kh(e,r,void 0,n);this.addNode(s),this.tagStack.push(s)}ontext(e){let{lastNode:r}=this;if(r&&r.type===Dr.Text)r.data+=e,this.options.withEndIndices&&(r.endIndex=this.parser.endIndex);else{let n=new Sl(e);this.addNode(n),this.lastNode=n}}oncomment(e){if(this.lastNode&&this.lastNode.type===Dr.Comment){this.lastNode.data+=e;return}let r=new Gh(e);this.addNode(r),this.lastNode=r}oncommentend(){this.lastNode=null}oncdatastart(){let e=new Sl(""),r=new uI([e]);this.addNode(r),e.parent=r,this.lastNode=e}oncdataend(){this.lastNode=null}onprocessinginstruction(e,r){let n=new Vh(e,r);this.addNode(n)}handleCallback(e){if(typeof this.callback=="function")this.callback(e,this.dom);else if(e)throw e}addNode(e){let r=this.tagStack[this.tagStack.length-1],n=r.children[r.children.length-1];this.options.withStartIndices&&(e.startIndex=this.parser.startIndex),this.options.withEndIndices&&(e.endIndex=this.parser.endIndex),r.children.push(e),n&&(e.prev=n,n.next=e),e.parent=r,this.lastNode=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 fD=new Uint16Array("\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map(t=>t.charCodeAt(0)));var MG,AJt=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]]),ab=(MG=String.fromCodePoint)!==null&&MG!==void 0?MG: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 dI(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=AJt.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 xJt=32,Sc;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(Sc||(Sc={}));function WG(t){return t>=ei.ZERO&&t<=ei.NINE}function bJt(t){return t>=ei.UPPER_A&&t<=ei.UPPER_F||t>=ei.LOWER_A&&t<=ei.LOWER_F}function _Jt(t){return t>=ei.UPPER_A&&t<=ei.UPPER_Z||t>=ei.LOWER_A&&t<=ei.LOWER_Z||WG(t)}function EJt(t){return t===ei.EQUALS||_Jt(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 cf;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(cf||(cf={}));var pD=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=cf.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)|xJt)===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)+parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r<e.length;){let s=e.charCodeAt(r);if(WG(s)||bJt(s))r+=1;else return this.addToNumericResult(e,n,r,16),this.emitNumericEntity(s,3)}return this.addToNumericResult(e,n,r,16),-1}stateNumericDecimal(e,r){let n=r;for(;r<e.length;){let s=e.charCodeAt(r);if(WG(s))r+=1;else return this.addToNumericResult(e,n,r,10),this.emitNumericEntity(s,2)}return this.addToNumericResult(e,n,r,10),-1}emitNumericEntity(e,r){var n;if(this.consumed<=r)return(n=this.errors)===null||n===void 0||n.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(e===ei.SEMI)this.consumed+=1;else if(this.decodeMode===cf.Strict)return 0;return this.emitCodePoint(dI(this.result),this.consumed),this.errors&&(e!==ei.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,r){let{decodeTree:n}=this,s=n[this.treeIndex],i=(s&Sc.VALUE_LENGTH)>>14;for(;r<e.length;r++,this.excess++){let a=e.charCodeAt(r);if(this.treeIndex=$G(n,s,this.treeIndex+Math.max(1,i),a),this.treeIndex<0)return this.result===0||this.decodeMode===cf.Attribute&&(i===0||EJt(a))?0:this.emitNotTerminatedNamedEntity();if(s=n[this.treeIndex],i=(s&Sc.VALUE_LENGTH)>>14,i!==0){if(a===ei.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==cf.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]&Sc.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]&~Sc.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!==cf.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 H3e(t){let e="",r=new pD(t,n=>e+=ab(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 $G(t,e,r,n){let s=(e&Sc.BRANCH_LENGTH)>>7,i=e&Sc.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(u<n)a=c+1;else if(u>n)o=c-1;else return t[c+s]}return-1}var PVr=H3e(dD),DVr=H3e(fD);function mD(t){for(let e=1;e<t.length;e++)t[e][0]+=t[e-1][0]+1;return t}var vJt=new Map(mD([[9,"&Tab;"],[0,"&NewLine;"],[22,"&excl;"],[0,"&quot;"],[0,"&num;"],[0,"&dollar;"],[0,"&percnt;"],[0,"&amp;"],[0,"&apos;"],[0,"&lpar;"],[0,"&rpar;"],[0,"&ast;"],[0,"&plus;"],[0,"&comma;"],[1,"&period;"],[0,"&sol;"],[10,"&colon;"],[0,"&semi;"],[0,{v:"&lt;",n:8402,o:"&nvlt;"}],[0,{v:"&equals;",n:8421,o:"&bne;"}],[0,{v:"&gt;",n:8402,o:"&nvgt;"}],[0,"&quest;"],[0,"&commat;"],[26,"&lbrack;"],[0,"&bsol;"],[0,"&rbrack;"],[0,"&Hat;"],[0,"&lowbar;"],[0,"&DiacriticalGrave;"],[5,{n:106,o:"&fjlig;"}],[20,"&lbrace;"],[0,"&verbar;"],[0,"&rbrace;"],[34,"&nbsp;"],[0,"&iexcl;"],[0,"&cent;"],[0,"&pound;"],[0,"&curren;"],[0,"&yen;"],[0,"&brvbar;"],[0,"&sect;"],[0,"&die;"],[0,"&copy;"],[0,"&ordf;"],[0,"&laquo;"],[0,"&not;"],[0,"&shy;"],[0,"&circledR;"],[0,"&macr;"],[0,"&deg;"],[0,"&PlusMinus;"],[0,"&sup2;"],[0,"&sup3;"],[0,"&acute;"],[0,"&micro;"],[0,"&para;"],[0,"&centerdot;"],[0,"&cedil;"],[0,"&sup1;"],[0,"&ordm;"],[0,"&raquo;"],[0,"&frac14;"],[0,"&frac12;"],[0,"&frac34;"],[0,"&iquest;"],[0,"&Agrave;"],[0,"&Aacute;"],[0,"&Acirc;"],[0,"&Atilde;"],[0,"&Auml;"],[0,"&angst;"],[0,"&AElig;"],[0,"&Ccedil;"],[0,"&Egrave;"],[0,"&Eacute;"],[0,"&Ecirc;"],[0,"&Euml;"],[0,"&Igrave;"],[0,"&Iacute;"],[0,"&Icirc;"],[0,"&Iuml;"],[0,"&ETH;"],[0,"&Ntilde;"],[0,"&Ograve;"],[0,"&Oacute;"],[0,"&Ocirc;"],[0,"&Otilde;"],[0,"&Ouml;"],[0,"&times;"],[0,"&Oslash;"],[0,"&Ugrave;"],[0,"&Uacute;"],[0,"&Ucirc;"],[0,"&Uuml;"],[0,"&Yacute;"],[0,"&THORN;"],[0,"&szlig;"],[0,"&agrave;"],[0,"&aacute;"],[0,"&acirc;"],[0,"&atilde;"],[0,"&auml;"],[0,"&aring;"],[0,"&aelig;"],[0,"&ccedil;"],[0,"&egrave;"],[0,"&eacute;"],[0,"&ecirc;"],[0,"&euml;"],[0,"&igrave;"],[0,"&iacute;"],[0,"&icirc;"],[0,"&iuml;"],[0,"&eth;"],[0,"&ntilde;"],[0,"&ograve;"],[0,"&oacute;"],[0,"&ocirc;"],[0,"&otilde;"],[0,"&ouml;"],[0,"&div;"],[0,"&oslash;"],[0,"&ugrave;"],[0,"&uacute;"],[0,"&ucirc;"],[0,"&uuml;"],[0,"&yacute;"],[0,"&thorn;"],[0,"&yuml;"],[0,"&Amacr;"],[0,"&amacr;"],[0,"&Abreve;"],[0,"&abreve;"],[0,"&Aogon;"],[0,"&aogon;"],[0,"&Cacute;"],[0,"&cacute;"],[0,"&Ccirc;"],[0,"&ccirc;"],[0,"&Cdot;"],[0,"&cdot;"],[0,"&Ccaron;"],[0,"&ccaron;"],[0,"&Dcaron;"],[0,"&dcaron;"],[0,"&Dstrok;"],[0,"&dstrok;"],[0,"&Emacr;"],[0,"&emacr;"],[2,"&Edot;"],[0,"&edot;"],[0,"&Eogon;"],[0,"&eogon;"],[0,"&Ecaron;"],[0,"&ecaron;"],[0,"&Gcirc;"],[0,"&gcirc;"],[0,"&Gbreve;"],[0,"&gbreve;"],[0,"&Gdot;"],[0,"&gdot;"],[0,"&Gcedil;"],[1,"&Hcirc;"],[0,"&hcirc;"],[0,"&Hstrok;"],[0,"&hstrok;"],[0,"&Itilde;"],[0,"&itilde;"],[0,"&Imacr;"],[0,"&imacr;"],[2,"&Iogon;"],[0,"&iogon;"],[0,"&Idot;"],[0,"&imath;"],[0,"&IJlig;"],[0,"&ijlig;"],[0,"&Jcirc;"],[0,"&jcirc;"],[0,"&Kcedil;"],[0,"&kcedil;"],[0,"&kgreen;"],[0,"&Lacute;"],[0,"&lacute;"],[0,"&Lcedil;"],[0,"&lcedil;"],[0,"&Lcaron;"],[0,"&lcaron;"],[0,"&Lmidot;"],[0,"&lmidot;"],[0,"&Lstrok;"],[0,"&lstrok;"],[0,"&Nacute;"],[0,"&nacute;"],[0,"&Ncedil;"],[0,"&ncedil;"],[0,"&Ncaron;"],[0,"&ncaron;"],[0,"&napos;"],[0,"&ENG;"],[0,"&eng;"],[0,"&Omacr;"],[0,"&omacr;"],[2,"&Odblac;"],[0,"&odblac;"],[0,"&OElig;"],[0,"&oelig;"],[0,"&Racute;"],[0,"&racute;"],[0,"&Rcedil;"],[0,"&rcedil;"],[0,"&Rcaron;"],[0,"&rcaron;"],[0,"&Sacute;"],[0,"&sacute;"],[0,"&Scirc;"],[0,"&scirc;"],[0,"&Scedil;"],[0,"&scedil;"],[0,"&Scaron;"],[0,"&scaron;"],[0,"&Tcedil;"],[0,"&tcedil;"],[0,"&Tcaron;"],[0,"&tcaron;"],[0,"&Tstrok;"],[0,"&tstrok;"],[0,"&Utilde;"],[0,"&utilde;"],[0,"&Umacr;"],[0,"&umacr;"],[0,"&Ubreve;"],[0,"&ubreve;"],[0,"&Uring;"],[0,"&uring;"],[0,"&Udblac;"],[0,"&udblac;"],[0,"&Uogon;"],[0,"&uogon;"],[0,"&Wcirc;"],[0,"&wcirc;"],[0,"&Ycirc;"],[0,"&ycirc;"],[0,"&Yuml;"],[0,"&Zacute;"],[0,"&zacute;"],[0,"&Zdot;"],[0,"&zdot;"],[0,"&Zcaron;"],[0,"&zcaron;"],[19,"&fnof;"],[34,"&imped;"],[63,"&gacute;"],[65,"&jmath;"],[142,"&circ;"],[0,"&caron;"],[16,"&breve;"],[0,"&DiacriticalDot;"],[0,"&ring;"],[0,"&ogon;"],[0,"&DiacriticalTilde;"],[0,"&dblac;"],[51,"&DownBreve;"],[127,"&Alpha;"],[0,"&Beta;"],[0,"&Gamma;"],[0,"&Delta;"],[0,"&Epsilon;"],[0,"&Zeta;"],[0,"&Eta;"],[0,"&Theta;"],[0,"&Iota;"],[0,"&Kappa;"],[0,"&Lambda;"],[0,"&Mu;"],[0,"&Nu;"],[0,"&Xi;"],[0,"&Omicron;"],[0,"&Pi;"],[0,"&Rho;"],[1,"&Sigma;"],[0,"&Tau;"],[0,"&Upsilon;"],[0,"&Phi;"],[0,"&Chi;"],[0,"&Psi;"],[0,"&ohm;"],[7,"&alpha;"],[0,"&beta;"],[0,"&gamma;"],[0,"&delta;"],[0,"&epsi;"],[0,"&zeta;"],[0,"&eta;"],[0,"&theta;"],[0,"&iota;"],[0,"&kappa;"],[0,"&lambda;"],[0,"&mu;"],[0,"&nu;"],[0,"&xi;"],[0,"&omicron;"],[0,"&pi;"],[0,"&rho;"],[0,"&sigmaf;"],[0,"&sigma;"],[0,"&tau;"],[0,"&upsi;"],[0,"&phi;"],[0,"&chi;"],[0,"&psi;"],[0,"&omega;"],[7,"&thetasym;"],[0,"&Upsi;"],[2,"&phiv;"],[0,"&piv;"],[5,"&Gammad;"],[0,"&digamma;"],[18,"&kappav;"],[0,"&rhov;"],[3,"&epsiv;"],[0,"&backepsilon;"],[10,"&IOcy;"],[0,"&DJcy;"],[0,"&GJcy;"],[0,"&Jukcy;"],[0,"&DScy;"],[0,"&Iukcy;"],[0,"&YIcy;"],[0,"&Jsercy;"],[0,"&LJcy;"],[0,"&NJcy;"],[0,"&TSHcy;"],[0,"&KJcy;"],[1,"&Ubrcy;"],[0,"&DZcy;"],[0,"&Acy;"],[0,"&Bcy;"],[0,"&Vcy;"],[0,"&Gcy;"],[0,"&Dcy;"],[0,"&IEcy;"],[0,"&ZHcy;"],[0,"&Zcy;"],[0,"&Icy;"],[0,"&Jcy;"],[0,"&Kcy;"],[0,"&Lcy;"],[0,"&Mcy;"],[0,"&Ncy;"],[0,"&Ocy;"],[0,"&Pcy;"],[0,"&Rcy;"],[0,"&Scy;"],[0,"&Tcy;"],[0,"&Ucy;"],[0,"&Fcy;"],[0,"&KHcy;"],[0,"&TScy;"],[0,"&CHcy;"],[0,"&SHcy;"],[0,"&SHCHcy;"],[0,"&HARDcy;"],[0,"&Ycy;"],[0,"&SOFTcy;"],[0,"&Ecy;"],[0,"&YUcy;"],[0,"&YAcy;"],[0,"&acy;"],[0,"&bcy;"],[0,"&vcy;"],[0,"&gcy;"],[0,"&dcy;"],[0,"&iecy;"],[0,"&zhcy;"],[0,"&zcy;"],[0,"&icy;"],[0,"&jcy;"],[0,"&kcy;"],[0,"&lcy;"],[0,"&mcy;"],[0,"&ncy;"],[0,"&ocy;"],[0,"&pcy;"],[0,"&rcy;"],[0,"&scy;"],[0,"&tcy;"],[0,"&ucy;"],[0,"&fcy;"],[0,"&khcy;"],[0,"&tscy;"],[0,"&chcy;"],[0,"&shcy;"],[0,"&shchcy;"],[0,"&hardcy;"],[0,"&ycy;"],[0,"&softcy;"],[0,"&ecy;"],[0,"&yucy;"],[0,"&yacy;"],[1,"&iocy;"],[0,"&djcy;"],[0,"&gjcy;"],[0,"&jukcy;"],[0,"&dscy;"],[0,"&iukcy;"],[0,"&yicy;"],[0,"&jsercy;"],[0,"&ljcy;"],[0,"&njcy;"],[0,"&tshcy;"],[0,"&kjcy;"],[1,"&ubrcy;"],[0,"&dzcy;"],[7074,"&ensp;"],[0,"&emsp;"],[0,"&emsp13;"],[0,"&emsp14;"],[1,"&numsp;"],[0,"&puncsp;"],[0,"&ThinSpace;"],[0,"&hairsp;"],[0,"&NegativeMediumSpace;"],[0,"&zwnj;"],[0,"&zwj;"],[0,"&lrm;"],[0,"&rlm;"],[0,"&dash;"],[2,"&ndash;"],[0,"&mdash;"],[0,"&horbar;"],[0,"&Verbar;"],[1,"&lsquo;"],[0,"&CloseCurlyQuote;"],[0,"&lsquor;"],[1,"&ldquo;"],[0,"&CloseCurlyDoubleQuote;"],[0,"&bdquo;"],[1,"&dagger;"],[0,"&Dagger;"],[0,"&bull;"],[2,"&nldr;"],[0,"&hellip;"],[9,"&permil;"],[0,"&pertenk;"],[0,"&prime;"],[0,"&Prime;"],[0,"&tprime;"],[0,"&backprime;"],[3,"&lsaquo;"],[0,"&rsaquo;"],[3,"&oline;"],[2,"&caret;"],[1,"&hybull;"],[0,"&frasl;"],[10,"&bsemi;"],[7,"&qprime;"],[7,{v:"&MediumSpace;",n:8202,o:"&ThickSpace;"}],[0,"&NoBreak;"],[0,"&af;"],[0,"&InvisibleTimes;"],[0,"&ic;"],[72,"&euro;"],[46,"&tdot;"],[0,"&DotDot;"],[37,"&complexes;"],[2,"&incare;"],[4,"&gscr;"],[0,"&hamilt;"],[0,"&Hfr;"],[0,"&Hopf;"],[0,"&planckh;"],[0,"&hbar;"],[0,"&imagline;"],[0,"&Ifr;"],[0,"&lagran;"],[0,"&ell;"],[1,"&naturals;"],[0,"&numero;"],[0,"&copysr;"],[0,"&weierp;"],[0,"&Popf;"],[0,"&Qopf;"],[0,"&realine;"],[0,"&real;"],[0,"&reals;"],[0,"&rx;"],[3,"&trade;"],[1,"&integers;"],[2,"&mho;"],[0,"&zeetrf;"],[0,"&iiota;"],[2,"&bernou;"],[0,"&Cayleys;"],[1,"&escr;"],[0,"&Escr;"],[0,"&Fouriertrf;"],[1,"&Mellintrf;"],[0,"&order;"],[0,"&alefsym;"],[0,"&beth;"],[0,"&gimel;"],[0,"&daleth;"],[12,"&CapitalDifferentialD;"],[0,"&dd;"],[0,"&ee;"],[0,"&ii;"],[10,"&frac13;"],[0,"&frac23;"],[0,"&frac15;"],[0,"&frac25;"],[0,"&frac35;"],[0,"&frac45;"],[0,"&frac16;"],[0,"&frac56;"],[0,"&frac18;"],[0,"&frac38;"],[0,"&frac58;"],[0,"&frac78;"],[49,"&larr;"],[0,"&ShortUpArrow;"],[0,"&rarr;"],[0,"&darr;"],[0,"&harr;"],[0,"&updownarrow;"],[0,"&nwarr;"],[0,"&nearr;"],[0,"&LowerRightArrow;"],[0,"&LowerLeftArrow;"],[0,"&nlarr;"],[0,"&nrarr;"],[1,{v:"&rarrw;",n:824,o:"&nrarrw;"}],[0,"&Larr;"],[0,"&Uarr;"],[0,"&Rarr;"],[0,"&Darr;"],[0,"&larrtl;"],[0,"&rarrtl;"],[0,"&LeftTeeArrow;"],[0,"&mapstoup;"],[0,"&map;"],[0,"&DownTeeArrow;"],[1,"&hookleftarrow;"],[0,"&hookrightarrow;"],[0,"&larrlp;"],[0,"&looparrowright;"],[0,"&harrw;"],[0,"&nharr;"],[1,"&lsh;"],[0,"&rsh;"],[0,"&ldsh;"],[0,"&rdsh;"],[1,"&crarr;"],[0,"&cularr;"],[0,"&curarr;"],[2,"&circlearrowleft;"],[0,"&circlearrowright;"],[0,"&leftharpoonup;"],[0,"&DownLeftVector;"],[0,"&RightUpVector;"],[0,"&LeftUpVector;"],[0,"&rharu;"],[0,"&DownRightVector;"],[0,"&dharr;"],[0,"&dharl;"],[0,"&RightArrowLeftArrow;"],[0,"&udarr;"],[0,"&LeftArrowRightArrow;"],[0,"&leftleftarrows;"],[0,"&upuparrows;"],[0,"&rightrightarrows;"],[0,"&ddarr;"],[0,"&leftrightharpoons;"],[0,"&Equilibrium;"],[0,"&nlArr;"],[0,"&nhArr;"],[0,"&nrArr;"],[0,"&DoubleLeftArrow;"],[0,"&DoubleUpArrow;"],[0,"&DoubleRightArrow;"],[0,"&dArr;"],[0,"&DoubleLeftRightArrow;"],[0,"&DoubleUpDownArrow;"],[0,"&nwArr;"],[0,"&neArr;"],[0,"&seArr;"],[0,"&swArr;"],[0,"&lAarr;"],[0,"&rAarr;"],[1,"&zigrarr;"],[6,"&larrb;"],[0,"&rarrb;"],[15,"&DownArrowUpArrow;"],[7,"&loarr;"],[0,"&roarr;"],[0,"&hoarr;"],[0,"&forall;"],[0,"&comp;"],[0,{v:"&part;",n:824,o:"&npart;"}],[0,"&exist;"],[0,"&nexist;"],[0,"&empty;"],[1,"&Del;"],[0,"&Element;"],[0,"&NotElement;"],[1,"&ni;"],[0,"&notni;"],[2,"&prod;"],[0,"&coprod;"],[0,"&sum;"],[0,"&minus;"],[0,"&MinusPlus;"],[0,"&dotplus;"],[1,"&Backslash;"],[0,"&lowast;"],[0,"&compfn;"],[1,"&radic;"],[2,"&prop;"],[0,"&infin;"],[0,"&angrt;"],[0,{v:"&ang;",n:8402,o:"&nang;"}],[0,"&angmsd;"],[0,"&angsph;"],[0,"&mid;"],[0,"&nmid;"],[0,"&DoubleVerticalBar;"],[0,"&NotDoubleVerticalBar;"],[0,"&and;"],[0,"&or;"],[0,{v:"&cap;",n:65024,o:"&caps;"}],[0,{v:"&cup;",n:65024,o:"&cups;"}],[0,"&int;"],[0,"&Int;"],[0,"&iiint;"],[0,"&conint;"],[0,"&Conint;"],[0,"&Cconint;"],[0,"&cwint;"],[0,"&ClockwiseContourIntegral;"],[0,"&awconint;"],[0,"&there4;"],[0,"&becaus;"],[0,"&ratio;"],[0,"&Colon;"],[0,"&dotminus;"],[1,"&mDDot;"],[0,"&homtht;"],[0,{v:"&sim;",n:8402,o:"&nvsim;"}],[0,{v:"&backsim;",n:817,o:"&race;"}],[0,{v:"&ac;",n:819,o:"&acE;"}],[0,"&acd;"],[0,"&VerticalTilde;"],[0,"&NotTilde;"],[0,{v:"&eqsim;",n:824,o:"&nesim;"}],[0,"&sime;"],[0,"&NotTildeEqual;"],[0,"&cong;"],[0,"&simne;"],[0,"&ncong;"],[0,"&ap;"],[0,"&nap;"],[0,"&ape;"],[0,{v:"&apid;",n:824,o:"&napid;"}],[0,"&backcong;"],[0,{v:"&asympeq;",n:8402,o:"&nvap;"}],[0,{v:"&bump;",n:824,o:"&nbump;"}],[0,{v:"&bumpe;",n:824,o:"&nbumpe;"}],[0,{v:"&doteq;",n:824,o:"&nedot;"}],[0,"&doteqdot;"],[0,"&efDot;"],[0,"&erDot;"],[0,"&Assign;"],[0,"&ecolon;"],[0,"&ecir;"],[0,"&circeq;"],[1,"&wedgeq;"],[0,"&veeeq;"],[1,"&triangleq;"],[2,"&equest;"],[0,"&ne;"],[0,{v:"&Congruent;",n:8421,o:"&bnequiv;"}],[0,"&nequiv;"],[1,{v:"&le;",n:8402,o:"&nvle;"}],[0,{v:"&ge;",n:8402,o:"&nvge;"}],[0,{v:"&lE;",n:824,o:"&nlE;"}],[0,{v:"&gE;",n:824,o:"&ngE;"}],[0,{v:"&lnE;",n:65024,o:"&lvertneqq;"}],[0,{v:"&gnE;",n:65024,o:"&gvertneqq;"}],[0,{v:"&ll;",n:new Map(mD([[824,"&nLtv;"],[7577,"&nLt;"]]))}],[0,{v:"&gg;",n:new Map(mD([[824,"&nGtv;"],[7577,"&nGt;"]]))}],[0,"&between;"],[0,"&NotCupCap;"],[0,"&nless;"],[0,"&ngt;"],[0,"&nle;"],[0,"&nge;"],[0,"&lesssim;"],[0,"&GreaterTilde;"],[0,"&nlsim;"],[0,"&ngsim;"],[0,"&LessGreater;"],[0,"&gl;"],[0,"&NotLessGreater;"],[0,"&NotGreaterLess;"],[0,"&pr;"],[0,"&sc;"],[0,"&prcue;"],[0,"&sccue;"],[0,"&PrecedesTilde;"],[0,{v:"&scsim;",n:824,o:"&NotSucceedsTilde;"}],[0,"&NotPrecedes;"],[0,"&NotSucceeds;"],[0,{v:"&sub;",n:8402,o:"&NotSubset;"}],[0,{v:"&sup;",n:8402,o:"&NotSuperset;"}],[0,"&nsub;"],[0,"&nsup;"],[0,"&sube;"],[0,"&supe;"],[0,"&NotSubsetEqual;"],[0,"&NotSupersetEqual;"],[0,{v:"&subne;",n:65024,o:"&varsubsetneq;"}],[0,{v:"&supne;",n:65024,o:"&varsupsetneq;"}],[1,"&cupdot;"],[0,"&UnionPlus;"],[0,{v:"&sqsub;",n:824,o:"&NotSquareSubset;"}],[0,{v:"&sqsup;",n:824,o:"&NotSquareSuperset;"}],[0,"&sqsube;"],[0,"&sqsupe;"],[0,{v:"&sqcap;",n:65024,o:"&sqcaps;"}],[0,{v:"&sqcup;",n:65024,o:"&sqcups;"}],[0,"&CirclePlus;"],[0,"&CircleMinus;"],[0,"&CircleTimes;"],[0,"&osol;"],[0,"&CircleDot;"],[0,"&circledcirc;"],[0,"&circledast;"],[1,"&circleddash;"],[0,"&boxplus;"],[0,"&boxminus;"],[0,"&boxtimes;"],[0,"&dotsquare;"],[0,"&RightTee;"],[0,"&dashv;"],[0,"&DownTee;"],[0,"&bot;"],[1,"&models;"],[0,"&DoubleRightTee;"],[0,"&Vdash;"],[0,"&Vvdash;"],[0,"&VDash;"],[0,"&nvdash;"],[0,"&nvDash;"],[0,"&nVdash;"],[0,"&nVDash;"],[0,"&prurel;"],[1,"&LeftTriangle;"],[0,"&RightTriangle;"],[0,{v:"&LeftTriangleEqual;",n:8402,o:"&nvltrie;"}],[0,{v:"&RightTriangleEqual;",n:8402,o:"&nvrtrie;"}],[0,"&origof;"],[0,"&imof;"],[0,"&multimap;"],[0,"&hercon;"],[0,"&intcal;"],[0,"&veebar;"],[1,"&barvee;"],[0,"&angrtvb;"],[0,"&lrtri;"],[0,"&bigwedge;"],[0,"&bigvee;"],[0,"&bigcap;"],[0,"&bigcup;"],[0,"&diam;"],[0,"&sdot;"],[0,"&sstarf;"],[0,"&divideontimes;"],[0,"&bowtie;"],[0,"&ltimes;"],[0,"&rtimes;"],[0,"&leftthreetimes;"],[0,"&rightthreetimes;"],[0,"&backsimeq;"],[0,"&curlyvee;"],[0,"&curlywedge;"],[0,"&Sub;"],[0,"&Sup;"],[0,"&Cap;"],[0,"&Cup;"],[0,"&fork;"],[0,"&epar;"],[0,"&lessdot;"],[0,"&gtdot;"],[0,{v:"&Ll;",n:824,o:"&nLl;"}],[0,{v:"&Gg;",n:824,o:"&nGg;"}],[0,{v:"&leg;",n:65024,o:"&lesg;"}],[0,{v:"&gel;",n:65024,o:"&gesl;"}],[2,"&cuepr;"],[0,"&cuesc;"],[0,"&NotPrecedesSlantEqual;"],[0,"&NotSucceedsSlantEqual;"],[0,"&NotSquareSubsetEqual;"],[0,"&NotSquareSupersetEqual;"],[2,"&lnsim;"],[0,"&gnsim;"],[0,"&precnsim;"],[0,"&scnsim;"],[0,"&nltri;"],[0,"&NotRightTriangle;"],[0,"&nltrie;"],[0,"&NotRightTriangleEqual;"],[0,"&vellip;"],[0,"&ctdot;"],[0,"&utdot;"],[0,"&dtdot;"],[0,"&disin;"],[0,"&isinsv;"],[0,"&isins;"],[0,{v:"&isindot;",n:824,o:"&notindot;"}],[0,"&notinvc;"],[0,"&notinvb;"],[1,{v:"&isinE;",n:824,o:"&notinE;"}],[0,"&nisd;"],[0,"&xnis;"],[0,"&nis;"],[0,"&notnivc;"],[0,"&notnivb;"],[6,"&barwed;"],[0,"&Barwed;"],[1,"&lceil;"],[0,"&rceil;"],[0,"&LeftFloor;"],[0,"&rfloor;"],[0,"&drcrop;"],[0,"&dlcrop;"],[0,"&urcrop;"],[0,"&ulcrop;"],[0,"&bnot;"],[1,"&profline;"],[0,"&profsurf;"],[1,"&telrec;"],[0,"&target;"],[5,"&ulcorn;"],[0,"&urcorn;"],[0,"&dlcorn;"],[0,"&drcorn;"],[2,"&frown;"],[0,"&smile;"],[9,"&cylcty;"],[0,"&profalar;"],[7,"&topbot;"],[6,"&ovbar;"],[1,"&solbar;"],[60,"&angzarr;"],[51,"&lmoustache;"],[0,"&rmoustache;"],[2,"&OverBracket;"],[0,"&bbrk;"],[0,"&bbrktbrk;"],[37,"&OverParenthesis;"],[0,"&UnderParenthesis;"],[0,"&OverBrace;"],[0,"&UnderBrace;"],[2,"&trpezium;"],[4,"&elinters;"],[59,"&blank;"],[164,"&circledS;"],[55,"&boxh;"],[1,"&boxv;"],[9,"&boxdr;"],[3,"&boxdl;"],[3,"&boxur;"],[3,"&boxul;"],[3,"&boxvr;"],[7,"&boxvl;"],[7,"&boxhd;"],[7,"&boxhu;"],[7,"&boxvh;"],[19,"&boxH;"],[0,"&boxV;"],[0,"&boxdR;"],[0,"&boxDr;"],[0,"&boxDR;"],[0,"&boxdL;"],[0,"&boxDl;"],[0,"&boxDL;"],[0,"&boxuR;"],[0,"&boxUr;"],[0,"&boxUR;"],[0,"&boxuL;"],[0,"&boxUl;"],[0,"&boxUL;"],[0,"&boxvR;"],[0,"&boxVr;"],[0,"&boxVR;"],[0,"&boxvL;"],[0,"&boxVl;"],[0,"&boxVL;"],[0,"&boxHd;"],[0,"&boxhD;"],[0,"&boxHD;"],[0,"&boxHu;"],[0,"&boxhU;"],[0,"&boxHU;"],[0,"&boxvH;"],[0,"&boxVh;"],[0,"&boxVH;"],[19,"&uhblk;"],[3,"&lhblk;"],[3,"&block;"],[8,"&blk14;"],[0,"&blk12;"],[0,"&blk34;"],[13,"&square;"],[8,"&blacksquare;"],[0,"&EmptyVerySmallSquare;"],[1,"&rect;"],[0,"&marker;"],[2,"&fltns;"],[1,"&bigtriangleup;"],[0,"&blacktriangle;"],[0,"&triangle;"],[2,"&blacktriangleright;"],[0,"&rtri;"],[3,"&bigtriangledown;"],[0,"&blacktriangledown;"],[0,"&dtri;"],[2,"&blacktriangleleft;"],[0,"&ltri;"],[6,"&loz;"],[0,"&cir;"],[32,"&tridot;"],[2,"&bigcirc;"],[8,"&ultri;"],[0,"&urtri;"],[0,"&lltri;"],[0,"&EmptySmallSquare;"],[0,"&FilledSmallSquare;"],[8,"&bigstar;"],[0,"&star;"],[7,"&phone;"],[49,"&female;"],[1,"&male;"],[29,"&spades;"],[2,"&clubs;"],[1,"&hearts;"],[0,"&diamondsuit;"],[3,"&sung;"],[2,"&flat;"],[0,"&natural;"],[0,"&sharp;"],[163,"&check;"],[3,"&cross;"],[8,"&malt;"],[21,"&sext;"],[33,"&VerticalSeparator;"],[25,"&lbbrk;"],[0,"&rbbrk;"],[84,"&bsolhsub;"],[0,"&suphsol;"],[28,"&LeftDoubleBracket;"],[0,"&RightDoubleBracket;"],[0,"&lang;"],[0,"&rang;"],[0,"&Lang;"],[0,"&Rang;"],[0,"&loang;"],[0,"&roang;"],[7,"&longleftarrow;"],[0,"&longrightarrow;"],[0,"&longleftrightarrow;"],[0,"&DoubleLongLeftArrow;"],[0,"&DoubleLongRightArrow;"],[0,"&DoubleLongLeftRightArrow;"],[1,"&longmapsto;"],[2,"&dzigrarr;"],[258,"&nvlArr;"],[0,"&nvrArr;"],[0,"&nvHarr;"],[0,"&Map;"],[6,"&lbarr;"],[0,"&bkarow;"],[0,"&lBarr;"],[0,"&dbkarow;"],[0,"&drbkarow;"],[0,"&DDotrahd;"],[0,"&UpArrowBar;"],[0,"&DownArrowBar;"],[2,"&Rarrtl;"],[2,"&latail;"],[0,"&ratail;"],[0,"&lAtail;"],[0,"&rAtail;"],[0,"&larrfs;"],[0,"&rarrfs;"],[0,"&larrbfs;"],[0,"&rarrbfs;"],[2,"&nwarhk;"],[0,"&nearhk;"],[0,"&hksearow;"],[0,"&hkswarow;"],[0,"&nwnear;"],[0,"&nesear;"],[0,"&seswar;"],[0,"&swnwar;"],[8,{v:"&rarrc;",n:824,o:"&nrarrc;"}],[1,"&cudarrr;"],[0,"&ldca;"],[0,"&rdca;"],[0,"&cudarrl;"],[0,"&larrpl;"],[2,"&curarrm;"],[0,"&cularrp;"],[7,"&rarrpl;"],[2,"&harrcir;"],[0,"&Uarrocir;"],[0,"&lurdshar;"],[0,"&ldrushar;"],[2,"&LeftRightVector;"],[0,"&RightUpDownVector;"],[0,"&DownLeftRightVector;"],[0,"&LeftUpDownVector;"],[0,"&LeftVectorBar;"],[0,"&RightVectorBar;"],[0,"&RightUpVectorBar;"],[0,"&RightDownVectorBar;"],[0,"&DownLeftVectorBar;"],[0,"&DownRightVectorBar;"],[0,"&LeftUpVectorBar;"],[0,"&LeftDownVectorBar;"],[0,"&LeftTeeVector;"],[0,"&RightTeeVector;"],[0,"&RightUpTeeVector;"],[0,"&RightDownTeeVector;"],[0,"&DownLeftTeeVector;"],[0,"&DownRightTeeVector;"],[0,"&LeftUpTeeVector;"],[0,"&LeftDownTeeVector;"],[0,"&lHar;"],[0,"&uHar;"],[0,"&rHar;"],[0,"&dHar;"],[0,"&luruhar;"],[0,"&ldrdhar;"],[0,"&ruluhar;"],[0,"&rdldhar;"],[0,"&lharul;"],[0,"&llhard;"],[0,"&rharul;"],[0,"&lrhard;"],[0,"&udhar;"],[0,"&duhar;"],[0,"&RoundImplies;"],[0,"&erarr;"],[0,"&simrarr;"],[0,"&larrsim;"],[0,"&rarrsim;"],[0,"&rarrap;"],[0,"&ltlarr;"],[1,"&gtrarr;"],[0,"&subrarr;"],[1,"&suplarr;"],[0,"&lfisht;"],[0,"&rfisht;"],[0,"&ufisht;"],[0,"&dfisht;"],[5,"&lopar;"],[0,"&ropar;"],[4,"&lbrke;"],[0,"&rbrke;"],[0,"&lbrkslu;"],[0,"&rbrksld;"],[0,"&lbrksld;"],[0,"&rbrkslu;"],[0,"&langd;"],[0,"&rangd;"],[0,"&lparlt;"],[0,"&rpargt;"],[0,"&gtlPar;"],[0,"&ltrPar;"],[3,"&vzigzag;"],[1,"&vangrt;"],[0,"&angrtvbd;"],[6,"&ange;"],[0,"&range;"],[0,"&dwangle;"],[0,"&uwangle;"],[0,"&angmsdaa;"],[0,"&angmsdab;"],[0,"&angmsdac;"],[0,"&angmsdad;"],[0,"&angmsdae;"],[0,"&angmsdaf;"],[0,"&angmsdag;"],[0,"&angmsdah;"],[0,"&bemptyv;"],[0,"&demptyv;"],[0,"&cemptyv;"],[0,"&raemptyv;"],[0,"&laemptyv;"],[0,"&ohbar;"],[0,"&omid;"],[0,"&opar;"],[1,"&operp;"],[1,"&olcross;"],[0,"&odsold;"],[1,"&olcir;"],[0,"&ofcir;"],[0,"&olt;"],[0,"&ogt;"],[0,"&cirscir;"],[0,"&cirE;"],[0,"&solb;"],[0,"&bsolb;"],[3,"&boxbox;"],[3,"&trisb;"],[0,"&rtriltri;"],[0,{v:"&LeftTriangleBar;",n:824,o:"&NotLeftTriangleBar;"}],[0,{v:"&RightTriangleBar;",n:824,o:"&NotRightTriangleBar;"}],[11,"&iinfin;"],[0,"&infintie;"],[0,"&nvinfin;"],[4,"&eparsl;"],[0,"&smeparsl;"],[0,"&eqvparsl;"],[5,"&blacklozenge;"],[8,"&RuleDelayed;"],[1,"&dsol;"],[9,"&bigodot;"],[0,"&bigoplus;"],[0,"&bigotimes;"],[1,"&biguplus;"],[1,"&bigsqcup;"],[5,"&iiiint;"],[0,"&fpartint;"],[2,"&cirfnint;"],[0,"&awint;"],[0,"&rppolint;"],[0,"&scpolint;"],[0,"&npolint;"],[0,"&pointint;"],[0,"&quatint;"],[0,"&intlarhk;"],[10,"&pluscir;"],[0,"&plusacir;"],[0,"&simplus;"],[0,"&plusdu;"],[0,"&plussim;"],[0,"&plustwo;"],[1,"&mcomma;"],[0,"&minusdu;"],[2,"&loplus;"],[0,"&roplus;"],[0,"&Cross;"],[0,"&timesd;"],[0,"&timesbar;"],[1,"&smashp;"],[0,"&lotimes;"],[0,"&rotimes;"],[0,"&otimesas;"],[0,"&Otimes;"],[0,"&odiv;"],[0,"&triplus;"],[0,"&triminus;"],[0,"&tritime;"],[0,"&intprod;"],[2,"&amalg;"],[0,"&capdot;"],[1,"&ncup;"],[0,"&ncap;"],[0,"&capand;"],[0,"&cupor;"],[0,"&cupcap;"],[0,"&capcup;"],[0,"&cupbrcap;"],[0,"&capbrcup;"],[0,"&cupcup;"],[0,"&capcap;"],[0,"&ccups;"],[0,"&ccaps;"],[2,"&ccupssm;"],[2,"&And;"],[0,"&Or;"],[0,"&andand;"],[0,"&oror;"],[0,"&orslope;"],[0,"&andslope;"],[1,"&andv;"],[0,"&orv;"],[0,"&andd;"],[0,"&ord;"],[1,"&wedbar;"],[6,"&sdote;"],[3,"&simdot;"],[2,{v:"&congdot;",n:824,o:"&ncongdot;"}],[0,"&easter;"],[0,"&apacir;"],[0,{v:"&apE;",n:824,o:"&napE;"}],[0,"&eplus;"],[0,"&pluse;"],[0,"&Esim;"],[0,"&Colone;"],[0,"&Equal;"],[1,"&ddotseq;"],[0,"&equivDD;"],[0,"&ltcir;"],[0,"&gtcir;"],[0,"&ltquest;"],[0,"&gtquest;"],[0,{v:"&leqslant;",n:824,o:"&nleqslant;"}],[0,{v:"&geqslant;",n:824,o:"&ngeqslant;"}],[0,"&lesdot;"],[0,"&gesdot;"],[0,"&lesdoto;"],[0,"&gesdoto;"],[0,"&lesdotor;"],[0,"&gesdotol;"],[0,"&lap;"],[0,"&gap;"],[0,"&lne;"],[0,"&gne;"],[0,"&lnap;"],[0,"&gnap;"],[0,"&lEg;"],[0,"&gEl;"],[0,"&lsime;"],[0,"&gsime;"],[0,"&lsimg;"],[0,"&gsiml;"],[0,"&lgE;"],[0,"&glE;"],[0,"&lesges;"],[0,"&gesles;"],[0,"&els;"],[0,"&egs;"],[0,"&elsdot;"],[0,"&egsdot;"],[0,"&el;"],[0,"&eg;"],[2,"&siml;"],[0,"&simg;"],[0,"&simlE;"],[0,"&simgE;"],[0,{v:"&LessLess;",n:824,o:"&NotNestedLessLess;"}],[0,{v:"&GreaterGreater;",n:824,o:"&NotNestedGreaterGreater;"}],[1,"&glj;"],[0,"&gla;"],[0,"&ltcc;"],[0,"&gtcc;"],[0,"&lescc;"],[0,"&gescc;"],[0,"&smt;"],[0,"&lat;"],[0,{v:"&smte;",n:65024,o:"&smtes;"}],[0,{v:"&late;",n:65024,o:"&lates;"}],[0,"&bumpE;"],[0,{v:"&PrecedesEqual;",n:824,o:"&NotPrecedesEqual;"}],[0,{v:"&sce;",n:824,o:"&NotSucceedsEqual;"}],[2,"&prE;"],[0,"&scE;"],[0,"&precneqq;"],[0,"&scnE;"],[0,"&prap;"],[0,"&scap;"],[0,"&precnapprox;"],[0,"&scnap;"],[0,"&Pr;"],[0,"&Sc;"],[0,"&subdot;"],[0,"&supdot;"],[0,"&subplus;"],[0,"&supplus;"],[0,"&submult;"],[0,"&supmult;"],[0,"&subedot;"],[0,"&supedot;"],[0,{v:"&subE;",n:824,o:"&nsubE;"}],[0,{v:"&supE;",n:824,o:"&nsupE;"}],[0,"&subsim;"],[0,"&supsim;"],[2,{v:"&subnE;",n:65024,o:"&varsubsetneqq;"}],[0,{v:"&supnE;",n:65024,o:"&varsupsetneqq;"}],[2,"&csub;"],[0,"&csup;"],[0,"&csube;"],[0,"&csupe;"],[0,"&subsup;"],[0,"&supsub;"],[0,"&subsub;"],[0,"&supsup;"],[0,"&suphsub;"],[0,"&supdsub;"],[0,"&forkv;"],[0,"&topfork;"],[0,"&mlcp;"],[8,"&Dashv;"],[1,"&Vdashl;"],[0,"&Barv;"],[0,"&vBar;"],[0,"&vBarv;"],[1,"&Vbar;"],[0,"&Not;"],[0,"&bNot;"],[0,"&rnmid;"],[0,"&cirmid;"],[0,"&midcir;"],[0,"&topcir;"],[0,"&nhpar;"],[0,"&parsim;"],[9,{v:"&parsl;",n:8421,o:"&nparsl;"}],[44343,{n:new Map(mD([[56476,"&Ascr;"],[1,"&Cscr;"],[0,"&Dscr;"],[2,"&Gscr;"],[2,"&Jscr;"],[0,"&Kscr;"],[2,"&Nscr;"],[0,"&Oscr;"],[0,"&Pscr;"],[0,"&Qscr;"],[1,"&Sscr;"],[0,"&Tscr;"],[0,"&Uscr;"],[0,"&Vscr;"],[0,"&Wscr;"],[0,"&Xscr;"],[0,"&Yscr;"],[0,"&Zscr;"],[0,"&ascr;"],[0,"&bscr;"],[0,"&cscr;"],[0,"&dscr;"],[1,"&fscr;"],[1,"&hscr;"],[0,"&iscr;"],[0,"&jscr;"],[0,"&kscr;"],[0,"&lscr;"],[0,"&mscr;"],[0,"&nscr;"],[1,"&pscr;"],[0,"&qscr;"],[0,"&rscr;"],[0,"&sscr;"],[0,"&tscr;"],[0,"&uscr;"],[0,"&vscr;"],[0,"&wscr;"],[0,"&xscr;"],[0,"&yscr;"],[0,"&zscr;"],[52,"&Afr;"],[0,"&Bfr;"],[1,"&Dfr;"],[0,"&Efr;"],[0,"&Ffr;"],[0,"&Gfr;"],[2,"&Jfr;"],[0,"&Kfr;"],[0,"&Lfr;"],[0,"&Mfr;"],[0,"&Nfr;"],[0,"&Ofr;"],[0,"&Pfr;"],[0,"&Qfr;"],[1,"&Sfr;"],[0,"&Tfr;"],[0,"&Ufr;"],[0,"&Vfr;"],[0,"&Wfr;"],[0,"&Xfr;"],[0,"&Yfr;"],[1,"&afr;"],[0,"&bfr;"],[0,"&cfr;"],[0,"&dfr;"],[0,"&efr;"],[0,"&ffr;"],[0,"&gfr;"],[0,"&hfr;"],[0,"&ifr;"],[0,"&jfr;"],[0,"&kfr;"],[0,"&lfr;"],[0,"&mfr;"],[0,"&nfr;"],[0,"&ofr;"],[0,"&pfr;"],[0,"&qfr;"],[0,"&rfr;"],[0,"&sfr;"],[0,"&tfr;"],[0,"&ufr;"],[0,"&vfr;"],[0,"&wfr;"],[0,"&xfr;"],[0,"&yfr;"],[0,"&zfr;"],[0,"&Aopf;"],[0,"&Bopf;"],[1,"&Dopf;"],[0,"&Eopf;"],[0,"&Fopf;"],[0,"&Gopf;"],[1,"&Iopf;"],[0,"&Jopf;"],[0,"&Kopf;"],[0,"&Lopf;"],[0,"&Mopf;"],[1,"&Oopf;"],[3,"&Sopf;"],[0,"&Topf;"],[0,"&Uopf;"],[0,"&Vopf;"],[0,"&Wopf;"],[0,"&Xopf;"],[0,"&Yopf;"],[1,"&aopf;"],[0,"&bopf;"],[0,"&copf;"],[0,"&dopf;"],[0,"&eopf;"],[0,"&fopf;"],[0,"&gopf;"],[0,"&hopf;"],[0,"&iopf;"],[0,"&jopf;"],[0,"&kopf;"],[0,"&lopf;"],[0,"&mopf;"],[0,"&nopf;"],[0,"&oopf;"],[0,"&popf;"],[0,"&qopf;"],[0,"&ropf;"],[0,"&sopf;"],[0,"&topf;"],[0,"&uopf;"],[0,"&vopf;"],[0,"&wopf;"],[0,"&xopf;"],[0,"&yopf;"],[0,"&zopf;"]]))}],[8906,"&fflig;"],[0,"&filig;"],[0,"&fllig;"],[0,"&ffilig;"],[0,"&ffllig;"]]));var UG=/["&'<>$\x80-\uFFFF]/g,G3e=new Map([[34,"&quot;"],[38,"&amp;"],[39,"&apos;"],[60,"&lt;"],[62,"&gt;"]]),V3e=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 fI(t){let e="",r=0,n;for(;(n=UG.exec(t))!==null;){let s=n.index,i=t.charCodeAt(s),a=G3e.get(i);a!==void 0?(e+=t.substring(r,s)+a,r=s+1):(e+=`${t.substring(r,s)}&#x${V3e(t,s).toString(16)};`,r=UG.lastIndex+=+((i&64512)===55296))}return e+t.substr(r)}function FG(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 K3e=FG(/[&<>'"]/g,G3e),hD=FG(/["&\u00A0]/g,new Map([[34,"&quot;"],[38,"&amp;"],[160,"&nbsp;"]])),gD=FG(/[&<>\u00A0]/g,new Map([[38,"&amp;"],[60,"&lt;"],[62,"&gt;"],[160,"&nbsp;"]]));var z3e;(function(t){t[t.XML=0]="XML",t[t.HTML=1]="HTML"})(z3e||(z3e={}));var Y3e;(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"})(Y3e||(Y3e={}));var Z3e=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])),eDe=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 IJt=new Set(["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"]);function CJt(t){return t.replace(/"/g,"&quot;")}function TJt(t,e){var r;if(!t)return;let n=((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)===!1?CJt:e.xmlMode||e.encodeEntities!=="utf8"?fI:hD;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=eDe.get(s))!==null&&a!==void 0?a:s),!e.emptyAttrs&&!e.xmlMode&&o===""?s:`${s}="${n(o)}"`}).join(" ")}var tDe=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]);function QG(t,e={}){let r="length"in t?t:[t],n="";for(let s=0;s<r.length;s++)n+=wJt(r[s],e);return n}var yD=QG;function wJt(t,e){switch(t.type){case D3e:return QG(t.children,e);case q3e:case L3e:return kJt(t);case M3e:return BJt(t);case F3e:return DJt(t);case W3e:case $3e:case U3e:return OJt(t,e);case B3e:return PJt(t,e)}}var RJt=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignObject","desc","title"]),NJt=new Set(["svg","math"]);function OJt(t,e){var r;e.xmlMode==="foreign"&&(t.name=(r=Z3e.get(t.name))!==null&&r!==void 0?r:t.name,t.parent&&RJt.has(t.parent.name)&&(e={...e,xmlMode:!1})),!e.xmlMode&&NJt.has(t.name)&&(e={...e,xmlMode:"foreign"});let n=`<${t.name}`,s=TJt(t.attribs,e);return s&&(n+=` ${s}`),t.children.length===0&&(e.xmlMode?e.selfClosingTags!==!1:e.selfClosingTags&&tDe.has(t.name))?(e.xmlMode||(n+=" "),n+="/>"):(n+=">",t.children.length>0&&(n+=QG(t.children,e)),(e.xmlMode||!tDe.has(t.name))&&(n+=`</${t.name}>`)),n}function kJt(t){return`<${t.data}>`}function PJt(t,e){var r;let n=t.data||"";return((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)!==!1&&!(!e.xmlMode&&t.parent&&IJt.has(t.parent.name))&&(n=e.xmlMode||e.encodeEntities!=="utf8"?fI(n):gD(n)),n}function DJt(t){return`<![CDATA[${t.children[0].data}]]>`}function BJt(t){return`<!--${t.data}-->`}function rDe(t,e){return yD(t,e)}function LJt(t,e){return tn(t)?t.children.map(r=>rDe(r,e)).join(""):""}function AD(t){return Array.isArray(t)?t.map(AD).join(""):it(t)?t.name==="br"?`
`:AD(t.children):sb(t)?AD(t.children):no(t)?t.data:""}function uf(t){return Array.isArray(t)?t.map(uf).join(""):tn(t)&&!zh(t)?uf(t.children):no(t)?t.data:""}function pI(t){return Array.isArray(t)?t.map(pI).join(""):tn(t)&&(t.type===Dr.Tag||sb(t))?pI(t.children):no(t)?t.data:""}function ob(t){return tn(t)?t.children:[]}function nDe(t){return t.parent||null}function HG(t){let e=nDe(t);if(e!=null)return ob(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 MJt(t,e){var r;return(r=t.attribs)===null||r===void 0?void 0:r[e]}function WJt(t,e){return t.attribs!=null&&Object.prototype.hasOwnProperty.call(t.attribs,e)&&t.attribs[e]!=null}function $Jt(t){return t.name}function xD(t){let{next:e}=t;for(;e!==null&&!it(e);)({next:e}=e);return e}function bD(t){let{prev:e}=t;for(;e!==null&&!it(e);)({prev:e}=e);return e}function lf(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 UJt(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 FJt(t,e){if(lf(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 qJt(t,e){lf(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 jJt(t,e){if(lf(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 QJt(t,e){lf(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 cb(t,e,r=!0,n=1/0){return _D(t,Array.isArray(e)?e:[e],r,n)}function _D(t,e,r,n){let s=[],i=[Array.isArray(e)?e:[e]],a=[0];for(;;){if(a[0]>=i[0].length){if(a.length===1)return s;i.shift(),a.shift();continue}let o=i[0][a[0]++];if(t(o)&&(s.push(o),--n<=0))return s;r&&tn(o)&&o.children.length>0&&(a.unshift(0),i.unshift(o.children))}}function HJt(t,e){return e.find(t)}function ED(t,e,r=!0){let n=Array.isArray(e)?e:[e];for(let s=0;s<n.length;s++){let i=n[s];if(it(i)&&t(i))return i;if(r&&tn(i)&&i.children.length>0){let a=ED(t,i.children,!0);if(a)return a}}return null}function sDe(t,e){return(Array.isArray(e)?e:[e]).some(r=>it(r)&&t(r)||tn(r)&&sDe(t,r.children))}function GJt(t,e){let r=[],n=[Array.isArray(e)?e:[e]],s=[0];for(;;){if(s[0]>=n[0].length){if(n.length===1)return r;n.shift(),s.shift();continue}let i=n[0][s[0]++];it(i)&&t(i)&&r.push(i),tn(i)&&i.children.length>0&&(s.unshift(0),n.unshift(i.children))}}var vD={tag_name(t){return typeof t=="function"?e=>it(e)&&t(e.name):t==="*"?it:e=>it(e)&&e.name===t},tag_type(t){return typeof t=="function"?e=>t(e.type):e=>e.type===t},tag_contains(t){return typeof t=="function"?e=>no(e)&&t(e.data):e=>no(e)&&e.data===t}};function GG(t,e){return typeof e=="function"?r=>it(r)&&e(r.attribs[t]):r=>it(r)&&r.attribs[t]===e}function VJt(t,e){return r=>t(r)||e(r)}function iDe(t){let e=Object.keys(t).map(r=>{let n=t[r];return Object.prototype.hasOwnProperty.call(vD,r)?vD[r](n):GG(r,n)});return e.length===0?null:e.reduce(VJt)}function KJt(t,e){let r=iDe(t);return r?r(e):!0}function zJt(t,e,r,n=1/0){let s=iDe(t);return s?cb(s,e,r,n):[]}function YJt(t,e,r=!0){return Array.isArray(e)||(e=[e]),ED(GG("id",t),e,r)}function Yh(t,e,r=!0,n=1/0){return cb(vD.tag_name(t),e,r,n)}function JJt(t,e,r=!0,n=1/0){return cb(GG("class",t),e,r,n)}function XJt(t,e,r=!0,n=1/0){return cb(vD.tag_type(t),e,r,n)}function ZJt(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 Ic;(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"})(Ic||(Ic={}));function aDe(t,e){let r=[],n=[];if(t===e)return 0;let s=tn(t)?t:t.parent;for(;s;)r.unshift(s),s=s.parent;for(s=tn(e)?e:e.parent;s;)n.unshift(s),s=s.parent;let i=Math.min(r.length,n.length),a=0;for(;a<i&&r[a]===n[a];)a++;if(a===0)return Ic.DISCONNECTED;let o=r[a-1],c=o.children,u=r[a],l=n[a];return c.indexOf(u)>c.indexOf(l)?o===e?Ic.FOLLOWING|Ic.CONTAINED_BY:Ic.FOLLOWING:o===t?Ic.PRECEDING|Ic.CONTAINS:Ic.PRECEDING}function v0(t){return t=t.filter((e,r,n)=>!n.includes(e,r+1)),t.sort((e,r)=>{let n=aDe(e,r);return n&Ic.PRECEDING?-1:n&Ic.FOLLOWING?1:0}),t}function VG(t){let e=SD(sXt,t);return e?e.name==="feed"?eXt(e):tXt(e):null}function eXt(t){var e;let r=t.children,n={type:"atom",items:Yh("entry",r).map(a=>{var o;let{children:c}=a,u={media:oDe(c)};so(u,"id","id",c),so(u,"title","title",c);let l=(o=SD("link",c))===null||o===void 0?void 0:o.attribs.href;l&&(u.link=l);let d=S0("summary",c)||S0("content",c);d&&(u.description=d);let f=S0("updated",c);return f&&(u.pubDate=new Date(f)),u})};so(n,"id","id",r),so(n,"title","title",r);let s=(e=SD("link",r))===null||e===void 0?void 0:e.attribs.href;s&&(n.link=s),so(n,"description","subtitle",r);let i=S0("updated",r);return i&&(n.updated=new Date(i)),so(n,"author","email",r,!0),n}function tXt(t){var e,r;let n=(r=(e=SD("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:Yh("item",t.children).map(a=>{let{children:o}=a,c={media:oDe(o)};so(c,"id","guid",o),so(c,"title","title",o),so(c,"link","link",o),so(c,"description","description",o);let u=S0("pubDate",o)||S0("dc:date",o);return u&&(c.pubDate=new Date(u)),c})};so(s,"title","title",n),so(s,"link","link",n),so(s,"description","description",n);let i=S0("lastBuildDate",n);return i&&(s.updated=new Date(i)),so(s,"author","managingEditor",n,!0),s}var rXt=["url","type","lang"],nXt=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function oDe(t){return Yh("media:content",t).map(e=>{let{attribs:r}=e,n={medium:r.medium,isDefault:!!r.isDefault};for(let s of rXt)r[s]&&(n[s]=r[s]);for(let s of nXt)r[s]&&(n[s]=parseInt(r[s],10));return r.expression&&(n.expression=r.expression),n})}function SD(t,e){return Yh(t,e,!0,1)[0]}function S0(t,e,r=!1){return uf(Yh(t,e,r,1)).trim()}function so(t,e,r,n,s=!1){let i=S0(r,n,s);i&&(t[e]=i)}function sXt(t){return t==="rss"||t==="feed"||t==="rdf:RDF"}function uDe(t,e,r){return t?t(e??t._root.children,null,void 0,r).toString():""}function iXt(t,e){return!e&&typeof t=="object"&&t!=null&&!("length"in t)&&!("type"in t)}function KG(t,e){let r=iXt(t)?(e=t,void 0):t,n={...iI,...this===null||this===void 0?void 0:this._options,...aI(e??{})};return uDe(this,r,n)}function zG(t){let e={...this._options,xmlMode:!0};return uDe(this,t,e)}function df(t){let e=t||(this?this.root():[]),r="";for(let n=0;n<e.length;n++)r+=uf(e[n]);return r}function aXt(t,e,r=typeof e=="boolean"?e:!1){if(!t||typeof t!="string")return null;typeof e=="boolean"&&(r=e);let n=this.load(t,iI,!1);return r||n("script").remove(),n.root()[0].children.slice()}function oXt(){return this(this._root)}function YG(t,e){if(e===t)return!1;let r=e;for(;r&&r!==r.parent;)if(r=r.parent,r===t)return!0;return!1}function cXt(t,e){if(!cDe(t)||!cDe(e))return;let r=t.length,n=+e.length;for(let s=0;s<n;s++)t[r++]=e[s];return t.length=r,t}function cDe(t){if(Array.isArray(t))return!0;if(typeof t!="object"||!Object.prototype.hasOwnProperty.call(t,"length")||typeof t.length!="number"||t.length<0)return!1;for(let e=0;e<t.length;e++)if(!(e in t))return!1;return!0}var eV={};us(eV,{addClass:()=>yDe,attr:()=>lXt,data:()=>fXt,hasClass:()=>hXt,prop:()=>dXt,removeAttr:()=>mXt,removeClass:()=>ADe,toggleClass:()=>xDe,val:()=>pXt});function Po(t){return t.cheerio!=null}function lDe(t){return t.replace(/[_.-](\w|$)/g,(e,r)=>r.toUpperCase())}function dDe(t){return t.replace(/[A-Z]/g,"-$&").toLowerCase()}function mn(t,e){let r=t.length;for(let n=0;n<r;n++)e(t[n],n);return t}function ID(t){let e="length"in t?Array.prototype.map.call(t,n=>lI(n,!0)):[lI(t,!0)],r=new ko(e);return e.forEach(n=>{n.parent=r}),e}var Jh;(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"})(Jh||(Jh={}));function mI(t){let e=t.indexOf("<");if(e<0||e>t.length-3)return!1;let r=t.charCodeAt(e+1);return(r>=Jh.LowerA&&r<=Jh.LowerZ||r>=Jh.UpperA&&r<=Jh.UpperZ||r===Jh.Exclamation)&&t.includes(">",e+2)}var ub=Object.prototype.hasOwnProperty,hI=/\s+/,JG="data-",fDe={null:null,true:!0,false:!1},ZG=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,uXt=/^{[^]*}$|^\[[^]*]$/;function CD(t,e,r){var n;if(!(!t||!it(t))){if((n=t.attribs)!==null&&n!==void 0||(t.attribs={}),!e)return t.attribs;if(ub.call(t.attribs,e))return!r&&ZG.test(e)?e:t.attribs[e];if(t.name==="option"&&e==="value")return df(t.children);if(t.name==="input"&&(t.attribs.type==="radio"||t.attribs.type==="checkbox")&&e==="value")return"on"}}function lb(t,e,r){r===null?gDe(t,e):t.attribs[e]=`${r}`}function lXt(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)=>{it(r)&&lb(r,t,e.call(r,n,r.attribs[t]))})}return mn(this,r=>{it(r)&&(typeof t=="object"?Object.keys(t).forEach(n=>{let s=t[n];lb(r,n,s)}):lb(r,t,e))})}return arguments.length>1?this:CD(this[0],t,this.options.xmlMode)}function pDe(t,e,r){return e in t?t[e]:!r&&ZG.test(e)?CD(t,e,!1)!==void 0:CD(t,e,r)}function XG(t,e,r,n){e in t?t[e]=r:lb(t,e,!n&&ZG.test(e)?r?"":null:`${r}`)}function dXt(t,e){var r;if(typeof t=="string"&&e===void 0){let n=this[0];if(!n||!it(n))return;switch(t){case"style":{let s=this.css(),i=Object.keys(s);return i.forEach((a,o)=>{s[o]=a}),s.length=i.length,s}case"tagName":case"nodeName":return n.name.toUpperCase();case"href":case"src":{let s=(r=n.attribs)===null||r===void 0?void 0:r[t];return typeof URL<"u"&&(t==="href"&&(n.tagName==="a"||n.name==="link")||t==="src"&&(n.tagName==="img"||n.tagName==="iframe"||n.tagName==="audio"||n.tagName==="video"||n.tagName==="source"))&&s!==void 0&&this.options.baseURI?new URL(s,this.options.baseURI).href:s}case"innerText":return pI(n);case"textContent":return uf(n);case"outerHTML":return this.clone().wrap("<container />").parent().html();case"innerHTML":return this.html();default:return pDe(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)=>{it(n)&&XG(n,t,e.call(n,s,pDe(n,t,this.options.xmlMode)),this.options.xmlMode)})}return mn(this,n=>{it(n)&&(typeof t=="object"?Object.keys(t).forEach(s=>{let i=t[s];XG(n,s,i,this.options.xmlMode)}):XG(n,t,e,this.options.xmlMode))})}}function mDe(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 hDe(t,e){let r,n,s;e==null?(r=Object.keys(t.attribs).filter(i=>i.startsWith(JG)),n=r.map(i=>lDe(i.slice(JG.length)))):(r=[JG+dDe(e)],n=[e]);for(let i=0;i<r.length;++i){let a=r[i],o=n[i];if(ub.call(t.attribs,a)&&!ub.call(t.data,o)){if(s=t.attribs[a],ub.call(fDe,s))s=fDe[s];else if(s===String(Number(s)))s=Number(s);else if(uXt.test(s))try{s=JSON.parse(s)}catch{}t.data[o]=s}}return e==null?t.data:s}function fXt(t,e){var r;let n=this[0];if(!n||!it(n))return;let s=n;return(r=s.data)!==null&&r!==void 0||(s.data={}),t?typeof t=="object"||e!==void 0?(mn(this,i=>{it(i)&&(typeof t=="object"?mDe(i,t):mDe(i,t,e))}),this):ub.call(s.data,t)?s.data[t]:hDe(s,t):hDe(s)}function pXt(t){let e=arguments.length===0,r=this[0];if(!r||!it(r))return e?void 0:this;switch(r.name){case"textarea":return this.text(t);case"select":{let n=this.find("option:selected");if(!e){if(this.attr("multiple")==null&&typeof t=="object")return this;this.find("option").removeAttr("selected");let s=typeof t!="object"?[t]:t;for(let i=0;i<s.length;i++)this.find(`option[value="${s[i]}"]`).attr("selected","");return this}return this.attr("multiple")?n.toArray().map(s=>df(s.children)):n.attr("value")}case"input":case"option":return e?this.attr("value"):this.attr("value",t)}}function gDe(t,e){!t.attribs||!ub.call(t.attribs,e)||delete t.attribs[e]}function TD(t){return t?t.trim().split(hI):[]}function mXt(t){let e=TD(t);for(let r=0;r<e.length;r++)mn(this,n=>{it(n)&&gDe(n,e[r])});return this}function hXt(t){return this.toArray().some(e=>{let r=it(e)&&e.attribs.class,n=-1;if(r&&t.length)for(;(n=r.indexOf(t,n+1))>-1;){let s=n+t.length;if((n===0||hI.test(r[n-1]))&&(s===r.length||hI.test(r[s])))return!0}return!1})}function yDe(t){if(typeof t=="function")return mn(this,(n,s)=>{if(it(n)){let i=n.attribs.class||"";yDe.call([n],t.call(n,s,i))}});if(!t||typeof t!="string")return this;let e=t.split(hI),r=this.length;for(let n=0;n<r;n++){let s=this[n];if(!it(s))continue;let i=CD(s,"class",!1);if(!i)lb(s,"class",e.join(" ").trim());else{let a=` ${i} `;for(let o=0;o<e.length;o++){let c=`${e[o]} `;a.includes(` ${c}`)||(a+=c)}lb(s,"class",a.trim())}}return this}function ADe(t){if(typeof t=="function")return mn(this,(s,i)=>{it(s)&&ADe.call([s],t.call(s,i,s.attribs.class||""))});let e=TD(t),r=e.length,n=arguments.length===0;return mn(this,s=>{if(it(s))if(n)s.attribs.class="";else{let i=TD(s.attribs.class),a=!1;for(let o=0;o<r;o++){let c=i.indexOf(e[o]);c>=0&&(i.splice(c,1),a=!0,o--)}a&&(s.attribs.class=i.join(" "))}})}function xDe(t,e){if(typeof t=="function")return mn(this,(a,o)=>{it(a)&&xDe.call([a],t.call(a,o,a.attribs.class||"",e),e)});if(!t||typeof t!="string")return this;let r=t.split(hI),n=r.length,s=typeof e=="boolean"?e?1:-1:0,i=this.length;for(let a=0;a<i;a++){let o=this[a];if(!it(o))continue;let c=TD(o.attribs.class);for(let u=0;u<n;u++){let l=c.indexOf(r[u]);s>=0&&l<0?c.push(r[u]):s<=0&&l>=0&&c.splice(l,1)}o.attribs.class=c.join(" ")}return this}var vV={};us(vV,{add:()=>vZt,addBack:()=>SZt,children:()=>oZt,closest:()=>ZXt,contents:()=>cZt,each:()=>uZt,end:()=>EZt,eq:()=>yZt,filter:()=>dZt,filterArray:()=>EV,find:()=>zXt,first:()=>hZt,get:()=>AZt,has:()=>mZt,index:()=>bZt,is:()=>fZt,last:()=>gZt,map:()=>lZt,next:()=>eZt,nextAll:()=>tZt,nextUntil:()=>rZt,not:()=>pZt,parent:()=>YXt,parents:()=>JXt,parentsUntil:()=>XXt,prev:()=>nZt,prevAll:()=>sZt,prevUntil:()=>iZt,siblings:()=>aZt,slice:()=>_Zt,toArray:()=>xZt});var ao=Ce(mb(),1);var fV=Ce(T0(),1);var xu=Ce(mb(),1),pf=Ce(T0(),1);var Aa=Ce(mb(),1),DDe=new Map([[Aa.SelectorType.Universal,50],[Aa.SelectorType.Tag,30],[Aa.SelectorType.Attribute,1],[Aa.SelectorType.Pseudo,0]]);function yI(t){return!DDe.has(t.type)}var NXt=new Map([[Aa.AttributeAction.Exists,10],[Aa.AttributeAction.Equals,8],[Aa.AttributeAction.Not,7],[Aa.AttributeAction.Start,6],[Aa.AttributeAction.End,6],[Aa.AttributeAction.Any,5]]);function rV(t){let e=t.map(BDe);for(let r=1;r<t.length;r++){let n=e[r];if(!(n<0))for(let s=r-1;s>=0&&n<e[s];s--){let i=t[s+1];t[s+1]=t[s],t[s]=i,e[s+1]=e[s],e[s]=n}}}function BDe(t){var e,r;let n=(e=DDe.get(t.type))!==null&&e!==void 0?e:-1;return t.type===Aa.SelectorType.Attribute?(n=(r=NXt.get(t.action))!==null&&r!==void 0?r:4,t.action===Aa.AttributeAction.Equals&&t.name==="id"&&(n=9),t.ignoreCase&&(n>>=1)):t.type===Aa.SelectorType.Pseudo&&(t.data?t.name==="has"||t.name==="contains"?n=0:Array.isArray(t.data)?(n=Math.min(...t.data.map(s=>Math.min(...s.map(BDe)))),n<0&&(n=0)):n=2:n=3),n}var AI=Ce(T0(),1),OXt=/[-[\]{}()*+?.,\\^$|#\s]/g;function LDe(t){return t.replace(OXt,"\\$&")}var kXt=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 Xh(t,e){return typeof t.ignoreCase=="boolean"?t.ignoreCase:t.ignoreCase==="quirks"?!!e.quirksMode:!e.xmlMode&&kXt.has(t.name)}var MDe={equals(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return Xh(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 Xh(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 AI.default.falseFunc;let a=new RegExp(`(?:^|\\s)${LDe(i)}(?:$|\\s)`,Xh(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?AI.default.falseFunc:Xh(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?AI.default.falseFunc:Xh(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 AI.default.falseFunc;if(Xh(e,r)){let a=new RegExp(LDe(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):Xh(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 FDe=Ce(mb(),1);var PXt=new Set([9,10,12,13,32]),WDe=48,DXt=57;function $De(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<t.length&&t.charAt(e)==="n"&&(e++,r=n*(s??1),o(),e<t.length?(n=i(),o(),s=a()):n=s=0),s===null||e<t.length)throw new Error(`n-th rule couldn't be parsed ('${t}')`);return[r,n*s];function i(){return t.charAt(e)==="-"?(e++,-1):(t.charAt(e)==="+"&&e++,1)}function a(){let c=e,u=0;for(;e<t.length&&t.charCodeAt(e)>=WDe&&t.charCodeAt(e)<=DXt;)u=u*10+(t.charCodeAt(e)-WDe),e++;return e===c?null:u}function o(){for(;e<t.length&&PXt.has(t.charCodeAt(e));)e++}}var nV=Ce(T0(),1);function UDe(t){let e=t[0],r=t[1]-1;if(r<0&&e<=0)return nV.default.falseFunc;if(e===-1)return i=>i<=r;if(e===0)return i=>i===r;if(e===1)return r<0?nV.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 hb(t){return UDe($De(t))}var io=Ce(T0(),1);function ND(t,e){return r=>{let n=e.getParent(r);return n!=null&&e.isTag(n)&&t(r)}}var gb={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=hb(e);return s===io.default.falseFunc?io.default.falseFunc:s===io.default.trueFunc?ND(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u<o.length&&!n(a,o[u]);u++)r.isTag(o[u])&&c++;return s(c)&&t(a)}},"nth-last-child"(t,e,{adapter:r,equals:n}){let s=hb(e);return s===io.default.falseFunc?io.default.falseFunc:s===io.default.trueFunc?ND(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=o.length-1;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=hb(e);return s===io.default.falseFunc?io.default.falseFunc:s===io.default.trueFunc?ND(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u<o.length;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)}},"nth-last-of-type"(t,e,{adapter:r,equals:n}){let s=hb(e);return s===io.default.falseFunc?io.default.falseFunc:s===io.default.trueFunc?ND(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=o.length-1;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?gb.root(t,e,r):n.length===1?i=>s(n[0],i)&&t(i):i=>n.includes(i)&&t(i)},hover:sV("isHovered"),visited:sV("isVisited"),active:sV("isActive")};function sV(t){return function(r,n,{adapter:s}){let i=s[t];return typeof i!="function"?io.default.falseFunc:function(o){return i(o)&&r(o)}}}var xI={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<n.length;i++){let a=n[i];if(r(t,a))return!0;if(e.isTag(a)&&e.getName(a)===s)break}return!1},"last-of-type"(t,{adapter:e,equals:r}){let n=e.getSiblings(t),s=e.getName(t);for(let i=n.length-1;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 iV(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 OD={"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 Cc=Ce(T0(),1);var cV={};function uV(t,e){return t===Cc.default.falseFunc?Cc.default.falseFunc:r=>e.isTag(r)&&t(r)}function lV(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 oV(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 aV=(t,e,r,n,s)=>{let i=s(e,oV(r),n);return i===Cc.default.trueFunc?t:i===Cc.default.falseFunc?Cc.default.falseFunc:a=>i(a)&&t(a)},kD={is:aV,matches:aV,where:aV,not(t,e,r,n,s){let i=s(e,oV(r),n);return i===Cc.default.falseFunc?t:i===Cc.default.trueFunc?Cc.default.falseFunc:a=>!i(a)&&t(a)},has(t,e,r,n,s){let{adapter:i}=r,a=oV(r);a.relativeSelector=!0;let o=e.some(l=>l.some(yI))?[cV]:void 0,c=s(e,a,o);if(c===Cc.default.falseFunc)return Cc.default.falseFunc;let u=uV(c,i);if(o&&c!==Cc.default.trueFunc){let{shouldTestNextSiblings:l=!1}=c;return d=>{if(!t(d))return!1;o[0]=d;let f=i.getChildren(d),m=l?[...f,...lV(d,i)]:f;return i.existsOne(u,m)}}return l=>t(l)&&i.existsOne(u,i.getChildren(l))}};function qDe(t,e,r,n,s){var i;let{name:a,data:o}=e;if(Array.isArray(o)){if(!(a in kD))throw new Error(`Unknown pseudo-class :${a}(${o})`);return kD[a](t,o,r,n,s)}let c=(i=r.pseudos)===null||i===void 0?void 0:i[a],u=typeof c=="string"?c:OD[a];if(typeof u=="string"){if(o!=null)throw new Error(`Pseudo ${a} doesn't have any arguments`);let l=(0,FDe.parse)(u);return kD.is(t,l,r,n,s)}if(typeof c=="function")return iV(c,a,o,1),l=>c(l,o)&&t(l);if(a in gb)return gb[a](t,o,r,n);if(a in xI){let l=xI[a];return iV(l,a,o,2),d=>l(d,r,o)&&t(d)}throw new Error(`Unknown pseudo-class :${a}`)}var Tc=Ce(mb(),1);function dV(t,e){let r=e.getParent(t);return r&&e.isTag(r)?r:null}function jDe(t,e,r,n,s){let{adapter:i,equals:a}=r;switch(e.type){case Tc.SelectorType.PseudoElement:throw new Error("Pseudo-elements are not supported by css-select");case Tc.SelectorType.ColumnCombinator:throw new Error("Column combinators are not yet supported by css-select");case Tc.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()),MDe[e.action](t,e,r)}case Tc.SelectorType.Pseudo:return qDe(t,e,r,n,s);case Tc.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 Tc.SelectorType.Descendant:{if(r.cacheResults===!1||typeof WeakSet>"u")return function(u){let l=u;for(;l=dV(l,i);)if(t(l))return!0;return!1};let o=new WeakSet;return function(u){let l=u;for(;l=dV(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=dV(u,i));return!1};case Tc.SelectorType.Parent:return function(c){return i.getChildren(c).some(u=>i.isTag(u)&&t(u))};case Tc.SelectorType.Child:return function(c){let u=i.getParent(c);return u!=null&&i.isTag(u)&&t(u)};case Tc.SelectorType.Sibling:return function(c){let u=i.getSiblings(c);for(let l=0;l<u.length;l++){let d=u[l];if(a(c,d))break;if(i.isTag(d)&&t(d))return!0}return!1};case Tc.SelectorType.Adjacent:return i.prevElementSibling?function(c){let u=i.prevElementSibling(c);return u!=null&&t(u)}:function(c){let u=i.getSiblings(c),l;for(let d=0;d<u.length;d++){let f=u[d];if(a(c,f))break;i.isTag(f)&&(l=f)}return!!l&&t(l)};case Tc.SelectorType.Universal:{if(e.namespace!=null&&e.namespace!=="*")throw new Error("Namespaced universal selectors are not yet supported by css-select");return t}}}function QDe(t,e,r){let n=PD(t,e,r);return uV(n,e.adapter)}function PD(t,e,r){let n=typeof t=="string"?(0,xu.parse)(t):t;return DD(n,e,r)}function HDe(t){return t.type===xu.SelectorType.Pseudo&&(t.name==="scope"||Array.isArray(t.data)&&t.data.some(e=>e.some(HDe)))}var BXt={type:xu.SelectorType.Descendant},LXt={type:"_flexibleDescendant"},MXt={type:xu.SelectorType.Pseudo,name:"scope",data:null};function WXt(t,{adapter:e},r){let n=!!r?.every(s=>{let i=e.isTag(s)&&e.getParent(s);return s===cV||i&&e.isTag(i)});for(let s of t){if(!(s.length>0&&yI(s[0])&&s[0].type!==xu.SelectorType.Descendant))if(n&&!s.some(HDe))s.unshift(BXt);else continue;s.unshift(MXt)}}function DD(t,e,r){var n;t.forEach(rV),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)WXt(t,e,i);else if(t.some(c=>c.length>0&&yI(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!==xu.SelectorType.Pseudo||u.name!=="scope"||(s&&l.type===xu.SelectorType.Descendant?c[1]=LXt:(l.type===xu.SelectorType.Adjacent||l.type===xu.SelectorType.Sibling)&&(a=!0))}return $Xt(c,e,i)}).reduce(UXt,pf.default.falseFunc);return o.shouldTestNextSiblings=a,o}function $Xt(t,e,r){var n;return t.reduce((s,i)=>s===pf.default.falseFunc?pf.default.falseFunc:jDe(s,i,e,r,DD),(n=e.rootFunc)!==null&&n!==void 0?n:pf.default.trueFunc)}function UXt(t,e){return e===pf.default.falseFunc||t===pf.default.trueFunc?t:t===pf.default.falseFunc||e===pf.default.trueFunc?e:function(n){return t(n)||e(n)}}var GDe=(t,e)=>t===e,FXt={adapter:I0,equals:GDe};function VDe(t){var e,r,n,s;let i=t??FXt;return(e=i.adapter)!==null&&e!==void 0||(i.adapter=I0),(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:GDe),i}function pV(t){return function(r,n,s){let i=VDe(n);return t(r,i,s)}}var pzr=pV(QDe),mzr=pV(PD),BD=pV(DD);function KDe(t){return function(r,n,s){let i=VDe(s);typeof r!="function"&&(r=PD(r,i,n));let a=LD(n,i.adapter,r.shouldTestNextSiblings);return t(r,a,i)}}function LD(t,e,r=!1){return r&&(t=qXt(t,e)),Array.isArray(t)?e.removeSubsets(t):e.getChildren(t)}function qXt(t,e){let r=Array.isArray(t)?t.slice(0):[t],n=r.length;for(let s=0;s<n;s++){let i=lV(r[s],e);r.push(...i)}return r}var hzr=KDe((t,e,r)=>t===fV.default.falseFunc||!e||e.length===0?[]:r.adapter.findAll(t,e)),gzr=KDe((t,e,r)=>t===fV.default.falseFunc||!e||e.length===0?null:r.adapter.findOne(t,e));var WD=Ce(T0(),1);var jXt=new Set(["first","last","eq","gt","nth","lt","even","odd"]);function yb(t){return t.type!=="pseudo"?!1:jXt.has(t.name)?!0:t.name==="not"&&Array.isArray(t.data)?t.data.some(e=>e.some(yb)):!1}function zDe(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 YDe(t){for(;t.parent;)t=t.parent;return t}function MD(t){let e=[],r=[];for(let n of t)n.some(yb)?e.push(n):r.push(n);return[r,e]}var QXt={type:ao.SelectorType.Universal,namespace:null},HXt={type:ao.SelectorType.Pseudo,name:"scope",data:null};function gV(t,e,r={}){return yV([t],e,r)}function yV(t,e,r={}){if(typeof e=="function")return t.some(e);let[n,s]=MD((0,ao.parse)(e));return n.length>0&&t.some(BD(n,r))||s.some(i=>XDe(i,t,r).length>0)}function GXt(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)<e.length?[s<0?e[e.length+s]:e[s]]:[];case"gt":return isFinite(s)?e.slice(s+1):[];case"even":return e.filter((i,a)=>a%2===0);case"odd":return e.filter((i,a)=>a%2===1);case"not":{let i=new Set(JDe(r,e,n));return e.filter(a=>!i.has(a))}}}function AV(t,e,r={}){return JDe((0,ao.parse)(t),e,r)}function JDe(t,e,r){if(e.length===0)return[];let[n,s]=MD(t),i;if(n.length){let a=hV(e,n,r);if(s.length===0)return a;a.length&&(i=new Set(a))}for(let a=0;a<s.length&&i?.size!==e.length;a++){let o=s[a];if((i?e.filter(l=>it(l)&&!i.has(l)):e).length===0)break;let u=XDe(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 XDe(t,e,r){var n;if(t.some(ao.isTraversal)){let s=(n=r.root)!==null&&n!==void 0?n:YDe(e[0]),i={...r,context:e,relativeSelector:!1};return t.push(HXt),$D(s,t,i,!0,e.length)}return $D(e,t,r,!1,e.length)}function ZDe(t,e,r={},n=1/0){if(typeof t=="function")return e4e(e,t);let[s,i]=MD((0,ao.parse)(t)),a=i.map(o=>$D(e,o,r,!0,n));return s.length&&a.push(mV(e,s,r,n)),a.length===0?[]:a.length===1?a[0]:v0(a.reduce((o,c)=>[...o,...c]))}function $D(t,e,r,n,s){let i=e.findIndex(yb),a=e.slice(0,i),o=e[i],c=e.length-1===i?s:1/0,u=zDe(o.name,o.data,c);if(u===0)return[];let d=(a.length===0&&!Array.isArray(t)?ob(t).filter(it):a.length===0?(Array.isArray(t)?t:[t]).filter(it):n||a.some(ao.isTraversal)?mV(t,[a],r,u):hV(t,[a],r)).slice(0,u),f=GXt(o.name,d,o.data,r);if(f.length===0||e.length===i+1)return f;let m=e.slice(i+1),p=m.some(ao.isTraversal);if(p){if((0,ao.isTraversal)(m[0])){let{type:h}=m[0];(h===ao.SelectorType.Sibling||h===ao.SelectorType.Adjacent)&&(f=LD(f,I0,!0)),m.unshift(QXt)}r={...r,relativeSelector:!1,rootFunc:h=>f.includes(h)}}else r.rootFunc&&r.rootFunc!==WD.trueFunc&&(r={...r,rootFunc:WD.trueFunc});return m.some(yb)?$D(f,m,r,!1,s):p?mV(f,[m],r,s):hV(f,[m],r)}function mV(t,e,r,n){let s=BD(e,r,t);return e4e(t,s,n)}function e4e(t,e,r=1/0){let n=LD(t,I0,e.shouldTestNextSiblings);return _D(s=>it(s)&&e(s),n,!0,r)}function hV(t,e,r){let n=(Array.isArray(t)?t:[t]).filter(it);if(n.length===0)return n;let s=BD(e,r);return s===WD.trueFunc?n:n.filter(s)}var KXt=/^\s*[~+]/;function zXt(t){var e;if(!t)return this._make([]);let r=this.toArray();if(typeof t!="string"){let i=Po(t)?t.toArray():[t];return this._make(i.filter(a=>r.some(o=>YG(o,a))))}let n=KXt.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(ZDe(t,n,s))}function xV(t){return function(e,...r){return function(n){var s;let i=t(e,this);return n&&(i=EV(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 bI=xV((t,e)=>{let r=[];for(let n=0;n<e.length;n++){let s=t(e[n]);r.push(s)}return new Array().concat(...r)}),bV=xV((t,e)=>{let r=[];for(let n=0;n<e.length;n++){let s=t(e[n]);s!==null&&r.push(s)}return r});function _V(t,...e){let r=null,n=xV((s,i)=>{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=>gV(o,s,this.options):s?_I(s):null;let a=n.call(this,i);return r=null,a}}function Ab(t){return Array.from(new Set(t))}var YXt=bV(({parent:t})=>t&&!Au(t)?t:null,Ab),JXt=bI(t=>{let e=[];for(;t.parent&&!Au(t.parent);)e.push(t.parent),t=t.parent;return e},v0,t=>t.reverse()),XXt=_V(({parent:t})=>t&&!Au(t)?t:null,v0,t=>t.reverse());function ZXt(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=>gV(i,t,n):_I(t);return mn(this,i=>{for(;i&&it(i);){if(s(i,0)){r.includes(i)||r.push(i);break}i=i.parent}}),this._make(r)}var eZt=bV(t=>xD(t)),tZt=bI(t=>{let e=[];for(;t.next;)t=t.next,it(t)&&e.push(t);return e},Ab),rZt=_V(t=>xD(t),Ab),nZt=bV(t=>bD(t)),sZt=bI(t=>{let e=[];for(;t.prev;)t=t.prev,it(t)&&e.push(t);return e},Ab),iZt=_V(t=>bD(t),Ab),aZt=bI(t=>HG(t).filter(e=>it(e)&&e!==t),v0),oZt=bI(t=>ob(t).filter(it),Ab);function cZt(){let t=this.toArray().reduce((e,r)=>tn(r)?e.concat(r.children):e,[]);return this._make(t)}function uZt(t){let e=0,r=this.length;for(;e<r&&t.call(this[e],e,this[e])!==!1;)++e;return this}function lZt(t){let e=[];for(let r=0;r<this.length;r++){let n=this[r],s=t.call(n,r,n);s!=null&&(e=e.concat(s))}return this._make(e)}function _I(t){return typeof t=="function"?(e,r)=>t.call(e,r,e):Po(t)?e=>Array.prototype.includes.call(t,e):function(e){return t===e}}function dZt(t){var e;return this._make(EV(this.toArray(),t,this.options.xmlMode,(e=this._root)===null||e===void 0?void 0:e[0]))}function EV(t,e,r,n){return typeof e=="string"?AV(e,t,{xmlMode:r,root:n}):t.filter(_I(e))}function fZt(t){let e=this.toArray();return typeof t=="string"?yV(e.filter(it),t,this.options):t?e.some(_I(t)):!1}function pZt(t){let e=this.toArray();if(typeof t=="string"){let r=new Set(AV(t,e,this.options));e=e.filter(n=>!r.has(n))}else{let r=_I(t);e=e.filter((n,s)=>!r(n,s))}return this._make(e)}function mZt(t){return this.filter(typeof t=="string"?`:has(${t})`:(e,r)=>this._make(r).find(t).length>0)}function hZt(){return this.length>1?this._make(this[0]):this}function gZt(){return this.length>0?this._make(this[this.length-1]):this}function yZt(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 AZt(t){return t==null?this.toArray():this[t<0?this.length+t:t]}function xZt(){return Array.prototype.slice.call(this)}function bZt(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=Po(t)?t[0]:t),Array.prototype.indexOf.call(e,r)}function _Zt(t,e){return this._make(Array.prototype.slice.call(this,t,e))}function EZt(){var t;return(t=this.prevObject)!==null&&t!==void 0?t:this._make([])}function vZt(t,e){let r=this._make(t,e),n=v0([...this.get(),...r.get()]);return this._make(n)}function SZt(t){return this.prevObject?this.add(t?this.prevObject.filter(t):this.prevObject):this}var SV={};us(SV,{_makeDomArray:()=>IZt,after:()=>DZt,append:()=>wZt,appendTo:()=>CZt,before:()=>LZt,clone:()=>QZt,empty:()=>UZt,html:()=>FZt,insertAfter:()=>BZt,insertBefore:()=>MZt,prepend:()=>RZt,prependTo:()=>TZt,remove:()=>WZt,replaceWith:()=>$Zt,text:()=>jZt,toString:()=>qZt,unwrap:()=>kZt,wrap:()=>NZt,wrapAll:()=>PZt,wrapInner:()=>OZt});function t4e(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)&&Au(a))return a;let o=new ko([]);return w0(a,o),o}}function w0(t,e){let r=Array.isArray(t)?t:[t];e?e.children=r:e=null;for(let n=0;n<r.length;n++){let s=r[n];s.parent&&s.parent.children!==r&&lf(s),e?(s.prev=r[n-1]||null,s.next=r[n+1]||null):s.prev=s.next=null,s.parent=e}return e}function IZt(t,e){return t==null?[]:Po(t)?e?ID(t.get()):t.get():Array.isArray(t)?t.reduce((r,n)=>r.concat(this._makeDomArray(n,e)),[]):typeof t=="string"?this._parse(t,this.options,!1,null).children:e?ID([t]):[t]}function r4e(t){return function(...e){let r=this.length-1;return mn(this,(n,s)=>{if(!tn(n))return;let i=typeof e[0]=="function"?e[0].call(n,s,this._render(n.children)):e,a=this._makeDomArray(i,s<r);t(a,n.children,n)})}}function R0(t,e,r,n,s){var i,a;let o=[e,r,...n],c=e===0?null:t[e-1],u=e+r>=t.length?null:t[e+r];for(let l=0;l<n.length;++l){let d=n[l],f=d.parent;if(f){let p=f.children.indexOf(d);p>-1&&(f.children.splice(p,1),s===f&&e>p&&o[0]--)}d.parent=s,d.prev&&(d.prev.next=(i=d.next)!==null&&i!==void 0?i:null),d.next&&(d.next.prev=(a=d.prev)!==null&&a!==void 0?a:null),d.prev=l===0?c:n[l-1],d.next=l===n.length-1?u:n[l+1]}return c&&(c.next=n[0]),u&&(u.prev=n[n.length-1]),t.splice(...o)}function CZt(t){return(Po(t)?t:this._make(t)).append(this),this}function TZt(t){return(Po(t)?t:this._make(t)).prepend(this),this}var wZt=r4e((t,e,r)=>{R0(e,e.length,0,t,r)}),RZt=r4e((t,e,r)=>{R0(e,0,0,t,r)});function n4e(t){return function(e){let r=this.length-1,n=this.parents().last();for(let s=0;s<this.length;s++){let i=this[s],a=typeof e=="function"?e.call(i,s,i):typeof e=="string"&&!mI(e)?n.find(e).clone():e,[o]=this._makeDomArray(a,s<r);if(!o||!tn(o))continue;let c=o,u=0;for(;u<c.children.length;){let l=c.children[u];it(l)?(c=l,u=0):u++}t(i,c,[o])}return this}}var NZt=n4e((t,e,r)=>{let{parent:n}=t;if(!n)return;let s=n.children,i=s.indexOf(t);w0([t],e),R0(s,i,0,r,n)}),OZt=n4e((t,e,r)=>{tn(t)&&(w0(t.children,e),w0(r,t))});function kZt(t){return this.parent(t).not("body").each((e,r)=>{this._make(r).replaceWith(r.children)}),this}function PZt(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<r.length;i++)r[i].type==="tag"&&(n=r[i]);let s=0;for(;n&&s<n.children.length;){let i=n.children[s];i.type==="tag"?(n=i,s=0):s++}n&&this._make(n).append(this)}return this}function DZt(...t){let e=this.length-1;return mn(this,(r,n)=>{let{parent:s}=r;if(!tn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,c=this._makeDomArray(o,n<e);R0(i,a+1,0,c,s)})}function BZt(t){typeof t=="string"&&(t=this._make(t)),this.remove();let e=[];return this._makeDomArray(t).forEach(r=>{let n=this.clone().toArray(),{parent:s}=r;if(!s)return;let i=s.children,a=i.indexOf(r);a<0||(R0(i,a+1,0,n,s),e.push(...n))}),this._make(e)}function LZt(...t){let e=this.length-1;return mn(this,(r,n)=>{let{parent:s}=r;if(!tn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,c=this._makeDomArray(o,n<e);R0(i,a,0,c,s)})}function MZt(t){let e=this._make(t);this.remove();let r=[];return mn(e,n=>{let s=this.clone().toArray(),{parent:i}=n;if(!i)return;let a=i.children,o=a.indexOf(n);o<0||(R0(a,o,0,s,i),r.push(...s))}),this._make(r)}function WZt(t){let e=t?this.filter(t):this;return mn(e,r=>{lf(r),r.prev=r.next=r.parent=null}),this}function $Zt(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);w0(a,null);let o=s.indexOf(e);R0(s,o,1,a,n),a.includes(e)||(e.parent=e.prev=e.next=null)})}function UZt(){return mn(this,t=>{tn(t)&&(t.children.forEach(e=>{e.next=e.prev=e.parent=null}),t.children.length=0)})}function FZt(t){if(t===void 0){let e=this[0];return!e||!tn(e)?null:this._render(e.children)}return mn(this,e=>{if(!tn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=Po(t)?t.toArray():this._parse(`${t}`,this.options,!1,e).children;w0(r,e)})}function qZt(){return this._render(this)}function jZt(t){return t===void 0?df(this):typeof t=="function"?mn(this,(e,r)=>this._make(e).text(t.call(e,r,df([e])))):mn(this,e=>{if(!tn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=new Sl(`${t}`);w0(r,e)})}function QZt(){return this._make(ID(this.get()))}var IV={};us(IV,{css:()=>HZt});function HZt(t,e){if(t!=null&&e!=null||typeof t=="object"&&!Array.isArray(t))return mn(this,(r,n)=>{it(r)&&s4e(r,t,e,n)});if(this.length!==0)return i4e(this[0],t)}function s4e(t,e,r,n){if(typeof e=="string"){let s=i4e(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)=>{s4e(t,s,e[s],i)})}function i4e(t,e){if(!t||!it(t))return;let r=VZt(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 VZt(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 CV={};us(CV,{serialize:()=>zZt,serializeArray:()=>YZt});var a4e="input,select,textarea,keygen",KZt=/%20/g,o4e=/\r?\n/g;function zZt(){return this.serializeArray().map(r=>`${encodeURIComponent(r.name)}=${encodeURIComponent(r.value)}`).join("&").replace(KZt,"+")}function YZt(){return this.map((t,e)=>{let r=this._make(e);return it(e)&&e.name==="form"?r.find(a4e).toArray():r.filter(a4e).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(o4e,`\r
`)})):{name:s,value:i.replace(o4e,`\r
`)}}).toArray()}var N0=class{constructor(e,r,n){if(this.length=0,this.options=n,this._root=r,e){for(let s=0;s<e.length;s++)this[s]=e[s];this.length=e.length}}};N0.prototype.cheerio="[cheerio object]";N0.prototype.splice=Array.prototype.splice;N0.prototype[Symbol.iterator]=Array.prototype[Symbol.iterator];Object.assign(N0.prototype,eV,vV,SV,IV,CV);function c4e(t,e){return function r(n,s,i=!0){if(n==null)throw new Error("cheerio.load() expects a string");let a={...iI,...aI(s)},o=t(n,a,i,null);class c extends N0{_make(d,f){let m=u(d,f);return m.prevObject=this,m}_parse(d,f,m,p){return t(d,f,m,p)}_render(d){return e(d,this.options)}}function u(l,d,f=o,m){if(l&&Po(l))return l;let p={...a,...aI(m)},h=typeof f=="string"?[t(f,p,!1,null)]:"length"in f?f:[f],y=Po(h)?h:new c(h,null,p);if(y._root=y,!l)return new c(void 0,y,p);let g=typeof l=="string"&&mI(l)?t(l,p,!1,null).children:JZt(l)?[l]:Array.isArray(l)?l:void 0,A=new c(g,y,p);if(g)return A;if(typeof l!="string")throw new Error("Unexpected type of selector");let b=l,x=d?typeof d=="string"?mI(d)?new c([t(d,p,!1,null)],y,p):(b=`${d} ${b}`,y):Po(d)?d:new c(Array.isArray(d)?d:[d],y,p):y;return x?x.find(b):A}return Object.assign(u,C0,{load:r,_root:o,_options:a,fn:c.prototype,prototype:c.prototype}),u}}function JZt(t){return!!t.name||t.type==="root"||t.type==="text"||t.type==="comment"}var XZt=new Set([65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111]),vn="\uFFFD",H;(function(t){t[t.EOF=-1]="EOF",t[t.NULL=0]="NULL",t[t.TABULATION=9]="TABULATION",t[t.CARRIAGE_RETURN=13]="CARRIAGE_RETURN",t[t.LINE_FEED=10]="LINE_FEED",t[t.FORM_FEED=12]="FORM_FEED",t[t.SPACE=32]="SPACE",t[t.EXCLAMATION_MARK=33]="EXCLAMATION_MARK",t[t.QUOTATION_MARK=34]="QUOTATION_MARK",t[t.AMPERSAND=38]="AMPERSAND",t[t.APOSTROPHE=39]="APOSTROPHE",t[t.HYPHEN_MINUS=45]="HYPHEN_MINUS",t[t.SOLIDUS=47]="SOLIDUS",t[t.DIGIT_0=48]="DIGIT_0",t[t.DIGIT_9=57]="DIGIT_9",t[t.SEMICOLON=59]="SEMICOLON",t[t.LESS_THAN_SIGN=60]="LESS_THAN_SIGN",t[t.EQUALS_SIGN=61]="EQUALS_SIGN",t[t.GREATER_THAN_SIGN=62]="GREATER_THAN_SIGN",t[t.QUESTION_MARK=63]="QUESTION_MARK",t[t.LATIN_CAPITAL_A=65]="LATIN_CAPITAL_A",t[t.LATIN_CAPITAL_Z=90]="LATIN_CAPITAL_Z",t[t.RIGHT_SQUARE_BRACKET=93]="RIGHT_SQUARE_BRACKET",t[t.GRAVE_ACCENT=96]="GRAVE_ACCENT",t[t.LATIN_SMALL_A=97]="LATIN_SMALL_A",t[t.LATIN_SMALL_Z=122]="LATIN_SMALL_Z"})(H||(H={}));var xa={DASH_DASH:"--",CDATA_START:"[CDATA[",DOCTYPE:"doctype",SCRIPT:"script",PUBLIC:"public",SYSTEM:"system"};function UD(t){return t>=55296&&t<=57343}function u4e(t){return t>=56320&&t<=57343}function l4e(t,e){return(t-55296)*1024+9216+e}function FD(t){return t!==32&&t!==10&&t!==13&&t!==9&&t!==12&&t>=1&&t<=31||t>=127&&t<=159}function qD(t){return t>=64976&&t<=65007||XZt.has(t)}var ye;(function(t){t.controlCharacterInInputStream="control-character-in-input-stream",t.noncharacterInInputStream="noncharacter-in-input-stream",t.surrogateInInputStream="surrogate-in-input-stream",t.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",t.endTagWithAttributes="end-tag-with-attributes",t.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",t.unexpectedSolidusInTag="unexpected-solidus-in-tag",t.unexpectedNullCharacter="unexpected-null-character",t.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",t.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",t.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",t.missingEndTagName="missing-end-tag-name",t.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",t.unknownNamedCharacterReference="unknown-named-character-reference",t.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",t.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",t.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",t.eofBeforeTagName="eof-before-tag-name",t.eofInTag="eof-in-tag",t.missingAttributeValue="missing-attribute-value",t.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",t.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",t.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",t.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",t.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",t.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",t.missingDoctypePublicIdentifier="missing-doctype-public-identifier",t.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",t.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",t.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",t.cdataInHtmlContent="cdata-in-html-content",t.incorrectlyOpenedComment="incorrectly-opened-comment",t.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",t.eofInDoctype="eof-in-doctype",t.nestedComment="nested-comment",t.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",t.eofInComment="eof-in-comment",t.incorrectlyClosedComment="incorrectly-closed-comment",t.eofInCdata="eof-in-cdata",t.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",t.nullCharacterReference="null-character-reference",t.surrogateCharacterReference="surrogate-character-reference",t.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",t.controlCharacterReference="control-character-reference",t.noncharacterCharacterReference="noncharacter-character-reference",t.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",t.missingDoctypeName="missing-doctype-name",t.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",t.duplicateAttribute="duplicate-attribute",t.nonConformingDoctype="non-conforming-doctype",t.missingDoctype="missing-doctype",t.misplacedDoctype="misplaced-doctype",t.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",t.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",t.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",t.openElementsLeftAfterEof="open-elements-left-after-eof",t.abandonedHeadElementChild="abandoned-head-element-child",t.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",t.nestedNoscriptInHead="nested-noscript-in-head",t.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"})(ye||(ye={}));var eer=65536,jD=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=eer,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(u4e(r))return this.pos++,this._addGap(),l4e(e,r)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,H.EOF;return this._err(ye.surrogateInInputStream),e}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(e,r){this.html.length>0?this.html+=e:this.html=e,this.endOfChunkHit=!1,this.lastChunkWritten=r}insertHtmlAtCurrentPos(e){this.html=this.html.substring(0,this.pos+1)+e+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(e,r){if(this.pos+e.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(r)return this.html.startsWith(e,this.pos);for(let n=0;n<e.length;n++)if((this.html.charCodeAt(this.pos+n)|32)!==e.charCodeAt(n))return!1;return!0}peek(e){let r=this.pos+e;if(r>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,H.EOF;let n=this.html.charCodeAt(r);return n===H.CARRIAGE_RETURN?H.LINE_FEED:n}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,H.EOF;let e=this.html.charCodeAt(this.pos);return e===H.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,H.LINE_FEED):e===H.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,UD(e)&&(e=this._processSurrogate(e)),this.handler.onParseError===null||e>31&&e<127||e===H.LINE_FEED||e===H.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e)}_checkForProblematicCharacters(e){FD(e)?this._err(ye.controlCharacterInInputStream):qD(e)&&this._err(ye.noncharacterInInputStream)}retreat(e){for(this.pos-=e;this.pos<this.lastGapPos;)this.lastGapPos=this.gapStack.pop(),this.pos--;this.isEol=!1}};var Cr;(function(t){t[t.CHARACTER=0]="CHARACTER",t[t.NULL_CHARACTER=1]="NULL_CHARACTER",t[t.WHITESPACE_CHARACTER=2]="WHITESPACE_CHARACTER",t[t.START_TAG=3]="START_TAG",t[t.END_TAG=4]="END_TAG",t[t.COMMENT=5]="COMMENT",t[t.DOCTYPE=6]="DOCTYPE",t[t.EOF=7]="EOF",t[t.HIBERNATION=8]="HIBERNATION"})(Cr||(Cr={}));function QD(t,e){for(let r=t.attrs.length-1;r>=0;r--)if(t.attrs[r].name===e)return t.attrs[r].value;return null}var HD=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 TV,rer=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]]),d4e=(TV=String.fromCodePoint)!==null&&TV!==void 0?TV: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 wV(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=rer.get(t))!==null&&e!==void 0?e:t}var ri;(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"})(ri||(ri={}));var ser=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 RV(t){return t>=ri.ZERO&&t<=ri.NINE}function ier(t){return t>=ri.UPPER_A&&t<=ri.UPPER_F||t>=ri.LOWER_A&&t<=ri.LOWER_F}function aer(t){return t>=ri.UPPER_A&&t<=ri.UPPER_Z||t>=ri.LOWER_A&&t<=ri.LOWER_Z||RV(t)}function oer(t){return t===ri.EQUALS||aer(t)}var ti;(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"})(ti||(ti={}));var Cl;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(Cl||(Cl={}));var GD=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=ti.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Cl.Strict}startEntity(e){this.decodeMode=e,this.state=ti.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case ti.EntityStart:return e.charCodeAt(r)===ri.NUM?(this.state=ti.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=ti.NamedEntity,this.stateNamedEntity(e,r));case ti.NumericStart:return this.stateNumericStart(e,r);case ti.NumericDecimal:return this.stateNumericDecimal(e,r);case ti.NumericHex:return this.stateNumericHex(e,r);case ti.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|ser)===ri.LOWER_X?(this.state=ti.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=ti.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<e.length;){let s=e.charCodeAt(r);if(RV(s)||ier(s))r+=1;else return this.addToNumericResult(e,n,r,16),this.emitNumericEntity(s,3)}return this.addToNumericResult(e,n,r,16),-1}stateNumericDecimal(e,r){let n=r;for(;r<e.length;){let s=e.charCodeAt(r);if(RV(s))r+=1;else return this.addToNumericResult(e,n,r,10),this.emitNumericEntity(s,2)}return this.addToNumericResult(e,n,r,10),-1}emitNumericEntity(e,r){var n;if(this.consumed<=r)return(n=this.errors)===null||n===void 0||n.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(e===ri.SEMI)this.consumed+=1;else if(this.decodeMode===Cl.Strict)return 0;return this.emitCodePoint(wV(this.result),this.consumed),this.errors&&(e!==ri.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,r){let{decodeTree:n}=this,s=n[this.treeIndex],i=(s&O0.VALUE_LENGTH)>>14;for(;r<e.length;r++,this.excess++){let a=e.charCodeAt(r);if(this.treeIndex=cer(n,s,this.treeIndex+Math.max(1,i),a),this.treeIndex<0)return this.result===0||this.decodeMode===Cl.Attribute&&(i===0||oer(a))?0:this.emitNotTerminatedNamedEntity();if(s=n[this.treeIndex],i=(s&O0.VALUE_LENGTH)>>14,i!==0){if(a===ri.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Cl.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 ti.NamedEntity:return this.result!==0&&(this.decodeMode!==Cl.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case ti.NumericDecimal:return this.emitNumericEntity(0,2);case ti.NumericHex:return this.emitNumericEntity(0,3);case ti.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case ti.EntityStart:return 0}}};function cer(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(u<n)a=c+1;else if(u>n)o=c-1;else return t[c+s]}return-1}var VD={};us(VD,{ATTRS:()=>Tl,DOCUMENT_MODE:()=>Yi,NS:()=>Ee,NUMBERED_HEADERS:()=>xb,SPECIAL_ELEMENTS:()=>NV,TAG_ID:()=>C,TAG_NAMES:()=>pe,getTagID:()=>k0,hasUnescapedText:()=>OV});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 Tl;(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"})(Tl||(Tl={}));var Yi;(function(t){t.NO_QUIRKS="no-quirks",t.QUIRKS="quirks",t.LIMITED_QUIRKS="limited-quirks"})(Yi||(Yi={}));var pe;(function(t){t.A="a",t.ADDRESS="address",t.ANNOTATION_XML="annotation-xml",t.APPLET="applet",t.AREA="area",t.ARTICLE="article",t.ASIDE="aside",t.B="b",t.BASE="base",t.BASEFONT="basefont",t.BGSOUND="bgsound",t.BIG="big",t.BLOCKQUOTE="blockquote",t.BODY="body",t.BR="br",t.BUTTON="button",t.CAPTION="caption",t.CENTER="center",t.CODE="code",t.COL="col",t.COLGROUP="colgroup",t.DD="dd",t.DESC="desc",t.DETAILS="details",t.DIALOG="dialog",t.DIR="dir",t.DIV="div",t.DL="dl",t.DT="dt",t.EM="em",t.EMBED="embed",t.FIELDSET="fieldset",t.FIGCAPTION="figcaption",t.FIGURE="figure",t.FONT="font",t.FOOTER="footer",t.FOREIGN_OBJECT="foreignObject",t.FORM="form",t.FRAME="frame",t.FRAMESET="frameset",t.H1="h1",t.H2="h2",t.H3="h3",t.H4="h4",t.H5="h5",t.H6="h6",t.HEAD="head",t.HEADER="header",t.HGROUP="hgroup",t.HR="hr",t.HTML="html",t.I="i",t.IMG="img",t.IMAGE="image",t.INPUT="input",t.IFRAME="iframe",t.KEYGEN="keygen",t.LABEL="label",t.LI="li",t.LINK="link",t.LISTING="listing",t.MAIN="main",t.MALIGNMARK="malignmark",t.MARQUEE="marquee",t.MATH="math",t.MENU="menu",t.META="meta",t.MGLYPH="mglyph",t.MI="mi",t.MO="mo",t.MN="mn",t.MS="ms",t.MTEXT="mtext",t.NAV="nav",t.NOBR="nobr",t.NOFRAMES="noframes",t.NOEMBED="noembed",t.NOSCRIPT="noscript",t.OBJECT="object",t.OL="ol",t.OPTGROUP="optgroup",t.OPTION="option",t.P="p",t.PARAM="param",t.PLAINTEXT="plaintext",t.PRE="pre",t.RB="rb",t.RP="rp",t.RT="rt",t.RTC="rtc",t.RUBY="ruby",t.S="s",t.SCRIPT="script",t.SEARCH="search",t.SECTION="section",t.SELECT="select",t.SOURCE="source",t.SMALL="small",t.SPAN="span",t.STRIKE="strike",t.STRONG="strong",t.STYLE="style",t.SUB="sub",t.SUMMARY="summary",t.SUP="sup",t.TABLE="table",t.TBODY="tbody",t.TEMPLATE="template",t.TEXTAREA="textarea",t.TFOOT="tfoot",t.TD="td",t.TH="th",t.THEAD="thead",t.TITLE="title",t.TR="tr",t.TRACK="track",t.TT="tt",t.U="u",t.UL="ul",t.SVG="svg",t.VAR="var",t.WBR="wbr",t.XMP="xmp"})(pe||(pe={}));var C;(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A=1]="A",t[t.ADDRESS=2]="ADDRESS",t[t.ANNOTATION_XML=3]="ANNOTATION_XML",t[t.APPLET=4]="APPLET",t[t.AREA=5]="AREA",t[t.ARTICLE=6]="ARTICLE",t[t.ASIDE=7]="ASIDE",t[t.B=8]="B",t[t.BASE=9]="BASE",t[t.BASEFONT=10]="BASEFONT",t[t.BGSOUND=11]="BGSOUND",t[t.BIG=12]="BIG",t[t.BLOCKQUOTE=13]="BLOCKQUOTE",t[t.BODY=14]="BODY",t[t.BR=15]="BR",t[t.BUTTON=16]="BUTTON",t[t.CAPTION=17]="CAPTION",t[t.CENTER=18]="CENTER",t[t.CODE=19]="CODE",t[t.COL=20]="COL",t[t.COLGROUP=21]="COLGROUP",t[t.DD=22]="DD",t[t.DESC=23]="DESC",t[t.DETAILS=24]="DETAILS",t[t.DIALOG=25]="DIALOG",t[t.DIR=26]="DIR",t[t.DIV=27]="DIV",t[t.DL=28]="DL",t[t.DT=29]="DT",t[t.EM=30]="EM",t[t.EMBED=31]="EMBED",t[t.FIELDSET=32]="FIELDSET",t[t.FIGCAPTION=33]="FIGCAPTION",t[t.FIGURE=34]="FIGURE",t[t.FONT=35]="FONT",t[t.FOOTER=36]="FOOTER",t[t.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",t[t.FORM=38]="FORM",t[t.FRAME=39]="FRAME",t[t.FRAMESET=40]="FRAMESET",t[t.H1=41]="H1",t[t.H2=42]="H2",t[t.H3=43]="H3",t[t.H4=44]="H4",t[t.H5=45]="H5",t[t.H6=46]="H6",t[t.HEAD=47]="HEAD",t[t.HEADER=48]="HEADER",t[t.HGROUP=49]="HGROUP",t[t.HR=50]="HR",t[t.HTML=51]="HTML",t[t.I=52]="I",t[t.IMG=53]="IMG",t[t.IMAGE=54]="IMAGE",t[t.INPUT=55]="INPUT",t[t.IFRAME=56]="IFRAME",t[t.KEYGEN=57]="KEYGEN",t[t.LABEL=58]="LABEL",t[t.LI=59]="LI",t[t.LINK=60]="LINK",t[t.LISTING=61]="LISTING",t[t.MAIN=62]="MAIN",t[t.MALIGNMARK=63]="MALIGNMARK",t[t.MARQUEE=64]="MARQUEE",t[t.MATH=65]="MATH",t[t.MENU=66]="MENU",t[t.META=67]="META",t[t.MGLYPH=68]="MGLYPH",t[t.MI=69]="MI",t[t.MO=70]="MO",t[t.MN=71]="MN",t[t.MS=72]="MS",t[t.MTEXT=73]="MTEXT",t[t.NAV=74]="NAV",t[t.NOBR=75]="NOBR",t[t.NOFRAMES=76]="NOFRAMES",t[t.NOEMBED=77]="NOEMBED",t[t.NOSCRIPT=78]="NOSCRIPT",t[t.OBJECT=79]="OBJECT",t[t.OL=80]="OL",t[t.OPTGROUP=81]="OPTGROUP",t[t.OPTION=82]="OPTION",t[t.P=83]="P",t[t.PARAM=84]="PARAM",t[t.PLAINTEXT=85]="PLAINTEXT",t[t.PRE=86]="PRE",t[t.RB=87]="RB",t[t.RP=88]="RP",t[t.RT=89]="RT",t[t.RTC=90]="RTC",t[t.RUBY=91]="RUBY",t[t.S=92]="S",t[t.SCRIPT=93]="SCRIPT",t[t.SEARCH=94]="SEARCH",t[t.SECTION=95]="SECTION",t[t.SELECT=96]="SELECT",t[t.SOURCE=97]="SOURCE",t[t.SMALL=98]="SMALL",t[t.SPAN=99]="SPAN",t[t.STRIKE=100]="STRIKE",t[t.STRONG=101]="STRONG",t[t.STYLE=102]="STYLE",t[t.SUB=103]="SUB",t[t.SUMMARY=104]="SUMMARY",t[t.SUP=105]="SUP",t[t.TABLE=106]="TABLE",t[t.TBODY=107]="TBODY",t[t.TEMPLATE=108]="TEMPLATE",t[t.TEXTAREA=109]="TEXTAREA",t[t.TFOOT=110]="TFOOT",t[t.TD=111]="TD",t[t.TH=112]="TH",t[t.THEAD=113]="THEAD",t[t.TITLE=114]="TITLE",t[t.TR=115]="TR",t[t.TRACK=116]="TRACK",t[t.TT=117]="TT",t[t.U=118]="U",t[t.UL=119]="UL",t[t.SVG=120]="SVG",t[t.VAR=121]="VAR",t[t.WBR=122]="WBR",t[t.XMP=123]="XMP"})(C||(C={}));var uer=new Map([[pe.A,C.A],[pe.ADDRESS,C.ADDRESS],[pe.ANNOTATION_XML,C.ANNOTATION_XML],[pe.APPLET,C.APPLET],[pe.AREA,C.AREA],[pe.ARTICLE,C.ARTICLE],[pe.ASIDE,C.ASIDE],[pe.B,C.B],[pe.BASE,C.BASE],[pe.BASEFONT,C.BASEFONT],[pe.BGSOUND,C.BGSOUND],[pe.BIG,C.BIG],[pe.BLOCKQUOTE,C.BLOCKQUOTE],[pe.BODY,C.BODY],[pe.BR,C.BR],[pe.BUTTON,C.BUTTON],[pe.CAPTION,C.CAPTION],[pe.CENTER,C.CENTER],[pe.CODE,C.CODE],[pe.COL,C.COL],[pe.COLGROUP,C.COLGROUP],[pe.DD,C.DD],[pe.DESC,C.DESC],[pe.DETAILS,C.DETAILS],[pe.DIALOG,C.DIALOG],[pe.DIR,C.DIR],[pe.DIV,C.DIV],[pe.DL,C.DL],[pe.DT,C.DT],[pe.EM,C.EM],[pe.EMBED,C.EMBED],[pe.FIELDSET,C.FIELDSET],[pe.FIGCAPTION,C.FIGCAPTION],[pe.FIGURE,C.FIGURE],[pe.FONT,C.FONT],[pe.FOOTER,C.FOOTER],[pe.FOREIGN_OBJECT,C.FOREIGN_OBJECT],[pe.FORM,C.FORM],[pe.FRAME,C.FRAME],[pe.FRAMESET,C.FRAMESET],[pe.H1,C.H1],[pe.H2,C.H2],[pe.H3,C.H3],[pe.H4,C.H4],[pe.H5,C.H5],[pe.H6,C.H6],[pe.HEAD,C.HEAD],[pe.HEADER,C.HEADER],[pe.HGROUP,C.HGROUP],[pe.HR,C.HR],[pe.HTML,C.HTML],[pe.I,C.I],[pe.IMG,C.IMG],[pe.IMAGE,C.IMAGE],[pe.INPUT,C.INPUT],[pe.IFRAME,C.IFRAME],[pe.KEYGEN,C.KEYGEN],[pe.LABEL,C.LABEL],[pe.LI,C.LI],[pe.LINK,C.LINK],[pe.LISTING,C.LISTING],[pe.MAIN,C.MAIN],[pe.MALIGNMARK,C.MALIGNMARK],[pe.MARQUEE,C.MARQUEE],[pe.MATH,C.MATH],[pe.MENU,C.MENU],[pe.META,C.META],[pe.MGLYPH,C.MGLYPH],[pe.MI,C.MI],[pe.MO,C.MO],[pe.MN,C.MN],[pe.MS,C.MS],[pe.MTEXT,C.MTEXT],[pe.NAV,C.NAV],[pe.NOBR,C.NOBR],[pe.NOFRAMES,C.NOFRAMES],[pe.NOEMBED,C.NOEMBED],[pe.NOSCRIPT,C.NOSCRIPT],[pe.OBJECT,C.OBJECT],[pe.OL,C.OL],[pe.OPTGROUP,C.OPTGROUP],[pe.OPTION,C.OPTION],[pe.P,C.P],[pe.PARAM,C.PARAM],[pe.PLAINTEXT,C.PLAINTEXT],[pe.PRE,C.PRE],[pe.RB,C.RB],[pe.RP,C.RP],[pe.RT,C.RT],[pe.RTC,C.RTC],[pe.RUBY,C.RUBY],[pe.S,C.S],[pe.SCRIPT,C.SCRIPT],[pe.SEARCH,C.SEARCH],[pe.SECTION,C.SECTION],[pe.SELECT,C.SELECT],[pe.SOURCE,C.SOURCE],[pe.SMALL,C.SMALL],[pe.SPAN,C.SPAN],[pe.STRIKE,C.STRIKE],[pe.STRONG,C.STRONG],[pe.STYLE,C.STYLE],[pe.SUB,C.SUB],[pe.SUMMARY,C.SUMMARY],[pe.SUP,C.SUP],[pe.TABLE,C.TABLE],[pe.TBODY,C.TBODY],[pe.TEMPLATE,C.TEMPLATE],[pe.TEXTAREA,C.TEXTAREA],[pe.TFOOT,C.TFOOT],[pe.TD,C.TD],[pe.TH,C.TH],[pe.THEAD,C.THEAD],[pe.TITLE,C.TITLE],[pe.TR,C.TR],[pe.TRACK,C.TRACK],[pe.TT,C.TT],[pe.U,C.U],[pe.UL,C.UL],[pe.SVG,C.SVG],[pe.VAR,C.VAR],[pe.WBR,C.WBR],[pe.XMP,C.XMP]]);function k0(t){var e;return(e=uer.get(t))!==null&&e!==void 0?e:C.UNKNOWN}var ke=C,NV={[Ee.HTML]:new Set([ke.ADDRESS,ke.APPLET,ke.AREA,ke.ARTICLE,ke.ASIDE,ke.BASE,ke.BASEFONT,ke.BGSOUND,ke.BLOCKQUOTE,ke.BODY,ke.BR,ke.BUTTON,ke.CAPTION,ke.CENTER,ke.COL,ke.COLGROUP,ke.DD,ke.DETAILS,ke.DIR,ke.DIV,ke.DL,ke.DT,ke.EMBED,ke.FIELDSET,ke.FIGCAPTION,ke.FIGURE,ke.FOOTER,ke.FORM,ke.FRAME,ke.FRAMESET,ke.H1,ke.H2,ke.H3,ke.H4,ke.H5,ke.H6,ke.HEAD,ke.HEADER,ke.HGROUP,ke.HR,ke.HTML,ke.IFRAME,ke.IMG,ke.INPUT,ke.LI,ke.LINK,ke.LISTING,ke.MAIN,ke.MARQUEE,ke.MENU,ke.META,ke.NAV,ke.NOEMBED,ke.NOFRAMES,ke.NOSCRIPT,ke.OBJECT,ke.OL,ke.P,ke.PARAM,ke.PLAINTEXT,ke.PRE,ke.SCRIPT,ke.SECTION,ke.SELECT,ke.SOURCE,ke.STYLE,ke.SUMMARY,ke.TABLE,ke.TBODY,ke.TD,ke.TEMPLATE,ke.TEXTAREA,ke.TFOOT,ke.TH,ke.THEAD,ke.TITLE,ke.TR,ke.TRACK,ke.UL,ke.WBR,ke.XMP]),[Ee.MATHML]:new Set([ke.MI,ke.MO,ke.MN,ke.MS,ke.MTEXT,ke.ANNOTATION_XML]),[Ee.SVG]:new Set([ke.TITLE,ke.FOREIGN_OBJECT,ke.DESC]),[Ee.XLINK]:new Set,[Ee.XML]:new Set,[Ee.XMLNS]:new Set},xb=new Set([ke.H1,ke.H2,ke.H3,ke.H4,ke.H5,ke.H6]),ler=new Set([pe.STYLE,pe.SCRIPT,pe.XMP,pe.IFRAME,pe.NOEMBED,pe.NOFRAMES,pe.PLAINTEXT]);function OV(t,e){return ler.has(t)||e&&t===pe.NOSCRIPT}var Y;(function(t){t[t.DATA=0]="DATA",t[t.RCDATA=1]="RCDATA",t[t.RAWTEXT=2]="RAWTEXT",t[t.SCRIPT_DATA=3]="SCRIPT_DATA",t[t.PLAINTEXT=4]="PLAINTEXT",t[t.TAG_OPEN=5]="TAG_OPEN",t[t.END_TAG_OPEN=6]="END_TAG_OPEN",t[t.TAG_NAME=7]="TAG_NAME",t[t.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",t[t.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",t[t.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",t[t.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",t[t.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",t[t.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",t[t.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",t[t.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",t[t.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",t[t.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",t[t.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",t[t.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",t[t.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",t[t.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",t[t.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",t[t.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",t[t.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",t[t.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",t[t.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",t[t.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",t[t.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",t[t.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",t[t.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",t[t.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",t[t.BOGUS_COMMENT=40]="BOGUS_COMMENT",t[t.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",t[t.COMMENT_START=42]="COMMENT_START",t[t.COMMENT_START_DASH=43]="COMMENT_START_DASH",t[t.COMMENT=44]="COMMENT",t[t.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",t[t.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",t[t.COMMENT_END_DASH=49]="COMMENT_END_DASH",t[t.COMMENT_END=50]="COMMENT_END",t[t.COMMENT_END_BANG=51]="COMMENT_END_BANG",t[t.DOCTYPE=52]="DOCTYPE",t[t.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",t[t.DOCTYPE_NAME=54]="DOCTYPE_NAME",t[t.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",t[t.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",t[t.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",t[t.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",t[t.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",t[t.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",t[t.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",t[t.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",t[t.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",t[t.CDATA_SECTION=68]="CDATA_SECTION",t[t.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",t[t.CDATA_SECTION_END=70]="CDATA_SECTION_END",t[t.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",t[t.AMBIGUOUS_AMPERSAND=72]="AMBIGUOUS_AMPERSAND"})(Y||(Y={}));var Ji={DATA:Y.DATA,RCDATA:Y.RCDATA,RAWTEXT:Y.RAWTEXT,SCRIPT_DATA:Y.SCRIPT_DATA,PLAINTEXT:Y.PLAINTEXT,CDATA_SECTION:Y.CDATA_SECTION};function der(t){return t>=H.DIGIT_0&&t<=H.DIGIT_9}function EI(t){return t>=H.LATIN_CAPITAL_A&&t<=H.LATIN_CAPITAL_Z}function fer(t){return t>=H.LATIN_SMALL_A&&t<=H.LATIN_SMALL_Z}function P0(t){return fer(t)||EI(t)}function f4e(t){return P0(t)||der(t)}function KD(t){return t+32}function m4e(t){return t===H.SPACE||t===H.LINE_FEED||t===H.TABULATION||t===H.FORM_FEED}function p4e(t){return m4e(t)||t===H.SOLIDUS||t===H.GREATER_THAN_SIGN}function per(t){return t===H.NULL?ye.nullCharacterReference:t>1114111?ye.characterReferenceOutsideUnicodeRange:UD(t)?ye.surrogateCharacterReference:qD(t)?ye.noncharacterCharacterReference:FD(t)||t===H.CARRIAGE_RETURN?ye.controlCharacterReference:null}var vI=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 jD(r),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new GD(HD,(n,s)=>{this.preprocessor.pos=this.entityStartPos+s-1,this._flushCodePointConsumedAsCharacterReference(n)},r.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(ye.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:n=>{this._err(ye.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+n)},validateNumericCharacterReference:n=>{let s=per(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;r<e;r++)this.preprocessor.advance()}_consumeSequenceIfMatch(e,r){return this.preprocessor.startsWith(e,r)?(this._advanceBy(e.length-1),!0):!1}_createStartTagToken(){this.currentToken={type:Cr.START_TAG,tagName:"",tagID:C.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(1)}}_createEndTagToken(){this.currentToken={type:Cr.END_TAG,tagName:"",tagID:C.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(2)}}_createCommentToken(e){this.currentToken={type:Cr.COMMENT,data:"",location:this.getCurrentLocation(e)}}_createDoctypeToken(e){this.currentToken={type:Cr.DOCTYPE,name:e,forceQuirks:!1,publicId:null,systemId:null,location:this.currentLocation}}_createCharacterToken(e,r){this.currentCharacterToken={type:e,chars:r,location:this.currentLocation}}_createAttr(e){this.currentAttr={name:e,value:""},this.currentLocation=this.getCurrentLocation(0)}_leaveAttrName(){var e,r;let n=this.currentToken;if(QD(n,this.currentAttr.name)===null){if(n.attrs.push(this.currentAttr),n.location&&this.currentLocation){let s=(e=(r=n.location).attrs)!==null&&e!==void 0?e:r.attrs=Object.create(null);s[this.currentAttr.name]=this.currentLocation,this._leaveAttrValue()}}else this._err(ye.duplicateAttribute)}_leaveAttrValue(){this.currentLocation&&(this.currentLocation.endLine=this.preprocessor.line,this.currentLocation.endCol=this.preprocessor.col,this.currentLocation.endOffset=this.preprocessor.offset)}prepareToken(e){this._emitCurrentCharacterToken(e.location),this.currentToken=null,e.location&&(e.location.endLine=this.preprocessor.line,e.location.endCol=this.preprocessor.col+1,e.location.endOffset=this.preprocessor.offset+1),this.currentLocation=this.getCurrentLocation(-1)}emitCurrentTagToken(){let e=this.currentToken;this.prepareToken(e),e.tagID=k0(e.tagName),e.type===Cr.START_TAG?(this.lastStartTagName=e.tagName,this.handler.onStartTag(e)):(e.attrs.length>0&&this._err(ye.endTagWithAttributes),e.selfClosing&&this._err(ye.endTagWithTrailingSolidus),this.handler.onEndTag(e)),this.preprocessor.dropParsedChunk()}emitCurrentComment(e){this.prepareToken(e),this.handler.onComment(e),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(e){this.prepareToken(e),this.handler.onDoctype(e),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(e){if(this.currentCharacterToken){switch(e&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=e.startLine,this.currentCharacterToken.location.endCol=e.startCol,this.currentCharacterToken.location.endOffset=e.startOffset),this.currentCharacterToken.type){case Cr.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case Cr.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case Cr.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:Cr.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=m4e(e)?Cr.WHITESPACE_CHARACTER:e===H.NULL?Cr.NULL_CHARACTER:Cr.CHARACTER;this._appendCharToCurrentCharacterToken(r,String.fromCodePoint(e))}_emitChars(e){this._appendCharToCurrentCharacterToken(Cr.CHARACTER,e)}_startCharacterReference(){this.returnState=this.state,this.state=Y.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?Cl.Attribute:Cl.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(e){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(e):this._emitCodePoint(e)}_callState(e){switch(this.state){case Y.DATA:{this._stateData(e);break}case Y.RCDATA:{this._stateRcdata(e);break}case Y.RAWTEXT:{this._stateRawtext(e);break}case Y.SCRIPT_DATA:{this._stateScriptData(e);break}case Y.PLAINTEXT:{this._statePlaintext(e);break}case Y.TAG_OPEN:{this._stateTagOpen(e);break}case Y.END_TAG_OPEN:{this._stateEndTagOpen(e);break}case Y.TAG_NAME:{this._stateTagName(e);break}case Y.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(e);break}case Y.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(e);break}case Y.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(e);break}case Y.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(e);break}case Y.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(e);break}case Y.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(e);break}case Y.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(e);break}case Y.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(e);break}case Y.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(e);break}case Y.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(e);break}case Y.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(e);break}case Y.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(e);break}case Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(e);break}case Y.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(e);break}case Y.ATTRIBUTE_NAME:{this._stateAttributeName(e);break}case Y.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(e);break}case Y.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(e);break}case Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(e);break}case Y.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(e);break}case Y.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(e);break}case Y.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(e);break}case Y.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(e);break}case Y.BOGUS_COMMENT:{this._stateBogusComment(e);break}case Y.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(e);break}case Y.COMMENT_START:{this._stateCommentStart(e);break}case Y.COMMENT_START_DASH:{this._stateCommentStartDash(e);break}case Y.COMMENT:{this._stateComment(e);break}case Y.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(e);break}case Y.COMMENT_END_DASH:{this._stateCommentEndDash(e);break}case Y.COMMENT_END:{this._stateCommentEnd(e);break}case Y.COMMENT_END_BANG:{this._stateCommentEndBang(e);break}case Y.DOCTYPE:{this._stateDoctype(e);break}case Y.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(e);break}case Y.DOCTYPE_NAME:{this._stateDoctypeName(e);break}case Y.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(e);break}case Y.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(e);break}case Y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(e);break}case Y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(e);break}case Y.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(e);break}case Y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(e);break}case Y.BOGUS_DOCTYPE:{this._stateBogusDoctype(e);break}case Y.CDATA_SECTION:{this._stateCdataSection(e);break}case Y.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(e);break}case Y.CDATA_SECTION_END:{this._stateCdataSectionEnd(e);break}case Y.CHARACTER_REFERENCE:{this._stateCharacterReference();break}case Y.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(e);break}default:throw new Error("Unknown state")}}_stateData(e){switch(e){case H.LESS_THAN_SIGN:{this.state=Y.TAG_OPEN;break}case H.AMPERSAND:{this._startCharacterReference();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitCodePoint(e);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRcdata(e){switch(e){case H.AMPERSAND:{this._startCharacterReference();break}case H.LESS_THAN_SIGN:{this.state=Y.RCDATA_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(vn);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRawtext(e){switch(e){case H.LESS_THAN_SIGN:{this.state=Y.RAWTEXT_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(vn);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptData(e){switch(e){case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(vn);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_statePlaintext(e){switch(e){case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(vn);break}case H.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateTagOpen(e){if(P0(e))this._createStartTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case H.EXCLAMATION_MARK:{this.state=Y.MARKUP_DECLARATION_OPEN;break}case H.SOLIDUS:{this.state=Y.END_TAG_OPEN;break}case H.QUESTION_MARK:{this._err(ye.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e);break}case H.EOF:{this._err(ye.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break}default:this._err(ye.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=Y.DATA,this._stateData(e)}}_stateEndTagOpen(e){if(P0(e))this._createEndTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case H.GREATER_THAN_SIGN:{this._err(ye.missingEndTagName),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofBeforeTagName),this._emitChars("</"),this._emitEOFToken();break}default:this._err(ye.invalidFirstCharacterOfTagName),this._createCommentToken(2),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e)}}_stateTagName(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.BEFORE_ATTRIBUTE_NAME;break}case H.SOLIDUS:{this.state=Y.SELF_CLOSING_START_TAG;break}case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentTagToken();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.tagName+=vn;break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:r.tagName+=String.fromCodePoint(EI(e)?KD(e):e)}}_stateRcdataLessThanSign(e){e===H.SOLIDUS?this.state=Y.RCDATA_END_TAG_OPEN:(this._emitChars("<"),this.state=Y.RCDATA,this._stateRcdata(e))}_stateRcdataEndTagOpen(e){P0(e)?(this.state=Y.RCDATA_END_TAG_NAME,this._stateRcdataEndTagName(e)):(this._emitChars("</"),this.state=Y.RCDATA,this._stateRcdata(e))}handleSpecialEndTag(e){if(!this.preprocessor.startsWith(this.lastStartTagName,!1))return!this._ensureHibernation();this._createEndTagToken();let r=this.currentToken;switch(r.tagName=this.lastStartTagName,this.preprocessor.peek(this.lastStartTagName.length)){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:return this._advanceBy(this.lastStartTagName.length),this.state=Y.BEFORE_ATTRIBUTE_NAME,!1;case H.SOLIDUS:return this._advanceBy(this.lastStartTagName.length),this.state=Y.SELF_CLOSING_START_TAG,!1;case H.GREATER_THAN_SIGN:return this._advanceBy(this.lastStartTagName.length),this.emitCurrentTagToken(),this.state=Y.DATA,!1;default:return!this._ensureHibernation()}}_stateRcdataEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars("</"),this.state=Y.RCDATA,this._stateRcdata(e))}_stateRawtextLessThanSign(e){e===H.SOLIDUS?this.state=Y.RAWTEXT_END_TAG_OPEN:(this._emitChars("<"),this.state=Y.RAWTEXT,this._stateRawtext(e))}_stateRawtextEndTagOpen(e){P0(e)?(this.state=Y.RAWTEXT_END_TAG_NAME,this._stateRawtextEndTagName(e)):(this._emitChars("</"),this.state=Y.RAWTEXT,this._stateRawtext(e))}_stateRawtextEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars("</"),this.state=Y.RAWTEXT,this._stateRawtext(e))}_stateScriptDataLessThanSign(e){switch(e){case H.SOLIDUS:{this.state=Y.SCRIPT_DATA_END_TAG_OPEN;break}case H.EXCLAMATION_MARK:{this.state=Y.SCRIPT_DATA_ESCAPE_START,this._emitChars("<!");break}default:this._emitChars("<"),this.state=Y.SCRIPT_DATA,this._stateScriptData(e)}}_stateScriptDataEndTagOpen(e){P0(e)?(this.state=Y.SCRIPT_DATA_END_TAG_NAME,this._stateScriptDataEndTagName(e)):(this._emitChars("</"),this.state=Y.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars("</"),this.state=Y.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEscapeStart(e){e===H.HYPHEN_MINUS?(this.state=Y.SCRIPT_DATA_ESCAPE_START_DASH,this._emitChars("-")):(this.state=Y.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEscapeStartDash(e){e===H.HYPHEN_MINUS?(this.state=Y.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars("-")):(this.state=Y.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEscaped(e){switch(e){case H.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_ESCAPED_DASH,this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(vn);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptDataEscapedDash(e){switch(e){case H.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_ESCAPED,this._emitChars(vn);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedDashDash(e){switch(e){case H.HYPHEN_MINUS:{this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case H.GREATER_THAN_SIGN:{this.state=Y.SCRIPT_DATA,this._emitChars(">");break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_ESCAPED,this._emitChars(vn);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedLessThanSign(e){e===H.SOLIDUS?this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:P0(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){P0(e)?(this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(e)):(this._emitChars("</"),this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagName(e){this.handleSpecialEndTag(e)&&(this._emitChars("</"),this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataDoubleEscapeStart(e){if(this.preprocessor.startsWith(xa.SCRIPT,!1)&&p4e(this.preprocessor.peek(xa.SCRIPT.length))){this._emitCodePoint(e);for(let r=0;r<xa.SCRIPT.length;r++)this._emitCodePoint(this._consume());this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED}else this._ensureHibernation()||(this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataDoubleEscaped(e){switch(e){case H.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH,this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this._emitChars(vn);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedDash(e){switch(e){case H.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH,this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(vn);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedDashDash(e){switch(e){case H.HYPHEN_MINUS:{this._emitChars("-");break}case H.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case H.GREATER_THAN_SIGN:{this.state=Y.SCRIPT_DATA,this._emitChars(">");break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(vn);break}case H.EOF:{this._err(ye.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedLessThanSign(e){e===H.SOLIDUS?(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateScriptDataDoubleEscapeEnd(e){if(this.preprocessor.startsWith(xa.SCRIPT,!1)&&p4e(this.preprocessor.peek(xa.SCRIPT.length))){this._emitCodePoint(e);for(let r=0;r<xa.SCRIPT.length;r++)this._emitCodePoint(this._consume());this.state=Y.SCRIPT_DATA_ESCAPED}else this._ensureHibernation()||(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateBeforeAttributeName(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.SOLIDUS:case H.GREATER_THAN_SIGN:case H.EOF:{this.state=Y.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break}case H.EQUALS_SIGN:{this._err(ye.unexpectedEqualsSignBeforeAttributeName),this._createAttr("="),this.state=Y.ATTRIBUTE_NAME;break}default:this._createAttr(""),this.state=Y.ATTRIBUTE_NAME,this._stateAttributeName(e)}}_stateAttributeName(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:case H.SOLIDUS:case H.GREATER_THAN_SIGN:case H.EOF:{this._leaveAttrName(),this.state=Y.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break}case H.EQUALS_SIGN:{this._leaveAttrName(),this.state=Y.BEFORE_ATTRIBUTE_VALUE;break}case H.QUOTATION_MARK:case H.APOSTROPHE:case H.LESS_THAN_SIGN:{this._err(ye.unexpectedCharacterInAttributeName),this.currentAttr.name+=String.fromCodePoint(e);break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.currentAttr.name+=vn;break}default:this.currentAttr.name+=String.fromCodePoint(EI(e)?KD(e):e)}}_stateAfterAttributeName(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.SOLIDUS:{this.state=Y.SELF_CLOSING_START_TAG;break}case H.EQUALS_SIGN:{this.state=Y.BEFORE_ATTRIBUTE_VALUE;break}case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentTagToken();break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this._createAttr(""),this.state=Y.ATTRIBUTE_NAME,this._stateAttributeName(e)}}_stateBeforeAttributeValue(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.QUOTATION_MARK:{this.state=Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED;break}case H.APOSTROPHE:{this.state=Y.ATTRIBUTE_VALUE_SINGLE_QUOTED;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingAttributeValue),this.state=Y.DATA,this.emitCurrentTagToken();break}default:this.state=Y.ATTRIBUTE_VALUE_UNQUOTED,this._stateAttributeValueUnquoted(e)}}_stateAttributeValueDoubleQuoted(e){switch(e){case H.QUOTATION_MARK:{this.state=Y.AFTER_ATTRIBUTE_VALUE_QUOTED;break}case H.AMPERSAND:{this._startCharacterReference();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.currentAttr.value+=vn;break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueSingleQuoted(e){switch(e){case H.APOSTROPHE:{this.state=Y.AFTER_ATTRIBUTE_VALUE_QUOTED;break}case H.AMPERSAND:{this._startCharacterReference();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.currentAttr.value+=vn;break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueUnquoted(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this._leaveAttrValue(),this.state=Y.BEFORE_ATTRIBUTE_NAME;break}case H.AMPERSAND:{this._startCharacterReference();break}case H.GREATER_THAN_SIGN:{this._leaveAttrValue(),this.state=Y.DATA,this.emitCurrentTagToken();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),this.currentAttr.value+=vn;break}case H.QUOTATION_MARK:case H.APOSTROPHE:case H.LESS_THAN_SIGN:case H.EQUALS_SIGN:case H.GRAVE_ACCENT:{this._err(ye.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=String.fromCodePoint(e);break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAfterAttributeValueQuoted(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this._leaveAttrValue(),this.state=Y.BEFORE_ATTRIBUTE_NAME;break}case H.SOLIDUS:{this._leaveAttrValue(),this.state=Y.SELF_CLOSING_START_TAG;break}case H.GREATER_THAN_SIGN:{this._leaveAttrValue(),this.state=Y.DATA,this.emitCurrentTagToken();break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this._err(ye.missingWhitespaceBetweenAttributes),this.state=Y.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateSelfClosingStartTag(e){switch(e){case H.GREATER_THAN_SIGN:{let r=this.currentToken;r.selfClosing=!0,this.state=Y.DATA,this.emitCurrentTagToken();break}case H.EOF:{this._err(ye.eofInTag),this._emitEOFToken();break}default:this._err(ye.unexpectedSolidusInTag),this.state=Y.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateBogusComment(e){let r=this.currentToken;switch(e){case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentComment(r);break}case H.EOF:{this.emitCurrentComment(r),this._emitEOFToken();break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.data+=vn;break}default:r.data+=String.fromCodePoint(e)}}_stateMarkupDeclarationOpen(e){this._consumeSequenceIfMatch(xa.DASH_DASH,!0)?(this._createCommentToken(xa.DASH_DASH.length+1),this.state=Y.COMMENT_START):this._consumeSequenceIfMatch(xa.DOCTYPE,!1)?(this.currentLocation=this.getCurrentLocation(xa.DOCTYPE.length+1),this.state=Y.DOCTYPE):this._consumeSequenceIfMatch(xa.CDATA_START,!0)?this.inForeignNode?this.state=Y.CDATA_SECTION:(this._err(ye.cdataInHtmlContent),this._createCommentToken(xa.CDATA_START.length+1),this.currentToken.data="[CDATA[",this.state=Y.BOGUS_COMMENT):this._ensureHibernation()||(this._err(ye.incorrectlyOpenedComment),this._createCommentToken(2),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e))}_stateCommentStart(e){switch(e){case H.HYPHEN_MINUS:{this.state=Y.COMMENT_START_DASH;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptClosingOfEmptyComment),this.state=Y.DATA;let r=this.currentToken;this.emitCurrentComment(r);break}default:this.state=Y.COMMENT,this._stateComment(e)}}_stateCommentStartDash(e){let r=this.currentToken;switch(e){case H.HYPHEN_MINUS:{this.state=Y.COMMENT_END;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptClosingOfEmptyComment),this.state=Y.DATA,this.emitCurrentComment(r);break}case H.EOF:{this._err(ye.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+="-",this.state=Y.COMMENT,this._stateComment(e)}}_stateComment(e){let r=this.currentToken;switch(e){case H.HYPHEN_MINUS:{this.state=Y.COMMENT_END_DASH;break}case H.LESS_THAN_SIGN:{r.data+="<",this.state=Y.COMMENT_LESS_THAN_SIGN;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.data+=vn;break}case H.EOF:{this._err(ye.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+=String.fromCodePoint(e)}}_stateCommentLessThanSign(e){let r=this.currentToken;switch(e){case H.EXCLAMATION_MARK:{r.data+="!",this.state=Y.COMMENT_LESS_THAN_SIGN_BANG;break}case H.LESS_THAN_SIGN:{r.data+="<";break}default:this.state=Y.COMMENT,this._stateComment(e)}}_stateCommentLessThanSignBang(e){e===H.HYPHEN_MINUS?this.state=Y.COMMENT_LESS_THAN_SIGN_BANG_DASH:(this.state=Y.COMMENT,this._stateComment(e))}_stateCommentLessThanSignBangDash(e){e===H.HYPHEN_MINUS?this.state=Y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:(this.state=Y.COMMENT_END_DASH,this._stateCommentEndDash(e))}_stateCommentLessThanSignBangDashDash(e){e!==H.GREATER_THAN_SIGN&&e!==H.EOF&&this._err(ye.nestedComment),this.state=Y.COMMENT_END,this._stateCommentEnd(e)}_stateCommentEndDash(e){let r=this.currentToken;switch(e){case H.HYPHEN_MINUS:{this.state=Y.COMMENT_END;break}case H.EOF:{this._err(ye.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+="-",this.state=Y.COMMENT,this._stateComment(e)}}_stateCommentEnd(e){let r=this.currentToken;switch(e){case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentComment(r);break}case H.EXCLAMATION_MARK:{this.state=Y.COMMENT_END_BANG;break}case H.HYPHEN_MINUS:{r.data+="-";break}case H.EOF:{this._err(ye.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+="--",this.state=Y.COMMENT,this._stateComment(e)}}_stateCommentEndBang(e){let r=this.currentToken;switch(e){case H.HYPHEN_MINUS:{r.data+="--!",this.state=Y.COMMENT_END_DASH;break}case H.GREATER_THAN_SIGN:{this._err(ye.incorrectlyClosedComment),this.state=Y.DATA,this.emitCurrentComment(r);break}case H.EOF:{this._err(ye.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+="--!",this.state=Y.COMMENT,this._stateComment(e)}}_stateDoctype(e){switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.BEFORE_DOCTYPE_NAME;break}case H.GREATER_THAN_SIGN:{this.state=Y.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e);break}case H.EOF:{this._err(ye.eofInDoctype),this._createDoctypeToken(null);let r=this.currentToken;r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingWhitespaceBeforeDoctypeName),this.state=Y.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e)}}_stateBeforeDoctypeName(e){if(EI(e))this._createDoctypeToken(String.fromCharCode(KD(e))),this.state=Y.DOCTYPE_NAME;else switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.NULL:{this._err(ye.unexpectedNullCharacter),this._createDoctypeToken(vn),this.state=Y.DOCTYPE_NAME;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingDoctypeName),this._createDoctypeToken(null);let r=this.currentToken;r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),this._createDoctypeToken(null);let r=this.currentToken;r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._createDoctypeToken(String.fromCodePoint(e)),this.state=Y.DOCTYPE_NAME}}_stateDoctypeName(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.AFTER_DOCTYPE_NAME;break}case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.name+=vn;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:r.name+=String.fromCodePoint(EI(e)?KD(e):e)}}_stateAfterDoctypeName(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._consumeSequenceIfMatch(xa.PUBLIC,!1)?this.state=Y.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._consumeSequenceIfMatch(xa.SYSTEM,!1)?this.state=Y.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._ensureHibernation()||(this._err(ye.invalidCharacterSequenceAfterDoctypeName),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e))}}_stateAfterDoctypePublicKeyword(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;break}case H.QUOTATION_MARK:{this._err(ye.missingWhitespaceAfterDoctypePublicKeyword),r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{this._err(ye.missingWhitespaceAfterDoctypePublicKeyword),r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypePublicIdentifier(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.QUOTATION_MARK:{r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypePublicIdentifierDoubleQuoted(e){let r=this.currentToken;switch(e){case H.QUOTATION_MARK:{this.state=Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.publicId+=vn;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptDoctypePublicIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:r.publicId+=String.fromCodePoint(e)}}_stateDoctypePublicIdentifierSingleQuoted(e){let r=this.currentToken;switch(e){case H.APOSTROPHE:{this.state=Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.publicId+=vn;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptDoctypePublicIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:r.publicId+=String.fromCodePoint(e)}}_stateAfterDoctypePublicIdentifier(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;break}case H.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.QUOTATION_MARK:{this._err(ye.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{this._err(ye.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBetweenDoctypePublicAndSystemIdentifiers(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.GREATER_THAN_SIGN:{this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.QUOTATION_MARK:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateAfterDoctypeSystemKeyword(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:{this.state=Y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;break}case H.QUOTATION_MARK:{this._err(ye.missingWhitespaceAfterDoctypeSystemKeyword),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{this._err(ye.missingWhitespaceAfterDoctypeSystemKeyword),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypeSystemIdentifier(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.QUOTATION_MARK:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case H.APOSTROPHE:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case H.GREATER_THAN_SIGN:{this._err(ye.missingDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypeSystemIdentifierDoubleQuoted(e){let r=this.currentToken;switch(e){case H.QUOTATION_MARK:{this.state=Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.systemId+=vn;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptDoctypeSystemIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:r.systemId+=String.fromCodePoint(e)}}_stateDoctypeSystemIdentifierSingleQuoted(e){let r=this.currentToken;switch(e){case H.APOSTROPHE:{this.state=Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break}case H.NULL:{this._err(ye.unexpectedNullCharacter),r.systemId+=vn;break}case H.GREATER_THAN_SIGN:{this._err(ye.abruptDoctypeSystemIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:r.systemId+=String.fromCodePoint(e)}}_stateAfterDoctypeSystemIdentifier(e){let r=this.currentToken;switch(e){case H.SPACE:case H.LINE_FEED:case H.TABULATION:case H.FORM_FEED:break;case H.GREATER_THAN_SIGN:{this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.EOF:{this._err(ye.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(ye.unexpectedCharacterAfterDoctypeSystemIdentifier),this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBogusDoctype(e){let r=this.currentToken;switch(e){case H.GREATER_THAN_SIGN:{this.emitCurrentDoctype(r),this.state=Y.DATA;break}case H.NULL:{this._err(ye.unexpectedNullCharacter);break}case H.EOF:{this.emitCurrentDoctype(r),this._emitEOFToken();break}default:}}_stateCdataSection(e){switch(e){case H.RIGHT_SQUARE_BRACKET:{this.state=Y.CDATA_SECTION_BRACKET;break}case H.EOF:{this._err(ye.eofInCdata),this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateCdataSectionBracket(e){e===H.RIGHT_SQUARE_BRACKET?this.state=Y.CDATA_SECTION_END:(this._emitChars("]"),this.state=Y.CDATA_SECTION,this._stateCdataSection(e))}_stateCdataSectionEnd(e){switch(e){case H.GREATER_THAN_SIGN:{this.state=Y.DATA;break}case H.RIGHT_SQUARE_BRACKET:{this._emitChars("]");break}default:this._emitChars("]]"),this.state=Y.CDATA_SECTION,this._stateCdataSection(e)}}_stateCharacterReference(){let e=this.entityDecoder.write(this.preprocessor.html,this.preprocessor.pos);if(e<0)if(this.preprocessor.lastChunkWritten)e=this.entityDecoder.end();else{this.active=!1,this.preprocessor.pos=this.preprocessor.html.length-1,this.consumedAfterSnapshot=0,this.preprocessor.endOfChunkHit=!0;return}e===0?(this.preprocessor.pos=this.entityStartPos,this._flushCodePointConsumedAsCharacterReference(H.AMPERSAND),this.state=!this._isCharacterReferenceInAttribute()&&f4e(this.preprocessor.peek(1))?Y.AMBIGUOUS_AMPERSAND:this.returnState):this.state=this.returnState}_stateAmbiguousAmpersand(e){f4e(e)?this._flushCodePointConsumedAsCharacterReference(e):(e===H.SEMICOLON&&this._err(ye.unknownNamedCharacterReference),this.state=this.returnState,this._callState(e))}};var A4e=new Set([C.DD,C.DT,C.LI,C.OPTGROUP,C.OPTION,C.P,C.RB,C.RP,C.RT,C.RTC]),h4e=new Set([...A4e,C.CAPTION,C.COLGROUP,C.TBODY,C.TD,C.TFOOT,C.TH,C.THEAD,C.TR]),zD=new Set([C.APPLET,C.CAPTION,C.HTML,C.MARQUEE,C.OBJECT,C.TABLE,C.TD,C.TEMPLATE,C.TH]),mer=new Set([...zD,C.OL,C.UL]),her=new Set([...zD,C.BUTTON]),g4e=new Set([C.ANNOTATION_XML,C.MI,C.MN,C.MO,C.MS,C.MTEXT]),y4e=new Set([C.DESC,C.FOREIGN_OBJECT,C.TITLE]),ger=new Set([C.TR,C.TEMPLATE,C.HTML]),yer=new Set([C.TBODY,C.TFOOT,C.THEAD,C.TEMPLATE,C.HTML]),Aer=new Set([C.TABLE,C.TEMPLATE,C.HTML]),xer=new Set([C.TD,C.TH]),YD=class{get currentTmplContentOrNode(){return this._isInTemplate()?this.treeAdapter.getTemplateContent(this.current):this.current}constructor(e,r,n){this.treeAdapter=r,this.handler=n,this.items=[],this.tagIDs=[],this.stackTop=-1,this.tmplCount=0,this.currentTagId=C.UNKNOWN,this.current=e}_indexOf(e){return this.items.lastIndexOf(e,this.stackTop)}_isInTemplate(){return this.currentTagId===C.TEMPLATE&&this.treeAdapter.getNamespaceURI(this.current)===Ee.HTML}_updateCurrentElement(){this.current=this.items[this.stackTop],this.currentTagId=this.tagIDs[this.stackTop]}push(e,r){this.stackTop++,this.items[this.stackTop]=e,this.current=e,this.tagIDs[this.stackTop]=r,this.currentTagId=r,this._isInTemplate()&&this.tmplCount++,this.handler.onItemPush(e,r,!0)}pop(){let e=this.current;this.tmplCount>0&&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<e)}}popUntilElementPopped(e){let r=this._indexOf(e);this.shortenToLength(Math.max(r,0))}popUntilPopped(e,r){let n=this._indexOfTagNames(e,r);this.shortenToLength(Math.max(n,0))}popUntilNumberedHeaderPopped(){this.popUntilPopped(xb,Ee.HTML)}popUntilTableCellPopped(){this.popUntilPopped(xer,Ee.HTML)}popAllUpToHtmlElement(){this.tmplCount=0,this.shortenToLength(1)}_indexOfTagNames(e,r){for(let n=this.stackTop;n>=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(Aer,Ee.HTML)}clearBackToTableBodyContext(){this.clearBackTo(yer,Ee.HTML)}clearBackToTableRowContext(){this.clearBackTo(ger,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(y4e.has(s))return!1;break}case Ee.MATHML:{if(g4e.has(s))return!1;break}}}return!0}hasInScope(e){return this.hasInDynamicScope(e,zD)}hasInListItemScope(e){return this.hasInDynamicScope(e,mer)}hasInButtonScope(e){return this.hasInDynamicScope(e,her)}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(xb.has(r))return!0;if(zD.has(r))return!1;break}case Ee.SVG:{if(y4e.has(r))return!1;break}case Ee.MATHML:{if(g4e.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&&A4e.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;this.currentTagId!==void 0&&h4e.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(e){for(;this.currentTagId!==void 0&&this.currentTagId!==e&&h4e.has(this.currentTagId);)this.pop()}};var bu;(function(t){t[t.Marker=0]="Marker",t[t.Element=1]="Element"})(bu||(bu={}));var x4e={type:bu.Marker},JD=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<this.entries.length;o++){let c=this.entries[o];if(c.type===bu.Marker)break;let{element:u}=c;if(this.treeAdapter.getTagName(u)===i&&this.treeAdapter.getNamespaceURI(u)===a){let l=this.treeAdapter.getAttrList(u);l.length===s&&n.push({idx:o,attrs:l})}}return n}_ensureNoahArkCondition(e){if(this.entries.length<3)return;let r=this.treeAdapter.getAttrList(e),n=this._getNoahArkConditionCandidates(e,r);if(n.length<3)return;let s=new Map(r.map(a=>[a.name,a.value])),i=0;for(let a=0;a<n.length;a++){let o=n[a];o.attrs.every(c=>s.get(c.name)===c.value)&&(i+=1,i>=3&&this.entries.splice(o.idx,1))}}insertMarker(){this.entries.unshift(x4e)}pushElement(e,r){this._ensureNoahArkCondition(e),this.entries.unshift({type:bu.Element,element:e,token:r})}insertElementAfterBookmark(e,r){let n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:bu.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(x4e);e===-1?this.entries.length=0:this.entries.splice(0,e+1)}getElementEntryInScopeWithTagName(e){let r=this.entries.find(n=>n.type===bu.Marker||this.treeAdapter.getTagName(n.element)===e);return r&&r.type===bu.Element?r:null}getElementEntry(e){return this.entries.find(r=>r.type===bu.Element&&r.element===e)}};var wc={createDocument(){return{nodeName:"#document",mode:Yi.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};wc.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(wc.isTextNode(r)){r.value+=e;return}}wc.appendChild(t,wc.createTextNode(e))},insertTextBefore(t,e,r){let n=t.childNodes[t.childNodes.indexOf(r)-1];n&&wc.isTextNode(n)?n.value+=e:wc.insertBefore(t,wc.createTextNode(e),r)},adoptAttributes(t,e){let r=new Set(t.attrs.map(n=>n.name));for(let n=0;n<e.length;n++)r.has(e[n].name)||t.attrs.push(e[n])},getFirstChild(t){return t.childNodes[0]},getChildNodes(t){return t.childNodes},getParentNode(t){return t.parentNode},getAttrList(t){return t.attrs},getTagName(t){return t.tagName},getNamespaceURI(t){return t.namespaceURI},getTextNodeContent(t){return t.value},getCommentNodeContent(t){return t.data},getDocumentTypeNodeName(t){return t.name},getDocumentTypeNodePublicId(t){return t.publicId},getDocumentTypeNodeSystemId(t){return t.systemId},isTextNode(t){return t.nodeName==="#text"},isCommentNode(t){return t.nodeName==="#comment"},isDocumentTypeNode(t){return t.nodeName==="#documentType"},isElementNode(t){return Object.prototype.hasOwnProperty.call(t,"tagName")},setNodeSourceCodeLocation(t,e){t.sourceCodeLocation=e},getNodeSourceCodeLocation(t){return t.sourceCodeLocation},updateNodeSourceCodeLocation(t,e){t.sourceCodeLocation={...t.sourceCodeLocation,...e}}};var _4e="html",ber="about:legacy-compat",_er="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd",E4e=["+//silmaril//dtd html pro v0r11 19970101//","-//as//dtd html 3.0 aswedit + extensions//","-//advasoft ltd//dtd html 3.0 aswedit + extensions//","-//ietf//dtd html 2.0 level 1//","-//ietf//dtd html 2.0 level 2//","-//ietf//dtd html 2.0 strict level 1//","-//ietf//dtd html 2.0 strict level 2//","-//ietf//dtd html 2.0 strict//","-//ietf//dtd html 2.0//","-//ietf//dtd html 2.1e//","-//ietf//dtd html 3.0//","-//ietf//dtd html 3.2 final//","-//ietf//dtd html 3.2//","-//ietf//dtd html 3//","-//ietf//dtd html level 0//","-//ietf//dtd html level 1//","-//ietf//dtd html level 2//","-//ietf//dtd html level 3//","-//ietf//dtd html strict level 0//","-//ietf//dtd html strict level 1//","-//ietf//dtd html strict level 2//","-//ietf//dtd html strict level 3//","-//ietf//dtd html strict//","-//ietf//dtd html//","-//metrius//dtd metrius presentational//","-//microsoft//dtd internet explorer 2.0 html strict//","-//microsoft//dtd internet explorer 2.0 html//","-//microsoft//dtd internet explorer 2.0 tables//","-//microsoft//dtd internet explorer 3.0 html strict//","-//microsoft//dtd internet explorer 3.0 html//","-//microsoft//dtd internet explorer 3.0 tables//","-//netscape comm. corp.//dtd html//","-//netscape comm. corp.//dtd strict html//","-//o'reilly and associates//dtd html 2.0//","-//o'reilly and associates//dtd html extended 1.0//","-//o'reilly and associates//dtd html extended relaxed 1.0//","-//sq//dtd html 2.0 hotmetal + extensions//","-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//","-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//","-//spyglass//dtd html 2.0 extended//","-//sun microsystems corp.//dtd hotjava html//","-//sun microsystems corp.//dtd hotjava strict html//","-//w3c//dtd html 3 1995-03-24//","-//w3c//dtd html 3.2 draft//","-//w3c//dtd html 3.2 final//","-//w3c//dtd html 3.2//","-//w3c//dtd html 3.2s draft//","-//w3c//dtd html 4.0 frameset//","-//w3c//dtd html 4.0 transitional//","-//w3c//dtd html experimental 19960712//","-//w3c//dtd html experimental 970421//","-//w3c//dtd w3 html//","-//w3o//dtd w3 html 3.0//","-//webtechs//dtd mozilla html 2.0//","-//webtechs//dtd mozilla html//"],Eer=[...E4e,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"],ver=new Set(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"]),v4e=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],Ser=[...v4e,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"];function b4e(t,e){return e.some(r=>t.startsWith(r))}function S4e(t){return t.name===_4e&&t.publicId===null&&(t.systemId===null||t.systemId===ber)}function I4e(t){if(t.name!==_4e)return Yi.QUIRKS;let{systemId:e}=t;if(e&&e.toLowerCase()===_er)return Yi.QUIRKS;let{publicId:r}=t;if(r!==null){if(r=r.toLowerCase(),ver.has(r))return Yi.QUIRKS;let n=e===null?Eer:E4e;if(b4e(r,n))return Yi.QUIRKS;if(n=e===null?v4e:Ser,b4e(r,n))return Yi.LIMITED_QUIRKS}return Yi.NO_QUIRKS}var C4e={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},Cer="definitionurl",Ter="definitionURL",wer=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])),Rer=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}]]),Ner=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])),Oer=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 T4e(t){let e=t.tagID;return e===C.FONT&&t.attrs.some(({name:n})=>n===Tl.COLOR||n===Tl.SIZE||n===Tl.FACE)||Oer.has(e)}function kV(t){for(let e=0;e<t.attrs.length;e++)if(t.attrs[e].name===Cer){t.attrs[e].name=Ter;break}}function PV(t){for(let e=0;e<t.attrs.length;e++){let r=wer.get(t.attrs[e].name);r!=null&&(t.attrs[e].name=r)}}function XD(t){for(let e=0;e<t.attrs.length;e++){let r=Rer.get(t.attrs[e].name);r&&(t.attrs[e].prefix=r.prefix,t.attrs[e].name=r.name,t.attrs[e].namespace=r.namespace)}}function w4e(t){let e=Ner.get(t.tagName);e!=null&&(t.tagName=e,t.tagID=k0(t.tagName))}function ker(t,e){return e===Ee.MATHML&&(t===C.MI||t===C.MO||t===C.MN||t===C.MS||t===C.MTEXT)}function Per(t,e,r){if(e===Ee.MATHML&&t===C.ANNOTATION_XML){for(let n=0;n<r.length;n++)if(r[n].name===Tl.ENCODING){let s=r[n].value.toLowerCase();return s===C4e.TEXT_HTML||s===C4e.APPLICATION_XML}}return e===Ee.SVG&&(t===C.FOREIGN_OBJECT||t===C.DESC||t===C.TITLE)}function R4e(t,e,r,n){return(!n||n===Ee.HTML)&&Per(t,e,r)||(!n||n===Ee.MATHML)&&ker(t,e)}var Der="hidden",Ber=8,Ler=3,te;(function(t){t[t.INITIAL=0]="INITIAL",t[t.BEFORE_HTML=1]="BEFORE_HTML",t[t.BEFORE_HEAD=2]="BEFORE_HEAD",t[t.IN_HEAD=3]="IN_HEAD",t[t.IN_HEAD_NO_SCRIPT=4]="IN_HEAD_NO_SCRIPT",t[t.AFTER_HEAD=5]="AFTER_HEAD",t[t.IN_BODY=6]="IN_BODY",t[t.TEXT=7]="TEXT",t[t.IN_TABLE=8]="IN_TABLE",t[t.IN_TABLE_TEXT=9]="IN_TABLE_TEXT",t[t.IN_CAPTION=10]="IN_CAPTION",t[t.IN_COLUMN_GROUP=11]="IN_COLUMN_GROUP",t[t.IN_TABLE_BODY=12]="IN_TABLE_BODY",t[t.IN_ROW=13]="IN_ROW",t[t.IN_CELL=14]="IN_CELL",t[t.IN_SELECT=15]="IN_SELECT",t[t.IN_SELECT_IN_TABLE=16]="IN_SELECT_IN_TABLE",t[t.IN_TEMPLATE=17]="IN_TEMPLATE",t[t.AFTER_BODY=18]="AFTER_BODY",t[t.IN_FRAMESET=19]="IN_FRAMESET",t[t.AFTER_FRAMESET=20]="AFTER_FRAMESET",t[t.AFTER_AFTER_BODY=21]="AFTER_AFTER_BODY",t[t.AFTER_AFTER_FRAMESET=22]="AFTER_AFTER_FRAMESET"})(te||(te={}));var Mer={startLine:-1,startCol:-1,startOffset:-1,endLine:-1,endCol:-1,endOffset:-1},D4e=new Set([C.TABLE,C.TBODY,C.TFOOT,C.THEAD,C.TR]),O4e={scriptingEnabled:!0,sourceCodeLocationInfo:!1,treeAdapter:wc,onParseError:null},bb=class{constructor(e,r,n=null,s=null){this.fragmentContext=n,this.scriptHandler=s,this.currentToken=null,this.stopped=!1,this.insertionMode=te.INITIAL,this.originalInsertionMode=te.INITIAL,this.headElement=null,this.formElement=null,this.currentNotInHTML=!1,this.tmplInsertionModeStack=[],this.pendingCharacterTokens=[],this.hasNonWhitespacePendingCharacterToken=!1,this.framesetOk=!0,this.skipNextNewLine=!1,this.fosterParentingEnabled=!1,this.options={...O4e,...e},this.treeAdapter=this.options.treeAdapter,this.onParseError=this.options.onParseError,this.onParseError&&(this.options.sourceCodeLocationInfo=!0),this.document=r??this.treeAdapter.createDocument(),this.tokenizer=new vI(this.options,this),this.activeFormattingElements=new JD(this.treeAdapter),this.fragmentContextID=n?k0(this.treeAdapter.getTagName(n)):C.UNKNOWN,this._setContextModes(n??this.document,this.fragmentContextID),this.openElements=new YD(this.document,this.treeAdapter,this)}static parse(e,r){let n=new this(r);return n.tokenizer.write(e,!0),n.document}static getFragmentParser(e,r){let n={...O4e,...r};e??(e=n.treeAdapter.createElement(pe.TEMPLATE,Ee.HTML,[]));let s=n.treeAdapter.createElement("documentmock",Ee.HTML,[]),i=new this(n,s,e);return i.fragmentContextID===C.TEMPLATE&&i.tmplInsertionModeStack.unshift(te.IN_TEMPLATE),i._initTokenizerForFragmentParsing(),i._insertFakeRootElement(),i._resetInsertionMode(),i._findFormInFragmentContext(),i}getFragment(){let e=this.treeAdapter.getFirstChild(this.document),r=this.treeAdapter.createDocumentFragment();return this._adoptNodes(e,r),r}_err(e,r,n){var s;if(!this.onParseError)return;let i=(s=e.location)!==null&&s!==void 0?s:Mer,a={code:r,startLine:i.startLine,startCol:i.startCol,startOffset:i.startOffset,endLine:n?i.startLine:i.endLine,endCol:n?i.startCol:i.endCol,endOffset:n?i.startOffset:i.endOffset};this.onParseError(a)}onItemPush(e,r,n){var s,i;(i=(s=this.treeAdapter).onItemPush)===null||i===void 0||i.call(s,e),n&&this.openElements.stackTop>0&&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=Ji.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let e=this.fragmentContext;for(;e;){if(this.treeAdapter.getTagName(e)===pe.FORM){this.formElement=e;break}e=this.treeAdapter.getParentNode(e)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==Ee.HTML))switch(this.fragmentContextID){case C.TITLE:case C.TEXTAREA:{this.tokenizer.state=Ji.RCDATA;break}case C.STYLE:case C.XMP:case C.IFRAME:case C.NOEMBED:case C.NOFRAMES:case C.NOSCRIPT:{this.tokenizer.state=Ji.RAWTEXT;break}case C.SCRIPT:{this.tokenizer.state=Ji.SCRIPT_DATA;break}case C.PLAINTEXT:{this.tokenizer.state=Ji.PLAINTEXT;break}default:}}_setDocumentType(e){let r=e.name||"",n=e.publicId||"",s=e.systemId||"";if(this.treeAdapter.setDocumentType(this.document,r,n,s),e.location){let a=this.treeAdapter.getChildNodes(this.document).find(o=>this.treeAdapter.isDocumentTypeNode(o));a&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}}_attachElementToTree(e,r){if(this.options.sourceCodeLocationInfo){let n=r&&{...r,startTag:r};this.treeAdapter.setNodeSourceCodeLocation(e,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(e);else{let n=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(n??this.document,e)}}_appendElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location)}_insertElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location),this.openElements.push(n,e.tagID)}_insertFakeElement(e,r){let n=this.treeAdapter.createElement(e,Ee.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,r)}_insertTemplate(e){let r=this.treeAdapter.createElement(e.tagName,Ee.HTML,e.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(r,n),this._attachElementToTree(r,e.location),this.openElements.push(r,e.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){let e=this.treeAdapter.createElement(pe.HTML,Ee.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(e,null),this.treeAdapter.appendChild(this.openElements.current,e),this.openElements.push(e,C.HTML)}_appendCommentNode(e,r){let n=this.treeAdapter.createCommentNode(e.data);this.treeAdapter.appendChild(r,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,e.location)}_insertCharacters(e){let r,n;if(this._shouldFosterParentOnInsertion()?({parent:r,beforeElement:n}=this._findFosterParentingLocation(),n?this.treeAdapter.insertTextBefore(r,e.chars,n):this.treeAdapter.insertText(r,e.chars)):(r=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(r,e.chars)),!e.location)return;let s=this.treeAdapter.getChildNodes(r),i=n?s.lastIndexOf(n):s.length,a=s[i-1];if(this.treeAdapter.getNodeSourceCodeLocation(a)){let{endLine:c,endCol:u,endOffset:l}=e.location;this.treeAdapter.updateNodeSourceCodeLocation(a,{endLine:c,endCol:u,endOffset:l})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}_adoptNodes(e,r){for(let n=this.treeAdapter.getFirstChild(e);n;n=this.treeAdapter.getFirstChild(e))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(r,n)}_setEndLocation(e,r){if(this.treeAdapter.getNodeSourceCodeLocation(e)&&r.location){let n=r.location,s=this.treeAdapter.getTagName(e),i=r.type===Cr.END_TAG&&s===r.tagName?{endTag:{...n},endLine:n.endLine,endCol:n.endCol,endOffset:n.endOffset}:{endLine:n.startLine,endCol:n.startCol,endOffset:n.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(e,i)}}shouldProcessStartTagTokenInForeignContent(e){if(!this.currentNotInHTML)return!1;let r,n;return this.openElements.stackTop===0&&this.fragmentContext?(r=this.fragmentContext,n=this.fragmentContextID):{current:r,currentTagId:n}=this.openElements,e.tagID===C.SVG&&this.treeAdapter.getTagName(r)===pe.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(r)===Ee.MATHML?!1:this.tokenizer.inForeignNode||(e.tagID===C.MGLYPH||e.tagID===C.MALIGNMARK)&&n!==void 0&&!this._isIntegrationPoint(n,r,Ee.HTML)}_processToken(e){switch(e.type){case Cr.CHARACTER:{this.onCharacter(e);break}case Cr.NULL_CHARACTER:{this.onNullCharacter(e);break}case Cr.COMMENT:{this.onComment(e);break}case Cr.DOCTYPE:{this.onDoctype(e);break}case Cr.START_TAG:{this._processStartTag(e);break}case Cr.END_TAG:{this.onEndTag(e);break}case Cr.EOF:{this.onEof(e);break}case Cr.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(e);break}}}_isIntegrationPoint(e,r,n){let s=this.treeAdapter.getNamespaceURI(r),i=this.treeAdapter.getAttrList(r);return R4e(e,s,i,n)}_reconstructActiveFormattingElements(){let e=this.activeFormattingElements.entries.length;if(e){let r=this.activeFormattingElements.entries.findIndex(s=>s.type===bu.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 D4e.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 NV[n].has(r)}onCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){prr(this,e);return}switch(this.insertionMode){case te.INITIAL:{SI(this,e);break}case te.BEFORE_HTML:{CI(this,e);break}case te.BEFORE_HEAD:{TI(this,e);break}case te.IN_HEAD:{wI(this,e);break}case te.IN_HEAD_NO_SCRIPT:{RI(this,e);break}case te.AFTER_HEAD:{NI(this,e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:{L4e(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:{DV(this,e);break}case te.IN_TABLE_TEXT:{q4e(this,e);break}case te.IN_COLUMN_GROUP:{e4(this,e);break}case te.AFTER_BODY:{t4(this,e);break}case te.AFTER_AFTER_BODY:{ZD(this,e);break}default:}}onNullCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){frr(this,e);return}switch(this.insertionMode){case te.INITIAL:{SI(this,e);break}case te.BEFORE_HTML:{CI(this,e);break}case te.BEFORE_HEAD:{TI(this,e);break}case te.IN_HEAD:{wI(this,e);break}case te.IN_HEAD_NO_SCRIPT:{RI(this,e);break}case te.AFTER_HEAD:{NI(this,e);break}case te.TEXT:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{DV(this,e);break}case te.IN_COLUMN_GROUP:{e4(this,e);break}case te.AFTER_BODY:{t4(this,e);break}case te.AFTER_AFTER_BODY:{ZD(this,e);break}default:}}onComment(e){if(this.skipNextNewLine=!1,this.currentNotInHTML){BV(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:{BV(this,e);break}case te.IN_TABLE_TEXT:{II(this,e);break}case te.AFTER_BODY:{Qer(this,e);break}case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{Her(this,e);break}default:}}onDoctype(e){switch(this.skipNextNewLine=!1,this.insertionMode){case te.INITIAL:{Ger(this,e);break}case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:{this._err(e,ye.misplacedDoctype);break}case te.IN_TABLE_TEXT:{II(this,e);break}default:}}onStartTag(e){this.skipNextNewLine=!1,this.currentToken=e,this._processStartTag(e),e.selfClosing&&!e.ackSelfClosing&&this._err(e,ye.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(e){this.shouldProcessStartTagTokenInForeignContent(e)?mrr(this,e):this._startTagOutsideForeignContent(e)}_startTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{SI(this,e);break}case te.BEFORE_HTML:{Ver(this,e);break}case te.BEFORE_HEAD:{zer(this,e);break}case te.IN_HEAD:{_u(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Xer(this,e);break}case te.AFTER_HEAD:{etr(this,e);break}case te.IN_BODY:{Xi(this,e);break}case te.IN_TABLE:{_b(this,e);break}case te.IN_TABLE_TEXT:{II(this,e);break}case te.IN_CAPTION:{Ytr(this,e);break}case te.IN_COLUMN_GROUP:{$V(this,e);break}case te.IN_TABLE_BODY:{s4(this,e);break}case te.IN_ROW:{i4(this,e);break}case te.IN_CELL:{Ztr(this,e);break}case te.IN_SELECT:{H4e(this,e);break}case te.IN_SELECT_IN_TABLE:{trr(this,e);break}case te.IN_TEMPLATE:{nrr(this,e);break}case te.AFTER_BODY:{irr(this,e);break}case te.IN_FRAMESET:{arr(this,e);break}case te.AFTER_FRAMESET:{crr(this,e);break}case te.AFTER_AFTER_BODY:{lrr(this,e);break}case te.AFTER_AFTER_FRAMESET:{drr(this,e);break}default:}}onEndTag(e){this.skipNextNewLine=!1,this.currentToken=e,this.currentNotInHTML?hrr(this,e):this._endTagOutsideForeignContent(e)}_endTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{SI(this,e);break}case te.BEFORE_HTML:{Ker(this,e);break}case te.BEFORE_HEAD:{Yer(this,e);break}case te.IN_HEAD:{Jer(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Zer(this,e);break}case te.AFTER_HEAD:{ttr(this,e);break}case te.IN_BODY:{n4(this,e);break}case te.TEXT:{Utr(this,e);break}case te.IN_TABLE:{OI(this,e);break}case te.IN_TABLE_TEXT:{II(this,e);break}case te.IN_CAPTION:{Jtr(this,e);break}case te.IN_COLUMN_GROUP:{Xtr(this,e);break}case te.IN_TABLE_BODY:{LV(this,e);break}case te.IN_ROW:{Q4e(this,e);break}case te.IN_CELL:{err(this,e);break}case te.IN_SELECT:{G4e(this,e);break}case te.IN_SELECT_IN_TABLE:{rrr(this,e);break}case te.IN_TEMPLATE:{srr(this,e);break}case te.AFTER_BODY:{K4e(this,e);break}case te.IN_FRAMESET:{orr(this,e);break}case te.AFTER_FRAMESET:{urr(this,e);break}case te.AFTER_AFTER_BODY:{ZD(this,e);break}default:}}onEof(e){switch(this.insertionMode){case te.INITIAL:{SI(this,e);break}case te.BEFORE_HTML:{CI(this,e);break}case te.BEFORE_HEAD:{TI(this,e);break}case te.IN_HEAD:{wI(this,e);break}case te.IN_HEAD_NO_SCRIPT:{RI(this,e);break}case te.AFTER_HEAD:{NI(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:{U4e(this,e);break}case te.TEXT:{Ftr(this,e);break}case te.IN_TABLE_TEXT:{II(this,e);break}case te.IN_TEMPLATE:{V4e(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:{WV(this,e);break}default:}}onWhitespaceCharacter(e){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,e.chars.charCodeAt(0)===H.LINE_FEED)){if(e.chars.length===1)return;e.chars=e.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(e);return}switch(this.insertionMode){case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.TEXT:case te.IN_COLUMN_GROUP:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{this._insertCharacters(e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:case te.AFTER_BODY:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{B4e(this,e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{DV(this,e);break}case te.IN_TABLE_TEXT:{F4e(this,e);break}default:}}};function Wer(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):$4e(t,e),r}function $er(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 Uer(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>=Ler;!o||c?(c&&t.activeFormattingElements.removeEntry(o),t.openElements.remove(a)):(a=Fer(t,o),n===e&&(t.activeFormattingElements.bookmark=o),t.treeAdapter.detachNode(n),t.treeAdapter.appendChild(a,n),n=a)}return n}function Fer(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 qer(t,e,r){let n=t.treeAdapter.getTagName(e),s=k0(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 jer(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 MV(t,e){for(let r=0;r<Ber;r++){let n=Wer(t,e);if(!n)break;let s=$er(t,n);if(!s)break;t.activeFormattingElements.bookmark=n;let i=Uer(t,s,n.element),a=t.openElements.getCommonAncestor(n.element);t.treeAdapter.detachNode(i),a&&qer(t,a,i),jer(t,s,n)}}function BV(t,e){t._appendCommentNode(e,t.openElements.currentTmplContentOrNode)}function Qer(t,e){t._appendCommentNode(e,t.openElements.items[0])}function Her(t,e){t._appendCommentNode(e,t.document)}function WV(t,e){if(t.stopped=!0,e.location){let r=t.fragmentContext?0:2;for(let n=t.openElements.stackTop;n>=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 Ger(t,e){t._setDocumentType(e);let r=e.forceQuirks?Yi.QUIRKS:I4e(e);S4e(e)||t._err(e,ye.nonConformingDoctype),t.treeAdapter.setDocumentMode(t.document,r),t.insertionMode=te.BEFORE_HTML}function SI(t,e){t._err(e,ye.missingDoctype,!0),t.treeAdapter.setDocumentMode(t.document,Yi.QUIRKS),t.insertionMode=te.BEFORE_HTML,t._processToken(e)}function Ver(t,e){e.tagID===C.HTML?(t._insertElement(e,Ee.HTML),t.insertionMode=te.BEFORE_HEAD):CI(t,e)}function Ker(t,e){let r=e.tagID;(r===C.HTML||r===C.HEAD||r===C.BODY||r===C.BR)&&CI(t,e)}function CI(t,e){t._insertFakeRootElement(),t.insertionMode=te.BEFORE_HEAD,t._processToken(e)}function zer(t,e){switch(e.tagID){case C.HTML:{Xi(t,e);break}case C.HEAD:{t._insertElement(e,Ee.HTML),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD;break}default:TI(t,e)}}function Yer(t,e){let r=e.tagID;r===C.HEAD||r===C.BODY||r===C.HTML||r===C.BR?TI(t,e):t._err(e,ye.endTagWithoutMatchingOpenElement)}function TI(t,e){t._insertFakeElement(pe.HEAD,C.HEAD),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD,t._processToken(e)}function _u(t,e){switch(e.tagID){case C.HTML:{Xi(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,Ji.RCDATA);break}case C.NOSCRIPT:{t.options.scriptingEnabled?t._switchToTextParsing(e,Ji.RAWTEXT):(t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_HEAD_NO_SCRIPT);break}case C.NOFRAMES:case C.STYLE:{t._switchToTextParsing(e,Ji.RAWTEXT);break}case C.SCRIPT:{t._switchToTextParsing(e,Ji.SCRIPT_DATA);break}case C.TEMPLATE:{t._insertTemplate(e),t.activeFormattingElements.insertMarker(),t.framesetOk=!1,t.insertionMode=te.IN_TEMPLATE,t.tmplInsertionModeStack.unshift(te.IN_TEMPLATE);break}case C.HEAD:{t._err(e,ye.misplacedStartTagForHeadElement);break}default:wI(t,e)}}function Jer(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:{wI(t,e);break}case C.TEMPLATE:{Zh(t,e);break}default:t._err(e,ye.endTagWithoutMatchingOpenElement)}}function Zh(t,e){t.openElements.tmplCount>0?(t.openElements.generateImpliedEndTagsThoroughly(),t.openElements.currentTagId!==C.TEMPLATE&&t._err(e,ye.closingOfElementWithOpenChildElements),t.openElements.popUntilTagNamePopped(C.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode()):t._err(e,ye.endTagWithoutMatchingOpenElement)}function wI(t,e){t.openElements.pop(),t.insertionMode=te.AFTER_HEAD,t._processToken(e)}function Xer(t,e){switch(e.tagID){case C.HTML:{Xi(t,e);break}case C.BASEFONT:case C.BGSOUND:case C.HEAD:case C.LINK:case C.META:case C.NOFRAMES:case C.STYLE:{_u(t,e);break}case C.NOSCRIPT:{t._err(e,ye.nestedNoscriptInHead);break}default:RI(t,e)}}function Zer(t,e){switch(e.tagID){case C.NOSCRIPT:{t.openElements.pop(),t.insertionMode=te.IN_HEAD;break}case C.BR:{RI(t,e);break}default:t._err(e,ye.endTagWithoutMatchingOpenElement)}}function RI(t,e){let r=e.type===Cr.EOF?ye.openElementsLeftAfterEof:ye.disallowedContentInNoscriptInHead;t._err(e,r),t.openElements.pop(),t.insertionMode=te.IN_HEAD,t._processToken(e)}function etr(t,e){switch(e.tagID){case C.HTML:{Xi(t,e);break}case C.BODY:{t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_BODY;break}case C.FRAMESET:{t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET;break}case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:case C.NOFRAMES:case C.SCRIPT:case C.STYLE:case C.TEMPLATE:case C.TITLE:{t._err(e,ye.abandonedHeadElementChild),t.openElements.push(t.headElement,C.HEAD),_u(t,e),t.openElements.remove(t.headElement);break}case C.HEAD:{t._err(e,ye.misplacedStartTagForHeadElement);break}default:NI(t,e)}}function ttr(t,e){switch(e.tagID){case C.BODY:case C.HTML:case C.BR:{NI(t,e);break}case C.TEMPLATE:{Zh(t,e);break}default:t._err(e,ye.endTagWithoutMatchingOpenElement)}}function NI(t,e){t._insertFakeElement(pe.BODY,C.BODY),t.insertionMode=te.IN_BODY,r4(t,e)}function r4(t,e){switch(e.type){case Cr.CHARACTER:{L4e(t,e);break}case Cr.WHITESPACE_CHARACTER:{B4e(t,e);break}case Cr.COMMENT:{BV(t,e);break}case Cr.START_TAG:{Xi(t,e);break}case Cr.END_TAG:{n4(t,e);break}case Cr.EOF:{U4e(t,e);break}default:}}function B4e(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e)}function L4e(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e),t.framesetOk=!1}function rtr(t,e){t.openElements.tmplCount===0&&t.treeAdapter.adoptAttributes(t.openElements.items[0],e.attrs)}function ntr(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t.openElements.tmplCount===0&&(t.framesetOk=!1,t.treeAdapter.adoptAttributes(r,e.attrs))}function str(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 itr(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function atr(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t.openElements.currentTagId!==void 0&&xb.has(t.openElements.currentTagId)&&t.openElements.pop(),t._insertElement(e,Ee.HTML)}function otr(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.framesetOk=!1}function ctr(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 utr(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 ltr(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.tokenizer.state=Ji.PLAINTEXT}function dtr(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 ftr(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(pe.A);r&&(MV(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 ptr(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function mtr(t,e){t._reconstructActiveFormattingElements(),t.openElements.hasInScope(C.NOBR)&&(MV(t,e),t._reconstructActiveFormattingElements()),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function htr(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.insertMarker(),t.framesetOk=!1}function gtr(t,e){t.treeAdapter.getDocumentMode(t.document)!==Yi.QUIRKS&&t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_TABLE}function M4e(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function W4e(t){let e=QD(t,Tl.TYPE);return e!=null&&e.toLowerCase()===Der}function ytr(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),W4e(e)||(t.framesetOk=!1),e.ackSelfClosing=!0}function Atr(t,e){t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0}function xtr(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function btr(t,e){e.tagName=pe.IMG,e.tagID=C.IMG,M4e(t,e)}function _tr(t,e){t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.tokenizer.state=Ji.RCDATA,t.originalInsertionMode=t.insertionMode,t.framesetOk=!1,t.insertionMode=te.TEXT}function Etr(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._reconstructActiveFormattingElements(),t.framesetOk=!1,t._switchToTextParsing(e,Ji.RAWTEXT)}function vtr(t,e){t.framesetOk=!1,t._switchToTextParsing(e,Ji.RAWTEXT)}function k4e(t,e){t._switchToTextParsing(e,Ji.RAWTEXT)}function Str(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 Itr(t,e){t.openElements.currentTagId===C.OPTION&&t.openElements.pop(),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function Ctr(t,e){t.openElements.hasInScope(C.RUBY)&&t.openElements.generateImpliedEndTags(),t._insertElement(e,Ee.HTML)}function Ttr(t,e){t.openElements.hasInScope(C.RUBY)&&t.openElements.generateImpliedEndTagsWithExclusion(C.RTC),t._insertElement(e,Ee.HTML)}function wtr(t,e){t._reconstructActiveFormattingElements(),kV(e),XD(e),e.selfClosing?t._appendElement(e,Ee.MATHML):t._insertElement(e,Ee.MATHML),e.ackSelfClosing=!0}function Rtr(t,e){t._reconstructActiveFormattingElements(),PV(e),XD(e),e.selfClosing?t._appendElement(e,Ee.SVG):t._insertElement(e,Ee.SVG),e.ackSelfClosing=!0}function P4e(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function Xi(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:{ptr(t,e);break}case C.A:{ftr(t,e);break}case C.H1:case C.H2:case C.H3:case C.H4:case C.H5:case C.H6:{atr(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:{itr(t,e);break}case C.LI:case C.DD:case C.DT:{utr(t,e);break}case C.BR:case C.IMG:case C.WBR:case C.AREA:case C.EMBED:case C.KEYGEN:{M4e(t,e);break}case C.HR:{xtr(t,e);break}case C.RB:case C.RTC:{Ctr(t,e);break}case C.RT:case C.RP:{Ttr(t,e);break}case C.PRE:case C.LISTING:{otr(t,e);break}case C.XMP:{Etr(t,e);break}case C.SVG:{Rtr(t,e);break}case C.HTML:{rtr(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:{_u(t,e);break}case C.BODY:{ntr(t,e);break}case C.FORM:{ctr(t,e);break}case C.NOBR:{mtr(t,e);break}case C.MATH:{wtr(t,e);break}case C.TABLE:{gtr(t,e);break}case C.INPUT:{ytr(t,e);break}case C.PARAM:case C.TRACK:case C.SOURCE:{Atr(t,e);break}case C.IMAGE:{btr(t,e);break}case C.BUTTON:{dtr(t,e);break}case C.APPLET:case C.OBJECT:case C.MARQUEE:{htr(t,e);break}case C.IFRAME:{vtr(t,e);break}case C.SELECT:{Str(t,e);break}case C.OPTION:case C.OPTGROUP:{Itr(t,e);break}case C.NOEMBED:case C.NOFRAMES:{k4e(t,e);break}case C.FRAMESET:{str(t,e);break}case C.TEXTAREA:{_tr(t,e);break}case C.NOSCRIPT:{t.options.scriptingEnabled?k4e(t,e):P4e(t,e);break}case C.PLAINTEXT:{ltr(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:P4e(t,e)}}function Ntr(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 Otr(t,e){t.openElements.hasInScope(C.BODY)&&(t.insertionMode=te.AFTER_BODY,K4e(t,e))}function ktr(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r))}function Ptr(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 Dtr(t){t.openElements.hasInButtonScope(C.P)||t._insertFakeElement(pe.P,C.P),t._closePElement()}function Btr(t){t.openElements.hasInListItemScope(C.LI)&&(t.openElements.generateImpliedEndTagsWithExclusion(C.LI),t.openElements.popUntilTagNamePopped(C.LI))}function Ltr(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTagsWithExclusion(r),t.openElements.popUntilTagNamePopped(r))}function Mtr(t){t.openElements.hasNumberedHeaderInScope()&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilNumberedHeaderPopped())}function Wtr(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r),t.activeFormattingElements.clearToLastMarker())}function $tr(t){t._reconstructActiveFormattingElements(),t._insertFakeElement(pe.BR,C.BR),t.openElements.pop(),t.framesetOk=!1}function $4e(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 n4(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:{MV(t,e);break}case C.P:{Dtr(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:{ktr(t,e);break}case C.LI:{Btr(t);break}case C.DD:case C.DT:{Ltr(t,e);break}case C.H1:case C.H2:case C.H3:case C.H4:case C.H5:case C.H6:{Mtr(t);break}case C.BR:{$tr(t);break}case C.BODY:{Ntr(t,e);break}case C.HTML:{Otr(t,e);break}case C.FORM:{Ptr(t);break}case C.APPLET:case C.OBJECT:case C.MARQUEE:{Wtr(t,e);break}case C.TEMPLATE:{Zh(t,e);break}default:$4e(t,e)}}function U4e(t,e){t.tmplInsertionModeStack.length>0?V4e(t,e):WV(t,e)}function Utr(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 Ftr(t,e){t._err(e,ye.eofInElementThatCanContainOnlyText),t.openElements.pop(),t.insertionMode=t.originalInsertionMode,t.onEof(e)}function DV(t,e){if(t.openElements.currentTagId!==void 0&&D4e.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 Cr.CHARACTER:{q4e(t,e);break}case Cr.WHITESPACE_CHARACTER:{F4e(t,e);break}}else kI(t,e)}function qtr(t,e){t.openElements.clearBackToTableContext(),t.activeFormattingElements.insertMarker(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_CAPTION}function jtr(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_COLUMN_GROUP}function Qtr(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(pe.COLGROUP,C.COLGROUP),t.insertionMode=te.IN_COLUMN_GROUP,$V(t,e)}function Htr(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_TABLE_BODY}function Gtr(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(pe.TBODY,C.TBODY),t.insertionMode=te.IN_TABLE_BODY,s4(t,e)}function Vtr(t,e){t.openElements.hasInTableScope(C.TABLE)&&(t.openElements.popUntilTagNamePopped(C.TABLE),t._resetInsertionMode(),t._processStartTag(e))}function Ktr(t,e){W4e(e)?t._appendElement(e,Ee.HTML):kI(t,e),e.ackSelfClosing=!0}function ztr(t,e){!t.formElement&&t.openElements.tmplCount===0&&(t._insertElement(e,Ee.HTML),t.formElement=t.openElements.current,t.openElements.pop())}function _b(t,e){switch(e.tagID){case C.TD:case C.TH:case C.TR:{Gtr(t,e);break}case C.STYLE:case C.SCRIPT:case C.TEMPLATE:{_u(t,e);break}case C.COL:{Qtr(t,e);break}case C.FORM:{ztr(t,e);break}case C.TABLE:{Vtr(t,e);break}case C.TBODY:case C.TFOOT:case C.THEAD:{Htr(t,e);break}case C.INPUT:{Ktr(t,e);break}case C.CAPTION:{qtr(t,e);break}case C.COLGROUP:{jtr(t,e);break}default:kI(t,e)}}function OI(t,e){switch(e.tagID){case C.TABLE:{t.openElements.hasInTableScope(C.TABLE)&&(t.openElements.popUntilTagNamePopped(C.TABLE),t._resetInsertionMode());break}case C.TEMPLATE:{Zh(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:kI(t,e)}}function kI(t,e){let r=t.fosterParentingEnabled;t.fosterParentingEnabled=!0,r4(t,e),t.fosterParentingEnabled=r}function F4e(t,e){t.pendingCharacterTokens.push(e)}function q4e(t,e){t.pendingCharacterTokens.push(e),t.hasNonWhitespacePendingCharacterToken=!0}function II(t,e){let r=0;if(t.hasNonWhitespacePendingCharacterToken)for(;r<t.pendingCharacterTokens.length;r++)kI(t,t.pendingCharacterTokens[r]);else for(;r<t.pendingCharacterTokens.length;r++)t._insertCharacters(t.pendingCharacterTokens[r]);t.insertionMode=t.originalInsertionMode,t._processToken(e)}var j4e=new Set([C.CAPTION,C.COL,C.COLGROUP,C.TBODY,C.TD,C.TFOOT,C.TH,C.THEAD,C.TR]);function Ytr(t,e){let r=e.tagID;j4e.has(r)?t.openElements.hasInTableScope(C.CAPTION)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(C.CAPTION),t.activeFormattingElements.clearToLastMarker(),t.insertionMode=te.IN_TABLE,_b(t,e)):Xi(t,e)}function Jtr(t,e){let r=e.tagID;switch(r){case C.CAPTION:case C.TABLE:{t.openElements.hasInTableScope(C.CAPTION)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(C.CAPTION),t.activeFormattingElements.clearToLastMarker(),t.insertionMode=te.IN_TABLE,r===C.TABLE&&OI(t,e));break}case C.BODY: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:n4(t,e)}}function $V(t,e){switch(e.tagID){case C.HTML:{Xi(t,e);break}case C.COL:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case C.TEMPLATE:{_u(t,e);break}default:e4(t,e)}}function Xtr(t,e){switch(e.tagID){case C.COLGROUP:{t.openElements.currentTagId===C.COLGROUP&&(t.openElements.pop(),t.insertionMode=te.IN_TABLE);break}case C.TEMPLATE:{Zh(t,e);break}case C.COL:break;default:e4(t,e)}}function e4(t,e){t.openElements.currentTagId===C.COLGROUP&&(t.openElements.pop(),t.insertionMode=te.IN_TABLE,t._processToken(e))}function s4(t,e){switch(e.tagID){case C.TR:{t.openElements.clearBackToTableBodyContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_ROW;break}case C.TH:case C.TD:{t.openElements.clearBackToTableBodyContext(),t._insertFakeElement(pe.TR,C.TR),t.insertionMode=te.IN_ROW,i4(t,e);break}case C.CAPTION:case C.COL:case C.COLGROUP:case C.TBODY:case C.TFOOT:case C.THEAD:{t.openElements.hasTableBodyContextInTableScope()&&(t.openElements.clearBackToTableBodyContext(),t.openElements.pop(),t.insertionMode=te.IN_TABLE,_b(t,e));break}default:_b(t,e)}}function LV(t,e){let r=e.tagID;switch(e.tagID){case C.TBODY:case C.TFOOT:case C.THEAD:{t.openElements.hasInTableScope(r)&&(t.openElements.clearBackToTableBodyContext(),t.openElements.pop(),t.insertionMode=te.IN_TABLE);break}case C.TABLE:{t.openElements.hasTableBodyContextInTableScope()&&(t.openElements.clearBackToTableBodyContext(),t.openElements.pop(),t.insertionMode=te.IN_TABLE,OI(t,e));break}case C.BODY:case C.CAPTION:case C.COL:case C.COLGROUP:case C.HTML:case C.TD:case C.TH:case C.TR:break;default:OI(t,e)}}function i4(t,e){switch(e.tagID){case C.TH:case C.TD:{t.openElements.clearBackToTableRowContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_CELL,t.activeFormattingElements.insertMarker();break}case C.CAPTION:case C.COL:case C.COLGROUP:case C.TBODY:case C.TFOOT:case C.THEAD:case C.TR:{t.openElements.hasInTableScope(C.TR)&&(t.openElements.clearBackToTableRowContext(),t.openElements.pop(),t.insertionMode=te.IN_TABLE_BODY,s4(t,e));break}default:_b(t,e)}}function Q4e(t,e){switch(e.tagID){case C.TR:{t.openElements.hasInTableScope(C.TR)&&(t.openElements.clearBackToTableRowContext(),t.openElements.pop(),t.insertionMode=te.IN_TABLE_BODY);break}case C.TABLE:{t.openElements.hasInTableScope(C.TR)&&(t.openElements.clearBackToTableRowContext(),t.openElements.pop(),t.insertionMode=te.IN_TABLE_BODY,LV(t,e));break}case C.TBODY:case C.TFOOT:case C.THEAD:{(t.openElements.hasInTableScope(e.tagID)||t.openElements.hasInTableScope(C.TR))&&(t.openElements.clearBackToTableRowContext(),t.openElements.pop(),t.insertionMode=te.IN_TABLE_BODY,LV(t,e));break}case C.BODY:case C.CAPTION:case C.COL:case C.COLGROUP:case C.HTML:case C.TD:case C.TH:break;default:OI(t,e)}}function Ztr(t,e){let r=e.tagID;j4e.has(r)?(t.openElements.hasInTableScope(C.TD)||t.openElements.hasInTableScope(C.TH))&&(t._closeTableCell(),i4(t,e)):Xi(t,e)}function err(t,e){let r=e.tagID;switch(r){case C.TD:case C.TH:{t.openElements.hasInTableScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r),t.activeFormattingElements.clearToLastMarker(),t.insertionMode=te.IN_ROW);break}case C.TABLE:case C.TBODY:case C.TFOOT:case C.THEAD:case C.TR:{t.openElements.hasInTableScope(r)&&(t._closeTableCell(),Q4e(t,e));break}case C.BODY:case C.CAPTION:case C.COL:case C.COLGROUP:case C.HTML:break;default:n4(t,e)}}function H4e(t,e){switch(e.tagID){case C.HTML:{Xi(t,e);break}case C.OPTION:{t.openElements.currentTagId===C.OPTION&&t.openElements.pop(),t._insertElement(e,Ee.HTML);break}case C.OPTGROUP:{t.openElements.currentTagId===C.OPTION&&t.openElements.pop(),t.openElements.currentTagId===C.OPTGROUP&&t.openElements.pop(),t._insertElement(e,Ee.HTML);break}case C.HR:{t.openElements.currentTagId===C.OPTION&&t.openElements.pop(),t.openElements.currentTagId===C.OPTGROUP&&t.openElements.pop(),t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case C.INPUT:case C.KEYGEN:case C.TEXTAREA:case C.SELECT:{t.openElements.hasInSelectScope(C.SELECT)&&(t.openElements.popUntilTagNamePopped(C.SELECT),t._resetInsertionMode(),e.tagID!==C.SELECT&&t._processStartTag(e));break}case C.SCRIPT:case C.TEMPLATE:{_u(t,e);break}default:}}function G4e(t,e){switch(e.tagID){case C.OPTGROUP:{t.openElements.stackTop>0&&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:{Zh(t,e);break}default:}}function trr(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)):H4e(t,e)}function rrr(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)):G4e(t,e)}function nrr(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:{_u(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,_b(t,e);break}case C.COL:{t.tmplInsertionModeStack[0]=te.IN_COLUMN_GROUP,t.insertionMode=te.IN_COLUMN_GROUP,$V(t,e);break}case C.TR:{t.tmplInsertionModeStack[0]=te.IN_TABLE_BODY,t.insertionMode=te.IN_TABLE_BODY,s4(t,e);break}case C.TD:case C.TH:{t.tmplInsertionModeStack[0]=te.IN_ROW,t.insertionMode=te.IN_ROW,i4(t,e);break}default:t.tmplInsertionModeStack[0]=te.IN_BODY,t.insertionMode=te.IN_BODY,Xi(t,e)}}function srr(t,e){e.tagID===C.TEMPLATE&&Zh(t,e)}function V4e(t,e){t.openElements.tmplCount>0?(t.openElements.popUntilTagNamePopped(C.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode(),t.onEof(e)):WV(t,e)}function irr(t,e){e.tagID===C.HTML?Xi(t,e):t4(t,e)}function K4e(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 t4(t,e)}function t4(t,e){t.insertionMode=te.IN_BODY,r4(t,e)}function arr(t,e){switch(e.tagID){case C.HTML:{Xi(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:{_u(t,e);break}default:}}function orr(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 crr(t,e){switch(e.tagID){case C.HTML:{Xi(t,e);break}case C.NOFRAMES:{_u(t,e);break}default:}}function urr(t,e){e.tagID===C.HTML&&(t.insertionMode=te.AFTER_AFTER_FRAMESET)}function lrr(t,e){e.tagID===C.HTML?Xi(t,e):ZD(t,e)}function ZD(t,e){t.insertionMode=te.IN_BODY,r4(t,e)}function drr(t,e){switch(e.tagID){case C.HTML:{Xi(t,e);break}case C.NOFRAMES:{_u(t,e);break}default:}}function frr(t,e){e.chars=vn,t._insertCharacters(e)}function prr(t,e){t._insertCharacters(e),t.framesetOk=!1}function z4e(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 mrr(t,e){if(T4e(e))z4e(t),t._startTagOutsideForeignContent(e);else{let r=t._getAdjustedCurrentElement(),n=t.treeAdapter.getNamespaceURI(r);n===Ee.MATHML?kV(e):n===Ee.SVG&&(w4e(e),PV(e)),XD(e),e.selfClosing?t._appendElement(e,n):t._insertElement(e,n),e.ackSelfClosing=!0}}function hrr(t,e){if(e.tagID===C.P||e.tagID===C.BR){z4e(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 wYr=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 Y4e(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 J4e=Y4e(/["&\u00A0]/g,new Map([[34,"&quot;"],[38,"&amp;"],[160,"&nbsp;"]])),X4e=Y4e(/[&<>\u00A0]/g,new Map([[38,"&amp;"],[60,"&lt;"],[62,"&gt;"],[160,"&nbsp;"]]));var grr=new Set([pe.AREA,pe.BASE,pe.BASEFONT,pe.BGSOUND,pe.BR,pe.COL,pe.EMBED,pe.FRAME,pe.HR,pe.IMG,pe.INPUT,pe.KEYGEN,pe.LINK,pe.META,pe.PARAM,pe.SOURCE,pe.TRACK,pe.WBR]);function yrr(t,e){return e.treeAdapter.isElementNode(t)&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML&&grr.has(e.treeAdapter.getTagName(t))}var Arr={treeAdapter:wc,scriptingEnabled:!0};function UV(t,e){let r={...Arr,...e};return Z4e(t,r)}function xrr(t,e){let r="",n=e.treeAdapter.isElementNode(t)&&e.treeAdapter.getTagName(t)===pe.TEMPLATE&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML?e.treeAdapter.getTemplateContent(t):t,s=e.treeAdapter.getChildNodes(n);if(s)for(let i of s)r+=Z4e(i,e);return r}function Z4e(t,e){return e.treeAdapter.isElementNode(t)?brr(t,e):e.treeAdapter.isTextNode(t)?Err(t,e):e.treeAdapter.isCommentNode(t)?vrr(t,e):e.treeAdapter.isDocumentTypeNode(t)?Srr(t,e):""}function brr(t,e){let r=e.treeAdapter.getTagName(t);return`<${r}${_rr(t,e)}>${yrr(t,e)?"":`${xrr(t,e)}</${r}>`}`}function _rr(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+=`="${J4e(n.value)}"`}return r}function Err(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&&OV(i,e.scriptingEnabled)?n:X4e(n)}function vrr(t,{treeAdapter:e}){return`<!--${e.getCommentNodeContent(t)}-->`}function Srr(t,{treeAdapter:e}){return`<!DOCTYPE ${e.getDocumentTypeNodeName(t)}>`}function eBe(t,e){return bb.parse(t,e)}function tBe(t,e,r){typeof t=="string"&&(r=e,e=t,t=null);let n=bb.getFragmentParser(t,r);return n.tokenizer.write(e,!0),n.getFragment()}function rBe(t){let e=t.includes('"')?"'":'"';return e+t+e}function Irr(t,e,r){let n="!DOCTYPE ";return t&&(n+=t),e?n+=` PUBLIC ${rBe(e)}`:r&&(n+=" SYSTEM"),r&&(n+=` ${rBe(r)}`),n}var mf={isCommentNode:zh,isElementNode:it,isTextNode:no,createDocument(){let t=new ko([]);return t["x-mode"]=VD.DOCUMENT_MODE.NO_QUIRKS,t},createDocumentFragment(){return new ko([])},createElement(t,e,r){let n=Object.create(null),s=Object.create(null),i=Object.create(null);for(let o=0;o<r.length;o++){let c=r[o].name;n[c]=r[o].value,s[c]=r[o].namespace,i[c]=r[o].prefix}let a=new Kh(t,n,[]);return a.namespace=e,a["x-attribsNamespace"]=s,a["x-attribsPrefix"]=i,a},createCommentNode(t){return new Gh(t)},createTextNode(t){return new Sl(t)},appendChild(t,e){let r=t.children[t.children.length-1];r&&(r.next=e,e.prev=r),t.children.push(e),e.parent=t},insertBefore(t,e,r){let n=t.children.indexOf(r),{prev:s}=r;s&&(s.next=e,e.prev=s),r.prev=e,e.next=r,t.children.splice(n,0,e),e.parent=t},setTemplateContent(t,e){mf.appendChild(t,e)},getTemplateContent(t){return t.children[0]},setDocumentType(t,e,r,n){let s=Irr(e,r,n),i=t.children.find(a=>lD(a)&&a.name==="!doctype");i?i.data=s??null:(i=new Vh("!doctype",s),mf.appendChild(t,i)),i["x-name"]=e,i["x-publicId"]=r,i["x-systemId"]=n},setDocumentMode(t,e){t["x-mode"]=e},getDocumentMode(t){return t["x-mode"]},detachNode(t){if(t.parent){let e=t.parent.children.indexOf(t),{prev:r,next:n}=t;t.prev=null,t.next=null,r&&(r.next=n),n&&(n.prev=r),t.parent.children.splice(e,1),t.parent=null}},insertText(t,e){let r=t.children[t.children.length-1];r&&no(r)?r.data+=e:mf.appendChild(t,mf.createTextNode(e))},insertTextBefore(t,e,r){let n=t.children[t.children.indexOf(r)-1];n&&no(n)?n.data+=e:mf.insertBefore(t,mf.createTextNode(e),r)},adoptAttributes(t,e){for(let r=0;r<e.length;r++){let n=e[r].name;t.attribs[n]===void 0&&(t.attribs[n]=e[r].value,t["x-attribsNamespace"][n]=e[r].namespace,t["x-attribsPrefix"][n]=e[r].prefix)}},getFirstChild(t){return t.children[0]},getChildNodes(t){return t.children},getParentNode(t){return t.parent},getAttrList(t){return t.attributes},getTagName(t){return t.name},getNamespaceURI(t){return t.namespace},getTextNodeContent(t){return t.data},getCommentNodeContent(t){return t.data},getDocumentTypeNodeName(t){var e;return(e=t["x-name"])!==null&&e!==void 0?e:""},getDocumentTypeNodePublicId(t){var e;return(e=t["x-publicId"])!==null&&e!==void 0?e:""},getDocumentTypeNodeSystemId(t){var e;return(e=t["x-systemId"])!==null&&e!==void 0?e:""},isDocumentTypeNode(t){return lD(t)&&t.name==="!doctype"},setNodeSourceCodeLocation(t,e){e&&(t.startIndex=e.startOffset,t.endIndex=e.endOffset),t.sourceCodeLocation=e},getNodeSourceCodeLocation(t){return t.sourceCodeLocation},updateNodeSourceCodeLocation(t,e){e.endOffset!=null&&(t.endIndex=e.endOffset),t.sourceCodeLocation={...t.sourceCodeLocation,...e}}};function nBe(t,e,r,n){let s={scriptingEnabled:typeof e.scriptingEnabled=="boolean"?e.scriptingEnabled:!0,treeAdapter:mf,sourceCodeLocationInfo:e.sourceCodeLocationInfo};return r?eBe(t,s):tBe(n,t,s)}var Crr={treeAdapter:mf};function sBe(t){let e="length"in t?t:[t];for(let n=0;n<e.length;n+=1){let s=e[n];Au(s)&&Array.prototype.splice.call(e,n,1,...s.children)}let r="";for(let n=0;n<e.length;n+=1){let s=e[n];r+=UV(s,Crr)}return r}var ze;(function(t){t[t.Tab=9]="Tab",t[t.NewLine=10]="NewLine",t[t.FormFeed=12]="FormFeed",t[t.CarriageReturn=13]="CarriageReturn",t[t.Space=32]="Space",t[t.ExclamationMark=33]="ExclamationMark",t[t.Number=35]="Number",t[t.Amp=38]="Amp",t[t.SingleQuote=39]="SingleQuote",t[t.DoubleQuote=34]="DoubleQuote",t[t.Dash=45]="Dash",t[t.Slash=47]="Slash",t[t.Zero=48]="Zero",t[t.Nine=57]="Nine",t[t.Semi=59]="Semi",t[t.Lt=60]="Lt",t[t.Eq=61]="Eq",t[t.Gt=62]="Gt",t[t.Questionmark=63]="Questionmark",t[t.UpperA=65]="UpperA",t[t.LowerA=97]="LowerA",t[t.UpperF=70]="UpperF",t[t.LowerF=102]="LowerF",t[t.UpperZ=90]="UpperZ",t[t.LowerZ=122]="LowerZ",t[t.LowerX=120]="LowerX",t[t.OpeningSquareBracket=91]="OpeningSquareBracket"})(ze||(ze={}));var Ie;(function(t){t[t.Text=1]="Text",t[t.BeforeTagName=2]="BeforeTagName",t[t.InTagName=3]="InTagName",t[t.InSelfClosingTag=4]="InSelfClosingTag",t[t.BeforeClosingTagName=5]="BeforeClosingTagName",t[t.InClosingTagName=6]="InClosingTagName",t[t.AfterClosingTagName=7]="AfterClosingTagName",t[t.BeforeAttributeName=8]="BeforeAttributeName",t[t.InAttributeName=9]="InAttributeName",t[t.AfterAttributeName=10]="AfterAttributeName",t[t.BeforeAttributeValue=11]="BeforeAttributeValue",t[t.InAttributeValueDq=12]="InAttributeValueDq",t[t.InAttributeValueSq=13]="InAttributeValueSq",t[t.InAttributeValueNq=14]="InAttributeValueNq",t[t.BeforeDeclaration=15]="BeforeDeclaration",t[t.InDeclaration=16]="InDeclaration",t[t.InProcessingInstruction=17]="InProcessingInstruction",t[t.BeforeComment=18]="BeforeComment",t[t.CDATASequence=19]="CDATASequence",t[t.InSpecialComment=20]="InSpecialComment",t[t.InCommentLike=21]="InCommentLike",t[t.BeforeSpecialS=22]="BeforeSpecialS",t[t.SpecialStartSequence=23]="SpecialStartSequence",t[t.InSpecialTag=24]="InSpecialTag",t[t.BeforeEntity=25]="BeforeEntity",t[t.BeforeNumericEntity=26]="BeforeNumericEntity",t[t.InNamedEntity=27]="InNamedEntity",t[t.InNumericEntity=28]="InNumericEntity",t[t.InHexEntity=29]="InHexEntity"})(Ie||(Ie={}));function hf(t){return t===ze.Space||t===ze.NewLine||t===ze.Tab||t===ze.FormFeed||t===ze.CarriageReturn}function a4(t){return t===ze.Slash||t===ze.Gt||hf(t)}function iBe(t){return t>=ze.Zero&&t<=ze.Nine}function Trr(t){return t>=ze.LowerA&&t<=ze.LowerZ||t>=ze.UpperA&&t<=ze.UpperZ}function wrr(t){return t>=ze.UpperA&&t<=ze.UpperF||t>=ze.LowerA&&t<=ze.LowerF}var Eu;(function(t){t[t.NoValue=0]="NoValue",t[t.Unquoted=1]="Unquoted",t[t.Single=2]="Single",t[t.Double=3]="Double"})(Eu||(Eu={}));var oo={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},Eb=class{constructor({xmlMode:e=!1,decodeEntities:r=!0},n){this.cbs=n,this.state=Ie.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=Ie.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=e,this.decodeEntities=r,this.entityTrie=e?fD:dD}reset(){this.state=Ie.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=Ie.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()}end(){this.running&&this.finish()}pause(){this.running=!1}resume(){this.running=!0,this.index<this.buffer.length+this.offset&&this.parse()}getIndex(){return this.index}getSectionStart(){return this.sectionStart}stateText(e){e===ze.Lt||!this.decodeEntities&&this.fastForwardTo(ze.Lt)?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=Ie.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===ze.Amp&&(this.state=Ie.BeforeEntity)}stateSpecialStartSequence(e){let r=this.sequenceIndex===this.currentSequence.length;if(!(r?a4(e):(e|32)===this.currentSequence[this.sequenceIndex]))this.isSpecial=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=Ie.InTagName,this.stateInTagName(e)}stateInSpecialTag(e){if(this.sequenceIndex===this.currentSequence.length){if(e===ze.Gt||hf(e)){let r=this.index-this.currentSequence.length;if(this.sectionStart<r){let n=this.index;this.index=r,this.cbs.ontext(this.sectionStart,r),this.index=n}this.isSpecial=!1,this.sectionStart=r+2,this.stateInClosingTagName(e);return}this.sequenceIndex=0}(e|32)===this.currentSequence[this.sequenceIndex]?this.sequenceIndex+=1:this.sequenceIndex===0?this.currentSequence===oo.TitleEnd?this.decodeEntities&&e===ze.Amp&&(this.state=Ie.BeforeEntity):this.fastForwardTo(ze.Lt)&&(this.sequenceIndex=1):this.sequenceIndex=+(e===ze.Lt)}stateCDATASequence(e){e===oo.Cdata[this.sequenceIndex]?++this.sequenceIndex===oo.Cdata.length&&(this.state=Ie.InCommentLike,this.currentSequence=oo.CdataEnd,this.sequenceIndex=0,this.sectionStart=this.index+1):(this.sequenceIndex=0,this.state=Ie.InDeclaration,this.stateInDeclaration(e))}fastForwardTo(e){for(;++this.index<this.buffer.length+this.offset;)if(this.buffer.charCodeAt(this.index-this.offset)===e)return!0;return this.index=this.buffer.length+this.offset-1,!1}stateInCommentLike(e){e===this.currentSequence[this.sequenceIndex]?++this.sequenceIndex===this.currentSequence.length&&(this.currentSequence===oo.CdataEnd?this.cbs.oncdata(this.sectionStart,this.index,2):this.cbs.oncomment(this.sectionStart,this.index,2),this.sequenceIndex=0,this.sectionStart=this.index+1,this.state=Ie.Text):this.sequenceIndex===0?this.fastForwardTo(this.currentSequence[0])&&(this.sequenceIndex=1):e!==this.currentSequence[this.sequenceIndex-1]&&(this.sequenceIndex=0)}isTagStartChar(e){return this.xmlMode?!a4(e):Trr(e)}startSpecial(e,r){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=r,this.state=Ie.SpecialStartSequence}stateBeforeTagName(e){if(e===ze.ExclamationMark)this.state=Ie.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===ze.Questionmark)this.state=Ie.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){let r=e|32;this.sectionStart=this.index,!this.xmlMode&&r===oo.TitleEnd[2]?this.startSpecial(oo.TitleEnd,3):this.state=!this.xmlMode&&r===oo.ScriptEnd[2]?Ie.BeforeSpecialS:Ie.InTagName}else e===ze.Slash?this.state=Ie.BeforeClosingTagName:(this.state=Ie.Text,this.stateText(e))}stateInTagName(e){a4(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=Ie.BeforeAttributeName,this.stateBeforeAttributeName(e))}stateBeforeClosingTagName(e){hf(e)||(e===ze.Gt?this.state=Ie.Text:(this.state=this.isTagStartChar(e)?Ie.InClosingTagName:Ie.InSpecialComment,this.sectionStart=this.index))}stateInClosingTagName(e){(e===ze.Gt||hf(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=Ie.AfterClosingTagName,this.stateAfterClosingTagName(e))}stateAfterClosingTagName(e){(e===ze.Gt||this.fastForwardTo(ze.Gt))&&(this.state=Ie.Text,this.baseState=Ie.Text,this.sectionStart=this.index+1)}stateBeforeAttributeName(e){e===ze.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=Ie.InSpecialTag,this.sequenceIndex=0):this.state=Ie.Text,this.baseState=this.state,this.sectionStart=this.index+1):e===ze.Slash?this.state=Ie.InSelfClosingTag:hf(e)||(this.state=Ie.InAttributeName,this.sectionStart=this.index)}stateInSelfClosingTag(e){e===ze.Gt?(this.cbs.onselfclosingtag(this.index),this.state=Ie.Text,this.baseState=Ie.Text,this.sectionStart=this.index+1,this.isSpecial=!1):hf(e)||(this.state=Ie.BeforeAttributeName,this.stateBeforeAttributeName(e))}stateInAttributeName(e){(e===ze.Eq||a4(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=Ie.AfterAttributeName,this.stateAfterAttributeName(e))}stateAfterAttributeName(e){e===ze.Eq?this.state=Ie.BeforeAttributeValue:e===ze.Slash||e===ze.Gt?(this.cbs.onattribend(Eu.NoValue,this.index),this.state=Ie.BeforeAttributeName,this.stateBeforeAttributeName(e)):hf(e)||(this.cbs.onattribend(Eu.NoValue,this.index),this.state=Ie.InAttributeName,this.sectionStart=this.index)}stateBeforeAttributeValue(e){e===ze.DoubleQuote?(this.state=Ie.InAttributeValueDq,this.sectionStart=this.index+1):e===ze.SingleQuote?(this.state=Ie.InAttributeValueSq,this.sectionStart=this.index+1):hf(e)||(this.sectionStart=this.index,this.state=Ie.InAttributeValueNq,this.stateInAttributeValueNoQuotes(e))}handleInAttributeValue(e,r){e===r||!this.decodeEntities&&this.fastForwardTo(r)?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(r===ze.DoubleQuote?Eu.Double:Eu.Single,this.index),this.state=Ie.BeforeAttributeName):this.decodeEntities&&e===ze.Amp&&(this.baseState=this.state,this.state=Ie.BeforeEntity)}stateInAttributeValueDoubleQuotes(e){this.handleInAttributeValue(e,ze.DoubleQuote)}stateInAttributeValueSingleQuotes(e){this.handleInAttributeValue(e,ze.SingleQuote)}stateInAttributeValueNoQuotes(e){hf(e)||e===ze.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(Eu.Unquoted,this.index),this.state=Ie.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===ze.Amp&&(this.baseState=this.state,this.state=Ie.BeforeEntity)}stateBeforeDeclaration(e){e===ze.OpeningSquareBracket?(this.state=Ie.CDATASequence,this.sequenceIndex=0):this.state=e===ze.Dash?Ie.BeforeComment:Ie.InDeclaration}stateInDeclaration(e){(e===ze.Gt||this.fastForwardTo(ze.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=Ie.Text,this.sectionStart=this.index+1)}stateInProcessingInstruction(e){(e===ze.Gt||this.fastForwardTo(ze.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=Ie.Text,this.sectionStart=this.index+1)}stateBeforeComment(e){e===ze.Dash?(this.state=Ie.InCommentLike,this.currentSequence=oo.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=Ie.InDeclaration}stateInSpecialComment(e){(e===ze.Gt||this.fastForwardTo(ze.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=Ie.Text,this.sectionStart=this.index+1)}stateBeforeSpecialS(e){let r=e|32;r===oo.ScriptEnd[3]?this.startSpecial(oo.ScriptEnd,4):r===oo.StyleEnd[3]?this.startSpecial(oo.StyleEnd,4):(this.state=Ie.InTagName,this.stateInTagName(e))}stateBeforeEntity(e){this.entityExcess=1,this.entityResult=0,e===ze.Number?this.state=Ie.BeforeNumericEntity:e===ze.Amp||(this.trieIndex=0,this.trieCurrent=this.entityTrie[0],this.state=Ie.InNamedEntity,this.stateInNamedEntity(e))}stateInNamedEntity(e){if(this.entityExcess+=1,this.trieIndex=$G(this.entityTrie,this.trieCurrent,this.trieIndex+1,e),this.trieIndex<0){this.emitNamedEntity(),this.index--;return}this.trieCurrent=this.entityTrie[this.trieIndex];let r=this.trieCurrent&Sc.VALUE_LENGTH;if(r){let n=(r>>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]&Sc.VALUE_LENGTH)>>14){case 1:{this.emitCodePoint(this.entityTrie[this.entityResult]&~Sc.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=Ie.InHexEntity):(this.state=Ie.InNumericEntity,this.stateInNumericEntity(e))}emitNumericEntity(e){let r=this.index-this.entityExcess-1;r+2+ +(this.state===Ie.InHexEntity)!==this.index&&(r>this.sectionStart&&this.emitPartial(this.sectionStart,r),this.sectionStart=this.index+Number(e),this.emitCodePoint(dI(this.entityResult))),this.state=this.baseState}stateInNumericEntity(e){e===ze.Semi?this.emitNumericEntity(!0):iBe(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):iBe(e)?(this.entityResult=this.entityResult*16+(e-ze.Zero),this.entityExcess++):wrr(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===Ie.Text||this.baseState===Ie.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===Ie.Text||this.state===Ie.InSpecialTag&&this.sequenceIndex===0?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):(this.state===Ie.InAttributeValueDq||this.state===Ie.InAttributeValueSq||this.state===Ie.InAttributeValueNq)&&(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))}shouldContinue(){return this.index<this.buffer.length+this.offset&&this.running}parse(){for(;this.shouldContinue();){let e=this.buffer.charCodeAt(this.index-this.offset);switch(this.state){case Ie.Text:{this.stateText(e);break}case Ie.SpecialStartSequence:{this.stateSpecialStartSequence(e);break}case Ie.InSpecialTag:{this.stateInSpecialTag(e);break}case Ie.CDATASequence:{this.stateCDATASequence(e);break}case Ie.InAttributeValueDq:{this.stateInAttributeValueDoubleQuotes(e);break}case Ie.InAttributeName:{this.stateInAttributeName(e);break}case Ie.InCommentLike:{this.stateInCommentLike(e);break}case Ie.InSpecialComment:{this.stateInSpecialComment(e);break}case Ie.BeforeAttributeName:{this.stateBeforeAttributeName(e);break}case Ie.InTagName:{this.stateInTagName(e);break}case Ie.InClosingTagName:{this.stateInClosingTagName(e);break}case Ie.BeforeTagName:{this.stateBeforeTagName(e);break}case Ie.AfterAttributeName:{this.stateAfterAttributeName(e);break}case Ie.InAttributeValueSq:{this.stateInAttributeValueSingleQuotes(e);break}case Ie.BeforeAttributeValue:{this.stateBeforeAttributeValue(e);break}case Ie.BeforeClosingTagName:{this.stateBeforeClosingTagName(e);break}case Ie.AfterClosingTagName:{this.stateAfterClosingTagName(e);break}case Ie.BeforeSpecialS:{this.stateBeforeSpecialS(e);break}case Ie.InAttributeValueNq:{this.stateInAttributeValueNoQuotes(e);break}case Ie.InSelfClosingTag:{this.stateInSelfClosingTag(e);break}case Ie.InDeclaration:{this.stateInDeclaration(e);break}case Ie.BeforeDeclaration:{this.stateBeforeDeclaration(e);break}case Ie.BeforeComment:{this.stateBeforeComment(e);break}case Ie.InProcessingInstruction:{this.stateInProcessingInstruction(e);break}case Ie.InNamedEntity:{this.stateInNamedEntity(e);break}case Ie.BeforeEntity:{this.stateBeforeEntity(e);break}case Ie.InHexEntity:{this.stateInHexEntity(e);break}case Ie.InNumericEntity:{this.stateInNumericEntity(e);break}default:this.stateBeforeNumericEntity(e)}this.index++}this.cleanup()}finish(){this.state===Ie.InNamedEntity&&this.emitNamedEntity(),this.sectionStart<this.index&&this.handleTrailingData(),this.cbs.onend()}handleTrailingData(){let e=this.buffer.length+this.offset;this.state===Ie.InCommentLike?this.currentSequence===oo.CdataEnd?this.cbs.oncdata(this.sectionStart,e,0):this.cbs.oncomment(this.sectionStart,e,0):this.state===Ie.InNumericEntity&&this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state===Ie.InHexEntity&&this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state===Ie.InTagName||this.state===Ie.BeforeAttributeName||this.state===Ie.BeforeAttributeValue||this.state===Ie.AfterAttributeName||this.state===Ie.InAttributeName||this.state===Ie.InAttributeValueSq||this.state===Ie.InAttributeValueDq||this.state===Ie.InAttributeValueNq||this.state===Ie.InClosingTagName||this.cbs.ontext(this.sectionStart,e)}emitPartial(e,r){this.baseState!==Ie.Text&&this.baseState!==Ie.InSpecialTag?this.cbs.onattribdata(e,r):this.cbs.ontext(e,r)}emitCodePoint(e){this.baseState!==Ie.Text&&this.baseState!==Ie.InSpecialTag?this.cbs.onattribentity(e):this.cbs.ontextentity(e)}};var vb=new Set(["input","option","optgroup","select","button","datalist","textarea"]),rn=new Set(["p"]),aBe=new Set(["thead","tbody"]),oBe=new Set(["dd","dt"]),cBe=new Set(["rt","rp"]),Rrr=new Map([["tr",new Set(["tr","th","td"])],["th",new Set(["th"])],["td",new Set(["thead","th","td"])],["body",new Set(["head","link","script"])],["li",new Set(["li"])],["p",rn],["h1",rn],["h2",rn],["h3",rn],["h4",rn],["h5",rn],["h6",rn],["select",vb],["input",vb],["output",vb],["button",vb],["datalist",vb],["textarea",vb],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",oBe],["dt",oBe],["address",rn],["article",rn],["aside",rn],["blockquote",rn],["details",rn],["div",rn],["dl",rn],["fieldset",rn],["figcaption",rn],["figure",rn],["footer",rn],["form",rn],["header",rn],["hr",rn],["main",rn],["nav",rn],["ol",rn],["pre",rn],["section",rn],["table",rn],["ul",rn],["rt",cBe],["rp",cBe],["tbody",aBe],["tfoot",aBe]]),Nrr=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]),uBe=new Set(["math","svg"]),lBe=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title"]),Orr=/\s|\//,PI=class{constructor(e,r={}){var n,s,i,a,o;this.options=r,this.startIndex=0,this.endIndex=0,this.openTagStart=0,this.tagname="",this.attribname="",this.attribvalue="",this.attribs=null,this.stack=[],this.foreignContext=[],this.buffers=[],this.bufferOffset=0,this.writeIndex=0,this.ended=!1,this.cbs=e??{},this.lowerCaseTagNames=(n=r.lowerCaseTags)!==null&&n!==void 0?n:!r.xmlMode,this.lowerCaseAttributeNames=(s=r.lowerCaseAttributeNames)!==null&&s!==void 0?s:!r.xmlMode,this.tokenizer=new((i=r.Tokenizer)!==null&&i!==void 0?i:Eb)(this.options,this),(o=(a=this.cbs).onparserinit)===null||o===void 0||o.call(a,this)}ontext(e,r){var n,s;let i=this.getSlice(e,r);this.endIndex=r-1,(s=(n=this.cbs).ontext)===null||s===void 0||s.call(n,i),this.startIndex=r}ontextentity(e){var r,n;let s=this.tokenizer.getSectionStart();this.endIndex=s-1,(n=(r=this.cbs).ontext)===null||n===void 0||n.call(r,ab(e)),this.startIndex=s}isVoidElement(e){return!this.options.xmlMode&&Nrr.has(e)}onopentagname(e,r){this.endIndex=r;let n=this.getSlice(e,r);this.lowerCaseTagNames&&(n=n.toLowerCase()),this.emitOpenTag(n)}emitOpenTag(e){var r,n,s,i;this.openTagStart=this.startIndex,this.tagname=e;let a=!this.options.xmlMode&&Rrr.get(e);if(a)for(;this.stack.length>0&&a.has(this.stack[this.stack.length-1]);){let o=this.stack.pop();(n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,o,!0)}this.isVoidElement(e)||(this.stack.push(e),uBe.has(e)?this.foreignContext.push(!0):lBe.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()),(uBe.has(u)||lBe.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+=ab(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===Eu.Double?'"':e===Eu.Single?"'":e===Eu.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(Orr),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,m;this.endIndex=r;let p=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,p),(u=(c=this.cbs).oncdataend)===null||u===void 0||u.call(c)):((d=(l=this.cbs).oncomment)===null||d===void 0||d.call(l,`[CDATA[${p}]]`),(m=(f=this.cbs).oncommentend)===null||m===void 0||m.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.writeIndex<this.buffers.length;)this.tokenizer.write(this.buffers[this.writeIndex++]);this.ended&&this.tokenizer.end()}parseChunk(e){this.write(e)}done(e){this.end(e)}};function dBe(t,e){let r=new ib(void 0,e);return new PI(r,e).end(t),r.root}var krr=t4e((t,e,r,n)=>e.xmlMode||e._useHtmlParser2?dBe(t,e):nBe(t,e,r,n)),De=c4e(krr,(t,e)=>e.xmlMode||e._useHtmlParser2?yD(t,e):sBe(t)),Prr=De([]),{contains:Drr}=C0,{merge:Brr}=C0,{parseHTML:Lrr}=C0,{root:Mrr}=C0;var DI="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";function fBe(t,e){return Math.floor(Math.random()*(e-t+1))+t}function eg(t,e,r){var n="";let s=e===void 0?!0:e;for(var i=0;i<t;i++){let a=r?fBe(DI.length-10,DI.length-1):fBe(0,s?DI.length-1:DI.length-11);n+=DI[a]}return n}function FV(){return eg(8).toLowerCase()+"-"+eg(4).toLowerCase()+"-"+eg(4).toLowerCase()+"-"+eg(4).toLowerCase()+"-"+eg(12).toLowerCase()}var D0="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";function pBe(t,e){return t.trim()==e.trim()?e:e.trim().replaceAll(t,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()}function Zi(t){let e=t/1048576;return e>1024?`${(e/1024).toFixed(2)}GB`:`${parseInt(e).toFixed(0)}MB`}function qV(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;c<n;c++){for(var u=new Array(s),l=0;l<s;l++)u[l]=0;i[c]=u}var d=null;for(c=0;c<n;c++)for(l=0;l<s;l++)t[c]!==e[l]?i[c][l]=0:(c===0||l===0?i[c][l]=1:i[c][l]=1+i[c-1][l-1],i[c][l]>a&&(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 wl(t,e){let r=[],n=0;for(let i=0;i<e.length;i++){let a=qV(t.name,e[i].name);r.push({target:e[i],lcs:a}),a.length>r[n].lcs.length&&(n=i)}let s=r[n];return{allLCS:r,bestMatch:s,bestMatchIndex:n}}function Rl(t){return new Promise(e=>setTimeout(e,t))}function c4(t,e,r){let n=String(t||""),s=String(e||"").trim();if(!s)return n;let i=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),a=new RegExp(`(^|;\\s*)${i}=([^;]*)`);if(!a.test(n)){let o=n.trimEnd(),c=o?o.endsWith(";")?" ":"; ":"";return`${o}${c}${s}=${String(r??"")}`}return n.replace(a,(o,c)=>`${c}${s}=${String(r??"")}`)}var Nl=t=>t.map(e=>e.split(";")[0]+";");var Su=Ce(BI(),1),FI=Ce(Zn(),1);var VV=Ce(Zn(),1),tg=require("path"),As=Ce(require("fs"),1),ELe=require("stream");async function Wrr(t,e){let r=await le.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 MI={},_Le="",rg=(process.env.NODE_PATH||".")+"/vod_cache",$rr=1024*1024*100;async function vLe(t){try{if(As.default.existsSync(t)){let e=await As.default.promises.readdir(t);await Promise.all(e.map(async r=>{let n=`${t}/${r}`;(await As.default.promises.stat(n)).isDirectory()?await vLe(n):await As.default.promises.unlink(n)})),await As.default.promises.rmdir(t)}}catch(e){console.error("Error deleting folder:",e)}}vLe(rg);function Urr(t){try{As.default.readdir(rg,(e,r)=>{if(r)for(let n of r){if(n===t)continue;let s=(0,tg.join)(rg,n);As.default.stat(s,(i,a)=>{a&&a.isDirectory()&&As.default.readdir(s,(o,c)=>{if(c)for(let u of c)u.endsWith(".p")||As.default.rm((0,tg.join)(s,u),{recursive:!0},()=>{})})})}})}catch(e){console.error(e)}}async function Frr(t,e,r,n,s,i){if(n=n||VV.default.enc.Hex.stringify(VV.default.MD5(r)).toString(),_Le!==n&&(Urr(n),_Le=n),!MI[n]){let[k,B]=await Wrr(r,s);if(!k||!B["content-length"]){e.redirect(r);return}MI[n]=B}let a=!0;await As.default.promises.access((0,tg.join)(rg,n)).catch(k=>a=!1),a||await As.default.promises.mkdir((0,tg.join)(rg,n),{recursive:!0});let o=parseInt(MI[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,m={};if(t.headers.range){let k=t.headers.range.trim().replace(/^bytes=/i,"").split("-"),B=k[0]!=="",M=k.length>1&&k[1]!=="";if(M){let P=parseInt(k[1],10);Number.isFinite(P)&&(f=P)}if(B){let P=parseInt(k[0],10);Number.isFinite(P)&&(d=P)}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(m,MI[n]),m["content-length"]=(f-d+1).toString(),m["content-range"]=`bytes ${d}-${f}/${l}`,e.code(206)}else Object.assign(m,MI[n]),m["content-length"]=l.toString(),e.code(200);i=i||{chunkSize:1024*512,poolSize:10,timeout:1e3*10};let p=i.chunkSize,h=i.poolSize,y=i.timeout,g=u+d,A=u+f,b=Math.ceil(o/p),x=Math.floor(A/p),S=Math.floor(g/p),T=S,I=!1,R={};for(let k=0;k<h&&k<b;k++)new Promise(B=>{(async function M(P){if(I||S>x){B();return}if(P===void 0&&(S-T)*p>=$rr){setTimeout(M,5);return}let L=P!==void 0?P:S++,Z=`${t.id}-${L}`;try{let W=(0,tg.join)(rg,n,`${t.id}-${L}.p`),U=!0;if(await As.default.promises.access(W).catch(V=>U=!1),!U){let V=L*p,j=Math.min(o-1,(L+1)*p-1),J=await le.get(r,{responseType:"stream",timeout:y,headers:Object.assign({Range:`bytes=${V}-${j}`},s)}),se=(0,tg.join)(rg,n,`${t.id}-${L}.dl`),oe=As.default.createWriteStream(se),ue=setTimeout(()=>{oe.destroy(new Error(`${Z} read timeout`))},y),Te=new Promise(je=>{oe.on("finish",async()=>{I?await As.default.promises.rm(se).catch(Fe=>console.error(Fe)):(await As.default.promises.rename(se,W).catch(Fe=>console.error(Fe)),R[Z]=W),je(!0)}),oe.on("error",async Fe=>{console.error(Fe),await As.default.promises.rm(se).catch(ve=>console.error(ve)),je(!1)})});J.data.pipe(oe);let Ne=await Te;if(clearTimeout(ue),!Ne){setTimeout(()=>{M(L)},15);return}}setTimeout(M,5)}catch(W){console.error(W),setTimeout(()=>{M(L)},15)}})()});e.headers(m);let N=new ELe.PassThrough;return new Promise(k=>{let B=!0;(async function M(){try{if(T>x||I){N.end(),k();return}if(!B){setTimeout(M,5);return}let P=`${t.id}-${T}`;if(!R[P]){setTimeout(M,5);return}let L=T*p,Z=Math.min(o-1,(T+1)*p-1),W=Math.max(g,L)-L,V=Math.min(A,Z)-L-W+1,j=R[P];delete R[P];let J=await As.default.promises.open(j,"r");if(V<=0){await J.close().catch(oe=>console.error(oe)),await As.default.promises.rm(j).catch(oe=>console.error(oe)),T++,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 As.default.promises.rm(j).catch(oe=>console.error(oe)),B=N.write(se),B||N.once("drain",()=>{B=!0}),T++,setTimeout(M,5)}catch{setTimeout(M,5)}})()}),N.on("close",async()=>{Object.keys(R).forEach(k=>{k.startsWith(t.id)&&(As.default.rm(R[k],{recursive:!0},()=>{}),delete R[k])}),I=!0}),N}var Sb=Frr;var KLe=Ce(MLe(),1);var tsr=["\u9884\u544A"],rsr=t=>{if(!t)return!1;let e=String(t);return tsr.some(r=>e.includes(r))};function WLe(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 $Le(t){return t.replace(/\.[^.]+$/,"").replace(/^(S\d+)?E?P?\d+\.?/i,"")}function ULe(t){return t==null?"":String(t)}function nsr(t,e){let r=ULe(t),n=ULe(e);return r===n?0:r.localeCompare(n,void 0,{numeric:!0,sensitivity:"base"})}function Ts(t,e){let r={};return e.length===0||(e=e.filter(n=>!rsr(n?.vod_name)),e.length===0)||(e.sort((n,s)=>{let i=nsr(n.vod_group,s.vod_group);if(i!==0)return i;let a=WLe(n.vod_name),o=WLe(s.vod_name);if(a!==null&&o!==null&&a!==o)return a-o;let c=$Le(n.vod_name),u=$Le(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=Zi(n.vod_size);return{vod_id:n.vod_id,vod_name:pBe("",` ${n.vod_name.replace(/.[^.]+$/,"")} [${s}]`)}}),r.from=t,r.url=e.map(n=>n.vod_name+"$"+n.vod_id).join("#")),r}async function es(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 m of i)try{let p=await he.request({url:f,method:m,headers:a,proxy:!1,timeout:s,maxRedirects:5,validateStatus:()=>!0});if(p?.status>=200&&p.status<400){clearTimeout(l),u(f);return}}catch{}};n.forEach(f=>{d(f)})})}var Ol=t=>globalThis.getPanEnabled?globalThis.getPanEnabled(t):!0,K4=t=>Ol("ali")&&/www.alipan.com|www.aliyundrive.com/.test(t),z4=t=>Ol("quark")&&t.includes("https://pan.quark.cn"),Y4=t=>Ol("uc")&&t.includes("https://drive.uc.cn"),FLe=t=>Ol("tianyi")&&/cloud\.189\.cn/.test(t),qLe=t=>Ol("yidong")&&/caiyun\.139\.com|yun\.139\.com/.test(t),jLe=t=>Ol("123")&&/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/.test(t),QLe=t=>Ol("115")&&(/115.com|anxia.com|115cdn.com/.test(t)||/^(?:magnet:\?|ed2k:\/\/)/i.test(String(t||"").trim())),HLe=t=>Ol("baidu")&&/pan\.baidu\.com/.test(t),GLe=t=>Ol("xunlei")&&/pan\.xunlei\.com/.test(t),VLe=t=>Ol("guangyapan")&&/guangyapan\.com\/s\//.test(t);var qt=ws;(function(t,e){let r=ws,n=t();for(;;)try{if(parseInt(r(528,"LZ#l"))/1*(parseInt(r(829,"rKB#"))/2)+parseInt(r(420,"!yA5"))/3*(parseInt(r(484,"Jh]e"))/4)+-parseInt(r(524,"rKB#"))/5*(-parseInt(r(599,"k&6z"))/6)+parseInt(r(886,"k&6z"))/7*(parseInt(r(552,"M$Ge"))/8)+parseInt(r(1079,"%)fp"))/9*(parseInt(r(1010,"!yA5"))/10)+parseInt(r(568,"fohy"))/11*(-parseInt(r(781,"InsM"))/12)+-parseInt(r(1016,"U8K#"))/13===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(J4,210318+84071*-10+1254707*1);var XLe=async t=>{let e=ws;return globalThis[e(437,"aAQj")]?await globalThis[e(643,"PO7&")](t):t};function ssr(){let t=ws;return(globalThis[t(1093,"U8K#")]||[])[t(1038,"DBDE")](r=>r[t(783,"wOwZ")]===t(742,"PO7&"))||{}}function ZLe(t){let e=ws,r={QvlOO:function(n,s){return n(s)},QVVDP:function(n,s){return n||s}};return r[e(1009,"dsEQ")](String,r[e(473,"rKB#")](t,""))[e(517,"8Vsx")](",")[1*-2391+-9868+12259][e(1029,"!yA5")]()}function zLe(t){let e=ws;return{ecUIX:function(n,s){return n(s)}}[e(556,"PO7&")](ZLe,t)[e(1001,"1C3$")](/^\w+:\/\//,"")[e(517,"8Vsx")]("/")[-1154*-6+-8913*-1+-5279*3][e(1105,"]FOc")]()}function isr(t){let e=ws,r={YhkBw:function(u,l){return u(l)},pgaeB:function(u,l){return u(l)},LuAdH:e(866,"H7iB")+e(388,"HHBt"),RYsvV:function(u,l){return u(l)},znpCG:function(u,l){return u(l)},aclrw:e(518,"VoXV")+e(773,"V%SM"),rckPh:e(707,"4@@m"),QJpKG:e(1102,"]@Zm"),ScgBY:e(491,"Az^O")},n=r[e(1116,"]FOc")](String,t?.[e(833,"DBDE")]?.[e(635,"QWA5")]?.()?.[e(933,"TxA2")]||"")[e(916,"rKB#")](),s=r[e(560,"P2Zr")](zLe,t?.[e(748,"%)fp")]?.[r[e(379,"V%SM")]]),i=s||r[e(488,"8Vsx")](zLe,t?.[e(444,"*Q*C")]?.[e(761,"HHBt")]);if(!i)return n;let a=r[e(640,"ahVJ")](ZLe,t?.[e(645,"PO7&")]?.[r[e(772,"!yA5")]]),o=n[e(647,"1C3$")](r[e(648,"LZ#l")])?r[e(565,"OeV9")]:r[e(869,"!yA5")];return(a||r[e(724,"J&Kx")](String,t?.[e(1008,"]FOc")]||"")[e(456,"1C3$")]()||o)+e(395,"OeV9")+i}function asr(t){let e=ws,r={oAECj:function(n,s){return n(s)},BJKGz:function(n,s){return n??s}};return FI.default[e(754,"4@@m")][e(1044,"l[jU")][e(1088,"P2Zr")](FI.default[e(622,"l[jU")](r[e(1018,"*ij6")](String,r[e(545,"FXf]")](t,""))))[e(663,"4@@m")]()}function YLe(t,e=-1266+3909*-2+9*1011){let r=ws,n={KnEMo:function(i,a){return i(a)},geQHc:function(i,a){return i||a},lMlty:function(i,a){return i<a},dQjmg:function(i,a){return i-a},ZlZYE:function(i,a,o){return i(a,o)},FouLc:function(i){return i()}},s=n[r(504,"Jh]e")](String,n[r(386,"lw!t")](t,""))[r(1017,"#]fR")](/x-oss-expires=(\d+)/i);return s?n[r(1021,"EuWU")](n[r(991,"FXf]")](n[r(704,"im@g")](parseInt,s[10230+53*-193],3759+2217*1+-2983*2),n[r(500,"VoXV")](Su.default)[r(964,"lw!t")]()),e):!1}function e6e(t){let e=ws,r={dLUJS:e(998,"LZ#l"),kqvzX:function(s,i){return s+i},BVhUA:function(s){return s()}};if(!t?.[e(571,"wp[D")+"en"])return{};let n={...t};return n[e(1040,"l[jU")]||=(n[e(1062,"dsEQ")]||r[e(398,"aAQj")])+" "+n[e(580,"]pB!")+"en"],!n[e(1031,"lw!t")+"e"]&&n[e(873,"H7iB")]&&(n[e(433,"P#I[")+"e"]=r[e(763,"BY2l")](r[e(665,"ahVJ")](Su.default)[e(436,"wp[D")](),n[e(867,"!yA5")])),n}function osr(t){let e=ws,r={qMVvG:function(n,s){return n!==s},fexOH:e(777,"dsEQ"),RgSRw:e(521,"8Vsx"),sTlYD:e(508,"fohy")};return t?r[e(937,"U8K#")](typeof Buffer,r[e(410,"QWA5")])?JSON[e(795,"aAQj")](Buffer[e(1070,"1pzi")](t,r[e(687,"im@g")])[e(606,"!yA5")](r[e(845,"HHBt")])):JSON[e(841,"9iF0")](FI.default[e(667,"EuWU")][e(569,"4%l)")][e(914,"8Vsx")](t)[e(489,"dsEQ")](FI.default[e(1045,"*Q*C")][e(744,"BY2l")])):null}function t6e(t){let e=ws,r={ONGOM:e(901,"FXf]")},n=/https:\/\/www\.alipan\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?|https:\/\/www\.aliyundrive\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?/,s=n[e(629,"9iF0")](t);return s?{shareId:s[3949+4*-22+-386*10]||s[3*-2829+-1620*5+47*353],folderId:s[1609*-3+-6394+11224]||s[-371*14+4807*-1+-10007*-1]||r[e(1068,"9iF0")]}:null}var csr=qt(756,"H7iB")+qt(736,"DBDE")+qt(711,"lw!t"),usr=qt(475,"wOwZ")+qt(583,"U8K#")+qt(577,"#]fR")+qt(1087,"P2Zr"),M0={},lsr=[qt(733,"lw!t"),qt(885,"LZ#l"),qt(390,"8Vsx"),qt(979,"*Q*C"),qt(634,"J&Kx")],qI=qt(1069,"QWA5"),r6e=qt(842,"1pzi"),n6e=qt(1074,"im@g")+qt(936,"EFCw"),JLe=qt(426,"DBDE"),nn={},W0={},Tb=null,kl=null,fK="",ag="",X4={"User-Agent":D0,Referer:qt(598,"*ij6")+qt(977,"InsM")+qt(741,"LZ#l")};async function jI(t){let e=qt,r={ZGXDo:function(a,o){return a(o)},CgODT:function(a,o){return a(o)}};Tb=t[e(575,"I[8W")].db;let n=t[e(567,"P2Zr")][e(561,"P2Zr")]?.[e(533,"im@g")]||{},s=await Tb[e(1024,"TxA2")+e(930,"4%l)")](qI,{});fK=r[e(993,"EFCw")](asr,n[e(973,"l[jU")]),ag=r[e(806,"k&6z")](String,s[r6e]||"")[e(734,"BY2l")]()||r[e(765,"V%SM")](String,s[fK]||"")[e(1083,"Az^O")]()||r[e(566,"Jh]e")](String,n[e(852,"TxA2")]||"")[e(554,"TxA2")]();let i=await Tb[e(684,"]pB!")+e(1049,"ahVJ")](qI+"/"+n6e,{});W0=r[e(907,"x[lR")](e6e,i)}async function dsr(t){let e=qt,r={zazym:function(n,s){return n(s)},oWxZq:function(n,s){return n||s}};ag=r[e(660,"H7iB")](String,r[e(784,"!yA5")](t,""))[e(932,"ahVJ")](),ag&&(await Tb[e(758,"l[jU")](qI+"/"+r6e,ag),await Tb[e(586,"*Q*C")](qI+"/"+fK,ag))}async function fsr(t){let e=qt;W0={xrkdT:function(n,s){return n(s)}}[e(1023,"M$Ge")](e6e,t),W0[e(451,"aAQj")+"en"]&&await Tb[e(483,"!yA5")](qI+"/"+n6e,W0)}async function Z4(t,e,r,n){let s=qt,i={nEyav:function(u,l){return u||l},miJyt:s(403,"*ij6"),SiDou:function(u,l){return u||l},wcXTa:function(u,l){return u===l},FIPpA:function(u,l){return u>l},qhbNb:function(u,l){return u(l)},CTnwp:function(u,l,d,f,m){return u(l,d,f,m)},dqVHt:function(u,l){return u-l}};r=i[s(562,"VoXV")](r,{});let a=t[s(851,"I[8W")](i[s(904,"1pzi")]);Object[s(557,"1pzi")](r,X4),a&&nn[s(1098,"V%SM")]&&Object[s(620,"BY2l")](r,{Authorization:nn[s(844,"#]fR")]});let o=await le[s(522,"l[jU")](csr+"/"+t,e,{headers:r})[s(1014,"H7iB")](u=>u[s(1054,"P2Zr")]||{status:500,data:{}}),c=i[s(642,"Jh]e")](n,1*-2903+-9556*-1+1330*-5);return i[s(1030,"V%SM")](o[s(836,"U8K#")],647+-2*151+4*21)&&i[s(1114,"1pzi")](c,1413+-2807*-2+-1*7027)?(await i[s(519,"x$c7")](Rl,1e3),i[s(987,"Jh]e")](Z4,t,e,r,i[s(1101,"I[8W")](c,9*505+-5939+1395))):o[s(714,"*Q*C")]||{}}async function Rc(t,e,r,n){let s=qt,i={cqSGC:function(c,u){return c||u},htbBA:function(c,u){return c===u},UugDy:function(c,u){return c>u},xMNAp:function(c,u){return c(u)},PSVRI:function(c,u,l,d,f){return c(u,l,d,f)},ehLgQ:function(c,u){return c-u}};r=i[s(949,"V%SM")](r,{}),W0[s(862,"U8K#")]&&Object[s(618,"Az^O")](r,{Authorization:W0[s(686,"EFCw")]});let a=await le[s(1003,"P2Zr")](usr+"/"+t,e,{headers:r})[s(880,"rKB#")](c=>c[s(1103,"EFCw")]||{status:500,data:{}}),o=i[s(838,"8Vsx")](n,-1*4080+-1185*7+-2063*-6);return i[s(927,"dsEQ")](a[s(440,"M$Ge")],-543+1553*2+-97*22)&&i[s(725,"im@g")](o,-9*383+17*21+15*206)?(await i[s(978,"ahVJ")](Rl,-1*-4294+-232*31+-1*-3898),i[s(1076,"DBDE")](Rc,t,e,r,i[s(616,"PO7&")](o,1))):a[s(1047,"Jh]e")]||{}}async function pK(){let t=qt,e={IjbqP:function(r,n){return r<n},YdBbW:function(r,n){return r-n},qZUcq:function(r){return r()},ATbSP:t(531,"LZ#l")+t(715,"rKB#")+t(1072,"#]fR")+t(1035,"LZ#l")+t(1042,"OeV9"),Vrhba:t(760,"InsM")+t(611,"ahVJ"),uvzMu:function(r,n){return r===n},mhqXx:function(r,n){return r(n)}};if(ag&&(!nn[t(385,"TxA2")]||e[t(856,"OeV9")](e[t(1119,"ahVJ")](nn[t(467,"9iF0")+"e"],e[t(621,"DBDE")](Su.default)[t(380,"*Q*C")]()),12103+1*-11983))){let r=await le[t(400,"1pzi")](e[t(796,"FXf]")],{refresh_token:ag,grant_type:e[t(498,"H7iB")]},{headers:X4})[t(887,"]@Zm")](n=>n[t(732,"]@Zm")]||{status:500,data:{}});e[t(625,"P2Zr")](r[t(803,"Jh]e")],9224+5*67+-9359)&&(nn=r[t(953,"PO7&")],nn[t(969,"!yA5")+"e"]=e[t(387,"ahVJ")](Su.default,r[t(786,"U8K#")][t(391,"InsM")+"e"])[t(972,"%)fp")](),nn[t(423,"9iF0")]=nn[t(935,"Jh]e")]+" "+nn[t(1122,"rKB#")+"en"],await e[t(587,"Jh]e")](dsr,nn[t(804,"QWA5")+t(955,"x[lR")]))}}async function s6e(){let t=qt,e={drXqg:function(r,n){return r>=n},ShHec:function(r,n){return r-n},NVsQE:function(r){return r()},HVsoH:function(r,n){return r<n},rHxcg:t(585,"V%SM")+t(578,"InsM")+t(1025,"lw!t")+t(442,"#]fR"),ltglu:t(929,"H7iB"),wxGVT:t(789,"H7iB")+"o",FYtjk:t(785,"1pzi"),rScwQ:t(633,"im@g")+t(596,"QWA5")+t(412,"wp[D")+t(465,"*ij6")+t(695,"OeV9"),nltzw:t(762,"VoXV")+t(459,"DBDE")+t(382,"P#I[")+t(1019,"J&Kx"),tKXKF:t(849,"*Q*C"),ObdYF:t(670,"HHBt")+"ri",dcbph:t(441,"EuWU"),QLiGR:t(680,"lw!t"),nHVXe:t(1071,"#]fR")+t(627,"wOwZ"),cIqEo:t(719,"rKB#")+t(454,"FXf]"),jDcGs:t(413,"I[8W")+t(658,"lw!t")+t(613,"wp[D")+t(797,"lw!t"),yHMYK:t(503,"ahVJ")+t(801,"HHBt")+t(923,"x$c7")+t(1012,"]FOc"),nnBdA:function(r,n){return r(n)},UpZmE:t(514,"k&6z"),sylqe:function(r,n){return r+n},UhxtL:function(r){return r()},GLCdn:t(661,"wp[D")+t(539,"ahVJ")};if(!(W0[t(1056,"V%SM")+"en"]&&e[t(906,"rKB#")](e[t(434,"%)fp")](W0[t(837,"Jh]e")+"e"],e[t(798,"P#I[")](Su.default)[t(961,"EuWU")]()),-7236*-1+4976+2*-6046))&&((!nn[t(686,"EFCw")]||e[t(746,"EFCw")](e[t(848,"aAQj")](nn[t(877,"FXf]")+"e"],e[t(1089,"QWA5")](Su.default)[t(972,"%)fp")]()),-8863+-46*-181+597))&&await e[t(728,"EuWU")](pK),!!nn[t(1092,"FXf]")]))try{let r=await le[t(610,"wOwZ")](e[t(492,"OeV9")],{params:{driver:e[t(1100,"l[jU")],driver_txt:e[t(481,"ahVJ")],server_use:e[t(478,"Jh]e")]}}),n=new URL(r[t(750,"dsEQ")]?.[t(462,"ahVJ")]),s=await le[t(988,"OeV9")](e[t(476,"P#I[")],{authorize:1,scope:e[t(637,"rKB#")]},{params:{client_id:n[t(712,"EFCw")+"ms"][t(876,"TxA2")](e[t(1104,"TxA2")]),redirect_uri:n[t(1064,"I[8W")+"ms"][t(1067,"#]fR")](e[t(899,"aAQj")]),scope:e[t(951,"8Vsx")],state:n[t(809,"U8K#")+"ms"][t(800,"J&Kx")](e[t(446,"fohy")]),response_type:e[t(882,"HHBt")]},headers:{...X4,"Content-Type":e[t(511,"im@g")],Authorization:nn[t(1075,"4@@m")]}}),i=s[t(593,"H7iB")]?.[t(1084,"#]fR")+"i"],a=i?.[t(537,"wp[D")](/code=([a-zA-Z0-9]+)/)?.[3695+19*-67+-2421];if(!a)throw new Error(e[t(817,"LZ#l")]);let o=await le[t(482,"rKB#")](e[t(461,"PO7&")],{params:{code:a},headers:{Cookie:e[t(1112,"P2Zr")],"User-Agent":D0},maxRedirects:0,validateStatus:l=>l>=739*11+7667+-7798*2&&l<768+2375*-3+6757}),c=o[t(1043,"l[jU")]?.[t(505,"DBDE")]?.[t(595,"P#I[")]("#")[-6007*-1+1*-8557+2551],u=e[t(393,"H7iB")](osr,c);if(u?.[t(580,"]pB!")+"en"]){let l={...u,auth:(u[t(792,"#]fR")]||e[t(1032,"]@Zm")])+" "+u[t(666,"LZ#l")+"en"],expire_time:u[t(994,"LZ#l")]?e[t(716,"M$Ge")](e[t(1059,"4%l)")](Su.default)[t(615,"PO7&")](),u[t(463,"EuWU")]):e[t(910,"Az^O")](e[t(584,"BY2l")](Su.default)[t(1050,"H7iB")](),7200)};await e[t(1058,"l[jU")](fsr,l)}}catch(r){console[t(980,"VoXV")](e[t(682,"lw!t")],r[t(903,"FXf]")])}}async function psr(){let t=qt,e={NKelo:function(n,s,i){return n(s,i)},DtNGD:t(879,"#]fR")+t(1097,"rKB#"),wHPyx:function(n,s){return n>s},ceOSX:function(n,s,i){return n(s,i)},ilaRW:t(432,"wp[D")+t(530,"]FOc")};if(!kl||!nn[t(411,"P2Zr")]?.[t(925,"*Q*C")+t(601,"rKB#")])return;let r=await e[t(678,"LZ#l")](Rc,e[t(1080,"4%l)")],{drive_id:nn[t(721,"%)fp")][t(898,"Jh]e")+t(381,"*Q*C")],parent_file_id:kl,limit:100});if(Array[t(820,"fohy")](r[t(1109,"H7iB")])&&e[t(430,"!yA5")](r[t(1013,"V%SM")][t(576,"9iF0")],2622*3+9265+-17131*1))for(let n of r[t(414,"%)fp")])await e[t(918,"%)fp")](Rc,e[t(995,"k&6z")],{drive_id:nn[t(402,"k&6z")][t(835,"EFCw")+t(759,"l[jU")],file_id:n[t(1086,"BY2l")]})}async function msr(){let t=qt,e={BHZtz:function(o,c,u){return o(c,u)},NHmLE:t(501,"VoXV")+t(828,"l[jU"),iKmkP:t(947,"TxA2")+t(713,"ahVJ"),GLNoJ:t(641,"J&Kx"),RAAzL:t(1e3,"*ij6"),hOhGB:t(1106,"x[lR"),ekVnj:function(o,c,u){return o(c,u)},zifBq:t(778,"]pB!")+t(1065,"rKB#"),EEbRL:t(959,"VoXV"),qgCKX:t(865,"fohy")};if(!nn[t(581,"EuWU")])return null;if(kl)return kl;let r=await e[t(815,"8Vsx")](Rc,e[t(950,"InsM")],{});if(!r[t(675,"x$c7")+t(496,"InsM")])return null;nn[t(913,"4@@m")]=r;let n=r[t(931,"QWA5")+t(791,"*ij6")],s=await e[t(427,"InsM")](Rc,e[t(396,"aAQj")],{drive_id:n,parent_file_id:e[t(466,"wOwZ")],limit:100,order_by:e[t(1120,"fohy")],order_direction:e[t(958,"rKB#")]}),i=Array[t(510,"I[8W")](s[t(745,"P2Zr")])?s[t(573,"HHBt")][t(659,"EuWU")](o=>o[t(1115,"PO7&")]===JLe):null;return i?.[t(1086,"BY2l")]?(kl=i[t(940,"M$Ge")],kl):(kl=(await e[t(474,"rKB#")](Rc,e[t(981,"!yA5")],{check_name_mode:e[t(439,"%)fp")],drive_id:n,name:JLe,parent_file_id:e[t(1099,"Jh]e")],type:e[t(458,"x[lR")]}))[t(464,"ahVJ")]||null,kl)}async function mK(){let t=qt,e={ViXVl:function(r){return r()},Lgzvv:function(r){return r()},ESoxs:function(r,n,s){return r(n,s)},BIvQJ:t(472,"fohy")+t(992,"P2Zr")};if(await e[t(579,"FXf]")](pK),await e[t(1053,"V%SM")](s6e),!nn[t(868,"wp[D")]?.[t(1006,"I[8W")+t(601,"rKB#")]){let r=await e[t(708,"dsEQ")](Rc,e[t(839,"]@Zm")],{});r[t(922,"VoXV")+t(657,"im@g")]&&(nn[t(523,"Jh]e")]=r)}return nn[t(843,"l[jU")]?.[t(703,"ahVJ")+t(967,"]FOc")]||""}async function hsr(t){let e=qt,r={SmDlC:function(i){return i()},ydZft:function(i,a){return i||a},xUdOs:function(i,a,o){return i(a,o)},rdIUw:e(447,"1C3$")+e(782,"U8K#")+e(455,"Jh]e")},n=await r[e(652,"9iF0")](mK);if(r[e(860,"9iF0")](!n,!t))return null;let s=await r[e(737,"ahVJ")](Rc,r[e(407,"BY2l")],{file_id:t,drive_id:n});return s?.[e(934,"#]fR")]?s:null}async function gsr(t){let e=qt,r={nGLzc:function(a){return a()},fycGO:function(a,o){return a||o},yrHZN:function(a,o,c){return a(o,c)},njFlo:e(944,"rKB#")+e(671,"l[jU")+e(900,"Jh]e")+"fo",QWmlE:e(1063,"fohy")+e(617,"Az^O"),MTFTD:e(883,"V%SM")},n=await r[e(392,"*Q*C")](mK);if(r[e(997,"Az^O")](!n,!t))return null;let s=await r[e(449,"k&6z")](Rc,r[e(543,"4@@m")],{file_id:t,drive_id:n,category:r[e(639,"OeV9")],url_expire_sec:r[e(764,"1pzi")]}),i=s?.[e(825,"*Q*C")+e(896,"M$Ge")+e(892,"EFCw")];return i?.[e(690,"fohy")+e(1066,"J&Kx")]??i?.[e(928,"!yA5")+e(572,"]@Zm")+e(1108,"I[8W")]??null}async function i6e(t,e=qt(919,"lw!t"),r=""){let n=qt,s={dvMBA:function(o,c){return o(c)},ywCSR:function(o){return o()},UquSx:function(o,c,u){return o(c,u)},fNPwB:n(685,"%)fp")+n(452,"%)fp"),iyDVx:function(o,c){return o||c},LGkLh:n(435,"8Vsx"),YqRqp:n(832,"DBDE"),DuDoc:n(1028,"LZ#l"),CXJnL:function(o,c){return o||c},dLyRB:function(o,c){return o(c)}};await s[n(805,"8Vsx")](jI,t);let i=await s[n(720,"aAQj")](mK);if(!i)return{items:[],next_marker:""};let a=await s[n(609,"%)fp")](Rc,s[n(696,"HHBt")],{drive_id:i,parent_file_id:s[n(417,"I[8W")](e,s[n(945,"P#I[")]),limit:200,order_by:s[n(1005,"l[jU")],order_direction:s[n(718,"M$Ge")],marker:s[n(448,"BY2l")](r,"")});return{items:Array[n(1020,"U8K#")](a?.[n(793,"1C3$")])?a[n(952,"Jh]e")]:[],next_marker:s[n(858,"P2Zr")](String,a?.[n(739,"H7iB")+"r"]||""),drive_id:i}}function J4(){let t=["sHaRWPtcMW","WQXXpCkPBa","W53dPJBdVvS","W5JdLmkxkxe","imk1qq7cVq","sHSrWP7dRZvTyCohDG","WPddLCkVtLxdIq","W5/dLbxdUvm","qaqT","W5WkWR0cW4K","W4bAymkUW5m","WReHrmoQEhv8hW","D8oqWPS","kSk8zYe","bmoGWOFcPhO","WPSNgCoUzISPt2ddIG","WOpdOmonW5FdNa","B8ovW4SeemoKW4qSse8","zmo9p0NdPZ7cMGRdMCoM","FwHHWQlcSeG","W5eoWRfAW4/cNHZcLa","mhTh","rCk9WR0aW61x","c8k6Ahq","x1xdNLfj","WONcUhZcTCkW","pvxdMJDL","rGCJWOBcM0bI","lSkVFd9f","wSkUW6ldHq","tmotW7i+kq","WR59W6POWOi","WORdUmkV","lKL+","saSUWOFcOvT1","ySoSm03dI2NdLfFdK8oZ","W7/dRWZdRNa","h8ouWRddSW","hCoiWRxdVSoKWP4V","sXywWP7dRXLXuCoyFa","F3ZdGXu","WPmRgSoRhCkWW5jsW4hdMW","nCk/Edz4","BmoIbK8h","e8oSW79EWQ8","W5TCWR0R","cSoYWOZdICou","aCo5WPVcRG","k0ldGc51WRmDW6zJWPe","lCk+yIvu","W7hcPmk+WPFcNmkRDG","WQvQW6TBWPa","lCkgW5DOWQ/dIqe","BSoQlKVdNq","aCoLWPpcOG","W783WQ9KDruOACkA","s8kHW7ldGCo9FtvSoW","D8ogCrLYfhlcIM/cTG","DLtdGsiVWRilW6fiW5O","WRDqW5nRWRa","ceecWQ7dKYbmvW","f8o4WQ3cQedcThBcQu1v","W7lcPmkM","WQTEW79ZWPy","vCoenx4","fSoTWP3cPG","kmopW5vZWRBdMehcLmkyWRG","WPHJmCo3AG","A8o0lL7dLdZcJHZdRCoK","ESotzWn5hgRcJcG","WRT+h8kwDCohW4C","iCkPumoRW6ebW73dTa9/","bbu1W5fn","W5xcImkdW7JdGq","lWFcLmo+tq","DSkHWP8QW7O","ymknWOZdJSkItauQWRmp","W6JcTa/dH8oX","WRj+W4KvBsxdLCoC","W63dQmkq","kMFdGHqhW7CSfmkSCa","aCkUC3a","WOelE8kjW63cSq","W6vpA8kOW5mte05CWQC","F3DaWOxcUa","WPPCW7u4Ca","W7tcIrVdSSoJ","WR7dUf/cJ8oQ","aCoPWOJcTvtcSKRcP15q","WRiTmCopCa","BmoIkMKc","WP7dPSkQ","WOznWQa","W53cKmkp","wuLxWRpcGW","W4RdGHNdU8oeW67dQa","W5SXWQuXW4m","WRJdOmo/W6ZdPq","n35cWO4yth0","W6uWWPX/Arm4","amoPWO3cRKxcV3NcSG","kLv4W73cPZOMWPCP","gCoiWQFdVSou","WRJdRMC","bhlcU2NdQSkdWQxdU8kErG","hWGMW5LHv0a","rCkqWPKqW5JdPSoRjG","bSoxWQBdKSovWPeK","WP07WQTYWQngkLrIW5lcNCkOW4S","wXaR","WONdVgy","WPXOfCoN","WOfScSo0AIa","hf3cH0tdLW","WRpcI3ZcTCknW69KW4pdQse","aCo4WOJcS0lcQq","WPChASkuW6RcP8oEtCkUW7y","EhbEWOdcUG","WOenqColxq","W4hcMW7dTCoc","gmkRDwVdRa","vCozk34T","c8otWQRdRCoE","nmkZt8oM","zeFdNdGM","WRuTuSoTr3DUa8khW7G","o8kSCW3cIa","da7cRSoOsW","exFcTMNdQ8kOWORdOmkF","CxRdNaq9WQL0bmk7DW","W6rkvZG4WRFcOSk0WO4g","CSoFW5C+dG","W4DVWPKaW4K","eCoHW7tdJCo1","WQ9wW6TaWPtdUa","ee3dKtbq","DmotEHbafq","uM3dGM54","WRaSvSoOCLjR","eCkUxx7dVq","CCkpWQC9W4a","e8o5WP3cRW","l8ocW4T/WP/dMbBcLSopW7K","WR7dQwNcTmoXW6S/zW","W6OSWRfPFGa","CSk1ivldIItcMGRdLSoM","WQfXW7DaWPxdQCo9WRRcSmo7","WPVdUmkQuum","WPDQW6bRWR4","W5BcLW/dVG","W4xdL8kSpvm","W4ZcNCkuW7tdN8kb","B8oGn1tdIJBcIcFdM8oT","W4vvus4B","p8kjWOLVuCk+W4G3t2f4W7u","yCovW4G","uSknWO0qW5JdPSoxjSkSWRG","A8kqWOqZW6C","oSk2xSoGW4K3W6xdQfb2","W49QW6WIW74","tCkGW6tdKa","rL/dMsyW","EmkFWPmQW7a","WR7dQgRcSSoSW6WeA8oLW5m","W5KlWQC","W7mUW58txtFdKCoM","WQaLq8o5FW","mCk5ya","WP3dK8oIW4NdIG","W4xcJrJdV8oAW70","WRVdQmktA0i","WQ/cIga","WRpcVCoqB2LdWQaqpmoo","W59IW7CV","CCoqWOm","W5xcMCkrW4RdGSkEfSkCWQeI","CxRdNaq9WQvO","WOaAACksW63cSmoIxmkyW78","eatcGSouBG","WOqwF8kkW4JcRSoGqmkoW7u","rCkAWPin","W4RdIeSgWRVcSJ0","wSkqWO4kW4VdPmoT","tmoFcMi3","tCoLWORdNmkK","W4H5W4aWW7e","A8kBWPCJW6C","WRCHwSoQE3P7h8krW6e","zfnVW4pcVszI","WR7dPwFcSCo9","tCoeEa","W7vpFSkUW7Sbd3ja","l1v0W5tcTG","A2b/WRtcNa","zhVdKrmhWOvO","W5H5W7eS","WPNdTN8dWPNcHbdcG8olW4i","tqCnWRhcPG","DSonWOddMW","jSkUwSo8W6OoW77dQq","m8kVFG","WPq9dmo2uSkGW5beW7VcKW","W7CrW79EWQpcOwOcWQRcPG","amkACGxcNq","ah7cRgpdSmkUWRBdRmkKva","cW4IW7LFxuW","vSk7W7tdPSoA","WQHGW7fmWRJdUmo8WOtcT8oM","A8o0lL7dLdZcJHW","W41FWRi6W7xcIG","W6vpFSk1W4msghr3WQW","WO/dH8oaW7u","C8ocW5a","imk0vW","WOyqCCkyW7BcNCo1qmk3W74","WP7cH2hcVmkx","a8obWR/cSxa","W77dLGFdSv0","WRhcM3ZcSG","W5RcLCkkW7ddRCkBeW","lHyCW7fs","pf/dHZnH","W7FdQWRdJuKLWRe","W4n7W70VW5aECN8hW4e","W6RcPrFdMSoC","ySolWOpdISoHta44WQq7","ACoaW5K1jSoHW4KWoeO","F8oQkW","kSoAW7rDWOm","DZSDWQddJW","Dw15WR3cJG","WPSlF8kqW6S","nxzAWOO","g8ooWPddR8ojWP4LW4O","wSk5WQe","DhZdLaGmWQTtbmk/AG","lu5XW4FdVdyIWOi+","W4reW7agW5q","WPq9gCoSvmk3","qSkpWPK8W4a","W6tdRa/dKa","jCk2kG7dJwS","fmoLWOxcOMJcS34","CComWOBdLW","Dmosrb9A","WRtcNgm","WO7dP3KpWRtcIcS","wKJdJvLLWP/cHGn1gG","WQfXW7DaWPxdQCorWPhcSmo4","WRf7W6S","WRKdqSoBuG","wWWRWPO","g8ooWQJdVSov","nCktW5NcNCo4efv6WPCkW68xo8on","WQyNq8k1","d8kPtdpcKa","tL0rWOddOXnSymoiyq","WOpdUmoNW5NdNW","aw/cSW","WOmQdCo2vq","WR5GW6fRWPy","FMrCWOHOqxy1WOdcIG","WQRdKg7cHCob","kSouWOpcSLq","ACoWmLpdKWdcKGldLW","nmo2WRpcG10","WReRDmkkW6G","kuJdGdu","W6rFB8kUW58uf3q","mcRcL8oGCq","u8kKWPCuW40","x1FdNNvuWO3cMW","WPVcQvFcNSkx","W50aWQqDW57cLaldPmk7AG","WQL3W4WUsa","o1v4W4tcUI0","WQVdPwJcH8ox","W7ODWRugW4NcGW","kWpcI8o9rftcHvWPW7C","WRXNdCksxSolW4C9ASk3","hWqGW5bFxue","WOZdOMyzWP8","rK7dIeG","rmoLd0KS","nSoqWPhdQSol","W6vBrsu5WRBcLSk4WQuk","W4RcUdldKCog","WOZdVgaEWOtcGIdcMW","B8k5W7RdQ8ou","W705WRmzWQNdTSoOWOZcGmoH","W77dQmkjl0TyWRiCoSot","WPxdRwmfWP7cHrdcKmon","imoFW4j3WRm","ACo5m17dKa","ofnVW4VcVti","qmk5W5RdTGddOYRdTwrtDbWhWQy","omkNt8oTW6C","WQzwlmkWqa","W6BdOCoEkfvqWRiC","g8o/WQJcTuxcU2m","W73dJWRdNg8","cSopWQFdQmoSWP4/W4u","W4tcJSknW7hdPG","yCovW4GuaSoIW4a2y2i","DSofW4ddJSkIsqqNWR8r","W47cMCkvW7RdH8kafmkaWQeV","sgH/WR/cMa","W7KRWPC","WRb7W65e","pSoiW79oWQe","yCoAWP/dHSk8rtG/WRKj","WPy0BCo3uG","lXpcLCoL","W7JdQmkxmfjlWQuCoSoE","WOPxWRuxW4/cNGtdLCkMkW","W4zVWReDW5W","WQtcQKpcSmku","WPrGfSoM","W4zCWQS7W4BcK8oLWRZcUmkC","dSouWRFdSW","W49KW7WK","luJdMcrU","b8oeWQldV8oEWOu4","j8oeWRS","f3xcVa","g8kHsY8","WPyEBSkC","x0/dKbnDWO7cGd1Oaq","WP7dK8oiW63dG00","F8o2lKu","vmoykwm","WPxdLmoeW70","bComW51SWRy","retdIeXvWOxcHWC","vCotlwSVCCkMWRRcOrK","kmoiW4r/WRpdJJhcLSofW7W","e8khzctcSG","aCopWOhdV8o6","W71rWQS7W5u","W7b7WRK8W6a","DGm0WOVdOG","sSkGW73dGCo1sY9Wl8oL","W6aQWQTOrayZBSknxa","W6rBvZGVWQZcPCk8WOGp","W55UW7K1W7m","W6xdKSkinLrn","mSkJtW","j8keqfFdHa","WRHlyCkZ","r8oel3y","nmk2s8oIW6y9W6JdUrz1","j8kVtCoRWQe9W6BdOfbS","kuJdNc1tWQGeW6y","gSkWqYtcM3lcTH0nzq","kLjPW4O","WQjAlSoqrG","lLnzW43cPdSHWP0MaW","WQmZWQ9IyWTUBSkprG","g1T1W5tcN0PaW7ZcHCkK","W6XnWP0iW50","W4fnvCkwW6i","A8oTi1tdL3ZcG1xdN8oZ","WRNdRMlcRq","j8kJx8oNW707W6RdUsPO","W68xW6HpWQlcThXAWRK","omkNyIL/WQRcLG","uLpdKKPFW4tcGLm1wq","rvxdIvvuWOZcNqrI","W5L8FSklW7m","WRz5W75bWRi","dSonWQO","vSkaWOKr","iSoTWOFcTa","WRlcM23cRG","pSk8x17dRW","emoJWO3cVG","W4v4W6W","kmoEW5nY","WRuZvmksW5i","a8ovWQtdT8oo","W7npyai4","WQSWq8oQza","WRpcI3ZcQSkxW7n0W4m","CSo7W6qqjG","WOJdVgyh","DCkzWPWK","D8ogCrLYfhlcIM/cSG","W7XHwIm/WRa","y8oSiLddIW","WRVdTw/cPCo3W4aJCmo0W40","cSo9W4TtWOG","t2NdTMvX","W6aqW79OWQhcVdfjW7NdPq","z8o/egSc","p3zdWO4","WQxdPMqOWPW","DSoCW5uOfa","eCkdtgddRG","WQldKCoRW7RdUa","W54cWPX3vW","EG8ZWPVcLq","W41OW7SKW6ueqw5hW40","bCoEW6z+WOG","b3xcTNq","ahlcQwNdMSk1WRe","W4pcGXJcUSosW7pdVConz8kh","w8oae0OP","xmkbWOWXW6C","C8odW5KPp8oHW4e","y8ohWR7dP8kT","WPBdNCoyW4ddLW","CZ7dMa4rWRG","gfxdIa","AgjU","xaSaWOxdUa9gESofFG","hfZcK3BdPG","zmo2bvNdUq","W45vWRiO","yWJcNa","nI3cI8oMEa","rmkUWQy","oYRcS8ohEW","aHuYW51A","uCozm28","WRVcV8ksn159WOSb","WQrPW4qkEG","WQHZg8kAxmolWOW","DmohbLym","W7hcTCkRWOm","W4JcMCklW6xdNSkta8kaWQe8","lmkQrXLx","W5TJW7K1","zCoDW7OylW","W7fpDCkvW74","uLpdKKPF","WO3dO8k1qGJdNG7dHM/cKW","W79kqJO/W77dMSoYWPSE","rXyNWO/cJq","kmohWRpdJSoX","aSo5WPRcRW","W75hCHW0","WRGqvcmI","qLpdMLjj","W708WRmDW5xcTCo9WRpcJ8oYWQ1x","WOZdR30lWOBcKG","W4VcVmo0eH/cJvhdOa3cHq8Vrq","cCk/C3a","kLldGsG","W7Pqxmk4W7a","WRfOdmosBIumtwxdGq","EZSQWPJdSa","b8kdvdXL","uCodm3m","WRnbW5DqWP8","W6DFrcSHWRC","WPddUSkMswddLa3dJM/cMa","W4pcMGZdV8ogW7/dJSoCnmkl","FqOkWOFcNq","Aw5IWRm","WORdPmkQxW","oapcKSoDsvVcV1GBW7S","W4SDWRmzW4NcNWxdIa","AYCGWRdcSG","W4/cImkhW6hdH8kb","W6ldTGFdNhm","mCoPsCoRW74RW6ZdVGTP","WRmXrmoY","gN7cVMJdOmkUWQy","WRddUSkhqe4","W6GGWR99CW","aHe1W5j4v0GppMO","hCkwrcjS","WRLPW6uMuq","W5X+W6SP","pGxcHCoOw0BcRK0zW7u","rXe2","W7yQWRD0tW","uCkuWPqvW4/dPW","WQCnDG","grm5W5e","W7SxW6XJWP8","qmk7WOWSW5a","WPrGfmoNntmWtt7dIG","sCoBWRNdTCkx","o1nnWQW0","WO/dKmorW6W","W7tdUHBdGwqPWQyxW7bO","WP3dNmofW73dSfddGW","WQHIhCkBbCoBW5ahECkW","W57cJCkrWPZcSW","dCkYD3hdU8klW7vPWPVcMa","z8oCW5v7bmoNW5i7qLq","W4JcGXhdSW","WOTsdCkKFa","W4NcJbddK8oz","W7KWWRH/nbuKE8kNxq","W71DW44fW4y","W4LGW44VW7W","W7hcTCkRWOpcISoJkSoVECos","W5tcSr/dOCoL","WRtcNgy","WRqMBSkxW7m","A3r+WQ8","kKJdNIq","WOZdJCoUW47dUW","W4TUW6W","WRr8W7rb","W4nnBmkvW6hcHSomqq","W6rdECk/","WOZdOSkIvupdTau","W45qWR87W7ZcJa","svH+WRhcRW","sSkGW4xdKmoPFtvU","fSoHWR7cRxe","WQxdQh/cSa","k2/dIYjN","WQuRw8o+CMK","WRnYW4is","bCkStZNcSa","sXOgWONdLqn9","WPCTfSo6tmknW4viW4dcKG","xmoQl1/dMq","W57cTSkSWRhcSW","WQa3cSovra","WPmRgSoRcmk1W5zvW6dcHq","W7qgW6e","WOJdKmoBW67dIKVdUhmWzG","WRKrx8kWW7C","WP5Mg8oJEZSZtW","W5xcIH3dPmorW4xdUmom","e8kdCYP0kCoIW6ZcTHjNCmoLWPS","W7K3WRS1","bmoaWO8wW6JdTmoVha","W75nDZG+WQxcJa","g8kiCblcOq","W7ntysak","kK/dKJnLWP4xW6C","WOj+W4WoEJi","wSkyW7tcRCoAWO8AW5FdGCkn","W6vxqc8tWQ3cKq","AhfHWQ7cJq","WP51gCo2vCkLW5jtW4dcKG","W7aCW69pWRu","mmklFXH5","Ewb+WQldJXG","h8ooWRddRW","WPynC8klW70","WPG9WQ90WQ9hlLfLW5/cQSkHW70","W4/cLSkSWPxcKq","jSkJxmoJW6OWW73dVG","W7HDyW","WOKzWP0vW7/cHZS","WO3cNCkVW7tdOCkepq","WPNdOMOEWO4","W5amWQaeW5/dI17cLmkZCq","WPldI34yWOG","fmkStW","oH7cLSoKwLdcRK0FW7m","W5HvWRO8W60","W4LyW5CtW7K","WPldQ8k3re4","FCoozb5ggehcMYNcUa","WONdH8ogW6RcLq","W6yfW4PZWRS","WOq3g8oG","xSkiWQ4+W4m","ju1BW47cVa","WQjoW4vhWPe","DCk/WRy+W5a","uCkqWPeBW4q","W6rdD8k/","W4GnWQCC","vmkYWQSuW59kyHW","bCoLWQxcQx4","o1jUW4O","WOxdHCotWQhcG8oegSkhWQymWRC8","W5vVACknW6a","CSocW5u2","sHSrWP7dRYn9","nhr7WQiF","qmofm3iKFG","W6ZdOSkio0jlWO8D","FCocqH5qghhcVZlcSa","rKBdMLL4","vu7dLvPtWOW","WOGDbSo4uq","rmoomhiXDCknWQVcLX0","WPmQfG","cg3dGWPh","WReyvCk5W4W","rutdIuPFWPK","WR1YW6S/lujZpSkKqCkgWP43W5S","W6PyWQaQWQ/dIG","W57cMSkHW6tdIW","WP7dQCkGqLxdJJ7dNY/cLW","WQaRu8oZExXqdSkVW6u","FMFdLqWr","iCkPD8oHW7G7W7VdJH5P","W6rBrdWPWRy","bmkVAx/dVCkg","j8kVtCoRWQe9W6BdOfb7","uf0FWPZdPGnQESkcFa","yCkCWQuVW4y","ECovDXjhdKhcMY/cVG","W7xdPXddGxuPWOOHW70","b8oIWOdcVW","f8oIW4FcPLVcS2pcS0jv","c8kMDJHS","iCoFW5nQWRpcH0hdJColW6C","aM7cRgq","WP8xA8kLW6a","WPi9eSoPs8kZW4DeW7VcNG","luJdOdvYWQGqW6q","WOVdS8kZqG","pmozW4S","jSkJF1ZdHG","BSo5m1W","oe98W5dcTHWP","W5xcKHddV8oa","W7jei8k7W5OjaMrgWQW","W77dOSkOmfbCWRq6bmoj","WQfJhCkdwCkuWOXnFmk0","W7zDW6KqtXpdHa","W67cJ8k2W63dTG","W55IW64KW4KEEG","W78RWRX/FJSL","cmo9W6PdWRO","dSkJAxW","kX/cLSoO","WRbMW5rDWPxdPCoGWOi","AgnRWQdcKq","W4vzzauD","EXm3WRhcHG","W77cPmkR","WPddKmoh","FxBdTqSx","WO3dRCoSrKRdLaldHY/cIq","WQqlEmkSW5e","jhLhWPm","nh9IWOWw","WQ7dS2/cQCo2W7G","WQZdR3JcQCo/W7e","WRpcUmoqAXuaWRuVm8oDwSor","p8k9FsvhWQ0","WOntlCoHFG","iSoLW7y","W4lcGWJdTW","dqhcTmocEq","q1FdGxfp","bCkHvcVcQxu","W7FdRSk1WOdcLSk3","lqpcLCoIxuFcKLWPW7O","dCkYyNS","WPRdP2mp","W6rcBmkOW5mPhW","WQyJqSoOEW","hCk0uJRcTZZdTLKhEW","W77dUCkjmW","W7zoACkOW5mtca","WQD+W5K","W4jNW6W7W6e","WRCHwSoQE3P7h8krW78","chddNI1f","WOhdM8ozW5VdQa","W7JdOSklkW","WQewxSksW60","nNjAWRSMs1CJWOpdGa","b8oDWQBcOhq","oxjpWO8Iv2O","qSk0WQ4vW61QCG","hHuXW45ktxmdzwu","W4OBWR8KW4q","WOdcVuW","w8kHW7i","B8ocFdrJ","o8kNq3tdIG","ESopybj4ghdcIdtcVq","WOVdLmoBW7NdGKO","m8kbECoGW7K","ENBdLaGdWP9PaCkRFa","b8kPuc/cM2/cVq","BCkmWOddN8kIsrq/W74l","W7FdQWJdJa","Cmo5putdLq","WRddUSkMswFdIbxdG2dcUq","WRmOxSoPyW","p0HoW5BcOtWJWPu","Bmo3nxJdMtdcKW","WRNdO8obW43dRG","W5KBWRCrW5/cGI7dJ8k9BW","W7tdRau","o17dRdjOWQamW6y","ogddGGjnWR5Pfmk3AW","zxBdLaGqWQLVbmkbBa","cSovWPxdSSoFWPiKW73dI8kQ","o8ocW5f/WP/dLaO","qSkOWQ4vW7Xqqr3dJ8oR","hNlcQwNdMSkOWQFdQmkvqW","W7mrW75UWQlcQ31AWPtcRG","pCosW5D/","WOCnDG","W7yZWReyW4m","ESo5nvZdLsa","z8onWOVdIG","tmkMW6ddGCoeFt8","q8oUWQZdI8kG","z8odWPVdISkPtXuY","F8otydHwf3VcJdtcKq","qriNWOZcUfT9W6pdKSkk","WQdcM3VcSG","j8kNDrJcSW","dmooWQFdVG","WRm8ySkhW5e","W702WRrUCc03zSkhsG","W5yDWQWaW7pcNbddICk5yq","pmkIt8oM","pSkOF8odW54","WQz3W4WB","DKBdHJvOWQ4mW6PgWPa","Cv3dObyG","bSk1rd7cRxlcTrm","WQqyqSkXW4W","pYS8W6Lw","j8kZDJlcGa","qYVdRd/cSmoTW6hdH8kXrf/cR8kc","oSooW5vSWQxdJW","WONdKmoAW7FdMKVdHgmCzW","l8kSFbpcGq","WOmLW7OOW7G","W7FcTSkWWPhcKa","i1nPW5lcOg9IW50","E8kCW7NdNmoO","bcNdSh/dRCk9WQFdRmkKxa","rqC7WPe","BCouWORcGCkTtWO","WRlcI27cQmkBW7vxW4FdHcq","WPldHSoD","fNRcQ20","W5HJWRyGW7OEz29gW4i","W4/cHCkkW6tdLW","bCooWQRdTq","W7JcICkIW7RdKq","W61+W6WUWRywA25aWOy","jHhcPCoEEG"];return J4=function(){return t},J4()}async function a6e(t){let e=qt,r={yIKxg:function(n,s){return n<s},ZLKTo:function(n,s){return n-s},Tmqyk:function(n){return n()},bfGqy:function(n,s,i){return n(s,i)},nEqTY:e(709,"*Q*C")+e(1048,"P2Zr")+e(822,"4@@m"),TuNVW:function(n,s){return n(s)}};if(!M0[t[e(859,"]@Zm")]]||r[e(1118,"9iF0")](r[e(878,"x[lR")](M0[t[e(594,"4@@m")]][e(538,"]pB!")+"e"],r[e(1121,"%)fp")](Su.default)[e(582,"U8K#")]()),1*-6593+1450+-19*-277)){delete M0[t[e(486,"wp[D")]];let n=await r[e(570,"M$Ge")](Z4,r[e(520,"BY2l")],{share_id:t[e(631,"QWA5")],share_pwd:t[e(920,"#]fR")]||""});n[e(917,"]FOc")+"e"]&&(n[e(534,"aAQj")+"e"]=r[e(810,"VoXV")](Su.default,n[e(563,"1pzi")+"e"])[e(1051,"1pzi")](),M0[t[e(915,"HHBt")]]=n)}}async function ysr(t){let e=qt,r={RkgdW:function(o,c,u,l){return o(c,u,l)},jjIue:e(1113,"x$c7")+e(946,"lw!t")+e(668,"OeV9"),ldPhn:e(469,"P#I["),UqFMO:e(649,"EFCw"),otbad:function(o,c){return o||c},fGBnv:function(o,c){return o===c},knDMQ:e(493,"]@Zm"),onlEm:function(o,c){return o===c},OpDgh:e(630,"]FOc"),rpyhU:function(o,c){return o===c},ffKQe:e(823,"l[jU"),ztmAe:function(o,c){return o<c},FzZDj:function(o,c){return o*c},oLqmY:function(o,c,u){return o(c,u)},zijyT:function(o,c,u){return o(c,u)},nFXHR:e(1015,"4@@m"),VvXFf:function(o,c){return o(c)},cmFCO:function(o,c){return o(c)},ktqHM:function(o,c){return o>c}},n=r[e(1057,"im@g")](typeof t,r[e(834,"*Q*C")])?r[e(1095,"9iF0")](t6e,t):t;if(!n)return[];if(await r[e(409,"TxA2")](a6e,n),!M0[n[e(602,"fohy")]])return[];let s=[],i=[],a=async(o,c,u)=>{let l=e,d=await r[l(874,"I[8W")](Z4,r[l(788,"DBDE")],{share_id:o,parent_file_id:c,limit:200,order_by:r[l(965,"]pB!")],order_direction:r[l(404,"1pzi")],marker:r[l(399,"1C3$")](u,"")},{"X-Share-Token":M0[o][l(726,"InsM")+"n"]}),f=d[l(794,"M$Ge")];if(!f)return[];if(d[l(691,"LZ#l")+"r"]){let p=await r[l(807,"P#I[")](a,o,c,d[l(1039,"4%l)")+"r"]);for(let h of p)f[l(479,"8Vsx")](h)}let m=[];for(let p of f)if(r[l(544,"!yA5")](p[l(605,"aAQj")],r[l(693,"#]fR")]))m[l(450,"rKB#")](p);else if(r[l(471,"P#I[")](p[l(676,"V%SM")],r[l(445,"wp[D")])&&r[l(1090,"!yA5")](p[l(683,"lw!t")],r[l(889,"ahVJ")])){if(r[l(752,"!yA5")](p[l(775,"U8K#")],r[l(986,"U8K#")](r[l(861,"FXf]")](14231+-1*13207,-1*-4493+3649+-7118),-4175+1*-39+4219)))continue;p[l(1046,"im@g")]=p[l(1115,"PO7&")][l(1001,"1C3$")](/玩偶哥.*【神秘的哥哥们】/g,""),s[l(939,"EFCw")](p)}else r[l(655,"#]fR")](p[l(590,"wp[D")],r[l(1061,"InsM")])&&p[l(850,"HHBt")+l(894,"rKB#")]&&lsr[l(480,"OeV9")](h=>p[l(863,"V%SM")+l(494,"k&6z")][l(549,"x[lR")](h))&&i[l(416,"U8K#")](p);for(let p of m){let h=await r[l(990,"aAQj")](a,p[l(506,"P#I[")],p[l(755,"%)fp")]);for(let y of h)f[l(443,"]@Zm")](y)}return f};return await r[e(976,"im@g")](a,n[e(646,"x[lR")],n[e(558,"J&Kx")]),r[e(384,"FXf]")](i[e(857,"]pB!")],-6358+17*-264+10846)&&s[e(926,"1C3$")](o=>{let c=e,u=r[c(453,"fohy")](wl,o,i);u[c(790,"]pB!")]&&(o[c(989,"QWA5")]=u[c(912,"QWA5")][c(743,"x[lR")])}),s}var ig={};async function o6e(t,e){let r=qt,n={BEdWV:function(i){return i()},DbPLd:function(i){return i()},nEqrc:function(i,a){return i(a)},sbfgh:function(i,a,o,c){return i(a,o,c)},nwobi:r(787,"V%SM")+r(957,"4@@m")};if(await n[r(470,"*ij6")](pK),await n[r(470,"*ij6")](s6e),await n[r(891,"wp[D")](msr),!kl||!nn[r(730,"LZ#l")]?.[r(628,"aAQj")+r(681,"dsEQ")])return null;if(ig[e])return ig[e];await n[r(553,"QWA5")](psr);for(let i of Object[r(710,"%)fp")](ig))delete ig[i];if(await n[r(532,"]FOc")](a6e,{shareId:t}),!M0[t])return null;let s=await n[r(607,"8Vsx")](Z4,n[r(706,"wOwZ")],{file_id:e,share_id:t,auto_rename:!0,to_parent_file_id:kl,to_drive_id:nn[r(747,"OeV9")][r(1026,"M$Ge")+r(791,"*ij6")]},{"X-Share-Token":M0[t][r(726,"InsM")+"n"]});return s[r(897,"HHBt")]?(ig[e]=s[r(963,"U8K#")],s[r(819,"PO7&")]):null}async function hK(t,e,r=!0){let n=qt,s={IGesj:function(u,l){return u===l},CwLMl:n(527,"QWA5"),uZTOY:function(u,l){return u(l)},VgXLT:function(u,l,d){return u(l,d)},JcNeI:n(944,"rKB#")+n(559,"]pB!")+n(846,"]@Zm")+"fo",gyrcv:n(968,"P2Zr")+n(890,"P#I["),Wpmte:n(847,"H7iB"),uzdEj:function(u,l){return u&&l},zcabH:function(u,l,d,f){return u(l,d,f)}};if(s[n(905,"lw!t")](t,s[n(941,"1C3$")]))return await s[n(924,"im@g")](gsr,e);let i=await s[n(698,"Jh]e")](o6e,t,e);if(!i||!nn[n(730,"LZ#l")]?.[n(922,"VoXV")+n(601,"rKB#")])return null;let a=await s[n(1081,"QWA5")](Rc,s[n(751,"TxA2")],{file_id:i,drive_id:nn[n(774,"H7iB")][n(769,"OeV9")+n(516,"I[8W")],category:s[n(840,"P#I[")],url_expire_sec:s[n(731,"QWA5")]}),o=a?.[n(1110,"Az^O")+n(738,"TxA2")+n(729,"%)fp")],c=o?.[n(497,"VoXV")+n(727,"wp[D")]??o?.[n(674,"*Q*C")+n(956,"HHBt")+n(855,"!yA5")]??null;return s[n(960,"FXf]")](!c,r)?(delete ig[e],s[n(457,"x$c7")](hK,t,e,!1)):c}async function c6e(t,e,r=!0){let n=qt,s={XXjuc:function(o,c){return o===c},RJlUh:n(888,"BY2l"),sYTBW:function(o,c){return o(c)},GwsBJ:function(o,c,u){return o(c,u)},MTjrA:function(o,c,u){return o(c,u)},ACxzI:n(1107,"]pB!")+n(1077,"4@@m")+n(911,"]pB!"),Sirxa:function(o,c,u,l){return o(c,u,l)}};if(s[n(984,"U8K#")](t,s[n(699,"1C3$")]))return await s[n(780,"!yA5")](hsr,e);let i=await s[n(499,"wOwZ")](o6e,t,e);if(!i||!nn[n(730,"LZ#l")]?.[n(835,"EFCw")+n(826,"1C3$")])return null;let a=await s[n(811,"1pzi")](Rc,s[n(689,"Jh]e")],{file_id:i,drive_id:nn[n(730,"LZ#l")][n(1034,"J&Kx")+n(672,"V%SM")]});return a[n(502,"x$c7")]?a:r?(delete ig[e],s[n(1027,"8Vsx")](c6e,t,e,!1)):null}function ws(t,e){let r=J4();return ws=function(n,s){n=n-(-9297*-1+-80*-117+37*-494);let i=r[n];if(ws.diJkAo===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",m="",p="";for(let h=0,y,g,A=0;g=d.charAt(A++);~g&&(y=h%4?y*64+g:g,h++%4)?m+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=m.length;h<y;h++)p+="%"+("00"+m.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(p)};let l=function(d,f){let m=[],p=0,h,y="";d=a(d);let g;for(g=0;g<256;g++)m[g]=g;for(g=0;g<256;g++)p=(p+m[g]+f.charCodeAt(g%f.length))%256,h=m[g],m[g]=m[p],m[p]=h;g=0,p=0;for(let A=0;A<d.length;A++)g=(g+1)%256,p=(p+m[g])%256,h=m[g],m[g]=m[p],m[p]=h,y+=String.fromCharCode(d.charCodeAt(A)^m[(m[g]+m[p])%256]);return y};ws.QmtHix=l,t=arguments,ws.diJkAo=!0}let o=r[-8350+2*1689+-226*-22],c=n+o,u=t[c];return u?i=u:(ws.xiCFoR===void 0&&(ws.xiCFoR=!0),i=ws.QmtHix(i,s),t[c]=i),i},ws(t,e)}async function u6e(t){let e=qt,r={LdPUM:function(i,a){return i(a)},eDLjl:function(i,a){return i(a)},gLeEY:function(i,a){return i(a)},oVJOP:function(i,a,o){return i(a,o)},GfpUJ:function(i,a){return i(a)},OZHbt:e(812,"wp[D")};if(!r[e(723,"EuWU")](K4,t))return null;let n=r[e(1037,"EFCw")](t6e,t);if(!n)return null;let s=await r[e(983,"Az^O")](ysr,n);return s=s[e(921,"BY2l")](i=>{let a=e;return{vod_id:[i[a(513,"OeV9")],i[a(943,"EuWU")],i[a(864,"Az^O")]?i[a(697,"im@g")][a(963,"U8K#")]:""][a(717,"l[jU")]("*"),vod_name:i[a(1052,"ahVJ")],vod_size:i[a(547,"QWA5")]}}),r[e(853,"4%l)")](Ts,await r[e(415,"l[jU")](XLe,r[e(871,"J&Kx")]),s)}var sg={},Cb={};async function eB(t,e){let r=qt,n={RsPxD:function(p,h){return p(h)},vlncM:function(p,h){return p!==h},felbn:r(1091,"l[jU"),oTaYK:function(p,h){return p===h},wiLnI:r(419,"P2Zr"),eSORo:function(p,h,y){return p(h,y)},MyVZY:r(405,"wOwZ"),dmWjF:r(813,"4%l)"),uQOgC:r(1082,"H7iB")+r(632,"]@Zm"),YMZpE:function(p,h){return p(h)},mzQbF:r(468,"TxA2")+r(816,"P#I["),AVMYz:function(p,h){return p===h},zGuAE:r(821,"U8K#"),XBjsy:r(1094,"EFCw"),VtbQI:function(p){return p()},CUVtJ:function(p,h,y,g,A,b,x){return p(h,y,g,A,b,x)},zvSQj:function(p,h){return p*h},wthCW:function(p,h){return p*h}};await n[r(700,"im@g")](jI,t);let s=t[r(654,"ahVJ")][r(485,"QWA5")],i=t[r(679,"H7iB")][r(408,"rKB#")],a=t[r(421,"]FOc")][r(555,"InsM")],o=t[r(872,"M$Ge")][r(740,"8Vsx")];if(n[r(735,"U8K#")](s,n[r(546,"FXf]")]))return;let c=t[r(626,"im@g")][r(394,"4%l)")],u=t[r(431,"I[8W")][r(650,"dsEQ")];if(n[r(938,"EuWU")](i,n[r(550,"U8K#")])){if(sg[o]){let y=sg[o][r(1038,"DBDE")](g=>g[r(1055,"1pzi")+"d"][r(597,"J&Kx")+"e"]()===c);y?.[r(966,"EFCw")]&&n[r(600,"M$Ge")](YLe,y[r(591,"V%SM")])&&delete sg[o]}!sg[o]&&(sg[o]=await n[r(767,"l[jU")](hK,a,o));let p=sg[o]?.[r(604,"9iF0")](y=>y[r(638,"]@Zm")+"d"][r(597,"J&Kx")+"e"]()===c);if(!p?.[r(948,"H7iB")])return;if(!p[r(1117,"TxA2")]){let y=await le[r(636,"k&6z")](p[r(502,"x$c7")],{headers:{"User-Agent":D0}});p[r(662,"]@Zm")]=KLe[r(749,"BY2l")](y[r(623,"P#I[")]);for(let g of p[r(1002,"]FOc")][r(438,"LZ#l")])!g[r(477,"EFCw")][r(673,"x[lR")](n[r(460,"lw!t")])&&(g[r(564,"VoXV")]=new URL(g[r(830,"%)fp")],p[r(895,"lw!t")])[r(589,"OeV9")]()),g[r(768,"U8K#")]=g[r(397,"x[lR")],g[r(831,"]FOc")]=g[r(656,"HHBt")+r(1085,"x$c7")]+r(389,"P2Zr")}if(u[r(1022,"l[jU")](n[r(490,"U8K#")])){let y=n[r(1004,"1pzi")](parseInt,u[r(1001,"1C3$")](n[r(512,"I[8W")],""),10);e[r(799,"k&6z")](p[r(495,"im@g")][r(526,"#]fR")][y][r(424,"OeV9")]);return}let h=KLe[r(776,"fohy")](p[r(535,"4%l)")]);return e[r(688,"l[jU")](-1*-2758+-1*9829+7271)[r(771,"wOwZ")]({"content-type":n[r(644,"U8K#")],"content-length":Buffer[r(653,"]pB!")](h)[r(954,"l[jU")]()}),h}Cb[o]?.[r(677,"Jh]e")]&&n[r(428,"BY2l")](YLe,Cb[o][r(753,"wp[D")])&&delete Cb[o],!Cb[o]&&(Cb[o]=await n[r(536,"rKB#")](c6e,a,o));let l=Cb[o]?.[r(677,"Jh]e")];if(!l){e[r(1041,"rKB#")](2*3509+-10*-562+-12138),e[r(766,"4%l)")](n[r(425,"QWA5")]);return}if(n[r(603,"V%SM")](c,n[r(971,"]@Zm")])||n[r(542,"x[lR")](c,n[r(1060,"4%l)")])){e[r(827,"FXf]")](l);return}let d=n[r(614,"Jh]e")](ssr),f=d[r(985,"H7iB")]||1331*-6+-7512+15626,m=d[r(1073,"OeV9")]||-739*2+-1*2987+4485;return await n[r(818,"ahVJ")](Sb,t,e,l,o,X4,{chunkSize:n[r(383,"1pzi")](-5061+-2*4197+14479*1,f),poolSize:m,timeout:n[r(651,"]pB!")](18*447+-4*-31+-7170,10)})}async function tB(t,e){let r=qt,n={RgROQ:function(f,m){return f(m)},efTZF:r(814,"M$Ge"),VWsfh:function(f,m){return f+m},jeEju:function(f,m){return f+m},nVbRE:function(f,m){return f(m)},gqGrl:r(1078,"fohy"),sdTOr:function(f,m,p){return f(m,p)}};await n[r(624,"aAQj")](jI,t);let s=t[r(1096,"U8K#")][r(694,"k&6z")],i=t[r(541,"VoXV")].id[r(770,"BY2l")]("*"),a=await n[r(608,"I[8W")](XLe,n[r(722,"*ij6")]);if(!s[r(884,"Az^O")](a))return;let o=n[r(525,"wOwZ")](n[r(612,"HHBt")](n[r(1036,"4%l)")](isr,t),t[r(702,"V%SM")][r(996,"4@@m")]),n[r(540,"x$c7")]),c={parse:0,url:[]};i[6518+1*-4271+-2245]&&(c[r(942,"OeV9")]={subt:o+r(779,"OeV9")+i[-9703+-6038*-1+3665]+"/"+i[258*-29+-7*1207+-3*-5311]+r(418,"I[8W")});let u=(await n[r(808,"Az^O")](hK,i[3*97+692*2+-1675],i[9467*1+-245+-9221]))?.[r(487,"4%l)")](f=>f?.[r(824,"Az^O")])||[];sg[i[2020+673*-3]]=u,u[r(881,"dsEQ")]((f,m)=>(m[r(406,"M$Ge")+r(802,"9iF0")]||1039*-3+-4215+7332)-(f[r(908,"]@Zm")+r(692,"#]fR")]||11339+493*-23));let l=c[r(970,"!yA5")],d={QHD:"\u8F6C\u7801",FHD:"\u8D85\u6E05",HD:"\u9AD8\u6E05",SD:"\u6807\u6E05",LD:"\u666E\u753B"};return u[r(664,"H7iB")](f=>{let m=r;l[m(870,"P#I[")](d[f[m(588,"VoXV")+"d"]]||f[m(1011,"J&Kx")+"d"]),l[m(758,"l[jU")](o+m(909,"4@@m")+f[m(999,"aAQj")+"d"][m(574,"#]fR")+"e"]()+"/"+i[12*-387+-4*1906+-6134*-2]+"/"+i[5942+5941*-1]+m(962,"H7iB"))}),l[r(429,"1pzi")]("\u4EE3\u7406"),l[r(551,"4@@m")](o+r(982,"PO7&")+i[-2284*2+1*8849+-3*1427]+"/"+i[-27*-113+-4940+1890]+r(705,"rKB#")),l[r(548,"LZ#l")]("\u539F\u753B"),l[r(1033,"aAQj")](o+(r(669,"HHBt")+r(975,"]@Zm"))+i[-1*23+9072+-1*9049]+"/"+i[7402+-3007*1+4394*-1]+r(854,"dsEQ")),c}var yK=Ce(Zn(),1);var Qe=Iu;(function(t,e){let r=Iu,n=t();for(;;)try{if(-parseInt(r(801,"Qk6f"))/1+parseInt(r(192,"Qk6f"))/2+-parseInt(r(634,"crgC"))/3*(parseInt(r(452,"s682"))/4)+parseInt(r(217,"gZDT"))/5*(-parseInt(r(416,"jT34"))/6)+parseInt(r(256,"dvek"))/7+-parseInt(r(862,"$nl("))/8+-parseInt(r(338,"cJlG"))/9*(-parseInt(r(822,"h*E$"))/10)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(nB,-1789*-5+607666+-89111*2);var g6e=async t=>{let e=Iu;return globalThis[e(163,"kOA^")]?await globalThis[e(291,"fdFI")](t):t},Asr=[Qe(880,"kOA^"),Qe(401,"Yz&f"),Qe(576,"Vieu"),Qe(740,"kOA^"),Qe(471,"U#fK"),Qe(879,"u@kD"),Qe(390,"&fa6"),Qe(354,"fdFI"),Qe(432,"[H9y"),Qe(886,"ns)a"),Qe(885,"gZDT"),Qe(400,"u@kD"),Qe(730,"p^$)"),Qe(534,"jT34"),Qe(752,"ns)a"),Qe(767,"XPH3")],xsr=t=>{let e=Qe,r={caaGS:function(s,i){return s(i)}};if(!t)return!1;let n=r[e(858,"&fa6")](String,t)[e(311,"Fi&h")+"e"]();return Asr[e(341,"p^$)")](s=>n[e(825,"jT34")](s))};function y6e(t){let e=Qe,r={LYJCq:function(n,s){return n(s)},bIiWa:function(n,s){return n||s}};return r[e(158,"jLhn")](String,r[e(485,"h5Bi")](t,""))[e(560,"jLhn")](",")[-2999*-1+8133+-11132][e(133,"en57")]()}function d6e(t){let e=Qe;return{lccTv:function(n,s){return n(s)}}[e(920,"ns)a")](y6e,t)[e(832,"VA^o")](/^\w+:\/\//,"")[e(266,"V4T5")]("/")[-7878+-1549*1+11*857][e(332,"9wdM")]()}function Iu(t,e){let r=nB();return Iu=function(n,s){n=n-129;let i=r[n];if(Iu.ThMhtz===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",m="",p="";for(let h=0,y,g,A=0;g=d.charAt(A++);~g&&(y=h%4?y*64+g:g,h++%4)?m+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=m.length;h<y;h++)p+="%"+("00"+m.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(p)};let l=function(d,f){let m=[],p=0,h,y="";d=a(d);let g;for(g=0;g<256;g++)m[g]=g;for(g=0;g<256;g++)p=(p+m[g]+f.charCodeAt(g%f.length))%256,h=m[g],m[g]=m[p],m[p]=h;g=0,p=0;for(let A=0;A<d.length;A++)g=(g+1)%256,p=(p+m[g])%256,h=m[g],m[g]=m[p],m[p]=h,y+=String.fromCharCode(d.charCodeAt(A)^m[(m[g]+m[p])%256]);return y};Iu.NAqiJE=l,t=arguments,Iu.ThMhtz=!0}let o=r[-1*8346+-8637+333*51],c=n+o,u=t[c];return u?i=u:(Iu.nFqZxm===void 0&&(Iu.nFqZxm=!0),i=Iu.NAqiJE(i,s),t[c]=i),i},Iu(t,e)}function bsr(t){let e=Qe,r={EEdDA:function(u,l){return u(l)},WcuSB:e(409,"Ay*s")+e(283,"U#fK"),vXEaO:function(u,l){return u(l)},WKEcv:function(u,l){return u(l)},ZhLav:e(517,"$nl(")+e(450,"U#fK"),RRaOy:e(378,"jLhn"),pwsjF:e(896,"h*E$"),uqjdp:e(903,"Fi&h")},n=r[e(851,"en57")](String,t?.[e(258,"$nl(")]?.[e(670,"Yz&f")]?.()?.[e(898,"XPH3")]||"")[e(393,"ga*a")](),s=r[e(934,"W5XH")](d6e,t?.[e(359,"h*E$")]?.[r[e(449,"8%wU")]]),i=s||r[e(776,"BwR#")](d6e,t?.[e(276,"8ZCJ")]?.[e(849,"BwR#")]);if(!i)return n;let a=r[e(574,"8ZCJ")](y6e,t?.[e(580,"V4T5")]?.[r[e(547,"dvek")]]),o=n[e(865,"DiSV")](r[e(271,"mcQo")])?r[e(912,"U#fK")]:r[e(396,"crgC")];return(a||r[e(397,"80@M")](String,t?.[e(382,"9tTR")]||"")[e(894,"O3ud")]()||o)+e(213,"Qk6f")+i}function A6e(t){let e=Qe,r=/https:\/\/pan\.quark\.cn\/s\/([^\\|#/]+)/,n=r[e(220,"p^$)")](t);return n?{shareId:n[1],folderId:"0"}:null}var co=Qe(438,"[H9y")+Qe(758,"aMIm"),wb={"User-Agent":Qe(260,"P*1c")+Qe(628,"BwR#")+Qe(875,"#gGe")+Qe(908,"DiSV")+Qe(838,"mcQo")+Qe(321,"Qk6f")+Qe(257,"mcQo")+Qe(226,"cJlG")+Qe(933,"adje")+Qe(309,"Fi&h")+Qe(910,"en57")+Qe(317,"XPH3")+Qe(888,"jLhn")+Qe(234,"Y^cX")+Qe(671,"nmnF")+Qe(330,"0fDW")+Qe(358,"p^$)")+Qe(679,"&fa6")+Qe(935,"JMY2")+"ch",Referer:Qe(316,"Qk6f")+Qe(366,"h5Bi")},AK=null,rB=null,f6e=Qe(156,"P*1c")+Qe(747,"VA^o")+Qe(280,"adje")+Qe(322,"XPH3"),Nc="",p6e=Qe(544,"dvek"),og=null;async function QI(t){let e=Qe;AK=t[e(444,"O3ud")].db;let r=t[e(323,"jLhn")][e(556,"adje")][e(535,"Qk6f")];Nc=r[e(182,"P*1c")],rB=yK.default[e(285,"adje")][e(275,"JMY2")][e(227,"ns)a")](yK.default[e(773,"9tTR")](r[e(212,"9tTR")]))[e(329,"P*1c")]();let n=await AK[e(591,"h5Bi")+e(784,"mcQo")](e(262,"DiSV"),{});n[rB]&&(Nc=n[rB])}async function uo(t,e,r,n,s){let i=Qe,a={hTZLa:function(u,l){return u===l},KovNx:function(u,l){return u(l)},ECYGY:i(877,"crgC"),hTTdP:i(615,"Qk6f")+i(603,"U#fK")+i(305,"u@kD"),MmUgY:function(u,l){return u||l},HqPiR:function(u,l){return u||l},XJull:function(u,l){return u||l},VsVYH:i(893,"gZDT"),SMIlR:function(u,l){return u==l},mjlYi:i(506,"fdFI"),Qtceq:i(803,"VA^o"),OkatT:i(692,"Vieu"),rBhWL:function(u,l,d,f){return u(l,d,f)},JUEVg:i(272,"f5YW"),YuJVQ:function(u,l){return u!==l},beaBg:function(u,l){return u>l},lPzZj:function(u,l,d,f,m,p){return u(l,d,f,m,p)},dULfB:function(u,l){return u-l}};r=a[i(684,"9tTR")](r,{}),Object[i(143,"Qk6f")](r,wb),Object[i(261,"BwR#")](r,{Cookie:a[i(518,"crgC")](Nc,"")}),n=a[i(930,"9wdM")](n,a[i(496,"h5Bi")]);let o=a[i(716,"Ay*s")](n,a[i(846,"ns)a")])?await le[i(595,"VA^o")](f6e+"/"+t,{headers:r})[i(662,"6ju9")](u=>{let l=i;return console[l(874,"dvek")](u),a[l(666,"dvek")](u?.[l(678,"aMIm")]?.[l(759,"crgC")],12176+-2355*5)&&a[l(548,"aMIm")](messageToDart,{action:a[l(207,"9tTR")],opt:{message:a[l(925,"h*E$")],duration:5}}),u[l(157,"s682")]||{status:500,data:{}}}):await le[i(150,"9wdM")](f6e+"/"+t,e,{headers:r})[i(218,"jLhn")](u=>{let l=i;return console[l(626,"8%wU")](u),a[l(248,"6ju9")](u?.[l(361,"p^$)")]?.[l(403,"#gGe")],401)&&a[l(268,"BwR#")](messageToDart,{action:a[l(349,"VA^o")],opt:{message:a[l(352,"dvek")],duration:5}}),u[l(709,"JMY2")]||{status:500,data:{}}}),c=a[i(689,"DiSV")](s,-26*-82+9791*-1+7662);if(o[i(304,"u@kD")][a[i(237,"h5Bi")]]){let u=o[i(295,"Fi&h")][a[i(540,"W5XH")]][i(131,"0fDW")](a[i(654,"jT34")])[i(842,"nmnF")](/__puus=([^;]+)/);if(u){let l=a[i(281,"P*1c")](c4,Nc,a[i(526,"Yz&f")],u[1]);a[i(348,"p^$)")](l,Nc)&&(Nc=l,await AK[i(292,"O3ud")](i(479,"9tTR")+rB,Nc))}}return a[i(597,"Fi&h")](o[i(525,"kOA^")],9326+1*-7+-1270*7)&&a[i(537,"O3ud")](c,7311+29*-211+-1192)?(await a[i(611,"h*E$")](Rl,-6017+-3*-2339),await a[i(569,"XPH3")](uo,t,e,r,n,a[i(141,"z33#")](c,4060+-33*123))):o[i(802,"[H9y")]||{}}async function m6e(){let t=Qe,e={gZFNj:function(n,s,i,a,o){return n(s,i,a,o)},eejzr:t(648,"8ZCJ"),mNksn:function(n,s){return n>s},XsaqQ:function(n,s,i){return n(s,i)}},r=await e[t(744,"ve1h")](uo,t(856,"[H9y")+co+t(293,"ns)a")+og+(t(813,"h*E$")+t(546,"9tTR")+t(765,"ve1h")+t(787,"jLhn")+t(794,"f5YW")+t(404,"f5YW")),{},{},e[t(839,"cJlG")]);if(r[t(190,"adje")]&&r[t(631,"ve1h")][t(873,"gZDT")]&&e[t(488,"6ju9")](r[t(214,"dvek")][t(705,"DiSV")][t(201,"O3ud")],5942+-2*2819+-152*2)){let n=await e[t(331,"8%wU")](uo,t(516,"#gGe")+"e?"+co,{action_type:2,filelist:r[t(486,"8%wU")][t(601,"6ju9")][t(461,"JMY2")](s=>s[t(907,"P*1c")]),exclude_fids:[]});console[t(593,"DiSV")](n)}}async function _sr(t){let e=Qe,r={BMZQv:function(s){return s()},YuSBI:function(s,i,a,o,c){return s(i,a,o,c)},tkBbv:e(868,"h5Bi"),nwPUT:function(s,i){return s===i},mBlYu:function(s){return s()},TWvFA:function(s,i,a){return s(i,a)}};if(og){t&&await r[e(306,"6ju9")](m6e);return}let n=await r[e(543,"nmnF")](uo,e(629,"8ZCJ")+co+(e(596,"kOA^")+e(177,"ve1h")+e(493,"80@M")+e(454,"0fDW")+e(635,"z33#")+e(562,"Qk6f")+e(768,"VA^o")),{},{},r[e(435,"BwR#")]);if(n[e(509,"Y^cX")]&&n[e(690,"XPH3")][e(749,"Yz&f")]){for(let s of n[e(399,"crgC")][e(267,"#gGe")])if(r[e(578,"mcQo")](s[e(241,"f5YW")],p6e)){og=s[e(617,"Qk6f")],await r[e(138,"8ZCJ")](m6e);break}}if(!og){let s=await r[e(166,"80@M")](uo,e(724,"6ju9")+co,{pdir_fid:"0",file_name:p6e,dir_path:"",dir_init_lock:!1});console[e(593,"DiSV")](s),s[e(631,"ve1h")]&&s[e(408,"jT34")][e(617,"Qk6f")]&&(og=s[e(780,"nmnF")][e(532,"0fDW")])}}async function _K(t){let e=Qe,r={CCCJS:function(s,i,a){return s(i,a)}},n=await r[e(573,"Vieu")](uo,e(215,"Ay*s")+e(254,"80@M")+"n?"+co,{pwd_id:t[e(932,"ga*a")],passcode:t[e(677,"z33#")]||""});return n[e(530,"f5YW")]?.[e(274,"ns)a")]?n[e(174,"0fDW")]:null}var Esr=[Qe(187,"Qk6f"),Qe(561,"V4T5"),Qe(729,"f5YW"),Qe(504,"en57"),Qe(503,"Qk6f")];async function vsr(t){let e=Qe,r={fwPMk:function(l,d){return l||d},EMnls:function(l,d,f,m,p){return l(d,f,m,p)},GylmU:function(l,d){return l(d)},vaaqQ:e(334,"Ay*s"),LokKp:function(l,d){return l===d},HwmtF:function(l,d){return l===d},OSAiL:e(353,"s682"),pnXzA:function(l,d){return l===d},JALyv:e(739,"en57"),PgXGs:function(l,d){return l===d},lCZtj:function(l,d){return l===d},FYNxZ:function(l,d){return l===d},PsUux:e(430,"mcQo"),VzwCG:function(l,d){return l===d},JNYms:e(363,"u@kD"),guNzp:function(l,d,f){return l(d,f)},zuZUl:function(l,d){return l&&d},TfZDJ:e(718,"Vieu"),tLnwT:function(l,d){return l<d},TiEoI:function(l,d){return l*d},XxYgI:function(l,d){return l/d},SyjXp:function(l,d){return l+d},DGPhe:function(l,d){return l===d},yfNNb:e(929,"XPH3"),wmSuc:function(l,d){return l(d)},SqjKM:function(l,d){return l>d}},n=r[e(594,"kOA^")](typeof t,r[e(585,"h*E$")])?r[e(737,"JMY2")](A6e,t):t;if(!n)return[];let s=await r[e(139,"O3ud")](_K,n);if(!s)return[];let i=s[e(369,"9wdM")],a=[],o=[],c=(l,d)=>l?l+"/"+d:d,u=async function(l,d,f,m){let p=e,h=r[p(843,"Fi&h")](m,""),y=-5531+-13*207+-8322*-1;f=r[p(132,"adje")](f,197*5+3*-915+1761);let g=await r[p(265,"nmnF")](uo,p(570,"z33#")+p(890,"9tTR")+p(848,"jT34")+co+p(499,"aMIm")+l+p(785,"O3ud")+r[p(779,"cJlG")](encodeURIComponent,i)+p(764,"Vieu")+d+(p(840,"u@kD")+p(381,"[H9y"))+f+p(902,"adje")+y+(p(691,"Y^cX")+p(235,"f5YW")+p(807,"adje")+p(827,"BwR#")),{},{},r[p(800,"aMIm")]);if(!g[p(897,"cJlG")])return[];let A=g[p(802,"[H9y")][p(625,"adje")];if(!A)return[];let b=[];for(let x of A){let S=r[p(270,"[H9y")](x[p(664,"DiSV")],!0)||r[p(355,"P*1c")](x[p(824,"&fa6")],1)||r[p(657,"#gGe")](x[p(269,"VA^o")],r[p(519,"jLhn")])||r[p(333,"dvek")](x[p(384,"jLhn")],r[p(815,"mcQo")]),T=r[p(818,"O3ud")](x[p(630,"VA^o")],!0)||r[p(927,"kOA^")](x[p(364,"ga*a")],-47*26+9533*-1+-1*-10756)||r[p(186,"Ay*s")](x[p(613,"aMIm")],r[p(240,"kOA^")]),I=r[p(153,"h5Bi")](xsr,x[p(178,"P*1c")]),R=r[p(850,"8ZCJ")](x[p(203,"Vieu")+"ry"],r[p(728,"adje")])||I;if(S)b[p(918,"$nl(")]({fid:x[p(253,"#gGe")],path:r[p(216,"jT34")](c,h,x[p(867,"aMIm")])});else if(r[p(231,"aMIm")](T,R)){if(r[p(745,"en57")](typeof x[p(515,"gZDT")],r[p(748,"9wdM")])&&r[p(398,"#gGe")](x[p(507,"U#fK")],r[p(577,"Vieu")](r[p(380,"9tTR")](1011+13*1,1024),507*10+8562+1*-13627)))continue;x[p(510,"XPH3")]=i,x[p(738,"Ay*s")]=h,a[p(520,"P*1c")](x)}else T&&Esr[p(474,"#gGe")](N=>String(x[p(379,"O3ud")]||"")[p(134,"DiSV")](N))&&o[p(606,"8%wU")](x)}if(r[p(514,"jLhn")](f,Math[p(685,"u@kD")](r[p(362,"u@kD")](g[p(680,"0fDW")][p(732,"#gGe")],y)))){let x=await r[p(823,"JMY2")](u,l,d,r[p(470,"ve1h")](f,1),h);for(let S of x)A[p(923,"en57")](S)}for(let x of b){let S=await r[p(179,"cJlG")](u,l,x[p(907,"P*1c")],1,x[p(647,"h5Bi")]);for(let T of S)A[p(627,"ve1h")](T)}return A};return await r[e(837,"z33#")](u,n[e(242,"cJlG")],n[e(618,"BwR#")],9997+1*983+1*-10979,""),r[e(742,"z33#")](o[e(159,"z33#")],1357+-652*-12+-1*9181)&&a[e(682,"BwR#")](l=>{let d=e;var f=r[d(584,"Fi&h")](wl,l,o);f[d(669,"6ju9")]&&(l[d(786,"dvek")]=f[d(300,"&fa6")][d(188,"fdFI")])}),a}async function EK(t){let e=Qe,r={oTfzF:function(s,i,a){return s(i,a)}};if(!t)return null;let n=await r[e(209,"u@kD")](uo,e(278,"ns)a")+e(373,"ns)a")+co,{fids:[t]});return Array[e(528,"6ju9")](n?.[e(909,"8ZCJ")])&&n[e(399,"crgC")][-1*2837+730+2107]?.[e(335,"BwR#")+"rl"]?n[e(385,"O3ud")][-87*71+-2155+8332]:null}async function Ssr(t){let e=Qe,r={xxQel:function(s,i,a){return s(i,a)},YgywZ:e(371,"DiSV")+e(688,"aMIm")+e(223,"VA^o"),eUWlx:e(928,"V4T5")};if(!t)return null;let n=await r[e(263,"0fDW")](uo,e(210,"BwR#")+e(554,"p^$)")+co,{fid:t,resolutions:r[e(149,"XPH3")],supports:r[e(531,"V4T5")]});return Array[e(367,"0fDW")](n?.[e(181,"ga*a")]?.[e(383,"fdFI")])?n[e(214,"dvek")][e(766,"cJlG")]:null}async function x6e(t,e="0",r=9691+683*7+-14471){let n=Qe,s={Ztvmw:function(o,c){return o(c)},ylDlQ:function(o,c,u,l,d){return o(c,u,l,d)},SMXyf:function(o,c){return o||c},KVYvt:n(545,"adje")};await s[n(614,"BwR#")](QI,t);let i=Number[n(788,"Vieu")](r,-59*15+5393*-1+24*262)||1,a=await s[n(889,"ga*a")](uo,n(833,"nmnF")+co+n(831,"V4T5")+s[n(167,"p^$)")](encodeURIComponent,s[n(160,"jT34")](e,"0"))+n(798,"8ZCJ")+i+(n(232,"&fa6")+n(599,"h5Bi")+n(860,"#gGe")+n(155,"Y^cX")+n(453,"jLhn")),{},{},s[n(164,"ga*a")]);return Array[n(646,"Y^cX")](a?.[n(690,"XPH3")]?.[n(129,"O3ud")])?a[n(802,"[H9y")][n(847,"h*E$")]:[]}var $0={};async function Isr(){let t=Qe,e={Vbuyi:function(i,a){return i||a},sssIU:t(467,"gZDT")+t(882,"nmnF"),iBDpQ:t(754,"8ZCJ")+t(428,"#gGe")+t(148,"dvek")+t(645,"Ay*s")+t(225,"crgC")+t(533,"z33#")+t(550,"jLhn")+t(252,"z33#")+t(769,"BwR#")+t(494,"9wdM")+t(484,"Y^cX")+"19",pQmEi:function(i,a){return i===a},OkRgt:function(i,a){return i===a},dywyg:function(i,a){return i===a}},r=Date[t(592,"8%wU")](),n=Object[t(414,"z33#")]({Cookie:e[t(527,"z33#")](Nc,""),"Content-Type":e[t(674,"mcQo")]},wb),s=await le[t(318,"U#fK")](e[t(668,"[H9y")],{conversation_id:t(368,"O3ud")+r,conversation_type:3,msg_id:r+t(448,"&fa6")},{headers:n})[t(806,"$nl(")](i=>{let a=t;return console[a(312,"cJlG")](i),i[a(361,"p^$)")]||{status:500,data:{}}});return e[t(589,"p^$)")](s?.[t(152,"BwR#")],108+1*92)&&e[t(536,"dvek")](s?.[t(878,"kOA^")]?.[t(917,"O3ud")],-2*373+2611*3+-6887)&&e[t(243,"[H9y")](s?.[t(790,"gZDT")]?.[t(656,"9tTR")],8780+3*2819+-1567*11)&&s?.[t(483,"z33#")]?.[t(780,"nmnF")]?.[t(512,"gZDT")]||""}async function b6e(t,e,r,n){let s=Qe,i={icEAM:function(l,d){return l||d},mpWbh:function(l,d){return l(d)},UyXkV:function(l){return l()},SxXGd:function(l,d){return l||d},GcOxt:s(524,"BwR#")+s(706,"9wdM"),wauty:function(l,d){return l===d}};if(i[s(735,"p^$)")](!t,!r)||!n||(e||(e=(await i[s(870,"p^$)")](_K,{shareId:t}))?.[s(852,"dvek")]||""),!e))return null;let a={fids:[r],fids_token:[n],pwd_id:t,stoken:e,speedup_session:""},o=await i[s(191,"U#fK")](Isr);o&&(a[s(230,"Y^cX")]=o);let c=Object[s(247,"Yz&f")]({Cookie:i[s(883,"9tTR")](Nc,""),"Content-Type":i[s(602,"Ay*s")]},wb),u=await le[s(797,"0fDW")](s(372,"Fi&h")+s(697,"z33#")+s(651,"$nl(")+s(701,"P*1c")+s(426,"fdFI")+s(290,"Qk6f")+co,a,{headers:c})[s(460,"Qk6f")](l=>{let d=s;return console[d(140,"9wdM")](l),l[d(198,"mcQo")]||{status:500,data:{}}});return i[s(781,"s682")](u?.[s(581,"V4T5")],-1*7933+1*4735+2*1699)&&u?.[s(336,"p^$)")]?.[s(314,"P*1c")]?.[-1936+3*90+119*14]?.[s(761,"8%wU")+"rl"]?u[s(780,"nmnF")][s(909,"8ZCJ")][-1877*2+11*-787+-4137*-3]:null}async function _6e(t,e,r,n,s){let i=Qe,a={zxrku:function(c,u){return c(u)},iWwzU:function(c,u,l){return c(u,l)},TtsjD:i(760,"kOA^"),rtSUZ:function(c,u,l,d,f){return c(u,l,d,f)},uUAFJ:i(792,"Fi&h"),beeoC:function(c,u){return c>u},rNtuM:function(c,u){return c(u)}};if(await a[i(365,"ns)a")](_sr,s),s){let c=Object[i(374,"kOA^")]($0);for(let u of c)delete $0[u]}if(!og||(e||(e=(await a[i(731,"Qk6f")](_K,{shareId:t}))?.[i(469,"jLhn")]||""),!e))return null;let o=await a[i(498,"kOA^")](uo,i(808,"f5YW")+i(185,"9wdM")+"?"+co,{fid_list:[r],fid_token_list:[n],to_pdir_fid:og,pwd_id:t,stoken:e,pdir_fid:"0",scene:a[i(419,"gZDT")]});if(o[i(385,"O3ud")]&&o[i(174,"0fDW")][i(817,"h5Bi")]){let c=0;for(;;){let u=await a[i(427,"VA^o")](uo,i(708,"cJlG")+co+i(376,"Vieu")+o[i(795,"aMIm")][i(676,"en57")]+(i(443,"s682")+i(571,"jT34"))+c,{},{},a[i(386,"fdFI")]);if(u[i(424,"DiSV")]&&u[i(575,"6ju9")][i(604,"f5YW")]&&u[i(205,"Fi&h")][i(343,"$nl(")][i(284,"ga*a")+i(931,"dvek")]&&a[i(777,"h*E$")](u[i(511,"80@M")][i(707,"XPH3")][i(653,"mcQo")+i(636,"Y^cX")][i(264,"kOA^")],-2438+23*106))return u[i(790,"gZDT")][i(778,"Yz&f")][i(904,"Qk6f")+i(337,"U#fK")][1810*1+-3262+-44*-33];if(c++,a[i(699,"80@M")](c,3876+-2913*1+-958))break;await a[i(189,"p^$)")](Rl,11360+740*-14)}}return!1}async function E6e(t,e,r,n){let s=Qe,i={QjJPe:function(o,c){return o===c},zocsQ:s(559,"XPH3"),KClJP:function(o,c){return o(c)},aPIXX:function(o,c,u,l,d,f){return o(c,u,l,d,f)},BtZFo:function(o,c,u){return o(c,u)},aTOpk:s(715,"Y^cX")+s(812,"$nl(")+s(282,"s682"),eqBGT:s(299,"Ay*s")};if(i[s(609,"#gGe")](t,i[s(289,"0fDW")]))return await i[s(753,"&fa6")](Ssr,r);if(!$0[r]){let o=await i[s(757,"adje")](_6e,t,e,r,n,!0);if(!o)return null;$0[r]=o}let a=await i[s(502,"JMY2")](uo,s(501,"$nl(")+s(583,"ve1h")+co,{fid:$0[r],resolutions:i[s(480,"8%wU")],supports:i[s(914,"P*1c")]});return a[s(900,"jLhn")]&&a[s(841,"u@kD")][s(710,"U#fK")]?a[s(620,"JMY2")][s(319,"&fa6")]:null}async function vK(t,e,r,n,s){let i=Qe,a={yMrGK:function(c,u){return c===u},DMHyh:i(238,"fdFI"),RxcgL:function(c,u){return c(u)},KBBSJ:function(c,u,l,d,f,m){return c(u,l,d,f,m)},auNHb:function(c,u,l){return c(u,l)}};if(a[i(442,"ga*a")](t,a[i(297,"aMIm")]))return await a[i(446,"80@M")](EK,r);if(!$0[r]){let c=await a[i(616,"V4T5")](_6e,t,e,r,n,s);if(!c)return null;$0[r]=c}let o=await a[i(763,"s682")](uo,i(621,"ga*a")+i(222,"s682")+co,{fids:[$0[r]]});return o[i(344,"$nl(")]?o[i(175,"Yz&f")][0]:null}async function Csr(t,e,r,n,s){let i=Qe,a={AlsJB:function(c,u){return c===u},WUUAb:i(826,"kOA^"),SELtY:function(c,u){return c(u)},dMkSh:function(c,u,l,d,f){return c(u,l,d,f)},WZGth:function(c,u,l,d,f,m){return c(u,l,d,f,m)}};if(a[i(154,"80@M")](t,a[i(743,"fdFI")]))return await a[i(899,"p^$)")](EK,r);let o=await a[i(809,"9wdM")](b6e,t,e,r,n);return o?.[i(844,"Vieu")+"rl"]?o:await a[i(130,"fdFI")](vK,t,e,r,n,s)}async function v6e(t){let e=Qe,r={OjzCH:function(n,s){return n(s)},INcTu:e(410,"s682")+e(712,"8%wU"),ghLkz:function(n,s){return n(s)},HhBgt:function(n,s,i){return n(s,i)},QCEog:e(892,"ns)a")};if(r[e(703,"W5XH")](z4,r[e(489,"kOA^")])){let n=r[e(445,"Y^cX")](A6e,t);if(n){let s=await r[e(411,"#gGe")](vsr,n);return s=s[e(345,"0fDW")](i=>{let a=e;return{vod_id:[n[a(750,"gZDT")],i[a(586,"9tTR")],i[a(714,"JMY2")],i[a(605,"8ZCJ")+a(853,"ga*a")],i[a(633,"V4T5")]?i[a(325,"gZDT")][a(302,"Yz&f")]:"",i[a(250,"aMIm")]?i[a(771,"JMY2")][a(605,"8ZCJ")+a(298,"s682")]:""][a(791,"VA^o")]("*"),vod_name:i[a(196,"mcQo")],vod_size:i[a(816,"XPH3")],vod_group:i[a(736,"W5XH")]}}),r[e(224,"8ZCJ")](Ts,await r[e(830,"#gGe")](g6e,r[e(805,"DiSV")]),s)}else return{}}}var h6e={},gK=(-8506*-1+-4122+-32*105)*512,SK=(-647*7+95*-51+10398)*(-1*3569+37*213+-4056);function xK(){let t=Qe;return(globalThis[t(814,"U#fK")]||[])[t(420,"gZDT")](r=>r[t(340,"mcQo")]===t(796,"u@kD"))||{}}function Tsr(t){let e=Qe,r={xxLiP:function(n,s){return n<s},SZEqf:function(n,s){return n>=s},vzanP:function(n,s){return n===s},HoZpx:function(n,s){return n===s},cvPwW:function(n,s){return n===s},NxbwS:function(n,s){return n===s},Mresk:function(n,s){return n===s},dwaIk:function(n,s){return n===s},lwMHA:function(n,s){return n>=s},IkiNK:e(799,"XPH3"),wSSyx:function(n,s){return n===s},CZLrw:e(555,"V4T5"),HeAaN:e(288,"80@M"),Vdlrw:function(n,s){return n>=s},Voidc:e(351,"O3ud"),ougnp:e(552,"Qk6f"),IuHHJ:function(n,s){return n===s}};if(!t||r[e(542,"8%wU")](t[e(201,"O3ud")],-64*70+2905+-1*-1579))return!1;if(r[e(434,"[H9y")](t[e(579,"crgC")],4141*1+778*1+-1*4911)&&r[e(683,"crgC")](t[566+16*-51+250],-4169+-2*-2153)&&r[e(391,"z33#")](t[16685+-8342*2],-1*-9491+4337+6874*-2)&&r[e(451,"Fi&h")](t[-8097+-12*372+-1*-12563],43*-93+3587+490)&&r[e(857,"Y^cX")](t[3],11*217+5144+-7460)&&r[e(607,"$nl(")](t[5360+7*1198+-6871*2],13)&&r[e(713,"VA^o")](t[-2719*1+193*11+601],-5004+81*-118+14572)&&r[e(273,"V4T5")](t[-467*-3+8188+-9583],1*-5611+41*-19+-802*-8)&&r[e(147,"8%wU")](t[7],-1831*2+167*35+2173*-1)||r[e(915,"9wdM")](t[0],-8918*-1+-6*17+1223*-7)&&r[e(451,"Fi&h")](t[-1*-1948+7803*1+3250*-3],762*-4+-85*1+1*3349)&&r[e(211,"#gGe")](t[5503+1*-631+-4870],255))return!0;if(r[e(392,"9tTR")](t[e(350,"Qk6f")],-935+3*-1717+2*3046)){let n=t[e(417,"jLhn")](0,6)[e(695,"&fa6")](r[e(834,"Yz&f")]);if(r[e(921,"Ay*s")](n,r[e(415,"s682")])||r[e(719,"mcQo")](n,r[e(466,"f5YW")]))return!0}return r[e(176,"BwR#")](t[e(406,"dvek")],-237+3*83)&&r[e(405,"9wdM")](t[e(375,"Ay*s")](0,-14*-259+434+-4056)[e(624,"ns)a")](r[e(637,"jT34")]),r[e(221,"Yz&f")])&&r[e(459,"O3ud")](t[e(700,"crgC")](-5629*1+1839+-422*-9,12)[e(465,"80@M")](r[e(821,"u@kD")]),r[e(770,"Fi&h")])?!0:r[e(565,"0fDW")](t[0],-8*-1087+-7231+-1399)&&r[e(568,"en57")](t[2602*1+-6821+4220],-197*-3+-35*23+-3*-97)}function wsr(t){let e=Qe,r={LtcPz:function(s,i){return s-i},rNPXA:function(s,i){return s+i},AGEMJ:function(s,i){return s<=i},VdMdg:function(s,i){return s===i},TMySE:function(s,i){return s===i},cGlqu:function(s,i){return s===i},rcMgf:function(s,i){return s+i},oxDmN:function(s,i){return s>=i}},n=Math[e(197,"Vieu")](r[e(219,"p^$)")](t[e(199,"BwR#")],10925+1*-10917),r[e(377,"jLhn")](SK,-5976*1+6144+982*4));for(let s=6334+3083*1+-9416;r[e(557,"&fa6")](s,n);s++)if(r[e(144,"9wdM")](t[r[e(891,"en57")](s,-2254+-687*-5+-1177)],5075+-1*4973)&&r[e(733,"6ju9")](t[r[e(463,"h*E$")](s,1*9977+5622+113*-138)],2*-2995+7403*-1+13509)&&r[e(478,"u@kD")](t[r[e(200,"f5YW")](s,7046+1*9041+-16081)],121)&&r[e(541,"z33#")](t[r[e(600,"cJlG")](s,7807+133*-68+1244*1)],97*-9+-879+2*932)){let i=t[e(702,"Vieu")+"BE"](s);if(r[e(916,"9wdM")](i,-59*40+1501*2+634*-1))return s}return-(7353+98*83+-1*15486)}function Rsr(t){let e=Qe,r={KuHFy:e(722,"8ZCJ"),xThbb:function(i,a){return i>a},ggKdT:function(i,a){return i<=a},cPdpm:function(i,a){return i+a},waJoQ:function(i,a){return i===a},ISVym:e(643,"P*1c"),KAKuk:e(681,"mcQo"),Bkpqa:function(i,a){return i+a}},n=Buffer[e(206,"U#fK")](r[e(394,"0fDW")]),s=t[e(539,"gZDT")](n,-523*1+5366+3*-1614);for(;r[e(901,"O3ud")](s,-72*-31+1*-537+-113*15);){if(r[e(315,"0fDW")](r[e(487,"nmnF")](s,-1*7662+-1*3451+125*89),t[e(264,"kOA^")])&&r[e(195,"jT34")](t[e(675,"9wdM")](r[e(508,"Ay*s")](s,-156+4*41),r[e(861,"JMY2")](s,529*1+131*30+-4447))[e(854,"O3ud")](r[e(673,"XPH3")]),r[e(655,"h5Bi")]))return s;s=t[e(563,"Qk6f")](n,r[e(429,"Qk6f")](s,-3641+5*1589+1*-4303))}return-(6874+1*4694+-11567)}function Nsr(t){let e=Qe,r={RYSYn:function(s,i){return s-i},WGTWN:function(s,i){return s+i},PhTci:function(s,i){return s<=i},uaCYC:function(s,i){return s===i},jCpwz:function(s,i){return s===i},dxDWL:function(s,i){return s+i}},n=Math[e(296,"jT34")](r[e(835,"W5XH")](t[e(423,"JMY2")],5045+8262*1+-12931),r[e(233,"ns)a")](SK,-8052+1*-9647+17887));for(let s=-1748+-583*-3;r[e(500,"DiSV")](s,n);s++)if(r[e(245,"Qk6f")](t[s],-7*-573+-6368+1*2428)&&r[e(313,"ga*a")](t[r[e(820,"V4T5")](s,-12821+-13009*-1)],-9636+-571*-17)&&r[e(793,"DiSV")](t[r[e(639,"DiSV")](s,-6790+2*3583)],-6328+2331*-3+-3*-4464))return s;return-(3*229+9717+-10403)}function Osr(t){let e=Qe,r={wNFua:function(i,a){return i(a)},sAzRc:function(i,a){return i(a)},FNIlN:e(229,"fdFI"),PxntI:function(i,a){return i(a)},CQNxC:function(i,a){return i<=a},loreC:function(i,a){return i>a}};if(!r[e(641,"Vieu")](Tsr,t))return 0;let n=[r[e(926,"s682")](wsr,t),t[e(783,"nmnF")](Buffer[e(204,"fdFI")](r[e(642,"ns)a")]),-6653+1839*3+-1*-1137),t[e(644,"0fDW")](Buffer[e(727,"[H9y")]([-6454+20*324,69,7504+35*-223+-131*-4,163]),-3*2355+3276+-10*-379),r[e(632,"nmnF")](Rsr,t),r[e(246,"6ju9")](Nsr,t)][e(782,"ve1h")](i=>Number[e(717,"$nl(")](i)&&i>2*1306+-1613*5+287*19);if(!n[e(665,"$nl(")])return-8199+2733*3;let s=Math[e(287,"ve1h")](...n);return r[e(789,"$nl(")](s,0)||r[e(649,"DiSV")](s,SK)?-4709+-345*-25+22*-178:s}async function ksr(t){let e=Qe,r={cRJEV:e(251,"nmnF")+"r",XZCil:function(a,o){return a*o},cmuor:function(a,o){return a+o},fdfVa:function(a,o){return a||o},JDgRc:function(a,o){return a-o},oDZKq:function(a,o){return a(o)},DPyqp:function(a,o){return a>o}};if(!t)return{isMasked:!1,skipBytes:0};let n=await le[e(659,"mcQo")](t,{responseType:r[e(650,"ns)a")],timeout:r[e(481,"Vieu")](1*7778+941*4+-10542,3663*-2+47*-5+7569),maxContentLength:r[e(755,"XPH3")](gK,-134*1+927*10+-8112),maxBodyLength:r[e(346,"8%wU")](gK,1024),headers:Object[e(726,"P*1c")]({Cookie:r[e(402,"dvek")](Nc,""),Range:e(612,"&fa6")+r[e(608,"ga*a")](gK,14035+-6*2339)},wb)})[e(468,"kOA^")](a=>{let o=e;return console[o(482,"aMIm")](a),a[o(652,"6ju9")]||null});if(!n||!n[e(802,"[H9y")])return{isMasked:!1,skipBytes:0};let s=Buffer[e(370,"ve1h")](n[e(905,"V4T5")])?n[e(473,"U#fK")]:Buffer[e(170,"h*E$")](n[e(511,"80@M")]),i=r[e(694,"Vieu")](Osr,s);return{isMasked:r[e(811,"Yz&f")](i,0),skipBytes:r[e(360,"dvek")](i,-814*4+-7376+24*443)?i:-8826+-6*-1471}}async function bK(t,e){let r=Qe,n={zHWtx:function(o,c){return o||c},HWngz:function(o,c){return o===c},SsQej:function(o,c){return o(c)}};if(n[r(236,"h*E$")](!t,!e))return{isMasked:!1,skipBytes:0};let s=h6e[t];if(s&&n[r(440,"z33#")](s[r(476,"cJlG")],e))return s;let i=await n[r(696,"nmnF")](ksr,e),a={downUrl:e,isMasked:n[r(441,"Yz&f")](i[r(872,"z33#")],!0),skipBytes:i[r(202,"aMIm")]||0};return h6e[t]=a,a}function nB(){let t=["ccpcPSktWQ7cJL3dTG","WR3dLCoZeSoTW7dcKa","WORcSeRdQCk/W5ibsq","W7ddR8omjCkaf8kxea","rmkqkSofWRBcI3NcS0fZ","h1rts8kVW5zXW4u","WPhdMHCC","W6xdHcynE8oBfq","DCoaWOyoWQu","waBcPCkHea","W4JdLK5G","lSkYb8kmWQC","mSk2g3uX","WQ7dOSowmSkhvCkxamkHWPq","seyboCoW","W7xcSMhcNW","W6JdSWhdHSoZW77dTmoWiCka","cSo0mG","DLxdIq","xSklu8kvka","emk8eCoqWQRcJhlcUa","WPJdUSoZaqG","WPdcRK7cTSkQW6fyxmkAWOy","WR7dGX3dHCosW6pcS8oZ","tSoUWQJdGmk4","CmopWOubWOFcR8ofW4q","WR8mi8ohzJJdNSoqW5rY","q8kQAmk6dmkOWQ/dIXSs","q2aayMu","W7BcPuemha","AuiNkG","fxNcRSkbWRpcKG","W6lcSMpcMWfyWO8","eSkXb8k/W6G","WQFdPSkFWOTnWODbba","A8oXhxKWbCknW53cINm","WPykorLkgmono1rb","ECoEoYTbD1ODW73dNq","WR13WOiEW4S","WRpdQSki","WQddGWddHmoGW6BdPCo6j8kB","W6rebxqA","WQNdLaddH8kpgmkUow8","x8k6zmk8pmkt","WQBdTJ9sWOW","lrVcLvBcKmkzWORdT2mmWPq","WQxdRYtdH8kn","W4O+WONcIW","WPXfWPT7W7a","WP4mbH0d","W7pcPMCujmo2tCoc","WReknmokCZ8","xmkRBMq","W4b9W5pdTvW","CXZcP8k5","tdmmcq","cCo6rvyw","W4/cPKfalNK","WQWOeYT5","umkSASk7kSksWQddNurf","c2mUomor","EMuEFKRcMrBcMCou","WQldRSk/WO5b","W4fMkeCVWRjgxCoI","WQ/dM8oShCoxW6S","WOdcJCkTgW","ySkAqCkmna","WQRcQuhdKmkx","iraYW7RdGq","k8k6WPdcM8k+","WOxdM8oRmSoc","i8onE18M","WRb2WOz5W5hcUCkjW5tdJCkf","lZdcNSk2WPy","W7ZcOaX/","AKRdHHFdJCkCWR8","nmkwdCo8WO4","n8osFIZcIq","l8kqlSoUWOG","W7adWRVcVCo2v0yFnmkb","W7lcVMdcKsW","W5VdQbiVyG","W6TJW4pdGhC","W7dcT8opnG","CmooWOyuWOdcRG","W4lcHCk1gq","C8kFptbmALbxW4hdHG","x8o7WQhdHSkp","WOFcJSotmmkX","f8k/BCk3k8k+WQFdLKWD","p8kpWQtcOCoPW4xdVvldGLm","emk5emkXWRJcKLbMW7dcMG","WR/cUMBcKq","W6nKWOyKW4m","W7hcLIeRASokeSkEWR3dNW","W5BcM1mOWOS","WQBdTSkoWO9lWP1Eba","WOJdHtRdSCkl","wc/dHq","WOtcNuP8W5C","twldSmoaW67dJhpdVCo6W4pdLSoy","W7xdSXePvq","dwJdOepcMa","W6pcQaLUWRjbca","iCkPgmk5WOi","WQ/dQmowbq","WPhcMSoOdmkQ","kSkjWRRcOCkXW5e","WQldP8ogarRcTYm","WRxdQJ9jWRav","W6P5WQn2W54MW6VdJG","dSomWPNdOCojWRddPZm","W7xcUNmyBmoYxCovsWO","qCkUE8kTpmkOWQ/dIW","WOpdTGFdKCk4","FupdKWq","WRnVWOO5","W57cI0a","B2GKkCot","lqVcPCkUW4yNaCofW6fL","W6BdQ8olna","W5RdHKz+WOG","aL5uxG","WR4OWR/cRmoIcfq","W7dcOhBcLZC","W7tdQ8oEjmk+","rCk2aW9rW4afm2mGrMu","xSk4DwG","WQPLWPD6W4pcO8khW43dJ8oo","hKDMySke","vgGrmCoo","WQpdHJ3dISkt","WQzvW6pdTeRcT25uWO7dQa","lGFcPCkOW4zSlComW7qT","hXVcR8kHWRq","gIxcT8kBWRVcKG","W5tcMqz6WP0","W6ZdJYddJSktuCk6kw0H","svldTu3cVfJcImo7CGi","tCo5f28","WPRdJrjfWQO","W6lcUM/cMW","W7/cPSkZoqehxq","WPXTWO9EW4y","W65CW73dTKpcH2frWRZdUa","WPeRD8kEWPu","W6ldMe5cWQG","xJZcSr7dQa3dV8k+fs0ipa","WPddJSkcWPDr","amk6ma","W5X1mmkUWOddQ8kaWPS","W4hcM8k1","WRNdIICR","W6RdHtaTySo3gW","weK7Ax0","W5/cUfr3bW","W6aCr8kGWQKxwmkngYy","WQTLWPm7W4hcR8kn","WQ3dOmooau3cIYPBumo5","W5NcOHzfWQy","xLmPEem","FehdK0O","WRZcLuxdT8kP","W7NcRb9mWQWnaGZcOmkI","a8k1hSkUWQu","WO3dLuH+WOddQSk6FgBcUa","W4/dKLnT","WQBdQmowbWO","W5/cMwqlWPa","vCkGFSkWnCkoWQddM3Dv","veK8rLu","DmokFWpcGG","a2tdTLG","W5b3AW","W6VdHcC8","W44nWRJcJSoc","WOZdSCoKpCoZ","dSonWPtdVSofWQO","W7ddT8kKWRuD","WRHLWOrTW4CQW6VcLa","zW7cG8kPjxutDJn/","xmkWBwX0w8orWRj0W4i","WOddLbddNSos","b8kYi8oJWOS","W5VdKLvTWO7dVa","W6tcS0ijFJnFWPrCfa","WRBdK8kiWOTp","W7pcLhZcKCocrCo9lKuuf8kObW","WR1/WRzRW54","WORcSeRdQCk/W4Ss","DL81lmoDW7pcLCklqSo3","WQBdTsJdNmkU","W6tdO8otmmkWf8kfgmk0","W6ZcOSk0","uSooEI7cIa","d3a8g8o0","W61Mfw8H","WPdcQ2BdUSkPW6Ktsq","DuVdLbe","gmolWONdUSos","WRdcNhOuFIuUW5CirG","W5VcPXz/WO4","D8ovWOytWOe","W4RcJCkVeW","WOxdLuT6","WOdcGCkRrG","W4ZcNfG","WQxcPSoifW3cLG","rHpcQmkblq","cCoQndfIemkkWRjyWQ1VW7/cTa","n1BdLa","n8onjYW","W43dNfvjWOldRmoV","WRNdUJvtz8kLhSkwiHm","W73dTmklWRWI","CbVcKCkHlc8dEIHW","WRVdUSoqiCoZ","AmovCIJcGa","Au3dLbe","WRH4WR50","WRPiWPSfW7a","b3NdSvZcQa","aSkXamk1","W6tcOxK","muuNdCof","W6xcONCC","WRrEWR97W5C","WQXSW7NdSvxcJt0","W5hcMKa2","amoJqvG8WPe5hMmD","WQinv8kO","W6RcONSIWQ8","WRyqiW","uKi6AmkDWRVdOSkAamkR","W7WwWRVcRa","W6FcGCkUs8kcWRNcT8kaWO/cHW","rGyuhmo/WOeZW6lcJWG1WOGF","BCoVcNyz","E8o0ghS","WRuibCoKqa","gcdcLmkfWOS","fc7cGmkFWPi","WR9+WRzTW4aW","WRddKJRdGq","DWtcLmk/","DCodCa7cNq","W4bAh2eW","WRFdVSoYmmkddCkv","WRNdGCoZeq","a0LOzSkG","b1NdKuJcIW","WPxcUSoNkSkW","W4lcR8kbbSoh","WQabu8o9","W6lcP2FcLZbE","iXZcSCkEWRa","dCoMWP3dVmoeWRC","W7FdSmkUWQiwW4ZdGW","WQPcW7/dUv3cGY1wWO/dOG","su8EzwW","WRBdQmkhWQrnWP1Aba9E","W6VcJLqfhq","WQbJWQrT","ir8GW4/dIW","gf5ora","W6XeW5RdLuq","WR3dHSoPfa","yeuWlCo+W6NcTSkk","b0nl","W4LUj8k1","ewuzd8o5W7m","W7u1WQpcLmoW","WOTZWRT0W6a","hItcTSkDWQ4","WP3cJwFdVCky","WRynuCkOWRy7","eSoXrfqeWP4","ltlcICkwWRS","WRJdRmomaa","W5ZdM8kjWRCl","yCkkkZbW","umoyWOVdVmkoWRxdVJFcVcm","W4JcTgZcIqq","cZNcT8kg","W7hcSwyBp8oR","W7ddNZu8B8ol","W4ZcVSkSpWS","BCoNWR7dPCk5","WRRcKrZdImoSW6/dR8ojj8kE","WRGnm8otz2VcH8kAWP9M","WPtcNSoUcmk8vaHx","W43cMKK+jW","WPxcVuxdVmkUW6O","W6PwdmkKWRe","W4tcOxNdNJTuWOZcPCkY","amkRd8omWO4","W4NcICkViSomWP9sWQbSW4m","W4/dJSkwWQyh","t8oKWQNdIG","EmoCWRVdQCk6","ohqDfmoR","W6lcPMxcMYW","W6JdT8k4","cx/dQKe","W4VcI0CPWPFdMXGbCCk1","c8oqWP/dSmopWPVdOJJcQcC","lcJcJ8kYW4K","fLbtsW","W7tcQaTQ","W5xdJZG6Bq","FmogWONcPCk1W4tdSqpcLIO","WRyqk8ogsZ/dICoyWP4","i8kDgSk4WQq","W6hdTCk/WQqk","W6ddUCk7WRe","WRmwkmoiFtq","W5fGigWTWRi","fKTXySkC","hIBcPCkvWRNdK0/dRSo4W7q","W7fqaMas","xCoXruK","aIqvW5ZdHSo+","ee4Fdmor","W65sW77dUq","smoHixCj","r8k7bq5BWRWBafWNuG","FCosW6/cL8kmW4JdRfldTa","amkQWR/cKSkU","W456hSkYWOy","WRBdPtjzWOmpbJBcOa","xmkMzW","WQldQs1mWRmpfd4","W6/dJJOVBSoq","lWZcICk9W4u","WQbVWRL+W4eR","W7hdOCowjCkTamkqemkI","xSkTy8kboSkaWRxdMK9p","edCiW5y","W53cJ0aN","E8oQfNe","ucJcQCkbea","hmokWOJdVmohWQO","W4tdP0f2WQu","W6xdGJGTnCoot8kxWQVdGq","W6BcQe9AhW","DGtcN8kTigu","sCkTga","gCoyWO/dTa","W4rHlwOTW69AqmoZoG","W55UgSkNWQC","lfBdQGddHmkHWQO","W6lcONCEpG","lNqikCoM","b3GogG","W4BcPHzVWO4","WONcMSo5rW","WQSSW5e8WOZdUmkd","W5aFWO3cQSoX","z8oEWPujWOpcUmklW57dI2C","d8k7eCo0WPdcQf9KW6ZdHW","ASouytpcHxRdTXn9","qh7dT0/dTe7dGmkOihi","maKX","WRRdGXNdJmoV","W7JdV8oLamkd","qSkmmConWQlcGchdRv4Z","tSoNrW3cPq","WQVdJWBdM8oUW6tdPSkNCmoc","oddcSmkJW5mMzmofW6y8","fuxdKLJcOW","W5RcS8kJnY8","gtij","bZagW4NdImkQW5mKWQpdLq","W77cN8kob8ov","oWBcQmk/W7WTp8ojW7a","fCk4fCkMWRlcHfG","xSkGDNa8","E03dGXW","bSoJDgqG","WOSKecPF","W7hcUGXIWOPo","WPaXmdrD","WOOagrDqcmo0pv9k","W7hdV8oDiCkgdCkiea","WQRdU8oqbrVcMJbpqSkJ","WP3cThtdR8k1W6Ktq8oqWPC","W7BcU0O","sCo7WQZdImkEWRtdLNBdSmku","sMW8e8oL","sCkoW4JcO8kuW7lcVrdcVXZdO8kcWQ0","W7dcPbv0WOGSk3FdPCkS","WRpdGJVdN8kEdW","e1jet8k4W4rKW4BcKJK","WP0wpCokEd3dICkAW446","W6ldMcCHFCow","kLOHp8oBW6S","cKL2t8kN","W4lcICk1fCozWPK","WO7dHmomcbe","WRuCt8kGWQ8","W7ZcU11a","W4JdHcigyG","WQ15WPmY","DSk2AKiR","WOldNJ9ZWQu","aJdcTmkVW5yW","WQiBqSkaWRa","ASouFdhcJNm","WP3dPSku","W7asWQ7cQCoGhXO","ALBdHHFdNmkMWOZdN1WX","F8ojFZ/dHhNdSqjQWOe","tMNdRYVdSq","W6LDWQxcQqdcI2XAWPBdQq","WQi7l8o0wa","WPtdL8kVe8o/dHa","ECk1exmSlG","W7FdUCk5WRuSW6tdLmkQBSob","W69DW6K","W5hcI24Pgq","iCkjWRG","A8ocWOVcL8ocW7O","cf5ewCkA","eSoMca","esatW6VdGSoKW7KQWRNdNG","WRX/WQrX","p8oqDZpcMuldUbXGW5a","W6DTo3mB","W5hcI1uIWP7dNb8","W5rYoG","W4BdH8o3lmkh","WPlcLmo2hCk9","W5fKpcW","bSk2mCoqWPxcHgJcVay","rSkNAmkQ","W7BcObS","WQddISkeWPfr","W4pdLKzOWOBdVCo0","6yEM57+D44c256Uv5RMZ6ywc5Ps35OIN56gb","WROOmcLk","kmkzk8oJWQi","eZ/cO8kA","W4ZcIHKIWONdHXOnmCoP","oHJcGSkLzMqiAdi+","W43cGxGPWOZdIX4RF8kO","a8kIbSk7WQu","W7hdUCkmWOKW","WRqym8oc","fvzStSkF","g8o2q00qW4PLBMCt","W7ZcTJRdJ24jW5ldOCoLva","BCo3cMG","eSk6jSobWRFcUNdcTH13","WPzOjSk+W7JdPSkBWOqhW6K","omoRqXjwW4n9BYre","W7xcOxZcIdSw","W7lcPNelm8oH","W6hcPMBcLG","ALFdHrhdGCkHWRFdKW","WRtdIaxdHSkmgmk7h3W3","W5JcQWXtWP0","WR7dOYXrWR0n","WQqwfmoxzJJdHSos","rGGwg8o7WOCLW7FcNZO","t8kdkY9X","dYtcRCkF","dCoxWQpdR8oH","W5bSoa","W6FdHcmMDSoxhmoCWOtdMa","bMeFga","BCohh3u7kq","v8oMrSoTWQdcOe57W5lcUW","ywOLcCoz","WRVdQsC","ew8gha","W799nSkmWRK","WRpdHJ/dJmkKhmk6","WQtdHJ3dIa","h1bx","DmkDpZfs","WPC6bmoczG","o3uHl8on","WPXdWROqW7K","h8oNwvOxWPG","WP5dWPfF","fCoTWQ/dSCoW","WOlcKSoV","wcGxW57dHa","WPWwlmoOza","W5VdHLrK","EWJcP8k0bq","a3icvSkPWRj0WOHFFG","b2JdPeJcVK/dHG","oCoPWOldPmoq","eguycCoZW68WW4m","W7pdI35RWQO","W53dMKnPWOW","W6ldSCkJWRu","y8oyythcNG","W6xdQCkXjZ8CuSoWW5ZdNG","g0jMwmk5W5z8","W786W6CPWOvZ","cclcQ8kzWRNcKG","jCktWPtcOmkYW4xdSuW","A0qMm8oiW6ZdRSkowCoO","W5hcMKa2WOJcLenhESkP","DSobD2u","W4xcICkIaq","W4r8lNK6WRjiuq","f8k7AmkTmSk+WQJdMXu","W7pcJvmLfW","W6NcT3CnjCkPaCkz","WQPJWRT8W6OTW6tcNMi","qqlcTCkPaa","sSk4zMXM","zrNcN8kYjMmiCW","acWdW57dJmovW5SIWQFdJW","W7xcUNmy","WQHRWQn4","aXaMW73dQq","W5pdRHSqta","W6/dLdVdISoud8kSohq2","vLmrcCoz","sSk+lCos","WRhcT3hdQ8kI","ErZcVCkoca","W7ddQSkMWR0","ourVBmkY","r8k4jWPV","DSolWO0eWOu","ACooWQNdQ8k6","W6tcNKbdgW","z8oBWPmb","WOxdNHv4WPa","WR7cPbr9","g8oDWP3dG8ob","W6pcPK9aoMy","oqRcT8k5","nItcOCkbWRC","eCoCWPxdSSouWQW","WO/dUmo4emo3","W516imk8","W48KkNC6WRDiwSo2lq","WO7cJ8oPcmkGafqDDN4","W7FcUMjFnq","dSoSndfRgCkkWQ15WRTIW6RcUq","gmobWO/dP8ob","WPJcQ1JdSSk9W6W","WQxcOCorcSkK","WO0UyCoLW6FcS8oaWP4qWOdcLhNcGq","W7lcTMeCjmoHt8op","WRNdRmogdrdcNszD","tvBdLa/dRa","F0VdIqe","WRNdLCoYgmoFW6O","WQ9IWQj3W54qW6ZcIwi","WRNdPSkcWPXwWOe","yuOGpW","WQBdS8kaWPjw","hYKcWPtdH8oLW4aLWRJdLa","WQT0WRacW7O","W7NcPeSzphPJWO5scG","mCoPr0Wc","WRBdPtjz","F8ogWRRdISkn","fmk0Cw4","ts4jemoY","ACkdrhG9","W7FdGbyQBa","fCoUvLO","WPVdLCoknCoi","sSkRphW4wmomWQ8MWPS","hZNcS8kCWRdcK13dQ8orW6q","WRhcJ0xdVmkG","W5JcNHfSWPC","W73dLCk9WPC4","W4dcICo4dmkHqYrBAhS","WR9VWQvVW5aX","WOhdHGJdQSoj","FSoZWQ7dImk3","W6BdGmoYgmoCW6RdMW","vmoJCG","qmktpW1I","ECk1cw4WlSko","W5RcMgqXWQW","W5ldJmkSs8oHBcPLtK01","W6xcPNfan8oGtq","lujiwmk/WOPJW43cKJK","aSk/a8k6WRVcOL1RW5ZcMW","nSkoCtpcHq","WORdOI5/WP4","WQ7dIbRdImkngmkem3KH","WQH9WRzqW54","emoJq14l","WRJdOSkC","pmkbWQtcTmk5W5a","hupdLxtcMG","W556axK7WQTmta","wmoKWP7dM8kjW7ldJh4","fqRcHCk7W60","EfldLWNdGCk2WRRdGKe2","W43cJCkVeCof","W7lcT2Wwm8o9","h8kzWRZcJCkK","m8oVfgO","y8kqWQtcUSkSW5RcU0/dKM0","ECo5dx0","W6pcVunr","bvDvuSkG","aSk/a8k6WOlcV1a","wmk8rmk/kSkkWQtdMW","W4JdTeT9WPy","oHRcHCkNo2Ti","DSkKbs5l","ACkvsSk3nq","W6FdUmonoSkD","WP3cUv/dUG","WRZdMXVdH8kNW7ZcRmkRE8oc","W6NcJSkPbt8","C8krpJ8","WQJdMCogfa8","WPuRaqTs","W6FcOSk4jSoy","WRRdN8oPcCoWW6dcGmknWO4","WRBdPtjzWPuf","aCkTWOdcJCk4","C8o4WQtdLCkEWQBcKcNcQ8ox","rIBcP8ouWQ/cHu/cSSoQW7a","wSoqqaNcJW","W53cTmkwcXy","dgldOuK","W4FcU8kScmo4","WQtdUSoimCkWemkasa","vumapCoa","WQBdJIxdJmouc8o7C20O","WPFdT8k2WR1n","xCo2q1ap","W6FdH8o0fq","W5JcI8kpnGO","esat","BSoXa3K","W5rzkgGL","WQRdJqBdIa","W6lcP3RcLtTx","smoQWRNdJG","Bu3dJaddHG","bmohtxmU","W7xcJ20kaG","AKVdNqa","W7BcU0jryhfLWOTweG","WRJcII/dHSkjcSkOlNKH","s8olWRCjWQC","W47cKeiugG","WQamnmol","FbJcVCkNoMScEW","WR3dVGddMSoP","CvK1mmoA","W6ldMYqKC8oBhmomWRldGG","W53cMmk6bSoyWOi","W5RcNdPDWOO","WQ/cUL7dOSkZ","WPewkWPohmo5","WRRdTSo0yg1EC8kQW77dGmkkW4K","oq7cSmk7","WQm5DmkLWQm","ffHd","WO3dT0JdTmk0W7rzs8kgWOS","WPDPoq","aSo3vK8i","mSosWQNdSSou","WQ5VWRzBW5i","fJNcRCkXWQ4","CeZdGWddKmkAWR0","xx4zrfW","WPRcN0FdQSkV","B8kibJDW","WPldVmoXjIS","pSoyWO/dHCobWRpdMZRcRZe","W61wW74","zGlcISkJDdjxl3Po","j8orWRFdTmow","W4NdPCojg8kx","zSkfkYXljuvbW7/dNq","W6tdRgiEj8oMr8oeaIa","z8krod9nDG","jmohDw0","WQmCkCoh","a3Lu","WOeLzCoXW6WP","W6LCW6tdVKBcJW","jCkub8oPWPi","WRddTtfeiCo+xmocnIO","W77cPhS","W7lcS28uiG","W6Gnumk6","bSoYu1WxWPuUhNyg","gSoSu1GBWR8S","W7LAW77dVq","o0rVySkb","umoKC8kxW6RcS03cIczrha","WOVdLcldI8kR","WOhdM8oAcCok","W73cG2/cPdq","WORcSeRdQCk/WQ0frCkoWPu","W5XJAq","W47dPtGmBG","CSkmsSkucG","W488WORcRSoZ","WPWehHK","h8k4Bmk8na","zCkMtmkXea","WR7dUW5PWOG","B8oFWOKhWOhcTq","WQ4jqSkTWR46tq","WRuyqSk9WQ47","WQiCi8okzJtdI8ob","lCkzW6K","W57cM3O8WOS","fMVdI2lcUq","zH/cN8kTlg4","omo2WR3dMSoy","BYtcTSkWjq","eLegpmo1","j8oBvh42","W6ZcOSk0htWexmk9W4VdTa","ECkFpq","AuqZ","W6RcQ8klgSoi","WR5LWPC","WOJcNmk/g8oFWQ56WQHLWPS","W5hcUM4kWPO","WOpcTCordSkw","WQ3cMmkMnYOnuCkbW4VdNW","fmkZoCkZWRe","WPqmgqW","W7bQa2a8","5y+Y6igL5BAl5AsT5Psx772w6kYw5yU55B2544cx","lG7cSSk/W7WIlq","W6SFWQ7cV8oGmG9znmkS","z8kfoty","WO3dLsZdMSkq","W47dNmkOWOiq","W4hcUgrKkG","WPWFpdbR","jgldS2lcOW","bSkQnSobWQVdMcZdSG","W7BdS8opma","W5NdNYiLBq","5Awl5yEjf34mWP8Hkhjs","WO0UyCkAWPe","fCoRuW","W6xdHdGSF8oknmoC","nmoqtwqu","WRhdOSkyWPO","W6ldSCkJWRvCW6hdImkcDmoc","avjitSkUWPDWW5BcKNW","xSk2DMC","BCopqc7cMxtdSbi","W6zAW7NdRa","CSkcodfs","pmkvWQxcVq","WRpcI3WFC8owgCoxWQZdNG","W74EWQpcQmkQhGzcjmom","WR9PWO8Y","kmkbWQlcTa","WPVdSComecS","WRuzqCk9WRi8uSkb","mSkiW54IWQ3cTSoCW5hdSa","WQBcRfldQ8k/WRGxxSkmW4S","WR7dSXtdGmoLW7K","W7bWpCktWPW","WQHWWOfrW6i","yvmqcCoL","WPlcLmorf8kKxWLXz2W","rSkbt8kRoa","x8oUwJBcPq","WRekjmokFq","g19dt8kZW7HJ","WPLQiJD5W69krmo9pq","WQFdNZpdM8oZW6VcSa","W7VcPSk0oG","W78sWRS","AuqMo8oQ","ESoYwr/cVq","WRldJgFdISkvuSo4C34O","WOOagqHte8oZmq","WQpdRsHzWOmafatcSCkV","W7zWnCkPWOm","W4dcHSkljZu","DGtcLmkJ","W5JcPunacq","WRddI8kbWPvu","WRFdQsO","bJauW5m","eNuyeq","WPSehHTu","pSk9mSoNWPO","yuiM","WQZdGIFdJSkpfq","fCoTWQhdMCob","pCkvWRFcP8k/","u8kBrxKk","WPOagqXXhmo0n1G","W7hcRrT5WOHtca","W7JcP8kxsLBdLsCDe8o+","b8o2WR3dO8om","W5JcGepcHZm","WQpdVY11WOK"];return nB=function(){return t},nB()}async function sB(t,e){let r=Qe,n={ZoYwi:function(c,u){return c(u)},SLOdT:function(c,u){return c==u},dAqWp:r(863,"O3ud"),ZnpCB:function(c,u){return c==u},uIhjs:r(523,"DiSV"),qGKhj:function(c,u,l,d,f){return c(u,l,d,f)},lvAHO:function(c,u){return c(u)},MMVXl:r(549,"8%wU")+r(622,"0fDW")+r(180,"ga*a"),LJiGz:function(c){return c()},wEzNM:function(c,u){return c===u},GRzYw:function(c,u,l,d,f,m){return c(u,l,d,f,m)},RaJLz:function(c,u){return c(u)},zOFvl:function(c,u){return c==u},dzVHW:r(623,"[H9y"),SMwev:function(c,u,l,d,f,m){return c(u,l,d,f,m)},KskbP:function(c,u){return c(u)},GCCar:r(239,"fdFI")+r(161,"XPH3"),qxOLk:r(725,"jLhn"),jMWxK:function(c,u,l){return c(u,l)},ncWrL:function(c,u,l,d,f,m,p){return c(u,l,d,f,m,p)},POLbE:function(c,u){return c*u}};await n[r(871,"Ay*s")](QI,t);let s=t[r(859,"u@kD")][r(564,"adje")],i=t[r(462,"ve1h")][r(301,"Vieu")],a=t[r(421,"en57")][r(864,"z33#")],o=t[r(551,"8%wU")][r(491,"mcQo")];if(n[r(505,"h5Bi")](s,n[r(339,"DiSV")])){let c="",u=o[r(425,"JMY2")]("*"),l=t[r(142,"V4T5")][r(913,"U#fK")];if(n[r(457,"mcQo")](i,n[r(303,"JMY2")])){if(c=(await n[r(173,"f5YW")](E6e,a,n[r(804,"0fDW")](decodeURIComponent,u[0]),u[1],u[2])||[])[r(183,"Ay*s")](g=>g[r(734,"Vieu")])[r(420,"gZDT")](g=>g[r(249,"6ju9")][r(640,"s682")+"e"]()==l)?.[r(172,"dvek")]?.[r(881,"Fi&h")]||"",!c){e[r(497,"h*E$")](9386+1*-2218+-6668),e[r(145,"nmnF")](n[r(492,"ve1h")]);return}e[r(582,"P*1c")](c);return}else{let y=n[r(194,"ve1h")](xK);if(c=(n[r(513,"Qk6f")](y[r(711,"6ju9")],!0)?await n[r(619,"Qk6f")](Csr,a,n[r(437,"en57")](decodeURIComponent,u[558+1*-91+-467*1]),u[5*315+1*9913+-11487],u[14467+-14465*1],n[r(588,"9tTR")](l,n[r(638,"O3ud")])):await n[r(431,"80@M")](vK,a,n[r(567,"$nl(")](decodeURIComponent,u[93+1*-293+200]),u[-3013*1+6907*-1+9921*1],u[9*26+-1*-2733+-2965],n[r(672,"dvek")](l,n[r(184,"0fDW")])))?.[r(455,"cJlG")+"rl"]||"",!c){e[r(165,"80@M")](1321*2+7140+-9282),e[r(553,"P*1c")](n[r(347,"P*1c")]);return}if(n[r(663,"&fa6")](l,n[r(924,"0fDW")])){e[r(418,"nmnF")](c);return}}let d=n[r(307,"&fa6")](xK),f=d[r(422,"O3ud")]||20*366+-9772+988*3,m=d[r(698,"Y^cX")]||-11987+3*3999,p=await n[r(936,"jLhn")](bK,u[7066+-7065*1],c),h=p[r(464,"Ay*s")]&&n[r(906,"Fi&h")](l,n[r(610,"6ju9")])?p[r(490,"en57")]:1*-127+1347+244*-5;return await n[r(357,"9tTR")](Sb,t,e,c,u[4988+-4987*1],Object[r(810,"9wdM")]({Cookie:Nc},wb),{chunkSize:n[r(723,"O3ud")](-163*8+1549+779,f),poolSize:m,timeout:n[r(746,"Qk6f")](1*3531+877*-1+-1*1654,197*-1+607+2*-200),skipBytes:h})}}async function iB(t,e){let r=Qe,n={eHmnv:function(c,u){return c(u)},TCAHP:function(c,u){return c(u)},XCFgx:function(c,u){return c(u)},PHmTO:function(c,u){return c(u)},FLxiE:r(667,"ve1h"),TYcCU:function(c,u){return c+u},cHxRP:function(c,u){return c+u},EOFOx:r(472,"ve1h")+"rk",wfBqJ:function(c,u){return c(u)},dxMhV:function(c){return c()},PEOXV:function(c,u){return c===u},moiCr:r(693,"gZDT"),wfrxk:function(c,u,l,d,f){return c(u,l,d,f)},Knitc:function(c,u,l){return c(u,l)},HbsXp:function(c){return c()},PdwkS:function(c,u,l,d,f,m){return c(u,l,d,f,m)},SUHRm:function(c){return c()},WKHNY:function(c,u,l,d,f){return c(u,l,d,f)},sRrsh:r(168,"XPH3"),CpSSd:r(308,"9wdM"),fRauU:r(169,"ga*a"),SxEWp:r(328,"mcQo")};await n[r(286,"jLhn")](QI,t);let s=t[r(244,"gZDT")][r(436,"Qk6f")],i=t[r(919,"9tTR")].id,a=i[r(762,"80@M")]("*"),o=-3616*-2+-5649+1583*-1;if(s[r(277,"gZDT")](await n[r(845,"W5XH")](g6e,n[r(407,"en57")]))){let c=n[r(590,"Qk6f")](n[r(895,"VA^o")](n[r(756,"BwR#")](bsr,t),t[r(137,"p^$)")][r(151,"jLhn")]),n[r(587,"dvek")]),u={parse:0,url:[],header:Object[r(208,"dvek")]({Cookie:Nc},wb)};a[-3059+-8143*1+2*5603]&&(u[r(413,"dvek")]={subt:c+r(228,"h*E$")+a[2361*-1+1158+1203]+"/"+n[r(704,"jLhn")](encodeURIComponent,a[3506*2+5071+2*-6041])+"*"+a[1*-5603+-9451+15058]+"*"+a[5]+r(433,"p^$)")});let l=n[r(162,"&fa6")](xK),d=n[r(751,"&fa6")](l[r(458,"$nl(")],!0),f=u[r(135,"0fDW")],m=()=>{let x=r;f[x(324,"XPH3")]("\u4EE3\u7406"),f[x(292,"O3ud")](c+x(320,"jT34")+a[-1587+6823*-1+8410]+"/"+n[x(721,"$nl(")](encodeURIComponent,a[-7321+78*-83+13796])+"*"+a[-1*-9473+-3*2675+1446*-1]+"*"+a[-2447+373*-1+2823]+x(687,"U#fK"))},p=()=>{let x=r;f[x(136,"jT34")]("\u4EE3\u7406"),f[x(918,"$nl(")](c+x(310,"9tTR")+a[-7405*1+-1*5487+-11*-1172]+"/"+n[x(829,"W5XH")](encodeURIComponent,a[8290+2763*-3])+"*"+a[-47*70+-6008+-4*-2325]+"*"+a[-3*-2581+-2*-645+-9030]+x(687,"U#fK")),f[x(660,"fdFI")]("\u539F\u753B"),f[x(356,"u@kD")](c+(x(388,"$nl(")+x(836,"gZDT"))+a[0]+"/"+n[x(146,"ga*a")](encodeURIComponent,a[1])+"*"+a[2]+"*"+a[-1352+-5671*1+7026]+x(456,"ns)a"))};if(d){let x=n[r(387,"BwR#")](a[0],n[r(538,"9wdM")])?await n[r(395,"8%wU")](EK,a[2]):await n[r(475,"0fDW")](b6e,a[0],a[1],a[2],a[3]);if(x?.[r(819,"adje")+"rl"])return(await n[r(876,"Yz&f")](bK,a[2],x[r(439,"9wdM")+"rl"]))[r(477,"Vieu")]?(n[r(686,"cJlG")](m),u):(n[r(327,"Yz&f")](p),u)}let h=await n[r(294,"Ay*s")](vK,a[-31*199+-7214+13383],a[-9016+5349*-1+14366],a[8327+1*151+2119*-4],a[-1049*-1+-3*2723+7123],!1),y=h?.[r(761,"8%wU")+"rl"];if(y&&(await n[r(869,"ns)a")](bK,a[2],y))[r(521,"9tTR")])return n[r(741,"Vieu")](m),u;let g=(await n[r(279,"gZDT")](E6e,a[-7230+17*227+3371*1],a[-12403+-443*-28],a[-547*13+-334+-677*-11],a[-6560+84*-34+1*9419])||[])[r(183,"Ay*s")](x=>x[r(259,"0fDW")]),A=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],b=["4k","2k",n[r(522,"Y^cX")],n[r(495,"ns)a")],n[r(866,"$nl(")],n[r(389,"DiSV")]];return n[r(772,"$nl(")](p),g[r(887,"u@kD")](x=>{let S=r;o=b[S(828,"BwR#")](x[S(855,"9tTR")]),f[S(661,"p^$)")](A[o]),f[S(356,"u@kD")](c+S(447,"en57")+x[S(171,"Fi&h")][S(326,"$nl(")+"e"]()+"/"+a[4906+4*346+2*-3145]+"/"+n[S(658,"JMY2")](encodeURIComponent,a[-6939+-1*2098+4519*2])+"*"+a[9995*1+1*1141+-2*5567]+"*"+a[10835+1354*-8]+S(774,"u@kD"))}),u}}var Bl=Ce(Zn(),1);var D5e=Ce(V0(),1),bf=Ce(Zn(),1);var bB="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",nC={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},P5e={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}}},zar=async t=>{let e=bf.default.enc.Hex.stringify(bf.default.MD5(t.config.uc.cookie)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},Yar=async(t,e)=>{let r=bf.default.enc.Hex.stringify(bf.default.MD5(t.config.uc.cookie)).toString();await t.db.push(`/uc/${r}`,e)},hz=async t=>{let e=bf.default.enc.Hex.stringify(bf.default.MD5(t.config.uc.ut)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},gz=async(t,e)=>{let r=bf.default.enc.Hex.stringify(bf.default.MD5(t.config.uc.ut)).toString();await t.db.push(`/uc/${r}`,e)};async function yz(t){t.get("/qrcode",async(r,n)=>{try{let s=await he.get(`https://api.open.uc.cn/cas/ajax/getTokenForQrcodeLogin?client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":bB,referer:"https://drive.uc.cn"}}),i=s.data.data.members.token,a=Nl(s.headers["set-cookie"]),o=P5e.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 D5e.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=P5e.decode(s);if(!i)return n.send({code:0,data:{status:nC.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await he.get(`https://api.open.uc.cn/cas/ajax/getServiceTicketByQrcodeToken?__t=${Date.now()}&token=${a}&client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":bB}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:nC.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:nC.EXPIRED}}):n.send({code:0,data:{status:nC.NEW}})}catch(c){console.error("UC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:nC.NEW}})}});async function e(r,n){let s=[...n],i=await he.get(`https://drive.uc.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":bB,Cookie:s.join(""),referer:"https://drive.uc.cn"}});i.headers["set-cookie"]&&(s=s.concat(Nl(i.headers["set-cookie"])));let a=await he.post("https://pc-api.uc.cn/1/clouddrive/transfer/upload/pdir?pr=UCBrowser&fr=pc",{},{headers:{"User-Agent":bB,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(Nl(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 zar(r.server)})}),t.put("/cookie",async(r,n)=>{await Yar(r.server,r.body?.cookie??""),n.send({code:0})}),t.get("/ut",async(r,n)=>{n.send({code:0,data:await hz(r.server)})}),t.put("/ut",async(r,n)=>{await gz(r.server,r.body?.ut??""),n.send({code:0})})}var Jar=10*60*1e3,lo={DeviceID:"07b48aaba8a739356ab8107b5e230ad4",RefreshToken:"",AccessToken:""},Wn={api:"https://open-api-drive.uc.cn",clientID:"5acf882d27b74502b7040b0c65519aa7",signKey:"l3srvtd7p42l0d0x1u8d7yc8ye9kki4d",appVer:"1.6.8",channel:"UCTVOFFICIALWEB",codeApi:"https://api.extscreen.com/ucdrive"};function q5e(t){return String(t||"").split(",")[0].trim()}function B5e(t){return q5e(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function Xar(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=B5e(t?.headers?.["x-forwarded-host"])||B5e(t?.headers?.host);if(!n)return e;let s=q5e(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function Zar(t){return Bl.default.MD5(t).toString().slice(0,16)}function Mb(t,e){return Bl.default.MD5(t+e).toString().slice(0,16)}function vB(t,e,r,n){let s=t+"&"+e+"&"+r+"&"+n;return Bl.default.SHA256(s).toString()}function xz(t){return String(t||"").trim()}function Az(t){let e=Number(t);return Number.isFinite(e)&&e>0?e:0}function eor(t){if(!t||typeof t!="string")return null;let e=t.trim();if(!e.startsWith("{"))return null;try{let r=JSON.parse(e);return r&&typeof r=="object"&&!Array.isArray(r)?r:null}catch{return null}}function gg(t,e=Date.now()){if(!t)return null;let r=typeof t=="string"?eor(t)||t.trim():t;if(!r)return null;if(typeof r=="string")return{access_token:r};if(typeof r!="object"||Array.isArray(r))return null;let n=xz(r.access_token||r.accessToken||r.token),s=xz(r.refresh_token||r.refreshToken),i=Az(r.expires_in||r.expiresIn),a=Az(r.expires_at||r.expiresAt||r.expire_time||r.expireTime);if(!n&&!s)return null;let o={access_token:n};return s&&(o.refresh_token=s),i&&(o.expires_in=i),a?o.expires_at=a:i&&(o.expires_at=e+i*1e3),r.scope&&(o.scope=r.scope),(r.token_type||r.tokenType)&&(o.token_type=r.token_type||r.tokenType),o.updated_at=Az(r.updated_at||r.updatedAt)||e,o}function SB(t){let e=gg(t);return e?JSON.stringify(e):""}function tor(t,e=Date.now()){return!!(t?.refresh_token&&t?.expires_at&&e+Jar>=t.expires_at)}function L5e(t={}){let e=Math.floor(Date.now()/1e3).toString()+"000";return{req_id:Mb(lo.DeviceID,e),app_ver:Wn.appVer,device_id:lo.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Wn.channel,...t}}async function M5e(t){let e=await he.post(`${Wn.codeApi}/token`,JSON.stringify(t),{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"},validateStatus:r=>r<500});return e.data?.code!==200||!e.data?.data?null:gg(e.data.data)}async function ror(t){if(!t?.refresh_token||!K0||!iC)return null;let e=L5e({grant_type:"refresh_token",refresh_token:t.refresh_token}),r=await M5e(e).catch(()=>null);return r?.access_token||(r=await M5e(L5e({refresh_token:t.refresh_token})).catch(()=>null)),r?.access_token?(r.refresh_token||(r.refresh_token=t.refresh_token),!r.expires_in&&t.expires_in&&(r.expires_in=t.expires_in),!r.expires_at&&r.expires_in&&(r.expires_at=Date.now()+r.expires_in*1e3),await K0.push(`/uc/${iC}`,SB(r)),r):null}async function W5e(t,e=!1){if(!t?.access_token)return"";if((e||tor(t))&&t.refresh_token){let r=await ror(t);if(r?.access_token)return Object.assign(t,r),r.access_token}return t.access_token}function j5e(t){let r=/https:\/\/drive\.uc\.cn\/s\/([^\\|#/?]+)/.exec(t);return r?{shareId:r[1],folderId:"0"}:null}var Tu="pr=UCBrowser&fr=pc",hg={"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"};function Q5e(){return(globalThis.Pans||[]).find(e=>e?.key==="uc")?.noSaveMode!==!1}var K0=null,sC=null,EB="https://pc-api.uc.cn/1/clouddrive/",_f="",iC="",H5e="",$5e="CatPawPlay",mg=null,_B="";async function bz(t){K0=t.server.db;let e=t.server.config.uc;_f=e.cookie,sC=Bl.default.enc.Hex.stringify(Bl.default.MD5(e.cookie)).toString(),iC=Bl.default.enc.Hex.stringify(Bl.default.MD5(e.token)).toString(),H5e=Bl.default.enc.Hex.stringify(Bl.default.MD5(e.ut)).toString();let r=await K0.getObjectDefault("/uc",{});if(r[sC]&&(_f=r[sC]),_B=await hz(t.server),!_B)try{await le.get(`${EB}/file`)}catch(n){n?.response?.data?.length&&(_B=n.response.data,gz(t.server,_B))}}async function Ef(t,e,r,n,s){r=r||{},Object.assign(r,hg),Object.assign(r,{Cookie:_f||""}),n=n||"post";let i=n=="get"?await le.get(`${EB}/${t}`,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC Cookie \u53EF\u80FD\u5DF2\u5931\u6548\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u91CD\u65B0\u626B\u7801",duration:5}}),o.response||{status:500,data:{}})):await le.post(`${EB}/${t}`,e,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC Cookie \u53EF\u80FD\u5DF2\u5931\u6548\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u91CD\u65B0\u626B\u7801",duration:5}}),o.response||{status:500,data:{}})),a=s||3;if(i.headers["set-cookie"]){let o=i.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);if(o){let c=c4(_f,"__puus",o[1]);c!==_f&&(_f=c,K0&&sC&&await K0.push(`/uc/${sC}`,_f))}}return i.status===429&&a>0?(await Rl(1e3),await Ef(t,e,r,n,a-1)):i.data||{}}async function IB(t,e={},r="post",n=3){let s={...hg,Accept:"application/json, text/plain, */*","Content-Type":"application/json"},i=`${EB}${String(t||"").replace(/^\/+/,"")}`,a=await(r==="get"?le.get(i,{headers:s}):le.post(i,e,{headers:s})).catch(o=>o.response||{status:500,data:{}});return(a.status===429||a.status>=500)&&n>0?(await Rl(1e3),await IB(t,e,r,n-1)):a.data||{}}function G5e(t=""){let e=xz(t);return{...hg,Referer:e?`${e}\\ `:hg.Referer,"Accept-Encoding":"identity"}}async function U5e(){let t=await Ef(`file/sort?${Tu}&pdir_fid=${mg}&_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 Ef(`file/delete?${Tu}`,{action_type:2,filelist:t.data.list.map(r=>r.fid),exclude_fids:[]});console.log(e)}}async function nor(t){if(mg){t&&await U5e();return}let e=await Ef(`file/sort?${Tu}&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===$5e){mg=r.fid,await U5e();break}}if(!mg){let r=await Ef(`file?${Tu}`,{pdir_fid:"0",file_name:$5e,dir_path:"",dir_init_lock:!1});console.log(r),r.data&&r.data.fid&&(mg=r.data.fid)}}async function _z(t){let e=await IB(`share/sharepage/token?${Tu}`,{pwd_id:t.shareId,passcode:t.sharePwd||""});return e.data?.stoken?e.data:null}var sor=[".srt",".ass",".scc",".stl",".ttml"];async function ior(t){let e=typeof t=="string"?j5e(t):t;if(!e)return[];let r=await _z(e);if(!r)return[];let n=r.stoken,s=[],i=[],a=(c,u)=>c?`${c}/${u}`:u,o=async function(c,u,l,d){let f=d||"",m=100;l=l||1;let p=await IB(`share/sharepage/detail?${Tu}&pwd_id=${c}&stoken=${encodeURIComponent(n)}&pdir_fid=${u}&force=0&_page=${l}&_size=${m}&_sort=file_type:asc,file_name:asc`,{},"get");if(!p.data)return[];let h=p.data.list;if(!h)return[];let y=[];for(let g of h)if(g.dir===!0)y.push({fid:g.fid,path:a(f,g.file_name)});else if(g.file===!0&&g.obj_category==="video"){if(g.size<1024*1024*5)continue;g.stoken=n,g.vod_group=f,s.push(g)}else g.type==="file"&&sor.some(A=>g.file_name.endsWith(A))&&i.push(g);if(l<Math.ceil(p.metadata._total/m)){let g=await o(c,u,l+1,f);for(let A of g)h.push(A)}for(let g of y){let A=await o(c,g.fid,1,g.path);for(let b of A)h.push(b)}return h};return await o(e.shareId,e.folderId,1,""),i.length>0&&s.forEach(c=>{var u=wl(c,i);u.bestMatch&&(c.subtitle=u.bestMatch.target)}),s}var Ll={};async function V5e(t,e,r,n,s=IB){if(!t||!r||!n)return null;let i=e;if(i||(i=(await _z({shareId:t}))?.stoken||""),!i)return null;let a=await s(`file/download?${Tu}`,{fids:[r],fids_token:[n],pwd_id:t,stoken:i,speedup_session:""}),o=Array.isArray(a?.data)?a.data[0]:a?.data;return o?.download_url?o:null}async function K5e(t,e,r,n,s){if(await nor(s),s){let a=Object.keys(Ll);for(let o of a)delete Ll[o]}if(!mg||(e||(e=(await _z({shareId:t}))?.stoken||""),!e))return null;let i=await Ef(`share/sharepage/save?${Tu}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:mg,pwd_id:t,stoken:e,pdir_fid:"0",scene:"link"});if(i.data&&i.data.task_id){let a=0;for(;;){let o=await Ef(`task?${Tu}&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 Rl(1e3)}}return!1}async function z5e(t,e,r,n){if(!Ll[r]){let i=await K5e(t,e,r,n,!0);if(!i)return null;Ll[r]=i}let s=await Ef(`file/v2/play?${Tu}`,{fid:Ll[r],resolutions:"normal,low,high,super,2k,4k",supports:"fmp4"});return s.data&&s.data.video_list?s.data.video_list:null}function aor(t){let e=Number(t?.status||0),r=t?.data||{},n=Number(r?.code||r?.status||r?.errno||0),s=String(r?.message||r?.msg||r?.error_info||"").toLowerCase();return e===401||e===403||n===401||n===403||s.includes("token")||s.includes("unauthorized")}async function F5e(t,e){if(!t||!e)return{videoInfo:null,authFailed:!1};let r="/file",n=Math.floor(Date.now()/1e3).toString()+"000",s=lo.DeviceID||Zar(n),i=Mb(s,n),a=vB("GET",r,n,Wn.signKey),o=await he.request({method:"GET",url:`${Wn.api}${r}`,params:{req_id:i,access_token:e,app_ver:Wn.appVer,device_id:s,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Wn.channel,method:"streaming",group_by:"source",fid:t,resolution:"low,normal,high,super,2k,4k",support:"dolby_vision"},headers:{"User-Agent":"Mozilla/5.0 (Linux; U; Android 9; zh-cn; RMX1931 Build/PQ3A.190605.05081124) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1",Connection:"Keep-Alive","Accept-Encoding":"gzip","x-pan-tm":n,"x-pan-token":a,"content-type":"text/plain;charset=UTF-8","x-pan-client-id":Wn.clientID},validateStatus:u=>u<500}).catch(u=>u.response||{status:500,data:{}}),c=o?.data?.data?.video_info?.filter(u=>u.accessable)?.[0];return c?(c.download_url=c.url,{videoInfo:c,authFailed:!1}):{videoInfo:null,authFailed:aor(o)}}async function oor(t,e){let r=`file/download?${Tu}`;e&&(r+=`&ut=${e}`);let n=await Ef(r,{fids:[t]});return n.data?n.data[0]:null}async function cor(t,e,r,n,s){if(!Ll[r]){let c=await K5e(t,e,r,n,s);if(!c)return null;Ll[r]=c}let i=await K0.getObjectDefault("/uc",{}),a=gg(i[iC]),o=i[H5e];if(a?.access_token){let c=await W5e(a),u=await F5e(Ll[r],c);if(u.videoInfo)return u.videoInfo;if(u.authFailed&&a.refresh_token){let l=await W5e(a,!0);if(l&&l!==c&&(u=await F5e(Ll[r],l),u.videoInfo))return u.videoInfo}}return await oor(Ll[r],o)}async function Y5e(t){if(Y4(t)){let e=j5e(t);if(e){let r=await ior(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})),Ts(getPanName("uc"),r)}else return{}}}async function J5e(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId;if(r=="uc"){let a="",o={...hg},c=!1,u=i.split("*"),l=t.params.flag,d=Q5e();if(n=="trans"){if(await bz(t),a=(await z5e(s,decodeURIComponent(u[0]),u[1],u[2])||[]).filter(g=>g.accessable).find(g=>g.resolution.toLowerCase()==l)?.video_info?.url||"",!a){e.code(500),e.send("uc transcode url empty");return}e.redirect(a);return}else{let y=null;if(d){if(y=await V5e(s,decodeURIComponent(u[0]),u[1],u[2]),!y){e.code(502),e.send("uc anonymous share download unavailable");return}c=!0,o=G5e(y.download_url)}else await bz(t),y=await cor(s,decodeURIComponent(u[0]),u[1],u[2],l=="down"),o=Object.assign({Cookie:_f},hg);if(a=y?.download_url||"",!a){e.code(500),e.send("uc downUrl empty");return}if(l=="redirect"&&!c){e.redirect(a);return}}let m=(globalThis.Pans||[]).find(y=>y.key==="uc")||{},p=m.chunkSize||512,h=m.poolSize||10;return await Sb(t,e,a,u[1],o,{chunkSize:1024*p,poolSize:h,timeout:1e3*10})}}async function X5e(t,e){let r=t.body.flag,s=t.body.id.split("*"),i=0;if(r.startsWith(getPanName("uc"))){let a=Xar(t)+t.server.prefix+"/proxy/uc";if(Q5e()){let A=await V5e(s[0],s[1],s[2],s[3]);if(!A?.download_url)throw new Error("UC \u514D\u767B\u5F55\u5206\u4EAB\u76F4\u94FE\u83B7\u53D6\u5931\u8D25");let b={parse:0,url:["\u539F\u753B",A.download_url,"\u4EE3\u7406",`${a}/src/down/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`],header:G5e(A.download_url)};return s[4]&&(b.extra={subt:`${a}/src/subt/${s[0]}/${encodeURIComponent(s[1])}*${s[4]}*${s[5]}/.bin`}),b}await bz(t);let c=(await z5e(s[0],s[1],s[2],s[3])||[]).filter(A=>A.accessable),u=[],l=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],d=["4k","2k","super","high","low","normal"],f=await K0.getObjectDefault("/uc",{}),p=!!gg(f[iC])?.access_token,h=["\u4EE3\u7406",`${a}/src/down/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`],y=["\u539F\u753B",`${a}/src/redirect/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`];p?u.push(...y,...h):u.push(...h,...y);let g={parse:0,url:u,header:Object.assign({Cookie:_f},hg)};return p&&(g.header=void 0),s[3]&&(g.extra={subt:`${a}/src/subt/${s[0]}/${encodeURIComponent(s[1])}*${s[4]}*${s[5]}/.bin`}),c.forEach(A=>{i=d.indexOf(A.resolution),u.push(l[i]),u.push(`${a}/trans/${A.resolution.toLowerCase()}/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.mp4`)}),g}}var bg=Ce(pC(),1),A8e=Ce(t8e(),1),Z0=Ce(require("crypto"),1);var Gz,qb={},J0={set(t,e){qb[t]=e,Gz.push(`/tyi/${t}`,e)},get(t){return qb[t]}},r8e=(t,e={})=>{let r=e.method||"GET",n=e.headers||{};return he({method:r,url:t,headers:n,transformResponse:[s=>s]}).then(s=>({ok:s.status===200,status:s.status,statusText:s.statusText,url:s.config.url,text:()=>Promise.resolve(s.data),json:()=>Promise.resolve(JSON.parse(s.data)),headers:s.headers})).catch(s=>s.response?{ok:!1,status:s.response.status,statusText:s.response.statusText,url:s.config.url,text:()=>Promise.resolve(s.response.data),json:()=>Promise.resolve(JSON.parse(s.response.data)),headers:s.response.headers}:s.request?{ok:!1,status:0,statusText:"No response received",text:()=>Promise.resolve(""),json:()=>Promise.reject(new Error("No response received"))}:Promise.reject(s))},Vz=(0,A8e.default)({storeAsString:!0}),Hcr=(t,e)=>t?`${t}/${e}`:e,n8e="video",UB="cas",Gcr=new Set([UB]),Vcr=new Set(["mp4","m4v","mkv","avi","mov","flv","ts","m2ts","m3u8","mpd","webm","wmv","rmvb","rm","f4v","m4s"]),s8e="02",MB="8025431004",i8e="10020",Kcr="6.2",mC="https://cloud.189.cn",hC="https://open.e.189.cn",ta="https://api.cloud.189.cn",WB="https://upload.cloud.189.cn",a8e="https://m.cloud.189.cn/zhuanti/2020/loginErrorPc/index.html",zcr="web_cloud.189.cn",Pc={"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"},$B="CatPawPlay",jz={"User-Agent":Pc["User-Agent"],Accept:"text/plain,application/json;charset=UTF-8,*/*","Accept-Encoding":Pc["Accept-Encoding"]},Ycr=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 Jcr(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 Qz(t,e){let r=Jcr(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 o8e(){return{clientType:"TELEPC",version:Kcr,channelId:zcr,rand:`${Math.floor(Math.random()*1e5)}_${Math.floor(Math.random()*1e10)}`}}function Xcr(t){let e=String(t?.code||"").trim().toUpperCase(),r=String(t?.message||"").trim();return Ycr.has(e)||/unable to verify the first certificate|self[ -]signed certificate|certificate/i.test(r)}async function X0(t,e=""){try{return await he(t)}catch(r){if(!Xcr(r))throw r;return r?.code,r?.message||String(r),$t(t?.url||"",260),await le({...t,proxy:!1})}}function Zcr(){return new Date().toUTCString()}function eur(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=Z0.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 tur(t,e,r,n,s,i=""){let a=new URL(n).pathname,o=`SessionKey=${e}&Operate=${r.toUpperCase()}&RequestURI=${a}&Date=${s}${i?`&params=${i}`:""}`;return Z0.default.createHmac("sha1",Buffer.from(String(t||""),"utf8")).update(o,"utf8").digest("hex").toUpperCase()}function c8e(t,e){return Z0.default.publicEncrypt({key:t,padding:Z0.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(e||""),"utf8")).toString("hex").toUpperCase()}function Tr(t,e){let r=String(t||"").match(new RegExp(`<${e}>([\\s\\S]*?)</${e}>`,"i"));return r?r[1].trim():""}function u8e(t){let e=Number(t||0),r=1024*1024*10;return e>r*2*999?Math.max(Math.ceil(e/1999/r),5)*r:e>r*999?r*2:r}function va(t){if(typeof t=="string")return t;if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}}function _a(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Bo(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=Tr(e,"code"),s=Tr(e,"message")||Tr(e,"msg");return n&&n!=="SUCCESS"&&n!=="0"?`code=${n}${s?` ${s}`:""}`.trim():""}function rur(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Bo(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=Tr(e,i);a&&(s[i]=a)}),s.sessionKey&&s.sessionSecret?s:null}function l8e(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Bo(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.data&&typeof r.data=="object"?r.data:null}function d8e(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Bo(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.file&&typeof r.file=="object"?r.file:null}function f8e(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Bo(e),n=String(r?.fileDownloadUrl||"");return n||Tr(e,"fileDownloadUrl")}function nur(t){if(t&&typeof t=="object"&&!Array.isArray(t))return t;let e=va(t).trim();if(!e)return null;try{return Vz.parse(e)}catch{return Bo(e)}}function p8e(t,e){let r=String(t||""),n=new RegExp(`<${e}>([\\s\\S]*?)</${e}>`,"ig"),s=[],i;for(;(i=n.exec(r))!==null;){let a=i[1],o=Tr(a,"icon"),c={id:Tr(a,"id"),parentId:Tr(a,"parentId"),name:Dc(Tr(a,"name")),size:Number(Tr(a,"size")||0),md5:Tr(a,"md5"),fileCata:Tr(a,"fileCata"),mediaType:Tr(a,"mediaType"),createDate:Tr(a,"createDate"),lastOpTime:Tr(a,"lastOpTime"),icon:o?{smallUrl:Dc(Tr(o,"smallUrl")),largeUrl:Dc(Tr(o,"largeUrl")),max600:Dc(Tr(o,"max600")),mediumUrl:Dc(Tr(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 sur(t){let e=va(t).trim(),r=nur(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=Tr(e,"fileList")||e;s=p8e(a,"folder"),i=p8e(a,"file")}return{count:Number(n?.count||Tr(e,"count")||s.length+i.length||0),folderList:s,fileList:i,data:r}}function m8e(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Bo(e),n=String(r?.taskId||r?.taskID||"");return n||Tr(e,"taskId")||Tr(e,"taskID")}function iur(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Bo(e),n=r?.taskStatus??r?.TaskStatus??"";if(n!==""&&n!==void 0&&n!==null)return Number(n);let s=Tr(e,"taskStatus")||Tr(e,"TaskStatus");return s?Number(s):0}function aur(t){let e=va(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Bo(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(/<familyInfoResp>([\s\S]*?)<\/familyInfoResp>/ig)||[]).map(a=>({familyId:Tr(a,"familyId"),remarkName:Tr(a,"remarkName"),useFlag:Tr(a,"useFlag"),userRole:Tr(a,"userRole")})).filter(a=>String(a?.familyId||"")),s.length===0)){let a=Tr(e,"familyId");a&&(s=[{familyId:a,remarkName:Tr(e,"remarkName"),useFlag:Tr(e,"useFlag"),userRole:Tr(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 x8e(t){let e=String(t||"").trim().toLowerCase(),r=e.lastIndexOf(".");return r>=0?e.slice(r+1):""}function our(t){return Gcr.has(x8e(t))}function Bo(t){let e=typeof t=="string"?t.trim():"";if(!e||!/^[\[{]/.test(e))return null;try{return JSON.parse(e)}catch{return null}}function Dc(t){return String(t??"").replace(/&amp;/gi,"&").replace(/&lt;/gi,"<").replace(/&gt;/gi,">").replace(/&quot;/gi,'"').replace(/&#39;/gi,"'")}function Ul(t){let e=Dc(t).trim();return e?/^\/\//.test(e)?`http:${e}`:/^(https?:\/\/)/i.test(e)?e:"":""}function cur(t){return Dc(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 $t(t,e=220){let r=cur(String(t??"")).replace(/\s+/g," ").trim();return r.length>e?`${r.slice(0,e)}...`:r}function Fb(t){if(!t)return"none";let e=String(t).split(";").map(r=>r.split("=")[0].trim()).filter(Boolean);return`${e.slice(0,5).join(",")}${e.length>5?`,+${e.length-5}`:""}`}function Ea(t){try{let e=Ul(t);return e?new URL(e).host:""}catch{return""}}function uur(t){try{let e=Ul(t);return e?x8e(new URL(e).pathname):""}catch{return""}}function h8e(t){return Vcr.has(uur(t))}function lur(t){let r=String(t||"").match(/\/(\d+)$/);if(!r)return 0;let n=Number(r[1]);return Number.isFinite(n)?n:0}function dur(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=Bo(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 Hz(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 g8e(t){let e=String(t??"");try{return decodeURIComponent(e.replace(/\+/g,"%20"))}catch{return e}}function fur(t){let e=String(t??"");try{return decodeURIComponent(e)}catch{return e}}function pur(t,e=""){let r=String(t||"").trim(),s=fur(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 b8e(t){let e=String(t||"").trim();if(!e)return null;let r=Bo(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=g8e(i.trim()),c=g8e(a.join("=").trim());o&&c&&(n[o]=c)}),Object.keys(n).length>0?n:null}function mur(t,e){let r=Ul(e);r&&!t.includes(r)&&t.push(r)}function gC(t,e=[],r=0){if(!t||r>4)return e;if(typeof t=="string")return mur(e,t),e;if(Array.isArray(t))return t.forEach(i=>gC(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&&gC(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&&gC(t[i],e,r+1);return e}function y8e(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=Ul(n);if(i){let c=b8e(s);return c?{url:i,header:c}:{url:i}}let a=Dc(e).match(/((?:https?:)?\/\/[^<\s]+)/i);if(!a)return null;let o=Ul(a[1]);return o?{url:o}:null}function Ub(t){let e=String(t||"").replace(/^\uFEFF/,"").trim();if(!e||/^<!doctype html/i.test(e)||/^<html/i.test(e))return null;let r=Bo(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let n=Ul(r.url);if(n){let s=b8e(r.header||r.headers);return s?{url:n,header:s}:{url:n}}}for(let n of e.split(/\r?\n/)){let s=n.trim();if(!s||s.startsWith("#"))continue;let i=y8e(s);if(i)return i}return y8e(e)}var Kz=class{publicKey=null;setPublicKey(e){this.publicKey=e}encrypt(e){let r=Buffer.from(e,"utf8");return Z0.default.publicEncrypt({key:this.publicKey,padding:Z0.default.constants.RSA_PKCS1_PADDING},r).toString("base64")}},jb=async t=>{Gz=t.server.db,qb=await Gz.getObjectDefault("/tyi",{}),qb?.cloud_account,qb?.cloud_password,Fb(qb?.cloud_cookie)},zz=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):J0.set("cloud_cookie",await this.login(this.account,this.password))}get account(){return J0.get("cloud_account")}get password(){return J0.get("cloud_password")}get cookie(){return J0.get("cloud_cookie")}async login(e,r){try{let n=await he.post("https://open.e.189.cn/api/logbox/config/encryptConf.do?appId=cloud"),s=n.data.data.pubKey;n=await he.get("https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html?returnURL=/main.action");let i=n.request.path.match(/reqId=(\w+)/)[1],o={"Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/76.0",Referer:"https://open.e.189.cn/",Lt:n.request.path.match(/lt=(\w+)/)[1],Reqid:i},c={version:"2.0",appKey:"cloud"};n=await he.post("https://open.e.189.cn/api/logbox/oauth2/appConf.do",bg.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 Kz;f.setPublicKey(d);let m=Buffer.from(f.encrypt(e),"base64").toString("hex"),p=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}${m}`,password:`{NRP}${p}`},n=await he.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",bg.default.stringify(c),{headers:o,validateStatus:null}),n.data.toUrl){let h=n.headers["set-cookie"].map(y=>y.split(";")[0]).join(";");n=await he.get(n.data.toUrl,{headers:{...this.headers,Cookie:h},maxRedirects:0,validateStatus:null}),h+="; "+n.headers["set-cookie"].map(y=>y.split(";")[0]).join(";"),J0.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=pur(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||n8e,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(`*${UB}*`)).length:0),0);return n.shareId,n.shareMode,Object.keys(s).length,s}async getShareInfo(e,r,n){let s=n||this,i=String(e||"");if(i.startsWith("http")?await this.getShareID(i,r,n):s.shareCode=i,!s.shareCode)return null;try{if(s.accessCode){let a=await he.get(`${this.api}/open/share/checkAccessCode.action?shareCode=${s.shareCode}&accessCode=${s.accessCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}});a.status===200&&(s.shareId=a.data.shareId);let o=await he.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),c=o.data.fileId;return s.shareMode=o.data.shareMode,s.isFolder=o.data.isFolder,c}else{let a=await he.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),o=a.data.fileId;return s.shareId=a.data.shareId,s.shareMode=a.data.shareMode,s.isFolder=a.data.isFolder,o}}catch(a){let o=a?.response?.status,c=a?.response?.data?.res_code||a?.code||"UnknownCode",u=a?.response?.data?.res_message||a?.message||"unknown error";return console.warn(o===400&&(c==="ShareAuditNotPass"||c==="ShareInfoNotFound")?`[Cloud ShareInfo] ${s.shareCode} unavailable: ${c}`:`[Cloud ShareInfo] ${s.shareCode} failed: ${o||"N/A"} ${c} ${u}`),null}}async getShareList(e,r="",n){let s=n||this;if(!e)return null;try{let i=[],a={};a["User-Agent"]="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",a.Accept="application/json;charset=UTF-8",a["Accept-Encoding"]="gzip, deflate, br, zstd";let o={method:"GET",headers:a},c=await r8e(`${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=Vz.parse(await c.text())?.fileListAO?.folderList;if(!d)return null;if(d&&d.length>0){let f=d.map(p=>({name:p.name,id:p.id,type:"folder",path:Hcr(r,p.name)}));i.push(...f);let m=await Promise.all(f.map(async p=>this.getShareList(p.id,p.path,n)));return m=m.filter(p=>p!=null),[...i,...m.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:Pc},i=await r8e(`${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=Vz.parse(await i.text()),o=[],c=a?.fileListAO,u=c?.fileList;if(!Array.isArray(u)||u.length===0)return null;let l=u.map(m=>m.name),d=u.map(m=>m.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 m=0;m<f;m++){let p=u[m],h=p.mediaType===3?n8e:our(p.name)?UB:"";h&&(this.cacheShareFileItem(d[m],n.shareId,p,{shareMode:n.shareMode,accessCode:n.accessCode,fileKind:h}),o.push({name:l[m],fileId:d[m],shareId:n.shareId,size:p.size,fileKind:h,shareMode:n.shareMode,accessCode:n.accessCode}))}if(o.length>0){let m=o.filter(p=>p.fileKind===UB).length;n.shareId,n.shareMode,o.length,o.length-m,o.slice(0,3).map(p=>p.name)}return o}catch(s){return console.warn(`[Cloud ShareFile] ${e} failed: ${s?.message||s}`),null}}async fetchShareTextFileFromUrl(e,r={}){let n=Ul(e);if(!n)return"";$t(n,260),Fb(r?.Cookie||r?.cookie);try{let s=await he.get(n,{headers:{...jz,...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?($t(n,260),s.status,s.headers?.["content-type"],$t(i),""):($t(n,260),s.status,s.headers?.["content-type"],i.length,$t(i),i)}catch(s){return $t(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{}$t(e,260),Fb(r?.Cookie||r?.cookie);try{let s=await he.get(e,{headers:{...jz,...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,$t(s.headers.location,260);let l=await this.fetchShareTextFileFromUrl(s.headers.location,r),d=Ub(l);return d?.url,Ea(d?.url),d?.header,{playable:d,authError:!1}}if(s.status<200||s.status>=300)return s.status,s.headers?.["content-type"],$t(s.data),{playable:null,authError:i};let a=typeof s.data=="string"?s.data:"",o=String(s.headers?.["content-type"]||"");if(s.status,$t(a),/json/i.test(o)){let l=Bo(a),d=gC(l);d.length,d.slice(0,3).map(f=>$t(f,260));for(let f of d){let m=await this.fetchShareTextFileFromUrl(f,r),p=Ub(m);if(p)return $t(f,260),Ea(p.url),p.header,{playable:p,authError:!1}}return{playable:null,authError:i}}let c=a.trim();if(/^[^\r\n]+$/.test(c)&&Ul(c)){$t(c,260);let l=await this.fetchShareTextFileFromUrl(c,r),d=Ub(l);return d?.url,Ea(d?.url),d?.header,{playable:d,authError:!1}}let u=Ub(a);return u?.url,Ea(u?.url),u?.header,{playable:u,authError:!1}}catch(s){return s?.message||String(s),{playable:null,authError:!1}}}async probeShareTextCandidateUrl(e,r={}){let n=Ul(e);if(!n)return{type:"invalid"};$t(n,260),Ea(n),Object.keys(r||{}).join(",");try{let s=await he.get(n,{headers:{...jz,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=Ul(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=lur(u)||(Number.isFinite(l)?l:0);$t(n,260),$t(o,260),s.status,$t(a);let f=dur(a);if(f)return $t(n,260),$t(o,260),Hz(f.data),$t(f.raw),{type:"cas_metadata",metadata:f.data};let m=Ub(a);return m?.url&&m.url!==n?($t(n,260),$t(m.url,260),Ea(m.url),m.header,{type:"nested_playable",playable:m}):/^video\//i.test(c)||/^audio\//i.test(c)||/application\/(?:vnd\.apple\.mpegurl|x-mpegurl|dash\+xml)/i.test(c)||h8e(o)||(s.status===200||s.status===206)&&d>1024*1024?($t(n,260),$t(o,260),Ea(o),{type:"playable"}):($t(n,260),$t(o,260),s.status,{type:"unknown"})}catch(s){return $t(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:$t(e.url,260),host:Ea(e.url),headerKeys:Object.keys(i||{}).join(",")||"-"};if(h8e(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:$t(c.playable.url,260),nestedHost:Ea(c.playable.url)},await this.confirmShareTextPlayableCandidate(c.playable,r,n,s+1);if(c.type==="cas_metadata"){try{let d=await this.getCasPlayableByRestoringToCloudDrive(c.metadata);if(d?.url)return{...o,restoredHost:Ea(d.url)},d}catch(d){let m=`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25${c.metadata?.name?` (${c.metadata.name})`:""}: ${d?.message||d}`;return this.setShareTextResolveReason(m),{...o,metadata:Hz(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:Hz(c.metadata)},null}return{...o,probeType:c.type},null}async initCloudPcLoginParam(){let e=this.cookie||"",r=he.create({headers:{"User-Agent":Pc["User-Agent"],"Accept-Encoding":Pc["Accept-Encoding"],Referer:mC,...e?{Cookie:e}:{}},maxRedirects:5,validateStatus:()=>!0}),n=await X0({method:"GET",url:`${mC}/api/portal/unifyLoginForPC.action`,params:{appId:MB,clientType:i8e,returnURL:a8e,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:Qz(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 X0({method:"POST",url:`${hC}/api/logbox/config/encryptConf.do`,data:bg.default.stringify({appId:MB}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":Pc["User-Agent"],Referer:mC},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}${c8e(l,this.account)}`,a.rsaPassword=`${u}${c8e(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 X0({method:"POST",url:`${hC}/api/logbox/oauth2/needcaptcha.do`,data:bg.default.stringify({appKey:MB,accountType:s8e,userName:r.rsaUsername}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":Pc["User-Agent"],Referer:hC+"/",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,$t(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 X0({method:"POST",url:`${hC}/api/logbox/oauth2/loginSubmit.do`,data:bg.default.stringify({appKey:MB,accountType:s8e,userName:r.rsaUsername,password:r.rsaPassword,validateCode:"",captchaToken:r.captchaToken,returnUrl:a8e,dynamicCheck:"FALSE",clientType:i8e,cb_SaveName:"1",isOauth2:"false",state:"",paramId:r.paramId}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":Pc["User-Agent"],Referer:hC+"/",REQID:r.reqId,lt:r.lt,...r.cookie?{Cookie:r.cookie}:{}},validateStatus:()=>!0},"pc-login-submit"),a=Qz(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 X0({method:"POST",url:`${ta}/getSessionForPC.action`,params:{...o8e(),redirectURL:o},headers:{"User-Agent":Pc["User-Agent"],Referer:mC,...a?{Cookie:a}:{}},validateStatus:()=>!0},"pc-get-session"),u=rur(c?.data)||c?.data||{};if(!u?.sessionKey||!u?.sessionSecret)throw new Error(`189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25: ${_a(c?.data)||c?.status||"unknown"}`);let l=Qz(a,c.headers?.["set-cookie"]);return l&&J0.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,Fb(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=o8e(),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"?eur(s.encryptedParams,o.sessionSecret):"",f=Zcr(),m=tur(o.sessionSecret,o.sessionKey,r,e,f,d),p=await X0({method:r,url:e,params:{...c,...u,...d?{params:d}:{}},...l?{data:bg.default.stringify(l)}:{},headers:{"User-Agent":Pc["User-Agent"],Referer:mC,Date:f,SessionKey:o.sessionKey,"X-Request-ID":Z0.default.randomUUID(),Signature:m,...l?{"Content-Type":"application/x-www-form-urlencoded"}:{},...a?.cookie?{Cookie:a.cookie}:{},...s.headers||{}},responseType:s.responseType||"json",transformResponse:s.transformResponse||void 0,timeout:s.timeout||15e3,validateStatus:()=>!0},`pc-request:${r}:${new URL(e).pathname}`),h=va(p.data);return(p.status===401||p.status===403||h.includes("InvalidSessionKey")||h.includes("userSessionBO is null"))&&!s._retried?(await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0})):p}async getCloudPcFamilyId(e=!1){if(!e&&this.pcFamilyId)return this.pcFamilyId;let r=await this.requestCloudPc(`${ta}/family/manage/getFamilyList.action`,"GET",{isFamily:!0}),n=aur(r?.data);if(n.length===0)throw new Error(`\u672A\u83B7\u53D6\u5230\u53EF\u7528\u7684189\u5BB6\u5EAD\u4E91 body=${$t(va(r?.data),260)}`);let s=String(this.pcLoginState?.tokenInfo?.loginName||""),i=n.find(o=>s&&o.remarkName&&s.includes(o.remarkName))||n.find(o=>Number(o?.useFlag||0)===1)||n[0],a=String(i?.familyId||"");if(!a)throw new Error(`189\u5BB6\u5EAD\u4E91ID\u89E3\u6790\u5931\u8D25 body=${$t(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=$B,o=r?`${ta}/family/file/listFiles.action`:`${ta}/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"}}}),p=(f?.data?.fileListAO?.folderList||[]).find(y=>String(y?.name||"")===a);if(p?.id)return this[n]=String(p.id),this[n];if(!Number(f?.data?.fileListAO?.count||0))break;c+=1}let u=r?`${ta}/family/file/createFolder.action`:`${ta}/createFolder.action`,l=await this.requestCloudPc(u,"POST",{isFamily:r,query:{folderName:a,...r?{familyId:i}:{relativePath:"",parentFolderId:s}}});if(l.status>=400||_a(l.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${_a(l.data)||l.status}`);let d=String(l?.data?.id||Tr(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(`${ta}/batch/createBatchTask.action`,"POST",{isFamily:a,form:{type:e,taskInfos:JSON.stringify(s),...o}}),u=String(m8e(c?.data)||""),l=_a(c?.data);if(c.status>=400||l||!u)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${l||c.status||"unknown"} body=${$t(va(c?.data),260)}`);return u}async permanentlyDeleteCloudPcItemsV2(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=!!r?.isFamily,i=s?String(r?.familyId||await this.getCloudPcFamilyId()):"",a=s?{familyId:i,isFamily:!0}:{},o=await this.createCloudPcBatchTaskV2("DELETE",n,a);await this.waitCloudPcBatchTask("DELETE",o);let c=await this.createCloudPcBatchTaskV2("CLEAR_RECYCLE",n,a);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",c)}async removeCloudPcRestoreFolderV2(e,r={}){if(!e)return;let s=!!r?.isFamily?"pcFamilyRestoreFolderId":"pcRestoreFolderId",i=[{fileId:String(e),fileName:$B,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=u8e(i),d=n?`${WB}/family`:`${WB}/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}:{}}}),m=l8e(f?.data)||{},p=_a(f?.data);if(f.status>=400||p)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${p||f.status}`);let h=String(m?.uploadFileId||m?.uploadFileID||"");if(Number(m?.fileDataExists)!==1||!h)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let y=await this.requestCloudPc(`${d}/commitMultiUploadFile`,"GET",{isFamily:n,encryptedParams:{uploadFileId:h,isLog:"0",opertype:"3"}}),g=d8e(y?.data)||{},A=_a(y?.data);if(y.status>=400||A)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${A||y.status}`);let b=String(g?.userFileId||g?.id||""),x=String(g?.fileName||a);if(!b)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:b,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?`${ta}/family/file/getFileDownloadUrl.action`:`${ta}/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(f8e(a?.data)||""),c=Dc(o).replace(/^http:\/\//i,"https://"),u=_a(a?.data);if(a.status>=400||u)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${u||a.status}`);if(!c)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let l=await X0({method:"GET",url:c,headers:{"User-Agent":Pc["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return l.status>=300&&l.status<400&&l.headers?.location?Dc(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(`${ta}/listFiles.action`,"GET",{query:{folderId:a,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(s),pageSize:String(i),recursive:"0",orderBy:"filename",descending:"false"},responseType:"text",transformResponse:[u=>u]}),c=_a(o?.data);if(o.status>=400||c)throw new Error(`\u5929\u7FFC\u76EE\u5F55\u83B7\u53D6\u5931\u8D25: ${c||o.status}`);return sur(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=$B,n=1;for(;n<=10;){let u=await this.requestCloudPc(`${ta}/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(m=>String(m?.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(`${ta}/createFolder.action`,"POST",{query:{folderName:r,relativePath:"",parentFolderId:e}});if(s.status,$t(JSON.stringify(s.data||{}),220),s.status>=400||_a(s.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${_a(s.data)||s.status}`);let i=String(s?.data?.id||Tr(s?.data,"id")||"");if(i)return this.pcRestoreFolderId=i,this.pcRestoreFolderId;let c=((await this.requestCloudPc(`${ta}/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(`${ta}/batch/createBatchTask.action`,"POST",{form:{type:e,taskInfos:JSON.stringify(s),...n||{}}}),a=String(m8e(i?.data)||""),o=_a(i?.data);if(i.status>=400||o||!a)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${o||i.status||"unknown"} body=${$t(va(i?.data),260)}`);return a}async permanentlyDeleteCloudPcItems(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=await this.createCloudPcBatchTask("DELETE",n,r);await this.waitCloudPcBatchTask("DELETE",s);let i=await this.createCloudPcBatchTask("CLEAR_RECYCLE",n,r);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",i)}async waitCloudPcBatchTask(e,r,n=300){let s=Date.now();for(;Date.now()-s<15e3;){let i=await this.requestCloudPc(`${ta}/batch/checkBatchTask.action`,"POST",{form:{type:e,taskId:r}}),a=i?.data||{},o=_a(a);if(i.status>=400||o)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u72B6\u6001\u67E5\u8BE2\u5931\u8D25: ${o||i.status||"unknown"} body=${$t(va(a),260)}`);let c=iur(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:$B,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=u8e(n);e?.create_time;let c=await this.requestCloudPc(`${WB}/person/initMultiUpload`,"GET",{encryptedParams:{parentFolderId:a,fileName:s,fileSize:String(n),fileMd5:r,sliceSize:String(o),...i?{sliceMd5:i}:{}}}),u=l8e(c?.data)||{},l=_a(c?.data);if(c.status,u?.fileDataExists,u?.uploadFileId||u?.uploadFileID,u?.uploadHost,$t(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(`${WB}/person/commitMultiUploadFile`,"GET",{encryptedParams:{uploadFileId:d,isLog:"0",opertype:"3"}}),m=d8e(f?.data)||{},p=_a(f?.data);if(f.status,m?.userFileId||m?.id,m?.fileName,$t(JSON.stringify(f?.data||{}),260),f.status>=400||p)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${p||f.status}`);let h=String(m?.userFileId||m?.id||""),y=String(m?.fileName||s);if(!h)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:h,fileName:y,folderId:a}}async getCloudPcFileDownloadUrl(e){let r=await this.requestCloudPc(`${ta}/getFileDownloadUrl.action`,"GET",{query:{fileId:String(e||""),dt:"3",flag:"1"},responseType:"text",transformResponse:[o=>o]}),n=String(f8e(r?.data)||""),s=Dc(n).replace(/^http:\/\//i,"https://"),i=_a(r?.data);if(r.status,Ea(s),$t(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 X0({method:"GET",url:s,headers:{"User-Agent":Pc["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return a.status>=300&&a.status<400&&a.headers?.location?Dc(String(a.headers.location||"")):s}async getCasPlayableByRestoringToCloudDrive(e){let r=[],n=[{isFamily:!0,scope:"family"},{isFamily:!1,scope:"personal"}];for(let s of n)try{let i=await this.restoreCasMetadataToCloudDriveV2(e,{isFamily:s.isFamily}),a=await this.getCloudPcFileDownloadUrlV2(i.fileId,{isFamily:s.isFamily,familyId:i.familyId});return s.scope,i.fileId,i.fileName,Ea(a),{url:a}}catch(i){r.push(`${s.scope}: ${i?.message||i}`)}throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25: ${r.join(" ; ")}`)}async getShareTextPlayable(e,r,n="",s="",i=0){if(!e||!r)return null;this.setShareTextResolveReason(""),!this.cookie&&this.account&&this.password&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F"));let a=this.getCachedShareFileItem(e,r),o=n||a?.shareMode||"",c=s||a?.accessCode||"",u=this.cookie?{Cookie:this.cookie}:{};this.cookie,Fb(this.cookie),a?.name,Ea(a?.downloadUrl);let l=gC(a);l.length,l.slice(0,3).map(m=>$t(m,260));for(let m of l){let p=await this.fetchShareTextFileFromUrl(m,u),h=Ub(p),y=await this.confirmShareTextPlayableCandidate(h,u,{source:"cached",fileId:e,shareId:r,candidate:$t(m,260)});if(y)return $t(m,260),Ea(y.url),y.header,y}let d=!1,f=this.buildShareTextApiCandidates(e,r,o,c);for(let m of f){let{playable:p,authError:h}=await this.tryResolveShareTextPlayableFromApi(m,u);if(p){let y=await this.confirmShareTextPlayableCandidate(p,u,{source:"api",fileId:e,shareId:r,api:(()=>{try{return new URL(m).pathname}catch{return m}})()});if(!y)continue;return(()=>{try{return new URL(m).pathname}catch{return m}})(),Ea(y.url),y.header,y}h&&(d=!0,(()=>{try{return new URL(m).pathname}catch{return m}})(),void 0)}return d&&i<1&&this.account&&this.password?(J0.set("cloud_cookie",""),await this.login(this.account,this.password),await this.getShareTextPlayable(e,r,o,c,i+1)):(this.cookie,Fb(this.cookie),this.getShareTextResolveReason(),null)}async getShareUrl(e,r){let n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"};!this.cookie&&this.account&&this.password&&this.index<2&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F")),n.Cookie=this.cookie;try{let s=await he.get(`${this.api}/portal/getNewVlcVideoPlayUrl.action?shareId=${r}&dt=1&fileId=${e}&type=4&key=noCache`,{headers:n}),i=await he.get(s.data.normal.url,{maxRedirects:0,validateStatus:function(o){return o>=200&&o<400}}),a="";return i.status>=300&&i.status<400&&i.headers.location?a=i.headers.location:a=s.data.normal.url,a}catch(s){if(s.response&&s.response.status===400&&this.index<2)return console.log("\u83B7\u53D6\u64AD\u653E\u5730\u5740\u5931\u8D25\uFF0C\u9519\u8BEF\u4FE1\u606F\u4E3A\uFF1A"+s.response.data),console.log("cookie\u5931\u6548\uFF0C\u6B63\u5728\u91CD\u65B0\u83B7\u53D6cookie"),J0.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}}))}}},Sf=new zz;var Ws=Ce(Zn(),1),Ue=wu;(function(t,e){let r=wu,n=t();for(;;)try{if(-parseInt(r(402,"*jfm"))/1*(-parseInt(r(260,"yB!I"))/2)+parseInt(r(319,"B(!("))/3*(-parseInt(r(541,"ngus"))/4)+parseInt(r(503,"d#Q7"))/5+parseInt(r(622,"9y[#"))/6+parseInt(r(353,"yB!I"))/7+parseInt(r(440,"!Bwf"))/8+-parseInt(r(327,"Hik!"))/9*(parseInt(r(467,"vQTN"))/10)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(FB,165708+-114081*1+537120);function wu(t,e){let r=FB();return wu=function(n,s){n=n-(-1*4220+137*31+-1*-223);let i=r[n];if(wu.sgDafF===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",m="",p="";for(let h=0,y,g,A=0;g=d.charAt(A++);~g&&(y=h%4?y*64+g:g,h++%4)?m+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=m.length;h<y;h++)p+="%"+("00"+m.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(p)};let l=function(d,f){let m=[],p=0,h,y="";d=a(d);let g;for(g=0;g<256;g++)m[g]=g;for(g=0;g<256;g++)p=(p+m[g]+f.charCodeAt(g%f.length))%256,h=m[g],m[g]=m[p],m[p]=h;g=0,p=0;for(let A=0;A<d.length;A++)g=(g+1)%256,p=(p+m[g])%256,h=m[g],m[g]=m[p],m[p]=h,y+=String.fromCharCode(d.charCodeAt(A)^m[(m[g]+m[p])%256]);return y};wu.xvxGqs=l,t=arguments,wu.sgDafF=!0}let o=r[4942*1+674+156*-36],c=n+o,u=t[c];return u?i=u:(wu.MDzKEI===void 0&&(wu.MDzKEI=!0),i=wu.xvxGqs(i,s),t[c]=i),i},wu(t,e)}function FB(){let t=["bhHiz8o0","zvpdQtu/","W5qfW6rlrg7dNSkeqZW","WPpcLNjP","WROBWRddOZRdPCo2W5ZdU8kJ","jCkTkmoYWOiS","tw4/","lmklo1K","kmoZu2pcMSkFWQq","W7XBWPq1W4VdIKfSWRe1","WR8DnwaQudbOwtddVfG","WPfJWOhcNfJcL8kuWQ3dKSoD","W6NcGCkwWOZcO8kTW5zZWP9W","wmkBW6amWQJcTW","kCkOW5FcJW","WOpdOgZcNq","lh1evSo9","z8oKWP/dHZhcKmoh","W5jmWP8P","l8o4leNcMHBcTLpcO0K","mSkMlmoLWOmVrG","W5BdJSoqW5lcGa","AYSrkte","W5mDW7PAzfWrW5b1W4ddU3RdOSkE","W4hcUM7cHq","DSoGWOZdGZu","qKOzW7nBW7CjWQNcQH8","Che0nc9PfSkjW77dMG","hhvPu3tcGxdcNwvsW4tdHW","FmkkymoNd8o4","tZ3cQuiGDa","WOKxW6vJBCoHWR8AWPjx","C0ZdQZ0LWPhdI8oJWRzX","kmoLz0xcNG","WQFcLNSZ","vSkxW6G0WOK","WOldQxNcUKxcKSoltmk2WRe","WRjtrXy","r2NdNrGu","BCoFg8khva","WRihWRi","WOddONS","W74lA8kucCk9WPC","WQTsxrBdOCk9W6tcRCoDnq","F8oZhSk3B1a7","WRRcMmorWRhdO8kLWOXGW5XL","WP0gW7bcCCoZWPOwWQbw","tXn0","AG7cHN0GFZS","BSkEWPOx","iCkVwSocpWaAhmordsb1","r8kxWRy6iW","q8kBWPRcMq","WQBdTfCiW4i","rweS","WPZcO35OtqHyDdRcMq","afpdTW","AmkoESoX","EmoBagBcVqxcQG","ALVdHHe","AIThmSoumrVdJmkeWRq","W5yoW7m","WO1YAJTPcH8UWQL2","A8o5tmkByfu8Aa","gvZdUmkxWQK","j8oqi17cKbe","WRddHeS8","h8ouW6fOFmoyW4VcVSktWRG","WOGBW71eymoY","sGHZhG","j8olieC","nMyGESk3","BCkoWR0Vha","awG3smo1W7auz8ozWPy","WRpdQCo+W5tcLqb6bCkEua","W4jkwqLW","W5FdVCocumkcW6P3DL8","WR1bWRKkgY7cISo3lCkJ","ExJdVaKR","W5uzwCkdtCoO","kmkyW4BcKCoVrSkS","ECkcB8o7dW","c8kwW73dPmovaCk5W4tcHW","WOVdRwdcJa","WQlcK8kIWPpdJvWSq8owbSkiWOXi","WOSCW7jcFmoWWRK","W5ZcRMNcJMO","ihacA8kOnCokW7BcJIm","W6jDCdL1bfLvErG","BdaQcYRdGgpcOvva","d8kakSkVW4FdKW","WPODW4jeD8oPWQmy","tG8eicW","h193ySol","WP1IlcvKkHGVWQ1/","s2NdLwb/W4VdTCowWOPk","W5umW7f+","jSogdtzrW7yWW4JcGmki","W4NdUCou","sIaQicRdNh7cVLPa","imkrW7FcSmoA","xtC7ecddNh7cL2fM","tcBcRLmirbW3W7C","WQpdSfq+W6G","W7RdGCoZWOBcVqH8qCoasG","W57dQmoeumkdW6nkF03dQG","F8knBW","W6NdPSokumkaW6f/pXpcOq","WRnnqbL8eXi","tuOMW4vk","m8osW5PEzmoXWPjqsSkrWQZcO1i","WRLCxqFdUSkWW6tcU8oDbG","mMjAqCoH","WO8EWR8","Bxu0hdvZp8kfW6/dNa","ymo7rt4","F28UuKqQEfFdVG","pSoZuq","WQfstGr6","WQ5CWRingY7cISo2fSkx","WQLnWQFcVq","WOtcM8o5W7ylaSkr","hCkJW7/dVCkuaSk1W5tcN8kI","hSkkxSkdW6xdUGq","qtxcTeW8qHK","bCoAp2JcTa","W7uUwSkvcG","i0NdJwiOW4m","W5pcRM7cIeRdLNxdG2ddJq","kSo3uxZcNG","zYm1zq","f1FdP8kaW6/dR8orW6NdPGe","pSkyWOxcH8o3qSk5W44","CmkttLuiWQq4W6VcMmkQWOtdKa","EL3dQa","W6TmWPuQW5BcHej7","F8oWgG","W6XFW5eSg8kmhh3cO8kC","qshcRKunCXO1W7tcMq","fmkNa0/dK1m","WR4aWQG","xGaudd8","WPfAWQaanWS","q0aFW6vsW7ut","WRCdWRNcPM3cUa","l8kUkSkgW7BdOwhcNv5k","mmkTo8oeWPi+qhCsW4G","kCkpW5FcJmoK","eCk9lfBdQhBcLG","W6ScW5HYcCoJW43cNG","g8kHivFdRG","qSkVWPZcLa","W5untmkahSkU","suOdW4DhW74","FSkgB8oHe8o6W5W","qdvQ","W4PfWO85W5W","WRHaWR8","C2mzW4j0","WQ7dILC","gmkMemkWW5G","j8otnK3cSq","WOBdOgO","W5PfWOK0W5W","AJRcOuyVqHO1W5BcGW","BSo5dSkF","W68wW4v0kmo4W44","BSo1qJnm","tNiZwW","WQLdWRHgyv0rW44rWRu","gJWRW7e4kW","W5CEW75yyfKuWPnuW6ddH1tdGG","teeeW5q","ASkcEmo7","E8kUWRCokG","bCkClSk6W5BdJ1/cPNTR","rmklWP0ommoL","fCkVhq","ECkrWQLG","jM1fFSo2ACkWWQVdKMG","WRqoWQPwWPTBW5LNWOFcMW","bJSKW60WjYTzW6Ow","W7zuuIzd","WORcJComW4umf8kanHJcNG","WRvfWR3cVKVcKG","zNuUoJrV","WO/cIColW6fpvW","t8kkWQeSn8kgWPhdH8kl","W7CdW6biCa","eYG5W74+przzW69t","W6NdI8oIW4/cLqnEsComda","WP9MzW","WR4kWQ4","W5jtW4ecamkFnwFcPCkD","f8kSb0hdUwm","xmkkWRWSaCkaWOtdVmkkW4W","W7xdG8o6W5lcNX8","W4/cOCkX","WR/dK8ouW77dPSoRWOKSWRPAWRpdOtDP","g2hdSCkeW5K","W7hdS8ohW63cLW","whRdJZix","Cmo5WORdIa","W6iiuHJdMSo4W4BcKCoeca","dqSkq3tcGItdQW8u","W6FdHCofW5lcIarXtq","xXnJ","WOSbW6jzA8oNW60mWRXF","WRrnqLNdOhO8W57dHCoJ","sCkxWR03ia","W7tcHCkwWQtcUCk3W7z5WOX9","WQTsxry","W7lcJv4","WRHvWPhcRehcUCkUWPddUmo9","WOFdM3ZcI2K","W5iqW6bMwhNdL8kFwdO","BqhcINOE","dcCU","W6VcISkb","ASoXvqHbrYKFgCo6","g8knW5VdTmolaW","oIeSW6u0ec1yW7bt","zSo1WP3dGJ7cLa","yXatmdi","W7fcW7aRnG","l8ksW6ZcPW","WRPpWQmF","W4niWPiZW5BcHhL7WR8Y","ySo5dIjCshyjomo1","DSklWPWunG","s28pq2m+y04","WP9MCsrO","ceBcVmkXW7BdUSoqW4tcQ0i","vHHUeCoxna","l8oBomkQxCk+WP1AWRNdHbJdNtq","nmkGlSoLWRKWvNCvW5u","W6eEW5H6nmooWOlcMCkGya","dIW5W5yKjYPzW7zF","xLVdJ0S","A3OGW7ne","WODeWQ8","W5/dUmoZW7BcGG","W5vlCcb0dqPd","W6mkq8kl","W5ddPSoJtCkEW6rWDW","wCkxW7G3WRJcSCooqmkYBG","D07dQt4+","xHX0fW","jmongHDaW6C2","cIGUW780","WOldQxNcUKxcKSoltmkGWRq","W4TaW5a","W4xcVxtcGa","oSospmoVw8k/WPS5WPVcHW","WPZcJwDfqq","W7hdImocB8kj","jCkTp8o7WPS8vW","r1OeW4XxW5uuWQhcKGi","kCoxdru","W6CzwmkvhG","pmkCW5hcIW","W7FdOCors8kjW45XFLldQG","yCkpWPO3p8kKW55KuSki","CmktWOddJKFdJb7dH8o2qa","DCo1aSkzr3C","W6OsW4jcfCoRW5dcLCkAlG","oSkVhKhcRcm","yuZdTZG4","g8knW5ZdPmobaW","x8klW44bWO7cQSoSxCk5AW","f1FdP8krW7BdUSoaW4VdPq4","WOZcHSoxW6OadSkhaaO","W5NcI8o7W40Ee8kd","jSoCo3NcNqlcQKlcUKS","lh5uzmo8ACkqWPhdQ0e","jwldLCkeW7y","WOiBW79Btmoe","FSo2gSkKyG","W64yW7PIcq","xLSLoXO","xguVqG","egTCqmoC","fmoxh10","umoDW6ylWQlcQ8kUcCkOya","W6CTW6jghW","W7qxrmkfgSkO","smkjWOKQpCkfWQRdU8kBW4e","tSktW74lWQG","yuJdQtGIWPxdG8oXWQy","oSk4kSoW","bcG9","sSkdW5OOWRC","W6BdOSooW5xcLG","W6pdI8oIW44","DSoUWOhdNZxcNCowjIS","c2WZ","gYWQW7iPia","rmkBWQdcMr7cKG","cmkdW73dVSoEnCk4W4pcJmk3","WR4JWOX/WOC","W7DpzW","DSkgBCoGd8kQW4TUWQ/dNq","DvNdRWiKWPpdMmoYWOPS","u8kZWOdcNHW","aCopvMhcPSoCWOahW5FdMW","BCoUbCkF","vHrI","WOhcKNfIvG","W7KyW7P+cSoVW5dcS8kYmW","kGSo","W4xcOe7cMxddMNRdGa","W7DbCcricXHuDdG","ASoXvqHbrYKFfmo1","h8kBdmk/W5NdKvFcOM4","WRisWPX8WRDvW5XSWR7cHG","W4CtsCkvta","WP10Eq","W5lcPM3cHwFdGwddGN3dIW","WOdcH8oCW6e","b8osWQxcScFcUNlcK8oGga","W6TlBtDVcW","mw1b","xW5Zh8ono1JdICkkWQy","nCoreaG","FvhdIWG4","WRHhWRKA","v8ojiCkHEq","nmoxoW","kCkDdmk5W4xcLK7cTNHT","vqaKW69gW6i3WQxcKqy","WRiiWR1QWOzuW58","sc5PjmoA","tgu/rhWOFG","WPbEWRuAmG","W5HzW4m","WQddGe0bW6tdQSoAW5S3WRW","mSonpupcMWtcSuhcKW","WQ1hWQ0B","u8kDW6GD","j8k6imo0WP8Sqq","WQTAWRfg","o8ksW5FcH8oL","W4JdRmoExSkyW6u","y8krWRtcTdC","WR5yA8kwc8kWWOTpxSkT","q8obBaHE","W4NdQmoa","umktW6eD","cIGbW6qL","CCoFbrjqW7KMW4lcVSk/","W5ngWO80","ov3dQdecW4ddIW","zK7dSJW","dmobWRrpW73dSCkYtCkYumoRWOtdRq","WOXRWQ8koXTiWPrRW60","Af3dRZGJWPZdVSo4WRr7","kSogaby","WRbVWRqDetxcKmokcSkR","BSo7DsjzqW","EmoGWP8","W5XLDwtdQvmjW6xdR8oK","tmkDW6mm","W7JdJ8oVW5u","W4G6iItcJ15zW7tdR8kz","wgeUrwa","s8kaWRSzj8kCWO3dOCkDW6q","W6FdI8oZ","WP1WDt3dKv9fW7NdOmoE","W4NcVCog","lmovcsXv","WRzorXHddI8cWPfn","WRTzWRRcUwBcLCkVWONdSmo8","sSk+W6uwWQy","W7tcVw/cGNdcK2tdLwRdNa","qhqOrNzIjrNdTby","B8oGWPVdGJ/cNCoQcI42","tCkWW7G9WRC","W4ldPSocFmknW652","6kwq5P+W6lA25y+95Asa6ls/","C8k0sSoPlq","A1mAq1C","W6znyd9Udq0","WRPnWP/cPNy","WP/cICowW6awdG","y2mblZjMlG","x3ldQryL","yCkpWPO0o8kKW5vGECkk","wSktW7Gz","tSktW7Gq","qmkFWPRcQXVcLKZdMSkjma","WRukWQXSW5WpWPG1W7ZdMG","vCknmCkAW7/dKeW","fq9fW7DAW7GFWQpcIb4","W77cGvRcSKpdPKddR0RdRq","W4ldUSo3W4pcJG","WPhcVCkccmoyWROSy1ddRmoDW6LL","BeRdNtSbW4NdG09GCG","E0/dMIm+WPpdKW","AxemlJq","sCoBWRVcUmkmv8oJW4VcH8k3WQyfbW","vhGSW4rN","l8ksW6VcGSo7uW","W6BcGCkPWQJcRW","o8o6tW","d8klemksW5JdGvdcIhHV","smkyWOtcNrdcGW","W5j7zx7cLaPBWQ7cPmoo","W55mWPijW5hcI0n7WPG/","WRxdP27cMHO","WOJdVgO","W6lcJCkmWQBcN8kD","F8kOgG","g8kHov3dQNi","hCkGdLBdO2FcMW","obpcSq","Bca6x3CRFHG","W5zxW7KWaq","vuaEW5rGW74AWR7cMIW","W6jfW64RW4muWPSIWOhcIa","zSk/WR0","DZK1","WQqgWQG","WRzCxG","WQaNW5XJCG","wCkxW7GWWQJcPmoMtmkUDG","sIFcL0uisrq6W7xcKW","WOxdHeO3WRRcVW","ASoXvqHbrYKFbCoM","qx/dRWq9","W6n7CtW","WR7cMmkbWQxcPmk2W5n5WPeO","W6eEW5H6nmoo","WOntWO4qeafrWO5oW6W","gCkbW6ZdOSoocmkK","dmkVW4xdLmoQ","WQfCwGVdNCk7W43cUSozea","CmoVaW","W6BdVmowx8kjW78","EfVdIaCrW5S","t2uOD3aSyLNdTrC","W6OsW4jqcmo+W4RcN8kHkq","BeRdNsamW4NdLu9cBq","nSkBihFdRq","x8krWQ4QjSkBWRldP8kBW6u","WOSaW6nFDW","W4RdQmoDxa","ASkpWOaaj8kT","lCogfWjnW78","WRfjWRFcMuy","umkDW7HyWR7cOmo2b8o8vq","zSkQW6S1WRW","c8kkcSkxW4ldGLBcQ2vN","W54wtmkjlCoQ","ogLsEmo9yG","gYyIW6m","kCkzW6hcQ8or","amkkemkXW4pdNG","WQhdMmoxW6tcNavZ","DSkHWRyafq","WRqoWQPwWPTBW5LNWOlcHq","FLxdTtOfWRy","nmkNaCo2WPC6","WQtdJmkNW4xdIGSNtmkDbW","sSkDW4axWRRcOmoWASk9DG","WPWxW7vcumoYWQe","zCoGWP3dMdxcOmokdJ03"];return FB=function(){return t},FB()}var hur=[Ue(414,"a9tW")+Ue(662,"PG8$")+Ue(317,"]Cc["),Ue(639,"%Uib")+Ue(477,"HhYR"),Ue(364,"%OY$")+Ue(280,"7mIn")],gur=new Set([Ue(424,"iuf2"),Ue(637,"(10b"),Ue(409,"$d7G"),Ue(585,"HhYR"),Ue(603,"lCS3"),Ue(405,"B(!("),"ts",Ue(276,"Hik!"),Ue(399,"b%wq"),Ue(367,"(10b"),Ue(434,"B(!("),Ue(690,"$d7G"),Ue(326,"d#Q7"),"rm",Ue(680,"B(!("),Ue(382,"!Bwf"),Ue(386,"OG7["),Ue(558,"Wp%#"),Ue(678,"0fLf"),Ue(705,"B(!(")]),_8e=(t={})=>{let e=Ue,r={VLtbG:function(a,o){return a(o)},ZDyXG:function(a,o){return a(o)}},n=r[e(427,"(8iK")](String,t[e(499,"l]Sp")]||t[e(439,"aqj@")]||"")[e(621,"%OY$")]()[e(277,"3d8O")](/^\./,"")[e(577,"(R!L")+"e"]();if(n)return n;let s=r[e(261,"IRo5")](String,t[e(264,"Wp%#")]||t[e(616,"9y[#")]||"")[e(512,"GrX*")]()[e(266,"9y[#")+"e"](),i=s[e(355,"PG8$")](/\.([a-z0-9]{1,10})$/i);return i?i[53*17+-3330+2430]:""},yur=t=>gur[Ue(403,"%OY$")](_8e(t)),Aur=t=>{let e=Ue,r={DkZLD:function(n,s){return n(s)},DcpBA:function(n,s){return n||s}};try{return r[e(612,"2jyP")](decodeURIComponent,r[e(394,"Hik!")](t,""))}catch{return r[e(457,"[#xL")](t,"")}},xur=t=>encodeURIComponent(String(t||""))[Ue(525,"Wp%#")](/\*/g,Ue(520,"D(S2")),bur=t=>{let e=Ue,r={mvpIl:function(s,i){return s(i)},qWAdT:function(s,i){return s||i},jZTWb:function(s,i){return s===i},rsDJe:e(418,"(R!L"),LFtkp:e(455,"ngus"),LRePx:e(609,"9p%7")},n=r[e(638,"*jfm")](String,r[e(669,"(8iK")](t,""));if(!n)return"";if(r[e(553,"(R!L")](typeof globalThis[e(272,"tcQi")],r[e(302,"3d8O")])){let s=globalThis[e(328,"$L#S")](n),i=Uint8Array[e(437,"l]Sp")](s,a=>a[e(504,"Wp%#")](-7*1335+-3092+12437));return new TextDecoder()[e(256,"m$Ne")](i)}return globalThis[e(421,"GrX*")]?globalThis[e(706,"(10b")][e(339,"Hik!")](n,r[e(307,"$L#S")])[e(513,"(10b")](r[e(510,"yB!I")]):""},Yz=class{constructor(){let e=Ue,r={iWFzG:e(314,"vQTN")+"0",bYQKm:e(376,"(10b")+e(661,"(8iK")+e(473,"iuf2")+e(532,"2jyP")+e(613,"GrX*")+e(438,"!Bwf")+e(588,"2jyP")+e(373,"yB!I")+e(343,"yB!I")+e(687,"$d7G")+e(659,"$d7G")+"6",tqVPz:e(301,"%OY$")+e(552,"9y[#")+e(501,"yV9U")+e(683,"%OY$"),WKxVx:e(484,"[#xL")+e(413,"7mIn"),tMJYQ:e(356,"m$Ne")+e(699,"vQTN")+e(336,"IRo5")+e(273,"7mIn")+e(632,"HhYR")+e(265,"yB!I")+e(618,"*jfm")+e(522,"d#Q7")+e(472,"62nP")+"|",EdZYk:e(329,"(qlW")+e(396,"%OY$"),AkrwN:e(643,"l]Sp")+e(636,"HhYR")+e(675,"HhYR")+e(497,"OG7[")+e(363,"%Uib")+e(391,"dlgl")+e(598,"(8iK")+"/"},n=r[e(648,"d#Q7")][e(576,"tcQi")]("|"),s=1*-104+282+-178;for(;;){switch(n[s++]){case"0":this[e(294,")R31")]={};continue;case"1":this[e(679,"vQTN")]="";continue;case"2":this[e(397,"PG8$")]={"User-Agent":r[e(469,"yB!I")],Accept:r[e(560,"9y[#")],"Content-Type":r[e(443,"IRo5")],"hcy-cool-flag":"1","x-deviceinfo":r[e(703,"dlgl")]};continue;case"3":this.x=Ws.default[e(487,"vQTN")][e(303,"tcQi")][e(556,"9y[#")](r[e(344,"E%9b")]);continue;case"4":this[e(274,"Wp%#")]=[/https:\/\/yun.139.com\/shareweb\/#\/w\/i\/([^&/?#]+)/,/https:\/\/caiyun.139.com\/m\/i\?([^&/?#]+)/,/https:\/\/caiyun.139.com\/w\/i\/([^&/?#]+)/];continue;case"5":this[e(393,"]Cc[")]=r[e(341,"IRo5")];continue}break}}[Ue(506,"aqj@")+Ue(624,"%OY$")+"n"](){let e=Ue,r={LgmWE:function(s,i){return s(i)}},n=hur[e(628,")R31")](s=>globalThis[e(608,"Wp%#")]?.[e(310,"0fLf")]?.[s])[e(594,"9p%7")](s=>String(s||"")[e(521,"PG8$")]());return r[e(550,"m$Ne")](String,globalThis[e(406,"lCS3")+e(371,"]Cc[")]||n||"")[e(592,"*jfm")]()[e(286,")R31")](/^Basic\s+/i,"")[e(574,"B(!(")]()}[Ue(271,"[#xL")+Ue(704,"62nP")+"er"](){let e=Ue,r=this[e(342,"b[I4")+e(448,"m$Ne")+"n"]();return r?e(445,"S[EB")+r:""}[Ue(281,"vQTN")+Ue(459,"yB!I")+Ue(596,"Hik!")](){let e=Ue,r={DtEhC:function(s,i){return s(i)},aQnZN:e(573,"3d8O")+e(450,"aqj@")+e(647,"[#xL")},n=this[e(254,"a9tW")+e(374,"(10b")+"n"]();if(!n)return"";try{return r[e(493,"lCS3")](bur,n)[e(536,"%OY$")](":")[4729*-1+-2363*2+9456]||""}catch{return console[e(335,"4xWW")](r[e(322,"4xWW")]),""}}[Ue(665,"$L#S")](e={}){let r=Ue,n={...this[r(380,"62nP")],...e},s=this[r(383,"b%wq")+r(479,"vQTN")+"er"]();return s&&(n[r(358,"iuf2")+r(428,"4xWW")]=s),n}[Ue(452,"ngus")+Ue(671,"vQTN")](){let e=Ue,r={nnkVx:e(540,"ngus")},n=this[e(708,"l]Sp")+e(458,"aqj@")+"n"]();return n?Ws.default[e(689,"(qlW")](n)[e(474,"yB!I")]()[e(425,"w708")](-6200+-1*3269+1*9469,-148+2*2838+-5520):r[e(381,"m$Ne")]}[Ue(567,"dlgl")+Ue(511,"E%9b")](e){let r=Ue,n={UArVe:function(i,a){return i===a},JPFwY:r(674,"2jyP"),rWUzO:function(i,a){return i(a)},krybq:function(i,a){return i||a}};if(e&&n[r(524,"(10b")](typeof e,n[r(697,"$L#S")]))return e;let s=n[r(347,"$L#S")](String,n[r(320,"IRo5")](e,""))[r(521,"PG8$")]();if(!s)return null;try{let i=this[r(601,"l]Sp")](s);if(i)return JSON[r(528,"GrX*")](i)}catch{}try{return JSON[r(633,"l]Sp")](s)}catch{return null}}async[Ue(312,"62nP")+"pi"](e,r,n=23004+-15004*1){let s=Ue,i={llRSL:function(c,u){return c+u},MNrGi:function(c,u){return c!==u}},a=JSON[s(345,"(10b")](this[s(354,"D(S2")](JSON[s(557,"%OY$")](r))),o=await he[s(480,"62nP")](i[s(369,"kXv[")](this[s(435,"(R!L")],e),a,{headers:this[s(693,"9y[#")](),timeout:n});return i[s(654,"%OY$")](o[s(707,"$L#S")],-6341+-8945*1+15486)?null:this[s(268,")R31")+s(404,"w708")](o[s(495,"9p%7")])}[Ue(640,"7mIn")+Ue(324,"tcQi")+"fo"](){let e=Ue;return{account:this[e(462,"lCS3")+e(296,"b%wq")+e(316,"(qlW")](),accountType:1}}[Ue(444,"a9tW")+Ue(490,"aqj@")+"nt"](e){let r=Ue,n={bWqbD:function(s,i){return s===i},pquAd:function(s,i){return s===i},QPaet:function(s,i){return s(i)}};return e?n[r(483,"0fLf")](e[r(627,"OG7[")],2979+-1*2976)?!0:n[r(285,"m$Ne")](e[r(489,"dlgl")],0)&&n[r(663,"yB!I")](yur,e):!1}[Ue(517,"*jfm")](e){let r=Ue,n={bVpsq:function(a,o){return a==o},gjvVl:r(491,")R31"),qzQvX:function(a,o){return a===o},omPYt:r(463,"9@d^"),FnOJt:function(a,o){return a!==o}},s=Ws.default[r(575,"(qlW")][r(385,"l]Sp")][r(652,"ngus")](-1*-3491+1*7311+5393*-2),i="";if(n[r(395,"GrX*")](n[r(546,"B(!(")],typeof e)){let a=Ws.default[r(330,"[#xL")][r(507,"$L#S")][r(398,"3d8O")](e);i=Ws.default[r(466,"vQTN")][r(289,"Wp%#")](a,this.x,{iv:s,mode:Ws.default[r(607,"9y[#")][r(635,"(10b")],padding:Ws.default[r(325,"yV9U")][r(340,"b[I4")]})}else if(n[r(451,"E%9b")](typeof e,n[r(593,"%OY$")])&&n[r(291,"iuf2")](e,null)){let a=JSON[r(582,"a9tW")](e),o=Ws.default[r(275,"l]Sp")][r(551,"*jfm")][r(498,"S[EB")](a);i=Ws.default[r(431,"4xWW")][r(682,"9@d^")](o,this.x,{iv:s,mode:Ws.default[r(384,"OG7[")][r(578,"aqj@")],padding:Ws.default[r(460,"%Uib")][r(677,"0fLf")]})}return Ws.default[r(475,"(qlW")][r(695,"4xWW")][r(351,"dlgl")](s[r(554,"GrX*")](i[r(586,"PG8$")]))}[Ue(423,"d#Q7")](e){let r=Ue,n=Ws.default[r(509,"!Bwf")][r(535,"9@d^")][r(500,"%Uib")](e),s=n[r(432,"w708")](),i=s[r(270,"%OY$")][r(411,"!Bwf")](-2219*4+22*253+3314);s[r(441,"(8iK")](s[r(610,"kXv[")]),n[r(306,"62nP")](i);let a=Ws.default[r(375,"d#Q7")][r(348,"GrX*")][r(605,"Hik!")](n);return Ws.default[r(688,"2jyP")][r(349,"kXv[")](a,this.x,{iv:s,mode:Ws.default[r(587,"ngus")][r(481,"PG8$")],padding:Ws.default[r(569,"E%9b")][r(584,"GrX*")]})[r(360,"D(S2")](Ws.default[r(486,"aqj@")][r(447,"IRo5")])[r(579,"PG8$")]()}async[Ue(366,"*jfm")](e){let r=Ue;this[r(565,"aqj@")][r(313,"B(!(")](n=>{let s=r,i=n[s(471,")R31")](e);i&&i[8*-122+-118*-49+-4805]&&(this[s(700,"(R!L")]=i[1])})}async[Ue(488,"OG7[")+"fo"](e){let r=Ue,n={SUfAs:r(505,"(R!L")+r(252,"9y[#")+r(570,"d#Q7")+r(629,"HhYR")+r(684,"l]Sp"),fjygD:r(514,"9y[#")+r(255,"GrX*"),uHXsl:r(597,"a9tW")+r(357,"E%9b")+r(332,"B(!(")};if(!this[r(408,"9@d^")])return console[r(416,"kXv[")](n[r(470,"$L#S")]),null;let s=this[r(400,"yV9U")+r(378,"(8iK")]()+"-"+this[r(263,"%OY$")]+"-"+e;if(this[r(518,"aqj@")][s])return this[r(350,"d#Q7")][s];let i=this[r(331,"%Uib")+r(626,"9p%7")+"fo"](),a={getOutLinkInfoReq:{account:i[r(650,"E%9b")],linkID:this[r(453,"7mIn")],passwd:"",caSrt:0,coSrt:0,srtDr:1,bNum:1,pCaID:e,eNum:200},commonAccountInfo:i};try{let o=(await this[r(686,"(8iK")+"pi"](n[r(430,"Hik!")],a))?.[r(516,"(qlW")];return this[r(436,"OG7[")][s]=o,o}catch(o){return console[r(713,"D(S2")](n[r(561,"yB!I")],o),null}}async[Ue(581,"OG7[")+"ta"](e){let r=Ue,n={EdFtz:function(c,u){return c in u},CSFuR:function(c,u){return c>u},mHRzt:function(c,u){return c(u)},rSiRy:r(318,"S[EB"),NUMSw:r(630,"9y[#"),edDHG:function(c,u){return c===u}};if(!e)return{};let s=e[r(315,"D(S2")](n[r(600,"(qlW")]),i=s?n[r(492,"iuf2")]:e;s&&await this[r(658,"2jyP")](e);let a={},o=await this[r(676,"w708")+"le"](i);o&&Array[r(653,"b%wq")](o)&&await Promise[r(672,"3d8O")](o[r(461,"$d7G")](async c=>{let u=r,l=c[u(442,"d#Q7")]||c[u(714,"(10b")];!n[u(290,"yB!I")](l,a)&&(a[l]=[]);let d=await this[u(295,"(8iK")+"l"](c[u(389,"7mIn")]);d&&n[u(362,"m$Ne")](d[u(715,"S[EB")],13*-66+363+9*55)&&a[l][u(338,"(qlW")](...d)}));for(let c in a)(!Array[r(417,"9@d^")](a[c])||n[r(258,"kXv[")](a[c][r(259,"a9tW")],-7*643+1188*3+-937*-1))&&delete a[c];if(n[r(258,"kXv[")](Object[r(287,"w708")](a)[r(454,"b%wq")],7363+-3*2851+-35*-34)){let c=await this[r(696,"OG7[")+"l"](n[r(614,"OG7[")]);c&&Array[r(390,"ngus")](c)&&n[r(649,"l]Sp")](c[r(611,"(10b")],1*171+1*2347+-2518)?a[n[r(387,"%Uib")]]=c:(a[n[r(485,"]Cc[")]]=await this[r(519,"0fLf")+"le"](e),a[n[r(595,"B(!(")]]&&Array[r(311,"GrX*")](a[n[r(692,"D(S2")]])&&(a[n[r(508,"(8iK")]]=a[n[r(711,"9@d^")]][r(337,"D(S2")](u=>u&&Object[r(625,"*jfm")](u)[r(589,"E%9b")]>-1*-6484+1350+-7834)))}return Object[r(631,"yB!I")](a)[r(412,"(8iK")](c=>{let u=r,l={NpbdL:function(f,m){return n[wu(568,"$d7G")](f,m)}},d=Array[u(666,"%OY$")](a[c])?a[c]:[];a[c]=d[u(282,"9y[#")](f=>f&&f[u(563,")R31")]&&f[u(533,"B(!(")])[u(590,"m$Ne")](f=>{let m=u;return{vod_name:f[m(352,"0fLf")],vod_id:[f[m(456,"IRo5")],f[m(545,"D(S2")],l[m(602,"9p%7")](xur,f[m(657,"9y[#")]),f[m(359,"a9tW")]??""][m(619,"w708")]("*"),vod_size:f[m(606,"9p%7")]}}),!a[c][u(502,"(qlW")]&&delete a[c]}),a}async[Ue(300,"D(S2")+"le"](e){let r=Ue,n={nozNc:r(527,"*jfm"),dUmld:r(257,"aqj@"),sBtEz:function(s,i){return s>i},XXgMq:r(642,"PG8$")+r(476,"D(S2")+r(401,"kXv[")};if(!e)return null;try{e=e[r(712,"IRo5")](n[r(523,"tcQi")])?n[r(372,"4xWW")]:e;let i=await this[r(534,"(R!L")+"fo"](e);if(!i||!i[r(617,"aqj@")])return null;let a=i?.[r(667,"b%wq")],o=a[r(691,"62nP")](d=>d[r(566,"2jyP")]),c=a[r(323,"l]Sp")](d=>d[r(657,"9y[#")]),u=/App|活动中心|免费|1T空间|免流/,l=[];if(a&&n[r(645,"9y[#")](a[r(422,"(8iK")],1*-137+1*-4258+4395)){o[r(646,"(10b")]((f,m)=>{let p=r;!u[p(549,"l]Sp")](f)&&l[p(293,"PG8$")]({name:f,path:c[m]})});let d=await Promise[r(309,"$d7G")](c[r(615,"(10b")](async f=>this[r(415,"Wp%#")+"le"](f)));return d=d[r(334,"Hik!")](f=>f!=null),[...l,...d[r(365,"[#xL")]()]}}catch(s){return console[r(515,"%OY$")](n[r(253,"9y[#")],s),null}}async[Ue(571,"%OY$")+"l"](e){let r=Ue,n={UPFEl:function(s,i){return s in i},kSbEC:r(419,"9@d^"),hedLD:function(s,i){return s!==i},tCwuZ:r(278,"w708")+r(591,"(qlW")+r(392,"a9tW")};try{let s=await this[r(655,"S[EB")+"fo"](e);if(!s||!n[r(544,"yV9U")](n[r(468,"yV9U")],s))return null;let i=s[r(547,"(R!L")];if(n[r(304,"9y[#")](i,null))return i[r(298,"d#Q7")](o=>this[r(694,"]Cc[")+r(530,"(10b")+"nt"](o))[r(564,"b[I4")](o=>({name:o[r(670,"kXv[")],contentId:o[r(494,"kXv[")],linkID:this[r(299,"]Cc[")],size:o[r(537,"dlgl")],path:o[r(529,"kXv[")]||"",coType:o[r(681,"9@d^")],suffix:_8e(o)}));if(n[r(251,"7mIn")](s[r(651,"7mIn")],null)){let a=s[r(685,"lCS3")][r(446,"9@d^")](c=>c[r(562,"yB!I")]),o=await Promise[r(426,"7mIn")](a[r(559,"aqj@")](c=>this[r(449,"$d7G")+"l"](c)));return o=o[r(465,"yB!I")](c=>c&&c[r(250,"*jfm")]>-14490+35*414),o[r(284,"0fLf")]()}}catch(s){return console[r(478,"IRo5")](n[r(308,"B(!(")],s),null}}[Ue(539,"yV9U")+Ue(283,"kXv[")](e){let r=Ue;return e&&(e[r(543,"m$Ne")]||e[r(370,"iuf2")+"L"]||e[r(388,"9p%7")+"L"]||e[r(673,"a9tW")+r(698,"E%9b")])||""}async[Ue(305,"0fLf")+Ue(538,"9y[#")+Ue(572,"2jyP")](e,r){let n=Ue,s={TKefZ:n(368,"iuf2")+n(433,"]Cc[")+n(641,"9y[#")},i=this[n(407,"]Cc[")+n(623,"!Bwf")+"fo"](),a={getContentInfoFromOutLinkReq:{contentId:e,linkID:r,account:i[n(599,"$d7G")]},commonAccountInfo:i},o=await this[n(464,"IRo5")+"pi"](s[n(548,"b%wq")],a);return this[n(531,"S[EB")+n(420,"2jyP")](o?.[n(656,"9y[#")]?.[n(346,"9p%7")+"o"])}async[Ue(262,"$d7G")+Ue(701,"!Bwf")+"ad"](e,r){let n=Ue,s={Xtypm:n(555,"IRo5")+n(333,"yV9U")};if(!this[n(634,"IRo5")+n(644,")R31")+"er"]()||!e)return"";let i=this[n(526,"(8iK")+n(288,"Hik!")+"fo"](),a={dlFromOutLinkReqV3:{account:i[n(702,"dlgl")],linkID:r,coIDLst:{item:[e]}},commonAccountInfo:i};return(await this[n(580,"E%9b")+"pi"](s[n(269,"m$Ne")],a))?.[n(321,"2jyP")]?.[n(267,"D(S2")]||""}async[Ue(542,"Hik!")+"ay"](e,r,n="",s=""){let i=Ue,a={cJZCi:function(c,u){return c(u)},sEJoz:function(c,u){return c||u}},o=a[i(361,"iuf2")](Aur,n);return this[i(709,"(R!L")+i(496,"w708")+"er"]()?await this[i(604,"4xWW")+i(583,"$d7G")+"ad"](a[i(410,"iuf2")](o,e),r):await this[i(710,"$L#S")+i(482,"7mIn")+i(429,"a9tW")](e,r)}},Jz=new Yz;var yZr=Ce(Zn(),1),de=Fl;(function(t,e){let r=Fl,n=t();for(;;)try{if(-parseInt(r(976,"Ipvi"))/1+parseInt(r(933,"*73("))/2+-parseInt(r(723,")R[X"))/3+-parseInt(r(1252,"E&eo"))/4+parseInt(r(897,"T68i"))/5+-parseInt(r(1136,"v9ET"))/6+parseInt(r(1210,"DDJ&"))/7===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(HB,296444+-674959*1+1003*1157);var em=de(547,"ohkY")+de(1097,"X$Ld")+"n",E8e=de(1555,"Qsov")+de(635,"HQPg")+de(1231,"Ce#p"),_g=de(534,"bjAB"),_ur=de(906,"j$fv")+de(1230,"DDJ&")+de(1164,"bTDW")+de(615,"T68i")+de(1523,"0)cK")+de(515,"i)v]"),Eur=de(795,"VJin")+de(1230,"DDJ&")+de(1020,"Ixfi")+de(748,"xbv%")+de(1153,"T68i"),vur=de(910,"bTDW")+de(943,"Qsov")+de(1547,"&7rQ")+de(798,"rNzt")+de(1340,"rPxp"),Sur=de(1385,"0)cK")+de(1156,"5*yu")+de(820,"HQPg")+de(836,"*4[e")+de(531,"4e5E"),Iur=de(514,"(c[^")+de(1335,"j$fv")+de(1197,"]qJ0")+de(712,"@vb6")+de(1314,")R[X"),C8e=de(1e3,"v9ET")+de(1411,"WR$Q"),Cur=""+em+C8e,T8e=de(610,"7D4Y")+de(666,"rNzt"),Tur=""+em+T8e,w8e=de(994,"bTDW"),R8e="3",wur=["a","d","e","f","g","h","l","m","y","i","j","n","o","p","k","q","r","s","t","u","b","c","v","w","s","z"],qB=de(1356,")R[X")+de(633,"E&eo")+"p",ai=t=>String(t||"")[de(686,"bTDW")]();function Fl(t,e){let r=HB();return Fl=function(n,s){n=n-497;let i=r[n];if(Fl.uqORuT===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",m="",p="";for(let h=0,y,g,A=0;g=d.charAt(A++);~g&&(y=h%4?y*64+g:g,h++%4)?m+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=m.length;h<y;h++)p+="%"+("00"+m.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(p)};let l=function(d,f){let m=[],p=0,h,y="";d=a(d);let g;for(g=0;g<256;g++)m[g]=g;for(g=0;g<256;g++)p=(p+m[g]+f.charCodeAt(g%f.length))%256,h=m[g],m[g]=m[p],m[p]=h;g=0,p=0;for(let A=0;A<d.length;A++)g=(g+1)%256,p=(p+m[g])%256,h=m[g],m[g]=m[p],m[p]=h,y+=String.fromCharCode(d.charCodeAt(A)^m[(m[g]+m[p])%256]);return y};Fl.mzJyTX=l,t=arguments,Fl.uqORuT=!0}let o=r[0],c=n+o,u=t[c];return u?i=u:(Fl.oPAanq===void 0&&(Fl.oPAanq=!0),i=Fl.mzJyTX(i,s),t[c]=i),i},Fl(t,e)}function v8e(t,e=-19*-369+-44*-64+-317*31){let r=de,n={AISof:function(i,a){return i(a)}},s=n[r(1181,"Ipvi")](Number,t);return Number[r(613,"Qsov")](s)?s:e}function Eg(t){let e=de,r=Array[e(1271,"n7&4")](t)?t:[t];return[...new Set(r[e(1133,")R[X")](n=>Number(n))[e(1215,"&7rQ")](n=>Number[e(1413,"bTDW")](n)&&n>-1910*-5+-9886+336))]}function Xz(t={}){let e=de,r={gYhKr:function(o,c){return o(c)},yhJhd:function(o,c){return o(c)},JoMie:function(o,c){return o(c)},wObXx:function(o,c){return o(c)}},n=r[e(1045,"@vb6")](Eg,t[e(1510,"FcCt")]||t[e(593,"3T^6")]),s=r[e(1416,"v9ET")](Eg,t[e(688,"bTDW")]||t[e(724,"8NXr")]),i=r[e(1435,"*73(")](ai,t[e(1206,"HQPg")]),a=r[e(1044,"BavK")](ai,t[e(1463,"5!50")+"y"]);return{fileIDs:n,shareIDs:s,shareUrl:i,resourceKey:a}}function S8e(t={}){let e=de,r={emUyy:function(n,s){return n>s},xUgOp:function(n,s){return n>s}};return r[e(1485,"E&eo")](t[e(588,"rNzt")]?.[e(1032,"8NXr")],1*-5378+1*-59+-1*-5437)||r[e(1421,"4e5E")](t[e(1014,"ha1q")]?.[e(1282,"5*yu")],-37*58+-1*-8383+-6237)}function eY(t){let e=de,r={cSmTZ:e(1106,"8NXr"),WCVKj:e(839,"5!50")};return Buffer[e(882,"rNzt")](t,r[e(792,"IxTj")])[e(1453,"4e5E")](r[e(1390,"3T^6")])}function N8e(t){let e=de,r={FBBWZ:function(n,s){return n(s)},GEXqG:function(n,s){return n||s},qpjMT:function(n,s){return n+s},dkhbu:function(n,s){return n%s},xgxZn:function(n,s){return n-s},xibNk:function(n,s){return n(s)}};try{let n=r[e(1194,"3T^6")](String,r[e(810,"i)v]")](t,""))[e(1037,"5*yu")](".")[1]||"";if(!n)return null;let s=n[e(862,"R![k")](/-/g,"+")[e(525,"DJ%s")](/_/g,"/"),i=r[e(1080,"4e5E")](s,"="[e(599,"PMrq")](r[e(640,"0)cK")](r[e(1259,"v9ET")](-645*-13+-1683+-6698,r[e(1389,"IxTj")](s[e(1354,"HQPg")],-1*1289+3411+6*-353)),4)));return JSON[e(744,"HQPg")](r[e(846,"E&eo")](eY,i))}catch{return null}}function Rur(t){let e=de,r={qQLrO:function(s,i){return s(i)},OwHlL:function(s,i){return s(i)}},n=r[e(503,"OI4h")](N8e,t)||{};return r[e(581,"OI4h")](ai,n[e(621,"h9l4")]||n.id||n[e(1398,"rNzt")]||n[e(1300,"WR$Q")]||n[e(953,"71z8")])}function Nur({uid:t,shareKey:e,sharePwd:r}){let n=de,s={LfrvN:function(u,l){return u(l)},pziOp:function(u,l){return u||l},Nnbwn:n(1091,"]qJ0")},i=s[n(853,"n7&4")](ai,t),a=s[n(999,"v9ET")](ai,e);if(s[n(1177,"@vb6")](!i,!a))return"";let o=new URL(n(718,"@vb6")+i+(n(532,"n9Kx")+n(1269,"t1zI")+n(642,"PMrq"))+a),c=s[n(1544,"*73(")](ai,r);return c&&o[n(957,"IxTj")+"ms"][n(513,"ohkY")](s[n(1473,"i)v]")],c),o[n(1233,"X$Ld")]()}function yC(t){let e=de,r={heSru:e(1406,"Ipvi")+e(1415,"v9ET"),zBpLM:e(1277,"rNzt")+e(1225,"7D4Y")};return{Authorization:e(1016,"4e5E")+t,Platform:r[e(543,"ohkY")],"Content-Type":r[e(1526,"FcCt")],Accept:r[e(1003,"t1zI")]}}function HB(){let t=["dempWQC","WPBcLmoU","W5xcV8ouWQWQ","W6DxWQVdSJS","W6L5oKBdQ2iYWP0","WRhcVCkZWPBdTG","vG3dMgbSlG","WRpcKJJcK8k2c2OQlXO","imo8vIldJG","vHddG3e","WRRcH8kzWOxdM8kA","amoPzdFcRW","yslcUSocWQG","fN/cIG","CCkwysRcNW","WRaZW4hcUW","nZFdPmkgWQLa","WPLpicRdHSoxa8oHzSk4","FSk7A8oxmG","W4mdmSklWQO","WOTSx13dSG","W6eXp8kK","tbeAW57cRW","mv7cQWij","WPrrWRVcISkJWQeaEa","p8kfqCo+WQS","W63cUmop","W7j7WR/cNCkcWQ0imSkvWOO","WP82WOtcImk7bW","WP7cI8kuWPldT8kmW6e","i8obvmo7WRdcRaTGWQ7cUa","zbykWO8Q","mmk3gqCbxG","WQqMWQWXWPVdPSoolq","imkbsSoxWQlcU0W","WP7cRmkMWQpdVW","WQHuzq","ucBcUSoHWQ4","W6dcSaXlaG","zgFcOSod5Psy5lQc572/5Bk25y2I55EM","WOfiWRfrWR8","sXRdJfTR","WQxdIx3dIq","peXu","k8k/pWtcGmofx8o/W5mB","gmo+qq","ou0dBrzHW7mltceqCNW","W6RcVCopE2pcGG1V","5BgY5PYi55Ia5B6t776o5B205Awr55QF5B2m","oCoBst7dMa","odFdPW","oenhWRnayCkkAq","WP82WP7cIG","WPSQFqpLIORKUQBKUA3MN47MIOhLIza","WRCOWQyl","sIejW5JcNrFdJmkMq8k+","W7v8ivtdOMeVWOxcMW","cbhdPSoscq","a8oMgCkmWRNcJSofW7apza","WRxdUeddTmoq","W4L3kKy","g8ogp8kvWRm","a3pcKGarWQqqoSk4","WR/dMSkOWPutsKW","f8oIgSkqW7pdImkcWOHrmG","W6ztWRpdHteBq3JcVmkj","CgFcR8oGWPTdb8kcd8kU","xM7dJxS","mSo4sHBdGCkg","u1ldGx9zW5FdVg7cGgi","j33cMZq/","yJCLWRaY","WQ5sBgZdSa","oSofWP8TWPC","WQjzWRNdGCkoWQ8amSorW4K","lCk8WPxdUmkBha","emkyWPNdICkV","sJajW57cIWW","WQ9CyCkK","WQjtDSkPuqZdPSoc","W7hdJmkUWPG","WPO9WOpcMW","C2ddRSoKWRresmoEwa","CqvzWORNPkZKVz/LPRNOT6i","5l+K5PYr5zg/5lQE","qaRdLMfRpLST","gmoTc8kvWQNcMCouW4W","WO1aC2VdPa","sbKXBaq","BXpdHSoZd8kUE3xcTa","W6vxWRpdOa","tbGRrZG","WOZdLSosvb8","WP56cdtdKCoIca","WRyJW6VcHYHOmqzAcG","W67cVd5Ska","WRdcI8kBWOFdPSkw","WOhcHSo+sCo4sCkvsSkEWQG","WQqZW4hcSG","WQVdKCoCvtDlASo3wbm","hY3dPmo+ha","f2hcPSo1WOZdJSkji0pdLa","WRapWQCpWP7dTSoi","CwJdTSoG","sYilWO0r","W4K3Ca","FIpcJCoMWR8","WPBcGSoKmmo+rmk5emklWRa","WQLADSoqWQa","hdZdPCoElq","uY7cJSoUWRdcT20H","W4j9W5RdGCo/qCkijg/cTG","WQqvW4dcMui","WRddK1ZdKCo1hNKhyaO","WPPxvKFdPG","x1BdOwPb","WQVdKCoyqXr3Dmo+","n8kJWPhcRmkPcNVdTSoDoW","WPaQWQlcJCkK","ewJcIWa","W7OeiSoYfLhcTmkbgLhdNNVcT8kU","kCkTWPBdK8kcah/dTmoCtq","WPu6WOBcISklcSouyuJcSG","W6rjWR3cUIW","W5rVWPBdTa4","dKSxWRldPWy","WPZcI8o8tCoY","xq86WQ4","W6pdICk2WPKg","iuXqWRDBzmkcFW","W4C/Bx03wHO4cGy","fCocratdIW","tb3dQ3fQmKSSW54Z","WRroCCoB","WRzuD8oDWQW","h8kSaSkkWRpcKW","kcBdT8oA","W71Fb3tdMW","wMtdNvneW5ZdI3q","W4ThW7/cKbq","WQ5tomkKvahcRCkaxWy","zsRdVmos","WPJcVCkKWQ/dHW","WRddK1RdLCo3eMuJ","sZCnW57dGYRdNmkbgSoN","W5LWl1hdQv8LWOpcMHG","w8k0FGpcNW","BMNdIgXoW6FdJxa","BCkZEre","WOuKW7NcIuC","j8kjxSobWOC","gmo0WQysWOC","nGpdLSom","5BIP55MZ5B2J5Awu6lsp","ixxcIqSPWRKqlCkfjG","W7ySW6yiWQrKxvzn56wi","WPhdL8oFxJ1lDCoM","W5xcRCo3","6k2N5yEX6i2T5yYM5BIe5l+J5A2XpeKz","WQVdOwyPcCkemrW+5yIw","WPVdOComxci","BqxdGCo/e8kGyNxcK14","ySkfg2RdHedcUmktieJdVCoava","W7NdNmk0","BCkZDadcImoJfG","W7voWRVcLa","WPFdLxpdHa","W6VcVCokWRyY","W7LIW4BcHd0","Dr5paKW","5lM/5Aw26lEN","tg7dKSoxWR0","mCk4WPhdOSkVdhVdUmobyq","W5aCrLa+","lmkKWO3dVSk7","5lUfACkIWO1PWOBNPldKV7dNM6VMLyC","WQzCzq","frVdImopsa","le0mWQJdRHVdU8katd4","Dmk8FKVcK8ocx8k9WOLj","ErtdH8offCkMExBcOW","taRdUgzRpeC","W7VcPIfH","W6RcVcz9","W5LWk0FdIMqSWOhcUWu","a8oBwJBcGa","f19lWRjMBCkokW","fCoHvH/dOCkbmezhda","WQzNvmkQDW","W4iGnSkIWOypDmkD","W6VcL8kjh0emnSkYtXC","6i665y6V55UVArbQ6lEH5y6V5OIA5yUV","EwZdRmoMWP9c","W5CHo8k1WQ0+BSkC","WQNcJtbstNHkaa","WQpcIZTEzeHucCk/WQu","WRKMWRi","CMZdTG","WQ/cHdvCAG","W6VcSCox","W4pcISkrWPulEev9hW","EGhdH8ojfCk1vNNcTLu","xCofWRWpWPRdT8oPWOnhpa","CMZdTSonWOjCtmoNt8o8","W5BcQCo3WQa","W4frpNpdVW","WPq2WP7cVmkNdSokyxxcUq","WQxdMg0","nSogxde","55MX5BY16l2Y5P6Z77236ysm5PAG55MR5B6p","WRuHW5dcOwFdJW","iI3dGCoAkCojWPFcOGZcPq","c1ZcLWKGWPOyoSkK","WQXyyCkkva3dRCoWdLy","iCkltmoGWQZcT1bJWRlcQq","W4lcQCoTWP4iqSk3WOtcQmkE","WR7cVCkVWRddPW","zwBdSCo1","axVcIGq","eCoPvG","WPxcL8o4D8oZta","W4iFpSk+WOa","oHZcHSoqsSk9jgZdQa","AJqmzY7dK8ojWPn6cG","jv9fWQXD","FWunWR8NWQRcG8oB","mCoArc3cKGy","WRJdUe8","jCk2kHyNuCkxW54","c3qHWR/dRa","bCoqycVcJG","W61tWQNdPIOe","aMJcTCkT","5y+V5PEd5lQE5yQ96kkw5Awo6lAT","qaVdJw0","Cg/dO8o0WODE","WRvSkdtdHSoXuq","WPzACSoAWQXcWR4ZlZe","W7tcLtXLi8k4pqfQ","WRTCE8kAvaNdSmocgLO","WPvIzCoYWOe","hbVdLCoWeq","bCk2fbaTASkfW5q","WQCZWQmAWO/dOa","WO1BlZ7dOa","W6eND8kMWRGhn8ojWR/cNW","bLaOWOddOa","W6GSnmkGWRWg","WOfqWRBcNCkiWOSiza","W7fYWOpdUs0","cxpcJre","lCottXldNq","WQddTvCxtY7dTgy","WQldLwxdHmomhW","WO/cKmolBmoVsSkT","AW87WP8QWQZcNW","WRrrWRVcISkYWQ4mCmob","WP/cImoZCSo1","af7cJYKI","wt4ttta","WOHUWRRcOCkh","gCoVWQyIWPZdVG","W5z6WO3cOru","sbZdIMD4oLS","WRtdNmoxvGvk","WQzPWOX7WP8","i0XuWRzrwSkFFWZcTW","WQbADSos","g8oSaCkx","ochdSSonp8o0WOFcTWRcUa","WRldSKldPCoH","W4OZEMO","W6rNW6O5WPpdVCoEkSkywq","WRhcI8kgWPpdS8kzWQq","sXBdJG","Fsqlqa","WQNcKCoEDSoVrmkJ","BaNdMCojmSkfyW","xmkgrmoVhG","uNhdJhb0W4ddMNRcL2y","WOmfWOKOWPK","WOhcHSo+sCo4sCkyumknWQK","WRr2WRrAWPjNEr4","WPFdLgJdK8oGk3WG","EHWDW4FcRq","lCoTWQqzWPa","kJddQ8o3Dq","sIeC","W78aWQxcHGNdUCkXjSojsq","W6iGnSkIWPCaEmkvW6G","i2FdK8k6W4VcLhiRFLW","WQhcI8oPW5a9tKXYwowiSa","aSoRcq","AJqm","WRLyzmkWqrVdT8oIbvq","lSkAtmoIWRddOGSHWQtcVW","nbZdVSkuW6W","sWKLWR8fWQ7cMSoB","oJVdSmo0gW","WQbqASorWR0","wImFWPeH","WPTkk1BdV2G","ymk0FGlcOSonamoLW58O","WOnlt8kutq","WRtdMmokrtDlASo3vri","WRRcH8kBWOq","AcilFdhdNCocWRXwgW","lCkTWPxdVSknb0JdVmoaCW","aCo4qG","EslcJmoSWORcVG","W7qrzLqv","xhldIG","hSoDtJBcUX3dS8kn","oJFcG8oLW4/dPdm","gCkvfbiq","W7BcVdi","yIeDrGhdHSolWRnTdW","W5tcOCoTWQu3u8kHWPNcNSkE","sXbBpwS9","iMNcRSo5","a3BcKqO3","WQv9W5hcTKldRSkejW","WORcJmoJCa","WRTlWPhcHSkdWQKzEa","BaNdM8oinmkXDx7cNf8","yGTA","Dbf9mey","WPT7swNdMq","WQ4XWPNdLXD0mt8F5yMZ","uConpmozW63dJCkFWO9eiq","nKHqWPTACSkbDG3cSG","WQWsWQuHWOO","tmkRsJtcMq","lwVcNq8F","CY7cJSoUWRFcSG","CrZdLgrDneW","5BIn5lI95PA/55QO5B+25zkn5P2B6l2u5zUlW7a","vJmgW4BcKr7dRa","WQ9qzCkqBW","CMZdTSowWO5izCoCwSo0","mSoawW3cMb/dPCkxjhu","zMZdO8oZWOHc","W4pcTc1caG","WOpcIZTEAuK","AZGutrFdSSou","o2/cMCo1W4y","g8kXdWSKvSktWP/cRxG","W6rfWRtdLtehshRcNmkA","W6RcSIz6nSkBjGy","FsBcKCoeWONcUfa2zL8","WPq2WP7cQ8kGgmowAfpcTG","WPXEFG","e8onc8kwWO4","AZakqxhcG8kuW6u3wG","tMtdNq","hsNdOLz/W7/dSZddHw8","aN/cIJeSWRSum8k/gG","hmoMg8kkWR3cMSou","AWWOWQ4","W77cSCoeE3u","WQmPWOZcUCkf","WQK8W5BcV1VdR8kvmq","qWVdLNK","WQaOWPeAWOJdUSouiG","vsSbW4q","W7DgWQpcKaJdTSoNia","FWu4WQ8UWRZcG8oXW6ea","zCkTyaNcMCopeCo4W5iv","fMxcOmoAW4RcICojyd7cJW","rbFdNwz2nfO","j8oCwY0","W7/cPmopD3K","zaHFpxC","W6JcTIzMm8kgnXDvuW","xKP8pvSFWQS5Bq","hmoZWQav","WRrrWRVcISkKWQq","WRxcLYrt","WQZcL8olBglcJGuLhSkQ","WR/cRCkWWPRdVq","emoZaq","6zQH5zI85PwH56UI5PAN5lUB5Asj6lwj","WPPGoJxdISoTfSoFySk1","wYNcGmo8WPa","6zQG5Ps75lU/6iws5zMB5Pwn56Us5Aw16lsK","js3dUSorpCo0WOpcOaBcPa","WRtdLSoqxW","fCoQgSkWWPG","W4z3kq","f8kHxSolWOK","u3ldH2zI","WQhdUeCqtW3dT03cKCod","a3xcJcaKWRuz","jJpdOW","W6xcOCoTW7DmgmoKWO/dRSof","mSoEFsdcJG","jIZdOmomo8obWOC","BGRdJ2nE","W5HLW6dcHY4","W49Gk0a","AGu9WPiKWRRcHCon","WRbZW4VcMwK2z34","WQ5TWPrAWOvnzq","W6bdWRpdQq","amkhvmo3WORcVa","WQZcJ8kgWPpdOSkrWRn4","E2BdTq","lSkQwHiKw8kBW57cThy","WQCIWRy","c3VcKWa","qmkEAmoml8oKWOi","WQjwCmoLyW3dOmoAaHW","W79baLpdIG","5y2/5Pcu5PEK5Pw35lQe","W7BdJgCveamitmkyWQe","5Oc855sP5lIN5lIv6l2w5OYx5y2C5ywa5BMW","peHxWQXuySkk","WPj5qmkxBW","WReZWQydWPG","oSkHWOBdHCkQ","W6RcVCopE0tcPXm","WOa3za","CIlcLSogWPFcUhuWBfW","yXGMWReE","WOldJmoGzIS","W6lcH8olF3/cHIn4sSo4","W7TIW57cLG","W5H9p1BdQx40WRFcLWe","WPfmC0NdJa","W5XIW57cKJ9RjIG","WQhdUeCqtW3dT1xcHmoe","gSoCuJdcMXJdOCowxIK","W6CLp8kMWQyBACkOW6JdGG","kSklf8oHWQVcUrvrWRNcQG","W6xcP8oIBh/cGHK","bgJcMZuPWRCikmkYga","W7BcLSotuKa","xrzela","WRTBzCkgxa","j8kEsmo+WQRcU0v6WQlcOa","sZyTWQmd","bXNdKmoAwG","WQRcQJvjrG","WRzWWRlcJSkjWQuF","l8kRCCoBWO8","vg/dGgO","sIWjW5JcMY/dV8kJ","WQ1XWRXg","fCoIhmky","i8olEHBcVG","aComeSktWRm","jwBdUComnCoiW47dSbVcPq","gSkxgdSP","tZqzwJVdHmkh","pwBcPSoQW60","WR3dPmkt","W5FdKCk5BSo8rCo7sCoyW64","gemvW6JdOrVdT8olEbW","W7i0WQ0BWOJdSmoFgSkFsW","z3RdP8o1W5z/FCo1emkL","WOvXWOhcHCk9","WRxdTfOayZRdSa","WO5sE1BdSthdT8ovyW","WP7dSKWmrHldOI3dLmki","WP5vFKe","vxxdNw5yWOJcKdpcIwW","WQpdMx3dRSo1hMufyHO","kCoUWQysWOi","ymk0yIZcTa","CCkPWOtdPCobgMVdUmoapq","W4WYqNC3","sSkbtmoFm8oWWOVcVs3dKG","WQ9/WQy","W5NdL8k8WP8+v1PO","W5aht2S3","oh9l","WOzuWR5CWRG","gCkYnHmb","Aru5WRyIWQZcLSokW7q","BaNdMCojmSkL","W63cJ8kkaKiwpSo4vZKSpcG","WO43W43cPW","DSk4yaNcKCopfq","pLL4keC3W6C5Arm","W6jkWRS","WQ3cLInluXCxq8kKWRa","ydtcHW","ASkYzW","W7tcOCoVWQq2qSkPWPi","WQCxWR/cImkd","ymkYzWVcNmodeCoOWPqt","DSk4yrdcLCoFbmoyW4KB","steBW4i","BaLE","tCkmxCoF","WO/dKmoxb0uzjSoQkKi","lmkTWOtdOmkpdh0","fL3cHZeg","iLLwWRzByG","WR1EwSoPWPW","WOa2WPJcMCkQhq","jZpdPSkwW7OhmCoOW73cQW","WRGIW60dWPhdT8otnW","W7lcNCkDWOhdOmkBW689F8ky","W4jhWPNcSri","WRaYWP7cV8kUgmoOAf3cRG","W5zKWOhdJHu","wSkeu8oB","EGhdGCoe","W7PmW4ZcKsTHia","WRhdL8oDvaLTya","WRmrW7BcI1O","WRfECmoKWRW","WQn/WQfj","W7LkWPZcHXm","l8kIWRFdPmkF","g8oVWRGjWPddQa","hcddVCkjBSkDW4lcQfNdTa","W7LBWRVcHrxcRCkLASowxW","WPFcOmoTuCoX","rXdcUSorWQy","xmkNECo5kq","scldU8o7hG","sxpdGhm","WPnOpsC","zYuEWRyK","W5PgWRVdMLpcPmk9A8kshG","aGZdM8knW4C","pmkgWPFdO8k8","wruTtXi","WPhdU2ZdRmoO","WORdTSobAYu","WQmeW6/cQKa","nmklsCoNWQBcQ1bbWRVcQG","WPtcOSoBDSo7","j8osxdhcMrxdRCkC","qSk3xSonW6tdHmkbW5WSv8oZWPBcJW","frtdQSoyBG","5lYy5P+I6icj6iY75yY4t2VdTCotya","W6NcPZr9m8kh","a3VcJaXQW6ncFSo+rW","shldJfPcW4ddMN/cKuC","nSkpxmobWRFcUvz6","WR/cUmkVWPNdVa","W5LWl1hdQu4SWOhcNG4","WPNcJCkLWRRdGa","W4BcP8oqWRuksSkQWPa","wwddNx8","WPxcVmo+CCo2tSk6","jCoRgSkwWQS","gcpdMSoUia","hCoaCtJdMW","W64Hs3u0","WO1BAfFdSq","o8k7bHePxCkx","bSkrjJy","sJaAW4pcKbJdOCkHtG","b8o5rWhdRCkRnq","WQjTWQz8WPHhEqKIW6G","eSo4sHBdGCkMiG","W6NdNmkP","W5pcVCo3WQK","W6eahSoN5OUEtMRcKmoSW54","WO1xF8k/qq","AWKLWR8cWOS","WRBcGCkCWO4","d8oJWQuiWPddQCo4","rXBdLNH8pfa","W7NcHqD9bW","6zoR772l5lU25P6H6yAZ5764572r6AcX55MY5B26","EaxdHCojgSk1","fCoHtW","nSkps8oHWRtcT1zQ","nhHwWRm","FGLBmvy","W6u5kSkRWQenEmkmW6tdGW","h0CzW6S","WOVdNK4drW","yrBdJNP1mL86W6GK","jCowwsZcKGFdTmk2g2i","rb3dNq","xSoHr8kyWQZcLmkEW4Wxya","FbFdTe5v","cqtdU8oIDW","vhldR3DfW5VdI3K","W5L0W4NcPae","W7ZdLSk7WPrDsbSZhKi","pfj6W7OeWR/cKSoqWRhOJ5i","lmkTWOxdUCklhgZdISoxCa","wWXlW6JcSLRcQSoesG0","Ad8lxsZdK8oOWQj8bW","WORdSmosFHy","WQddQfq","WQZcItiBz0HBb8kKW6K","WR5FFNFdNG","gSk+taddP8kmALfgaG","wISmW48","jJ7dTSos","f8kLWOpdNSku","kKJdVSoKl8kmxdZdULW","mX7dJCkhW4u","W5jEWPhdHsO","W5FcVIfQcq","WPRcH8kzWOxdM8kA","pSoDtWBcLbJdPCkybxi","WRv7WQrDWPjFAa","WR/dKmoxh0aqnCoIFrG","WODyDmk/tW","WP88WO0","tYueW5/cMWW","W6NcI8kkeEwjT+s6IEw3TowkIEw7PU+9UG","iSkfumoWWRy","lSoUWRupWPddISo7W4G","EGhdM8kd","WQZdNxO","WQVdOwyPfCk8fum+56EK","W7pcGrXtaG","ErddMCofdW","W6TSW4hcKJy","WQiCW5BcVhW","jNZcIIC8","W7j2WOpdJ8oCW7bdlCkFWPK","W7NdKSk/W5a1w0P3fWi","BXtdMmoHoq","W77cUmoABfG","W4rEj0/dQuePWPFcIW","yb8xW7/NVAtPOBdNQidLJ4ZMT6RLI5u","Dx7dNmkRW4S5cCklWQ3cOG","amonAmoolCoPWP7cUcNdGa","WQD5tCkCAq","W6NcP8oqsMlcIavKymoR","WP5Hr8oYWO0","EKtdGCogWRK","CYJcKmooWP/cTwG","WRhcJ8kf","WR/dMmkQWPLDwebWhqq","W6JcTCoxFW","bSo0crFdRCkonezl","qCkCxCoPeW","FIBcP8o7WPO","dfNdUgrPmvSjW5G0","WQ5PWP9NWO8","WPf2k04rrbS5oXO","omoTdSkwWPdcLmocW4S","FSoGWR/dHmk6iLtcSCksFG","WRSHWQq","mMZcSCo9W43cJSok","W6NcTIe","n8kRaqO","WPBdQvCc","jCkYhaeT","hSkTqmo0WQ4","aCkknbqe","WPDrWOz8","C2xdO8o1","WP/cTSkaWO3dGq","vq7dVgj0","WQzkWR7cGG","ddpcMUEBHUEzKow/P+wMJUI0UE+/QEIVTa","WQfqWRBcNCkiWOKPBG","WQ1uECkGBqW","ASkizqZcLa","WOpdUv0","mb3dH8ouq8osfgpcK8ku","W6VcSCoxtwxcGHjVy8oW","WRvDWQpcV8kiWQ4jDmokW54","W59kWRFcGq","6AkX6lAA5y++55UA5B+q","WQBdRLmHqWZdPMhcLCoI","WQBdRLm6tHFdSwFcGSos","W6aOlSkM","WQRcImkaWOtdOG","WOrHkdtdHSowa8oS","W5LSpeRdOMOPWOlcHG","y34swZhdMmkCWRfXca","WPqGW5pcTwO","WQm4WPRcI8kQ","pdiSWQ84WQO","imkHxCoZWQO","W6miW6C","W49QyrhcUInWW4RdIe4","jCosrJ3cMbK","W5mZChyuxWS/iWC","WPqvBbxcUXNdV8ouyYm","aerqWP1f","WQldJ8oWFbm","nmkgfWmB","zwJdSCoYWPXfw8ox","5lMP5zco44kR5AEq5Bgx5OIsDaj3kq","WPvoBLtdP0xcUCkx","imo5vbZdVW","WO1uECkGAGNdRSou","WQepW6FcOG/dUCoUkSowwW","xI7cLSkKW4VdPtDQoHK","zr4tW68bnSowFIFcLmkYW5CL","jJ7dTSkrW7O9aq","ihpcOSoKW7y","ocddQCoA","W69IW5NcHc9RjJu","xINdJ8ohpG","aMJcTCoUW4BcSSo+","W5L1WQxcOWq","oCkTWOddOCkxk3FdQSoCFG","mSkbDmo9WRtcVvznWQRcVa","W4pcOmomWO8X","EZ4CDZFdKG","WPu6WOBcISkdbSolCa","bCoKCapcRW","nKHqWOXDzmkDFY7cUG","xsSFW4tcKHddQCkJAmk2","WQnCzG","bSo0vWBdRCkrjq","tXysqta","mSkluCovWOe","WQP2ACoxWQfZ","WQJdMmolqHq","6iYw5y6a55UBkeOz5A6556gx5OMC5yU2","p15hWRbrBmkbFq","WRxcI8oRBmo4E8kJwW","qmocx8kpCSo2WPpcJJ7dHW","W7nAWR7dSWS","Bmk8yW","tSkjy8oUfW","gr/dUSk6W74","WOC+WP7cJSkG","zgtcPmod57+o6Acb56QQ6k2q5Rop5AE/","WO9FA1hdSqZdOSo3DMK","emk3gqCbxG","WQRdISoCruX3uSoumu4","sdNdRCkL","mSk/aqm","WRniWQFcG8keWQmmAConW5y","iCklta","qchdI3LO","WPLFDKhdObO","wrbiW6BLIOtKU5/MNRdOVldLM4FMK4e","d8oNWQquWPhdICoKW40eAG","W40ZD3W","amoJrWddOmkhnq","W6dcIXrqhW","iSkptmoZ","5BMQ5yQ/5lMX6zco5O+x5Asp6lsm","WRNdJmonwq","WRtdUei","jCk2fbaTECkEW5xdUtG","W6bfWQq","vcTUcKS","5Psh5z205zYO","AZGutrFdKG","W6XRW4VcHt1pmsG","B8o6W4FcRoE+V+MGMUERT+w/PUw4P+wiSG","WOlcGSo+FW","A8kTDqVcR8oyfCoHW4SL","W4JcPCoqWQCi","W51VW43cUHq","W7fxWRtdSI4dx2a","f8oQbmknWRNcJW","gcldMmomlq","jthdVmoudW","5l+85P+e6lYH5zI+WRlcMmkOycJdOG","WQlcHYn9vufunCkUWQe","gSoJWQaYWPFdSmoPW48csW","WRuGW5K","WQDOB8oNWPi","WQ4RW63cHMe","W60DdCk/WRS","WQ9QWQfyWOqwm0GcW6O","WQvOymkSqa","BmklErdcUW","hCk+uehcP8keof5lta","oH/cNCohsmoddupcL8kh","tMNdIc8","W6GMpq","WQtcISoTW4bgdrb4pwW7W7iE","WRzzWQpcJG","fmoSr8kjWRdcNmoiWPawBW","W5jnWQRcVIW","iKHq","dSoUWRupWPddN8o0W5WFFq","WRxcKdHpt1LbhmkU","pahdH8oBBmoeb1tcGCkx","uGlcUSo6WRK","bdpdQCoZtG","WOa7WOVcNCkQlmouyv3cUq","sIGbW4NcMW","rCkjtmomh8o8WRxcJIhdHW","WRjeumkNyq","jCowrtZcMHBdPCklo2i","W4TRW5JcMc8","jmkXaaWS","o8oNWQu7WQe","WQJdMmoxhXjnA8k9Aqy","FWeNWR4KWQi","lcZdPW","WQZdJ8oYvdS","WRztBGVcOuZcOCkwntO","WPnBD0e","wgpdVfLY","r8klrG","cCkAWRldG8kL","FGGOWQGUWOBcS8on","W4hcOmoIWRmDDSkwWRS","zs8HWOGQ","sgetWRtdRrNdV8olkf0","j8o5CdFdVa","hSkQA8oKWRy","e8oCxZFcMXVdOCkDpNu","pX7dG8oraSorvr7cLmkn","tG3dP8onaW","W6VcSCoxwgtcJWv5BCoG","W6/cPZmX","WQddTvCxtZxdPNS","WQe8W5hcOuhdOSku","aCoIg8kkWQZcKSodW4S","p0jt","zthcTCofWOy","WRlcJ8kyWOu","l8oAsHFcNa","WPtcHSo/BCo4","WOBcGYnEr0jkfq","W6XRW4VcHt1uiZu","xsSEFHq","W6myo8kSWO0","Aqe9WRS","Ar/dI2jx","WRldQein","WRaMWRyp","WPbSDdhdHSoHaSoPyCk1","xZaiqtRdTColWRD4bW","smkDwCosnmoMWPRcMYxdJq","W5L9l1hdR2uqWOxcJqe","W619d0VdQa","WQ/cJCoSCCorqSkNsW","jmk7bq4PwCkx","AHXdf1i8WQKzArm","WQvFzG","WRtdUei2qH/dSwFcPCoh","WRxcSxPOnSkDEWr3uG","atpdUSktW5SDnW","p8oCrtZcUX3dS8knlw4","BbDtkK0WWQm","mcxdPmk3W7aFimojW4lcVa","W4BcL8o2WRmuhG","zdjscfm","W510tGtcPu/cUmkipsW","WR/cJ8kwWOJdT8kHWRv1pCoo","WQLIDmkWuaa","5yQi5B2I44gh6yw2572o44c856UH5RU86lYq6kkm","ArHdoq","xqbHcfe","W79PWQBcMqpdG8o4jmosqa","W5JcPSoYzL0","WQ5YWRa","eSoJsr4","WRCRWQCpWPtdPSokf8kowG","qmkLeKBcVmoAzwfOmKFdQ0q","nuXqWR4","whpdM3fz","WOyWWQhcP8k8","AXzfhum6WQ8","W69yWONdUcK","W4vhWR3cMHe","lsddV8oAfSopWPhcPa","WOpdTKybtW","WPz5ia","WQlcHYm","fwhcOmo9","fmosWOmfWOy","WQpcJCoSW4rkbXL/k30hW6Wj","ywZdSCo1","EaxdKSojaW","BqxdGCo8hSkVDhNcTfC","iujxWQS","osBdPSorpG","W7NcI8oNWRex","nKHq","rG7cMmoiWQW","W6W9lSk3WRTunSoxW6ldNa","WQv5xSkFuq","AJqmEZBdL8ovWRDvaa","WOrSpq","WRPmWQpcN8kEW7PcmSolW4K","iLLjWQLE","rCkOeutcUSoBzGjzb3ddRLlcTW","W419oMFdO3OUWOJcKae","W5xcRCo3WO4irSkQWRBcU8ks","kmobuSoHWQZcTH9TWQpcRG","W5xcOqfHnmkBiW","zYlcK8o+WPVcPxqxyu4","W6RcV8o1v0S","W6lcRWvf5yIS5lUv6zg95O6N6ksc5PY2","W7fxWRpdQq","W6nkWR7cGapdPmo+fSojsq","WPpcKCoM","WPPOpsxdIW","oKhcPSo4W4e","kSoTWPiSWRa","BGhdGCon","WPVcISkLWRddGa","W4vVie/dO2WK","mNpcKfnXW61rmCoMqa","W6lcRWvfzq7dPMZdGEwkVq","W50Nf8kDWOq","W4q4CgWktZaMkqC","qZtdOCkPWPhdJSkkqGlcT8koW5VcOG","WQLtWR5mWP5E","qSk0FadcUCoi","W7VcMtX+nq","jmodrddcGW","yWtdP8ojcmkUzwlcUvu","W7fxWQNdNJ8zwxW","cSkIWRddMmkC","gmoFgSkE5yMB5lIU5P+r6lY75zQs55Mw","f0riWRP7zmkcFW","wg/cHh9BW5VcKs3dLZa","WQVdKCoyqXrRqSoH","rvtcQKv0W6zFECoRva","W4z9ietdUgu","W4xcUSofCuhcIHn+","WQDMoJi","WQLACG","WRDEy8obWQTPWP85kJO","sc0pW4hcUG","DSooemofWQRcTKbHWRZcVa","W7rfWQldSXCi","WRHLuSkVCa","kcJdP8oA","WQrYEmkrvG","WRDEy8obWQTPWOi3pd4","oCovrW","bgpcN8ouW5a","WQjkDCoaWRG","r8k+BSovpW","WRVcI8kbWRpdUSkFWRnPcCok","oSkPWOddRq","WPjQsxBdPG","ghpcLCoUW5hcMSod","kSkcBmoJWOS","WQxdKupdISox","W7BcTZb7bmkngHnZuW","xCkuwCoB","WOFcHZzjrv8y","f3/cJGKKWRuu","WPddTmo9qbq","W6vaWQ7cHHi","exe4WRldLW","WO5jDmkI","pMrpgMFcHCoKWRXpd8o2wq","oHNdOCofaW","oCk5osG9","zsJcKCo/","wMtdNq","W7JcPSocEMJcVaTVvG","oCk/eq","gK4cWRtdLW","jJ/dSmknW4aDkW","W7pdLSk+WPu","WR1uCCkGsZFdS8oDdeW","iJRdKSonkmohWPS","zGmXtZS","wrbiW6BdJqtdV8kkot8","v27dP8oqWPe","WQ5vWQldRYOjx3JcVmkp","W5uKANq","gvXhWRvV","WQvDWRu","ngLkWRLr","p1r8W695W7RdH8oOW741ASk+tW","W6dcKCoqWQqz","jWpdI8osBG","qr9flMW","iHSyoviWW6G+yXW","gKCnWQpdSaFdVW","W7XIW4BcMW","FSkFycNcVq","W6/cTCopCG","EmkNB8oXoG","psBdT8oGm8oc","mJpdO8kSW68rk8oMW67cRq","DHhdMgz8ceWY","dKSxWQpdIZa","CCkqAtBcOq","vmk0rGZcIq","W6P2W4pcKW","W67cGdPWhG","WOrHkdtdHSoknCoZ","W4lcVCoWWQK","WPyIWQmCWP/dOCkA","WQpdVeqerW0","mCk4WPhdOSk8cN7dR8oxyq","W5mZCMWDwqS","W4lcQCoTW68BtmkPW5JcUCkb","WRvDWQm","EcuEea","sYfh","WRDSWRPCWPHyzrCi","DcpcHG","W7jgWQVdQcO","WQhdUhiarHVdT2C","zqe6WPu8WQhcP8omW74v","WRmIWRyHWORdTSoubmkmsq","WQX2WRrfWO8","rI/cG8k6","otpdUCkeW6SC","ESkeu8oB","W7nzWQJdTq","ybXek0m+WQi","nbtdLSoZrmolaulcSmkD","zNNdRSoOWP8","W7zkWRS","W4KcBhiDra","lCo8WRiRWR8","buml","g2/cVCoY","lhm3WOtdRG","tGSkW7lcHG","WPPJCM/dPG","AWZdMq","xsuCW4S","pX7dHCoCq8oYfL0","WRPOWQGDWPxdVq","j8kcva","irtdK8oasmoueh7cGSkb","zJKzWPWd","qHZdJun8p38RW4K+","WOChW7FcH10","WP7cQCkaWOtdUa","W5PTpuS","psJdV8okpW","mGhdKSozrmoebuxcM8kl","WOxcGmk4WRRdNG","W73cTIfAlSkvjHDxwa","55UQ5B265OUF5yMQ","DSk4yrdcLCoFbmodW4SF","6k275yAC5AYV5OIolCosuJKp57+i","AtCPtHS","oH/dI8ob","gSoWsXy","W4PFWRpcRMTFgJRdOmoE","WP3dO8o1Dai","W5HbWQNcMIRdVSo5mq","m8osxdG","CG3dKgrv","rJRdTvLi","osZdOSokp8ovWPBcHb3cOq","WR5DWRNcImkzWQG","lJRdOmoRnConWOFcVIdcSG","W6RcVCopE0NcHGXVw8o8","sdhdJCoVfq","WRVcI8kbWQtdS8kkWQq","a3pcSCoOWP7cRSoUuKddNW","WQu3WQGJWQ4","WPWJWO/cGCkqdSoBz1NcPa","DtBdQKa","zCoRqLbXcCkXW57dJJbljq","AXbBpwS9","Ew7dNNbhW53dNNJcShe","scuztW","WRruFeVdMbBdPCom","W6JcTIr8i8khicv7va","dYBdPmornSojWOpcTdRcKG"];return HB=function(){return t},HB()}var jB=null;function Our(){let t=de,e={SjIQz:function(r,n){return r<n},iwJOx:function(r,n){return r&n},ufrOJ:function(r,n){return r^n},YnMZL:function(r,n){return r>>>n}};return jB||(jB=Array[t(1452,"n7&4")]({length:256},(r,n)=>{let s=t,i=n;for(let a=-4059+46*139+-2335*1;e[s(579,"Ce#p")](a,8);a+=1)i=e[s(670,"VJin")](i,-747*-4+-143*-27+-6848)?e[s(1213,"ohkY")](-1*-102648868+-2657253417+6542896933,e[s(1059,"n9Kx")](i,-9433+19*229+17*299)):e[s(611,"n7&4")](i,8149+-75*-86+-14598);return e[s(931,"j$fv")](i,-109*-67+11*-867+-2*-1117)}),jB)}function GB(t){let e=de,r={WGIWW:function(i){return i()},HvZQi:function(i,a){return i^a},zXAYY:function(i,a){return i(a)},SkKsw:e(1022,"Ipvi"),DSQOU:function(i,a){return i^a},tSoyX:function(i,a){return i>>>a},ROxZT:function(i,a){return i&a},pfpCx:function(i,a){return i^a},DQLBl:function(i,a){return i(a)},dGuJl:function(i,a){return i>>>a}},n=r[e(1227,"^!6A")](Our),s=r[e(1393,"DDJ&")](-2191*-2+-1*-7046+-5714*2,-(-1*-2560+3047+-5606));for(let i of Buffer[e(1452,"n7&4")](r[e(768,"5!50")](String,t),r[e(786,"Ce#p")]))s=r[e(1232,"n9Kx")](r[e(1013,"5!50")](s,-2033*-4+5113+-13237),n[r[e(560,"HQPg")](r[e(1528,"DDJ&")](s,i),8969*-1+-1882*5+2*9317)]);return r[e(1043,"&7rQ")](String,r[e(1202,"WR$Q")](r[e(1422,"t1zI")](s,-(996+7082*-1+1*6087)),1*9059+3807+-12866))}function QB(t){let e=de;return{QJFOg:function(n,s){return n(s)}}[e(1005,"xbv%")](String,t)[e(571,"0)cK")](-3*-3163+-7465*1+-674*3,"0")}function kur(t,e=w8e,r=R8e){let n=de,s={PiViy:function(m,p){return m+p},WBKFc:function(m,p){return m+p},PzfVJ:function(m,p){return m*p},UGeMm:function(m,p){return m*p},RcHry:function(m,p){return m*p},CXumS:function(m,p){return m(p)},TmpQF:function(m,p){return m/p},uUrtQ:function(m,p){return m(p)},FVdyH:function(m,p){return m(p)},vVEyf:function(m,p){return m*p}},i=s[n(1011,"t1zI")](s[n(1370,"4e5E")](Date[n(1496,"5*yu")](),s[n(1450,"bjAB")](s[n(1040,"qh23")](new Date()[n(1446,"rPxp")+n(538,"c4n6")](),-10*137+9124+-7694),1*-3449+7075+-2626)),s[n(559,"X$Ld")](s[n(1400,"OI4h")](s[n(1320,"E&eo")](-1*-3713+1*-3979+1*274,8419*1+302*29+17117*-1),2309*-1+-764+1*3133),8165+-353*17+-1164)),a=s[n(1250,"HQPg")](String,Math[n(818,"R![k")](s[n(1098,"rNzt")](i,1e3))),o=new Date(s[n(850,"Ipvi")](s[n(1374,"BavK")](Number,a),-408*4+-27*-22+2038)),c=[o[n(789,"(c[^")+"r"](),s[n(1147,"Ce#p")](QB,s[n(811,"*4[e")](o[n(1228,"Qsov")](),606*5+410*6+-5489)),s[n(1112,"BavK")](QB,o[n(1078,"n9Kx")]()),s[n(1311,"j$fv")](QB,o[n(1490,"3T^6")]()),s[n(684,"n9Kx")](QB,o[n(1512,"i)v]")]())][n(1042,"*73(")](""),u=[...c][n(1286,"4e5E")](m=>wur[Number(m)]||m)[n(594,"n9Kx")](""),l=s[n(1530,"3T^6")](GB,u),d=Math[n(1224,"IxTj")](s[n(1110,"@vb6")](Math[n(710,"E&eo")](),-3*6487862+50*336898+12618686)),f=s[n(1130,"VJin")](GB,a+"|"+d+"|"+t+"|"+e+"|"+r+"|"+l);return{key:l,value:a+"-"+d+"-"+f}}function Pur(){let t=de,e={BQxCn:function(n,s){return n*s},tmtao:function(n,s){return n(s)},nyXUO:function(n,s){return n(s)}},r=""+Date[t(843,")R[X")]()+Math[t(902,"Ce#p")](e[t(1077,"PMrq")](Math[t(821,"3T^6")](),-5*-122690681+-472696042+859242637));return t(605,"&7rQ")+e[t(753,"bjAB")](GB,r)+"-"+e[t(793,"WR$Q")](GB,r[t(937,"E&eo")]("")[t(1001,"&7rQ")]()[t(1537,"VJin")](""))}function Dur(t,e){let r=de,n={zcYBD:r(604,"j$fv")+r(915,"0)cK")+r(1079,"*73("),gwWmR:r(1058,"*4[e")+r(1541,"Ce#p")+r(1497,"R![k")+r(1511,"^!6A")};return{Authorization:r(1326,"ha1q")+t,platform:w8e,"App-Version":R8e,LoginUuid:e,"Content-Type":n[r(1128,"5!50")],Accept:n[r(1092,"Ixfi")]}}function AC(t,e){let r=de,n={uKqOo:function(s,i){return s>=i},DmRax:r(1554,"@vb6"),oWljy:function(s,i){return s!==i},nsnxI:function(s,i){return s(i)}};if(n[r(1104,"t1zI")](t[r(1333,"4e5E")],6348*-1+2980+1*3768))throw new Error(t[r(895,"*73(")]?.[r(1363,"n9Kx")]||t[r(523,"xbv%")]?.[r(886,"Qsov")]||e+": "+t[r(568,"5!50")]);if(t[r(895,"*73(")]&&Object[r(808,"(c[^")][r(1439,"i)v]")+r(1242,"*4[e")][r(1004,"FcCt")](t[r(1090,"&7rQ")],n[r(837,"PMrq")])&&n[r(1161,"3T^6")](n[r(1480,"Qsov")](Number,t[r(1188,"WR$Q")][r(1157,"Qsov")]),0))throw new Error(t[r(1070,"E&eo")][r(583,"R![k")]||e+": "+t[r(1180,"71z8")][r(1226,"Ce#p")])}function Bur(t,e,r=[0]){let n=de,s={lvimX:function(i,a){return i>=a},pwEvm:n(1144,"4e5E"),YRYRi:function(i,a){return i(a)}};if(s[n(1518,"@vb6")](t[n(1165,"DJ%s")],-1479+33*-162+1*7225))throw new Error(t[n(885,")R[X")]?.[n(1506,")R[X")]||t[n(542,"VJin")]?.[n(1241,"qh23")]||e+": "+t[n(1167,"BavK")]);if(t[n(1308,"rPxp")]&&Object[n(1024,"VJin")][n(1028,"3T^6")+n(1324,"n7&4")][n(1002,"c4n6")](t[n(553,"ha1q")],s[n(685,"n7&4")])&&!r[n(1176,"7D4Y")](s[n(775,"v9ET")](Number,t[n(885,")R[X")][n(1150,"^!6A")])))throw new Error(t[n(1516,"c4n6")][n(1447,"7D4Y")]||e+": "+t[n(855,"4e5E")][n(625,"BavK")])}function Lur(t){let e=de,r={uMySQ:function(n,s){return n(s)},lDXYM:function(n,s){return n||s},vfudp:e(1017,"h9l4"),ykylh:function(n,s){return n(s)}};try{let n=new URL(r[e(1010,"t1zI")](String,r[e(658,"DDJ&")](t,""))),s=n[e(859,"^!6A")+"ms"][e(904,")R[X")](r[e(700,"n9Kx")]);if(s)return r[e(1115,"0)cK")](eY,s);let i=n[e(1431,"5*yu")][e(679,"R![k")](2*-2317+-4617*-1+1*18)[e(646,"PMrq")]("&")[0]||"",a=i[e(1169,"DDJ&")]("=")?i[e(1218,"T68i")]("=")[-4890+-1*7183+12074]:"";return a?r[e(1347,"]qJ0")](eY,a):""}catch{return""}}function I8e(t){let e=de,r={eXrmq:function(n,s){return n(s)},zRfxC:function(n,s){return n||s},TrQxP:e(981,"FcCt"),GdPPR:e(874,"n9Kx")};try{let n=new URL(r[e(762,"n7&4")](String,r[e(1334,"ha1q")](t,"")));return n[e(564,"E&eo")]=n[e(1219,")R[X")][e(971,"rPxp")](/_24_24(?=\/|$)/g,""),["w","h",r[e(880,"FcCt")],r[e(927,"n9Kx")]][e(662,"i)v]")](s=>n[e(1397,"DJ%s")+"ms"][e(763,"@vb6")](s)),n[e(575,"Ixfi")]()}catch{return""}}function Mur(t){let e=de,r={cVZyn:function(n,s){return n(s)},BBSCm:function(n,s){return n||s},tvKeJ:function(n,s){return n||s}};try{return r[e(561,"WR$Q")](decodeURIComponent,r[e(1319,"&7rQ")](String,r[e(1125,"n9Kx")](t,"")))}catch{return r[e(572,"n9Kx")](String,r[e(823,"HQPg")](t,""))}}function Wur(t){let e=de,r={MmtcO:function(n,s){return n(s)},YgPVV:function(n,s){return n(s)},oHbrf:function(n,s){return n||s},TdwAF:e(1253,"n9Kx")};try{return r[e(631,"5!50")](encodeURIComponent,r[e(1261,"5*yu")](String,r[e(1532,"(c[^")](t,"")))[e(511,"t1zI")](/\*/g,r[e(1190,"Ce#p")])}catch{return""}}function $ur(t,e=!1){let r=de,n={LImYa:function(s,i){return s===i},YBiaU:r(596,"n7&4"),zmSfp:r(1310,"]qJ0"),zvIMb:r(1209,"rPxp"),GfJpv:r(589,"T68i"),UYQuP:r(1258,"c4n6"),bWHtj:r(674,"4e5E")};if(n[r(752,"8NXr")](typeof t,n[r(1341,"rNzt")]))return t;if(n[r(1542,"R![k")](typeof t,n[r(782,"Ixfi")])){let s=t[r(552,"Qsov")]()[r(732,"0)cK")+"e"]();if(["1",n[r(714,"HQPg")],n[r(1488,"c4n6")],"on"][r(1141,")R[X")](s))return!0;if(["0",n[r(1214,"71z8")],"no",n[r(1205,"Qsov")]][r(1451,"WR$Q")](s))return!1}return e}var Zz=(t,e)=>t?t+"/"+e:e,Uur=t=>Object[de(638,"BavK")](t||{})[de(1316,"E&eo")](Array[de(1524,"FcCt")])[de(683,"5*yu")](),tY,rY={},ii={set(t,e){let r=de;rY[t]=e,tY[r(1223,"IxTj")](r(1491,"c4n6")+t,e)},get(t){return rY[t]}},tm=async t=>{let e=de;tY=t[e(529,"bjAB")].db,rY=await tY[e(790,"qh23")+e(1325,"5*yu")](e(1403,"i)v]"),{})},nY=class{constructor(){let e=de,r={fOeai:e(1312,"PMrq")},n=r[e(707,"0)cK")][e(603,"v9ET")]("|"),s=-2*-1884+1589+-5357;for(;;){switch(n[s++]){case"0":this[e(899,"PMrq")]=/https:\/\/(?:www\.)?(123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/s\/([^/?#]+)/;continue;case"1":this[e(600,"rNzt")]=em+(e(1134,"t1zI")+e(1023,"BavK"));continue;case"2":this[e(955,"Ce#p")]="";continue;case"3":this[e(1235,"^!6A")]=/https:\/\/[^/?#]+\.share\.(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/123pan\/([^/?#]+)/;continue;case"4":this[e(1048,"*4[e")]=E8e+(e(498,"DJ%s")+e(984,"8NXr"));continue}break}}async[de(1238,"t1zI")](){let e=de,r={EcPZR:e(1281,"v9ET"),sGyTC:e(745,"OI4h"),ivCUa:function(n,s){return n(s)},Wuvaw:function(n,s){return n>s},OKapX:function(n,s){return n/s},WIVjP:e(1061,"ohkY"),oMCGR:e(1299,"PMrq"),cCLMQ:e(1138,"&7rQ")};if(this[e(842,"7D4Y")]&&console[e(1126,"IxTj")](r[e(574,"n9Kx")]),this[e(727,"c4n6")]&&console[e(637,"bjAB")](r[e(526,"rPxp")]),this[e(677,"R![k")]){let n=r[e(1121,"3T^6")](N8e,this[e(1132,"X$Ld")]);r[e(1199,"Ce#p")](n?.[e(1309,"rNzt")]||-5712+21*272,Math[e(1410,"rPxp")](r[e(1404,"R![k")](Date[e(1364,"n7&4")](),-5*827+1968+3167)))?console[e(801,"j$fv")](r[e(1550,"bTDW")]):(console[e(1478,"^!6A")](r[e(661,"5*yu")]),await this[e(1476,"HQPg")]())}else console[e(1135,"rNzt")](r[e(1072,"n7&4")]),await this[e(1454,"BavK")]()}get[de(784,"71z8")](){let e=de,r={KsvwG:e(1305,"Ixfi")+"rt"};return ii[e(1038,"ohkY")](r[e(1487,"n7&4")])}get[de(727,"c4n6")](){let e=de,r={jfbgJ:e(1329,"DDJ&")+"rd"};return ii[e(1247,"Ixfi")](r[e(1288,"(c[^")])}get[de(1465,"qh23")](){let e=de,r={kYPFH:e(939,"71z8")};return ii[e(772,"h9l4")](r[e(1052,"3T^6")])}get[de(1262,"DJ%s")+de(1349,"Ipvi")](){let e=de,r={qhONI:e(1081,"bjAB")+e(577,"]qJ0")};return ii[e(980,"Qsov")](r[e(733,"Ixfi")])}get[de(1018,"DJ%s")+de(1039,"OI4h")](){let e=de,r={KCdpo:e(1369,"Qsov")+e(1318,"R![k")};return ii[e(1021,"bTDW")](r[e(903,"Ixfi")])}get[de(697,"h9l4")+de(1427,"BavK")](){let e=de,r={ySCtU:function(n,s,i){return n(s,i)},gdJPJ:e(698,"h9l4")+e(1146,"^!6A")};return r[e(974,"&7rQ")]($ur,ii[e(761,"0)cK")](r[e(751,"xbv%")]),!0)}[de(1313,"Ipvi")+de(587,"VJin")+de(890,"ohkY")](){let e=de,r={ogLJu:function(s,i){return s(i)},etmMB:e(1248,"T68i")+e(512,"v9ET")+e(1179,"PMrq")},n=r[e(978,"R![k")](ai,this[e(809,"*4[e")+e(1182,"HQPg")]);if(!n)throw new Error(r[e(652,"PMrq")]);return n}[de(1053,"n7&4")+de(916,"5!50")](){let e=de,r={iQWKS:function(s,i){return s(i)},RIkOg:e(1063,"FcCt")+e(696,"X$Ld")},n=r[e(580,"rNzt")](ai,this[e(771,"HQPg")]);if(!n)throw new Error(r[e(620,"HQPg")]);return n}async[de(1429,"5*yu")+de(690,"t1zI")](){let e=de,r={oPSRr:function(i,a){return i(a)},ucKHs:e(1211,"DJ%s")+e(1012,"c4n6"),qigkD:function(i){return i()}},n=r[e(964,"@vb6")](ai,ii[e(1247,"Ixfi")](r[e(887,"bjAB")]));if(n)return n;let s=r[e(951,"BavK")](Pur);return ii[e(1444,"Qsov")](r[e(959,"*73(")],s),s}async[de(1481,"h9l4")+de(1302,"rPxp")]({parentFileId:e=8649+12*545+1*-15189,limit:r=100,searchData:n="",searchMode:s=1,lastFileId:i=void 0}){let a=de,o={GUBTs:function(l,d){return l!==d},eDnfd:function(l,d){return l!==d},pOzjo:function(l,d){return l(d)},fkVIF:function(l,d,f){return l(d,f)},nrSFb:a(616,"3T^6")+a(1323,"BavK")},c={parentFileId:e,limit:r};n&&(c[a(1145,"BavK")]=n,c[a(950,"IxTj")]=s),o[a(1054,"WR$Q")](i,void 0)&&o[a(1352,"ohkY")](i,null)&&o[a(995,")R[X")](i,"")&&(c[a(1394,"HQPg")]=i);let u=await he[a(772,"h9l4")](vur,{params:c,timeout:15e3,validateStatus:null,headers:o[a(1540,"7D4Y")](yC,this[a(914,"Ixfi")+a(1075,"Ce#p")+a(719,"rNzt")]())});return o[a(918,"FcCt")](AC,u,o[a(1336,"&7rQ")]),u[a(1070,"E&eo")]}async[de(1051,"*4[e")+de(934,"VJin")]({name:e,parentID:r=195*-50+-3611+-1*-13361}){let n=de,s={WtipL:function(a,o){return a(o)},fHZdZ:function(a,o,c){return a(o,c)},hqtWN:n(1418,"c4n6")+n(1243,"h9l4")},i=await he[n(1460,"E&eo")](Sur,{name:e,parentID:r},{timeout:15e3,validateStatus:null,headers:s[n(1071,"n7&4")](yC,this[n(1556,"X$Ld")+n(870,"8NXr")+n(1557,"qh23")]())});return s[n(629,"8NXr")](AC,i,s[n(667,"xbv%")]),i[n(780,"]qJ0")]}async[de(1407,"Ixfi")+de(814,"xbv%")]({name:e,parentFileId:r=-43*212+1636+7480}){let n=de,s=await this[n(1062,"t1zI")+n(654,"^!6A")]({parentFileId:r,limit:100,searchData:e,searchMode:1});return(Array[n(965,"*73(")](s?.[n(665,"FcCt")]?.[n(735,"bjAB")])?s[n(1193,"5*yu")][n(891,"Ce#p")]:[])[n(1395,"n9Kx")](a=>a?.[n(1137,"FcCt")]===e&&Number(a?.[n(969,"xbv%")])===11807+1*-11806&&Number(a?.[n(767,"rNzt")]||-25*-41+-9096+-1*-8071)===-3553+656*1+2897&&Number(a?.[n(1291,"PMrq")+"Id"]||-4138*2+-1*-3503+-1591*-3)===Number(r))||null}async[de(932,"OI4h")+de(867,"8NXr")](){let e=de,r={bXbaS:function(c,u,l){return c(u,l)},TDUgL:e(781,"t1zI")+e(1351,"qh23"),agfSD:function(c,u){return c>u},ShVDt:function(c,u){return c(u)},EHIDZ:function(c,u){return c(u)},qJEIF:function(c,u){return c>u},UYLpF:function(c,u){return c(u)},nnNyw:e(1381,"T68i")+e(1426,"ha1q")+e(497,"t1zI")},n=r[e(715,"R![k")](v8e,ii[e(1038,"ohkY")](r[e(558,"Ipvi")]),1*5719+46*-47+-3557);if(r[e(1240,"0)cK")](n,26*313+6219+-14357))try{return await this[e(562,"0)cK")+e(1328,"5!50")]({parentFileId:n,limit:1}),{dirID:n,name:_g,fromCache:!0}}catch{ii[e(909,"ha1q")](r[e(518,"bjAB")],"")}let s=await this[e(1220,"OI4h")+e(814,"xbv%")]({name:_g,parentFileId:0});if(s?.[e(1343,"X$Ld")])return ii[e(1483,"8NXr")](r[e(1229,"c4n6")],r[e(833,"rNzt")](Number,s[e(689,"DDJ&")])),{dirID:r[e(630,"71z8")](Number,s[e(777,"Ipvi")]),name:_g,fromCache:!1};let i=await this[e(1456,"3T^6")+e(743,"IxTj")]({name:_g,parentID:0}),a=r[e(1178,"Ipvi")](Number,i?.[e(553,"ha1q")]?.[e(1477,"7D4Y")]||i?.[e(855,"4e5E")]?.[e(1009,"&7rQ")]||i?.[e(1294,"Ixfi")]?.[e(1122,"R![k")]||9346+-1*9346);if(r[e(1263,"OI4h")](a,1*-7228+-21*112+10*958))return ii[e(806,")R[X")](r[e(518,"bjAB")],a),{dirID:a,name:_g,created:!0};let o=await this[e(1414,"PMrq")+e(968,"5!50")]({name:_g,parentFileId:0});if(o?.[e(1100,"n9Kx")])return ii[e(1377,"BavK")](r[e(1113,"rPxp")],r[e(1502,"^!6A")](Number,o[e(1084,"v9ET")])),{dirID:r[e(533,"ohkY")](Number,o[e(1424,"i)v]")]),name:_g,fromFallback:!0};throw new Error(r[e(889,"71z8")])}async[de(1517,"^!6A")+de(1391,"^!6A")]({parentFileID:e,file:r,duplicate:n=-32*-201+25*-121+3406*-1}){let s=de,i={dmpUK:function(o,c){return o(c)},etdmb:function(o,c,u){return o(c,u)},kRIge:s(989,"&7rQ")+s(1173,"BavK")},a=await he[s(1273,"5!50")](_ur,{parentFileID:e,filename:r[s(1066,"rNzt")],sha1:r[s(1322,"*73(")],size:r[s(726,"Ce#p")],duplicate:n},{timeout:2e4,validateStatus:null,headers:i[s(1428,"DDJ&")](yC,this[s(1303,"DDJ&")+s(1396,"Ipvi")+s(578,"7D4Y")]())});return i[s(1508,"4e5E")](AC,a,i[s(988,"Ipvi")]),a[s(1180,"71z8")]}async[de(608,"E&eo")+de(1515,"FcCt")+"te"]({fileID:e,shareName:r,shareExpire:n=2747+1699*3+4*-1961,sharePwd:s=""}){let i=de,a={WRFOK:function(l,d){return l(d)},CbeKJ:function(l,d,f){return l(d,f)},HZjVb:i(930,"h9l4")+i(770,"T68i")},o={shareName:r,shareExpire:n,fileIDList:a[i(1331,"Ce#p")](String,e)},c=a[i(535,"71z8")](ai,s);c&&(o[i(1536,"BavK")]=c);let u=await he[i(1307,"5*yu")](Eur,o,{timeout:2e4,validateStatus:null,headers:a[i(828,"DJ%s")](yC,this[i(863,"v9ET")+i(1437,"71z8")+i(1531,"*4[e")]())});return a[i(805,"ohkY")](AC,u,a[i(730,"ohkY")]),u[i(855,"4e5E")]}async[de(1148,"7D4Y")+de(1107,"ha1q")](e=[]){let r=de,n={nxokU:function(i,a){return i(a)},BlgML:function(i,a,o){return i(a,o)},yyEbE:r(1249,"5!50")+r(1474,"X$Ld")},s=await he[r(979,"i)v]")](Iur,{fileIDs:n[r(787,"Ce#p")](Eg,e)},{timeout:15e3,validateStatus:null,headers:n[r(1513,"3T^6")](yC,this[r(1007,"8NXr")+r(1430,"E&eo")+r(817,"c4n6")]())});return n[r(783,"c4n6")](AC,s,n[r(815,"DDJ&")]),s[r(926,"PMrq")]}async[de(1520,"h9l4")+de(1527,"v9ET")](e,r,n,{successCodes:s=[-6383+-13*-491],message:i=de(754,"8NXr")+"\u8D25"}={}){let a=de,o={dfQfE:function(f,m){return f(m)},gQakE:function(f,m,p){return f(m,p)},nDKZu:function(f,m,p,h){return f(m,p,h)}},c=this[a(1187,"]qJ0")+a(1366,"]qJ0")](),u=await this[a(1371,"]qJ0")+a(796,"DDJ&")](),l=o[a(1064,"Ipvi")](kur,e),d=await he[a(901,")R[X")](r,n,{params:{[l[a(1317,"h9l4")]]:l[a(1057,"Ce#p")]},timeout:15e3,validateStatus:null,headers:o[a(851,"j$fv")](Dur,c,u)});return o[a(907,"DDJ&")](Bur,d,i,s),d[a(1255,"ohkY")]}async[de(917,"i)v]")+de(1315,"3T^6")](e=[],r=1531*-3+-9534+14127){let n=de,s={CedSJ:function(a,o){return a(o)},iKePq:n(655,")R[X")+n(1260,"4e5E")},i=[];for(let a of s[n(623,"@vb6")](Eg,e)){let o=await this[n(617,"DJ%s")+n(948,"ha1q")](T8e,Tur,{driveId:0,shareInfoList:[{shareId:a}],isPayShare:r},{message:s[n(872,"v9ET")]});i[n(521,"BavK")]({shareID:a,result:o})}return{success:!0,results:i}}async[de(520,"t1zI")+de(1274,"^!6A")+de(1142,"bjAB")](e=[]){let r=de,n={MJoMP:function(s,i){return s(i)},sXGjT:r(779,"DJ%s")+r(1471,"(c[^")};return await this[r(1088,"5!50")+r(1217,"3T^6")](C8e,Cur,{fileIdList:n[r(1139,"rNzt")](Eg,e)[r(1266,"DDJ&")](s=>({fileId:s})),RequestSource:1},{successCodes:[-1396+-173*-5+-9*-59,-1*-1499+13637*-1+19439],message:n[r(954,"DDJ&")]})}async[de(765,"qh23")+de(1276,")R[X")](e,r={}){let n=de,s={jEWlo:function(c,u){return c(u)},bNcoR:function(c,u){return c(u)},OlCqI:n(1129,"8NXr")+n(1265,"Ce#p")+n(717,"c4n6")+"1",amJkR:n(1245,"VJin")+n(1174,"IxTj"),gmLcr:n(644,"5!50")+n(788,"n9Kx")+"D",QYgAI:function(c,u,l){return c(u,l)},WkFQE:function(c,u){return c(u)},SIzCR:function(c,u){return c(u)},ZZEAE:function(c,u){return c(u)},eDqLg:function(c,u){return c(u)},hViuK:function(c,u){return c(u)},BgeQz:function(c,u){return c||u},ImwRz:n(639,"HQPg")+n(567,"DJ%s")+n(591,"j$fv")+n(602,")R[X")},i={name:s[n(554,"3T^6")](ai,e?.[n(825,"@vb6")]||e?.[n(1137,"FcCt")]||e?.n),size:s[n(1151,"7D4Y")](Number,e?.[n(1099,"n7&4")]||e?.s||4*-2315+1*472+-2197*-4),sha1:s[n(1442,"7D4Y")](ai,e?.[n(626,"8NXr")]||e?.[n(1382,"7D4Y")]||e?.[n(1031,"i)v]")])[n(1203,"X$Ld")+"e"]()};if(!i[n(845,"n9Kx")]||!i[n(536,"xbv%")]||!/^[a-f0-9]{40}$/i[n(898,"5*yu")](i[n(800,"Qsov")]))throw new Error(s[n(506,"R![k")]);let a=-2982+-1697*-2+-412,o=8411+-5259*1+-3152;try{let c=await this[n(619,"Ipvi")+n(1425,"n7&4")](),u=await this[n(1384,"DDJ&")+n(706,"3T^6")]({parentFileID:c[n(1509,"DJ%s")],duplicate:r[n(507,"3T^6")]??-9843+-2*1705+13254,file:i});if(!u?.[n(1255,"ohkY")]?.[n(847,"]qJ0")])throw new Error(s[n(967,"X$Ld")]);if(a=s[n(554,"3T^6")](Number,u?.[n(803,"bTDW")]?.[n(1009,"&7rQ")]||-4273*-1+-1676*2+-921),!a)throw new Error(s[n(1204,"@vb6")]);let l=await this[n(755,"@vb6")+n(1159,"Qsov")+"te"]({fileID:a,shareName:s[n(557,"DJ%s")](ai,r[n(1552,"@vb6")])||i[n(1499,"rPxp")],shareExpire:s[n(1330,"IxTj")](v8e,r[n(807,"qh23")+"e"],-4991+5*497+179*14),sharePwd:s[n(925,"qh23")](ai,r[n(849,"c4n6")])});o=s[n(905,"i)v]")](Number,l?.[n(1168,"DDJ&")]?.[n(729,"*73(")]||l?.[n(1188,"WR$Q")]?.[n(586,"rNzt")]||-1173+63*-53+1504*3);let d=s[n(648,"WR$Q")](ai,l?.[n(852,"3T^6")]?.[n(778,"c4n6")]),f=s[n(660,"IxTj")](ai,l?.[n(877,"v9ET")]?.[n(701,"ha1q")]||l?.[n(855,"4e5E")]?.[n(830,"Ixfi")])||s[n(1348,"rPxp")](Nur,{uid:s[n(797,"t1zI")](Rur,this[n(1029,"4e5E")+n(659,"FcCt")+n(1275,"E&eo")]()),shareKey:d,sharePwd:r[n(1342,"h9l4")]});if(s[n(990,"5*yu")](!o,!f))throw new Error(s[n(627,"DJ%s")]);return{file:i,fileID:a,shareID:o,shareKey:d,shareUrl:f,tempDir:c,reuseResult:u,shareResult:l}}catch(c){if(s[n(1160,"rPxp")](a,o))try{await this[n(692,"*4[e")+n(1301,"Ce#p")+"s"]({fileID:a,shareID:o})}catch{}throw c}}async[de(1458,"*73(")+de(1525,"rPxp")+"e"](e){let r=de,n={ShvHd:r(919,"h9l4")+"\u5931\u8D25",XCxfm:function(u,l){return u(l)},uJPGt:r(1143,"^!6A")+r(1503,"T68i"),awYSh:r(764,"&7rQ")+r(776,"BavK")},s=this[r(865,"h9l4")+"ta"](e);if(!s)throw new Error(n[r(1162,"@vb6")]);let i=await this[r(1036,"*4[e")+r(1237,"Qsov")](s),a=n[r(606,"h9l4")](Uur,i)[8702+223*-1+-8479];if(!a?.[r(734,"Ipvi")])throw new Error(n[r(550,"xbv%")]);let o=n[r(680,"0)cK")](String,a[r(1006,"Ce#p")])[r(1026,"71z8")]("*"),c=await this[r(1440,"bjAB")+"d"](...o);if(!c)throw new Error(n[r(1355,"VJin")]);return{file:a,url:c,header:this[r(913,"^!6A")+r(1192,"4e5E")]()}}async[de(500,"xbv%")+de(938,"PMrq")+"s"]({fileIDs:e=[],shareIDs:r=[]}={}){let n=de,s={rlyrU:function(o,c){return o(c)},Fjjze:function(o,c){return o>c},rAQhf:function(o,c){return o(c)},iTWxs:n(1472,"ha1q")+n(875,"DDJ&"),mSFvd:function(o,c){return o(c)}},i={fileIDs:s[n(749,"71z8")](Eg,e),shareIDs:s[n(983,"&7rQ")](Eg,r)},a=s[n(653,"FcCt")](Boolean,s[n(1264,"DJ%s")](ai,this[n(590,"Ixfi")]));if(s[n(592,"DDJ&")](i[n(944,"HQPg")][n(1321,"71z8")],7862+-2407*4+1766*1))if(a)try{i[n(573,"^!6A")+"up"]=await this[n(921,"ohkY")+n(1027,"h9l4")](i[n(829,"3T^6")])}catch(o){i[n(812,"bjAB")+"up"]={success:!1,error:o?.[n(1486,"Ce#p")]||s[n(563,"]qJ0")](String,o)}}else i[n(773,"R![k")+"up"]={skipped:!0,reason:s[n(794,"j$fv")]};if(s[n(1267,"*4[e")](i[n(1367,"PMrq")][n(946,"^!6A")],-1*2452+-8056+10508))if(i[n(1152,"rPxp")]=await this[n(530,"8NXr")+n(879,"ohkY")](i[n(1434,"Ipvi")]),a)try{i[n(1285,"(c[^")]=await this[n(1073,"Ce#p")+n(1189,"HQPg")+n(766,"OI4h")](i[n(1551,"h9l4")])}catch(o){i[n(1212,"bjAB")]={success:!1,error:o?.[n(1353,"n7&4")]||s[n(1095,"n9Kx")](String,o)}}else i[n(1076,"FcCt")]={skipped:!0,reason:s[n(896,"qh23")]};return i}[de(900,"PMrq")+de(1327,"IxTj")+"up"](){let e=de,r={stmvk:function(s,i){return s===i},BGudj:e(527,")R[X"),aJiws:function(s,i){return s(i)}},n=ii[e(822,"Ce#p")](qB);if(!n)return{fileIDs:[],shareIDs:[]};if(r[e(911,")R[X")](typeof n,r[e(1055,"n9Kx")]))try{return r[e(936,"5!50")](Xz,JSON[e(582,"@vb6")](n))}catch{return{fileIDs:[],shareIDs:[]}}return r[e(1386,"8NXr")](Xz,n)}[de(816,"E&eo")+de(1475,"Ce#p")+de(675,"*73(")](e){let r=de,n={GJhLb:function(a,o){return a(o)},bSZPu:function(a,o){return a(o)}},s=n[r(1109,"j$fv")](Xz,e);if(!n[r(1306,"n9Kx")](S8e,s))return ii[r(1103,"rPxp")](qB,""),s;let i={...s,updatedAt:Date[r(516,"t1zI")]()};return ii[r(909,"ha1q")](qB,i),i}async[de(1522,"j$fv")+de(1392,"t1zI")+de(1175,"n7&4")](){let e=de,r={nSGkb:function(s,i){return s(i)},qPrzY:function(s,i){return s(i)}},n=this[e(694,"bTDW")+e(857,"Ipvi")+"up"]();if(!r[e(961,"xbv%")](S8e,n))return null;ii[e(676,"5!50")](qB,"");try{return await this[e(883,"4e5E")+e(1222,"n7&4")+"s"](n)}catch(s){return{...n,error:s?.[e(1035,"v9ET")]||r[e(977,"Ce#p")](String,s)}}}async[de(1412,"]qJ0")](){let e=de,r={qjChq:e(682,"VJin"),qrcKA:e(1521,"E&eo")+e(1362,"4e5E")+e(873,"@vb6")+e(524,"HQPg")+e(669,"n7&4")+e(555,"ohkY")+e(656,"8NXr")+e(651,"T68i")+e(1117,"bTDW")+e(1504,"(c[^")+e(569,"rPxp")+"6",GeAhd:e(858,"xbv%")+e(1049,"4e5E"),FaqFT:function(a,o){return a(o)},ukmQC:function(a,o){return a(o)},FwcSY:e(973,"ohkY"),AJktO:e(687,"Qsov")+e(876,"(c[^")+"\u914D\u7F6E",BGjin:e(1123,"4e5E")};if(!this[e(1438,"5!50")]||!this[e(716,"5*yu")])return;let n=JSON[e(1270,"PMrq")]({passport:this[e(1495,"n9Kx")],password:this[e(601,"0)cK")],remember:!0}),s={method:r[e(544,"DJ%s")],url:this[e(1284,"(c[^")],headers:{"User-Agent":r[e(1388,"Ce#p")],"Content-Type":r[e(860,"^!6A")],"App-Version":"43",Referer:E8e+(e(991,"71z8")+e(799,"*4[e")+e(871,"Ixfi"))+r[e(819,"qh23")](encodeURIComponent,em)+(e(1548,"4e5E")+e(856,"ha1q"))},data:n},i=(await he[e(595,"qh23")](s))[e(1538,"7D4Y")];if(!i?.[e(576,"Qsov")]?.[e(1185,"5!50")]){r[e(1368,"xbv%")](messageToDart,{action:r[e(614,"c4n6")],opt:{message:r[e(505,"VJin")],duration:5}});return}ii[e(1498,"4e5E")](r[e(741,"Ipvi")],i[e(1168,"DDJ&")][e(647,"c4n6")])}[de(962,"n9Kx")+"ta"](e){let r=de,n={ebUGY:function(c,u){return c(u)},YuIwJ:function(c,u){return c||u},yAIBX:function(c,u){return c>u},fASMM:function(c,u){return c+u},pvWNx:function(c,u){return c(u)},iEIIL:function(c,u){return c>u}},s=n[r(826,"Qsov")](decodeURIComponent,n[r(1257,"Ixfi")](e,"")[r(992,"OI4h")]());s=s[r(525,"DJ%s")](/[#.,,/\s]+$/,""),this[r(1373,"X$Ld")]="";let i=s[r(539,"HQPg")]("?");if(n[r(1376,"*4[e")](i,-395+-655*1+1050)){let c=s[r(813,"BavK")](n[r(1417,"@vb6")](i,1)),u=c[r(1198,"IxTj")](/(?:^|&)pwd=([^&]+)/i),l=c[r(923,"ha1q")](/(?:æå–ç |è®¿é—®ç |å¯†ç |code)\s*[::=]\s*([A-Za-z0-9]{4})/i);this[r(1283,"j$fv")]=u?n[r(844,"i)v]")](decodeURIComponent,u[-1*-367+-9810+-9444*-1]):l?.[1]||""}let a=this[r(1449,"FcCt")][r(1489,"^!6A")](s);if(a)return n[r(1534,"0)cK")](a[-686*-7+1893+-291*23][r(1254,"t1zI")]("?"),31*-197+-5922+12029)?a[-87*-97+7191+-15628][r(1461,"FcCt")]("?")[6937*1+-3018+-3919]:a[4951*-1+14*141+2979];let o=this[r(1359,"Ce#p")][r(1111,"j$fv")](s);return o?o[121*47+3952+-9638]:null}async[de(838,"FcCt")+de(1008,"n7&4")](e){let r=de,n={WTAvL:function(o,c){return o in c},yeXZT:function(o,c){return o>c},pDDxs:function(o,c){return o(c)},llTqH:function(o,c){return o>c},cCEzo:function(o,c){return o>c},cVRtA:function(o,c){return o===c}},s={},i=[],a=await this[r(908,"Ipvi")+"st"](e,this[r(641,"qh23")],8701+-11*791,-125*-5+69*121+8974*-1,i,"");if(a&&n[r(966,"0)cK")](a[r(1337,"j$fv")],2123+94*86+-10207)&&(s[r(1034,"71z8")]=a),n[r(1469,"n9Kx")](i[r(1321,"71z8")],0)){let o=await Promise[r(1116,"FcCt")](i[r(663,"n9Kx")](async c=>{let u=r;return this[u(1060,"5!50")+"fo"](c[u(840,"h9l4")],c[u(747,"]qJ0")],0,c[u(508,"PMrq")],c[u(1105,"WR$Q")])}));o=o[r(785,"7D4Y")](c=>c!=null),i=[...i,...o[r(683,"5*yu")]()]}i&&Array[r(1183,"ha1q")](i)&&await Promise[r(1050,"0)cK")](i[r(1041,"&7rQ")](async o=>{let c=r,u=o[c(537,"PMrq")]||o[c(1455,"ohkY")];!n[c(681,"R![k")](u,s)&&(s[u]=[]);let l=await this[c(737,")R[X")+"st"](o[c(1372,"VJin")],o[c(1332,"R![k")],-3863+-3099*3+13160,o[c(1122,"R![k")]);l&&n[c(528,"IxTj")](l[c(1074,"bTDW")],-587*4+-1*-2229+119)&&s[u][c(1056,"^!6A")](...l)}));for(let o in s)n[r(597,"5!50")](s[o][r(1186,"n9Kx")],-5090+-509*-10)&&delete s[o];return Object[r(1361,"OI4h")](s)[r(888,"v9ET")](o=>{let c=r;s[o]=s[o][c(1140,"8NXr")](u=>{let l=c;return{vod_id:[u[l(1338,"bTDW")],u[l(1433,"(c[^")],u[l(1290,"T68i")],u[l(1256,"X$Ld")],u[l(678,"h9l4")],n[l(1339,"71z8")](Wur,u[l(835,"E&eo")+"l"]||"")][l(1358,"7D4Y")]("*"),vod_name:u[l(720,"DDJ&")],vod_size:u[l(1033,"xbv%")]}})}),s}async[de(1296,"bjAB")+"fo"](e,r,n,s,i){let a=de,o={sCCXt:function(y,g){return y===g},cyHbk:function(y,g,A){return y(g,A)},RWXZX:function(y,g){return y||g},TIzkE:function(y,g,A){return y(g,A)},PyVPs:function(y,g){return y??g},kaEpd:function(y,g){return y+g},qDIUU:a(1383,"Ipvi"),mdAnO:a(1545,"FcCt"),teXIV:a(1172,"5*yu"),CftBy:a(774,"71z8"),XDSvu:function(y,g){return y(g)},BBNWe:function(y,g){return y!==g},QsvxU:function(y,g){return y===g},ZVmNj:function(y,g){return y(g)},EZLEs:function(y,g){return y>=g},teiGB:function(y,g){return y(g)}},c=[],u=o[a(878,"v9ET")](n,-68*56+-2947+7*965),l=-1*4853+687*-6+8976,d=new Set,f=new Set,m=y=>!(y==null||y===""||y===8*-345+9099+-1*6339||y==="0"||y===-(-1*-954+-332*7+1371)||y==="-1"),p=3*1014+3*1761+-8225;for(;;){let y=l+"|"+u;if(d[a(643,"X$Ld")](y))break;d[a(1025,"i)v]")](y);let g=await he[a(1287,"5*yu")](o[a(668,"i)v]")](this[a(1470,"7D4Y")],o[a(1149,"X$Ld")]),{headers:{},params:{limit:o[a(499,"OI4h")],next:u,orderBy:o[a(1102,"i)v]")],orderDirection:o[a(649,"rPxp")],shareKey:e,SharePwd:r,ParentFileId:s,Page:o[a(834,"0)cK")](String,l)}});if(o[a(551,"PMrq")](g[a(1096,"n7&4")],1*6557+-7609+1252))break;if(o[a(725,"*73(")](g[a(542,"VJin")][a(985,"T68i")],-6*317+-1492*1+-29*-293)){console[a(1405,"5!50")](g[a(769,"0)cK")][a(1447,"7D4Y")]);break}let A=g[a(699,"j$fv")][a(759,"R![k")];if(!A||!Array[a(987,"Ce#p")](A[a(672,"7D4Y")]))break;A[a(1402,"E&eo")][a(1345,"3T^6")](x=>{let S=a;if(o[S(540,"WR$Q")](x[S(848,"(c[^")],0)){let T=x[S(1494,"0)cK")]+"|"+o[S(1208,"bjAB")](Zz,o[S(736,"E&eo")](i,""),x[S(942,")R[X")]);if(f[S(750,"t1zI")](T))return;f[S(609,"n7&4")](T);let I=o[S(728,"PMrq")](Zz,o[S(549,"i)v]")](i,""),x[S(1114,"bTDW")]);c[S(1015,"Ixfi")]({filename:x[S(1200,"i)v]")],shareKey:e,SharePwd:r,next:0,fileId:x[S(1158,"rNzt")],path:I})}});let b=A[a(510,"WR$Q")];if(o[a(1350,"bTDW")](m,b)){u=b;continue}if(Array[a(1492,"VJin")](A[a(502,"T68i")])&&o[a(1068,"HQPg")](A[a(1069,"ohkY")][a(1399,"i)v]")],p)){l+=1,u=61*-67+904*-7+10415;continue}if(!o[a(742,"0)cK")](m,b))break}let h=await Promise[a(1046,"PMrq")](c[a(949,"IxTj")](async y=>this[a(1251,"PMrq")+"fo"](e,r,-5049+3*1683,y[a(1466,"bTDW")],y[a(920,"71z8")])));return h=h[a(545,"qh23")](y=>y!=null),[...c,...h[a(1448,"3T^6")]()]}async[de(693,"FcCt")+"st"](e,r,n,s,i=null,a=""){let o=de,c={WZLnX:function(g,A){return g===A},ZuYWZ:function(g,A){return g(A)},QitBp:function(g,A,b){return g(A,b)},fqwsp:function(g,A){return g||A},TjDTr:function(g,A){return g??A},RYSea:function(g,A){return g+A},qCgOl:o(894,"(c[^"),oOmTr:o(708,"bTDW"),Leazk:o(1346,"bTDW"),khamx:o(1401,"Qsov"),QOfYJ:function(g,A){return g(A)},GCKPb:function(g,A){return g>=A},KArdb:function(g,A){return g(A)}},u=[],l=c[o(940,"DJ%s")](n,3*891+122*-52+3671),d=8794*-1+3735+22*230,f=new Set,m=new Set,p=new Set,h=g=>!(g==null||g===""||g===-56*41+7*1193+-6055||g==="0"||g===-(20*-129+1*-1157+3738)||g==="-1"),y=129*61+4708+-12477*1;for(;;){let g=d+"|"+l;if(f[o(739,"DDJ&")](g))break;f[o(864,"IxTj")](g);let A=(await he[o(1289,"FcCt")](c[o(997,"Ixfi")](this[o(893,"ha1q")],c[o(548,"]qJ0")]),{headers:{},params:{limit:c[o(956,"DDJ&")],next:l,orderBy:c[o(636,"DDJ&")],orderDirection:c[o(1030,"VJin")],shareKey:e,SharePwd:r,ParentFileId:s,Page:c[o(1514,"HQPg")](String,d)}}))[o(1168,"DDJ&")],b=A?.[o(895,"*73(")];if(!b||!Array[o(1183,"ha1q")](b[o(947,"FcCt")]))break;b[o(1087,"@vb6")][o(1482,"rPxp")](S=>{let T=o;if(c[T(556,"8NXr")](S[T(1519,"c4n6")],722*-1+1*6755+1*-6031)){let I=S[T(1408,"v9ET")]+"|"+S[T(975,"DDJ&")];if(m[T(1195,"OI4h")](I))return;m[T(1441,"@vb6")](I),u[T(1056,"^!6A")]({ShareKey:e,FileId:S[T(935,"t1zI")],S3KeyFlag:S[T(1464,"v9ET")],Size:S[T(1409,"*73(")],Etag:S[T(1086,"Ipvi")],FileName:S[T(517,"Ixfi")],DownloadUrl:c[T(612,"*4[e")](I8e,S[T(1085,"Qsov")+"l"]||S[T(1268,"&7rQ")+"L"])})}else if(c[T(1101,"E&eo")](S[T(1094,"^!6A")],7464+933*-8)&&Array[T(1344,"]qJ0")](i)){let I=c[T(713,")R[X")](Zz,c[T(960,"IxTj")](a,""),S[T(1279,"j$fv")]),R=S[T(632,"n9Kx")]+"|"+I;if(p[T(501,"VJin")](R))return;p[T(1297,"X$Ld")](R),i[T(1467,"(c[^")]({filename:S[T(1387,"3T^6")],shareKey:e,SharePwd:r,next:0,fileId:S[T(756,"R![k")],path:I})}});let x=b[o(695,"ohkY")];if(c[o(1479,"0)cK")](h,x)){l=x;continue}if(Array[o(1500,"xbv%")](b[o(1246,"HQPg")])&&c[o(1163,"qh23")](b[o(861,"]qJ0")][o(1118,"bjAB")],y)){d+=-59*101+-1497*2+-407*-22,l=4993+-1*-6537+5*-2306;continue}if(!c[o(924,"*73(")](h,x))break}return u}[de(1155,"71z8")+de(1533,"bTDW")](){return{Referer:em+"/"}}async[de(1420,")R[X")+"d"](e,r,n,s,i,a=""){let o=de,c={zhvSo:function(p,h){return p(h)},Pkpde:function(p,h){return p(h)},YDURK:o(941,"xbv%")+o(598,"i)v]")+o(1505,"Qsov"),mZAoS:o(1082,"n7&4"),iRIZD:o(1436,"R![k")+o(952,"0)cK")+o(650,"bTDW")+o(929,"rPxp")+o(657,"xbv%")+o(722,"i)v]")+o(1445,"Qsov")+o(622,"(c[^")+o(1292,"qh23")+o(1280,"HQPg")+o(1443,"Ipvi")+"6",WVBio:o(1529,"0)cK")+o(1378,"ohkY")+o(1234,"BavK"),EaXjP:o(841,"WR$Q")},u=c[o(1216,"]qJ0")](I8e,c[o(892,"h9l4")](Mur,a));if(u&&this[o(570,"Qsov")+o(928,"^!6A")])return u;if(await this[o(1171,"bjAB")](),!c[o(705,"bjAB")](ai,this[o(1170,"T68i")]))throw new Error(c[o(1507,"DDJ&")]);let l=JSON[o(702,"^!6A")]({ShareKey:e,FileID:r,S3KeyFlag:n,Size:s,Etag:i}),d={method:c[o(1278,"DDJ&")],url:this[o(522,"v9ET")]+(o(519,"t1zI")+o(958,"E&eo")),headers:{"User-Agent":c[o(645,"5!50")],Authorization:o(1326,"ha1q")+this[o(1298,"E&eo")],"Content-Type":c[o(1108,"xbv%")],platform:c[o(1127,"i)v]")]},data:l},f=(await he[o(634,"VJin")](d))[o(576,"Qsov")][o(1193,"5*yu")];return c[o(1375,"qh23")](Lur,f[o(1244,"rPxp")+"L"])}async[de(1293,"5*yu")+de(746,")R[X")](e,r,n,s,i){let a=de,o={iqheU:function(d,f){return d!==f},HMDqe:a(691,"X$Ld"),trigC:a(1436,"R![k")+a(721,"ohkY")+a(945,"rPxp")+a(546,"Ce#p")+a(1184,"c4n6")+a(824,"@vb6")+a(628,"PMrq")+a(1501,"DDJ&")+a(1468,"FcCt")+a(618,"&7rQ")+a(1191,"*73(")+"6",FeHmC:a(1457,"t1zI")+a(624,"rNzt")+a(757,"HQPg"),ncuOr:a(1459,"n7&4")};await this[a(1535,"Qsov")]();let c={method:o[a(972,"HQPg")],url:em+(a(866,"5!50")+a(804,"7D4Y")+"fo"),headers:{"User-Agent":o[a(998,"*4[e")],Authorization:a(1119,"n9Kx")+this[a(1272,"5!50")],"Content-Type":o[a(566,"*4[e")],platform:o[a(1131,"n7&4")]},params:{etag:i,size:s,from:"1",shareKey:e}},u=(await he[a(1019,"OI4h")](c))[a(1047,"BavK")][a(1357,"IxTj")][a(986,"DDJ&")+a(1236,"t1zI")],l=[];return u[a(1124,"0)cK")](d=>{let f=a;o[f(1462,"v9ET")](d[f(791,"WR$Q")],"")&&l[f(1365,"Ipvi")]({name:d[f(711,"OI4h")],url:d[f(922,"]qJ0")]})}),l}async[de(1304,"0)cK")+de(881,"VJin")](e="0"){let r=de,n={txROI:r(1553,"h9l4")+r(671,"OI4h")+r(1419,"7D4Y")+r(1484,"Ixfi")+r(669,"n7&4")+r(1067,"71z8")+r(673,"DJ%s")+r(1207,"DJ%s")+r(832,"&7rQ")+r(1201,"bjAB")+r(1154,"7D4Y")+r(1380,"i)v]")+r(709,"^!6A")+"2",EvLZi:r(758,"*73("),kdomA:r(1379,"j$fv"),vNKDd:r(774,"71z8"),hOhRa:function(i,a){return i(a)},NPmEA:function(i,a){return i||a},HqcjZ:r(1093,"71z8"),YgxKD:r(868,"E&eo")+"le"};return await this[r(1065,"*4[e")](),(await he[r(1383,"Ipvi")](em+(r(1e3,"v9ET")+r(1120,"0)cK")),{headers:{"User-Agent":n[r(1539,"E&eo")],Authorization:r(1543,"Ipvi")+this[r(1493,"71z8")]},params:{driveId:"0",limit:n[r(1239,"WR$Q")],next:"0",orderBy:n[r(1196,"i)v]")],orderDirection:n[r(1360,"X$Ld")],parentFileId:n[r(831,"3T^6")](String,n[r(1166,"DJ%s")](e,"0")),trashed:n[r(1423,"rPxp")],SearchData:"",Page:"1",OnlyLookAbnormalFile:"0",event:n[r(1432,"5!50")],operateType:"1",inDirectSpace:n[r(993,")R[X")]}}))[r(1193,"5*yu")]}async[de(731,"DJ%s")+de(982,"R![k")](e,r,n,s,i=""){let a=de,o={kIpPs:a(584,"R![k"),aSbwC:a(1546,"]qJ0")+a(504,"Ipvi"),uerWt:a(760,"bTDW")+a(703,"Ipvi")+a(1549,"5*yu"),TrffD:a(869,"v9ET")};await this[a(1238,"t1zI")]();let c=JSON[a(585,"BavK")]({driveId:0,FileName:i,FileID:e,S3KeyFlag:r,Size:n,Etag:s}),u={method:o[a(1295,"^!6A")],url:em+(a(664,"T68i")+a(738,"BavK")+a(827,"xbv%")),headers:{"User-Agent":o[a(1221,"rNzt")],Authorization:a(970,"(c[^")+this[a(854,"h9l4")],"Content-Type":o[a(541,"IxTj")],platform:o[a(704,"WR$Q")]},data:c},l=await he[a(740,"rNzt")](u);return l?.[a(1168,"DDJ&")]?.[a(963,"DJ%s")]?.[a(607,"n7&4")+"l"]||l?.[a(877,"v9ET")]?.[a(553,"ha1q")]?.[a(1089,"Ce#p")+"L"]||""}},oi=new nY;var k8e=Ce(V0(),1),xC=Ce(Zn(),1);var sY="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",vg={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},O8e={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}}},iY=async t=>{let e=xC.default.enc.Hex.stringify(xC.default.MD5(t.config.y115.cookie)).toString();return(await t.db.getObjectDefault("/y115",{}))[e]??""},Fur=async(t,e)=>{let r=xC.default.enc.Hex.stringify(xC.default.MD5(t.config.y115.cookie)).toString();await t.db.push(`/y115/${r}`,e)};async function aY(t){t.get("/qrcode",async(e,r)=>{try{let s=(await he.get("https://qrcodeapi.115.com/api/1.0/web/1.0/token",{headers:{"User-Agent":sY,referer:"https://115.com/"}})).data.data,i=O8e.encode({sign:s.sign,time:s.time,uid:s.uid}),a=await k8e.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=O8e.decode(n);if(!s)return r.send({code:0,data:{status:vg.EXPIRED}});let{sign:i,time:a,uid:o}=s;try{let u=(await he.get(`https://qrcodeapi.115.com/get/status/?_=${parseInt(Date.now()/1e3)}&sign=${i}&time=${a}&uid=${o}`,{headers:{"User-Agent":sY,referer:"https://115.com/"}})).data.data?.status;if(u===2){let l=new URLSearchParams({account:o,app:"android"}),d=await he.post("https://passportapi.115.com/app/1.0/android/1.0/login/qrcode",l,{headers:{"User-Agent":sY,referer:"https://115.com/"}});if(d.data.state===1){let f=Nl(d.headers["set-cookie"]).join("");r.send({code:0,data:{status:vg.CONFIRMED,cookie:f}})}else r.send({code:0,data:{status:vg.NEW}})}else u===1?r.send({code:0,data:{status:vg.SCANNED}}):u===-1||u===-2?r.send({code:0,data:{status:vg.EXPIRED}}):r.send({code:0,data:{status:vg.NEW}})}catch(c){console.error("115\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),r.send({code:0,data:{status:vg.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 iY(e.server)})}),t.put("/cookie",async(e,r)=>{await Fur(e.server,e.body?.cookie??""),r.send({code:0})})}var L8e="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",dY="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36",M8e="4.8.2",uY="OFFLINE$",W8e=15e3,$8e=1e3,qur="115\u79D2\u4F20123",VB="PAN123_RAPID@",oY=async t=>globalThis.getPanName?await globalThis.getPanName(t):t;function U8e(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 F8e(t){let e=String(t||"").trim();return/^(?:magnet:\?|ed2k:\/\/)/i.test(e)?!0:/^https?:\/\//i.test(e)&&!U8e(e)}function q8e(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 jur(t={}){return String(t.sha||t.sha1||t.Sha1||"").trim().toUpperCase()}function Qur(t){return`${VB}${Buffer.from(JSON.stringify(t),"utf8").toString("base64url")}`}function Hur(t){let e=String(t||"");if(!e.startsWith(VB))return null;let r=e.slice(VB.length);if(!r)return null;try{return JSON.parse(Buffer.from(r,"base64url").toString("utf8"))}catch{return null}}function Gur(t){return String(t||"").startsWith(VB)}function Vur(t,e){let r=jur(t),n=String(t.n||t.name||"").trim(),s=Number(t.s||t.size||0);return!n||!s||!/^[a-f0-9]{40}$/i.test(r)?null:{vod_id:Qur({name:n,size:s,sha1:r,fid:t.fid||"",shareCode:e.shareCode,receiveCode:e.receiveCode}),vod_name:n,vod_size:s,vod_group:t.vod_group}}function Kur(t={}){let e=String(t.sha1||"").trim().toUpperCase(),r=Number(t.size||0);return e&&r>0?`${e}:${r}`:""}function cY(t){return t?typeof t=="string"?t.trim():JSON.stringify(t):""}async function rm(t){let e=cY(t?.config?.y115?.cookie||"");if(e)return e;let r=t?.config?.y115?cY(await iY(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 cY(s)}function zur(t){return(Array.isArray(t)?t:[t]).map(r=>String(r||"").split(";")[0].trim()).filter(Boolean).join("; ")}function Bc(t,e=null){let r=e?` ${JSON.stringify(e)}`:"";console.log(`[115-offline] ${t}${r}`)}function fY(t,e=180){let r=String(t??"");return r.length>e?`${r.slice(0,e)}...`:r}function lY(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=>lY(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]=lY(s,e+1);return r}return typeof t=="string"?fY(t):t}function j8e(t){return{Cookie:t,"User-Agent":dY,"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 Yur(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 Jur(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(Yur)}function Q8e(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 pY(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=pY(r,e+1);if(n)return n}return""}function H8e(t){return new Promise(e=>setTimeout(e,t))}function G8e(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||!q8e(r)?null:{vod_id:n,vod_name:r,vod_size:Number(t?.s||t?.size||0),vod_group:e}}async function Xur(t,e){let r=await rm(t);if(!r||!e)return[];let n=await he.get("https://webapi.115.com/files",{params:{aid:1,cid:e,o:"user_ptime",asc:0,offset:0,show_dir:1,limit:115,code:"",scid:"",snap:0,natsort:1,record_open_time:1,source:"",format:"json"},headers:{Cookie:r,"User-Agent":L8e,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 V8e(t,e,r="",n=0){if(!e||n>5)return[];let s=await Xur(t,e),i=[];for(let a of s){if(Number(a?.fc)===1){let o=G8e(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 V8e(t,o,u,n+1))}}return i}async function Zur(t,e){let r=await rm(t),n=String(e||"").trim();if(!r||!n)return[];let s=await he.get("https://webapi.115.com/files/search",{params:{search_value:n,type:4,offset:0,limit:20,date:"",aid:1,cid:0,pick_code:"",source:"",format:"json"},headers:{Cookie:r,"User-Agent":dY,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 elr(t,e){let r=await Y8e(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||pY(n)}function tlr(t){return t?.errcode===10008||t?.result?.some?.(e=>e?.errcode===10008)}function K8e(t){return(t?.state===!1||t?.errno)&&!tlr(t)}function z8e(t){return t?.message||t?.msg||t?.error_msg||t?.error||"115 \u79BB\u7EBF\u4EFB\u52A1\u63D0\u4EA4\u5931\u8D25"}function rlr(t){return t?.server||t||null}async function Y8e(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 V8e(t,n);if(Bc("\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 Zur(t,s),a=i.map(o=>G8e(o)).filter(Boolean).sort((o,c)=>Number(c.vod_size||0)-Number(o.vod_size||0));return Bc("\u79BB\u7EBF\u6587\u4EF6\u641C\u7D22",{keyword:fY(s,80),count:i.length,selected:a[0]?.vod_name||"",hasPickCode:!!a[0]?.vod_id}),a}async function J8e(t,e="GET",r=null,n=null){try{let s=await he({url:t,method:e,headers:r||void 0,data:n,validateStatus:null});return{data:s.data,cookie:zur(s.headers?.["set-cookie"]),headers:s.headers||{},status:s.status}}catch(s){throw s.response?s.response.data:s}}async function X8e(t,e){let r=await rm(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:M8e});Bc("\u63D0\u4EA4\u79BB\u7EBF\u4EFB\u52A1",{type:n.split(":")[0],length:n.length});let i=await J8e("https://115.com/web/lixian/?ct=lixian&ac=add_task_urls","POST",j8e(r),s.toString()),a=i.data||{};return Bc("\u63D0\u4EA4\u54CD\u5E94",{status:i.status,state:a?.state,message:a?.message||a?.msg||"",preview:fY(typeof a=="string"?a:JSON.stringify(a))}),a}async function Z8e(t){let e=await rm(t);if(!e)return[];let r=await he.get("https://115.com/web/lixian/?ct=lixian&ac=task_lists",{params:{page:1,limit:30,appVer:M8e},headers:j8e(e),validateStatus:null}),n=Jur(r.data);return Bc("\u4EFB\u52A1\u5217\u8868",{status:r.status,count:n.length}),n}async function nlr(t,e,r={},n={}){let s=Number(n.maxWaitMs||W8e),i=Number(n.intervalMs||$8e),a=Date.now(),o=null;for(;Date.now()-a<=s;){let c=await Z8e(t),u=c.find(l=>Q8e(l,e,r));if(u){o=u;let l=await elr(t,u)||u.pickCode||pY(u.raw);if(Bc("\u8F6E\u8BE2\u4EFB\u52A1",{name:u.name,status:u.status,progress:u.progress,hasPickCode:!!l}),l)return{pickCode:l,task:u}}else Bc("\u672A\u5339\u914D\u5F53\u524D\u79BB\u7EBF\u4EFB\u52A1",{count:c.length});await H8e(i)}return{pickCode:"",task:o}}async function P8e(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 X8e(t,r);if(K8e(n))return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u5931\u8D25: ${z8e(n)}`};let{pickCode:s,task:i}=await nlr(t,r,n);return s?(Bc("\u83B7\u53D6\u5230 pickCode\uFF0C\u5F00\u59CB\u89E3\u6790\u76F4\u94FE",{pickCode:s}),await zB(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 slr(t,e,r={}){let n=String(e||"").trim();if(!n)return[];let s=await X8e(t,n);if(K8e(s))return Bc("\u79BB\u7EBF\u8BE6\u60C5\u63D0\u4EA4\u5931\u8D25",{message:z8e(s)}),[];let i=Number(r.maxWaitMs||W8e),a=Number(r.intervalMs||$8e),o=Date.now();for(;Date.now()-o<=i;){let c=await Z8e(t),u=c.find(l=>Q8e(l,n,s));if(u){let l=await Y8e(t,u);if(l.length>0)return l;Bc("\u79BB\u7EBF\u8BE6\u60C5\u6682\u672A\u53D1\u73B0\u5A92\u4F53\u6587\u4EF6",{name:u.name,status:u.status,progress:u.progress})}else Bc("\u79BB\u7EBF\u8BE6\u60C5\u672A\u5339\u914D\u5F53\u524D\u4EFB\u52A1",{count:c.length});await H8e(a)}return[]}var D8e=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]),e$e=0x8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683n,t$e=0x10001n;function r$e(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 n$e(t){let e=0n;for(let r of t)e=e<<8n|BigInt(r);return e}function*mY(t,e,r=1){for(let n=t+r;n<e;n+=r)yield[t,n,r],t=n;t!==e&&(yield[t,e,e-t])}function B8e(t,e){let r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=t[n]^e[n];return r}function ilr(t,e){let r=new Uint8Array(e),n=e*(e-1),s=0;for(let i=0;i<e;i++){let a=t[i]+D8e[s]&255;r[i]=D8e[n]^a,n-=e,s+=e}return r}function alr(t){let e=t.length,r=new Uint8Array(128);return r.fill(2,1,127-e),r.set(t,128-e),n$e(r)}function KB(t,e){let r=new Uint8Array(t.length),n=t.length&3;n&&r.set(B8e(t.subarray(0,n),e.subarray(0,n)));for(let[s,i]of mY(n,t.length,e.length))r.set(B8e(t.subarray(s,i),e),s);return r}function s$e(t,e,r){if(r===1n)return 0n;let n=1n;for(t%=r;e;)e&1n&&(n=n*t%r),e=e>>1n,t=t*t%r;return n}function olr(t){(typeof t=="string"||t instanceof String)&&(t=new TextEncoder().encode(t));let e=new Uint8Array(16+t.length);e.set(KB(KB(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 mY(0,e.length,117))r.set(r$e(s$e(alr(e.subarray(s,i)),t$e,e$e),128),n,n+=128);return Buffer.from(r).toString("base64")}function clr(t){let e=new Uint8Array(Buffer.from(t,"base64")),r=[];for(let[i,a]of mY(0,e.length,128)){let o=s$e(n$e(e.subarray(i,a)),t$e,e$e),c=r$e(o);r.push(...c.subarray(c.indexOf(0)+1))}r=new Uint8Array(r);let n=ilr(r.subarray(0,16),12),s=KB(r.subarray(16),n).reverse();return new TextDecoder("utf-8").decode(KB(s,new Uint8Array([141,165,165,141])))}function ulr(t){return`data=${encodeURIComponent(olr(JSON.stringify(t)))}`}function llr(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 dlr(t){let{encrypted:e,payload:r}=llr(t);if(!e)return r||{};try{return JSON.parse(clr(e))}catch(n){if(r&&typeof r=="object")return r;throw n}}function i$e(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=i$e(e);if(r)return r}return""}function a$e(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=a$e(e);if(r)return r}return""}async function o$e({cookie:t,apiUrl:e,payload:r,userAgent:n,requestReferer:s="",requestOrigin:i="",responseReferer:a=s}){let o=ulr(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 J8e(e,"POST",c,o),l=[t,u.cookie].filter(Boolean).join("; "),d=dlr(u.data),f=i$e(d);if(!f){let m=a$e(d)||"\u672A\u53D1\u73B0\u4E0B\u8F7D\u94FE\u63A5";return Bc("\u76F4\u94FE\u54CD\u5E94\u65E0 URL",{api:e.includes("/share/")?"share":"own",message:m,decoded:lY(d)}),{parse:0,url:"",msg:`115 \u9650\u5236: ${m}`}}return{parse:0,url:f,header:{"User-Agent":n,...l?{Cookie:l}:{},...a?{Referer:a}:{}}}}async function zB(t,e){let r=await rm(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 o$e({cookie:r,apiUrl:`https://proapi.115.com/app/chrome/downurl?t=${Math.floor(Date.now()/1e3)}`,payload:{pickcode:n},userAgent:L8e,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 flr({shareCode:t,receiveCode:e,dirID:r=""}){let n=[],s=(a,o)=>a?`${a}/${o}`:o,i=async(a,o)=>{let c=o||"",u=await he.get("https://webapi.115.com/share/snap",{params:{share_code:t,receive_code:e,cid:a,limit:"9999",offset:"0"}});if(!u.data.data)return[];let l=u.data.data.list.filter(f=>f.fc===1),d=u.data.data.list.filter(f=>f.fc===0);for(let f of l)q8e(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 c$e(t,e=null){if(F8e(t)){let c=rlr(e);if(c){let u=await slr(c,t,{maxWaitMs:12e3});if(u.length>0)return Ts(await oY("115"),u)}return{from:await oY("115"),url:`115\u79BB\u7EBF\u89E3\u6790\u4E2D$${uY}${t}`}}let r=U8e(t);if(!r)return{};let n=await flr(r),s=n.map(c=>({vod_id:[r.shareCode,r.receiveCode,c.fid].join("*"),vod_name:c.n,vod_size:c.s,vod_group:c.vod_group})),i=Ts(await oY("115"),s),a=n.map(c=>Vur(c,r)).filter(Boolean),o=Ts(qur,a);return o.from&&o.url?{from:[i.from,o.from].filter(Boolean).join("$$$"),url:[i.url,o.url].filter(Boolean).join("$$$")}:i}async function plr(t,e){let r=Hur(e);if(!r)return{parse:0,url:"",msg:"115\u79D2\u4F20123 \u53C2\u6570\u9519\u8BEF"};let n=null;try{await tm(t);let s=Kur(r),i=oi.getPendingRapidCleanup();if(s&&i.resourceKey===s&&i.shareUrl)try{let c=await oi.getFirstSharePlayable(i.shareUrl);return oi.rememberPendingRapidCleanup(i),{parse:0,url:["\u539F\u753B",c.url],header:c.header}}catch{await oi.cleanupPendingRapidResources()}else await oi.cleanupPendingRapidResources();let a=await oi.rapidShareFromSha1({name:r.name,size:r.size,sha1:r.sha1});n={fileID:a.fileID,shareID:a.shareID,shareUrl:a.shareUrl,resourceKey:s};let o=await oi.getFirstSharePlayable(a.shareUrl);return oi.rememberPendingRapidCleanup(n),{parse:0,url:["\u539F\u753B",o.url],header:o.header}}catch(s){if(n)try{await oi.cleanupRapidResources(n)}catch{}return{parse:0,url:"",msg:`115\u79D2\u4F20123\u5931\u8D25: ${s?.message||s}`}}}async function hY(t){let e=String(t.body.id||"").trim();if(!e)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};if(Gur(e))return await plr(t,e);if(e.startsWith(uY)){let a=await P8e(t.server,e.slice(uY.length));return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(F8e(e)){let a=await P8e(t.server,e);return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(!e.includes("*"))return await zB(t.server,e);let r=await rm(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 o$e({cookie:r,apiUrl:"http://pro.api.115.com/app/share/downurl",payload:{share_code:n,receive_code:s,file_id:i},userAgent:dY,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 d$e=Ce(pC(),1),gY=Ce(Zn(),1);var hlr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,u$e=t=>{if(!t)return"";let e=t.replaceAll("\\","/").split("/").filter(Boolean);return e.length<=1?"":(e.pop(),e.join("/"))},YB="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",f$e="netdisk;P2SP;2.2.91.136;android-android;",glr="netdisk",ylr="https://pan.baidu.com/",Alr="https://pan.baidu.com/disk/main",xlr=200,blr=t=>{try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}},p$e=(t="",e=Alr)=>({"User-Agent":YB,Referer:e,Accept:"application/json, text/plain, */*",...t?{Cookie:t}:{}}),l$e=(t="",e=YB)=>({"User-Agent":e,Referer:ylr,...t?{Cookie:t}:{}}),_lr=()=>({"User-Agent":glr}),yY,AY={},xY={set(t,e){AY[t]=e,yY.push(`/baidu/${t}`,e)},get(t){return AY[t]}},Qb=async t=>{yY=t.server.db,AY=await yY.getObjectDefault("/baidu",{})};var bY=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":YB,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 xY.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 le.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=d$e.default.stringify({pwd:this.pwd,vcode:"",vcode_str:""}),r=(await le.post(`${this.api}/share/verify?surl=${this.shorturl}&pwd=${this.pwd}`,e,{headers:{"User-Agent":YB,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 le.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,xY.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=u$e(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 le.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=u$e(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 gY.default.SHA1(e).toString(gY.default.enc.Hex)}async getUid(){this.headers.cookie=this.shareCookie||this.cookie;let e=(await le.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}&timestamp=${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":f$e}),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 le.get(d,{headers:o})).data;if(f.errno===0&&f.list.length>0)return f.list[0].dlink}},$n=new bY;async function m$e(t,e){await Qb(e),await $n.getSurl(t);let r=await $n.getShareList();if(!r)return null;let n=await hlr("baidu"),s=[],i=[];return Object.keys(r).forEach(a=>{let o=Ts(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 h$e(t,e="/",r=1){await Qb(t);let n=$n.cookie;if(!n)return{list:[],rawCount:0};let s=Number.parseInt(r,10)||1,i=String(e||"/"),a=(await le.get(`${$n.api}/api/list?app_id=${$n.app_id}&web=1&num=${xlr}&page=${s}&order=name&desc=0&dir=${encodeURIComponent(i)}`,{headers:p$e(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 Elr(t,e){await Qb(t);let r=$n.cookie;if(!r)return null;let n=String(typeof e=="object"?e?.fileId||"":e||""),s=typeof e=="object"?String(e?.path||""):"";if(!n||!s)return null;let i=new URLSearchParams({type:"VideoURL",path:s,fs_id:n,devuid:"0%1",clienttype:"1",channel:"android_15_25010PN30C_bd-netdisk_1523a",nom3u8:"1",dlink:"1",media:"1",origin:"dlna"}),a=(await le.get(`${$n.api}/api/mediainfo?${i.toString()}`,{headers:p$e(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 vlr={};async function JB(t,e){let r=String(t.body.id||"").split("*");if(await Qb(t),r[0]==="own"){let c=String(r[1]||"").trim(),u=blr(r[2]||"");if(!$n.cookie)return{parse:0,url:"",msg:"\u767E\u5EA6 Cookie \u7F3A\u5931"};if(!c&&!u)return{parse:0,url:"",msg:"\u767E\u5EA6\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let l=await Elr(t,{fileId:c,path:u});return l?.dlink?{parse:0,url:["\u539F\u753B",l.dlink],header:_lr()}:{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=xY.get(`baidu_share_${n}`);s&&($n.surl=s.surl,$n.pwd=s.pwd,$n.link=s.link,$n.uk=s.uk,$n.shareid=s.shareid,$n.shorturl=$n.surl?$n.surl.split("").slice(1).join(""):"",$n.shareCookie="",$n.pwd&&(await $n.getRandsk(),$n.headers.cookie=$n.shareCookie||$n.cookie));let i={...l$e("",f$e)},a={...l$e()};try{let c=await $n.getAppShareUrl(r[0],r[1],r[2],r[3]);if(c)return{parse:0,url:["\u539F\u753B",c],header:i}}catch(c){console.log("App\u7248API\u5931\u8D25\uFF0C\u964D\u7EA7\u5230Web\u7248API:",c.message)}let o=await $n.getShareUrl(r[0],r[1],r[2],r[3]);if(o&&o.length>0){let c=[];return o.forEach(u=>{c.push(u.name,u.url)}),{parse:0,url:c,header:a}}throw new Error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25")}async function XB(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=vlr[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 ql=Ce(Zn(),1);var Re=fo;function ZB(){let t=["WOm+W4hdSgbNW6RcI8om","WRa2W6ZdI3FcVGvDW4Ct","WPqibsJdPa","DMlcNc7dOSovW4hdRdJdH8k1W7zf","W7LUWR3cNW","frNcS8ohW4C","W6vKWP/cN1i","W5ZdMCkmiSkeWR1kEmk4W74","DmkTW5/dI8kfWQBcR8onWP0H","cmkpBH0cphtdSmknW5u","kmoJWR0CdW","W51TWQP+u0rhhSkDWRW","WPNdMc7cSSk8W4JcVgC","gSkvCmkYW7a","WPVdISoqWPPd","BxHgW6a","rmoHFCkdWR8","jKBcVCkKnZ7dMmkk","d8k8zCodFr8AW5/cVqC","W7VdJ8o5aSoLW6/cTSkLrIm","iGddJhe","svPSW6RcTW","y8kGW7Tk","jCknWQr5vueWgIu8","fvBdN8kWW6XJe0VcMmk6","kCoPnCkieq","i8kJWQf4EG","d8knWQX9vfaeuaOb","WR3cN8k6W6zeywKNWOVdSG","swKcW642W7RdHIT6WRi","D8kHsSowvSkvW5hdIJZcNmkCfZe","cmkpAHidpG","iSkksG","W6bNE8kSDW","eNtdQmk/efhdKmoDrCka","e8kbWPpcUxCt","kvhcPrJdSq","p1BcUSkmW64","nb3dJ3lcR8ogWPpdH8kSW5C","p2xdH8kNW48","W7ldIZdcO8ol","dSkAAG","lMxcKZddTCkYWPRdM8kOWOW","WRzIW4/dMxi","W7LqFSotbfyObY8X","iIBcGSoDW6ddVW","55UR5B2x5OUa5yQi","ChTiW7BcSoI/NoAFN++9R+MhOEAvQq","W7XJptlcT8kayCkmgmk+","WQqxW5bcCCoqW5ldVG","zYSpWQBdUCofoHpdLW","kSkuqdFcMGVcGtC","kflcVa","W7XdWOXLA8keWPNcVSozWRG","k1lcVSkwW6HoW5G8","WQ0eW7JdV8kWWQ9IW7xcIa4","DLZcHZTij0RcSqfX","FSo4W5tcJHW","WRCGW6/dSLf1","gmkSy8oc","ECo8W5BcHbDkW5RcOW","W7ZdQ8oNWQ9iBZuJWPBdTq","W6ZdHZ/cQH/dICkxWPRcKSoi","WO7dMCkRW4K","W5JcQSo1j8k0l3hcSG","WOZdMCkTW4hcNCktW6rjWRmn","gmkVymolua","W7nTWRS","WQdcLH8","W5ZcHCoUsSovW63dM8kZisC","kSoxuZRcGuhcNdeRia","W6lcJ8oibCkT","W6ZdQJFcQq7cJG","iSkwAL5EBclcQSoxWOW","nJVdHN3cUSkp","W6LPiCoRWQXkgmkN","W4NdTtFdMSotumkXc8ouuW","lCkpW4ipWORdGN9qW53dSq","AY/dGxall0hcS2uw","W6DDWR/cH3RcVH1aW7SF","ochcOSoBW6FdRCo+","sCoPW7FcJau","smk9W5VcMG","F8kvW6JcTCkXWQxcOW","CN7cLsZdQ8kEW4pcN8ksWPC","W7tdQIq","CCkMW5pcHrvDW7BcMbSZ","D8oenmkkWPe","fLBdNCkkW6DNkeO","WQ8cW5rgyCkcWPZdVSohWQu","W684ncW","c8k5W4XFqa5onu58","quvBW6lcUG","fLldN8kc","W646FwVdHa","yNTrW5BcV3JcQa","6l6G5AY75AAv6lsxomok","WQpcLc0qWQC","W6pdNvuhWRu","WPrXWP5OW7K","WPuKW4W","whGbW7eOW7BdLtS","WPddGSkohbrAlqWFW6a","jaFdJgW","AmoTW4JdGGjkW6hcRHq+","iH/dQhawi10","W7XPjG","WP7dKCkRW4tdLW","qcNcVt4+W7XCW6dcV8ob","W6hdPttcMCoNECkCn8oM","sSkMW4lcQmk5","z3OmW4NcUSkCmelcJx4","DmoYW4xdJtnkW7dcRb1+","bqNdO3ZcP8kmWPpdQuFcRa","pSkAqmkWW7NdTYK","WOi/W5q0W4i","bZNdL8o7WPBcK8orW5asCa","W7ZcSCoenSkI","W7NdMZpcHCotF8kD","hmk6FmofmLy6W5BcUWe","WQW1W7ldMcxdU1T/W6WI","b0ddJSkrW41M","WQFdKstcTqZcG8ooW53cJmkb","W69LjSo3WQy","EMxcSXxcQmosW4RcI8kmW5m","ng1EW5FcVCkeyvBdQIK","WQpdOmoUwCoFW6DiiCk4W6S","WRSzW4q8W6e","idVdNhG","W7rNWRi","W4ZcQCoGoCkZlx3cO8ogua","smoRimktleDpW7JcSbScWQrq","W7xcHSojWQvrBZWvW5ZcOG","W5/dVbdcLvRcH8krW5VdLmok","WO0tW5rZD8kEWPu","WQDeW7NdH8k3","lmo1g8ksxSosWOFdKqNcQW","WQJcGri9WRGOW6OYjSkg","x8k1W5xcNG","A8kGW6rgWPtdH2jxW4JdOG","jCkttZ7cPGS","rNNdOsWuW6TBWQVcQq","A8kzW7S","hCk4y8ol","WOhcKmkJvh3cI8kPWOq2WO8","WR3dLSo4WRLiydG2W5dcRW","WQuszhldTCouo8oqASoj","lCkVWRT0AG","W6zQEcZdOsqaWRZcStK","W4lcNSoIa8oaW4VdS8kGera","uGOQWRZdGG","dmoTWPGubq0mC1yj","itpcKComW7VdUmoyxMW","yNvlW6tcQG","WOldR8kCW5ZdIW","A8oqW7FcOX8","WRVcLG8u","W7rJWQr2","W6j9W6u","qh3cVsL6WQDeWR3cPCoE","sCkKW7PkW4/cLW","WQRcNamAWOiTW6G","CmovW6ZcNXm","WRJcPaBcMSoiDSkwbmoMwq","WRtdUCo8WRPkzJC","W4NcVmoMpmk5k0pcVSol","F1hcRehcUa7dMGv8W7y","AmoTW4JdGGDgW7tcQrS5","lConWRO4v0nelqPB","t3RcJ8kMW5/cLmkiWOP0jq","W5RdGSkBd1Pmy0zgW7e","W7JdRYldISo/F8kqomoSeG","WOVcNSoAxHLAoGTNW70","W6RcNmoe","W4hcSmo+pG","m8kPWO7dNeuCWQFdPXWY","W6pdOttcMSoxDmkanG","aCkhWR86nHD1r39L","ja4bWOpdPmogprFcLN0","WOL7ze3cOwPmWPNcHXW","WPpdSmoewN7cJmkNW6DSW4K","tCkSW4y","ySoNW57dHSoEW4ldMW","WOBdHf9zWPGmW5i7o8ku","emkuWOhcVNupeCkl","i0hcUmkFfG","W71JWQa","W4NcSmoMzmoQFZlcTCkydG","WQ4/pItdQtOn","n8kCWPZdUZzBq8kxxqW","CIyCWPddQ8othrNdNIe","W4VdMNqAWQG","W67dNdRcUrtcH8kmW44","W6qYuM/dQCowFSozzSk0","gLZdMmkx","WQqmW5Dg","W6lcGrDAW6FcMmklhw9Y","WR/cKISdWPu","BNTkW70","ymkRW43cN8k7","fMtdU8oyWPNcHCkJWOKsAW","WOngW6NdR8kWWRDoW5G","W7ldNxRcUrtdI8kMW6NcHSoF","qxCBW7y","sCk9W5VcQ8kO","fsLCWRTZW7ZdIxjgWO4","WOvfWODfW5PuW7y","W5O3yYRcTmkxo8kCa8oj","dCkACHas","kCktuCoeEa","l0hcMtddSmkhWO7dJG","cmkMWRfJDW","BbWAWPBdPSoppW","jG3dMq","DCk0W7HWW5RcGJG","W4BdVqVcP8oR","jLNcQ8ktW75pW7qR","mrtdN2dcVW","k8k2fmksdSom","rCk3W4RdM8kPWONcJSo+WQvG","WO3dNCkR","WPldRmk7W7ZdTq","W6pdOHdcImo/","ux3dPGKUW7PDWQNcTCoR","W6NdGclcTa","W6lcRmoBjmoC","WRKBWOCnWO8jWRq","W4tcJmoXWPZcNmkvW6bkWQ0E","AXZdHxdcSmoF","ffRdPCk6W4e","W5BdQgq8","6l+26zMc6l2W5A6+5AEI6lA0772q5PwR5RkE6i64","ktNcHMqpEG","gcbdWRq6W7VcKd53W6W","r8oAgCk0WO4","lCklWR9uC1qbcdWN","WQVcHriy","WOBdL8o7WOnO","W6pdNvqhWO/dL8kEesC","W79PqCk1AG","CtalWOVdHmoo","nc0sWQxcU3NdTWjiW6G","W55pb8ojWOPWmSkDWQpdTG","l8kaWQG","x3pdT38mW61xWQtcO8kb","n1ugWQtcNd7dSLfjWQG","x8oAEW","WQzlW7ldO8oXW7y0WQVcIfK","bSkCWP7cQf0daSkBdL8","yhfvW7RcVx7cIqC","W6KSzgRdPCkdBCovgSkB","WQDpW7tdNmk7WRfUW7RdNYK","AGBdQmkGWOJcLmoBWQCB","gmknW4BcTxOygSkxe0a","lCknwmoQWQNcT2RcUbRdUq","W5LsWPrssa","mvZcTCkGn07dH8oFwSkY","v2tcKCo3WORcK8keW45ujq","W7H+FKRcUgrxW6RdSNO","WPhdKJ8","sw0xWQ5/W7VdLq","W6FdLfiAWRtdKCkdwNmd","WOmbW6tdRfy","WPJdHsG","kCkpWR92AW","mcFcL8ob","ps0AWQtdRuVcKbDQWO3cSa","cMZdImkpW61Nd1RcG8k2","W6dcICoBlCoV","i8kaWQjH","o0lcJc7dT8kfWOldN8kKW4W","W7XNWODYxwnprCkhWQC","WRhdHY/cMmoxD8kwFmkYdW","dmksW7VdM8oFW5ZdG8kLW7fP","hSoHWOOyfeDRnaC","W6xcN8kXW6isuWK2W7/cLey","gJDbWQXTWQ7cHWXYWRS","5y2E5yQf5PEr5lIQm8kI","WP/dRSkRW6xdPa","W5iQyNFdPCocjG","rx3dPG","mSkTWPddJrbkW6xcRHeY","emkaWOhcPq","iZNcP8oUW7q","qmoDWRNcHvyTl8ods1q","WQrlW7tdQW","tCowW7pcUq","DvVcSeVcMGm","lvpcLtBdMmkjWPhdVCkIW4C","fSk6EmogtrmlW43cOae","kv7cPmkAW4jp","W7RdOsK","mSkBWQvkCueKgYKG","W4yMW4hdIhfxW7xcGCojoa","yhZcSCkykbtdVW","AmoRW4W","hcpdVJrqAWtdNsrs","isFcKmob","W7FdNvmv","AJSqWQpdRZVcSa9nWQ0","WQNdImoKWRbiltOTW5tdRW","WRJcP8oVq8kiWQykEmoMW73cT8oYWP0P","yCkDW6pcT8oiWOdcHmo4WQm9","W4f0xmku","BqddRmoLFfhcN8oxrCoI","FmoRW4NdGKeCWQtdQufH","pt3cHa","rZNdN8oI","W5jTWQBcGN/cTXiBWPfy","j8k7wWC4","W7RcSmo+y8oUDtZcR8kzcW","t2reW5dcTq","WO3cL8oeDCoRFJldP8kuhW","wCoFnIycmxhdQ8ktW4K","W6ZdLclcVq","iCkkzZqV","6AUa6kY+56cW55Q+5B+j","FmkVW7xcI8kj","ACo4W4NcGq","CrRdRCoc","WQScW5f3vq","ASooomkYWRpdN8o2DYFcHW","cmkovrqV","55Qm5B215OUM5yQV","zCkkqINcIGhcKbSSka","W7/cUwhcNSoqB8kEmCoTwG","sCoGjmkzkK4CWOBdUvO","uZddJCoMWPdcICkFWOq","qcxdJSo6WPBcHmknWPvllW","yuVcShpcJXVdGq","WRGmW7DgCmkdWPpcTG","W7jKWOmQW5dcRhFcQSopW40","W6ZdUCkGFa","W7FdO2q1WOddOmkYpqnU","q8ozECkXWRBdSXFdOJ8G","W5jgW6K","W4fxC8k9rq","lthdJtNcKSkhWPxdRGFcTW","F8kUW6bgW5/cLYm","v8ohDCkqWRBcVIRcUMrP","kulcKcVdQG","WR5MBNJcS8kBFCkfdmkB","ldRdGvSQ","t3WgW50CW7JdLYTWWRu","wgddNcKO","jvhcJ3ymn0NdVJPd","iCo8cmkiaSohWQ/dHW","m33dR8kXW4TljqpcV8kW","W4XTqSkttvKGgcn+","WOJdPSkkjfy","W6JdT8kRfW","wsddKmojWORcLmkjWPn9kq","WPC3W7tdN1y+","BqKMWPJdJa","wmoFkSoz","BfWRW5GT","WQOcW5zBlCoFW47dPSkaW7G","W7T6rmkQCW","W6hdTwuzWQG","BsGlW5NdISopmH3dLMe","ChTiW7BcSa","CIumW6dcTNlcPq9iW7y","s8obm8kwWR/dSdxdPwCV","W5qosepdG8oJvSk0ECk4","uJZdHmoZ","x3GMW7iDWQ8","WOpdMmkfcG","W79+o8oTWQylhCoZW5JdNW","WP/dISkwW6ldUmo1W68AW4TN","s8k5W5S","WPGPW6JdSeTPW7KZBSkd","w3hdSWCg","m8kVwSoVFW","d8k6WOHD","xCoVBCksWQpdQsNdIGH/","W6tdOSkRbSonWQGtzSo2W68","W7/dMuKtWQtdNa","afBdMSkwW6fXfq","BMSOW4uf","W6VdS8kRmSorW6vsjCo4W74","zSkZW6BcI8kS","WOddN8ki","WRFcKqGMWQC+W7CTpSki","CNenW6VcQ3xcRazfW7C","ECodoCkpWR7dNCoQg3FdHq","WRrcW5NdM8kW","qSo9fmkXWQ0","hmopcCoti8oG","p2uEWQpdScpdRazcW6i","zCogW4pcGr1kW73cSY0+","WRLVpsNcTSkylCovrmkFvHxcSCkS","Bmk5p8kreCooWOpdTaNcPW","cSkbE8kIWR3dNWRdRI5/","WQpcIWeqWRK","W6DBWPis","iJFcKCoFW7ddVG","quGaW5a5","WOxdN8kJimoVW4RdPCkzcqC","dSoAWPJcVM0o","xZxdOJ4LWQzmWRRcOSoe","w8ohsGS8ku/dGa","lCkpqCkPW7xdPZZdOKdcOa","WQrpW7BdO8k9WQzoW7G","W5lcQSkfhsldNmoUW5j0","oSk+yJtcPW","W5RdV0i1WRm","lvpcQdldNmoq","zCoFCmk1W6ZdQdJdGuZcRq","ESo8W5tcQrTyW73cQX02","umohFSk0WOe","W77cLSo/wmkZWPFcTSoytui","W7xdQxyfWPu","A1VcRvZcGqxdMXm","WOq9C8kpvfyKoY9Z","vmoqAmkLWRldOsJdQcnU","WQpcKHDAW6dcMSobvrfq","WQZdU8oRW4xdK8ouWPK5W4Lz","W7rXWRhcTuf4W5K/F8kv","omk2WO56za","heVdPCkvW6C","iJpdHhZcPG","vcBdM8oKWPhcHSkbWOq","vmoqAmk5WPddScZdVYHN","W4dcQSkswgZdMCo1","WQuaW4f/BCkoWPJcVCkbWOy","W6j/Aq","WQL2WR9IzKrcAmkAW4C","W73cK00hWR/dMSoDvtzu","W6TLWQNdGKXZW4S5A8kd","W4dcQ8kdha","W4HRWRldNsFdOfnmWPjc","W6qCAexdSW","pflcU8kmW6jeW78rpG","ySoph8o2WQ/cVwVcUbddTG","W5WyW4aq","WQGXW6ddOvbU","WQXdW67dOq","ksRcM8orW63dTmo/t3bw","DYyA","WQqIW4mtW7BcIK3cICoP","WPBdHCkkgKXA","WP5dWPn9W5bdW6FcH8k8yG","WQC3W59uW6dcMeRcG8o1W7a","nCoSdCkj","c8kGWO9htg0grc88","WRFcKqGMWRyVW60","bbdcJ8oeW4y","gmkGWRL0tq","t3WgW4yWW67dItn8WRW","iJRcGSoBW7ddK8oUuW","tSkrWP3cUMWmdmkod0G","WRJdIJhcLSkj","aGpdS0Wb","sCk0W40","W6P0W73cOvKSWPSQk8km","ogldLcK","r2hdHSkTW753lW","W7BdOtpcUCoqE8kbnSopuG","iWNdIgybmfC","WQJdUCkcc14","rmoUWRLOW6NdIW","WOuNW6XXEG","cCoUWP3dNSoDWQ3dImkIWOHS","W5tcMCo9fmo1","W7XPjSoAWRnukmkJWOFdJq","W54wta","W44Ta8ojrG5XvxiN","WRq5W5XuW6dcMeRcG8o1W7a","W4XrW4SaWPeFWQ7cJSo9fa","WRm3W7qjW6W","imkiu8o5kHaD","W6ZcSCknhsddL8oMWPS4WOe","WPxdNcRcVSoGW57cNwldLmkn","W4nYrq","jLRcRSk/paBdMmkida","gSoWgSoC","WQqIW5aoW63cNG","WQiYW7ldKJ/cVH0zW7eL","W7XJWQZcN3dcSXjRW5az","WPfsW7ldP8kP","o1JcM8klW7LcW78/","W5lcTSkwbIK","W7uRy0pdOCoCCG","gCoLWOWffePvaHDq","W5rneCoRWRK","cN3cRSkxW44","hCoHWOGYfLjapGTE","W4NdRKKHWOy","W5JdUGxcIa","nCkQvrdcLW","WPldQSkwrhRcICoMW5vSWP0","ESoyW6TAyLe2ax4q","BmkMWRbAW4JcKZyfW5VcLW","W6VdLcBcQbNcJSkaW7tdICob","WOVdHCopWQzx","tSofW5ZdVdntv8opbv0","DIyFWOZdQmozjq","W6FcQCo1pmkz","W4tcUSo1gmk1kNNcU8kaCG","pf/cVCkFnW","WRa3W5RdI3O","WQ8AW6JdSrG7W4K/Cmke","WQ4JW70aW7S","ACokomka","kmk3bSkud8ooWOpdIKlcOq","WPZdIcZcSW","cfdcRmkiW7W","WQZcHriqWRGX","WPtcOSohchJdH8k1W4G8W5m","W6eQA3VcR8oLkmkWbCkk","WR4gW5vhz8kzWOK","AvC2W5aqW5ddO3jWWRi","W5NcLSoMhSoYWPNcTmog","xwOxW7aaW7ddGW","WPRdMcW","lCkAWOJcPg4maSoaxHy","yY0hWPC","uIhdJmo/WPhcGmkfWODB","h8kAWQbrAW","WQDpW7q","WR3dTmk5t8kpW7fDl8kJWQ8","lvVcSSkjmXtdHCkg","FKtcT1ZdGKVdJbnZW7u","k8kArCkWW6NdRtK","WOpdKmkzbXyCBvCFWQS","jZVdMg3cTSkkWPFcQGhdSa","W7VdGtFcQa/cLq","WONdMmkfbuO","bCo8W67cI8kEWOdcImocWQ8R","W7ldLIlcOmoI","W4ayW7tcJYu4WQ/dNSkzFq","zHhdR8osWPO","iSo8cSk3bmoqWO/dHru","lKlcVmkx","WRjlW7pdOSk7WQCIWQ7cLe8","FSkGW6bkW73cMZ0f","W43cSCkq","ttCEW604W7ddIxbLW64","WQldNKfnW6hdL8kqe3yb","v8ouAmkh","paJdMSoEWRqSvW","WQuVja","WOCkW5aDn8ozW4RdV8kDW70","W7zIgZpdNaCOW7/dPIy","W5BcQ8oagmoZ","oWhcTSkLpq8","D3fx","kmkXwImKfLhcQCkhW5u","W67dNdRcUtpcGG","W4fYvq","WRm3W4uB","6l+i6zMC6lYG5A6555I05B+T5yQd5BUo5Aw36lEs","tSoWW4FcGW","W4SVu8kz","WPeqW6CYW64","iu3cTmk3","W53dPZRcUZ0","tM3dVaaQW71aWQC","W4xcV8kdfq","WOVdImkVW4tdM8ofWRykW7rr","jCkytsRcQW","W5LYwCkAsUACKoI+HUADS++9HUE7TG","W6VcK8o4nmkw","W6e/W6a5carCwCkfW5e","WRZcKaCnWQiS","amo3n8kqcW","umouBmksWRddUt3dLd9G","FbWnWPxdPmoppWldPIe","WRyMW4ewW7hcJKxcM8o5W7y","aqZcUCocWRSfWQC","g1ZdHComWR0IevZcS8kR","W4ldJJdcGCoX","nmk5W6hcNqrdW7BcKbC1","W75YWRu","B2lcNJK","WQS6CSouWQjrh8kQW4xdUG","WQBdHMldMmkkASkBmSoWxG","E8oWW47cIq","dmkCDr5cF1BdRmkwW5u","emk2ECkfiLyjW4ZcPHO","o0hcQW","mMJcU8khoW","WQmSW4TKAW","ywVdKSkFW7ddRSkWvMWF","mCoTWOHEqHedC1aj","eHpdIYZcLSk4WQtdHYxdIW","55Uo5B6Q5AA66lws","WQqVnGNdRtKmWOZcSIu","WRJcJgFdQH/cHmowW4RdMCkF","WRWcW4OCESkFWPpcVColWQi","B1FdKZe9","F1eNW5OX","W63dPSk2","W7ySWRJcHgtcTr9BW4us","qSkmW6DzW5/cM2mhWQtdQq","rCofhCk3WPu","WP3dUCk4aSkZihJcUmoyta","W5L0WPvhEa","W7fqWOtcVvG","W7vKWRuUwuOvumkBWQi","dCkNWOPqCW","gmkQWPhcOwSfdCkBnfe","W7NdKWtcNSob","fmkAWPNcQgW/f8kwg10","iCk7WRBcN00Pj8occfC","lCklWR8","WQ/dM8krneG","W4X9jmo/WQ4","WPfmWPDe","W4ldNmkob8oU","WR/dLJNcSvtcNSkuW4xdKCol","pvVcISkmW6G","W4tcTCo1jSo1","W4HZWQaNvgjKACo/W7O","WRyGW6xdVercW4e3CCkv","dZpdNdBdOmorW4hcQ1VcQa","x8k5W5S","rYFdKCo7","WOhdNCkX","nJZcISoh","WRldVSk8wa0aFIfbW6G","lSkzBrpcUW","WQZdKCkCW5VdOq","W7tdO8kXkColW6fzo8o5W74","uN3dVJO/W61YWQBcOmon","WRiVjHldQY8TWRC","vCoGWO4yauCBk1iq","WPnbWOjr","rXtdLSo7WOG","WRnEW7ldO8kWWQrUW7RdNW","g8kABWqolge","kNxdGMRcUSkm","WR8cW4jxyCklWO3cPConWQm","WQldQapcH8ovBq","WPVdLdtcVSkS","yGddR8oG","W4BcI8o5hSoOW4pdQmkqbW","nZ9FW4VdSCkByGRcGdq","l8kvra","W6dcI8oTtW","W4HjWPnFDa","CSofjCkEWRddPbtdNdf9","WR8KW7xdTa","lSouwY7cGqpcGs1Rka","W69JWQ7cMhy","W74QBgJdTCoF","y2ZdTgC","W7BdOtpcQ8onBSkB","m8kOuCkscColWOpdJWJdQG","WPBcQmkTzCo0DJdcSSobba","W6XlW696vSkNWRhdVCkoWQC","W4hdNSk2e8oz","WODpW6pdOCkXW6ONW5/dJHG","WQlcOSoXr8koWRWpCmkJWQ8","vCoCCmkdWQa","W55Pu8kluuK","WOZcGgJdTCoOWOhcJ2VcI8kR","FSo5mmogWR/dUdFdRMTi","W4xdV8k/tGGzCfakWRG","jSo4dSkvaSokWOFcJaxcQW","pWxdNw4b","CHSNWQZdL8oAhHZcJIq","W5FcG8oBxaGBB1fJW5S","dfxcOmk8W58","wSohWPqdge9rCLil","W6z1WQ/cRaL4W4f7sCkJ","WP3dMCklW5JdSmkq","w8ouBSkdW7ZdTZxdPY5q","oCkrzHFcOq","uSofBmkkWRRdSJ3dVYjG","W7eMW5ajW6VcSKFcGmo0W7W","AuVcRuq","r8k0W5jiw0DACdzS","WPBcMSoraYxdJ8oVW6TSW5O","W7rGemo4WOa","fCkbWPRdONejbmkbaLy","BHpdPSomWQ8","Fmk3W5H5W67cTHCkWOdcOG","AJTjW6dcSxu","nSkxhCkGW7lcQrRdLblcVG","e8k6WOXDya","WPrLW4VdJ8kq","W5vcuCkttv8Vgbv4","dmkFW4FcICkbWOhcImk6W7T9","DhvqW6dcQxtcSGC","iJVdMNddUSoxW4xcSKBcRq","WOm+W4e","h2BcQSkDba","WOjsWPO","CwVcNYddO8oBWPldOW7cQa","W7jJWQW","g1/dJSkqWQS","k2JcQCkkW79d","gCoLWOGshW","f13cHIVdSSkkWOlcHmo4WO0","WRRdVXdcSCkm","cCoWWP0faLe","WORcLauOWPe","WRaNW6FdOwq","W5BcHw7dUW","WQhdNCk8W73dNW","WP0LgsNdGG","F1FcSKNcPW8","W4tdTwe9W7ddLCkbbsTv","W5/cVmoJjCk1ig/cSG","FMBdK8kjW7hdQCoXxMTl","WOtdL8kDduO","BYya","WP3dHmkfaLXa","WRJcHbfu","W6T5iCoZ","kflcVmk+W7TBW5i5cMO","v8ohDCkqWRBcVIRcUMr8","wNWcW64+W7RdGG","WQmAW6ldUuX4W4eIq8kz","rNldKtu7","B1VcRexcIaldIXDHW7a","tSkGW6j/W5RcHqemWOFcQa","WQRcIGu","uhuhW7e6W6VcItX8WQ8","lmkhWQDWsKa","WRCVW43dUwm","q8ottmkJWPW","W6DMWOe","pCkfFmopW6RcLSkOfbxcLG","W7ldMWebWQpdLCkweh93","rttdISo3","WR9SiY/cRSkElmoezSkC","eCkGFr0coNVdSmk7W5m","W7iyWQxcUCkFW6y1WQ7dTIi","emk3DmogBHiCW40","cSkEBGuin3tcQ8knW5q","WQ8MW6NdTa","x8oqCSkbWQFdUq","nxxcLqBdHW","sSk1W4pcNSkNWOG","W5VdJtNcVmk6W7lcGwZdJCkn","aCkgDmogCHmxW4RcLGC","WQ3cPY8JWPa","W6W9BNNdS8oFrmkqwSkw","p0VcSIddMW","aCkSECo1EGmnW5y","WOvtWP9FW5eiWRFdMSkGhW","W5ZdMCkmiG","WPfbWOrzWPasWRhdNmk9ha","WQS1y8kTWQzgxmkJWPpcIa","WQRdLdBdRCoRWPBdLxVcKmoC","pvFcIa","WPZcU8o2BmoRlx3cSCkBdW","fSoSWP03lq","gJVcL8kgWQdcV8kWgtSy","W5FdL8osxG9ppqefW74","W67dOWFcVHi","y8oeoW","WOhdKmkFdW","W7RdO2ODW7dcJCoresDh","W5xcRmo+cSk7o2JcVW","cGJdShuZ","ANvoW7y","nMGwW6/dQgFdSvnqW6G","mmkuWPhcPMmhbSkHcLu","W5L1r8krqf8Zq3SJ","W50rxKG","rZtdJmo/W5ddKSoFW5ymCW","zvZcIsOZk0RdUdTv","wZK8W5z/WQJcL3eJW6y","W594q8kkquK1","pCkYuL1lm3ZdR8kbWPO","ASogWObDv2KorwW/","W6xdGZRcNXq","jmkqzbGhm3tcQ8orWPq","W5NcKmoS","WRRcH3JdR1tdLmowWOVdRSop","t8kUW4RcMSkAWONcQ8o8WQyS","d8o3WPKdkeTq","aCkaBdZcQq","lvVcSSkjmXhdMa","WQ0vW7FdNL0","oCkgWQPNzNSRdq","W7JdQclcJCoDnCkMamogAq","W6/dKclcIH/cLmkiW43dHmoT","W71lWPfUvq","k8kArCkvW73dQHpdT0tcQG","WQzKW5qUW6dcV1lcJSkOW7S","zgJcV8kmyqRcHSkQnmkM","W4tdM8kWW4u","WOrWWODMW7y","hbBdLG","WPm+W4hdNxfxW7lcMSodkq","EL/cRLJcJqpdIvL8W7C","W4FcT8k5lqK","W7/cQY3cMCoxDa","vthdICoSWO3cS8kpW5vXdG","W6bYsmkwsfyGq38/","W4lcUSo/oCkmk27cPmogua","W4hcKmoGeSoOW7VdTCkpdHe","W4tcSmku","W43cHgVdQmoUWPxcKdVcLSoC","chlcNa","W5NcTSo7mmk0","WOfGW7hcUCk0WQfUW5q","ECoRW4NcMXeaW6xdTL0X","wNWdW7C6W6RdKW","jmoPdSkncmobWOFdLWxcQG","WR0VnqVcPsSiWRRcSc8","WQdcIr5AW6lcHCoevrP1","c8k9WObWCuONbwnH","smkdW47cJSkAWOq","W7ddLeyRWQtdM8kAecW","aMBcICkopa","jCkvutBcUqRcLJCSiW","g1/dJSkqWRTYafZcUCkX","WRONWRtdTX0SWPLKlSoi","aSoXWPiUfLjD","xhWkW7zWW6NdIZ56WRm","uNNdPJ4","B3fn","WQJcGriQWR8+W7y7dCkc","W6D3WRlcThlcQXO","WPpdKtFcUSk7W4JcHZZdK8kA","vSoWW5tdGKeCWQtdQufH","iCkAhSo0WQZcVhpcPGFdUG","WRNdLuKyWQiRW6XXoSko","cSk4yCopxr8vW5S","W4NcM8kEisq","WOyhW7tdVKi","WQKGW6FdP0bUW4CjAmkF","W57dGmowxHCrCGvFWQm","n8o8dCkrdSomWPxdHG","zuTWW7RcUxu","Er7cISohW6ddTmkNa1CA","a3JcRmkdea","WPzJW4tdJ8kr","WQNcTs0iWQ8+WRzRdmk+","WOVdNSkC","icJdGw/cSmonWOdcTeFdUa","Ee7cRKdcHWJdIqj8W7y","kLhcQCkkW6DF","lCklWR9tAKGN","WPxdNcRcVSoWW4NcKhFdH8kb","5y+L5yYQ55sN","W69oW5tdV8kK","WQq5ortdPMvrW6ldTxO","bXFdN2pcJCkGWRJcTGVdQG","W5tcISo/hW","WQ3dVSoVWOfd","F1ZcNE+8JUESREw/H+wqQUMfKEIUGq","WPedW7xdLKW","WP/dMCohc1CegsikW6K","W6b8hupdNZOtW6xcQce","Amk5W6y","W69UWRNcVhBcUtHDW5bz","WQ0SW6xdSfCYWPD4kCog","WQSUBg/dS8oZEmkluCky","WQdcIqnwW6zVWRXWECoj","WQdcTNtdM8kjkCogyCoPCILlwX4","nmk2BCodDXOyWPhdVea","WQ0nBhRdOCoECSolamoo","W7ddLgqLWQm","jH/dNMaD","x8kOW47cJ8kBWP8","WPxdKmkyhwzkmqruW4C","WOeaW57dHMHCW6mA","W5tcJ8o7g8oVW4FdOmkcfXS","WQqZW4u","gYpdULzEBvlcRxTd","W4ZdLmk2W4xdM8osW6PpWQ0o","W7jWWRBcMuO","vhRdQW","W7fYWRK","W6BdUueLWPS","WQpcIWe","F8oopCkuWR/dI8oS","rCkYW4ZcL8kBWOJcImoM","W7/dS8kR","W4TdaCop","W6ffsSk3sa","55Mt5B2m6l615P6D772t6ywu5Psx55IK5B2g","W6K/Ex0","A8kBECkhWRBdU8kGaqC","FSkXW7PgW48","yciAWPG","DciDWORdKSojpHldNbC","iJFcLW","WP3dLSkri38","DhXcW6dcUZ7dSLejW6O","WRvQW6VdPKPZ","pwhdN8k0W4m","FhtcMcRdU8osW5JcVfJcQa","W6ddLeygWRxdQ8kyeq","6AEA5Q+E6i6g5yYt6l2z6zMZ5y+c55AT6l+95zIr","xmoBq8kpWRC","WQKQW7FdVef4W50","yIOcWPZdVG","WOCzW6iU","WO3dNCkRW6ZdNCorWRKsW7jF","dmkQCSoyDrCuW5S","pMFcJI4","AK7cSKxcMG","W7TBWPnKEq","WO3dNcVcQmkOW4lcH2C","irJcOSkmW6rf","fCogBmkhWRddTghcRs1M","WPNdOJNcRSkRW4u","WRxcHxJdPvBcG8kpWOBdQmo9","b8kqWOBcUhCjbW","FITcWPZdO8khfJtcGJK","W4pdNcldS0/dLCowWOxcJSky","e8oQWP8DaKzrlG","jsRdGq","WOldL8kSW5W","o8kTW65mW4lcMrmZWPxcTW","kSo3iCkibq","gSk2ESkeyWmxW5lcRaC","W4X+uCkAv0KEgcv6","WQJdJrPeW77cJmoDecWk","W7JcKmoXhSoQW4JdOmozs1O","mCkCF8opAq","W7XPjSonWQXaiSkM","W7ddQJxcSbpcG8kpW5/dOSoh","WRldMmkfwa0sFHGhWQW","W6rTWOnJtufivG","jSoihCkdca","ma3dH2VcVSk2WO/dTq3cSq","W5hdICoIWPJcNmkEW7SBW7mf","W57cMSoYba","W6HKm8oPWQz7aSkM","jKldKxCklKhdTxPg","W5jUW7tdLun+W5VcQG","zrFdR8oLy1NdLmowrCoG","DwdcImo2y1hcN8oEtSo0","WPxcOtKQWPOEW4Gs","W5pcT8krhs/dMSoZW51IW4e","WOtdUCk1W4/dKa","WR7dMvzxW6bZW742zmkK","imk1vblcNa","qCo3j8kznuzxWOFdUvG","W5JcHSkwlsC","WQzgW6/dPCkS","W6tdMJe","WQa3W6ukW5RdMW","sZe7WOpdMG","o8oIWP0DbeCrAICA","WPepba","WRCQW6y","W4VcGCofxWGAAKbFW70","W4pcS8oah8kP","W49LyCkSsG","57QF5l2m55Ad","ASorkSkLWOK","dCkCWP/cQf0ugSkFdG","lmo7W4BdLevmW7lcOuzN","rSoyw8k3WRe","6lYG5A6N5PA25lIZ5OQm5yIB","bJVcJCkFWQhcT8kNtZ4A","WRiveZRdMb4NWPVcHXu","bJVdM3ZdO8ow","FGddVCoiWRGsWQzTtY8","g8o0WOWDhKfvkqPq","s8oOjCkBkIqA","E8oaWQH3ybzYdYHL","WPNdNcZcUG","W4tcPSksfXNdICoR","W7VdKci","hxFcQa","xCkADSkvWRZdVW","nMFcUmkkW5m","W4RcVmoK","WQagW4PvDSkc","W77dK1noW6rNWRDVFmos","k8kjWOvntG","o8kkwmoWCq","W7H+n8o6WRDblCkRWPVdNa","5PEn5lIy5yUq5BUV5OIt5yQ7772o5B2P5AAh6lY/","WQnTWROCWP9lW6VcGmo2dW","WQlcIXrbW6BcGSobtxib","W6nXpcZcOmoFF8kpy8ky","W7LMWPfsW4/cHeRcI8o/W64","Ahf0W7BcVfdcQrCdW6W","WQ7cLa8","DciDWORdKSojpHldNa","zq7dTmkboW/dLCkbaSkN","BmkIW7vkW4JcGq4uWONcUG","rZZdKSoZWPhcHSkbWOq","qmofD8kOWQS","WPmIW4hdM2f7","nLVcMsZdQSojW5pcHCo0WOm","jXZcPmomW5O","bs3cQ3f5WRKbW6/cLmoS","WQ4/pItdUI8cWQhcOZK","whNdVZO","W6NdLaSrWR7cMCk2n3La","DqBcL8kEbIZdVCocvCk4","WRqwW4PTy8kAWPq","W6nXz2/dR8oc","WQhdNCkqW47dHq","WQ8mW4bxxCkEWPlcUSolWQu","WOK9W4xcJ1nTW6lcHConDa","W5zJkmoYWQ9icSoTW4lcLW","WORdPSk5bhy","pfpcJIVcSCotW5dcNmoJWPa","uSouW7dcOtf7W5BdOKbL","bwhcUqhdI8k0WQRdV8kuW7W","umovWOZdJrHgW7JcOLiq","WPRdMCkTW43dNmosWOGxW7K","WQOmW5z3y8kjWPu","WQbhWQf+W70","dg7cHmkLW50","WOhdICk9r8kYWPxcSCkpdZXUyYa","mJRcGSo2W6hdO8oSuMy","f8oLWOGshW","jmkFvX/cIHNcJsCGeW","W4nkWPe","j8kqut4z","e8kuWOtcQfafemkAb0W","WR81W4nXuq","owNcKxVdMf/cGvzuW6K","BmkekmoqW7RcSxtdGqPz","f8oLWOW","isdcJmoFW7ZdQmoIrq","frpcSmoIW7ddVSoPuMqb","WQVcHZeGWOq","WO3dPColWRPv","WQ09W6qCW5K","oSoohSk2W7tdRtJdUK3dOa","WOBdKmkBgLPbp09yW7y","WQBcJWnzWPa6W6C1jSoo","rSooo8knW6ZdSCoUzrlcPa","lmohWRyFfq","W5pdNSk7WPNcI8kuW6jgWQKl","WQDpW7tdNmkXWQDoW7G","W5ldOb7cIbe","WP7dJSkWW4/dKW","pf/cQCknW650W7G8","id/dNNdcTSkhWR/dOq","jCkyyCkoW4u","WQ8SW6ZdHspdTumuW7Cx","WRiAW4ZdVauKWO8YECkg","57UW5l+M55Ai","pCoAW4JcNXTcW7BdQenJ","W5PwECkRDa","WONdMmkoae0gBK4iWRG","tmoHWQyg","WPqRiX7cVN4","xSk5W57cJSklWP/cMq","WOCaW6VdNw0","AcOlWPFdUCkfyvJcGgG","iKFcKH3dQ8kvWOBdMCksW4O","u8kIW5hdKeqbWQu","AhTe","d2hcKmkIW5hdLmoBW5usya","WOmpWRlcUmkQWRfMW6/dJG8","n8kwwCoV","pc/dHKBcP8khWPddTW3dRq","uSk1W7LeW57cNa","WQzRWOfuWQ/dGv7cH8k9W5O","nSo4b8k1aa","W7HNWQJcNMBcSHC","DSoBs8kf","W6rHWP9jWQ7dJqZcPmoyW40","uIhdN8oIWORcLa","d8kDvJOHd3ddSmkC","xN/dQaSH","WRddKmoJWPHR","hCoHWOGIh0ngodzn","WQhcPg/cVCorDmkxpmo0sa","W6xcJqGhWRJdNCkugsyE","FSoFpSkiWRtdN8oXuJ8","pmkzE8oyW63cICkUCJ/cGKn4WRi","BvhcTuNcGa","jqxcJmoBW77dMmo+r20b","WRZcTSo3iCoxW7XyjSoGW6W","ntpcL8oi","p8kFzmoTtq","WOlcTCo/mSkZia","zSoiet7cNKRdLNzGFW","fHFcT8ktW5BdJCoxy0TM","smoRjmkBkKvmWOZcOYCBWPTWvG","EXpcQepcIKBdKbjNW7a","qNFdUtOLW5DaWRBcVmon","W545WQeQdWyq","W6xdTCkabCowW7nolmoiW6S","jv/cGmkBW4K","W6LPi8oUWQzxhW","uvFcMu/cJW","W7HNWQJcQMBcRXS","WOeaW4pdONu","o1BcOCkt","zsSRWPRdUq","EmoykCktWPpdNa","WPGIW4LXBa","tIldKmo6WPdcHSkiWPfqlW","galdVa","y8kjamoQW6ZdTJtdOedcOW","jCkttY/cIH0","W6xdQYZcJ8ow5PYW6lY05P2m776p57UC","d8kqBbW9oMFdT8knW5u","ufTOW5BcKa","W65/wSk8Ca","W4XXxG","wsrcWQXOWRxdNtC+WP4","rq03","D20DW6K6W7C","gmknkSog","fmkRW49brGjemqjl","BSo8W5q","WRXjWOiFWOOuWRxdHCkGgq","eHNdJ3xcOq","W7hcKCkKia","WQKBW5q","rh3dOYOUW7Ta","lmknttFcGa7cGdq3iW","cmoHWO0eeLfa","DSomC8kdWOq","W4ZcK2hdO8k8W4NcLddcLCoz","ASoAyIVcNWpcGrmGlG","emkuWOhcVL0ddmkldG","5PQU5PAcWOGTW7xcG8kn5OQ75yMs","W492WR98wKy","WO1tzSoFfqPVxheX","vJDAWO/dJmkDk0lcJJ4","W73cImoed8o3","W77dK1vmW6fPWRrMECox","W6dcUxFdHmkpnSkjo8kUEa","W6pdOtBcN8oDACkh","e8kqWOy","W7PtWRdcP3a","W7akWQJdNCk3WQ1JW7pdKrK","WRSVF0RcUhjkW6pdQh8","umoDWPu","Bs8lWOO","mJpdJhZcP8onW47cQ13cQa","puhcR8kI","W6pcNSo7mCo3","y3fxW4ZcNxRcSbDpWRe","5O++5PYk55Qn5B2L5AA755cH","iLFcSCkVpa","WQlcVcmGWQ4","W7VdRa3cUCo5","W5zcimo1WQ0","iuhcT8kZpoI+PUAERU+/OUMgUoAvPa","EKtcHedcOW","B27dJ8kRW4/dICoA","hSkEDWuTmgFdKSklW54","WRiTFx3dO8ojjSocqSku","WOlcOfm","vtddJCoI","W7JdVXpcKHm","lmkuFc/cGatcGsO","WOjyW5upmSoeW4S","WRylWOHxBmohWRRcK8kvWRO","y3fxW4pcV3xcJGjbWRW","WOhcHqSCW7GhW60/jSkk","iSkpvZm","oCkWtsu","WQ0WWRNcMJBdQuerWPC3","W4dcJmoUbCoOW4xdRmkt","n8oIzSkxk1Hp","WR3dHCkPt8kkWRL9b8ozW5S","AmocySkcWRxdLCk3udtcNG","iLlcU8kmW6PmW7q","ovJcPrFdPa","aupdH8kkW7a","n8o8gmktbmorWO7dVbJcQG","DXhcTf/cGqu","WPjLWRJcTwPoW7KZBSkd","zCoEiCkdWRtdMCoXwbNcHa","WPaaW48","zSkQW6lcVSkk","W4xcSmoGgCkU","EL/cQK/cHG","W7FdMuSrWQtdKCk3hc5u","r8kXW4W","DMDwW6FcLG","kSkLBJldJ1BdHcaGoG","WP7dKmkQW4BdLSodWQvrWQWm","dL3cVtJdPG","W7ONW6VcRZBdRdCsW5mF","W4ddPs7cSW","e3OAW6mTW6RdGISUWOG","WQi3W5pdIIi8","WPFdMSkVa0S","W7CBy3ldOG","W6xdMYVcG8owCq","W4ZcIMVdRSoPWPVdHtVcLSoy","b8kqWOBcJMmqf8kma1K","WO9RW6ZdHmkt","W7FdRsVcJ8oXFG","q8kXW4RdLmoFW5ZdLCk7W7PN","W7LRWRdcJLRcVW","WOtdT8kYW6NdLq","jmkGrCkQW7FdOtm","vHhdQ8oUWRi","WOtdGCkFdvfi","W7RdKKeBW6/dHmkqbJfU","W4ZcNSkVW4NdGCovWOGDW7jA","WOhcNCkFbIpdLSoIWPS8WPS","WP4KcSolfG94vsSI","WRldICkVWPJdMCoSWPuMW4Pw","W7D2WQJcM2ddOvWBW5WA","ErRdK8orWRi","WQjmW45bBCke","amkrFr0Eo3ddTW","W5LCx8ksFG","Bmo0h8kiWR3dLG","WQryW6NdVmk7W6XXWQ3cIrK","WOfpWPj5W7S","cCoSWP0deN1hkqjl","ASooomkUWRJdKSo9vZlcSW","W7HNWQJdKtZcVWfDW5it","W7DPWRVcGvu","pSkwCeDFzdxdVmosWO4","DgVdMbCH","WRxdTCoUWQDI","W49nWO/cVW","BgldJCkqWRNdQCoPgL19","W6/dKclcNqRcLSkIW4RdJCoA","WPJdNCk5W5RdL8ovWR8HW6Lr","W4uuW4uiWOHdW6tdMCoWhW","W7JdUCk0e8oq","WOZdNSkfqqajlHjEW6W","WRFdTs7cKmkj","dCk2rmoEAr8xW5K","W6PXWRNcMt7cQabyWOOo","ntOAWQhdSci","vCkfW5T/W6i","W5BdU8khaCor","lCkmW7LvW5lcNJ0bW4NdPa","WRW8AYxcSCopESkcaCon","W4FdISk7fmo8WO/cSmk/sHm","j8kisI3cIKdcKNvQpW","WPNdJ8kjW6tdVW","dv7dQSkGirNdI8kXqSkD","W5JcQSo1j8kfj3G","WP/dMCoglxC","WQJdUWldVeVdLSopWPVcHSko","jCktvmk2WQBdPJZdOKRcPW","omkGwmkHWQe","iJpdHhZcNmkg","DgfqW7S","WRiFiHC","hKBcU8ktW5S","gGBcJmonW70","BSokomkcWRi","WQvnW6xcPCklWPbcW47dUtK","W5xcRmo+cSk7pNu","j8kAxW","whGbW7eaW7RdIdT2WOi","gXldJgS","EqFdUW","tNGaW6TWWQZcLgG9W64","W7JdVSkerSoJWQ9mpmo1W7m","qJtdJSoIWPZcJ8knWR5wlW","W7lcSmo6p8ob","W4mYwmkms1q","f8o2jSkAoWuDW5xcNWS","W6hdKeHiW6DXWRDNFCox","W7xdPtpcIW","nY7dMNdcU8kfWP/dOXe","gSkpCHGF","vmoBDCki","W7TJWQJcIG","WPq5W4VdINO","zYSp","WOxdKCk7wCk2WORcSCowlru","ymkPW7nfW7O","mmkktZlcMW","WRpcLgW8WOtdUCk9wwjD","mZVdVgNcL8ou","W5ddHcBdRbhcRmkJW7pdQSog","W5ldNalcPmo0","W4HpbCoPWOe","mmkEFb4g","WRVdSCojWRD1","zSoKlSkuWRG","pSkbWPHHCu0SdG","WRVdG8o8WPruDZe","ff3cNtrnyGZdLHv0","ffRdH8kgW7C","iCo4cSka","W6xcSmoyiW","nZldIwVcSa","B1hcUMxcQG","vvNcUehcTG","y8osAbpcUYlcQgHLia","z3XcW4ZcQNtcQWzc","xhePWRicWQtdLYPXWRe","pvRcQmkMivVcNSobfmkK","W6hdQclcVCoDEmk4oSo3fa","W6ddIfuDWR7dK8kyeZS","WRNdVaVcKmk6W5/cM2BdISoh","c8o4e8ketSo6WO/dGGpcQa","nJFcL8o6W73dRCo1uKrh","svJcLx3cNq","umoEAmkHWP4","W5qiEI7dGSoU","W4f0v8krubvXqNmX","n8o8dSknamobWOm","W7VdNtFcRH/cUCkiW48","iCo8eSkaga","xSk5W47cLG","DL3cSudcUa7dMGv8W7y","WRGAW7aOWQ/cNudcUSogW4W","wSozECkv","WP5mWQLdW5zDW6FdLSoazG","WRncW6hdUmk7","W6zKyfxcUgruW7pcLsS","mMVcH2RcVCklWPpdQqZcSq","xCoAmCkfWRldSJtdRG","WRxcICoRWP7cM8kgW780W5XO","oe/cRa","WQZdOmolWPfi","W4dcHSkVsWTQE1idW6W","C8k2W4RcNHTb","jfP3WRpdRYVdRLmxW7K","A8okpSkiW7xcJCkRa2JdHa","k8kvuc8","qWy6","i3xdG8k0W7jQwb/cVCku","hmoLWO4ywbChAK0m","rNNdOsWuW6TBWQVcQCo3","WQS7W7RdUfG","WRFdLSk8j0XteHK","cSoXWO8z","hmoTWPaukeTAoWW","omkbWR18z0eWxxW","dSomcCkPea","W65oW6/dVCkWWQ9OW73dGHO","bCktycJcVa","E0ZcKKNcUW","WRjVyKNcRxKLW7BdSqG","W4pdJSkKbmoUW43dPmkAgLS","W6hdPsNdHmoaB8kDp8oMuG","hCoSkSkmfa","sNBcNX0","sSkQW4XFrWWeFtbE","W7DJWQ7cJJZcQrzhW5az","W7JdMuK","BmkXzCoLWQ3cThpcPHldRW","WOtdMmkhmuPajaumW4S","xSk5W4NcICklWP/cHCokWR4M","6lYL6zQH55UB5B+65AsL6lsT776n5Pso5Rg36i+Q","WOGkW4ldTfC","hgBcICk7nq","FmoPW5dcGr1mW7lcSXS4","p8oFF8krWRZcTw3cUbNdTa","tmo0gmkUWPhdVCow","WQzcWPDwW5PvW7xdMCo4qq","xhehW6W7W7ZdLxaIW68","WPpcGmoed0XDnK9cW7e","zbNdGgVcUSkpWPpcQLNcQG","5Psw5lMY5P2T5OQu5yQi77Yw5yUt6zI35AAY6lsE","5y6/5lU06l2J5yAC6k6Q","W6BcMJZcRXxcIa","W5JdI2K/WR8","obJdM2Skju3dUI0","gYpdULy","dHFdUmow","omklWRPGzLC2","W63dLMpdPuJdNSouWPZcJmky","WQDXjW","W6BdJ0igWR7dLCkCea","eCoHWPi","WPJcJqHpW6nKWQqMF8ot","W7ddStpcGG","ywtdG8oMW7tdUCoZxZPT","WPhdMmkFaLW","WRaRiHlcP39xW6tdQhK","lttdI3xcOmkgWPpdTG","W4pcMmkEW5JdGSokWRiPW7HC","W7ZdQmoCW7uqm3DYWOldOa","vw/dOa0E","AIidWPW","xNWaW6S5W6ddQZb0WRq","WRG7W5rvWQNdNrZdGCkGWRC","WO1fW7RdO8kYWQ9MWRpcK0q","cSk2sayK","ndqlW4tcT3xcPaXBWQO","E0JcPM/cNa","WQ0+WP0FW7BdGgpcRCkRW6G","WQ8GW7ldOq","WQnLW5mcWO0cWRxcR8k2hq","swWgW6O","m8kFWQpcRgu","WPpdNdxcVG","WO01ECk3ChCnqgP9","pdFcH8oaW7tdVW","bmkQvSkMW4K","WQWIFb7dPMCJWPhdVtS","WOFdMCkV","WRFcUWuvWR46W6OQfSko","nJZdV3VcKG","W5xcHSoZoCkZk3lcO8oWvG","W7tdMSk8nCkJWPBcS8ktd1e","cfCMWQjUWQNcIw8OW70","o2/cImkdnW","ntFcLCoaW7BdQCoouW","ySk2W7HdW5tcKZuqWPtcVG","z2ngW7RcVW","ECokjCkn","WQJdNSkrb1vfp08eWRy","umo5vSoAAXOCW6NcRaW","WQ8cW5brAG","FSonh8o2WRlcTMRcTNRcRG","z8k1W5VdLmoBW5/dMSk7W7L/","p1/cVSk9eq","WQm1W5KB","BSoTW4hcMqfC","nICsWQBdRIS","bmkwCXq0k2ZdTmkb","B3NcNmoFWROBWR9Oqt4","W5ddPYpcJJK","W4dcRSkE","W6n2WRfJsLS","WQfNWP4jW7dcHehcG8o0WRy","WRndW7RdRW","w8ksWP/cQ8oCWPtdHSoBW74l","g0/cSCkZFtNdMmkpgSk5","pLFcIIVdVCkdWQRdJW","gtBcSCo9W7W","FSkKW6i","l8kqxmoRW6tdStpdUKZcPG","W70/FM/dN8opDmkaua","g13dImkpW7fMbf0","mdxdU23cP8klWPJdOG","WPhdIHRcOSk1","u31nWQxdQIddObSAW60","r8ohDCkl","of/cSmk+W7S","W458qSklr1iGmZ5+","aSk/W4dcLG","WRiQW68","fSohWR09ma","wSk1W4VcNSkC","w8oqW4tcMZe","kSkwxCkGW7ldPtddSW","W7bPpa","zmkQW7mpW7ZcLZilWONdUa","iSkkuZFcHGZcHtaSiW","qH7dVCoEWPG","WQ0tW5rEA8kjWPZcPCohWQq","DgRcMa","W7RdOslcMSkvE8kFoSo1xG","oxdcIGZdN1VcHKyUWRK","nfVcQmk+","yxhdVgL/WRmuWRFdUSkC","lbtdMM0n","DM/cQxtcPW","rmoHWQ8pW7tcOqCfWPtcOG","W77dV8k5h8oDW7niimo4W7e","W5RdOX3cP8ov","WOrfWOi","W7RcVSoib8o8","WQxdNINcMCoiw8kcmSoOBW","BmoxESknW4JdIrhcUGNcOW","rZFdKmoNWRS","W7vqWQtcRx7cMILrW40h","WQJcGriQWR44W6ODkmkx","m8o9WOOWja","ASkKW6jRW5tcHt8mWONcSa","k8kXWPH8zeO","W7qZW6tdP0X7W5y","wSoEECogWPtdTd/dOcqM","vCoCCmkdWPRdTq","uMRdUYKUWQDcW77dO8oo","W6nNWQq","CfxcUWZcQq7dIX16WRa","gSk4xmkIW50","WQpcNa8JWRNdMSkvgJvc","nY7dIw3cOmkr","WPaSW7xcUHaUWPH4l8og","Dx5EW5FcUSkgkX7cLaS","jSktdtJcGaldIW","emkyWORcJ2C","WPhdPSkehfj9jXbuWRC","x8oHtCkEWRO","W6PXWRNcMvRcVW","WPRdMcZcMSkVW53cTMldLSkC","l8o2f8kp","W53dUfqgWPG","W77dS8kUa8oBW6fi","kf3cKZy","tgSBW7q6WRBdKw48WQ4","W6tdGSkPg8oM","W4NcUmoKna","W53cHwpdQXVcS8kjW4/dVSoK","e1/dHW","W5VdKmoHbmoPW4O","bvNcJCkMbq","BdCAWONdVSkqFLNdGsq","xh9TW7tcUa","nSkjrINcGq7cIse","WQdcKWGvWRG+W6aUo8ki","fK/cN8k6W7W","ddhdPNZcKW","fSoHWPiwa0O","WRVcIW0CWRNMOApLVOVLVzZLUBhVV6S","WQCtW7q","WRaZW4u","p8ovWOqaeW","WPaThmogcf8Vqr9c","mclcIG","W77dQHJcG8oC","DNj0W7hcMq","DSo8W44","W7GTAg7dRSonDSkb","mKVcQmkfoWBdN8kTfmkK","jSo4dSkvaSokWOFdVbJcQG","ASooomkYWRldMCoQuqlcLG","WOtdHmkFbG","WR0SW63dSgX5","W4ZcV8kh","iZddNeNcLG","WPnfWObzW5XcW4VcJW","WOeUW4S8W58","BmkXW6zdW5lcKtauWO/cVG","rZNdSSo6WOy","pCoSemk+fmorWOpdKtpcRa","WO8dWQZcRq","W6O7Eq","W7FcUSoUhmojW5ddJCoagW","cmk8sCkZW7i","o8kJuSoFsG","WQtdK8oMWOPuCdWWW6BcQq","lLRcOYpdQ8kcWORdN8oWW5C","BtipWRddQa","oW3dM2CknNVdTta","W4xcNSo5bmoJ","rZZdKSoIWPRcLq","astdJhyd","hCkRFSoCFLKpWO/dPGG","WOtdSCk9WOzktdeoW73cQG","oCkpWQ1WyeuYhs87","zqddRmo4yK/cGCoojSk1","W7atWRpcUCoVW7TIWQtcLL4","W5xcT8kdgcK","W5L3rmkXva","W6BcI8oEm8om","ouhcUW","WQ4/z8kIW60wwSo3W5FdOq","WPpcMCoIg8oYW4hdS8kfq1e","qSoTwSoEW7ZdMHpdIdm7","W7n4jSoRWRaErmoTWOddNa","WOemW55BBSkgWPZdVSkBW6u","g8oXWOGz","W74QF3xdRSolCSkcta","yb3dQ8o4yvFcKCogpSkC","j8kBvZO","WPhdP8oer33cG8oIWOW9WPS","zbtdVdNdPmosW5JcTvpcVG","W5tcJ8oI","W5NcTSo7mmk0ewJcRSoFwG","yI8bWPBdVW","dmoHWO4yeuTxpbDw","xNeqW6Om","oZxdNhGd","lmo2emoowmkcWPBdKqpcSq","WOJcGqusWRH2WQqDiCkv","WR0PW67dULC","W6n5z1xcU3XeW7VcJqi","WOm3W5ddM3DGW6ddGColmW","jSo4cSkccq","DgZcIfBcTmkxWOldRvRdNq","W6hdLGNcRXlcH8ktW47dOSoA","a8kKW5RcLq","WO55W4/dJgbTW7xdG8orkq","iSkNWQxcVea","kaddGgCknNVdTta","nfpcKsC","W55YWQZcQMBcRXS","uLNdTYOc","Cf3cU2hcGq/dJrO6W5q","W4L8rSkE","WOBcTqOHWOC","WPKEW5C5W6K","FSk1W6rgW5xcLtGgWP8","yCkOW7He","W57cMSoL","mSkXWQH5AKeShrm6","WQLgW6xdUq","auFdISkxW7fX","i8kfWQ41reeHaIn6","dwNcR29LWRayWQRcOSkt","WRJcHgC","g8klu2VcHcxcPHWsja","Bmk8wCk3W7pdQtJcUrJdUW","oCkrxCkGW7xcQJ7dUutdOa","W7BdKKq","W7xdOthcG8oBF8k6nW","EmkZW7O","cSoLWO4ceG","WRyVmcZcRSkun8kbw8og","WRq8W4DEA8kpWPpcPCoXWQi","o8kcAs3cNq","WPFdH8odWR9c","5yQT6zI65PAk5lUQ5OQq5yIZ","ACocomoCWQ7dISoTuwdcGW","xwSE","WRC6ibFdOsKfWQFcRYu","nf7cRmk6oWldKmkAhmk7","ywhcVudcHW7dHGjkW7a","W658gCo+WRe","kmkErCkK","WR8SW45lDa","vCoCCmkdWOZdSJ3dVY5O","W7TWWRxcNxBdTaufWOSq","WO1hWRj0W5C","dCkEAHa","W47cL8kJfSkSbeNcHSkBdW","WRNdKmoHWQ9e","W7ddTc4","W7/cT8o9pmoq","jaagWOVdOSohnfNcIhW","WQJdTJ7cRHxcI8keWOtcI8kz","W4/cV8kAeq","cSkVW4FcMSkCWONcSSo8WQ50","W7zDWPhcGJpdOLnqW4ea","W6pdGJ7cMCol","WOxdOJVcT8k2W4JcM3FdUCkb","uNfFW6eX","uN3dPdyOW619WQS","WOqZW5BdHNDTW4JcIG","WOtdJ8k6rmkZWPFcTCopoczwzGjN","W6ZdKcdcTrNcG8kOW48","WQtcGqG","sNGFW4tcVCkezW","W5/cVmoGoCk7lxK","W4BcVmo+","w8oObSkpWRG","dmo0W6tcS8k6WQhcOCk5W6OL","W5jwWOL+rq","e0BdN8kl","WRVdNmoHWQuniZ0NW5/cRa","W6VdLclcVXi","D8oEW6uSl0eSrbKa","CSoUW47cGrToW7FcTWa4","E0ZcGvunleddSYnr","oSkpWRLMzG","W7vTbmkjv0i7m31y","W4JcSmkugdNdN8oIW4C","W4xcK2JdQmoXWP3dMZRcLSoE","nhnE","WRJcRta7WR8","WRbbWRHLuevdhSkzWQy","pCooW6/cUKiBWRRdPZmN","W7XTWRC","6AUp6kY756cI5BAP5yY+6ygU","F8ookSktWR/dI8oWAZlcMa","xmk9W5ZcImkXWO/cGSoXWQ8w","qNFdNJa8W61gWOZcRCoB","CxpcL2pcOa","xaCJWQNdLa","W6qqzw3dMa","W57cUmoMmmkik2/cOSodsW","W5RdRtpdHCknkCoeFCkWdq","mCo2fCkedW","afuBW6WQW6hcH2TmW6K","kGRdN2ex","W5HUv8knBv4","W4xdV0ayWQq","WR/dJSoPWOPvBdiNW5C","cSkWCmoe","WPFdLmkyhLzhlqu","AcyaWP7dUCoc","tCkOW4RdL8ooWO7cNW","WQJcNr3cLc7cQ8kTWOFcNCoc","6l2O6zUQ5PkF5PEb6zoA5O6F6i+25y665Aw76ls0","omklWQ1NzLCQnJG8","WQxcIW8x","oCkuCauV","WQuiW4esrCkpWP7cUSobW6i","6l6S6zIi5yEZ6k6W5y6e6ikI5BEN6l2d5P+7WOa","WPVdNcRcSSoWWPJdHJtcImoB","bqtdV0Sw","W4pdS3qG","xSkGW5G","WQNcPmoTu8knW5nAkmo7W6W","w8kcW7fdW48","BfGHW4K6W6VdItP/W7i","laNdNuqnlKe","p1BcU8kmW5riW748hW","6l+b6zQ06lYc5A6H5P6N5AYM5OMb77265P6t6i+/","WRPZWRP5W7S","WPSQW6j7iSklWO3cOCohWQ8","imksy8kgW6S","WPBdLmkF","qCo5pSkcWQ4","o0/cSCkZ","W6P1WRdcPHaUWPTVwSkIW5z/WRFdOq","rZZdKSoZWRBcGW","WPNdJZhcRCk6WO7cK2ZdISkm","W4FdV8kRwCklWQelz8kKWQK","bILCWRnUWQRcK399WRG","W5GqrLldJ8o7vq","qmkZW4G","WRrfW5pdVSkSWQPPW7S","WRe3W4mtWRFdMbFdMmk+WQO","uHVdOmkRW5bplqldVmkZ","hmonACkiW7W","WR0zashdOG","WO4tW6eYW4G","WR4wW4euDSkcWOJcVmomWQu","WQNdSHpcNSkr","n8oQf8kod8knW5pcKL/dTq","WQmNW4yaW5u","dSkAAJikl2hdP8kmW5S","EhlcOSozW6xdOmoIyg1m","W4hdIXtcVSkcnCkfySkSwG","W6rRWQr7wG","W7zUWRNcMa","wSkOW7GzWO/dIxeyW5ddPq","W5/cVmoHimk/pwG","WOaKeqRdRW","FatcQ8okWR8BWQnRgh8","FGxcRSojW6HnWQC8thS","W4xcRmogamof","W4CoW4yEWO8jWRldI8oatG","e8klxSkUW7NdQG","WOtdKCkYrCkOWP0","WQldLmkibvyaFInzW6O","WO7dISk2W57dL8kjWQfpWRjy","fLVdUI0KW6vrW6ddVCkC","W4lcMSoPkmoLW4VdR8kcgXO","WRLbWPTvWPb/W6VcISo8qG","6l2j6zMH5PgY5Pwi5y285PEI5lIX5A+f5PEJ","kKFcJYO","WR4gW5rEy8kjWPG","t3WgW5e3W7JdLtPxWRG","WQr+tgZdSmoaFSkZumkF","WOeDW7xdP0e","W7P8iSo3WQPhcSk2WP7dLG","vmoqAmkNWQpdOr/dQJT7","W5XrWRVcN3K","EmkDW5FcMSk6","u0JcK2NcIG","pCklzmk2WRpdLSo8wZhcHa","W7VdKLbjW6nUWRqNomkVf1pcTa","hKFcQmo5z1lcHSoarSoI","p1BcUSkAW6vFW44XhG","pCoHWR54W5lcNdupWPhcOG","DMDkW7ZcSdtdTviFW6K","eSkjubRcIa","WQNcLGKu","sspdLCoaWQO","yCkUW7e","WRWcW5DbxCkjWPlcTColWPq","WR8mW5zg","WQqZW5BdHNDTW4JcQG","ttRdMq","e8k1Ca8","WO7dLmkf","abxdKmkgW5ldPmoOr0Cf","W7ldQYRdHComACkSn8oSta","a8kQW53cQCkfWORcVCoHWQv8","omoYWQmwWPxdGgbvW4BcIq","W5RcMmo3W7/dM8oiWRmrW6Pn","WOtdImk+qmk1WPFcUCopseu","BSkXW4VcLmkT","W7XPjSoDWQPidG","bJBcONf7WQyeW6/cN8oj","W7/dK0a","WQDpW7tdI8kUWRneW73dLH4","WR/cKrur","WOWZW7/dHNa1","umkRW5y","W6BcMMxdReVdHSkrW4FdNmoA","mZpdIM4nj0RdQaTl","W7DiESkRtW","WPSkW4OenSorW53cQCkyW78","WR7dOdxcG8ooF8oCjCkYfa","thVdHSoJWPhcI8kjWOGmja","WRBdVJZcQ8k0","FgXBW6VcPMpcUbTuWQe","WPldPmo9WRzT","cCkBzttcJa","W787ANNdUa","BmoBpmknWRpdM8o5qc/cMa","tSoMjSkLWP7cISo8tdpcOq","W47cUmoKnSkY","W5lcQSkwadNdIa","WO3dIcVcSW","w20aW6SXW77dJJLQ","W4tdLuLcW6tcJ8ordxqf","WRulW4Daya","zwfxW7S","thGgW6m","W77dQaxcICo7","tKFdStmIW61AWRVcK8ob","wdFdUcWKW6y","WOVcNSkbhvzh","WQtdK8oMWOPaDI0Q","DXCPWOpdOa","W6lcUCk1bCorW7W","AKRcRexcGaZdGrbS","W6ldMCkfjSkjW5G","omklWQXWEW","W5tcNrNcQ8kVW4hcKftdG8kk","xNFdOsS","ESoaW7S7mWPYsr8Y","FL/cNIXxDatcTb9Q","bsJdNM0u","AH7cKhJdJLRcMfGLWQi","l8k8rCkMW5u","h8o2WO9muHv2Efen","WQSgW5bHASklWO/cTmoQWQO","fCoAkSkumq","WRL5W5SjW7FcGW","u13cUMlcIG","W7ZdMei","tqalWRJdRG","55Q75B2/5OQq5yIv","W5zyWPNcTedcLJj4W6Hq","fqldSG","WRmZW4CtW7VcIg3cIW","WP/dOCk4ox4","fdJcRCoWW4ldHSoogeT/","zCoSW47cSHvAW6FcRW","WPhdICoYWRXnBZHTWOZdRG","W7DTWQ/cNW","WQrAWR9KW60","WROZW5j5EG","Ee7cTW","nsqtWQpdRIVdSq","DCo0l8knWRpdNCo2qbNcNG","WRKIWPfNt0rdzSonW7a","puJcLtlcSSogWOFdJSkRW48","oSoohSkKW6NdSdxcUv/cQG","pSkLW7noWORdGgzzW5/cSa","hCohWOOffMH1fbjh","ECoBW7JcGdW","cfOAW7aWW7tdGNaIW6K","WQf/W5FdVSk0","rmkQW4VcICkP","u2ddTZW","WQ3cQaWOWR0","zSkYW5vTW4W","kflcVmk7W6rCW780fx8","WQ7dQCktW7ZdNG","W6z4FCkzuW","zqJdHNuklKVdVtbs","tGqAWQpcV8o1z0hcJh0","v3VdStO4W7TRWRVcO8od","WRldKCk+W4FdN8opWOHmWQ8o","wCojW4tcOtzzW4RcSsa8","hsPhWRTXWQVcLMOZWOu","W6H4m8oPWRDxpmkRWOpdKq","i8kBBmojWO3dKCo2ucNcGa","W5/cMmodg8oX","W61NWQ3cNNBcQaC","paxdI3xcVmkhWPJdStFdTW","WQGgW5ddQ3O","lvJcRmkg","z0/dUrKL","uSkoi0ffzZNdOCkkWOe","AGBdJGtdJSkZW5xdMSkQW4u","WR7dL8kjW4xdIa","W6dcJCkYkXJdOSoxW7fsW6W","W71LpSo+","W4VcTSoIomkmk27cPmogua","rCoqBSkpWRxdUd/dQJ9M","WQnlW7ddVSk9WQTMW4pdKGu"];return ZB=function(){return t},ZB()}(function(t,e){let r=fo,n=t();for(;;)try{if(parseInt(r(478,"fvw#"))/1*(parseInt(r(603,"ngp^"))/2)+-parseInt(r(2067,"e7gH"))/3+-parseInt(r(1271,"Wm(U"))/4+parseInt(r(497,"Z*zj"))/5*(-parseInt(r(1211,"L%wQ"))/6)+-parseInt(r(1891,"iQ5e"))/7+-parseInt(r(1280,"VyJ6"))/8+parseInt(r(504,"kQ[&"))/9===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(ZB,928702);var eL,_Y={},rs={set(t,e){let r=fo;_Y[t]=e,eL&&eL[r(1965,"TH!d")](r(1901,"nPlG")+t,e)},get(t){return _Y[t]}},Hb=async t=>{let e=fo;eL=t[e(598,"Ssmy")].db,_Y=await eL[e(1411,"Wm(U")+e(1040,"ORsq")](e(1767,"1PdT"),{})},Slr=async t=>{let e=fo;return globalThis[e(1354,"M7ZK")]?await globalThis[e(985,")O!S")](t):t},EY=class{constructor(){let e=fo,r={SzITR:e(840,"Wm*i")+e(657,"iQ5e")+e(962,"M7ZK")+e(658,"e7gH"),kbftA:e(1734,"fvw#")+e(1997,"kQ[&"),WyLMS:e(920,"]VqL"),ZRnUV:e(1435,"Z*zj")+e(590,"p9HK"),jgHlw:e(1490,"Z*zj")+e(2134,"&3we")+e(1675,"&3we"),WcGsv:e(1201,"nbcZ")+e(1580,"M7ZK")+e(347,"TpG0")+e(1648,"orsS")+e(366,"tLvR")+e(1309,"Sxlm")+e(1470,"EVbZ")+e(1669,"m(t9")+e(1815,"Wm*i")+e(1239,"!8bv")+e(1518,"Wm(U")+"6",YEPHP:e(1007,"HdOY"),YxWEw:e(1066,"L%wQ")+e(630,"EVbZ")+e(565,"nPlG")+e(1563,"uapn"),njPJs:e(725,"m(t9")+e(626,"TpG0"),JpeiC:e(405,"a^p[")+e(1837,"fXMX")+e(1030,"J*pw")+e(2112,"uapn")+e(429,"Sxlm"),KUwHq:e(1402,"!8bv")+e(2166,"J*pw")+e(1789,")O!S")},n=r[e(2022,"Sxlm")][e(1083,"]VqL")]("|"),s=41*241+6436*1+-16317;for(;;){switch(n[s++]){case"0":this[e(1519,"&3we")]="";continue;case"1":this[e(1770,"QhYo")]=r[e(901,"iQ5e")];continue;case"2":this[e(1085,"Wm*i")+e(1465,"7Pzs")]="";continue;case"3":this[e(1978,"uapn")]=/https:\/\/pan\.xunlei\.com\/s\/([^?#]+)(?:\?[^#]*pwd=([^&#]+))?/;continue;case"4":this[e(1729,"QhYo")]="";continue;case"5":this[e(1638,")O!S")]=r[e(418,"tLvR")];continue;case"6":this[e(493,"ORsq")]="";continue;case"7":this[e(1183,"Wm*i")]="";continue;case"8":this[e(940,"VyJ6")+"d"]=r[e(690,"EVbZ")];continue;case"9":this[e(532,"m(t9")]=r[e(2050,"L%wQ")];continue;case"10":this[e(1485,"m(t9")]="";continue;case"11":this[e(686,"7E8x")+e(1827,"TH!d")]="";continue;case"12":this[e(661,"QhYo")]={"User-Agent":r[e(697,"fvw#")],Connection:r[e(1903,"3fP^")],Accept:r[e(1696,"ORsq")],"Accept-Encoding":r[e(1149,"nwJq")],"Accept-Language":r[e(700,"nwJq")]};continue;case"13":this[e(384,"1PdT")]=r[e(1529,"p9HK")];continue;case"14":this[e(2081,"Z*zj")]="";continue}break}}async[Re(406,"V9&6")](){let e=Re,r={rlBsc:function(n,s){return n>s},EnIqj:function(n,s){return n/s},pFCDi:e(1298,"tLvR")+e(1151,"yb2S"),hkgjF:e(2111,"M7ZK")+"\u767B\u5F55",evize:e(1699,"TH!d")+e(1338,"Sxlm")};if(this[e(632,"TpG0")])try{let n=JSON[e(1793,"7E8x")](ql.default[e(1790,"EVbZ")][e(1383,"7Pzs")][e(847,"!8bv")](this[e(1712,"J*pw")][e(543,"ZXHT")](".")[1])[e(1425,"VyJ6")](ql.default[e(999,"TpG0")][e(557,"Wm(U")]));r[e(814,"ORsq")](n[e(466,"CVbl")],Math[e(1761,"iQ5e")](r[e(768,"p9HK")](Date[e(956,"Wm(U")](),5007*-1+-1*139+6146)))?console[e(1848,"OFIt")](r[e(1514,"fvw#")]):console[e(449,"nPlG")](r[e(1413,"!8bv")])}catch{console[e(1741,"Z*zj")](r[e(1812,"fvw#")])}}get[Re(605,"pm(9")](){let e=Re,r={hWCty:e(368,"nwJq")},n=rs[e(2116,"ORsq")](r[e(357,"A(Z@")]);return!n&&(n=this[e(1260,"!8bv")](),rs[e(1067,"3fP^")](r[e(805,"tLvR")],n)),n}get[Re(1099,"VyJ6")](){let e=Re,r={bCIZG:e(826,"kQ[&")+"me"};return rs[e(950,"ZXHT")](r[e(941,"TH!d")])}get[Re(387,"x3v#")](){let e=Re,r={hMION:e(585,"TH!d")+"rd"};return rs[e(2105,"ngp^")](r[e(1853,"m(t9")])}get[Re(736,"ORsq")](){let e=Re,r={jhJSA:e(760,"orsS")};return rs[e(572,"1PdT")](r[e(1341,"tLvR")])}get[Re(1543,"1PdT")+Re(2193,"!8bv")](){let e=Re,r={lhaFZ:e(1256,"e7gH")+e(415,"Wm*i")};return rs[e(1701,"3fP^")](r[e(952,"7E8x")])}get[Re(1679,"!8bv")](){let e=Re,r={AdYwW:e(554,"H#v7")+"d"};return rs[e(1170,"nwJq")](r[e(960,"QhYo")])}[Re(411,"ngp^")](e){return new Promise(r=>setTimeout(r,e))}[Re(990,"Ssmy")](e){let r=Re;return ql.default[r(1348,"TH!d")](e)[r(683,"ORsq")]()}[Re(1215,"OFIt")](e){let r=Re;return ql.default[r(1537,"m(t9")](e)[r(1478,"fXMX")]()}[Re(726,")O!S")](){let e=Re,r={gzfDS:function(n,s){return n|s},RgAmx:function(n,s){return n*s},JqUUT:function(n,s){return n===s},xgzMF:function(n,s){return n|s},mvlCn:function(n,s){return n&s},YTGHc:e(640,"Ssmy")+e(456,"x3v#")+e(1975,"M7ZK")+"xx"};return r[e(883,"fXMX")][e(1500,"p9HK")](/[xy]/g,function(n){let s=e,i=r[s(1152,"Wm(U")](r[s(2074,"7E8x")](Math[s(2138,"e7gH")](),-6222+2*3119),161+1495*-5+7314);return(r[s(437,"Wm(U")](n,"x")?i:r[s(1087,"J*pw")](r[s(972,"a^p[")](i,-1*-149+-36*20+574),-3472+-2*-1740))[s(1124,"OFIt")](-84+-6*608+3764)})}[Re(1214,"&3we")+Re(755,"CF^5")](e){let r=Re,n={yXaYk:function(s,i){return s+i},vIWNk:function(s,i){return s+i},tqwzM:r(1624,")O!S")+r(1530,"pm(9")+r(1528,"fXMX"),fUQqE:r(693,"TpG0")+r(954,"J*pw")+r(802,"OFIt")+"21"};return this[r(1071,"m(t9")](this[r(668,"uapn")](n[r(1140,"TpG0")](n[r(358,"CF^5")](e,n[r(1907,"3fP^")]),n[r(614,"EVbZ")])))}[Re(546,"V9&6")+Re(1032,"M7ZK")](e){let r=Re,n={VCJnb:function(a,o){return a+o},iQrRf:function(a,o){return a+o},aqKeD:function(a,o){return a+o},IHUmg:r(1841,"69YT")+r(1498,"uapn"),FFVHv:r(1091,"e7gH")+r(813,"a^p[")+r(796,"!8bv")+r(1222,"Ssmy"),GBHjS:r(1387,"CVbl")+r(926,"3fP^"),brLeU:r(2046,"CF^5")+r(1230,"Wm(U")+r(455,"H#v7"),lvkMJ:r(1656,"tLvR")+r(2091,"fXMX")+r(577,"nPlG")+r(1003,"pm(9"),avwaK:r(2098,"Z*zj")+"1",cWDCB:r(2018,"Ssmy")+r(2107,"7Pzs"),pSMwC:r(2057,"ZXHT")+r(595,"nPlG")+r(864,"Wm*i")+r(712,"uapn")+r(1264,"ngp^"),dAeuI:r(1521,"yb2S")+r(1811,"nwJq")+r(1381,"a^p["),lmRCw:r(1659,"!8bv")+r(2015,"yb2S"),gWAbT:r(1744,"nPlG")+r(1044,"pm(9"),bxSSn:r(1980,"Wm(U")+r(629,"OFIt")+r(1323,"Wm*i")+r(987,"Z*zj"),aKUHU:r(1619,"1PdT")+r(673,"VyJ6")},s;return s=n[r(599,"V9&6")](n[r(1231,"7E8x")](n[r(525,"ngp^")](n[r(1546,"Z*zj")],n[r(757,"3fP^")]),e),n[r(898,"CVbl")]),[n[r(1532,"m(t9")],n[r(1266,"fvw#")],n[r(2130,"VyJ6")],n[r(465,"7Pzs")],n[r(1918,"L%wQ")],n[r(1773,"orsS")],n[r(1887,")O!S")],n[r(1476,"fvw#")],n[r(1150,"69YT")],n[r(1932,"7Pzs")]][r(1714,"TpG0")](a=>{let o=r;s=this[o(1332,"CF^5")](n[o(1831,"Wm(U")](s,a))}),s}async[Re(364,"TH!d")](e){let r=Re,n={XRuRC:function(i,a){return i(a)}};this[r(506,"69YT")]=e;let s=this[r(1998,"fXMX")][r(2036,"orsS")](e);s&&s[4011+-3062*3+-4*-1294]&&(this[r(1236,"ORsq")]=s[-10*942+-8850+18271],this[r(1319,"x3v#")]=n[r(1614,"a^p[")](decodeURIComponent,s[2]||""))}async[Re(596,"TH!d")](){let e=Re,r={zkELN:e(656,"7E8x"),igPKY:e(2025,"M7ZK"),VVpUB:e(1843,"CVbl")+"7",crbRR:e(2175,"Wm*i")+e(892,"e7gH")+e(544,"uapn")+"f1",ljLlF:e(714,"V9&6")+e(1973,"H#v7")+e(1695,"TH!d")+e(1636,"1PdT"),lJABa:e(1611,"M7ZK"),iNhqX:e(390,"nwJq")+e(2092,"fvw#")+e(1400,"69YT")+e(669,"69YT")+e(1917,"ORsq")+e(1232,"A(Z@")+e(1562,"a^p[")+"c",gFgQi:e(1255,"VyJ6"),cdpwD:e(865,"J*pw"),miaXM:e(2045,"A(Z@")+e(1162,"VyJ6"),hEiUh:e(1437,"J*pw"),HiGca:e(522,"H#v7"),FIdvE:e(2194,"nwJq")+e(601,"x3v#"),sayTa:function(a,o){return a===o},HnQVO:e(2110,"OFIt")},n=JSON[e(832,"pm(9")]({protocolVersion:r[e(871,"&3we")],sequenceNo:r[e(1238,")O!S")],platformVersion:"10",isCompressed:"0",appid:"40",clientVersion:r[e(1034,"Z*zj")],peerID:r[e(612,"nPlG")],appName:r[e(924,"iQ5e")],sdkVersion:r[e(539,"69YT")],devicesign:r[e(1855,"uapn")],netWorkType:"2G",providerName:r[e(784,"Z*zj")],deviceModel:r[e(2158,"uapn")],deviceName:r[e(574,"orsS")],OSVersion:"12",creditkey:"",hl:r[e(1027,"TpG0")],userName:this[e(413,"ZXHT")],passWord:this[e(887,"M7ZK")],verifyKey:"",verifyCode:"",isMd5Pwd:"0"}),s={method:r[e(1287,"m(t9")],url:this[e(776,"!8bv")]+(e(922,"V9&6")+e(740,"V9&6")+e(1277,"nwJq")),headers:{"Content-Type":r[e(1637,"CF^5")]},data:n},i=await he[e(580,"yb2S")](s);if(r[e(1259,"p9HK")](i[e(767,"TH!d")],-8527+1*-6962+15689))return console[e(1074,"TH!d")](r[e(798,"Wm(U")]),i[e(2192,"e7gH")][e(635,"ORsq")]}async[Re(426,"orsS")+Re(2095,"ngp^")](){let e=Re,r={upKer:e(1910,"tLvR")+e(2168,"CF^5")+e(710,"TH!d"),BTYiz:e(1877,"EVbZ"),FJhaL:e(1603,"J*pw")+e(600,"L%wQ")+e(1613,"ORsq")+e(392,"x3v#")+e(2027,"OFIt")+e(818,"e7gH")+e(971,"fXMX")+e(374,"tLvR")+e(1242,"CF^5")+e(1467,"L%wQ")+e(1570,"HdOY")+"6",kYCsF:e(2073,"ngp^")+e(1104,"ORsq"),yDAoH:function(a,o){return a===o}},n=JSON[e(1748,"uapn")]({client_id:this[e(1821,"CVbl")+"d"],action:r[e(1804,"nbcZ")],device_id:this[e(2016,"3fP^")],captcha_token:"",meta:{phone_number:e(912,"EVbZ")+this[e(624,"H#v7")]}}),s={method:r[e(1833,"OFIt")],url:this[e(1112,"e7gH")]+(e(1269,"EVbZ")+e(2153,"zwBc")+"it"),headers:{"User-Agent":r[e(765,"nwJq")],"Content-Type":r[e(1102,"OFIt")]},data:n},i=await he[e(1247,"1PdT")](s);if(r[e(607,"&3we")](i[e(643,"J*pw")],-1687*-2+-1*-4057+-7231))return i[e(1084,"Wm*i")][e(1710,"p9HK")+e(1780,"L%wQ")]}async[Re(983,"a^p[")+Re(2011,"EVbZ")](){let e=Re,r={ToVmz:e(519,")O!S"),vPvKx:function(o,c){return o===c},HwOxq:e(477,"7E8x"),Pazdn:e(1304,"Wm*i"),aVcMa:e(2147,"1PdT"),LXxHl:e(1952,"&3we"),mrjrY:e(587,"Wm(U")+e(461,"HdOY")+e(381,"Wm*i")+e(2049,"Wm(U")+e(1548,")O!S")+e(2188,"ZXHT")+e(537,"nPlG")+e(2002,"QhYo")+e(970,"ngp^")+e(1922,"J*pw")+e(1577,"3fP^")+e(2047,"V9&6")+e(1223,"Ssmy")+e(930,"uapn")+e(888,"e7gH")+"6",ORtWG:e(1979,"Wm(U")+e(881,"M7ZK"),lCALG:e(1849,"&3we")};if(console[e(1252,"M7ZK")](r[e(2058,"A(Z@")]),r[e(692,"&3we")](this[e(452,"M7ZK")],"")||r[e(2023,"zwBc")](this[e(2152,"yb2S")],void 0)){let o=this[e(1108,"x3v#")]();rs[e(749,"M7ZK")](r[e(1324,"L%wQ")],o)}let n=await this[e(454,"pm(9")+e(1396,"J*pw")](),s=JSON[e(677,"Z*zj")]({phone_number:e(637,"Sxlm")+this[e(1564,"EVbZ")],target:r[e(703,"7Pzs")],usage:r[e(1289,"7Pzs")],client_id:this[e(770,"Wm*i")+"d"]}),i={method:r[e(1079,"69YT")],url:this[e(1182,"TH!d")]+(e(2029,")O!S")+e(1135,"TpG0")),headers:{"User-Agent":r[e(1070,"!8bv")],"Content-Type":r[e(1090,"yb2S")],"x-captcha-token":n,"x-client-id":this[e(1781,"fXMX")+"d"],"x-device-id":this[e(1823,"orsS")]},data:s},a=await he[e(580,"yb2S")](i)[e(1446,"Wm(U")](o=>o[e(530,"H#v7")]);r[e(980,"iQ5e")](a[e(1610,"CF^5")],2*1971+-17*-563+-1*13313)&&(console[e(1142,"a^p[")](r[e(1635,"7E8x")]),this[e(2082,"VyJ6")+e(1094,"nPlG")]=a[e(1275,"Ssmy")][e(1756,"7E8x")+e(1705,"tLvR")])}async[Re(735,"p9HK")](e){let r=Re,n={IDHCx:r(1357,"ngp^"),qXgTb:r(1551,"V9&6")+r(856,"kQ[&")+r(1430,"]VqL")+r(967,"QhYo")+r(2004,"m(t9")+r(1847,"CF^5")+r(1491,"tLvR")+r(1749,"Z*zj")+r(1177,"Sxlm")+r(1760,"TH!d")+r(1057,"TH!d")+r(1742,"nbcZ")+r(1493,"CVbl")+r(1606,")O!S")+r(966,"H#v7")+"6",KgZMm:r(1718,"]VqL")+r(1516,"CF^5"),lwByj:function(s,i){return s===i}};if(e){let s=JSON[r(720,"H#v7")]({verification_code:e,verification_id:this[r(919,"m(t9")+r(1115,"p9HK")],client_id:this[r(470,"yb2S")+"d"]}),i={method:n[r(664,"zwBc")],url:this[r(2024,"m(t9")]+(r(460,"H#v7")+r(1652,"kQ[&")+r(1664,"iQ5e")),headers:{"user-agent":n[r(1048,"fvw#")],"content-type":n[r(1653,"tLvR")],"x-client-id":this[r(1595,"nwJq")+"d"],"x-device-id":this[r(2152,"yb2S")]},data:s},a=await he[r(1286,"nbcZ")](i)[r(1605,"zwBc")](o=>o[r(1031,"p9HK")]);if(n[r(1628,"CVbl")](a[r(1982,"TpG0")],2407*-1+-1920+4527)){let o=a[r(1810,"ngp^")][r(2062,"nPlG")+r(1351,"&3we")];await this[r(393,"Wm*i")+"n"](e,o)}}}async[Re(1576,"V9&6")+"n"](e,r){let n=Re,s={whxAp:n(1559,"QhYo"),GIAEp:n(1378,"A(Z@")+n(1459,"TH!d")+n(2125,"fvw#")+n(1180,"3fP^")+n(968,"V9&6")+n(1219,"m(t9")+n(1054,"!8bv")+n(1762,"HdOY")+n(2108,"69YT")+n(855,"pm(9")+n(1391,"1PdT")+n(1957,"]VqL")+n(1881,"V9&6")+n(975,"a^p[")+n(1899,"3fP^")+"6",mXEYy:n(551,"69YT")+n(421,"p9HK"),XOmGM:function(u,l){return u===l},YOAnv:n(2013,"pm(9"),swVLM:n(1993,"fvw#"),SCWrB:function(u,l){return u+l},VjAwl:function(u,l){return u+l},iMjmy:n(1726,"fvw#")+"d",rkDmr:n(495,"fXMX")+n(1394,")O!S"),DCxvn:function(u,l){return u+l},VnAqg:n(789,"L%wQ")},i=await this[n(524,"Wm(U")+n(935,"iQ5e")](),a=JSON[n(839,"L%wQ")]({username:n(912,"EVbZ")+this[n(1708,"uapn")],verification_code:e,verification_token:r,client_id:this[n(2026,"Wm(U")+"d"]}),o={method:s[n(1631,"ORsq")],url:this[n(2096,"&3we")]+(n(1025,"TH!d")+n(1463,"nPlG")),headers:{"User-Agent":s[n(803,"fXMX")],"Content-Type":s[n(1340,"TH!d")],"x-captcha-token":i,"x-client-id":this[n(1990,"orsS")+"d"],"x-device-model":"PC","x-device-id":this[n(1621,"ZXHT")]},data:a},c=await he[n(699,"Wm*i")](o)[n(1764,"p9HK")](u=>u[n(379,"tLvR")]);s[n(1403,"H#v7")](c[n(848,"uapn")],2136+88*-22)?(console[n(462,"CVbl")](s[n(793,"orsS")]),rs[n(1166,"a^p[")](s[n(1434,"A(Z@")],s[n(1474,"nbcZ")](s[n(2077,")O!S")](c[n(1687,"nwJq")][n(1282,"orsS")]," "),c[n(706,"Wm(U")][n(1117,"69YT")+"en"])),rs[n(1077,"kQ[&")](s[n(2090,"fXMX")],c[n(360,"OFIt")][n(716,"V9&6")]),rs[n(641,"Wm*i")](s[n(1384,"J*pw")],c[n(761,"TpG0")][n(1029,"iQ5e")+n(1565,"7E8x")])):console[n(509,"Ssmy")](s[n(1724,")O!S")](s[n(1915,"HdOY")],c[n(957,"J*pw")]))}async[Re(1709,"Z*zj")+Re(1609,"3fP^")](){let e=Re,r={TAxaT:e(1068,"QhYo")+e(878,"x3v#"),OrUzW:e(1559,"QhYo"),VgvUW:e(1746,"zwBc")+e(631,"iQ5e")+e(1541,")O!S")+e(1123,"J*pw")+e(775,"CF^5")+e(613,"L%wQ")+e(487,"x3v#")+e(562,"Wm*i")+e(475,"tLvR")+e(2189,"Wm*i")+e(1899,"3fP^")+"6",VxzFG:e(1039,"m(t9")+e(1089,"iQ5e"),QWkFn:function(a,o){return a===o}},n=JSON[e(1492,"EVbZ")]({client_id:this[e(804,"x3v#")+"d"],action:r[e(1936,"1PdT")],device_id:this[e(549,"p9HK")],captcha_token:"",meta:{phone_number:e(902,"CVbl")+this[e(1359,"L%wQ")]}}),s={method:r[e(1144,"Wm*i")],url:this[e(1753,"L%wQ")]+(e(1534,"L%wQ")+e(1228,"J*pw")+"it"),headers:{"User-Agent":r[e(560,"69YT")],"Content-Type":r[e(1717,"3fP^")]},data:n},i=await he[e(1561,"fXMX")](s);if(r[e(2055,"orsS")](i[e(2109,"Ssmy")],1527*-5+-2052+-9887*-1))return i[e(830,"Sxlm")][e(1632,"69YT")+e(1639,"nbcZ")]}async[Re(1288,"!8bv")](){let e=Re,r={CbhCT:function(n,s){return n===s},NDwop:e(1417,"!8bv"),XKCHK:e(2075,"OFIt")+e(1839,"QhYo")+e(1573,"fvw#")+e(1648,"orsS")+e(731,"1PdT")+e(953,"Ssmy")+e(1657,")O!S")+e(1229,"TH!d")+e(1242,"CF^5")+e(927,"Wm(U")+e(1453,"V9&6")+"6",mswby:e(762,"A(Z@")+e(748,"Z*zj"),WSPSZ:e(1822,"V9&6"),LgfmX:function(n,s){return n===s},iBeYs:e(2019,"CF^5"),OVXPw:function(n,s){return n+s},BBUSl:e(1720,"p9HK")+"d",cKCHg:function(n,s){return n>s},xxJvr:function(n,s){return n/s},Yabom:e(526,"Sxlm"),Wqvdm:e(1080,"V9&6")};if(r[e(1301,"69YT")](this[e(1356,"&3we")],void 0)||r[e(866,"ORsq")](this[e(1987,"M7ZK")],"")){let n=await this[e(1660,"TH!d")+e(758,"Z*zj")](),s=JSON[e(1270,"Wm(U")]({username:e(777,"e7gH")+this[e(1099,"VyJ6")],password:this[e(2165,"V9&6")],client_id:this[e(2143,"!8bv")+"d"]}),i={method:r[e(2003,"QhYo")],url:this[e(1615,"TpG0")]+(e(1552,"J*pw")+e(822,"Ssmy")),headers:{"User-Agent":r[e(843,"OFIt")],"Content-Type":r[e(1062,"QhYo")],"accept-language":r[e(428,"L%wQ")],"x-captcha-token":n,"x-client-id":this[e(2026,"Wm(U")+"d"],"x-device-id":this[e(1716,"Sxlm")]},data:s},a=await he[e(1914,"nwJq")](i)[e(896,"7E8x")](o=>o[e(907,"nwJq")]);r[e(1486,"m(t9")](a[e(1783,"yb2S")],24*171+743+-4647*1)&&(rs[e(1308,"CF^5")](r[e(634,"uapn")],r[e(589,"Wm(U")](r[e(2135,"nwJq")](a[e(439,"TH!d")][e(998,"L%wQ")]," "),a[e(1482,"p9HK")][e(1185,"]VqL")+"en"])),rs[e(744,"HdOY")](r[e(2066,"HdOY")],a[e(2146,"1PdT")][e(1436,"nwJq")])),await this[e(835,"zwBc")+"a"]()}else{let n=JSON[e(2101,"ORsq")](ql.default[e(2149,"tLvR")][e(1159,"e7gH")][e(1730,"L%wQ")](this[e(1585,"V9&6")][e(1101,"m(t9")](".")[1])[e(533,"zwBc")](ql.default[e(921,"TH!d")][e(849,"orsS")]));r[e(1642,"H#v7")](n[e(1053,"]VqL")],Math[e(1141,"pm(9")](r[e(1796,"&3we")](Date[e(783,"Z*zj")](),-85*113+8490+2115)))?console[e(1951,"H#v7")](r[e(1475,"ngp^")]):(console[e(752,"69YT")](r[e(810,"nbcZ")]),rs[e(819,"1PdT")](r[e(634,"uapn")],""),await this[e(1479,"fvw#")]())}}async[Re(1735,"fXMX")+"a"](){let e=Re,r={oQwXI:e(1412,"!8bv")+e(1296,")O!S")+e(1447,"pm(9")+e(445,"nbcZ")+e(1370,"iQ5e"),oWRjO:e(645,"3fP^")+e(1633,"1PdT"),zgDDh:e(1427,"M7ZK"),FFsGV:e(1317,"CVbl")+e(1421,"Sxlm")+e(2030,"]VqL")+e(756,"69YT"),rsutH:e(1160,"ORsq")+e(1452,"ORsq"),wTael:e(1078,"nbcZ"),zfCtA:e(1692,"Wm*i")+e(1426,"!8bv")+e(503,"fvw#")+e(1617,"3fP^")+e(934,"ngp^")+"it",iqaIe:e(996,"69YT")+e(516,"ngp^")+e(861,"J*pw")+e(1414,"ngp^")+e(1909,"Ssmy")+e(1857,"tLvR")+e(1900,"yb2S")+e(1640,"]VqL")+e(1399,"TpG0")+e(1538,"7E8x")+e(1570,"HdOY")+"6",olBcC:e(531,"H#v7")+e(1556,"a^p["),XDMPY:e(1582,"3fP^")+e(1703,"69YT")+e(1118,"EVbZ")+e(1303,"V9&6")+e(1828,"Wm*i"),StUDJ:e(1017,"V9&6")+e(1382,"V9&6")+e(1721,"iQ5e"),thYQn:e(1520,"Wm*i"),VGmgA:e(578,"kQ[&")+e(602,"orsS")+e(1362,"Wm(U")+e(362,"orsS")+e(982,"tLvR")+e(1205,"ZXHT")+e(884,"pm(9"),zEnnb:function(u,l){return u(l)}},n=JSON[e(1996,"m(t9")]({client_id:this[e(1990,"orsS")+"d"],action:r[e(1650,"m(t9")],device_id:this[e(1824,"7Pzs")],captcha_token:"",meta:{username:"",phone_number:this[e(2128,"nwJq")],email:"",package_name:r[e(1202,"J*pw")],client_version:r[e(1809,"Sxlm")],captcha_sign:r[e(1276,"VyJ6")],timestamp:r[e(1376,"M7ZK")],user_id:this[e(2185,"yb2S")]}}),s={method:r[e(2080,"nPlG")],url:r[e(2070,"!8bv")],headers:{"User-Agent":r[e(702,"Z*zj")],"Content-Type":r[e(1989,"tLvR")],"accept-language":r[e(1854,"Wm*i")],"content-type":r[e(1740,"L%wQ")]},data:n},i=await he[e(713,"zwBc")](s)[e(1836,"a^p[")](u=>u[e(615,"m(t9")]),a=i[e(2146,"1PdT")][e(1455,"H#v7")+e(910,"Wm*i")],o={method:r[e(588,"pm(9")],url:r[e(1670,")O!S")],headers:{"User-Agent":r[e(1728,"Wm*i")],"accept-language":r[e(1428,"]VqL")],authorization:this[e(1647,"Z*zj")],"content-type":r[e(877,"nbcZ")],"x-captcha-token":a,"x-client-id":this[e(931,"ngp^")+"d"],"x-device-id":this[e(828,"HdOY")]}},c=(await r[e(1385,"uapn")](he,o)[e(1373,"m(t9")](u=>u[e(907,"nwJq")]))[e(1775,"69YT")]}async[Re(617,"nPlG")+Re(1321,"OFIt")](e,r){let n=Re,s={SOCar:n(1472,"a^p[")+n(1143,"3fP^"),gVhYN:n(1154,"CF^5")+n(1132,"Z*zj")+n(786,"Ssmy")+"6a",nRXVK:n(1535,"tLvR")+n(1633,"1PdT"),QqslP:n(431,"ZXHT"),yPpuX:n(1163,"fXMX")+n(1916,"ORsq")+n(1015,"iQ5e")+n(2154,"uapn"),RNraN:n(1172,"TH!d")+n(628,"HdOY"),MNrnn:n(1483,"L%wQ"),WgWNB:n(1119,"L%wQ")+n(1274,"kQ[&")+n(1646,"m(t9")+n(410,"uapn")+n(2196,"fvw#")+n(1023,"CF^5")+n(1900,"yb2S")+n(1229,"TH!d")+n(1815,"Wm*i")+n(1962,"orsS")+n(1875,"CVbl")+"6",IPDEw:n(604,")O!S")+n(1197,"uapn"),scYZo:function(u,l){return u===l}},i=r+":"+e,a=JSON[n(1558,"QhYo")]({client_id:s[n(1545,"iQ5e")],action:i,device_id:s[n(545,"QhYo")],captcha_token:"",meta:{username:"",phone_number:"",email:"",package_name:s[n(801,"!8bv")],client_version:s[n(1444,"ORsq")],captcha_sign:s[n(1169,"ORsq")],timestamp:s[n(650,"fXMX")],user_id:this[n(1861,"69YT")]}}),o={method:s[n(1342,"nbcZ")],url:this[n(1813,"tLvR")]+(n(564,"M7ZK")+n(992,"m(t9")+"it"),headers:{"User-Agent":s[n(1209,"Sxlm")],"Content-Type":s[n(458,"OFIt")]},data:a},c=await he[n(969,"69YT")](o);if(s[n(2100,"ZXHT")](c[n(858,"69YT")],-205*13+3281+-416))return c[n(1084,"Wm*i")][n(2063,"pm(9")+n(1449,")O!S")]}async[Re(1419,"a^p[")+Re(2064,"7Pzs")](e,r){let n=Re,s={gApai:n(1116,"VyJ6")+n(2042,"QhYo")+n(541,"]VqL"),RtsJN:n(1139,"VyJ6")+"7",HUgcU:n(1178,"EVbZ")+n(1644,"e7gH"),hipLt:n(1311,"TpG0"),pjCjp:n(750,"ngp^")+n(2119,"pm(9")+n(1314,"&3we")+n(354,"7E8x")+n(698,"x3v#")+n(1677,"J*pw")+n(371,"7E8x")+n(484,"CF^5")+n(1926,"Sxlm")+n(1819,"!8bv")+n(627,"zwBc")+n(386,"TH!d")+n(1759,"p9HK")+n(492,"VyJ6")+n(502,"M7ZK")+n(1013,"&3we")+n(375,"J*pw")+n(945,"Sxlm")+n(1568,"Ssmy")+n(1499,"69YT")+n(1859,"V9&6")+n(382,"HdOY")+n(1451,"ZXHT"),ahEct:n(771,"3fP^")+n(1404,"zwBc"),XfSnx:function(l,d){return l===d}},i=r+":"+e,a=this[n(1337,"M7ZK")+n(1407,"Wm(U")](this[n(2118,"ORsq")]),o=JSON[n(1984,"V9&6")]({client_id:this[n(470,"yb2S")+"d"],action:i,device_id:this[n(1826,"a^p[")],captcha_token:"",meta:{package_name:s[n(350,"fXMX")],client_version:s[n(442,"69YT")],captcha_sign:"1."+a,timestamp:s[n(1590,")O!S")],user_id:this[n(1292,"Wm(U")]}}),c={method:s[n(1372,"nwJq")],url:this[n(1704,"Ssmy")]+(n(1227,")O!S")+n(1763,"7Pzs")+"it"),headers:{"User-Agent":s[n(918,"orsS")],"Content-Type":s[n(1291,"Wm*i")]},data:o},u=await he[n(2051,"!8bv")](c);if(s[n(394,"EVbZ")](u[n(638,"iQ5e")],1*1171+5744+-1343*5))return u[n(929,"H#v7")][n(769,"nPlG")+n(910,"Wm*i")]}[Re(1864,"VyJ6")](){let e=Re,r={hTvmX:e(1954,"Ssmy")+e(361,"3fP^"),KwNKo:e(1361,"kQ[&")+e(836,"tLvR"),JaFoc:e(986,"3fP^")+e(1261,"p9HK"),cQcbi:e(788,"e7gH")+e(403,"H#v7")+e(1525,"J*pw"),bvxCr:e(1052,"HdOY")+e(1723,"L%wQ"),kObub:e(2083,"L%wQ")+e(1956,"1PdT")+e(571,"A(Z@")+"0S",mIAyj:e(1505,"3fP^")+e(844,"nPlG")+e(1688,"a^p[")+"rt",MNOyi:e(1114,"]VqL")+e(663,"]VqL"),NJQqP:e(1432,"L%wQ")+e(435,"QhYo"),gjtPC:e(995,"H#v7")+e(619,"A(Z@")+e(1082,"Wm(U"),SJwkI:e(880,"]VqL")+e(797,"]VqL")+e(2031,"7E8x")+"Xs",IyvAS:e(816,"OFIt")+e(609,"ZXHT"),lOuFy:e(1921,"L%wQ"),cjYUz:e(792,"zwBc")+e(988,"A(Z@"),fzmSW:e(951,"nwJq")+e(1737,"pm(9")+e(436,"V9&6")+"6a",JHetg:function(o,c){return o+c},afvcs:function(o,c){return o+c},mhejA:function(o,c){return o+c},PsZpg:function(o,c){return o+c},nATUe:e(1959,"L%wQ")+e(1786,"a^p["),gauEW:function(o,c){return o<c}},n=[r[e(1686,"kQ[&")],r[e(1557,"EVbZ")],r[e(1977,"&3we")],"m2",r[e(1125,"p9HK")],r[e(1581,"m(t9")],r[e(1477,"Wm(U")],r[e(984,"OFIt")],r[e(2085,"M7ZK")],r[e(812,"kQ[&")],r[e(1715,"e7gH")],r[e(774,"tLvR")]],s={ClientID:r[e(1661,"7E8x")],ClientVersion:r[e(2191,"3fP^")],PackageName:r[e(1364,"ZXHT")],DeviceID:r[e(2174,"1PdT")]},i=Date[e(1037,"J*pw")](),a=r[e(1732,"QhYo")](r[e(666,"L%wQ")](r[e(1468,"]VqL")](r[e(520,"1PdT")](s[e(404,"pm(9")],s[e(573,"iQ5e")+e(1634,"iQ5e")]),s[e(963,"x3v#")+"e"]),s[e(1950,"7Pzs")]),r[e(1598,"Z*zj")]);for(let o=-6522+2*3380+-238;r[e(523,"zwBc")](o,n[e(1866,"Wm*i")]);o++)a=ql.default[e(538,"!8bv")](r[e(909,"J*pw")](a,n[o]))[e(1898,"pm(9")]();return r[e(1860,"QhYo")]("1.",a)}async[Re(660,"tLvR")+"st"](){let e=Re,r={VCglt:function(c,u){return c===u},ZqsVI:e(353,"Wm*i"),fiNYE:function(c,u){return c(u)},NoOOr:e(2186,"a^p[")+e(1484,"e7gH"),kSQZj:e(2105,"ngp^"),mLLrg:e(345,"1PdT"),ksCBw:e(718,"x3v#")+e(1671,"EVbZ")+e(1517,"M7ZK")+e(949,"CVbl")+e(1999,"CVbl")+e(1607,"1PdT")+e(746,"HdOY")+e(422,"1PdT")+e(1846,"OFIt")+e(2189,"Wm*i")+e(947,"Sxlm")+"6",EwiMV:e(1109,"Wm*i")+e(868,"iQ5e")+e(591,"M7ZK")+e(1137,"TH!d")+e(743,"yb2S"),Qxrmw:e(2140,"tLvR")+e(1471,"e7gH"),BHzvt:e(723,"kQ[&")+e(529,"VyJ6")+e(791,"a^p[")+"6a",sOjyv:function(c,u){return c in u},gxsoi:function(c,u){return c!==u},yhcrb:function(c,u){return c>u},cIVwO:function(c,u){return c!==u},TpWaq:function(c,u){return c>=u}},n=r[e(1216,"ngp^")],s=r[e(1902,"HdOY")],i=await this[e(1908,"ngp^")+e(1257,"]VqL")](n,s),a={method:r[e(365,"CF^5")],url:this[e(685,"uapn")]+(e(915,"nPlG")+e(675,"CVbl")+e(678,"p9HK"))+this[e(1501,"a^p[")]+(e(873,"3fP^")+"=")+this[e(2173,"tLvR")]+(e(1069,"A(Z@")+e(939,"CVbl")+e(548,"QhYo")+e(396,"uapn")+e(1134,"TH!d")),headers:{"User-Agent":r[e(2038,"]VqL")],"accept-language":r[e(654,"CVbl")],authorization:"","x-captcha-token":i,"x-client-id":r[e(682,"pm(9")],"x-device-id":r[e(414,"fXMX")]}},o=await he[e(580,"yb2S")](a);if(r[e(1310,"e7gH")](o[e(1263,"H#v7")],-8301*-1+-5*547+-5366*1)){let c={},u=[],l=[];this[e(1523,"orsS")+e(1858,"p9HK")]=o[e(2127,"A(Z@")][e(1085,"Wm*i")+e(1272,"m(t9")],o[e(439,"TH!d")][e(1096,"Wm*i")][e(893,"!8bv")](f=>{let m=e;if(r[m(1880,"]VqL")](f[m(1612,"ngp^")],""))u[m(485,"x3v#")](f.id);else if(r[m(1862,"EVbZ")](f[m(451,"x3v#")+m(2132,"TH!d")],r[m(440,"fvw#")])){let p=/[#|'"\[\]&<>]/g,h=p[m(1349,"H#v7")](f[m(1193,"orsS")])?f[m(1890,"Z*zj")][m(916,"V9&6")](p,""):f[m(961,"M7ZK")];l[m(1983,"CVbl")]({name:h,size:r[m(432,"yb2S")](Number,f[m(1618,"pm(9")])||76*110+-356+-8004,fileId:f.id,share_id:this[m(981,"fXMX")],parent_id:f[m(1207,"A(Z@")],pass_code_token:r[m(993,"TpG0")](encodeURIComponent,this[m(1948,"zwBc")+m(1002,"nwJq")]),pass_code:this[m(441,"EVbZ")]})}}),!r[e(1806,"zwBc")](o[e(1750,"&3we")][e(1569,"J*pw")],c)&&r[e(1649,"QhYo")](o[e(1805,")O!S")][e(2187,"nbcZ")],void 0)&&(c[o[e(517,"a^p[")][e(863,"QhYo")]]=[]),r[e(1986,"zwBc")](l[e(2122,"iQ5e")],1657+-3*1223+2012)&&r[e(1579,"ngp^")](o[e(1810,"ngp^")][e(1738,"TpG0")],void 0)&&(c[o[e(742,"nPlG")][e(1911,"OFIt")]]=[...l]);let d=await Promise[e(1302,"69YT")](u[e(416,"QhYo")](async f=>this[e(1930,"V9&6")+e(521,"CF^5")](f)));return d=d[e(1297,"&3we")](f=>f!=null)[e(2068,"!8bv")](),r[e(2145,"CF^5")](d[e(1171,"zwBc")],-2334*1+1063*-1+3397)&&c[o[e(346,"VyJ6")][e(2171,"A(Z@")]][e(1928,"ZXHT")](...d),c}}async[Re(1020,"TH!d")+Re(1602,"Wm(U")](e){let r=Re,n={HPpDn:function(u,l){return u===l},cOwIs:function(u,l){return u===l},hgzTj:r(1035,"pm(9"),JHvKV:function(u,l){return u(l)},cktGM:r(829,"7E8x")+r(684,"TpG0"),NBucL:r(722,"pm(9"),QssAg:r(1700,"7Pzs"),HuyED:r(973,"ngp^")+r(799,"nwJq")+r(2141,"]VqL")+r(1629,"M7ZK")+r(1931,"uapn")+r(2137,"ngp^")+r(1195,"Z*zj")+r(540,"e7gH")+r(2033,"V9&6")+r(618,"EVbZ")+r(450,"pm(9")+"6",xTdTG:r(1582,"3fP^")+r(1418,"Ssmy")+r(1127,"A(Z@")+r(1258,"3fP^")+r(1360,"VyJ6"),daEst:r(1802,"Z*zj")+r(1367,"m(t9"),bLjQj:r(2072,"1PdT")+r(869,"A(Z@"),FrZGZ:r(1431,"uapn")+r(1e3,"CVbl")+r(444,"M7ZK")+"6a"},s=n[r(1497,"nPlG")],i=n[r(1976,"fvw#")],a=await this[r(689,"7E8x")+r(1305,"V9&6")](s,i),o={method:n[r(1944,"&3we")],url:this[r(532,"m(t9")]+(r(1433,"&3we")+r(1042,"CVbl")+r(2150,"CF^5")+"=")+this[r(1092,"EVbZ")]+(r(527,"&3we")+"=")+e+(r(1056,"uapn")+r(482,"uapn"))+n[r(890,"Z*zj")](encodeURIComponent,this[r(1450,"V9&6")+r(1465,"7Pzs")])+(r(2180,"H#v7")+r(496,"7Pzs")+r(528,"tLvR")+r(1507,"Sxlm")+r(1065,"iQ5e")),headers:{"User-Agent":n[r(518,"ngp^")],"accept-language":n[r(424,"A(Z@")],authorization:"","content-type":n[r(672,"3fP^")],"x-captcha-token":a,"x-client-id":n[r(2037,"TH!d")],"x-device-id":n[r(581,"V9&6")]}},c=await he[r(1327,"tLvR")](o);if(n[r(1138,"&3we")](c[r(679,"3fP^")],-937+-5*-491+-1318)){let u=[],l=[];c[r(1081,"uapn")][r(837,"CVbl")][r(1592,"A(Z@")](f=>{let m=r;if(n[m(2053,"7Pzs")](f[m(1153,"x3v#")],""))u[m(1526,"7E8x")](f.id);else if(n[m(2104,"tLvR")](f[m(1807,"nPlG")+m(2132,"TH!d")],n[m(1265,"orsS")])){let p=/[#|'"\[\]&<>]/g,h=p[m(1583,"iQ5e")](f[m(2086,"]VqL")])?f[m(1587,"CVbl")][m(1829,"nwJq")](p,""):f[m(1817,"TpG0")];l[m(874,"m(t9")]({name:h,size:n[m(1424,"CVbl")](Number,f[m(2202,"1PdT")])||6987+1*806+-7793,fileId:f.id,share_id:this[m(1129,"nbcZ")],parent_id:f[m(355,"Ssmy")],pass_code_token:n[m(1814,"L%wQ")](encodeURIComponent,this[m(1064,"J*pw")+m(1422,"kQ[&")]),pass_code:this[m(1883,"ORsq")]})}});let d=await Promise[r(1689,"yb2S")](u[r(1221,"7E8x")](async f=>this[r(2088,"yb2S")+r(1290,"ORsq")](f)));return d=d[r(1731,"H#v7")](f=>f!=null),[...l,...d[r(510,"H#v7")]()]}}async[Re(1267,"7E8x")+"l"](e,r,n,s=""){let i=Re,a={UvPZi:function(m,p){return m!==p},PkntD:function(m,p){return m===p},uVtMV:function(m,p){return m+p},wIVBh:i(1745,"nbcZ")+i(1281,"m(t9")+i(586,"M7ZK")+i(1955,"tLvR")+i(1022,"CVbl")+"l=",FiCsS:function(m,p){return m(p)},LwbdU:i(1972,"tLvR")+i(1508,"pm(9"),nOmAg:i(808,"fXMX"),KaKjc:i(1001,"ORsq"),iJHaA:i(1201,"nbcZ")+i(1268,"tLvR")+i(733,"7Pzs")+i(1971,"zwBc")+i(1318,"&3we")+i(745,"zwBc")+i(487,"x3v#")+i(1200,"7Pzs")+i(2142,"QhYo")+i(1239,"!8bv")+i(2203,"]VqL")+"6",MVlDK:i(1591,"HdOY")+i(680,"!8bv")+i(2056,"ngp^")+i(859,"CVbl")+i(1283,"OFIt"),CYLZV:i(1511,"nPlG"),PfKQs:i(2093,"V9&6")+i(834,"e7gH"),pmxBe:i(1787,"&3we")+i(568,"V9&6"),KoIRJ:i(741,"EVbZ")+i(1751,"TpG0")+i(948,"nbcZ")+"6a",OFXZP:function(m,p){return m===p}},o=a[i(402,"1PdT")],c=a[i(1393,"A(Z@")],u=await this[i(1388,"x3v#")+i(1920,")O!S")](o,c),l=s||this[i(2205,"orsS")]||"",d={method:a[i(1797,"fvw#")],url:this[i(648,"TH!d")]+(i(1408,"pm(9")+i(870,"nPlG")+i(1397,"EVbZ")+i(1199,"zwBc")+"=")+a[i(1531,"&3we")](encodeURIComponent,n)+(i(1105,"nPlG")+i(1966,"7Pzs"))+e+i(1818,"1PdT")+r+(i(1398,"A(Z@")+"e=")+l,headers:{"User-Agent":a[i(556,"Wm*i")],"accept-language":a[i(2103,"yb2S")],authorization:"","cache-control":a[i(1210,"ORsq")],"content-type":a[i(1496,"m(t9")],"x-captcha-token":u,"x-client-id":a[i(1676,"x3v#")],"x-device-id":a[i(904,"HdOY")]}},f=await he[i(2178,")O!S")](d);if(a[i(879,"H#v7")](f[i(2099,"x3v#")],1206+-3831*1+2825)){this[i(2021,"!8bv")]="";let m=[];return f[i(845,"iQ5e")][i(1527,"7E8x")][i(1589,"Ssmy")][i(389,"OFIt")](p=>{let h=i;a[h(471,"L%wQ")](p[h(377,"nwJq")],null)&&(a[h(1872,"ngp^")](this[h(397,"yb2S")],"")&&(this[h(1335,"Z*zj")]=new URL(p[h(1779,"]VqL")][h(1792,"]VqL")])[h(398,"zwBc")]),m[h(1526,"7E8x")](p[h(817,"iQ5e")],a[h(481,"A(Z@")](a[h(1845,"TH!d")],a[h(825,"A(Z@")](encodeURIComponent,p[h(639,"pm(9")][h(1800,"V9&6")]))))}),m}return[]}async[Re(2007,"zwBc")+"ta"](e){let r=Re,n={ZmXwo:r(2113,"zwBc")};if(e[r(2048,"nbcZ")](n[r(1429,"kQ[&")]))return await this[r(1165,"TpG0")](e),await this[r(1495,"Ssmy")+"st"]()}async[Re(1217,"x3v#")](e,r,n){let s=Re,i={EyoeW:s(1004,"CF^5")+s(1333,"Wm*i"),wKKTP:s(2170,"nbcZ"),PwQpW:function(f,m){return f(m)},HEher:s(489,"CF^5"),aUWtj:s(1059,"VyJ6")+s(1671,"EVbZ")+s(1438,"a^p[")+s(1913,"]VqL")+s(1572,"A(Z@")+s(380,"fXMX")+s(1588,"69YT")+s(2176,"CF^5")+s(886,"1PdT")+s(1919,"Sxlm")+s(2129,"A(Z@")+"6",yuLzc:s(1801,"HdOY")+s(1197,"uapn"),URlgG:s(1051,"J*pw")+s(2120,"QhYo")+s(852,"nwJq")+s(399,"EVbZ")+s(1251,"CF^5"),lpKip:function(f,m){return f===m},CSgtj:s(1156,")O!S"),umGQb:s(1896,"uapn")},a=i[s(1316,"nPlG")],o=i[s(1243,"69YT")],c=await this[s(1680,"CVbl")+s(1011,"EVbZ")](a,o),u=JSON[s(720,"H#v7")]({parent_id:this[s(751,"a^p[")],share_id:r,pass_code_token:i[s(1691,"Z*zj")](decodeURIComponent,n),ancestor_ids:[],file_ids:[e],specify_parent_id:!0}),l={method:i[s(1120,"VyJ6")],url:this[s(417,"]VqL")]+(s(1685,"V9&6")+s(1539,"!8bv")+"re"),headers:{"User-Agent":i[s(2034,"pm(9")],"Content-Type":i[s(705,"3fP^")],"accept-language":i[s(759,"a^p[")],authorization:this[s(1834,"yb2S")],"x-captcha-token":c,"x-client-id":this[s(1795,"zwBc")+"d"],"x-device-id":this[s(2076,"CVbl")]},data:u},d=await he[s(1914,"nwJq")](l)[s(1764,"p9HK")](f=>f[s(1865,"J*pw")]);return i[s(2161,"TH!d")](d?.[s(1783,"yb2S")],-1*3013+457*-11+8240)&&i[s(2089,"p9HK")](d?.[s(1464,"!8bv")]?.[s(991,"7Pzs")+"us"],"OK")?(console[s(2131,"!8bv")](i[s(1935,"!8bv")]),!0):(console[s(1741,"Z*zj")](d?.[s(1460,"tLvR")]?.[s(1410,"7E8x")+"us"]||s(2160,"zwBc")+(d?.[s(2109,"Ssmy")]||i[s(1155,"nPlG")])),!1)}async[Re(738,"]VqL")](e,r,n){let s=Re,i={ZUHTk:function(a,o){return a!==o},rFyss:s(434,"nPlG")+s(1043,"nPlG"),eatPF:s(754,"Wm(U")};if(await this[s(976,"1PdT")](),i[s(1970,"69YT")](this[s(923,"fXMX")],"")&&i[s(1234,"a^p[")](this[s(1892,"H#v7")],void 0)){if(!await this[s(1856,"nwJq")](e,r,n))throw new Error(i[s(1820,"tLvR")])}else throw new Error(i[s(407,"1PdT")])}async[Re(1882,"QhYo")](){let e=Re,r={rfWbG:function(u,l){return u===l},zPSWG:e(570,"nbcZ")+e(2084,"QhYo"),pfPEO:e(2105,"ngp^"),PCTuP:e(1167,"ZXHT"),XuTmu:e(550,"yb2S")+e(707,"p9HK")+e(1600,"]VqL")+e(354,"7E8x")+e(1895,"V9&6")+e(2106,"ZXHT")+e(2197,"a^p[")+e(908,"Ssmy")+e(1355,"TH!d")+e(1240,"iQ5e")+e(644,"Sxlm")+e(1651,"]VqL")+e(1423,"J*pw")+e(2087,"fXMX")+e(1968,"a^p[")+e(1299,"ngp^")+e(1179,"uapn")+e(1906,"p9HK")+e(694,"fXMX")+e(1244,"J*pw")+e(2148,"ZXHT")+e(1220,"nPlG")+e(535,"nwJq"),KpgCk:e(882,")O!S")+e(875,"7E8x")+e(1794,"uapn")+e(1326,"tLvR")+e(1345,"H#v7"),cweia:e(1006,"p9HK")+e(1457,"69YT")};(r[e(425,"tLvR")](this[e(1834,"yb2S")],void 0)||r[e(1594,"e7gH")](this[e(427,"a^p[")],""))&&await this[e(850,"tLvR")]();let n=r[e(2017,"J*pw")],s=r[e(925,"nPlG")],i=await this[e(667,"nbcZ")+e(1212,"Ssmy")](n,s),a=this[e(391,"HdOY")]+(e(542,"nPlG")+e(2200,"p9HK")+e(704,"iQ5e")+e(2006,"7E8x")+e(1088,"M7ZK")+e(1596,"L%wQ")+e(932,"pm(9")+e(2059,"TpG0")+e(1204,"CF^5")+e(1515,"J*pw")+e(737,"pm(9")+e(448,"M7ZK")+e(1879,"kQ[&")+e(1380,"!8bv")+e(1727,"ZXHT")+e(1904,"zwBc")+e(1542,"J*pw")+e(2014,"!8bv")+e(715,"L%wQ")),o={method:r[e(2008,"p9HK")],url:a,headers:{"User-Agent":r[e(1536,"p9HK")],"accept-language":r[e(514,"M7ZK")],authorization:this[e(2123,"VyJ6")],"content-type":r[e(1601,"M7ZK")],"x-captcha-token":i,"x-client-id":this[e(1969,"QhYo")+"d"],"x-device-id":this[e(1823,"orsS")]}},c=await he[e(1313,"orsS")](o);if(r[e(1706,"M7ZK")](c[e(638,"iQ5e")],-580+2383*-2+2*2773)){let u=c[e(761,"TpG0")][e(1481,"yb2S")][e(780,"CF^5")](l=>l[e(1575,"Wm*i")]===this[e(1186,"H#v7")]);u?this[e(493,"ORsq")]=u.id:this[e(1390,"tLvR")]=""}}async[Re(1175,"nbcZ")](){let e=Re,r={MHieg:function(n,s){return n===s},MzISS:e(453,"uapn")+e(1912,"!8bv"),JjzZq:e(1722,"uapn"),eQlLc:e(1893,"CVbl")+"er",agNXM:e(965,"uapn"),wDUxM:e(511,"!8bv")+e(2117,"zwBc")+e(515,"nwJq")+e(513,"nwJq")+e(1909,"Ssmy")+e(1894,"kQ[&")+e(1470,"EVbZ")+e(1873,"zwBc")+e(1924,"orsS")+e(1736,"Z*zj")+e(559,"zwBc")+"6",EJfhE:e(348,"fvw#")+e(881,"M7ZK"),zkUfA:e(1194,"EVbZ")+e(2120,"QhYo")+e(1785,"orsS")+e(2155,"7E8x")+e(772,"ORsq"),uNwyj:function(n,s){return n===s},LRrct:e(1176,"fXMX")+"\u5B58"};if(await this[e(1041,"fXMX")](),r[e(854,"kQ[&")](this[e(938,"1PdT")],"")||r[e(662,"J*pw")](this[e(905,"m(t9")],void 0)){let n=r[e(2097,"69YT")],s=r[e(809,"J*pw")],i=await this[e(438,"fXMX")+e(1863,"fvw#")](n,s),a=JSON[e(606,"TpG0")]({parent_id:"",name:this[e(395,"a^p[")],kind:r[e(1329,"!8bv")],space:""}),o={method:r[e(1173,"fXMX")],url:this[e(1196,"zwBc")]+(e(1038,"e7gH")+e(2079,"M7ZK")),headers:{"User-Agent":r[e(1395,"H#v7")],"Content-Type":r[e(688,"ORsq")],"accept-language":r[e(1226,"3fP^")],authorization:this[e(1585,"V9&6")],"x-captcha-token":i,"x-client-id":this[e(1803,"m(t9")+"d"],"x-device-id":this[e(549,"p9HK")]},data:a},c=await he[e(1005,"V9&6")](o);r[e(420,"e7gH")](c[e(1982,"TpG0")],-8858+-1006*7+-161*-100)&&(this[e(905,"m(t9")]=c[e(553,"kQ[&")][e(2060,"nbcZ")].id,console[e(974,"L%wQ")](r[e(1889,"Wm(U")]))}}async[Re(1121,"nbcZ")](){let e=Re,r={JcdNd:e(2126,"a^p[")+e(1782,"pm(9"),BzOgF:e(1170,"nwJq"),czZlM:e(376,"nwJq"),NDsrH:e(897,"ZXHT")+e(1330,"pm(9")+e(1613,"ORsq")+e(1985,"EVbZ")+e(594,"p9HK")+e(1110,"a^p[")+e(1487,"&3we")+e(1784,"fXMX")+e(1788,")O!S")+e(1962,"orsS")+e(1203,"ZXHT")+"6",hvkVU:e(405,"a^p[")+e(1107,"a^p[")+e(671,"Sxlm")+e(766,"OFIt")+e(385,"1PdT"),rXEog:e(1641,"&3we")+e(1168,"nPlG"),spkNx:function(u,l){return u===l}};this[e(1485,"m(t9")]="";let n=r[e(2010,"m(t9")],s=r[e(978,"&3we")],i=await this[e(1934,"nPlG")+e(2114,"Wm*i")](n,s),a=this[e(1021,"!8bv")]+(e(1733,"VyJ6")+e(1014,"yb2S")+e(1440,")O!S"))+this[e(2204,"&3we")]+(e(1743,"L%wQ")+e(779,"tLvR")+e(665,"1PdT")+e(1358,"!8bv")+e(534,"3fP^")+e(566,"uapn")+e(1584,"Sxlm")+e(1254,"pm(9")+e(1533,"HdOY")+e(1278,"&3we")+e(1145,"7E8x")+e(876,"TpG0")+e(1799,"Wm(U")+e(1369,"Wm(U")+e(2133,"L%wQ")+e(505,"1PdT")+e(1375,"7E8x")),o={method:r[e(1344,"m(t9")],url:a,headers:{"User-Agent":r[e(1682,"EVbZ")],"accept-language":r[e(1946,"H#v7")],authorization:this[e(1567,"tLvR")],"content-type":r[e(621,"fXMX")],"x-captcha-token":i,"x-client-id":this[e(1122,"a^p[")+"d"],"x-device-id":this[e(2152,"yb2S")]}},c=await he[e(409,"Sxlm")](o);if(r[e(1187,"nPlG")](c[e(1672,"e7gH")],4646+-1*6778+2332)){let u=Array[e(2169,"QhYo")](c[e(1810,"ngp^")]?.[e(623,"e7gH")])?c[e(1018,"orsS")][e(857,"nPlG")]:[],l=u[e(569,"J*pw")](d=>d?.id);l&&(this[e(388,"Z*zj")]=l.id)}return this[e(1409,"Sxlm")]}async[Re(1346,"ngp^")+"Id"](e=1694*2+-9882+6502,r=-8679+-3*-3293){let n=Re,s={jhHdB:function(i,a){return i<=a},hvdrG:function(i,a){return i<a}};for(let i=12029+-12029*1;s[n(1285,"ORsq")](i,e);i++){let a=await this[n(1233,"pm(9")]()[n(2121,"CF^5")](o=>"");if(a)return a;s[n(2035,"1PdT")](i,e)&&await this[n(1502,"p9HK")](r)}return""}async[Re(1374,"EVbZ")](){let e=Re,r={TAmCn:function(n,s){return n!==s},GOqHG:function(n,s){return n!==s},mcNHT:e(1923,"A(Z@")+e(1506,"nPlG"),DQLTl:e(717,"CVbl"),cReJZ:e(1097,"3fP^"),UtkDh:e(511,"!8bv")+e(1958,"A(Z@")+e(1133,"Z*zj")+e(1566,"TH!d")+e(610,")O!S")+e(1940,"Z*zj")+e(1868,"a^p[")+e(1873,"zwBc")+e(1553,"e7gH")+e(2001,"fXMX")+e(1522,"7E8x")+"6",jqbkC:e(1933,"nbcZ")+e(1992,"J*pw"),oOoVi:e(1353,"zwBc")+e(408,"V9&6")+e(671,"Sxlm")+e(1674,"Wm*i")+e(1352,"zwBc"),VapFq:function(n,s){return n===s},NHfCq:e(1798,"uapn"),OAlNM:function(n,s){return n===s},gVKry:e(1554,"tLvR")};if(await this[e(1961,"nbcZ")](),r[e(1293,"zwBc")](this[e(1666,"nPlG")],"")&&r[e(1456,"L%wQ")](this[e(1392,"!8bv")],void 0)){let n=r[e(824,"&3we")],s=r[e(2040,"A(Z@")],i=await this[e(1419,"a^p[")+e(1488,"M7ZK")](n,s),a=JSON[e(642,"3fP^")]({ids:[this[e(1713,"iQ5e")]],space:""}),o={method:r[e(732,"tLvR")],url:this[e(1448,"nwJq")]+(e(1667,"orsS")+e(1439,")O!S")+e(363,"]VqL")),headers:{"User-Agent":r[e(721,"fXMX")],"Content-Type":r[e(1608,"Z*zj")],"accept-language":r[e(785,"zwBc")],authorization:this[e(1047,"L%wQ")],"x-captcha-token":i,"x-client-id":this[e(2052,"e7gH")+"d"],"x-device-id":this[e(549,"p9HK")]},data:a},c=await he[e(1315,"7E8x")](o)[e(1981,"nwJq")](u=>u[e(2139,"nbcZ")]);r[e(1336,"L%wQ")](c[e(899,"7E8x")],13*-634+-4757*-1+3685)?console[e(1147,"iQ5e")](r[e(1777,"3fP^")]):r[e(1389,"pm(9")](c[e(1783,"yb2S")],6221*-1+-1*5735+103*120)&&console[e(2131,"!8bv")](r[e(1248,"7Pzs")])}}async[Re(1098,"A(Z@")+Re(1158,"HdOY")+Re(1905,"CVbl")](){let e=Re,r={sTGzm:e(1279,"Ssmy")+e(1549,"Wm(U"),mWaJo:e(670,"3fP^")+e(653,"x3v#")+e(1095,"iQ5e"),QCCot:e(507,"Z*zj")+"7",JoIpB:e(1325,"TH!d")+e(1844,"Wm*i"),QhTcx:e(691,"a^p["),iSfrC:e(647,"fXMX")+e(846,"&3we")+e(1838,"CF^5")+e(1055,"iQ5e")+e(378,"CF^5")+e(1126,"e7gH")+e(906,"EVbZ")+e(2065,"!8bv")+e(1494,"p9HK")+e(958,"EVbZ")+e(701,"nwJq")+e(1651,"]VqL")+e(773,"yb2S")+e(997,"nwJq")+e(2102,"ZXHT")+e(369,"m(t9")+e(372,"H#v7")+e(1045,"HdOY")+e(778,"nbcZ")+e(1249,"Wm*i")+e(349,"uapn")+e(1512,"A(Z@")+e(1245,"]VqL"),CXENL:e(2028,"ZXHT")+e(1867,"1PdT"),wymyn:e(872,"nPlG")+e(2009,"3fP^"),cwrRU:function(o,c){return o===c}},n=this[e(625,"nPlG")+e(1663,"fXMX")](this[e(1599,"Ssmy")]),s={client_id:this[e(885,"69YT")+"d"],action:r[e(1994,"Wm*i")],device_id:this[e(2124,"CF^5")],captcha_token:"",meta:{package_name:r[e(552,"J*pw")],client_version:r[e(1225,"fvw#")],captcha_sign:"1."+n,timestamp:r[e(583,"1PdT")],user_id:this[e(443,"Wm*i")]}},i={method:r[e(2181,"nwJq")],url:this[e(384,"1PdT")]+(e(851,"p9HK")+e(728,"e7gH")+"it"),headers:{"User-Agent":r[e(1416,"fvw#")],"Accept-Encoding":r[e(1473,"tLvR")],"Content-Type":r[e(1339,"Z*zj")]},data:s},a=await he[e(1914,"nwJq")](i);if(r[e(1574,"orsS")](a[e(848,"uapn")],7*-1041+-111*-47+-1*-2270))return a[e(2157,"yb2S")][e(681,"!8bv")+e(1953,"J*pw")]}async[Re(914,"ORsq")+Re(1466,"Wm*i")](){let e=Re,r={ToAzx:e(1401,"A(Z@")+e(555,"7Pzs"),PJFnc:e(2071,"kQ[&")+e(370,"CF^5"),chCQs:e(946,"kQ[&"),BRWqB:e(718,"x3v#")+e(1942,"]VqL")+e(1322,"69YT")+e(633,"!8bv")+e(616,"69YT")+e(1673,"iQ5e")+e(1832,"1PdT")+e(1665,"nPlG")+e(867,"7E8x")+e(1509,"HdOY")+e(727,"J*pw")+"6",BzEuQ:e(1547,"CF^5")+e(1995,"kQ[&"),DEYZr:function(a,o){return a===o}},n=JSON[e(1461,"e7gH")]({client_id:r[e(1379,"ZXHT")],action:r[e(412,"VyJ6")],device_id:this[e(1791,"tLvR")],captcha_token:"",meta:{phone_number:e(597,"zwBc")+this[e(1694,"&3we")]}}),s={method:r[e(1061,"EVbZ")],url:this[e(384,"1PdT")]+(e(1510,"e7gH")+e(862,"p9HK")+"it"),headers:{"User-Agent":r[e(1769,"x3v#")],"Content-Type":r[e(1725,"VyJ6")]},data:n},i=await he[e(833,"ngp^")](s);if(r[e(558,"V9&6")](i[e(729,"a^p[")],-1*-7997+4735+-12532))return i[e(1084,"Wm*i")][e(696,"a^p[")+e(1830,"nwJq")]}async[Re(1772,"!8bv")](){let e=Re,r={rIBmx:e(1483,"L%wQ"),IoZNe:e(464,"EVbZ")+e(1253,"H#v7")+e(674,"TpG0")+e(1184,"Z*zj")+e(1752,"e7gH")+e(499,"QhYo")+e(474,"OFIt")+e(2184,"!8bv")+e(860,"nPlG")+e(781,"ngp^")+e(1024,")O!S")+e(1008,"EVbZ")+e(2177,"e7gH")+e(479,"V9&6")+e(457,")O!S"),uEfQK:e(473,"ZXHT")+e(1690,"L%wQ"),pYuzg:function(o,c){return o===c},MSLID:e(1192,"HdOY")+e(367,"fvw#"),XkNgf:e(944,"VyJ6"),EQxqd:function(o,c){return o+c},fahwt:e(1250,"ZXHT")+"d"},n=await this[e(1964,"pm(9")+e(889,"7Pzs")](),s=JSON[e(1778,"]VqL")]({username:e(1306,"nPlG")+this[e(1694,"&3we")],password:this[e(1103,"CVbl")],client_id:this[e(804,"x3v#")+"d"]}),i={method:r[e(561,"EVbZ")],url:this[e(1072,"OFIt")]+(e(2172,"orsS")+e(719,"Wm*i")),headers:{"User-Agent":r[e(655,"QhYo")],"Content-Type":r[e(1073,"EVbZ")],"x-captcha-token":n,"x-client-id":this[e(917,"iQ5e")+"d"],"x-device-id":this[e(1823,"orsS")]},data:s},a=await he[e(1075,"Wm(U")](i);r[e(1758,"QhYo")](a[e(1616,"OFIt")],200)&&(rs[e(483,"orsS")](r[e(1885,"Sxlm")],a[e(1164,"CVbl")][e(1366,"p9HK")+e(1707,"CF^5")]),rs[e(1654,"Sxlm")](r[e(1693,"M7ZK")],r[e(2156,"M7ZK")](r[e(1702,"7E8x")](a[e(742,"nPlG")][e(806,"x3v#")]," "),a[e(753,"3fP^")][e(2044,"orsS")+"en"])),rs[e(1086,"Ssmy")](r[e(356,"M7ZK")],a[e(1988,"V9&6")][e(977,"7E8x")]))}async[Re(611,"CF^5")+Re(1010,"1PdT")](){let e=Re,r={OACpz:function(n,s){return n===s},NDEvS:function(n,s){return n===s},nAjgb:e(1550,"Sxlm")+e(1036,"TH!d")+e(2043,"Wm*i")+e(1046,"e7gH")+e(1295,"ORsq"),dcWYS:e(1870,"fXMX")+e(821,"A(Z@"),IQlXP:e(946,"kQ[&"),sVgCS:e(964,"69YT")+e(430,"A(Z@")+e(1578,"pm(9")+e(1938,"Wm(U")+e(1597,"V9&6")+e(823,"J*pw")+e(1181,"M7ZK")+e(1262,"3fP^")+e(1206,"CF^5")+e(2183,"VyJ6")+e(1331,"HdOY")+e(1191,"orsS")+e(1009,"fXMX")+e(383,"TpG0")+e(508,"CF^5"),DKPnR:e(1802,"Z*zj")+e(1991,"orsS"),GDQDe:function(n,s){return n(s)},SjQag:e(1320,"ZXHT"),rkDGa:e(1192,"HdOY")+e(2182,"tLvR"),JvMEd:e(959,"nwJq"),UBlmS:function(n,s){return n+s},qUUyX:function(n,s){return n+s},cCtcI:e(1544,"7Pzs")+e(1555,"ngp^"),eyNbE:function(n,s){return n>s},tAmmZ:function(n,s){return n/s},BSOZj:e(764,"69YT")+e(1241,"CF^5"),KTodh:e(1343,"Z*zj")+"\u767B\u5F55"};if(r[e(1655,"L%wQ")](this[e(708,"CVbl")],void 0)||r[e(512,"ngp^")](this[e(1647,"Z*zj")],"")){if(this[e(790,"HdOY")+e(1019,"M7ZK")]){let n=JSON[e(1558,"QhYo")]({client_id:this[e(1593,"TH!d")+"d"],client_secret:r[e(1136,"A(Z@")],grant_type:r[e(1224,"TH!d")],refresh_token:this[e(1420,"A(Z@")+e(494,"tLvR")]}),s={method:r[e(1776,"TH!d")],url:this[e(795,"kQ[&")]+(e(2190,"kQ[&")+e(2167,"QhYo")),headers:{"User-Agent":r[e(1218,"zwBc")],"Content-Type":r[e(2069,"Ssmy")],"x-client-id":this[e(592,"CF^5")+"d"],"x-device-id":this[e(549,"p9HK")]},data:n},i=await r[e(734,"H#v7")](he,s)[e(467,"fXMX")](a=>a[e(379,"tLvR")]);if(r[e(687,"nbcZ")](i?.[e(858,"69YT")],200)){console[e(1963,"EVbZ")](r[e(1586,"x3v#")]),rs[e(1668,"OFIt")](r[e(486,"Ssmy")],i[e(830,"Sxlm")][e(1850,"Wm(U")+e(1540,"EVbZ")]),rs[e(1328,"x3v#")](r[e(575,"VyJ6")],r[e(649,"Ssmy")](r[e(1050,"7Pzs")](i[e(501,"EVbZ")][e(1754,"nwJq")]," "),i[e(439,"TH!d")][e(942,"uapn")+"en"]));return}}if(await this[e(2198,"zwBc")](),!this[e(468,"Ssmy")])throw new Error(r[e(2005,")O!S")])}else try{let n=JSON[e(1840,"fXMX")](ql.default[e(584,"J*pw")][e(1246,"HdOY")][e(2162,"EVbZ")](this[e(1647,"Z*zj")][e(1469,"&3we")](".")[1])[e(1627,"e7gH")](ql.default[e(446,"fXMX")][e(842,"L%wQ")]));r[e(943,"ZXHT")](n[e(1312,"zwBc")],Math[e(1755,"Wm*i")](r[e(1406,"69YT")](Date[e(676,"69YT")](),3797*1+9822+-12619)))?console[e(752,"69YT")](r[e(1174,"VyJ6")]):(console[e(1947,"]VqL")](r[e(1445,"Ssmy")]),rs[e(1623,"]VqL")](r[e(1937,"m(t9")],""),await this[e(2201,"TH!d")+e(1106,"CVbl")]())}catch{rs[e(1888,"J*pw")](r[e(1371,"1PdT")],""),await this[e(1662,"]VqL")+e(895,"ORsq")]()}}async[Re(582,"kQ[&")+Re(1100,"ZXHT")](e,r,n){let s=Re,i={vhbhS:s(1884,"Wm*i")+s(480,"a^p["),fAhmw:s(1146,"HdOY"),KecUm:s(807,"x3v#")+s(1130,"QhYo")+s(1294,"H#v7")+s(1334,"e7gH")+s(1148,"J*pw")+s(1273,"Ssmy")+s(1886,"zwBc")+s(620,"iQ5e")+s(1620,"Z*zj")+s(1377,"&3we")+s(1774,"m(t9")+s(1368,"iQ5e")+s(782,"VyJ6")+s(1504,"m(t9")+s(1307,"7E8x")+s(2061,"nwJq")+s(1458,"VyJ6")+s(1943,"M7ZK")+s(1765,"e7gH")+s(1189,"ZXHT")+s(1033,"Ssmy")+s(1480,"QhYo")+s(1560,"ORsq"),BsJHj:s(1645,"tLvR"),pvMzB:s(1967,"7E8x"),pJENi:s(1835,"fvw#")+s(463,"V9&6"),UieNZ:s(1161,"7E8x")+s(994,"tLvR"),KeOfw:function(a,o){return a===o},cTKou:s(711,"TpG0")+"3",GlXOb:s(1093,")O!S")+s(1049,"QhYo"),NhVIr:s(1925,"L%wQ")+s(1386,"tLvR"),KCdpk:s(1643,"zwBc")+s(1768,"7Pzs")+s(1503,"1PdT"),fQTQV:function(a,o){return a!==o}};try{await this[s(472,"fXMX")](),await this[s(611,"CF^5")+s(2136,"a^p[")](),await this[s(827,"orsS")](),await this[s(1026,"VyJ6")](e,r,n);let a=await this[s(491,"ZXHT")+"Id"]();if(!a)throw new Error(i[s(1757,"V9&6")]);let o=await this[s(2039,"ORsq")+s(536,"EVbZ")+s(1300,"M7ZK")](),c={method:i[s(831,"H#v7")],url:this[s(1016,"7E8x")]+(s(459,"Z*zj")+s(894,"yb2S"))+a+(s(373,"J*pw")+s(1489,"V9&6")+s(1766,"a^p[")+s(695,"]VqL")+s(576,"fXMX")),headers:{"User-Agent":i[s(903,"A(Z@")],Connection:i[s(1415,"orsS")],Accept:i[s(400,"TH!d")],"Accept-Encoding":i[s(1350,"a^p[")],"x-captcha-token":o,authorization:this[s(1747,"7E8x")],"content-type":i[s(2179,"3fP^")],"x-device-id":this[s(1237,"e7gH")]}},u;try{u=await he[s(833,"ngp^")](c)}catch(l){if(i[s(2041,"69YT")](l?.[s(379,"tLvR")]?.[s(1188,"7Pzs")],404)){let d=i[s(747,"L%wQ")][s(1365,"yb2S")]("|"),f=23*-233+-7316+12675;for(;;){switch(d[f++]){case"0":await this[s(411,"ngp^")](-336*27+804+9468);continue;case"1":c[s(2164,"7Pzs")]=this[s(979,"Z*zj")]+(s(1808,"!8bv")+s(815,"nwJq"))+a+(s(1347,"uapn")+s(1454,"kQ[&")+s(1284,"kQ[&")+s(928,"EVbZ")+s(433,"EVbZ"));continue;case"2":if(!a)throw l;continue;case"3":u=await he[s(1683,"kQ[&")](c);continue;case"4":a=await this[s(352,"L%wQ")+"Id"](-8664*-1+-1*4036+-4625,-1654+2*1427);continue;case"5":console[s(1897,"1PdT")](i[s(2078,"fvw#")]);continue}break}}else throw l}if(i[s(1198,"A(Z@")](u[s(1063,"1PdT")],200)){let l=u[s(517,"a^p[")][i[s(1876,"QhYo")]]||u[s(488,"pm(9")][s(730,"J*pw")][i[s(1974,"CVbl")]][s(891,"Sxlm")],d=new URL(l)[s(2e3,"orsS")];return i[s(1028,"7Pzs")](this[s(1113,"A(Z@")],"")&&(l=l[s(1929,"zwBc")](d,this[s(398,"zwBc")])),l}}catch(a){return console[s(841,"&3we")](a),""}}};function fo(t,e){let r=ZB();return fo=function(n,s){n=n-(-1248+-2*-1247+-901);let i=r[n];if(fo.qVBqlU===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",m="",p="";for(let h=0,y,g,A=0;g=d.charAt(A++);~g&&(y=h%4?y*64+g:g,h++%4)?m+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=m.length;h<y;h++)p+="%"+("00"+m.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(p)};let l=function(d,f){let m=[],p=0,h,y="";d=a(d);let g;for(g=0;g<256;g++)m[g]=g;for(g=0;g<256;g++)p=(p+m[g]+f.charCodeAt(g%f.length))%256,h=m[g],m[g]=m[p],m[p]=h;g=0,p=0;for(let A=0;A<d.length;A++)g=(g+1)%256,p=(p+m[g])%256,h=m[g],m[g]=m[p],m[p]=h,y+=String.fromCharCode(d.charCodeAt(A)^m[(m[g]+m[p])%256]);return y};fo.MXYriF=l,t=arguments,fo.qVBqlU=!0}let o=r[1*-2883+-14*389+8329],c=n+o,u=t[c];return u?i=u:(fo.IPeQYA===void 0&&(fo.IPeQYA=!0),i=fo.MXYriF(i,s),t[c]=i),i},fo(t,e)}var Sg=new EY;async function A$e(t,e){let r=Re,n={nxNvc:function(c,u){return c(u)},Ggdww:function(c,u){return c===u},sPqVI:r(1684,"ZXHT"),IvEPG:function(c,u,l){return c(u,l)},fVQbh:function(c,u){return c(u)},HdRTi:r(911,"J*pw"),WHUXn:r(1878,"7E8x")};await n[r(622,"yb2S")](Hb,e);let s=await Sg[r(1711,"Wm(U")+"ta"](t);if(!s)return null;let i=await n[r(955,"a^p[")](Slr,n[r(1622,"Ssmy")]),a=[],o=[];return Object[r(1128,"L%wQ")](s)[r(2159,"M7ZK")](c=>{let u=r,l=Array[u(2144,"Ssmy")](s[c])?s[c]:[],d=l[u(1513,"Z*zj")](m=>{let p=u;return{vod_id:[m[p(1441,"e7gH")],m[p(652,"Ssmy")],m[p(1941,"ORsq")],m[p(1851,"1PdT")+p(563,"M7ZK")],m[p(1625,"uapn")]||""][p(401,"M7ZK")]("*"),vod_name:m[p(1771,"ZXHT")],vod_size:n[p(547,"orsS")](Number,m[p(567,"H#v7")])||0,vod_group:n[p(709,"ORsq")](c,n[p(989,"Sxlm")])?"":c}}),f=n[u(800,"OFIt")](Ts,i,d);f&&f[u(820,"H#v7")]&&f[u(498,"CF^5")]&&(a[u(1983,"CVbl")](f[u(1945,"TH!d")]),o[u(646,"p9HK")](f[u(2164,"7Pzs")]))}),a[r(1698,"7E8x")]?{from:a[r(1871,"TH!d")](n[r(1012,"Z*zj")]),url:o[r(1681,"p9HK")](n[r(794,"V9&6")])}:null}var y$e=t=>{let e=Re,r={ICeAc:function(i,a){return i(a)},cQhXF:function(i,a){return i||a}},n=r[e(2012,"Wm*i")](String,r[e(2163,"Sxlm")](t,""))[e(1852,"orsS")+"e"]();if(!n)return 61*-113+-1*4716+11609;if(n[e(933,"VyJ6")]("\u539F\u753B"))return-93*-1956+65366+-147274;if(n[e(419,"ORsq")]("4k"))return-1*2748+302*2+-12*-512;if(n[e(1111,"7E8x")]("2k"))return-1530+3333*-3+13529;let s=n[e(1213,"7E8x")](/(\d+)\s*p/);return s?r[e(608,"EVbZ")](Number,s[886+7603*1+-8488])||7110+5*-1422:n[e(1076,"1PdT")]("\u84DD\u5149")?1200:n[e(2115,"&3we")]("\u8D85\u6E05")?-9946*1+-9909+20935:n[e(1626,"yb2S")]("\u9AD8\u6E05")?140*27+-661*11+4211:n[e(1405,"ngp^")]("\u6D41\u7545")?-1765+947*-4+-2011*-3:n[e(1571,"e7gH")]("\u6807\u6E05")?540:n[e(933,"VyJ6")]("\u666E\u753B")?8451+-194*40+1*-331:n[e(1842,"TpG0")]("\u6781\u901F")?-1*8537+-5657+14434:-1*6190+4503+241*7},Ilr=t=>{let e=Re,r={lTQxi:function(s,i){return s<i},KmZWL:function(s,i){return s(i)},tjvNp:function(s,i){return s(i)},vNGeO:function(s,i){return s+i},HkNeF:function(s,i){return s||i}},n=[];for(let s=4668+28*-229+872*2;r[e(1678,"nPlG")](s,t[e(936,"nPlG")]);s+=-5849+1797*-5+14836){let i=r[e(1524,"7Pzs")](String,t[s]||"")[e(1630,"nPlG")](),a=r[e(1739,"69YT")](String,t[r[e(1190,"Ssmy")](s,1)]||"")[e(359,"TH!d")]();r[e(1697,"e7gH")](!i,!a)||n[e(913,"nbcZ")]([i,a])}return n};async function x$e(t,e){let r=Re,n={tvoga:function(l,d){return l!==d},fbnqD:function(l,d){return l(d)},BmdoC:function(l,d){return l(d)},oGiDY:function(l,d){return l<d},flLly:r(1927,"kQ[&"),EpcQF:r(2020,"fvw#")+r(351,"HdOY")+r(476,"1PdT")+r(1157,"Ssmy")+r(1604,"VyJ6")+r(787,"7E8x")+r(853,"zwBc")+r(447,"orsS")+r(1816,"a^p[")+r(636,")O!S")+r(1060,"uapn")+r(838,"Z*zj"),zoxkK:function(l,d){return l!==d},dBXmH:r(724,"Z*zj"),gnyMi:r(1869,"69YT")};await n[r(763,"&3we")](Hb,t);let s=n[r(1960,"1PdT")](String,t[r(2054,"ORsq")].id||"")[r(1462,"ngp^")]("*");if(n[r(937,"ZXHT")](s[r(490,"m(t9")],8*588+-3911*1+1*-789))throw new Error(n[r(1719,"H#v7")]);let i={"User-Agent":n[r(900,"TH!d")]},a=n[r(1658,"H#v7")](Ilr,await Sg[r(1267,"7E8x")+"l"](s[0],s[849*11+1*2384+-11722],s[193+2*-95],s[1*6203+3897+-10096]||"")||[]),o=null;if(n[r(2151,"Wm(U")](rs[r(423,"A(Z@")](n[r(2032,"CF^5")])||"",""))try{let l=await Sg[r(651,"V9&6")+r(1443,"HdOY")](s[0],s[1],s[3]);l&&(o=["\u539F\u753B",l])}catch(l){console[r(739,"TpG0")](r(1874,"ngp^")+" "+(l?.[r(1363,"ORsq")]||l))}a[r(1949,"zwBc")]((l,d)=>y$e(d[2500+6*-757+1*2042])-y$e(l[1778+-2*889]));let c=[];o&&c[r(1442,"M7ZK")](o),a[r(1208,"zwBc")](l=>{let d=r;n[d(1235,"A(Z@")](l[1*-6875+-3044+109*91],"\u539F\u753B")&&c[d(500,"Ssmy")](l)});let u=c[r(811,"Sxlm")]();if(!u[r(579,"EVbZ")])throw new Error(n[r(2199,"pm(9")]);return{parse:0,url:u,header:i}}var v$e=require("crypto");var Tlr="https://api.guangyapan.com",wlr="https://account.guangyapan.com",S$e="aMe-8VSlkrbQXpUR",I$e=200,Rlr="0123456789abcdef0123456789abcdef",C$e={Accept:"application/json, text/plain, */*","Content-Type":"application/json"},Nlr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],tL,vY={},jl={set(t,e){vY[t]=e,tL&&tL.push(`/guangyapan/${t}`,e)},get(t){return vY[t]}},Olr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,_C=async t=>{tL=t.server.db,vY=await tL.getObjectDefault("/guangyapan",{})};function klr(t){let e=/https?:\/\/(?:www\.)?guangyapan\.com\/s\/([^/#?]+)/i.exec(String(t||"").trim());return e?.[1]?{shareId:e[1]}:null}function T$e(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{msg:t}}return t}function EC(t,e=""){return[t?.msg,t?.message,t?.error_description,t?.error,e].map(n=>String(n||"").trim()).filter(Boolean)[0]||"unknown error"}function Plr(t){let e=String(t||"").toLowerCase();return Nlr.some(r=>e.endsWith(r))}function Dlr(t,e){return t?`${t}/${e}`:e}function Blr(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 w$e(){let t=Blr(jl.get("device_id"));if(t)return t;try{t=(0,v$e.randomBytes)(16).toString("hex")}catch{t=Rlr}return jl.set("device_id",t),t}function Llr(t=""){let e={...C$e,Did:w$e(),Dt:"4"},r=String(t||"").trim();return r&&(e.Authorization=`Bearer ${r}`),e}function Mlr(){let t=w$e();return{...C$e,"X-Client-Id":S$e,"X-Client-Version":"0.0.1","X-Device-Id":t,"X-Device-Model":"chrome%2F147.0.0.0","X-Device-Name":"PC-Chrome","X-Device-Sign":`wdi10.${t}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,"X-Net-Work-Type":"NONE","X-OS-Version":"Win32","X-Platform-Version":"1","X-Protocol-Version":"301","X-Provider-Name":"NONE","X-SDK-Version":"9.0.2"}}async function bC(t,e,r=""){let n=await le.request({url:`${Tlr}${t}`,method:"POST",headers:Llr(r),data:e,validateStatus:()=>!0});return{status:Number(n?.status||0),data:T$e(n?.data)}}async function Wlr(){let t=String(jl.get("refresh_token")||"").trim();if(!t)return"";let e=await le.request({url:`${wlr}/v1/auth/token`,method:"POST",headers:Mlr(),data:{client_id:S$e,grant_type:"refresh_token",refresh_token:t},validateStatus:()=>!0}),r=T$e(e?.data),n=String(r?.access_token||r?.accessToken||"").trim();if(!n)throw new Error(`\u5237\u65B0\u5149\u9E2D access_token \u5931\u8D25: ${EC(r,`status=${e?.status||0}`)}`);jl.set("access_token",n);let s=String(r?.refresh_token||r?.refreshToken||"").trim();return s&&jl.set("refresh_token",s),n}async function SY(t=!1){let e=t?"":String(jl.get("access_token")||"").trim();return e||await Wlr()}async function R$e(t){let{status:e,data:r}=await bC("/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: ${EC(r,`status=${e}`)}`);return n}async function $lr(t,e="",r=0){let n={pageSize:I$e,accessToken:t,parentId:e,orderBy:0,sortType:0};r>0&&(n.cursor=r);let{status:s,data:i}=await bC("/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: ${EC(i,`status=${s}`)}`);return i?.data||{list:[]}}async function Ulr(t){let e=await R$e(t),r=[{parentId:"",folderPath:""}],n=[];for(;r.length>0;){let{parentId:s,folderPath:i}=r.shift(),a=0,o=!0;for(;o;){let c=await $lr(e,s,a);(Array.isArray(c?.list)?c.list:[]).forEach(d=>{let f=String(d?.fileId||"").trim(),m=String(d?.fileName||"").trim();if(!(!f||!m)){if(Number(d?.resType||0)===2){r.push({parentId:f,folderPath:Dlr(i,m)});return}Plr(m)&&n.push({vod_id:`${t}*${f}`,vod_name:m,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 IY(t,e,r=""){let{status:n,data:s}=await bC("/nd.bizuserres.s/v1/get_share_download_url",{fileId:t,accessToken:e},r);return{status:n,code:Number(s?.code||0),msg:EC(s,`status=${n}`),url:String(s?.data?.downloadUrl||"").trim()}}function b$e(t,e){return{status:t,code:Number(e?.code||0),msg:EC(e,`status=${t}`),data:e?.data||{}}}function _$e(t,e){return{status:500,code:0,msg:String(t?.message||t||e||"\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38"),data:{}}}function N$e(t){let e=String(t?.msg||"").toLowerCase();return t?.status===401||t?.status===403||t?.code===401||t?.code===403||e.includes("token expired")||e.includes("unauthorized")}function Flr(){return!!String(jl.get("refresh_token")||"").trim()}function qlr(t){let e=String(t?.msg||"");return N$e(t)||t?.code===207||e.includes("\u514D\u767B\u5F55\u4E0B\u8F7D")}async function E$e(t=!1){let e=await SY(t);if(!e)throw new Error("\u5149\u9E2D\u767B\u5F55\u6001\u7F3A\u5931");return e}async function O$e(t,e){let r="";try{r=await E$e(!1)}catch(i){return _$e(i,"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}let n=await bC(t,e,r),s=b$e(n.status,n.data);if(!N$e(s))return s;try{r=await E$e(!0),n=await bC(t,e,r),s=b$e(n.status,n.data)}catch(i){return _$e(i,"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}return s}async function jlr(t,e){let r="",n=String(jl.get("access_token")||"").trim();try{r=await SY(!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 IY(t,e,r);if(!s.url&&n&&Flr()&&qlr(s))try{r=await SY(!0),s=await IY(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 k$e(t,e=""){await _C(t);let r=await O$e("/nd.bizuserres.s/v1/file/get_file_list",{parentId:String(e||"").trim(),pageSize:I$e,orderBy:3,sortType:1,fileTypes:[]});if(r.status<200||r.status>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u4E2A\u4EBA\u76EE\u5F55\u5931\u8D25: ${r.msg}`);return{total:Number(r.data?.total||0),list:Array.isArray(r.data?.list)?r.data.list:[]}}async function P$e(t,e){await _C(t);let r=String(e||"").trim();if(!r)return{url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await O$e("/nd.bizuserres.s/v1/get_res_download_url",{fileId:r}),s=String(n.data?.signedURL||n.data?.downloadUrl||"").trim();return s?{url:s,msg:""}:{url:"",msg:n.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}async function D$e(t){let e=klr(t);if(!e?.shareId)return{};let r=await Ulr(e.shareId);return Ts(await Olr("guangyapan"),r)}async function B$e(t){try{await _C(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 R$e(e),s=await IY(r,n);return s.url||(String(jl.get("access_token")||"").trim()||String(jl.get("refresh_token")||"").trim())&&(s=await jlr(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 Lo=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,Ru=t=>{let e=globalThis.Pans?.find(r=>r.key===t)?.name;return String(e||t)};function Qlr(t){if(!t)return!1;if(Array.isArray(t.urls)&&t.urls.length>0)return!0;let e=Array.isArray(t.url)?t.url[t.url.length-1]:t.url;return!!String(e||"").trim()}var Gt=D0,Hlr=t=>t==null||t==="root"?"":String(t),CY=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=Hlr(r);n.forEach(i=>{e.push({...i,vod_group:i?.vod_group??s})})}),e},Glr=/https:\/\/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/s\/([^/?#]+)/i,Vlr=t=>{let e=new Map;return t.forEach(r=>{let n=String(r||"").trim();if(!n)return;let s=n.match(Glr),i=s?`123:${s[1].toLowerCase()}`:n,a=e.get(i);(!a||n.includes("?")&&!a.includes("?"))&&e.set(i,n)}),[...e.values()]};async function dr(t,e){return{}}async function Xt(t,e){t=Array.isArray(t)?t:[t],t=Vlr(t);let r=t.map(u=>{let l=Ii().find(f=>f.validator(u)),d=l?.key;return{key:d,name:l?.name||Ru(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 u6e(l);if(u==="quark")return await v6e(l);if(u==="uc")return await Y5e(l);if(u==="tianyi"){let d=await Sf.getShareData(l);if(!d)return null;let f=await Lo("tianyi");return Ts(f,CY(d))}if(u==="yidong"){let d=await Jz.getShareData(l),f=await Lo("yidong");return Ts(f,CY(d))}if(u==="123"){let d=await oi.getShareData(l),f=await oi.getFilesByShareUrl(d),m=await Lo("123");return Ts(m,CY(f))}return u==="115"?await c$e(l,e):u==="baidu"?await m$e(l,e):u==="xunlei"?await A$e(l,e):u==="guangyapan"?await D$e(l):null}))).forEach((u,l)=>{if(u.status==="fulfilled"){let m=u.value;m&&m.from&&m.url&&(n.push(m.from),s.push(m.url),i.push({name:r[l].name,url:r[l].url}));return}let d=String(r[l]?.key||"unknown"),f=String(u.reason?.message||u.reason||"unknown error");console.warn(`[Pan Detail] ${d} detail failed: ${f}`)});let o={};n.forEach((u,l)=>{o[u]?n[l]=`${u}-${++o[u]}`:o[u]=1});let c={};return i.forEach((u,l)=>{c[u.name]?i[l].name+=++c[u.name]:c[u.name]=1}),{froms:n.join("$$$"),urls:s.join("$$$"),links:i}}async function Zt(t,e){let r=t.params.site;if(r=="ali")return await eB(t,e);if(r=="quark")return await sB(t,e);if(r=="uc")return await J5e(t,e);if(r=="baidu")return await XB(t,e)}async function er(t,e){let r=String(t.body.flag||"");if(r.startsWith(await Lo("ali")))return await tB(t,e);if(r.startsWith(await Lo("quark")))return await iB(t,e);if(r.startsWith(await Lo("uc")))return await X5e(t,e);if(r.startsWith(await Lo("tianyi"))){let n=t.body.id.split("*");await jb(t);let s=n[2]||"video",i=n[3]||"",a=n[4]||"";if(s==="cas")try{let c=await Sf.getShareTextPlayable(n[0],n[1],i,a);if(!c?.url){let u=Sf.getShareTextResolveReason?Sf.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 Sf.getShareUrl(n[0],n[1])]}}else if(r.startsWith(await Lo("yidong"))){let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await Jz.getSharePlay(n[0],n[1],n[2]||"",n[3]||"")]}}else if(r.startsWith(await Lo("123"))){await tm(t);let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await oi.getDownload(...n)],header:oi.getDownloadHeader()}}else if(r.startsWith("115\u79D2\u4F20123")){let n=await hY(t,e);if(!Qlr(n))throw new Error(n?.msg||"115\u79D2\u4F20123\u672A\u8FD4\u56DE\u64AD\u653E\u5730\u5740");return n}else{if(r.startsWith(await Lo("115")))return await hY(t,e);if(r.startsWith(await Lo("baidu")))return await JB(t,e);if(r.startsWith(await Lo("xunlei")))return await x$e(t,e);if(r.startsWith(await Lo("guangyapan")))return await B$e(t,e)}}async function W$e(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);n.init=s.json(),vC(s.json()),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),vC(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(),vC(s.json()),n.category.list.length>0){i=!0;let c=n.category.list[0].vod_id;await M$e(t,c,n)}}if(s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),!i&&n.search.list.length>0){let a=n.search.list[0].vod_id;await M$e(t,a,n)}return vC(s.json()),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}async function M$e(t,e,r){let n=t.server.prefix,s=await t.server.inject().post(`${n}/detail`).payload({id:e});if(r.detail=s.json(),vC(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<a.length;c++){let u=a[c],l=o[c].split("#");for(let d=0;d<l.length&&d<2;d++)s=await t.server.inject().post(`${n}/play`).payload({flag:u,id:l[d].split("$")[1]}),r.play.push(s.json())}}}}function vC(t){t.statusCode&&t.statusCode==500&&console.error(t)}var Klr={yidong:"https://yun.139.com/w/static/img/LOGO.png",tianyi:"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",115:"https://img.pcsoft.com.cn/soft/202104/093230-608b5e2ed5912.jpg",quark:"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",uc:"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",ali:"https://inews.gtimg.com/newsapp_bt/0/13263837859/1000",123:"https://statics.123957.com/static/favicon.ico",baidu:"https://nd-static.bdstatic.com/m-static/v20-main/home/img/icon-home-new.b4083345.png",xunlei:"https://img.geekie.site/i/2026/03/22/190713.png",guangyapan:"https://www.guangyapan.com/icon.png"},Ql=t=>{let e=globalThis.Pans?.find(n=>n.key===t)?.pic,r=String(e||"").trim();return r||Klr[t]||""},Ii=()=>[{key:"quark",name:Ru("quark"),validator:z4,pic:Ql("quark")},{key:"uc",name:Ru("uc"),validator:Y4,pic:Ql("uc")},{key:"ali",name:Ru("ali"),validator:K4,pic:Ql("ali")},{key:"baidu",name:Ru("baidu"),validator:HLe,pic:Ql("baidu")},{key:"xunlei",name:Ru("xunlei"),validator:GLe,pic:Ql("xunlei")},{key:"tianyi",name:Ru("tianyi"),validator:FLe,pic:Ql("tianyi")},{key:"yidong",name:Ru("yidong"),validator:qLe,pic:Ql("yidong")},{key:"123",name:Ru("123"),validator:jLe,pic:Ql("123")},{key:"115",name:Ru("115"),validator:QLe,pic:Ql("115")},{key:"guangyapan",name:Ru("guangyapan"),validator:VLe,pic:Ql("guangyapan")}];var zlr=["https://tv.yydsys.cc","https://tv.yydsys.top","https://tv.214521.xyz","https://yydsys.de5.net"],TY=async t=>(await t.db.getObjectDefault("/duoduo",{}))?.urls||t.config.duoduo?.urls||zlr,Ylr=async(t,e)=>{await t.db.push("/duoduo/urls",e)},Jlr=async t=>{await t.db.delete("/duoduo/urls")};async function wY(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await TY(e.server)})}),t.put("/urls",async(e,r)=>{await Ylr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Jlr(e.server),r.send({code:0})})}var RY,rL=t=>{if(!RY){let e=Date.now();RY=new Promise(async r=>{let n=await TY(t),s=await es(n,{"User-Agent":Gt});console.log("\u591A\u591A\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return RY},Gb={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function Xlr(t){try{if(!Gb.url)return;let e={"Content-Type":"application/json"};Gb.key&&(e.Authorization=`Bearer ${Gb.key}`),await le(Gb.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:Gb.sendTimeout||1200,receiveTimeout:Gb.receiveTimeout||1500})}catch{}}function Zlr(t){if(typeof t!="string"||t.length===0)return t;let r=t.indexOf('"<!DOCTYPE html');if(r<0)return t;let n=-1,s=!1;for(let a=r+1;a<t.length;a++){let o=t[a];if(s){s=!1;continue}if(o==="\\"){s=!0;continue}if(o==='"'){n=a;break}}if(n<0)return t;let i=t.slice(r,n+1);try{let a=JSON.parse(i);return typeof a=="string"&&a.length>0?a:t}catch{return t}}async function NY(t){let e=await le.get(t,{headers:{"User-Agent":Gt}});return Zlr(e.data)}function OY(t){return String(t||"").replace(/\/$/,"")}function edr(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 tdr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"20",type_name:"\u7EAA\u5F55"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u64AD\u62A5",v:"\u64AD\u62A5"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u6E38\u620F\u4E92\u52A8",v:"\u6E38\u620F\u4E92\u52A8"},{n:"\u8D22\u7ECF",v:"\u8D22\u7ECF"},{n:"\u6C42\u804C",v:"\u6C42\u804C"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[20]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function rdr(t,e){let r=await rL(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=parseInt(s,10);(!a||a<1)&&(a=1);let c=OY(r)+"/index.php/vod/show";i.area&&(c+=`/area/${i.area}`);let u=i.by||i.sort;u&&(c+=`/by/${u}`),i.class&&(c+=`/class/${i.class}`),c+=`/id/${n}/page/${a}`,i.year&&(c+=`/year/${i.year}`),c+=".html";let l=await NY(c),d=De(l),f=d("#main .module-item").map((p,h)=>{let y=d(h).find(".module-item-pic a").attr("href"),g=d(h).find(".module-item-pic img").attr("alt"),A=d(h).find(".module-item-pic img").attr("data-src")||d(h).find(".module-item-pic img").attr("src"),b=d(h).find(".module-item-text").text().trim();return{vod_id:y,vod_name:g,vod_pic:A,vod_remarks:b}}).get().filter(p=>p.vod_id&&p.vod_name),m=edr(d,a);return{page:a,pagecount:m,limit:72,total:72*m,list:f}}async function ndr(t,e){let r=await rL(t.server),n=OY(r),s=Array.isArray(t.body.id)?t.body.id:[t.body.id],i=[];for(let a of s)try{let o=await NY(`${n}${a}`),c=De(o),u={vod_id:a,vod_name:c(".page-title").first().text().trim(),vod_pic:c(".mobile-play .lazyload").first().attr("data-src")||c(".mobile-play img").first().attr("data-src")||c(".mobile-play img").first().attr("src"),vod_remarks:c('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""};c(".video-info-itemtitle").each((f,m)=>{let p=c(m).text(),h=c(m).next().find("a").map((y,g)=>c(g).text().trim()).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?u.vod_content=c(m).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?u.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(u.vod_actor=h.trim())});let l=c(".module-row-info p").map((f,m)=>c(m).text().trim()).get().filter(Boolean),d=await Xt(l,t);d&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls,u.vod_links=d.links),Xlr({detail_url:`${n}${a}`,html:o,parsed:{vod_name:u.vod_name||"",vod_pic:u.vod_pic||"",vod_content:u.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),i.push(u)}catch(o){console.error("duoduo detail fetch failed",a,o)}return{list:i}}async function sdr(t,e){let r=await rL(t.server),n=OY(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 NY(u),d=De(l),f=d(".module-search-item").map((m,p)=>{let h=d(p).find(".video-serial"),y=d(p).find(".module-item-pic > img");return{vod_id:h.attr("href"),vod_name:h.attr("title"),vod_pic:y.attr("data-src")||y.attr("src"),vod_remarks:h.text()}}).get().filter(m=>m.vod_id&&m.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 $$e={meta:{key:"duoduo",name:"\u300C\u76D8\u300D\u591A\u591A",type:3},api:async t=>{t.post("/init",dr),t.post("/home",tdr),t.post("/category",rdr),t.post("/detail",ndr),t.post("/play",er),t.post("/search",sdr),t.get("/test",W$e),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:rL};var Ow=Ce(Zn(),1),eut=Ce(V0(),1);var Gct=Ce(require("http"),1);var Rw=Ce(require("fs"),1),Ace=Ce(require("path"),1);var U$e=Ce(require("os"),1),idr=t=>{if(!t)return!1;let e=typeof t.family=="string"?t.family:String(t.family||"");return e==="IPv4"||e==="4"},adr=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},odr=t=>/^192\.168\./.test(t)||/^10\./.test(t)||/^172\.(1[6-9]|2\d|3[0-1])\./.test(t),kY=t=>/^100\.(6[4-9]|[7-9]\d|1[01]\d|12[0-7])\./.test(t),cdr=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)},PY=(t="")=>/(rmnet|ccmni|pdp|wwan|cell|mobile|clat|v4-rmnet)/i.test(String(t||"")),udr=(t="")=>/(wlan|wi-?fi|eth|en\d|lan|bridge)/i.test(String(t||"")),DY=(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||"")),ldr=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:kY(t.ip)||(e+=180),udr(t.name)&&(e+=80),PY(t.name)&&(e-=320),DY(t.name)&&(e-=260),kY(t.ip)&&(e-=220),e},nm=function(){let t=String(process.env.CATPAW_HOST_IP||process.env.HOST_IP||"").trim();if(adr(t))return t;let e=U$e.default.networkInterfaces()||{},r=[];Object.entries(e).forEach(([a,o])=>{Array.isArray(o)&&o.forEach(c=>{if(!idr(c)||c.internal)return;let u=String(c.address||"").trim();!u||u.startsWith("169.254.")||cdr(u)||r.push({ip:u,name:String(a||"")})})});let n=r.map(a=>({...a,score:ldr(a)})).sort((a,o)=>o.score-a.score),s=n.find(a=>{let o=PY(a.name),c=DY(a.name);return!o&&!c&&!kY(a.ip)});if(s)return s.ip;let i=n.find(a=>odr(a.ip)&&!PY(a.name)&&!DY(a.name));return i?i.ip:"127.0.0.1"};kt();fr();Et();bL();Un();kt();Et();fr();po();function Kdr(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"),m=u.p.replace(/\[([^\]]*)\]$/,`[${f}]`);return{cid:u.cid,p:m,m:d>1?`${c}\u200Ax\u200A${d}`:c,t:u.earliestT,like:u.like}})}).flat().sort((i,a)=>i.t-a.t)}function zdr(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 Ydr(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<r;a++){let o=Math.floor(a*s);i.push(t[o])}return i}function zC(t,e){let r=[],n=1,s=!1,i=[];if(typeof t=="string")i=[...t.matchAll(/<d p="([^"]+)">([^<]+)<\/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},m=p=>p?parseInt(p.replace("#",""),16):16777215;i=t.danmuku.map(p=>({timepoint:p[0],ct:f[p[1]]!==void 0?f[p[1]]:1,color:m(p[2]),content:p[4]}))}else Array.isArray(t)&&(i=t);if(!i.length)return[];for(let f of i){let m,p,h,y,g;if("progress"in f&&"mode"in f&&"content"in f)h=(f.progress/1e3).toFixed(2),y=f.mode||1,g=f.color||16777215,p=f.content;else if("timepoint"in f)h=parseFloat(f.timepoint).toFixed(2),y=f.ct||0,g=f.color||16777215,p=f.content;else{if(!("p"in f))continue;let b=f.p.split(",");h=parseFloat(b[0]).toFixed(2),y=b[1]||0,b.length===4?g=b[2]||16777215:b.length>=8?g=b[3]||16777215:g=b[3]||b[2]||16777215,p=f.m}let A=f._sourceLabel||e;f.realTimeSource&&!A.includes(f.realTimeSource)&&(A=`${A}\uFF06${f.realTimeSource}`),!s&&/[&&]/.test(A)&&(s=!0),m=[h,y,g,`[${A}]`].join(","),r.push({p:m,m:p,cid:n++,like:f?.like})}let a=O.blockedWords.split(/(?<=\/),(?=\/)/).map(f=>{let m=f.trim();if(m.startsWith("/")&&m.endsWith("/"))try{return new RegExp(m.slice(1,-1))}catch(p){return E("error",`[Utils] [Danmu] \u65E0\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F: ${m}`,p),null}return null}).filter(f=>f!==null);E("info",`[Utils] [Danmu] \u539F\u59CB\u5C4F\u853D\u8BCD\u5B57\u7B26\u4E32: ${O.blockedWords}`),E("info",`[Utils] [Danmu] \u5C4F\u853D\u8BCD\u5217\u8868: ${(f=>Array.isArray(f)?f.map(m=>m.toString()).join(`
`):String(f))(a)}`);let c=r.filter(f=>!a.some(m=>m.test(f.m)));E("info",`[Utils] [Danmu] \u53BB\u91CD\u5206\u949F\u6570: ${O.groupMinute}`);let u=Kdr(c,O.groupMinute,s),l=zdr(u),d=Ydr(l,O.danmuLimit);if(O.convertTopBottomToScroll||O.convertColor==="white"||O.convertColor==="color"){let f=0,m=0;d=d.map(p=>{let h=p.p.split(",");if(h.length<3)return p;let y=parseInt(h[1],10),g=parseInt(h[2],10),A=!1;O.convertTopBottomToScroll&&(y===4||y===5)&&(f++,y=1,A=!0),O.convertColor==="white"&&g!==16777215&&(m++,g=16777215,A=!0);let b=O.colorPool.split(",").map(S=>parseInt(S.trim(),10)).filter(S=>!isNaN(S)&&S>=0&&S<=16777215),x=b[Math.floor(Math.random()*b.length)];if(O.convertColor==="color"&&g===16777215&&g!==x&&(m++,g=x,A=!0),A){let S=[h[0],y,g,...h.slice(3)].join(",");return{...p,p:S}}return p}),f>0&&E("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${f} \u6761\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u4E3A\u6D6E\u52A8\u5F39\u5E55`),m>0&&E("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${m} \u6761\u5F39\u5E55\u989C\u8272`)}return O.danmuSimplifiedTraditional==="traditional"&&(d=d.map(f=>({...f,m:Mo(f.m)})),E("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${d.length} \u6761\u5F39\u5E55\u4E3A\u7E41\u4F53\u5B57`)),E("info",`[Utils] [Danmu] danmus_original: ${r.length}`),E("info",`[Utils] [Danmu] danmus_filter: ${c.length}`),E("info",`[Utils] [Danmu] danmus_group: ${u.length}`),E("info",`[Utils] [Danmu] danmus_limit: ${d.length}`),E("info","[Utils] [Danmu] Top 5 danmus:",JSON.stringify(d.slice(0,5),null,2)),d}function vJ(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 r1(t){return typeof t!="string"||t.length!==6||!/^[0-9A-Fa-f]{6}$/.test(t)?16777215:parseInt(t,16)}function Jdr(t){let e=`<?xml version="1.0" ?>
`;e+=`<i>
`;let r=t.comments||[];if(Array.isArray(r))for(let n of r){let s=Zdr(n);e+=' <d p="'+efr(s)+'">'+tfr(n.m)+`</d>
`}return e+="</i>",e}function Xdr(){let e=(Date.now()%1e8).toString().padStart(8,"0"),r=Math.floor(Math.random()*1e3).toString().padStart(3,"0");return e+r}function Zdr(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=Xdr();return`${n},${s},${i},${a},${o},${c},${u},${l}`}function efr(t){return t?String(t).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;"):""}function tfr(t){return t?String(t).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;"):""}function Lg(t,e){let r=e||O.danmuOutputFormat;if(r=r.toLowerCase(),E("info",`[Utils] [Danmu] [Format] Using format: ${r}`),r==="xml")try{let n=Jdr(t);return HUe(n)}catch(n){return E("error",`[Utils] [Danmu] Failed to convert to XML: ${n.message}`),Me(t)}return Me(t)}fr();var kf=class{constructor({apiKey:e,baseURL:r="https://api.openai.com/v1",model:n="gpt-4o",systemPrompt:s=""}){this.apiKey=e,this.baseURL=r.replace(/\/$/,""),this.model=n,this.systemPrompt=s}async chat(e,r={}){let n={model:r.model||this.model,messages:e,temperature:r.temperature??0,max_tokens:r.maxTokens??8192,stream:!1},s=await Gr(`${this.baseURL}/chat/completions`,JSON.stringify(n),{headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},timeout:6e4}),i=s.data;if(i?.error){let a=i.error.message;throw new Error(`AI API error ${s.status}: ${a}`)}return i.choices[0].message.content}async ask(e,r={}){let n=[];return this.systemPrompt&&n.push({role:"system",content:this.systemPrompt}),n.push({role:"user",content:e}),this.chat(n,r)}session(e={}){let r=[],n=this.chat.bind(this),s=this.systemPrompt;return s&&r.push({role:"system",content:s}),{async send(i){r.push({role:"user",content:i});let a=await n(r,e);return r.push({role:"assistant",content:a}),a},clear(){r.length=0,s&&r.push({role:"system",content:s})},getHistory(){return[...r]}}}async verify(){try{return{ok:!0,reply:await this.ask("hi",{maxTokens:1})}}catch(e){return{ok:!1,error:e.message}}}};var Ia=Ce(require("fs"),1),BL=Ce(require("path"),1);PC();kt();Et();sn();po();var Hn=null,PL=0,Fo=!1,kL=0,n1="0.00",YC=!1,dm=new Map,uFe="custom",lFe=null,dFe=null,DL=BL.default.join(process.cwd(),".cache"),hFe="bangumi-data-cache.json",rfr=2e4,Mg=new Map,fFe={custom:["https://cdn.jsdelivr.net/npm/@wan0ge/[email protected]/dist/data.json","https://unpkg.com/@wan0ge/[email protected]/dist/data.json"],official:["https://cdn.jsdelivr.net/npm/[email protected]/dist/data.json","https://unpkg.com/[email protected]/dist/data.json"]},nfr="@wan0ge/bangumi-data",sfr="bangumi-data",ifr=/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|æ—¥[语語]|日配|原版|原[声聲])(?:版)?/,gFe=/(?:\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,afr=/\s+/g,ofr=/[,,]/,cfr=/[::]/;function IJ(t){let e=new Map,r=t.length;for(let n=0;n<r;n++){let s=t[n]._flatText;if(!s)continue;let i=new Set(s);for(let a of i){if(a.trim()==="")continue;let o=e.get(a);o||(o=[],e.set(a,o)),o.push(n)}}dm=e}function pFe(t){if(!t||typeof t!="string")return null;let e=t.match(/^(\d+)\.(\d+)\.(\d+)$/);return e?{major:parseInt(e[1],10),minor:parseInt(e[2],10),patch:parseInt(e[3],10)}:null}function ufr(t,e){let r=pFe(t),n=pFe(e);return!r||!n?0:r.major!==n.major?r.major-n.major:r.minor!==n.minor?r.minor-n.minor:r.patch!==n.patch?r.patch-n.patch:0}async function mFe(t){try{let e=`https://registry.npmjs.org/${encodeURIComponent(t)}/latest`;E("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${e}`);let r=await zb(e,{headers:{Accept:"application/json"},signal:AbortSignal.timeout(8e3)});return r.ok&&(await r.json())?.version||null}catch(e){return E("warn",`[Utils] [Bangumi-Data] \u67E5\u8BE2 ${t} \u7248\u672C\u53F7\u5931\u8D25: ${e.message}`),null}}async function lfr(){try{let[t,e]=await Promise.all([lFe||mFe(nfr),dFe||mFe(sfr)]);if(t&&(lFe=t),e&&(dFe=e),!t||!e)return E("info",`[Utils] [Bangumi-Data] \u7248\u672C\u68C0\u6D4B\u4E0D\u5B8C\u6574 (custom=${t}, official=${e})\uFF0C\u9ED8\u8BA4\u4F7F\u7528\u81EA\u5B9A\u4E49\u6E90`),"custom";let n=ufr(t,e)>=0?"custom":"official";return E("info",`[Utils] [Bangumi-Data] \u7248\u672C\u5BF9\u6BD4: @wan0ge/bangumi-data@${t} vs bangumi-data@${e} => \u4F7F\u7528${n==="custom"?"\u81EA\u5B9A\u4E49":"\u5B98\u65B9"}\u6E90`),n}catch(t){return E("warn",`[Utils] [Bangumi-Data] \u6570\u636E\u6E90\u9009\u62E9\u5F02\u5E38\uFF0C\u56DE\u9000\u5230\u81EA\u5B9A\u4E49\u6E90: ${t.message}`),"custom"}}async function LL(t,e=!1,r=null){if(!O.useBangumiData)return;let n=null,s=O.bangumiDataCacheDays!==void 0?O.bangumiDataCacheDays:7,i=s*24*60*60*1e3;if(t==="node"?Ia.default.existsSync(DL)?n=BL.default.join(DL,hFe):YC||(E("warn","[Utils] [Bangumi-Data] \u672A\u68C0\u6D4B\u5230\u6839\u76EE\u5F55\u7684 .cache \u6587\u4EF6\u5939\uFF01"),E("warn","[Utils] [Bangumi-Data] \u6309\u7167\u9879\u76EE\u89C4\u8303\uFF0C\u8BF7\u624B\u52A8\u6302\u8F7D\u6216\u521B\u5EFA .cache \u76EE\u5F55\u4EE5\u542F\u7528\u6301\u4E45\u5316\u3002"),E("warn","[Utils] [Bangumi-Data] \u672C\u6B21\u8FD0\u884C\u5DF2\u9000\u5316\u4E3A\u7EAF\u5185\u5B58\u6A21\u5F0F (\u91CD\u542F\u540E\u9700\u91CD\u65B0\u4E0B\u8F7D)\u3002"),YC=!0):YC||(E("info",`[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230 ${t} \u4E91\u73AF\u5883\uFF0C\u5F53\u524D\u8FD0\u884C\u4E8E\u7EAF\u5185\u5B58\u52A0\u901F\u6A21\u5F0F\u3002`),YC=!0),Fo&&Date.now()-kL>rfr&&(E("warn","[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230\u4E0B\u8F7D\u72B6\u6001\u9501\u6B7B (\u7531\u4E8E Serverless \u8FDB\u7A0B\u4F11\u7720/\u5F3A\u6740\u5BFC\u81F4)\uFF0C\u5F3A\u5236\u91CA\u653E\u9501..."),Fo=!1),Hn){if(s>0&&Date.now()-PL<i)return;e&&!Fo&&(E("info",`[Utils] [Bangumi-Data] \u5185\u5B58\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...`),Fo=!0,kL=Date.now(),SJ(n).finally(()=>{Fo=!1}));return}if(n&&Ia.default.existsSync(n))try{let a=Ia.default.statSync(n),o=process.memoryUsage().heapUsed,c=Date.now();Hn=JSON.parse(Ia.default.readFileSync(n,"utf-8")),Hn?.items?.length>0&&Hn.items[0]._flatText===void 0?(Hn=yFe(Hn),Ia.default.writeFileSync(n,JSON.stringify(Hn),"utf-8"),IJ(Hn.items)):Hn?.items?.length>0&&IJ(Hn.items);let u=process.memoryUsage().heapUsed,l=Date.now()-c;n1=Math.max(0,(u-o)/1024/1024).toFixed(2);let d=(process.memoryUsage().rss/1024/1024).toFixed(2);PL=Date.now(),E("info",`[Utils] [Bangumi-Data] \u6210\u529F\u4ECE\u672C\u5730\u78C1\u76D8\u52A0\u8F7D\u57FA\u7840\u6570\u636E\uFF0C\u6761\u76EE\u6570: ${Hn.items.length}\uFF0C\u89E3\u6790\u8017\u65F6: ${l} ms\uFF0C\u7EA6\u5360\u5185\u5B58: ${n1} MB`),(s===0||Date.now()-a.mtimeMs>=i)&&e&&!Fo&&(E("info",`[Utils] [Bangumi-Data] \u78C1\u76D8\u6570\u636E${s===0?"\u5F3A\u5236\u66F4\u65B0":"\u5DF2\u8FC7\u671F"}\uFF0C\u4FDD\u7559\u8001\u6570\u636E\u670D\u52A1\u672C\u6B21\u8BF7\u6C42\uFF0C\u542F\u52A8\u540E\u53F0\u9759\u9ED8\u66F4\u65B0...`),Fo=!0,kL=Date.now(),SJ(n).finally(()=>{Fo=!1}));return}catch(a){E("error","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u89E3\u6790\u5931\u8D25\uFF0C\u51C6\u5907\u91CD\u65B0\u4E0B\u8F7D",a.message),Hn=null}if(Fo){if(e){E("info","[Utils] [Bangumi-Data] \u6B63\u5728\u7B49\u5F85\u57FA\u7840\u6570\u636E\u4E0B\u8F7D\u5B8C\u6210...");let a=0;for(;Fo;){if(a>150){E("warn","[Utils] [Bangumi-Data] \u7B49\u5F85\u6392\u961F\u8D85\u65F6\uFF0C\u653E\u5F03\u7B49\u5F85"),Fo=!1;break}await new Promise(o=>setTimeout(o,100)),a++}}}else{E("info","[Utils] [Bangumi-Data] \u672A\u547D\u4E2D\u4EFB\u4F55\u6709\u6548\u7F13\u5B58\uFF0C\u6B63\u5728\u83B7\u53D6\u57FA\u7840\u6570\u636E..."),Fo=!0,kL=Date.now();let a=SJ(n).finally(()=>{Fo=!1});e?await a:(E("info","[Utils] [Bangumi-Data] \u5F53\u524D\u975E\u6838\u5FC3\u8BF7\u6C42\uFF0C\u6570\u636E\u83B7\u53D6\u8F6C\u5165\u540E\u53F0\u5F02\u6B65\u6267\u884C"),r&&typeof r.waitUntil=="function"&&(E("info","[Utils] [Bangumi-Data] \u8C03\u7528 ctx.waitUntil \u5EF6\u957F Serverless \u751F\u547D\u5468\u671F"),r.waitUntil(a)))}}var dfr=new Set(["anidb","bangumi","gamer","gamer_hk","bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw","tmdb"]);function yFe(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(dfr.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;u<c.length;u++)i+=c[u]}let a=Vt(i);s._flatText=ir(a).toLowerCase().replace(gFe,""),e.push(s)}return{items:e}}async function SJ(t){E("info","[Utils] [Bangumi-Data] \u5F00\u59CB\u4F18\u9009\u8282\u70B9\u4E0B\u8F7D\u6700\u65B0\u6570\u636E\u5E76\u6267\u884C\u7CBE\u7B80...");try{let e=process.memoryUsage().heapUsed,r=Date.now(),n=0;uFe=await lfr();let s=fFe[uFe]||fFe.custom,i={headers:{"Accept-Encoding":"br, gzip, deflate"}},a=s.map(()=>new AbortController);s.forEach(m=>{E("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${m}`)});let o=s.map(async(m,p)=>{let h=a[p],y=await zb(m,{...i,signal:h.signal});if(!y.ok)throw new Error(`HTTP error ${y.status} from ${m}`);let g=await y.json(),A=g.items?g.items.length:0;if(h.signal.aborted)throw new Error("Aborted before parsing");let b=Date.now(),x=yFe(g),S=Date.now()-b,T=null;return t&&!h.signal.aborted&&(T=`${t}.tmp${p}`,Ia.default.writeFileSync(T,JSON.stringify(x),"utf-8")),{index:p,url:m,tempFilePath:T,resultData:x,pruneCost:S,originalCount:A}}),c=await Promise.any(o);a.forEach((m,p)=>{p!==c.index&&m.abort()}),t&&(s.forEach((m,p)=>{if(p!==c.index){let h=`${t}.tmp${p}`;if(Ia.default.existsSync(h))try{Ia.default.unlinkSync(h)}catch{}}}),Ia.default.renameSync(c.tempFilePath,t));let u=((Date.now()-r)/1e3).toFixed(2);E("info",`[Utils] [Bangumi-Data] \u7CBE\u7B80\u6570\u636E\u5DF2\u6210\u529F\u5199\u5165\u78C1\u76D8 (\u8282\u70B9: ${new URL(c.url).hostname} ,\u9636\u6BB5\u8017\u65F6: ${u} \u79D2)`),Hn=c.resultData,n=c.pruneCost,IJ(Hn.items),Mg.clear();let l=process.memoryUsage().heapUsed,d=((Date.now()-r)/1e3).toFixed(2);n1=Math.max(0,(l-e)/1024/1024).toFixed(2);let f=(process.memoryUsage().rss/1024/1024).toFixed(2);PL=Date.now(),E("info",`[Utils] [Bangumi-Data] \u52A0\u8F7D\u5230\u5185\u5B58\u6210\u529F\uFF0C\u4FDD\u7559/\u539F\u59CB\u6761\u76EE\u6570: ${Hn.items.length} / ${c.originalCount}\uFF0C\u5904\u7406\u8017\u65F6: ${n} ms\uFF0C\u5168\u94FE\u8DEF\u603B\u8017\u65F6: ${d} \u79D2\uFF0C\u51C0\u589E\u5185\u5B58: ${n1} MB (\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${f} MB)`)}catch(e){let r=e instanceof AggregateError?e.errors.map(n=>n.message).join(" | "):e.message;E("error","[Utils] [Bangumi-Data] \u4E0B\u8F7D\u5931\u8D25 (\u6240\u6709 CDN \u5747\u672A\u54CD\u5E94\u6216\u62A5\u9519):",r)}}async function ku(t,e){if(!Hn||!Hn.items)return[];let r=Mg.get(t);if(!r){if(r=(async()=>{let c=[],u=[t];try{u=[...new Set([t,Vt(t),Mo(t)])]}catch{}let d=[Vt(t)].map(h=>{let y=h.replace(gFe,"");return y=ir(y).toLowerCase(),y.length>=2?y:ir(h).toLowerCase()}).filter(h=>h.length>0),f=null;if(typeof dm<"u"&&dm.size>0&&d.length>0){let h=new Set;for(let y of d){let g=Array.from(new Set(y.replace(afr,"")));if(g.length===0)continue;g.sort((x,S)=>{let T=dm.get(x)?.length||0,I=dm.get(S)?.length||0;return T-I});let A=dm.get(g[0]);if(!A||A.length===0)continue;let b=new Set(A);for(let x=1;x<g.length;x++){let S=dm.get(g[x]);if(!S){b.clear();break}let T=new Set(S);for(let I of b)T.has(I)||b.delete(I);if(b.size===0)break}for(let x of b)h.add(x)}f=Array.from(h)}else f=Hn.items.map((h,y)=>y);let m=Hn.items,p=u.length;for(let h=0;h<f.length;h++){let y=m[f[h]],g=!1;for(let A=0;A<p;A++){let b=u[A];if(Ct(y.title,b)){g=!0;break}if(y.titleTranslate)for(let x in y.titleTranslate){let S=y.titleTranslate[x];for(let T=0;T<S.length;T++)if(S[T]&&Ct(S[T],b)){g=!0;break}if(g)break}if(g)break}if(g){let A=[y.title];if(y.titleTranslate)for(let b in y.titleTranslate){let x=y.titleTranslate[b];for(let S=0;S<x.length;S++)A.push(x[S])}c.push({item:y,titles:A})}}return c})(),Mg.size>100){let c=Mg.keys().next().value;Mg.delete(c)}Mg.set(t,r)}let n=await r,s=n,i=Ut(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 m=0;m<f.length;m++){let p=Tt(f[m]).season;if(p!==null){l=p;break}}if(l!==null)break}return i>1?(l||1)===i:i===1?l===null||l===1:!0});c.length>0&&(s=c)}let a=ifr,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",m="tvseries";c.type==="movie"?(f="\u5267\u573A\u7248",m="movie"):c.type==="tv"?(f="TV\u52A8\u753B",m="tvseries"):c.type==="ova"?(f="OVA",m="ova"):c.type==="web"&&(f="WEB\u52A8\u753B",m="web");let p="";["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(d.site)&&(p="\uFF08\u6E2F\u6FB3\u53F0\uFF09");let h=[],y=[];if(d.comment){let A=d.comment.split(ofr),b=new Map;if(d.related&&Array.isArray(d.related))for(let x of d.related)x.id&&b.set(String(x.id),x.season_id||null);for(let x of A){let S=x.split(cfr);if(S.length>=2){let T=S[0].trim(),I=S[1].trim();I&&a.test(T)&&h.push({title:c.title,titles:[...u],begin:c.begin,siteId:I,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:m,titleSuffix:` ${T}${p}`,season_id:b.get(I)||null})}else if(S.length===1&&S[0].trim()){let T=S[0].trim();a.test(T)&&y.push(T)}}}let g="";y.length>0&&(g+=` ${y.join(" ")}`),g+=p,o.push({title:c.title,titles:[...u],begin:c.begin,siteId:d.id,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:m,titleSuffix:g,season_id:d.season_id||null,video_sn:d.video_sn||null}),o.push(...h)}}return o}function AFe(t=!1){if(Hn!==null){let e=Hn.items?Hn.items.length:0;Hn=null,PL=0,Mg.clear(),dm.clear();let r=(process.memoryUsage().rss/1024/1024).toFixed(2);E("info",`[Utils] [Bangumi-Data] \u5185\u5B58\u7F13\u5B58\u5DF2\u4E3B\u52A8\u91CA\u653E (\u539F\u6761\u76EE\u6570: ${e}\uFF0C\u91CA\u653E: ${n1} MB\uFF0C\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${r} MB)`),n1="0.00",YC=!1}if(t&&Ia.default.existsSync(DL))try{let e=BL.default.join(DL,hFe);Ia.default.existsSync(e)&&Ia.default.unlinkSync(e);for(let r=0;r<5;r++){let n=`${e}.tmp${r}`;Ia.default.existsSync(n)&&Ia.default.unlinkSync(n)}E("info","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u5DF2\u540C\u6B65\u6E05\u7406")}catch(e){E("error",`[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ${e.message}`)}}kt();fr();Et();po();bL();ew();Un();UY();sn();kt();Et();fr();po();var L6=new Map;async function tw(t,e={}){let n=`https://api.tmdb.org/3/${t}`,s=O.makeProxyUrl(n);try{let i=await Ae(s,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:e.signal});return i.status!=200?null:i}catch(i){if(i.name==="AbortError")throw i;return E("error","[Utils] [TMDB] Api error:",{message:i.message,name:i.name,stack:i.stack}),null}}async function M6(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 tw(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 tw(c,{signal:i});if(!u||!u.data)break;let l=typeof u.data=="string"?JSON.parse(u.data):u.data;if(!l.results||l.results.length===0||(a.push(...l.results),l.results.length<20))break}return E("info",`[Utils] [TMDB] \u5171\u83B7\u53D6\u5230 ${a.length} \u6761\u641C\u7D22\u7ED3\u679C\uFF08\u6700\u591A${s}\u9875\uFF09`),{data:{results:a},status:200}}async function Mxr(t,e,r={}){let n=`${t}/${e}?api_key=${O.tmdbApiKey}&language=ja-JP`;return await tw(n,r)}async function Pat(t,e,r={}){let n=`${t}/${e}/external_ids?api_key=${O.tmdbApiKey}`;return await tw(n,r)}async function Wxr(t,e,r={}){let n=`${t}/${e}/alternative_titles?api_key=${O.tmdbApiKey}`;return await tw(n,r)}function $xr(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&&!If(i(c))),o=>!If(i(o))];for(let o of a){let c=n.find(o);if(c){let u=i(c);return E("info",`[Utils] [TMDB] \u6309\u4F18\u5148\u7EA7\u7B56\u7565\u6210\u529F\u63D0\u53D6\u6700\u4F73\u4E2D\u6587\u522B\u540D: ${u}`),u}}return null}async function Uxr(t,e,r=""){let n=t.name||t.title||"";if(r&&n.toLowerCase().trim()===r.toLowerCase().trim()||!(If(n)||r&&n.toLowerCase().trim()!==r.toLowerCase().trim()))return n;E("info",`[Utils] [TMDB] \u5C1D\u8BD5\u83B7\u53D6\u4E2D\u6587\u522B\u540D\u4EE5\u5BFB\u627E\u66F4\u4F18\u5339\u914D (\u5F53\u524D\u6807\u9898: "${n}")`);let i=t.media_type||(t.name?"tv":"movie");try{if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let a=await Wxr(i,t.id,{signal:e});if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let o=$xr(a,i,r);return o?(E("info",`[Utils] [TMDB] \u5C06\u4F7F\u7528\u4E2D\u6587\u522B\u540D\u8FDB\u884C\u76F8\u4F3C\u5339\u914D: ${o}`),o):(E("info",`[Utils] [TMDB] \u672A\u627E\u5230\u4E2D\u6587\u522B\u540D\uFF0C\u4F7F\u7528\u539F\u6807\u9898: ${n}`),n)}catch(a){if(a.name==="AbortError")throw a;return E("error",`[Utils] [TMDB] \u83B7\u53D6\u522B\u540D\u5931\u8D25: ${a.message}`),n}}async function $1(t,e=null,r="Unknown"){let n=Mat(t);if(n!==t&&E("info",`[Utils] [TMDB] \u4F18\u5316\u641C\u7D22\u5173\u952E\u8BCD: "${t}" -> "${n}"`),O.useBangumiData){let o=await ku(n,["tmdb","bangumi","anidb"]);if(o&&o.length>0){let c=o[0],u=c.titles.find(d=>d&&d.includes(n))||c.titles[1]||c.title,l=c.title;return E("info",`[Utils] [TMDB] Bangumi-Data \u672C\u5730\u547D\u4E2D\uFF0C\u63D0\u53D6\u539F\u540D\u6210\u529F: \u539F\u540D=${l}, \u522B\u540D=${u}\uFF08\u68C0\u7D22\u8BCD\uFF1A${n}\uFF09`),{title:l,cnAlias:u}}}if(!O.tmdbApiKey)return E("info","[Utils] [TMDB] \u672A\u914D\u7F6EAPI\u5BC6\u94A5\uFF0C\u8DF3\u8FC7TMDB\u7F51\u7EDC\u641C\u7D22"),null;let s=L6.get(n);if(s)E("info",`[Utils] [TMDB] \u52A0\u5165\u6B63\u5728\u8FDB\u884C\u7684\u641C\u7D22: ${n} (${r})`);else{let o=new AbortController;s={controller:o,refCount:0,promise:(async()=>{try{let u=o.signal,l=k=>{let B=k.genre_ids||[],M=k.genres||[],P=B.length>0?B:M.map(W=>W.id),L=k.original_language||"";return P.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: ${P.join(",")})`}},d=(k,B)=>{let M=J=>J.toLowerCase().replace(/\s+/g,"").replace(/[::、,。!?;""''()【】《》]/g,"").trim(),P=M(k),L=M(B);if(P===L)return 1;let Z=P.length<L.length?P:L,W=P.length>=L.length?P:L;if(W.includes(Z)&&Z.length>0)return .6+Z.length/W.length*.3;let U=k.length>B.length?k:B,V=k.length>B.length?B:k;if(U.length===0)return 1;let j=(J,se)=>{J=J.toLowerCase(),se=se.toLowerCase();let oe=[];for(let ue=0;ue<=J.length;ue++){let Te=ue;for(let Ne=0;Ne<=se.length;Ne++)if(ue===0)oe[Ne]=Ne;else if(Ne>0){let je=oe[Ne-1];J.charAt(ue-1)!==se.charAt(Ne-1)&&(je=Math.min(Math.min(je,Te),oe[Ne])+1),oe[Ne-1]=Te,Te=je}ue>0&&(oe[se.length]=Te)}return oe[se.length]};return(U.length-j(U,V))/U.length};if(E("info",`[Utils] [TMDB] \u6B63\u5728\u641C\u7D22 (Shared Task): ${n}`),u.aborted)throw new DOMException("Aborted","AbortError");let f=await M6(n,"multi",{signal:u});if(!f||!f.data)return E("info","[Utils] [TMDB] TMDB\u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),null;let m=typeof f.data=="string"?JSON.parse(f.data):f.data;if(!m.results||m.results.length===0)return E("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),null;let p=[],h=[];for(let k of m.results){let B=l(k);if(B.isValid)p.push(k);else{let M=k.name||k.title||"\u672A\u77E5";h.push(`${M}(${B.reason})`)}}if(p.length===0)return E("info","[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u62E6\u622A: \u641C\u7D22\u7ED3\u679C\u4E2D\u6CA1\u6709\u4EFB\u4F55\u76EE\u6807\u7C7B\u578B(\u52A8\u753B/\u65E5\u6587)\u7684\u5185\u5BB9"),null;E("info",`[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u5B8C\u6210: \u4FDD\u7559 ${p.length} \u4E2A\u6709\u6548\u6761\u76EE\u53C2\u4E0E\u5339\u914D\uFF0C\u8FC7\u6EE4 ${h.length} \u4E2A\u65E0\u5173\u6761\u76EE${h.length>0?"\uFF0C\u8FC7\u6EE4\u8BE6\u60C5: "+h.join(", "):""}`);let y=null,g=-1,A=null,b=0,x=5,S=!1;for(let k of p){let B=k.name||k.title||"";if(!B)continue;let M=d(n,B),P=k.original_name||k.original_title||"",L=P?d(n,P):0,Z=Math.max(M,L);if(Z===1&&!S){S=!0,E("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: 100.00% (\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22)`),Z>g&&(g=Z,y=k,A=B);continue}let W,U,V=B.toLowerCase().trim()===n.toLowerCase().trim();if(S||V)W=B,U=Z,S&&V?E("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: ${(U*100).toFixed(2)}% (\u5DF2\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u522B\u540D\u641C\u7D22)`):E("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: ${(U*100).toFixed(2)}%`);else{if(b<x)try{W=await Uxr(k,u,n),W!==B&&b++}catch(se){if(se.name==="AbortError")throw se;E("error",`[Utils] [TMDB] \u5904\u7406\u7ED3\u679C\u5931\u8D25: ${se.message}`),W=B}else W=B,E("info",`[Utils] [TMDB] \u5DF2\u8FBE\u5230\u522B\u540D\u83B7\u53D6\u4E0A\u9650(${x})\uFF0C\u4F7F\u7528\u539F\u6807\u9898: ${B}`);let j=d(n,W);U=Math.max(j,L);let J=W!==B?`"${B}" (\u522B\u540D: ${W})`:`"${B}"`;E("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 ${J} - \u76F8\u4F3C\u5EA6: ${(U*100).toFixed(2)}%`),U===1&&!S&&(S=!0,E("info","[Utils] [TMDB] \u901A\u8FC7\u522B\u540D\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22"))}U>g&&(g=U,y=k,A=W)}if(!y||g<.4)return E("info",`[Utils] [TMDB] \u6700\u4F73\u5339\u914D\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\u6216\u672A\u627E\u5230\u5339\u914D (${y?(g*100).toFixed(2)+"%":"N/A"}),\u8DF3\u8FC7`),null;E("info",`[Utils] [TMDB] TMDB\u6700\u4F73\u5339\u914D: ${A}, \u76F8\u4F3C\u5EA6: ${(g*100).toFixed(2)}%`);let I=y.media_type||(y.name?"tv":"movie"),R=await Mxr(I,y.id,{signal:u}),N;if(!R||!R.data)N=y.name||y.title,E("info",`[Utils] [TMDB] \u4F7F\u7528\u4E2D\u6587\u641C\u7D22\u7ED3\u679C\u6807\u9898: ${N}`);else{let k=typeof R.data=="string"?JSON.parse(R.data):R.data;N=k.original_name||k.original_title||k.name||k.title,E("info",`[Utils] [TMDB] \u627E\u5230\u65E5\u8BED\u539F\u540D: ${N}`)}return{title:N,cnAlias:A}}catch(u){return u.name==="AbortError"?(E("info",`[Utils] [TMDB] \u540E\u53F0\u641C\u7D22\u4EFB\u52A1\u5DF2\u5B8C\u5168\u7EC8\u6B62 (${n})`),null):(E("error","[Utils] [TMDB] Background Search error:",{message:u.message,name:u.name,stack:u.stack}),null)}})().finally(()=>{L6.delete(n)})},L6.set(n,s),E("info",`[Utils] [TMDB] \u542F\u52A8\u65B0\u641C\u7D22\u4EFB\u52A1: ${n}`)}s.refCount++;let i=()=>{L6.get(n)===s&&(s.refCount--,s.refCount<=0&&(E("info",`[Utils] [TMDB] \u6240\u6709\u8C03\u7528\u8005\u5DF2\u53D6\u6D88\uFF0C\u7EC8\u6B62\u540E\u53F0\u8BF7\u6C42: ${n}`),s.controller.abort()))},a;if(e){if(e.aborted)return i(),E("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null;e.addEventListener("abort",i)}try{let o=new Promise((c,u)=>{e&&(a=()=>u(new DOMException("Aborted","AbortError")),e.addEventListener("abort",a))});return await Promise.race([s.promise,o])}catch(o){return o.name==="AbortError"?(E("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null):(E("error",`[Utils] [TMDB] \u641C\u7D22\u5F02\u5E38: ${o.message}`),null)}finally{e&&(e.removeEventListener("abort",i),a&&e.removeEventListener("abort",a))}}async function Dat(t,e=null,r=null){if(!If(t))return t;if(O.useBangumiData){let i=Mat(t),a=ku(i,["tmdb","bangumi","anidb"]);if(a&&a.length>0){let o=a[0],c=o.titles.find(u=>u&&!If(u))||o.titles[1];if(c&&!If(c))return E("info",`[Utils] [TMDB] \u547D\u4E2D\u672C\u5730 Bangumi Data: ${t} -> ${c}\uFF08\u68C0\u7D22\u8BCD\uFF1A${i}\uFF09`),c}}let n=e!=null,s=n?"tv":"movie";try{let i=await M6(t,s);if(!i.data.results||i.data.results.length===0)return E("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),t;let o=i.data.results.find(u=>{let l=n?u.name:u.title;return l&&!If(l)})||i.data.results[0],c=n?o.name:o.title;return c?(E("info",`\u539F\u6807\u9898: ${t} -> \u4E2D\u6587\u6807\u9898: ${c}`),c):t}catch(i){return E("error","\u67E5\u8BE2 TMDB \u65F6\u51FA\u9519:",i),t}}var Bat=/(?:\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,kat=/[ ::~~]/;function Lat(t){let e=t.match(Bat);return e?e.index:t.length}function Mat(t){let e=Lat(t);return e<t.length?t.substring(0,e).trim():t}function U1(t,e){if(!t||t.length===0||!e)return;let r=0;for(let i of t)i._displayTitle=i._displayTitle||i.title||"",i.isLocalPriority||i._displayTitle.includes(e)||r++;if(r===0)return;E("info",`[Utils] [TMDB] \u542F\u52A8\u667A\u80FD\u66FF\u6362\uFF0C\u76EE\u6807\u522B\u540D: "${e}"\uFF0C\u5F85\u5904\u7406\u6761\u76EE: ${r}`);let n=t.map(i=>{let a=i.org_title||i.title||"";return a.substring(0,Lat(a))}),s="";if(n.length>0){let i=n.concat().sort(),a=i[0],o=i[i.length-1],c=0;for(;c<a.length&&a.charAt(c)===o.charAt(c);)c++;s=a.substring(0,c)}s&&s.length>1&&E("info",`[Utils] [TMDB] \u8BA1\u7B97\u51FA\u6700\u957F\u516C\u5171\u524D\u7F00 (LCP): "${s}"`);for(let i of t){let a=i.title||"";if(!(i.isLocalPriority||a.includes(e)))if(s&&s.length>1&&a.startsWith(s)){let o=a.substring(s.length).trim();i._displayTitle=o?`${e}${o.match(/^[~~::]/)?"":" "}${o}`:e,E("info",`[Utils] [TMDB] [LCP\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else{let o=a.match(kat);if(o){let c=a.substring(0,o.index).trim(),u=a.substring(o.index);if(c&&Bat.test(c)){let l=u.trim().match(kat),d=l?u.trim().substring(l.index):"";i._displayTitle=`${c} ${e}${d}`,E("info",`[Utils] [TMDB] [\u524D\u7F00\u4FDD\u62A4\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else i._displayTitle=e+u,E("info",`[Utils] [TMDB] [\u5206\u9694\u7B26\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else If(a)?(i._displayTitle=e,E("info",`[Utils] [TMDB] [\u7EAF\u5916\u6587\u5168\u66FF\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)):E("info",`[Utils] [TMDB] [\u8DF3\u8FC7\u66FF\u6362] "${a}" \u542B\u6709\u4E2D\u6587\u4E14\u7279\u5F81\u4E0D\u7B26\uFF0C\u62D2\u7EDD\u5F3A\u5236\u5168\u66FF\u4EE5\u9632\u8BEF\u6740`)}}}kt();Et();Un();po();sn();var Uc="$$$",Zg="&",Fxr=!1,fi=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}}),cd=Object.freeze({SIMILARITY_MIN:.65,SIMILARITY_STRONG:.98,TIER_DEFAULT:.001,TIER_CN:.4,TIER_PART:.5,COLLECTION_RATIO:4,COLLECTION_DIFF:6});function ht(t,...e){typeof e[0]=="string"&&e[0].includes("[Merge-Check]")&&!Fxr||E(t,...e)}var xe={Lang:{CN:/(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])(?:版)?/,JP:/(æ—¥[语語]|日配|原版|原[声聲])(?:版)?/,CN_DUB_VER:/(\(|(|\[)?(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])版?(\)|)|\])?/g,JP_DUB_VER:/(\(|(|\[)?(æ—¥[语語]|日配|原版|原[声聲])版?(\)|)|\])?/g,KEYWORDS_STRONG:/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|æ—¥[语語]|日配|原版|原[声聲])(?:版)?/g,CN_STD:/普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]/g,JP_STD:/æ—¥[语語]|日配|原版|原[声聲]/g},Season:{PURE_PART:/^(?:(?:第|S(?:eason)?)\s*\d+(?:å­£|期|部)?|(?:Part|P|第)\s*\d+(?:部分)?)$/i,PART_NORM:/第\s*(\d+)\s*部分/g,PART_NORM_2:/(?:Part|P)[\s.]*(\d+)/gi,FINAL:/(?:The\s+)?Final\s+Season/gi,NORM:/(?:Season|S)\s*(\d+)/gi,CN:/第\s*([一二三四五六七八九十]+)\s*å­£/g,ROMAN:/(\s|^)(IV|III|II|I)(\s|$)/g,INFO_STRONG:/(?:season|s|第)\s*[0-9一二三四五六七八九十]+\s*(?:å­£|期|部(?!分))?/gi,PART_INFO_STRONG:/(?:part|p|第)\s*\d+\s*(?:部分)?/gi,PART_ANY:/(?:part|p)\s*\d+/gi,CN_STRUCTURE:/(?:^|\s|×\d+\s?)(承|转|结)(?=$|[\s\(\(\[【])/i,SUFFIX_AMBIGUOUS:/(?:[\s\u4e00-\u9fa5]|^)(S|T|R|II|III|IV)(?=$|[\s\(\(\[【])/i,SUFFIX_SEQUEL:/(?:续篇|续集|The Sequel)/i},Clean:{NA_TAG:/(\(|(|\[)N\/A(\)|)|\])/gi,SOURCE_TAG:/【.*?】/g,REGION_LIMIT:/(\(|(|\[)仅限.*?地区(\)|)|\])/g,PUNCTUATION:/[!!??,,.。、~~::\-–—_]/g,WHITESPACE:/\s+/g,FROM_SUFFIX:/\s*from\s+.*$/i,PARENTHESES_CONTENT:/(\(|(|\[).*?(\)|)|\])/g,MOVIE_KEYWORDS:/剧场版|åŠ‡å ´ç‰ˆ|the\s*movie|theatrical|movie|film|电影/gi,LONE_VER_CHAR:/(\s|^)版(\s|$)/g,NON_ALPHANUM_CN:/[^\u4e00-\u9fa5a-zA-Z0-9]/g,META_SUFFIX:/(\(|(|\[)(续篇|TV版|æ— ä¿®|æœªåˆ å‡|完整版)(\)|)|\])/gi,YEAR_TAG:/(\(|(|\[)\d{4}(\)|)|\]).*$/i,SUBTITLE_SEPARATOR:/^[\s::\-–—((\[【]/,SPACE_STRUCTURE:/.+[\s\u00A0\u3000].+/,SPLIT_SPACES:/[\s\u00A0\u3000]+/,REDUNDANT_SEPARATOR:/[\s::~~]/,REDUNDANT_UNSAFE_END:/[\(\(\[【::~~\-]$/,REDUNDANT_VALID_CHARS:/[\u4e00-\u9fa5a-zA-Z]{2,}/},Episode:{SUFFIX_DIGIT:/_\d+(?=$|\s)/g,FILE_NOISE:/_(\d{2,4})(?=\.)/g,SEASON_PREFIX:/(?:^|\s)(?:第\s*[0-9一二三四五六七八九十]+\s*å­£|S(?:eason)?\s*\d+)(?:\s+|_)/gi,CLEAN_SMART:/(?:^|\s)(?:EP|E|Vol|Episode|No|Part|第)\s*\d+(?:\.\d+)?(?:\s*[话話集])?(?!\s*[季期部])/gi,PUNCTUATION:/[!!??,,.。、~~::\-–—]/g,DANDAN_TAG:/^【(dandan|animeko)】/i,SPECIAL_START:/^S\d+/i,MOVIE_CHECK:/剧场版|åŠ‡å ´ç‰ˆ|movie|film/i,PV_CHECK:/(pv|trailer|预告)/i,SPECIAL_CHECK:/^(s|o|sp|special)\d/i,SEASON_MATCH:/(?:^|\s)(?:第|S)\s*(\d+)\s*[å­£S]/i,NUM_STRATEGY_A:/(?:第|s)\s*(\d+)\s*[å­£s]\s*(?:第|ep|e)\s*(\d+)/i,NUM_STRATEGY_B:/(?:ep|e|vol|episode|chapter|no|part|第)\s*(\d+(\.\d+)?)(?:\s*[话話集])?(?!\s*[季期部])/i,NUM_STRATEGY_C:/(?:^|\s)(?:第)?(\d+(\.\d+)?)(?:话|集|\s|$)/,DANDAN_IGNORE:/^[SC]\d+/i,MAP_EXCLUDE_KEYWORDS:/(?:^|\s)(?:PV|OP|ED|SP|Special|Drama|OAD|OVA|Opening|Ending|特番|特典|Behind\s+the\s+Scenes|Making|Interview)(?:\s|$|[::])/i,SINK_TITLE_STRICT:/^(?:S\d+|C\d+|SP\d*|OP\d*|ED\d*|PV\d*|Trailers?|Interview|Making|特番|特典)(?:\s|$|[::.\-]|\u3000)/i},Category:{ANIME_KW:/(动画|TV动画|动漫|日漫|国漫)/,REAL_KW:/(电视剧|真人剧|综艺|纪录片)/,ANIMEKO_SOURCE:/animeko/i},Similarity:{CN_STRICT_CORE_REMOVE:/[0-9a-zA-Z\s第季集话partEPep._\-–—::【】()()]/gi}},U6=[{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"}],qxr=[{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}],jxr=[{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 Kat(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Woe(t){if(typeof structuredClone=="function")try{return structuredClone(t)}catch{}return JSON.parse(JSON.stringify(t))}function xo(t){if(!t)return"Unspecified";let e=t.toLowerCase();return xe.Lang.CN.test(e)?"CN":xe.Lang.JP.test(e)?"JP":"Unspecified"}function zat(t){if(!t)return"";let e=t,r=e.toUpperCase();for(let n of jxr){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(Kat(o),"gi");c.test(e)&&(e=e.replace(c,` ${a.targetStandard} `),i=!0)});!i&&n.defaultStandard&&(e+=` ${n.defaultStandard} `)}return e}function ym(t){if(!t)return"";let e=Vt(t);return e=e.replace(xe.Clean.NA_TAG,""),e=e.replace(xe.Season.PART_NORM,"part $1"),e=e.replace(xe.Season.PART_NORM_2,"part $1"),e=e.replace(xe.Season.FINAL,"\u6700\u7EC8\u5B63"),e=e.replace(xe.Season.NORM,"\u7B2C$1\u5B63"),e=e.replace(xe.Season.CN,(r,n)=>`\u7B2C${Hl(n)}\u5B63`),e=e.replace(xe.Season.ROMAN,(r,n,s,i)=>`${n}\u7B2C${{I:"1",II:"2",III:"3",IV:"4"}[s]}\u5B63${i}`),e=e.replace(xe.Lang.CN_DUB_VER,"\u4E2D\u914D\u7248"),e=e.replace(xe.Lang.JP_DUB_VER,""),e=e.replace(xe.Clean.SOURCE_TAG,""),e=e.replace(xe.Clean.REGION_LIMIT,""),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(xe.Clean.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(xe.Clean.WHITESPACE," ").toLowerCase().trim()}function $c(t){if(!t)return"";let e=zat(t);e=Vt(e);let r=e.match(/^(?:【|\[)(.+?)(?:】|\])/);if(r){let n=r[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(n)||(e=e.replace(r[0],n+" "))}return e=e.replace(xe.Clean.SOURCE_TAG,""),e=e.replace(xe.Clean.FROM_SUFFIX,""),e=e.replace(xe.Clean.NA_TAG,""),e=e.replace(xe.Clean.PARENTHESES_CONTENT,""),e=e.replace(xe.Season.INFO_STRONG,""),e=e.replace(xe.Season.PART_INFO_STRONG,""),e=e.replace(xe.Clean.MOVIE_KEYWORDS,""),e=e.replace(xe.Lang.KEYWORDS_STRONG,""),e=e.replace(xe.Clean.LONE_VER_CHAR,""),e=e.replace(xe.Clean.NON_ALPHANUM_CN,""),e.toLowerCase()}function F1(t){if(!t)return"";let e=Vt(t);return e=e.replace(xe.Episode.SUFFIX_DIGIT,""),e=e.replace(xe.Episode.FILE_NOISE,""),e=e.replace(xe.Episode.SEASON_PREFIX," "),e=e.replace(xe.Episode.CLEAN_SMART," "),e=e.replace(xe.Clean.SOURCE_TAG,""),e=e.replace(xe.Lang.CN_STD,"\u4E2D\u6587"),e=e.replace(xe.Lang.JP_STD,"\u65E5\u6587"),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(xe.Episode.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(xe.Clean.WHITESPACE," ").toLowerCase().trim()}function Wat(t){return t?t.replace(xe.Clean.PARENTHESES_CONTENT,"").trim():""}function Uoe(t){if(!t)return"";let e=String(t).split(Uc)[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 $at(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 Qxr(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 Hxr(t,e){if(!t||!e)return 0;let r=new Set(t.replace(xe.Clean.WHITESPACE,"")),n=new Set(e.replace(xe.Clean.WHITESPACE,"")),s=r.size,i=n.size;if(s===0&&i===0)return 1;if(s===0||i===0)return 0;let a=0,[o,c]=s<i?[r,n]:[n,r];for(let u of o)c.has(u)&&a++;return 2*a/(s+i)}function gm(t,e){if(!t||!e)return 0;let r=$c(t),n=$c(e);if(r===""&&n==="")return 0;if(r===n)return 1;let s=r.length,i=n.length,a=Math.max(s,i),o=Math.min(s,i);if(r.includes(n)||n.includes(r)){let x=o/a;if(x>.5)return .8+x*.2}let c=Qxr(r,n),u=a===0?1:1-c/a,l=new Set(r.replace(xe.Clean.WHITESPACE,"")),d=new Set(n.replace(xe.Clean.WHITESPACE,"")),f=l.size,m=d.size;if(f===0||m===0)return 0;let p=0,[h,y]=f<m?[l,d]:[d,l];for(let x of h)y.has(x)&&p++;let g=2*p/(f+m),A=0,b=Math.min(f,m);return b>2&&(A=p/b,A>.6&&b/Math.max(f,m)<.6&&(A-=.25)),Math.max(u,g,A)}function bo(t,e="",r=[]){let n=new Set,s=ym(e||""),i=l=>{let d=ym(zat(l)),f=d.replace(xe.Season.PART_ANY,""),m=f.match(xe.Season.CN_STRUCTURE);if(m){let y={\u627F:"S2",\u8F6C:"S3",\u7ED3:"S4"};y[m[1]]&&n.add(y[m[1]])}if(qxr.forEach(y=>{let g=(y.useCleaned?f:d).match(y.regex);g&&n.add(y.prefix?`${y.prefix}${parseInt(g[1])}`:y.val)}),!U6.some(y=>{if(y.regex.test(f))return n.add(y.val),!0})){let y=f.match(xe.Season.SUFFIX_AMBIGUOUS);if(y){n.add("AMBIGUOUS");let g={II:"S2",III:"S3",IV:"S4"},A=y[1].toUpperCase();g[A]&&n.add(g[A])}}xe.Season.SUFFIX_SEQUEL.test(d)&&n.add("SEQUEL");let h={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,final:99};for(let[y,g]of Object.entries(h))d.includes(`\u7B2C${y}\u5B63`)&&n.add(`S${g}`)};[t,...Array.isArray(r)?r:[]].filter(Boolean).forEach(i),s.includes("\u7EED\u7BC7")&&n.add("SEQUEL"),/(剧场版|movie|film|电影)/i.test(s)&&n.add("MOVIE"),/\b(ova|oad)\b/i.test(s)&&n.add("OVA"),/\b(sp|special)\b/i.test(s)&&n.add("SP");let a=Array.from(n),o=a.some(l=>l.startsWith("S")),c=a.some(l=>l.startsWith("P")),u=["MOVIE","OVA","SP","SEQUEL","AMBIGUOUS"].some(l=>n.has(l));return c&&!o&&n.add("S1"),!o&&!c&&!u&&n.add("S1"),n}function Ri(t,e="",r=[]){let n=bo(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 ey(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 q1(t,e,r){if(r&&xe.Category.ANIMEKO_SOURCE.test(r))return"ANIME";let n=(t+" "+(e||"")).toLowerCase();return xe.Category.ANIME_KW.test(n)?"ANIME":xe.Category.REAL_KW.test(n)?"REAL":"UNKNOWN"}function Gxr(t,e,r=!0){if(!t||!e||$c(t)===$c(e))return!1;let n=d=>{if(!d)return"";let f=Vt(d);return f=f.replace(xe.Clean.META_SUFFIX,"").replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").replace(xe.Clean.WHITESPACE," "),f.trim().toLowerCase()},s=n(t),i=n(e);if(s===i)return!1;let a=d=>{let f=[":","\uFF1A"," code:"," code\uFF1A"," season"," part"];for(let p of f){let h=d.indexOf(p);if(h!==-1)return d.substring(h).trim()}let m=d.split(xe.Clean.WHITESPACE);return m.length>=2?m.slice(1).join(" "):null},o=a(s),c=a(i),[u,l]=s.length<i.length?[s,i]:[i,s];if(l.startsWith(u)){if(l.length===u.length)return!1;let d=l[u.length];if(xe.Clean.SUBTITLE_SEPARATOR.test(d)){let f=l.slice(u.length).replace(xe.Clean.SUBTITLE_SEPARATOR,"").trim();if(!r&&f.length>1||f.length>2)return!0}}return!!(o&&c&&Hxr(o,c)<.2)}function Yat(t,e,r,n){if(!((r||"").includes("\u5267\u573A\u7248")||(n||"").includes("\u5267\u573A\u7248")))return!1;let i=c=>c?Vt(c).replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim():"",a=i(t),o=i(e);if(xe.Clean.SPACE_STRUCTURE.test(a)&&xe.Clean.SPACE_STRUCTURE.test(o)){let c=d=>{let f=d.split(xe.Clean.SPLIT_SPACES);return f.length>1?f.slice(1).join(" "):""},u=c(a),l=c(o);return!(xe.Season.PURE_PART.test(u)||xe.Season.PURE_PART.test(l))}return!1}function Vxr(t,e,r,n,s,i,a="",o=""){let c=q1(t,r,a),u=q1(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"),m=(n||"").includes("2D"),p=!l&&!f,h=!d&&!m;if(!p&&h?/3[dD]/.test(e)?d=!0:/2[dD]/.test(e)&&(m=!0):!h&&p&&(/3[dD]/.test(t)?l=!0:/2[dD]/.test(t)&&(f=!0)),(l||f)&&(d||m)&&l!==d)return!0;let A=ey(t,r),b=ey(e,n);return!A||!b||A===b||Yat(t,e,r,n)?!1:s>0&&i>0?Math.abs(s-i)>5:!0}function Kxr(t,e,r,n,s=[],i=[]){let a=bo(t,r,s),o=bo(e,n,i);if(a.size===0&&o.size===0)return!1;let c=f=>Array.from(f).some(m=>m.startsWith("S")&&parseInt(m.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 m=o.has(f),p=Array.from(o).some(h=>h.startsWith("S"));if(!m&&p)return!0}return!1}return a.size!==o.size?!Yat(t,e,r,n):!1}function zxr(t,e,r,n,s=[],i=[]){let a=bo(t,r,s),o=bo(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 Yxr(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 Jxr(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 W6(t){if(!t)return null;let e=t.toLowerCase();return e.includes("opening")?"opening":e.includes("ending")?"ending":e.includes("interview")?"interview":e.includes("bloopers")?"Bloopers":null}function Ca(t,e=""){let r=!1,n=e;if(t){let p=t.match(xe.Episode.DANDAN_TAG);p&&(n=p[1].toLowerCase())}if(/^(dandan|animeko)$/i.test(n)&&t){let p=t.replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();(xe.Episode.SPECIAL_START.test(p)||xe.Episode.DANDAN_IGNORE.test(p))&&(r=!0)}let i=ym(t||""),a=xe.Episode.MOVIE_CHECK.test(i),o=xe.Episode.PV_CHECK.test(i),c=null,u=null,l=W6(t),d=o||r||!!l||xe.Episode.SPECIAL_CHECK.test(i),f=i.match(xe.Episode.SEASON_MATCH);f&&(u=parseInt(f[1]));let m=i.match(xe.Episode.NUM_STRATEGY_A);if(m)c=parseFloat(m[2]);else{let p=i.match(xe.Episode.NUM_STRATEGY_B);if(p)c=parseFloat(p[1]);else{let h=i.match(xe.Episode.NUM_STRATEGY_C);h&&(c=parseFloat(h[1]))}}return{isMovie:a,num:c,isSpecial:d,isPV:o,season:u,isStrictSpecial:r}}function Foe(t,e,r=""){if(!t)return[];let s=["animeko","bilibili","bilibili1","bahamut","dandan"].includes(r);if(!e||s)return t.map((o,c)=>({link:o,originalIndex:c}));let i=[],a=[];if(t.forEach((o,c)=>{let u=o.title||o.name||"";e.test(u)?a.push(u):i.push({link:o,originalIndex:c})}),a.length>0){let o=r?`[${r}] `:"";ht("info",`[Merge-Check] ${o}\u547D\u4E2DEPISODE_TITLE_FILTER\u8FC7\u6EE4\uFF0C\u5DF2\u524D\u7F6E\u5254\u9664 ${a.length} \u96C6: ${a.join(", ")}`)}return i}var Uat=new Map;function $6(t,e,r){if(!t||t.length<2||!e)return"";let n=l=>{if(!l||!r)return l||"";try{let d=Uat.get(r);if(!d){let f=Kat(r);d=new RegExp(`(\\[|\u3010|\\s)?${f}(\\]|\u3011|\\s)?`,"gi"),Uat.set(r,d)}return l.replace(d,"").trim()}catch{return l}},s=n(e),i=s.match(xe.Clean.REDUNDANT_SEPARATOR);i&&(s=s.substring(0,i.index));let a=t.map(l=>{let d=l.link||l;return d?n(d.title||d.name||""):""});if(a.some(l=>!l))return"";let o=(l,d)=>{let f="";for(let m=0;m<l.length;m++)for(let p=m+1;p<=l.length;p++){let h=l.substring(m,p);d.includes(h)&&h.length>f.length&&(f=h)}return f},c=o(a[0],a[1]);if(c.length<2)return"";for(let l=2;l<a.length;l++)if(c=o(c,a[l]),c.length<2)return"";let u=o(c,s);if(!s.startsWith(u))return"";if(xe.Clean.REDUNDANT_UNSAFE_END.test(u)){let l=u.slice(0,-1).trim();return l.length>=2&&s.startsWith(l)?l:""}return u.length>=2&&(xe.Clean.REDUNDANT_VALID_CHARS.test(u)||u.length>3)?(ht("info",`[Merge-Check] \u68C0\u6D4B\u5230\u96C6\u5185\u5197\u4F59\u6807\u9898\u5B57\u6BB5: "${u}" (\u5DF2\u5FFD\u7565\u6765\u6E90: ${r}, \u951A\u5B9A\u9A8C\u8BC1\u901A\u8FC7)`),u):""}function Fat(t,e){let r=new Set;if(!t)return r;let n=-1;for(let s=0;s<t.length;s++){let i=t[s].title||t[s].name||"",a=Ca(i,e);a.num!==null&&!a.isSpecial&&!a.isPV&&a.num%1===0&&(n=s)}return t.forEach((s,i)=>{let a=s.title||s.name||"",o=Ca(a,e);o.num!==null&&!o.isSpecial&&!o.isPV&&o.num%1!==0&&i<n&&r.add(o.num)}),r}function qat(t,e,r,n){let s=[],i=[],a=0;t.forEach(o=>{let c=o.title||o.name||"",u=Ca(c,r);u.num!==null&&e.has(u.num)?(i.push(o),a++):s.push(o)}),a>0&&(t.length=0,t.push(...s,...i),ht("info",`[Merge-Check] [${n}] \u81EA\u52A8\u6C89\u5E95: \u79FB\u52A8\u4E86 ${a} \u4E2A\u4E2D\u95F4\u63D2\u503C\u96C6\u6570 (${Array.from(e).join(",")}) \u5230\u672B\u5C3E`))}function jat(t,e,r="Unspecified",n="Unspecified",s="",i="",a="",o=""){if(t.length===0||e.length===0)return 0;let c=$6(t,a,s),u=$6(e,o,i),l=(I,R)=>I?R&&I.includes(R)?I.replace(R,""):I:"",d=(I,R,N,k)=>{let B=I.link.title||"",M=l(B,k),P=Ca(M,R),L=xo(M),Z=L!=="Unspecified"?L:N,W=Z==="Unspecified"&&/^(dandan|animeko)$/i.test(R)?"JP":Z,U=F1(M),V=W==="CN"?M.replace(xe.Similarity.CN_STRICT_CORE_REMOVE,""):null;return{info:P,effLang:W,specialType:W6(M),cleanEpText:U,strictCnCore:V}},f=t.map(I=>d(I,s,r,c)),m=e.map(I=>d(I,i,n,u)),p=null,h=null;f.forEach(({info:I})=>{I.num!==null&&!I.isSpecial&&I.num%1===0&&(p=p===null?I.num:Math.min(p,I.num))}),m.forEach(({info:I})=>{I.num!==null&&!I.isSpecial&&I.num%1===0&&(h=h===null?I.num:Math.min(h,I.num))});let y=p!==null&&h!==null?p-h:null,g=15,A=y!==null?-y:0,b=Math.max(Math.min(-g,A-g),-Math.max(t.length,e.length)),x=Math.min(Math.max(g,A+g),Math.max(t.length,e.length)),S=0,T=-9999;for(let I=b;I<=x;I++){let R=0,N=0,k=0,B=new Map,M=!1,P=null;for(let L=0;L<e.length;L++){let Z=L+I;if(Z<0||Z>=t.length)continue;let W=f[Z],U=m[L],V=W.info,j=U.info,J=0;V.isMovie!==j.isMovie&&(J+=fi.EP_ALIGN.MOVIE_TYPE_MISMATCH),(V.isStrictSpecial&&!j.isSpecial||j.isStrictSpecial&&!V.isSpecial)&&(J+=fi.EP_ALIGN.SPECIAL_STRICT_MISMATCH);let se=W.effLang==="Unspecified"?"JP":W.effLang,oe=U.effLang==="Unspecified"?"JP":U.effLang;se===oe?J+=fi.EP_ALIGN.LANG_MATCH:J+=fi.EP_ALIGN.LANG_MISMATCH,V.season!==null&&j.season!==null&&V.season!==j.season&&(J+=fi.EP_ALIGN.SEASON_NUM_MISMATCH),(W.specialType||U.specialType)&&(W.specialType!==U.specialType?J+=fi.EP_ALIGN.SPECIAL_TYPE_MISMATCH:J+=fi.EP_ALIGN.SPECIAL_TYPE_MATCH),V.isSpecial===j.isSpecial&&(J+=fi.EP_ALIGN.IS_SPECIAL_MATCH),y!==null&&!V.isSpecial&&!j.isSpecial&&V.num-j.num===y&&(J+=fi.EP_ALIGN.SEASON_SHIFT_EXACT,M=!0);let ue=0;W.effLang==="CN"&&U.effLang==="CN"&&W.strictCnCore&&U.strictCnCore&&(W.strictCnCore.includes(U.strictCnCore)||U.strictCnCore.includes(W.strictCnCore))?ue=V.num!==null&&j.num!==null&&V.num===j.num?fi.EP_ALIGN.CN_STRICT_MATCH:fi.EP_ALIGN.CN_STRICT_MISMATCH:ue=gm(W.cleanEpText,U.cleanEpText),J+=ue,N+=ue,V.num!==null&&j.num!==null&&V.num===j.num&&(J+=fi.EP_ALIGN.NUMERIC_MATCH);let Te=1;if(V.num!==null&&!V.isSpecial&&(P!==null&&V.num-P>1?Te=.1:P=V.num),J*=Te,ue*=Te,N+=ue,R+=J,V.num!==null&&j.num!==null){let Ne=(j.num-V.num).toFixed(4);B.set(Ne,(B.get(Ne)||0)+Te)}k++}if(k>0){let L=R/k,Z=0;for(let j of B.values())Z=Math.max(Z,j);let W=Z/k,U=N/k;W>.6&&(M||U>.33)&&(L+=fi.EP_ALIGN.PATTERN_CONSISTENCY_BONUS),L+=Math.min(k*.15,1.5);let V=B.get("0.0000")||0;V>0&&(L+=fi.EP_ALIGN.ZERO_DIFF_BONUS_BASE,L+=V*fi.EP_ALIGN.ZERO_DIFF_BONUS_PER_HIT),L>T&&(T=L,S=I)}}return T>.3?S:0}function Xxr(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(q1(c.animeTitle,c.typeDescription,c.source)==="REAL"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u771F\u4EBA\u5267/REAL)`);continue}if(ey(c.animeTitle,c.typeDescription)==="MOVIE"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u7535\u5F71/MOVIE)`);continue}let d=Ri(c.animeTitle,c.typeDescription,c.aliases);if(d!==null&&c.links){let m=Foe(c.links,e,c.source).filter(p=>{let h=p.link.title||p.link.name||"",g=ym(h).replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();return!(/^(dandan|animeko)$/i.test(c.source)&&(xe.Episode.SPECIAL_CHECK.test(g)||xe.Episode.DANDAN_IGNORE.test(g))||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(g)||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(h))}).length;if(m>0){n.has(d)||n.set(d,new Map);let p=n.get(d);p.has(m)||p.set(m,[]),p.get(m).push(c.source),s.push(` [\u91C7\u7EB3] [${c.source}] S${d} = ${m}\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[m,p]of c.entries()){let h=p.length;h>l?(l=h,u=m,d=p):h===l&&m<u&&(u=m,d=p)}i.set(o,u);let f=Array.from(c.entries()).map(([m,p])=>`${m}\u96C6(x${p.length})[${p.join(",")}]`).join(", ");a.push(`S${o}=${u} (\u63A8\u65AD\u6765\u6E90: ${d.join(",")} | \u7EDF\u8BA1: ${f})`)}return(s.length>0||a.length>0)&&ht("info",`[Merge-Check] [Map-Build] \u5B63\u5EA6\u5730\u56FE\u6784\u5EFA\u8BE6\u60C5:
${s.join(`
`)}
=> \u6700\u7EC8\u5224\u5B9A: { ${a.join("; ")} }`),i}function Zxr(t,e,r=""){let n=`${t}_${e}_${r}`,s=0;for(let i=0;i<n.length;i++)s=(s<<5)-s+n.charCodeAt(i)|0;return Math.abs(s)%1e9+1e9}function Qat(t,e){let r=t.link,n=r.title||r.name||`Episode ${t.originalIndex+1}`,s=r.url||"";s&&(s=Uoe(s),/^https?:\/\//i.test(s)||(s=`${e}:${s}`));let i=n;return i.includes(`\u3010${e}\u3011`)||(i=`\u3010${e}\u3011 ${i}`),{title:i,url:s,name:n}}function ebr(t,e,r){if(!e||e.length===0)return;let n=[],s=[],i=[],a=t.links.length,o=-1;for(let l=a-1;l>=0;l--){let d=t.links[l],f=d.title||d.name||"",m=Ca(f,t.source);if(!m.isSpecial&&!m.isPV&&!m.isStrictSpecial&&m.num!==null){o=l;break}}for(let l of e){let d=l.relativeIndex,f=l.info&&l.info.isStrictSpecial,m=l.info&&!l.info.isSpecial&&!l.info.isPV&&!f&&l.info.num!==null;d<0&&!f?n.push(l):d>=a&&!f||m&&d>o?s.push(l):i.push(l)}let c=[],u=(l,d,f)=>{l.length>0&&(l.sort((m,p)=>m.originalIndex-p.originalIndex),d.push(...l.map(m=>Qat(m,r))),c.push(` [\u8865\u5168-${f}] \u63D2\u5165/\u8FFD\u52A0 ${l.length} \u96C6 (${l.map(m=>m.link.title).join(", ")})`))};n.length>0&&(n.sort((l,d)=>l.originalIndex-d.originalIndex),t.links.unshift(...n.map(l=>Qat(l,r))),c.push(` [\u8865\u5168-\u5934\u90E8] \u63D2\u5165 ${n.length} \u96C6 (${n.map(l=>l.link.title).join(", ")})`)),u(s,t.links,"\u5C3E\u90E8"),u(i,t.links,"\u7279\u6B8A"),c.length>0&&ht("info",`[Merge] [${r}] \u667A\u80FD\u8865\u5168:
${c.join(`
`)}`)}function tbr(t){let e=new Map;if(!t||t.length<2)return e;let r=t.map(s=>{let i=s.animeTitle||"",a=ym(i).replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();return{id:s.animeId,raw:i,clean:a}}),n=new Set(r.map(s=>s.clean));for(let s of r){let i=null;for(let a of U6)if(s.clean.match(a.regex)){i=s.clean.replace(a.regex,"").trim();break}if(!i){let a=s.clean.match(xe.Season.SUFFIX_AMBIGUOUS);if(a){let o=a[1];s.clean.endsWith(o)&&(i=s.clean.substring(0,s.clean.length-o.length).trim())}}i&&i.length>1&&n.has(i)&&(e.set(String(s.id),i),ht("info",`[Merge-Check] \u4E0A\u4E0B\u6587\u611F\u77E5: \u5224\u5B9A [${s.raw}] \u4E3A\u7EED\u4F5C (Base: "${i}" \u540C\u65F6\u4E5F\u5B58\u5728\u4E8E\u5217\u8868)`))}return e}function rbr(t,e){let r={isStrongMatch:!1,isStrongMismatch:!1};if(!t.links||!e.links||!t.links.length||!e.links.length)return r;let n=h=>h.filter(y=>{let g=(y.title||y.name||"").toLowerCase();return!xe.Episode.PV_CHECK.test(g)&&!xe.Episode.SPECIAL_CHECK.test(g)}).length,s=n(t.links),i=n(e.links);s>5&&i>5&&Math.min(s,i)/Math.max(s,i)<.4;let a=h=>h.map(y=>F1(y.title||y.name||"").replace(/\d+/g,"").trim()).filter(y=>y.length>1),o=a(t.links),c=a(e.links);if(o.length<3||c.length<3)return r;let u=xo(o.join(" ")),l=xo(c.join(" "));if(u!==l||u==="Unspecified")return r;let d=Math.min(o.length,c.length,5),f=0,m=0,p=[];for(let h=0;h<d;h++){let y=Math.floor(h*o.length/d),g=Math.floor(h*c.length/d),A=gm(o[y],c[g]);h<3&&p.push(`"${o[y]}" vs "${c[g]}" (${A.toFixed(2)})`),A>.6?f++:A<.3&&m++}return f>=Math.ceil(d*.6)?(r.isStrongMatch=!0,ht("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Match): ${p.join(", ")}`)):m>=Math.ceil(d*.8)&&(r.isStrongMismatch=!0,ht("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Mismatch): ${p.join(", ")}`)),r}function qoe(t,e){let r=O.customMergeRules||[];if(r.length===0)return null;let n=Ri(t.animeTitle,t.typeDescription,t.aliases),s=Ri(e.animeTitle,e.typeDescription,e.aliases),i=(a,o)=>{let c=Vt(a||"").toLowerCase().replace(xe.Clean.FROM_SUFFIX,""),u=Vt(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 m=f[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|电影|电视剧|连续剧|综艺|真人秀|纪录片|日剧|韩剧|美剧|英剧|泰剧|国产剧|港剧|台剧|短剧|微短剧|特摄|OVA|OAD|SP|AVC|HEVC|MP4|MKV)$/i.test(m)||(c=c.replace(f[0],m+" "))}c=c.replace(xe.Clean.SOURCE_TAG,"").replace(/\[.*?\]/g,"")}return!u.includes("\u5B63")&&!u.includes("season")&&(c=c.replace(xe.Season.INFO_STRONG,"")),c=c.replace(xe.Clean.MOVIE_KEYWORDS,""),{target:ir(c).replace(/\s+/g,""),rule:ir(u).replace(/\s+/g,"")}};for(let a of r){let o=y=>String(y).split(Zg)[0],c=o(a.primary.source),u=o(a.secondary.source),l=String(t.source).split(Zg),d=String(e.source).split(Zg);if(!l.includes(c)||!d.includes(u))continue;let f=i(t.animeTitle,a.primary.title),m=i(e.animeTitle,a.secondary.title),p=f.target===f.rule,h=m.target===m.rule;if(!(!p||!h)&&!(a.primary.season!==null&&(n||1)!==a.primary.season)&&!(a.secondary.season!==null&&(s||1)!==a.secondary.season))return a}return null}function nbr(t,e,r=new Set,n=[]){if(!e||e.length===0)return[];let s=t.animeTitle||"",i=s.replace(xe.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),a=!!i.match(xe.Lang.CN_DUB_VER)||xe.Lang.CN.test(i),o=t.source==="hanjutv",c=s.includes("N/A")||o?{year:null,month:null}:$at(t.startDate),u=t.episodeCount||(t.links?t.links.length:0),l=xo(s),d=ym(i),f=$c(i),m=bo(s,t.typeDescription,t.aliases),p=Array.from(m).filter(R=>R.startsWith("S")),h=[{animeId:t.animeId,animeTitle:s},...e],y=tbr(h),g=y.has(String(t.animeId)),A=y.get(String(t.animeId)),b=r.has(t.animeId),x=(R,N)=>{ht("info",`[Merge-Check] \u62D2\u7EDD: [${t.source}] ${s} vs [${R}] -> ${N}`)},S=[],T=0;for(let R of e){let N=R.animeTitle||"",k=qoe(t,R);if(k){if(k.action==="block"){x(N,"\u88AB\u6620\u5C04\u8868 [\xD7] \u660E\u786E\u7981\u6B62\u4E0E\u4E3B\u6E90\u5408\u5E76");continue}let X=xo(N);S.push({anime:R,score:1,lang:X,debugTitle:N,isCustomMapped:!0}),ht("info",`[Merge-Check] \u5408\u5E76\u6620\u5C04\u8868\u7279\u6743\u653E\u884C: [${t.source}] ${s} <-> [${R.source}] ${N}`);continue}if(!n.includes(R.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(R.animeId),M=b||B,P=R.source==="hanjutv",L=N.includes("N/A")||P?{year:null,month:null}:$at(R.startDate),Z=xo(N),W=N.replace(xe.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),U=!!W.match(xe.Lang.CN_DUB_VER)||xe.Lang.CN.test(W),V=a||U,j=R.episodeCount||(R.links?R.links.length:0);if(W.includes("\u4E4B")){let X=W.split("\u4E4B"),ie=ym(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(Vxr(s,N,t.typeDescription,R.typeDescription,u,j,t.source,R.source)){let X=q1(s,t.typeDescription,t.source),ie=q1(N,R.typeDescription,R.source);x(N,`\u5A92\u4F53\u7C7B\u578B\u6216\u7EF4\u6570\u4E0D\u5339\u914D (P:${X}/${ey(s,t.typeDescription)} [${t.typeDescription}] vs S:${ie}/${ey(N,R.typeDescription)} [${R.typeDescription}])`);continue}let J=c.year!==null&&L.year!==null,se=Gxr(s,N,J);if(y.has(String(R.animeId))){let X=y.get(String(R.animeId));if(f===$c(X)&&!(xe.Season.SUFFIX_AMBIGUOUS.test(d)||U6.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&&$c(W)===$c(A)){x(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S2/Sequel) vs \u526F\u6E90(Base/S1) (Base: "${A}")`);continue}if(!J&&se){x(N,"\u6807\u9898\u7ED3\u6784\u51B2\u7A81\u4E14\u65E5\u671F\u65E0\u6548");continue}let ue=zxr(i,W,t.typeDescription,R.typeDescription,t.aliases,R.aliases),Te=rbr(t,R),Ne=s.search(xe.Clean.MOVIE_KEYWORDS)!==-1,je=N.search(xe.Clean.MOVIE_KEYWORDS)!==-1;if(Ne!==je){let X=bo(N,R.typeDescription,R.aliases),ie=Oe=>$c(Oe.replace(xe.Clean.MOVIE_KEYWORDS,"")),ce=ie(s),me=ie(N);if(gm(ce,me)>.9&&!m.has("SEQUEL")&&!X.has("SEQUEL")){x(N,`\u5267\u573A\u7248\u6807\u9898\u963B\u65AD: [${Ne?"Movie":"TV"}] vs [${je?"Movie":"TV"}] (\u65E0\u7EED\u7BC7\u6807\u8BC6)`);continue}}let Fe=M?0:Yxr(c,L,V);if(Fe===-1){let X=ue;if(Te.isStrongMatch&&(X=!0),M&&(X=!0),se&&!M&&(X=!1),X&&c.year&&L.year&&Math.abs(c.year-L.year)>2&&!Te.isStrongMatch&&!M&&(X=!1),!X){x(N,`\u65E5\u671F\u4E25\u91CD\u4E0D\u5339\u914D\u4E14\u65E0\u8C41\u514D (P:${c.year} vs S:${L.year}, IsDub:${V})`);continue}}if(!M&&Kxr(i,W,t.typeDescription,R.typeDescription,t.aliases,R.aliases))if(Te.isStrongMatch)ht("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 ve=X=>X?String(X).replace(xe.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim():"",F=Array.from(new Set([i,...t.aliases||[]].map(ve).filter(Boolean))),G=Array.from(new Set([W,...R.aliases||[]].map(ve).filter(Boolean))),K=0,q=0;for(let X of F){let ie=Wat(X);for(let ce of G)K=Math.max(K,gm(X,ce)),q=Math.max(q,gm(ie,Wat(ce)))}let Q=Math.max(K,q),ee=Q;se&&(Q+=fi.TITLE_STRUCTURE_CONFLICT),Fe!==-1&&(Q+=Fe);let ne=l==="CN",re=Z==="CN";if(ne&&re?Q+=fi.LANG_MATCH_CN:ne!==re&&(Q+=fi.LANG_MISMATCH),Te.isStrongMatch?(ht("info",`[Merge-Check] \u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u5339\u914D! \u63D0\u5347\u5206\u6570 (\u539F\u5206: ${Q.toFixed(2)}) -> ${cd.SIMILARITY_STRONG}`),Q=Math.max(Q,cd.SIMILARITY_STRONG)):Te.isStrongMismatch&&(x(N,"\u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u4E0D\u5339\u914D (\u96C6\u6807\u9898/\u5185\u5BB9\u5DEE\u5F02\u5DE8\u5927)"),Q=0),Q<cd.SIMILARITY_MIN){let X=f,ie=$c(W);x(N,`\u76F8\u4F3C\u5EA6\u4E0D\u8DB3: ${Q.toFixed(2)} (Raw:${ee.toFixed(2)}, CleanA:"${X}", CleanB:"${ie}")`)}else Q>T&&(T=Q),S.push({anime:R,score:Q,lang:Z,debugTitle:N}),ht("info",`[Merge-Check] \u5019\u9009\u9009\u4E2D: ${N} Score=${Q.toFixed(2)} (BestSoFar=${T.toFixed(2)})`)}if(S.length===0||T<cd.SIMILARITY_MIN&&!S.some(R=>R.isCustomMapped))return[];let I=S.filter(R=>{if(R.isCustomMapped||R.score>=T-cd.TIER_DEFAULT||R.lang==="CN"&&R.score>=T-cd.TIER_CN)return!0;let N=bo(R.debugTitle,R.anime.typeDescription,R.anime.aliases);if(Array.from(N).some(B=>B.startsWith("P"))&&R.score>=T-cd.TIER_PART){let B=Array.from(N).filter(M=>M.startsWith("S"));if(p.length>0&&B.length>0){if(p.some(P=>B.includes(P)))return!0}else return!0}return!1});return I.sort((R,N)=>R.isCustomMapped&&!N.isCustomMapped?-1:!R.isCustomMapped&&N.isCustomMapped?1:N.score-R.score),I.map(R=>R.anime)}function sbr(t){let e=new Set;if(!t||t.length===0)return e;let r=new Map;t.forEach(n=>{let s=O.animes.find(d=>String(d.animeId)===String(n.animeId))||n,i=bo(s.animeTitle,s.typeDescription,s.aliases);if(i.has("MOVIE")||i.has("OVA")||i.has("SP")||i.has("SEQUEL"))return;let a=Vt(n.animeTitle||""),o=a.match(/^(?:【|\[)(.+?)(?:】|\])/);if(o){let d=o[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(d)||(a=a.replace(o[0],d+" "))}a=a.replace(/第([一二三四五六七八九十]+)å­£/g,(d,f)=>`\u7B2C${Hl(f)}\u5B63`);let c=a.replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.META_SUFFIX,"").replace(xe.Lang.KEYWORDS_STRONG,"");if(U6.forEach(d=>c=c.replace(d.regex,"")),c=c.replace(xe.Season.SUFFIX_AMBIGUOUS,"").replace(/(?:第|S)\d+(?:å­£|期|部)/gi,"").replace(/(?:Part|P)\s*\d+/gi,"").replace(/\s+/g,"").toLowerCase().trim(),!c)return;let u=q1(n.animeTitle,s.typeDescription,s.source),l=`${c}|${u}`;r.has(l)||r.set(l,[]),r.get(l).push(n)});for(let[n,s]of r.entries()){if(s.length<2)continue;let[i,a]=n.split("|"),o=s.map(d=>` - [${d.source}] ${d.animeTitle}`).join(`
`);ht("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u6B63\u5728\u68C0\u67E5\u5206\u7EC4: "${i}" [${a}] (\u5305\u542B ${s.length} \u4E2A\u6761\u76EE):
${o}`);let c=new Map,u=0;if(s.forEach(d=>{let f=O.animes.find(g=>String(g.animeId)===String(d.animeId))||d,m=bo(f.animeTitle,f.typeDescription,f.aliases),p=1;for(let g of m)if(g.startsWith("S")){let A=parseInt(g.substring(1));isNaN(A)||(p=A)}if(p===1){let g=m.has("SEQUEL")||xe.Season.SUFFIX_SEQUEL.test(f.animeTitle),A=m.has("AMBIGUOUS")||xe.Season.SUFFIX_AMBIGUOUS.test(f.animeTitle);(g||A)&&(p=2,ht("info",`[Merge-Check] [Detail] [${f.source}] "${f.animeTitle}" -> \u5224\u5B9A\u4E3A S2 (Reason: Sequel/Ambiguous Suffix)`))}p>u&&(u=p);let h=0;f.links&&(/^(dandan|animeko)$/i.test(f.source)?h=f.links.filter(g=>{let A=g.title||g.name||"",b=A.replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim();if(xe.Episode.SPECIAL_CHECK.test(b)||xe.Episode.DANDAN_IGNORE.test(b))return!1;let x=ym(A);return!(xe.Episode.SPECIAL_CHECK.test(x)||xe.Episode.DANDAN_IGNORE.test(x)||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(b)||xe.Episode.MAP_EXCLUDE_KEYWORDS.test(A))}).length:h=f.links.length),c.has(f.source)||c.set(f.source,{seasonCounts:{},maxSeason:0,s1Candidates:[]});let y=c.get(f.source);y.seasonCounts[p]||(y.seasonCounts[p]=0),y.seasonCounts[p]=Math.max(y.seasonCounts[p],h),p>y.maxSeason&&(y.maxSeason=p),p===1&&y.s1Candidates.push({anime:f,originalCount:h})}),u<=1)continue;let l=Array.from(c.keys());for(let[d,f]of c.entries()){if(f.maxSeason>1)continue;let m=0,p=!1;for(let y of l){if(y===d)continue;let g=c.get(y);g.seasonCounts[1]&&(p=!0,g.seasonCounts[1]>m&&(m=g.seasonCounts[1]))}if(!p)continue;let h=m+cd.COLLECTION_DIFF;f.s1Candidates.forEach(y=>{let g=m>0?y.originalCount/m:0;if(y.originalCount>h){if(g>cd.COLLECTION_RATIO){ht("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u62D2\u7EDD: [${d}] ${y.anime.animeTitle} (Ratio too high: ${g.toFixed(2)} > ${cd.COLLECTION_RATIO})`);return}e.add(y.anime.animeId),ht("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u53D1\u73B0\u7591\u4F3C\u5408\u96C6(\u5355\u4F53): [${d}] ${y.anime.animeTitle} (Count:${y.originalCount} > Thr:${h}, Ratio:${g.toFixed(2)}) -> \u6807\u8BB0\u4E3A\u5408\u96C6`)}else ht("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u672A\u547D\u4E2D: [${d}] ${y.anime.animeTitle} (Count:${y.originalCount} <= Threshold:${h})`)})}}return e}async function $oe(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:m,collectionProgress:p,baseSecondaries:h}=t;if(f.has(e.animeId)&&s.has(e.animeId))return ht("info",`${l} \u8DF3\u8FC7: [${u}] \u662F\u5408\u96C6\u4E14\u5DF2\u4F5C\u4E3A\u7EC4\u5185\u526F\u6E90\u53C2\u4E0E\u8FC7\u5408\u5E76\u3002`),null;let y=Woe(e);if(!y.links){let P=O.animes.find(L=>String(L.animeId)===String(e.animeId));y.links=P?.links?Woe(P.links):[]}if(!y.links||y.links.length===0)return ht("warn",`${l} \u4E3B\u6E90\u6570\u636E\u4E0D\u5B8C\u6574\uFF0C\u8DF3\u8FC7: ${e.animeTitle}`),null;let g=e.animeTitle.replace(xe.Clean.FROM_SUFFIX,""),A=[],b=[e.animeId],x=!1,S=xo(e.animeTitle),T=$6(y.links,e.animeTitle,u),I=f.has(e.animeId),R=(P,L)=>P?L&&P.includes(L)?P.replace(L,""):P:"",N=$c(e.animeTitle),k=n.filter(P=>$c(P.animeTitle)===N),B=Xxr(k,o,f);if(B.size>0){let P=Array.from(B.entries()).map(([L,Z])=>`S${L}=${Z}`).join(", ");(I||r.some(L=>n.some(Z=>Z.source===L&&f.has(Z.animeId))))&&ht("info",`${l} [\u5408\u96C6\u5904\u7406] \u6784\u5EFA\u5B63\u5EA6\u96C6\u6570\u5730\u56FE (Mode\u7B56\u7565): { ${P} }`)}let M=[];for(let P of r){let L=n.filter(V=>{if(V.source!==P)return!1;let j=qoe(e,V);if(j)return j.action==="block"?(ht("info",`${l} \u62E6\u622A: \u526F\u6E90 [${V.source}] ${V.animeTitle} \u88AB\u6620\u5C04\u8868 [\xD7] \u89C4\u5219\u660E\u786E\u963B\u65AD`),!1):!0;if(I)return!0;let J=s.has(V.animeId),se=m&&m.has(V.animeId);return!(J&&!se)}),Z=[],W=new Set;for(let V of L)W.has(V.animeId)||(W.add(V.animeId),Z.push(V));if(L=Z,d&&(L=L.filter(V=>xo(V.animeTitle)===d)),L.length>1&&L.sort((V,j)=>{let J=xo(V.animeTitle)==="CN",se=xo(j.animeTitle)==="CN";return J===se?0:J?1:-1}),L.length===0)continue;let U=nbr(e,L,f,h);M.push(...U)}if(M.length>0){if(M.length>1&&(I||M.some(P=>f.has(P.animeId)))){M.sort((L,Z)=>{let W=Ri(L.animeTitle,L.typeDescription,L.aliases)||1,U=Ri(Z.animeTitle,Z.typeDescription,Z.aliases)||1;if(W!==U)return W-U;let V=r.indexOf(L.source),j=r.indexOf(Z.source);return V-j});let P=M.map(L=>`[${L.source}]S${Ri(L.animeTitle,L.typeDescription,L.aliases)||1}`);ht("info",`${l} [\u5408\u96C6\u65F6\u5E8F] \u5DF2\u5C06\u8DE8\u6E90\u5339\u914D\u961F\u5217\u6309\u5B63\u6570\u5347\u5E8F\u6392\u5217\uFF0C\u4FDD\u969C\u5207\u7247\u63A8\u65AD\u4E25\u683C\u81EA\u4E3E: ${P.join(" -> ")}`)}for(let P of M){let L=P.source,Z=qoe(e,P);if(Z&&Z.action==="block"){ht("info",`${l} [\u5B89\u5168\u7F51\u62E6\u622A] \u5173\u8054\u53D6\u6D88: [${u}] ${e.animeTitle} <-> [${L}] ${P.animeTitle} \u88AB\u660E\u786E\u963B\u65AD`);continue}if(!I&&!(m&&m.has(P.animeId))&&!Z&&s.has(P.animeId))continue;let W=O.animes.find(Pe=>String(Pe.animeId)===String(P.animeId));if(!W?.links)continue;let U=Woe(W),V=[],j=new Set,J=[],se=[],oe=U.animeTitle.replace(xe.Clean.FROM_SUFFIX,""),ue=Fat(y.links,u),Te=Fat(U.links,L),Ne=new Set([...Te].filter(Pe=>!ue.has(Pe))),je=new Set([...ue].filter(Pe=>!Te.has(Pe)));je.size>0&&qat(y.links,je,u,`\u4E3B\u6E90:${u}`),Ne.size>0&&qat(U.links,Ne,L,`\u526F\u6E90:${L}`);let Fe=U.links,ve=Foe(y.links,o,u),F=Foe(Fe,o,L),G=xo(U.animeTitle),K=ve,q=F,Q=0,ee=0,ne=f.has(P.animeId),re=(Pe,qe,Ye)=>{let Je=0,et=qe;if(Ye&&Ye>1){let st=!1,ut=Pe?e.animeId:P.animeId;if(p&&p.has(ut)){let rt=p.get(ut),Pt=Ye-1;if(rt[`S${Pt}`]!==void 0){let dt=rt[`S${Pt}`]+1;dt>0&&dt<qe.length&&(et=qe.slice(dt),Je=dt,ht("info",`${l} [\u5408\u96C6\u5207\u7247] \u5386\u53F2\u63A8\u65AD\u547D\u4E2D: \u6839\u636E S${Pt} \u7ED3\u675F\u4F4D\u7F6E (Index ${rt[`S${Pt}`]}), \u8BBE\u5B9A S${Ye} \u8D77\u70B9\u4E3A Index ${dt}`),st=!0)}}if(!st){let rt=0;for(let dt=1;dt<Ye;dt++)rt+=B.get(dt)||0;let Pt=rt;if(Pt>=qe.length){let dt=(Ye-1)*12;dt<qe.length&&(ht("info",`${l} [\u5408\u96C6\u5207\u7247] \u8D77\u70B9\u8D8A\u754C\u4FEE\u6B63: \u539F\u8BA1\u7B97 ${Pt} > Total ${qe.length}\uFF0C\u542F\u7528\u56DE\u9000\u4F30\u7B97 (S${Ye} -> Index ${dt})`),Pt=Math.max(0,dt-2))}if(Pt>0&&Pt<qe.length){let dt=rt+(B.get(Ye)||999),Be=Math.min(dt,qe.length);et=qe.slice(Pt,Be),Je=Pt;let Xe=Pe?`\u4E3B\u6E90[${u}]`:`\u526F\u6E90[${L}]`;ht("info",`${l} [\u5408\u96C6\u5207\u7247] \u68C0\u6D4B\u5230${Xe}\u4E3A\u5408\u96C6 (Target: S${Ye}): \u65E0\u5386\u53F2\u63A8\u65AD(Defensive Fallback)\uFF0C\u4FE1\u4EFB\u5730\u56FE\u5207\u81F3 ${Pt}~${Be} (\u5171 ${et.length} \u96C6) \u53C2\u4E0E\u5BF9\u9F50`)}else ht("info",`${l} [\u5408\u96C6\u5207\u7247] \u653E\u5F03\u5207\u7247: \u8BA1\u7B97\u8D77\u70B9 ${Pt} \u8D85\u51FA\u8303\u56F4 (Total: ${qe.length})`)}}else if(Ye===1){let st=B.get(1);if(st&&st<qe.length){et=qe.slice(0,st);let ut=Pe?`\u4E3B\u6E90[${u}]`:`\u526F\u6E90[${L}]`;ht("info",`${l} [\u5408\u96C6\u5207\u7247] \u68C0\u6D4B\u5230${ut}\u4E3A\u5408\u96C6 (Target: S1): \u4F7F\u7528 Index 0~${st} \u53C2\u4E0E\u5BF9\u9F50`)}}return{sliceStart:Je,slicedList:et}};if(I&&!ne){let Pe=Ri(U.animeTitle,U.typeDescription,U.aliases),qe=re(!0,ve,Pe);K=qe.slicedList,Q=qe.sliceStart}else if(!I&&ne){let Pe=Ri(e.animeTitle,e.typeDescription,e.aliases),qe=re(!1,F,Pe);q=qe.slicedList,ee=qe.sliceStart}y.animeId=Zxr(y.animeId,P.animeId,c),y.bangumiId=String(y.animeId);let X=0,ie=$6(U.links,U.animeTitle,L),ce=Pe=>Pe.isSpecial||Pe.isStrictSpecial||Pe.num!==null&&Pe.num%1!==0,me=new Map,Oe=0;if(Z&&Z.hasRoutes){ht("info",`${l} \u542F\u7528\u6620\u5C04\u8868\u7CBE\u786E\u8DEF\u7531: ${e.animeTitle} <-> ${P.animeTitle}`);let qe=jat(K,q,S,G,u,L,e.animeTitle,U.animeTitle)+Q-ee;Oe=qe;let Ye=new Map;for(let Je of Z.routes){let et=Je.sec.end-Je.sec.start+1,st=Je.prim.end-Je.prim.start+1;if(et!==st){ht("warn",`[Merge] [\u6620\u5C04\u8868] \u8DEF\u7531\u533A\u95F4\u8DE8\u5EA6\u4E0D\u5BF9\u7B49\uFF0C\u8DF3\u8FC7\u6B64\u6BB5: E${Je.sec.start}~E${Je.sec.end} > E${Je.prim.start}~E${Je.prim.end}`);continue}for(let ut=0;ut<et;ut++)Ye.set(Je.sec.start+ut,Je.prim.start+ut)}for(let Je=0;Je<F.length;Je++){let et=F[Je],st=et.link,ut=st.name||st.title||`Index ${Je}`,rt=R(st.title||st.name,ie),Pt=Ca(rt,L),dt={link:st,originalIndex:et.originalIndex,relativeIndex:-1,info:Pt},Be=Pt.num;if(Be===null&&!Pt.isStrictSpecial&&(Be=Je+1),Be===null||!Ye.has(Be)){dt.relativeIndex=Je+qe,V.push({idx:dt.relativeIndex,text:` [\u672A\u8DEF\u7531\u843D\u5355] ${ut} (\u5E94\u7528\u63A8\u65AD\u504F\u79FB\u4F4D\u7F6E)`}),se.push(dt);continue}let Xe=Ye.get(Be),pt=ve.findIndex((nt,bt)=>{let An=Ca(R(nt.link.title||nt.link.name,T),u),St=An.num;return St===null&&!An.isStrictSpecial&&(St=bt+1),St===Xe&&!An.isSpecial&&!An.isStrictSpecial});if(pt!==-1){me.set(Je,pt),dt.relativeIndex=pt;let nt=ve[pt].originalIndex,bt=y.links[nt],An=bt.name||bt.title||`Index ${nt}`,St=Uoe(st.url),Rr=bt.url,Qs=`${L}:${St}`;Rr.includes(Uc)||Rr.startsWith(u+":")||(Rr=`${u}:${Rr}`);let Lr=`${Rr}${Uc}${Qs}`,Hs=bt.title;if(Hs){let Gs=L,Es=(st.title||"").match(/^【([^】\d]+)(?:\d*)】/);Es&&(Gs=Es[1].trim()),Hs=Hs.replace(/^【([^】]+)】/,(Vs,zu)=>`\u3010${zu}${Zg}${Gs}\u3011`)}V.push({idx:pt,text:` [\u5DF2\u8DEF\u7531\u6620\u5C04] ${An} <-> ${ut} (Rule: E${Be}>E${Xe})`}),j.add(pt),X++,J.push({linkIndex:nt,newUrl:Lr,newTitle:Hs})}else dt.relativeIndex=Je+qe,V.push({idx:dt.relativeIndex,text:` [\u8DEF\u7531\u5931\u8D25] \u4E3B\u6E90\u627E\u4E0D\u5230 E${Xe} <-> ${ut}`}),se.push(dt)}}else{Z&&ht("info",`${l} \u547D\u4E2D\u6620\u5C04\u8868\u5E38\u89C4\u5408\u5E76: [${L}] ${P.animeTitle} -> [${u}] ${e.animeTitle} (\u5DF2\u514D\u68C0\u653E\u884C\uFF0C\u4EA4\u7531\u7CFB\u7EDF\u81EA\u52A8\u5BF9\u9F50)`),Oe=jat(K,q,S,G,u,L,e.animeTitle,U.animeTitle)+Q-ee,Oe!==0&&ht("info",`${l} \u96C6\u6570\u81EA\u52A8\u5BF9\u9F50 (${L}): Offset=${Oe} (P:${ve.length}, S:${F.length})`);let qe=new Map,Ye=null;F.forEach((ut,rt)=>{let Pt=ve[rt+Oe];if(!Pt)return;let dt=R(Pt.link.title||Pt.link.name,T),Be=R(ut.link.title||ut.link.name,ie),Xe=Ca(dt,u),pt=Ca(Be,L);if(Xe.num===null||pt.num===null||ce(Xe)||ce(pt))return;let nt=Xe.num-pt.num,An=1+(gm(F1(dt),F1(Be))>.45?1:0);Ye!==null&&Xe.num-Ye>1?An=.1:Ye=Xe.num,qe.set(nt,(qe.get(nt)||0)+An)});let Je=qe.size>0?[...qe.entries()].reduce((ut,rt)=>rt[1]>ut[1]?rt:ut)[0]:null,et=ve.reduce((ut,rt,Pt)=>{let dt=Ca(R(rt.link.title||rt.link.name,T),u);return ce(dt)&&!dt.isPV&&ut.push(Pt),ut},[]),st=0;for(let ut=0;ut<F.length;ut++){let rt=ut+Oe,Pt=F[ut],dt=Pt.link,Be=dt.name||dt.title||`Index ${ut}`,Xe=R(dt.title||dt.name,ie),pt=Ca(Xe,L),nt={link:dt,originalIndex:Pt.originalIndex,relativeIndex:rt,info:pt},bt=ce(pt);if(Je!==null&&pt.num!==null&&!bt){let An=pt.num+Je;if(rt=ve.findIndex(St=>{let Rr=Ca(R(St.link.title||St.link.name,T),u);return Rr.num===An&&!ce(Rr)}),rt!==-1)nt.relativeIndex=rt;else{let St=-.5;for(let Rr=ve.length-1;Rr>=0;Rr--){let Qs=Ca(R(ve[Rr].link.title||ve[Rr].link.name,T),u);if(Qs.num!==null&&!Qs.isSpecial&&Qs.num<An){St=Rr;break}}nt.relativeIndex=St+ut*.001+.1}}else if(bt){let An=-1,St=.65,Rr=F1(Xe);for(let Qs of et){let Lr=R(ve[Qs].link.title||ve[Qs].link.name,T),Hs=Ca(Lr,u);if(pt.isPV!==Hs.isPV)continue;let Gs=gm(Rr,F1(Lr));Gs>St&&(St=Gs,An=Qs)}An===-1&&!pt.isPV&&st<et.length&&(An=et[st]),pt.isPV||st++,rt=An,nt.relativeIndex=rt!==-1?rt:ve.length+ut*.001}else nt.relativeIndex=rt!==-1?rt:ut+Oe;if(rt>=0&&rt<ve.length){me.set(ut,rt);let An=ve[rt].originalIndex,St=y.links[An],Rr=St.name||St.title||`Index ${An}`,Qs=R(St.title,T),Lr=W6(Qs),Hs=W6(Xe),Gs=Ca(Qs,u);if(pt.isPV&&!Lr){V.push({idx:nt.relativeIndex,text:` [\u7565\u8FC7] ${Rr} =/= ${Be} (PV\u4E0D\u5339\u914D\u6B63\u7247)`}),se.push(nt);continue}if(Lr!==Hs){V.push({idx:nt.relativeIndex,text:` [\u7565\u8FC7] ${Rr} =/= ${Be} (\u7279\u6B8A\u96C6\u7C7B\u578B\u4E0D\u5339\u914D)`}),se.push(nt);continue}let Es=Gs.isStrictSpecial||Gs.num!==null&&Gs.num%1!==0,Vs=pt.isStrictSpecial||pt.num!==null&&pt.num%1!==0,zu=!Gs.isSpecial&&(Gs.num===null||Gs.num%1===0),To=!pt.isSpecial&&(pt.num===null||pt.num%1===0);if(Es&&To||Vs&&zu){V.push({idx:nt.relativeIndex,text:` [\u7565\u8FC7] ${Rr} =/= ${Be} (\u6B63\u7247\u4E0E\u756A\u5916\u963B\u65AD)`}),se.push(nt);continue}let Kc=Uoe(dt.url),La=St.url,xn=`${L}:${Kc}`;La.includes(Uc)||La.startsWith(u+":")||(La=`${u}:${La}`);let Ma=`${La}${Uc}${xn}`,Id=St.title;if(Id){let wo=L;if(dt.title){let aA=dt.title.match(/^【([^】\d]+)(?:\d*)】/);aA&&(wo=aA[1].trim())}Id=Id.replace(/^【([^】]+)】/,(aA,EW)=>`\u3010${EW}${Zg}${wo}\u3011`)}V.push({idx:nt.relativeIndex,text:` [\u5339\u914D] ${Rr} <-> ${Be}`}),j.add(rt),X++,J.push({linkIndex:An,newUrl:Ma,newTitle:Id})}else V.push({idx:nt.relativeIndex,text:` [\u843D\u5355] (\u4E3B\u6E90\u8D8A\u754C) <-> ${Be}`}),se.push(nt)}}for(let Pe=0;Pe<ve.length;Pe++)if(!j.has(Pe)){let qe=ve[Pe].originalIndex,Ye=y.links[qe],Je=Ye.name||Ye.title||`Index ${qe}`;V.push({idx:Pe,text:` [\u843D\u5355] ${Je} <-> (\u526F\u6E90\u7F3A\u5931\u6216\u88AB\u7565\u8FC7)`})}if(X>0){let Pe=f.has(e.animeId)||f.has(P.animeId),qe=!1;if(Z?qe=X>0:qe=Jxr(X,ve.length,F.length,u,L,Pe),qe){for(let Be of J){let Xe=y.links[Be.linkIndex];Xe.url=Be.newUrl,Xe.title=Be.newTitle}let Ye=Be=>Be?Be.replace(xe.Clean.YEAR_TAG,"").replace(xe.Clean.SOURCE_TAG,"").replace(xe.Clean.FROM_SUFFIX,"").trim():"",Je=Ye(y.animeTitle);y.aliases=[...new Set([...y.aliases||[],...U.aliases||[],...P.aliases||[],Ye(U.animeTitle)])].filter(Be=>Be&&Be!==Je),ht("info",`${l} \u5173\u8054\u6210\u529F: [${u}] ${g} <-> [${L}] ${oe} (\u672C\u6B21\u5408\u5E76 ${X} \u96C6)`),V.length>0&&(V.sort((Be,Xe)=>Be.idx-Xe.idx),ht("info",`${l} [${L}] \u6620\u5C04\u8BE6\u60C5:
${V.map(Be=>Be.text).join(`
`)}`)),y.mergedChildren=y.mergedChildren||[],y.mergedChildren.some(Be=>String(Be.animeId)===String(P.animeId)&&Be.source===P.source)||y.mergedChildren.push({animeId:P.animeId,animeTitle:P.animeTitle,source:P.source,episodes:U.links?U.links.length:0,imageUrl:P.imageUrl||""});let et=O.animes.find(Be=>String(Be.animeId)===String(P.animeId)&&Be.source===P.source);if(et&&(et.isHiddenChild=!0),p&&(ne||I)){let Be=-1;if(I&&!ne){for(let Xe=0;Xe<F.length;Xe++){let pt=me.has(Xe)?me.get(Xe):Xe+Oe;if(j.has(pt)){let nt=ve[pt].originalIndex;nt>Be&&(Be=nt)}}if(Be!==-1){let Xe=Ri(U.animeTitle,U.typeDescription,U.aliases)||1;p.has(e.animeId)||p.set(e.animeId,{});let pt=p.get(e.animeId);X>=3&&(pt[`S${Xe}`]=Be)}}else if(!I&&ne){for(let Xe=0;Xe<F.length;Xe++){let pt=me.has(Xe)?me.get(Xe):Xe+Oe;if(j.has(pt)){let nt=F[Xe];nt.originalIndex>Be&&(Be=nt.originalIndex)}}if(Be!==-1){let Xe=Ri(e.animeTitle,e.typeDescription,e.aliases)||1;p.has(P.animeId)||p.set(P.animeId,{});let pt=p.get(P.animeId);X>=3&&(pt[`S${Xe}`]=Be,ht("info",`[Merge-Check] \u66F4\u65B0\u5408\u96C6\u8FDB\u5EA6 [${P.animeId}]: S${Xe} -> MaxIndex ${Be}`))}}}let st=Ri(e.animeTitle,e.typeDescription,e.aliases)||1,ut=Ri(U.animeTitle,U.typeDescription,U.aliases)||1,rt=Z&&st!==ut;f.has(P.animeId)||rt?ht("info",`${l} [\u667A\u80FD\u8865\u5168] \u8DF3\u8FC7: \u526F\u6E90 [${L}] \u4E3A\u5408\u96C6\u6216\u89E6\u53D1\u8DE8\u5B63\u5EA6\u6620\u5C04\uFF0C\u4E3A\u907F\u514D\u6DF7\u5165\u5176\u4ED6\u5B63\u5EA6\u96C6\u6570\uFF0C\u4E0D\u6267\u884C\u8865\u5168\u3002`):ebr(y,se,L);let Pt=[],dt=[];y.links.forEach(Be=>{let Xe=Be.title.replace(xe.Clean.SOURCE_TAG,"").trim();xe.Episode.SINK_TITLE_STRICT.test(Xe)?dt.push(Be):Pt.push(Be)}),dt.length>0&&(y.links=[...Pt,...dt],ht("info",`${l} [\u6392\u5E8F\u4F18\u5316] \u7ACB\u5373\u6267\u884C\u756A\u5916\u6C89\u5E95: \u79FB\u52A8\u4E86 ${dt.length} \u4E2A\u756A\u5916\u96C6\u5230\u672B\u5C3E`)),x=!0,A.push(L),b.push(P.animeId)}else ht("info",`${l} \u5173\u8054\u53D6\u6D88: [${u}] ${g} <-> [${L}] ${oe} (\u5339\u914D\u7387\u8FC7\u4F4E: ${X}/${Math.max(ve.length,F.length)})`)}}}if(x){let P=b.join("|");if(a.has(P))return ht("info",`${l} \u68C0\u6D4B\u5230\u91CD\u590D\u7684\u5408\u5E76\u7ED3\u679C (Signature: ${P})\uFF0C\u5DF2\u81EA\u52A8\u9690\u53BB\u5197\u4F59\u6761\u76EE\u3002`),null;a.add(P);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<b.length;W++){let U=b[W];f.has(U)?ht("info",`${l} \u5408\u96C6\u4FDD\u7559: ID [${U}] \u662F\u5408\u96C6\uFF0C\u4FDD\u7559\u4EE5\u4F9B\u540C\u7EC4\u590D\u7528\u3002`):s.add(U),i.add(U)}let Z=A.join(Zg);return y.animeTitle=y.animeTitle.replace(`from ${u}`,`from ${u}${Zg}${Z}`),y.source=u,y}return null}async function Jat(t,e=null){if(!t||t.length<2)return;let r=O.mergeSourcePairs||[],n=O.customMergeRules||[],s=new Map;for(let m of n){if(m.action==="block")continue;let p=m.primary.source.split("&")[0],h=m.secondary.source.split("&")[0];s.has(p)||s.set(p,new Set),s.get(p).add(h)}let i=r.map(m=>({primary:m.primary,secondaries:[...m.secondaries],baseSecondaries:[...m.secondaries]}));for(let[m,p]of s.entries()){let h=i.find(y=>y.primary===m);h||(h={primary:m,secondaries:[],baseSecondaries:[]},i.push(h));for(let y of p)h.secondaries.includes(y)||h.secondaries.push(y)}if(!i||i.length===0)return;ht("info",`[Merge] \u542F\u52A8\u6E90\u5408\u5E76\u7B56\u7565\uFF0C\u7EC4\u5408\u8BA1\u7B97\u540E\u7684\u914D\u7F6E: ${JSON.stringify(i)}`);let a=O.episodeTitleFilter;if(a&&typeof a=="string")try{a=new RegExp(a,"i")}catch{a=null}let o=sbr(t),c=new Map,u=[],l=new Set,d=new Set,f=new Set;i.forEach(m=>{m.secondaries.length===0&&f.add(m.primary)});for(let m of i){if(m.secondaries.length===0)continue;let p=new Map,h=[m.primary,...m.secondaries];h.forEach((R,N)=>p.set(R,N));let y=h.join("&"),g=new Set,A=(R,N)=>{if(!R||R.length<2)return R;ht("info",`[Merge-Check] [Sort] ${N} \u6392\u5E8F\u524D\u9996\u4E2A\u5143\u7D20: ${R[0].animeTitle}`),R.sort((B,M)=>{let P=p.get(B.source)??99,L=p.get(M.source)??99;if(P!==L)return P-L;let Z=J=>{let se=bo(J.animeTitle,J.typeDescription,J.aliases);return se.has("MOVIE")||se.has("OVA")||se.has("SP")||ey(J.animeTitle,J.typeDescription)==="MOVIE"?2:1},W=Z(B),U=Z(M);if(W!==U)return W-U;let V=Ri(B.animeTitle,B.typeDescription,B.aliases)||1,j=Ri(M.animeTitle,M.typeDescription,M.aliases)||1;return V-j});let k=R.map(B=>{let M=Ri(B.animeTitle,B.typeDescription,B.aliases)||1,P=bo(B.animeTitle,B.typeDescription,B.aliases).has("MOVIE")||ey(B.animeTitle,B.typeDescription)==="MOVIE"?"Movie":`S${M}`;return`[P${p.get(B.source)??"?"}] [${P}] [${B.source}] ${B.animeTitle}`});return ht("info",`[Merge-Check] [Sort] ${N} \u6267\u884C\u987A\u5E8F:
${k.join(`
`)}`),R},b=[];h.forEach(R=>{t.filter(k=>k.source===R&&!g.has(k.animeId)&&xo(k.animeTitle)==="CN").forEach(k=>b.push(k))});let x=!1;for(let R of h)if(t.some(N=>N.source===R&&!g.has(N.animeId)&&xo(N.animeTitle)==="CN")){x=!0;break}if(b.length>0&&x){ht("info",`[Merge] [Phase 1] \u542F\u52A8 CN \u9694\u79BB\u7B56\u7565: \u5305\u542B ${b.length} \u4E2A CN \u8D44\u6E90\u3002`),A(b,"Phase 1");for(let R of b){if(g.has(R.animeId))continue;let N=p.get(R.source),k=h.slice(N+1);if(k.length===0)continue;let B=await $oe({pAnime:R,availableSecondaries:k,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:y,currentPrimarySource:R.source,logPrefix:"[Merge][Phase 1: CN-Strict]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:m.baseSecondaries});B&&(u.push(B),g.add(R.animeId),d.add(R.animeId))}}let S=[];for(let R=1;R<h.length;R++){let N=h[R];t.filter(B=>B.source===N&&!g.has(B.animeId)&&xo(B.animeTitle)==="CN").forEach(B=>S.push(B))}if(S.length>=2){ht("info",`[Merge] [Phase 1.5] \u542F\u52A8\u526F\u6E90 CN \u81EA\u7EC4\u7EC7: \u68C0\u6D4B\u5230 ${S.length} \u4E2A\u5269\u4F59 CN \u8D44\u6E90\u3002`),A(S,"Phase 1.5");for(let R of S){if(g.has(R.animeId))continue;let N=p.get(R.source),k=h.slice(N+1);if(k.length===0)continue;let B=await $oe({pAnime:R,availableSecondaries:k,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:y,currentPrimarySource:R.source,logPrefix:"[Merge][Phase 1.5: CN-Secondary]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:m.baseSecondaries});B&&(u.push(B),g.add(R.animeId),d.add(R.animeId))}}let T=[];h.forEach(R=>{t.filter(k=>k.source===R&&!g.has(k.animeId)).forEach(k=>T.push(k))});let I=new Set(T.map(R=>R.source));if(T.length>0&&I.size>=2){ht("info",`[Merge] [Phase 2] \u542F\u52A8\u6807\u51C6\u56DE\u9000\u5339\u914D: \u5269\u4F59 ${T.length} \u4E2A\u8D44\u6E90\u3002`),A(T,"Phase 2");for(let R of T){if(g.has(R.animeId))continue;let N=p.get(R.source),k=h.slice(N+1);if(k.length===0)continue;let B=bo(R.animeTitle,R.typeDescription,R.aliases),M=Array.from(B).some(Z=>Z.startsWith("P")),P=null;if(M){P=new Set;let Z=Ri(R.animeTitle,R.typeDescription,R.aliases)||1;for(let W of d){let U=O.animes.find(J=>String(J.animeId)===String(W));if(!U||!k.includes(U.source))continue;let V=bo(U.animeTitle,U.typeDescription,U.aliases);if(Array.from(V).some(J=>J.startsWith("P")))continue;let j=Ri(U.animeTitle,U.typeDescription,U.aliases)||1;Z===j&&P.add(U.animeId)}}let L=await $oe({pAnime:R,availableSecondaries:k,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:y,currentPrimarySource:R.source,logPrefix:"[Merge][Phase 2: Standard]",collectionAnimeIds:o,allowReuseIds:P,collectionProgress:c,baseSecondaries:m.baseSecondaries});L&&(u.push(L),g.add(R.animeId),d.add(R.animeId))}}}if(u.length>0){for(let m of u)Dt(m,e);t.unshift(...u)}if(f.size>0)for(let m of t)d.has(m.animeId)&&f.has(m.source)&&d.delete(m.animeId);for(let m=t.length-1;m>=0;m--){let p=t[m];(p._isMerged||d.has(p.animeId))&&t.splice(m,1)}u.length>0?ht("info",`[Merge] \u5408\u5E76\u6267\u884C\u5B8C\u6BD5\uFF0C\u65B0\u589E\u4E86 ${u.length} \u4E2A\u5408\u5E76\u9879\uFF0C\u6700\u7EC8\u5217\u8868\u6570\u91CF: ${t.length}`):ht("info",`[Merge] \u626B\u63CF\u5B8C\u6BD5\uFF0C\u672A\u4EA7\u751F\u4EFB\u4F55\u5408\u5E76\uFF0C\u5217\u8868\u4FDD\u6301\u4E0D\u53D8 (\u6570\u91CF: ${t.length})`)}function Hat(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 Gat(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 Vat(t){return!t||typeof t!="string"?"":t.replace(/[\s.,!?"'(){}\[\]<>;:,。!?、""''()【】《》;:~~]/g,"").toLowerCase()}function Xat(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 Zat(t,e,r,n=.8,s=1){let i=e.indexOf("dandan");if(i===-1||!t[i]?.length)return ht("info","[Merge][AlignTimeline] \u65E0 dandan \u6E90\u6216\u65E0\u6570\u636E\uFF0C\u8DF3\u8FC7\u65F6\u95F4\u8F74\u5BF9\u9F50"),t;let a=t[i],o=a.length,c=new Map;return a.forEach(u=>{let l=Vat(Gat(u)),d=Hat(u);l&&(!c.has(l)||d<c.get(l))&&c.set(l,d)}),t.forEach((u,l)=>{let d=e[l];if(d==="dandan"||!u?.length)return;let f=new Map,m=[],p=0;u.forEach(x=>{let S=Vat(Gat(x)),T=Hat(x);if(m.push({danmu:x,time:T}),S&&c.has(S)){p++;let I=Math.round(T-c.get(S));f.set(I,(f.get(I)||0)+1)}});let h=0,y=0;f.forEach((x,S)=>{x>y&&(y=x,h=S)});let g=Math.min(o,u.length),A=y/g,b=p>0?y/p:0;if(p/g<n||A<.05||b<.15){ht("info",`[Merge][AlignTimeline] ${d}:${r[l]} \u5339\u914D\u7387\u6216\u96C6\u4E2D\u5EA6\u8FC7\u4F4E (\u6709\u6548:${(A*100).toFixed(1)}%, \u96C6\u4E2D\u5EA6:${(b*100).toFixed(1)}%)\uFF0C\u8DF3\u8FC7\u5BF9\u9F50`);return}if(Math.abs(h)<s){ht("info",`[Merge][AlignTimeline] ${d}:${r[l]} \u6700\u4F73\u504F\u79FB ${h}s \u4F4E\u4E8E\u9608\u503C\uFF0C\u65E0\u9700\u5BF9\u9F50`);return}ht("info",`[Merge][AlignTimeline] ${d}:${r[l]} \u5E94\u7528\u504F\u79FB ${h}s (\u83B7 ${y} \u7968)`),m.forEach(({danmu:x,time:S})=>{let T=Math.max(0,S-h);typeof x.p=="string"&&(x.p=x.p.replace(/^[^,]+(?=,)/,T.toFixed(2))),x.t!=null&&(x.t=T),typeof x.progress=="number"&&(x.progress=Math.round(T*1e3))})}),t}Ns();function not(t,e=Date.now()){let r=Number(t);return Number.isFinite(r)&&r>0?Math.trunc(r):Math.trunc(Number(e)||Date.now())}function ibr(t=""){return xL(kg(t)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function abr(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(e.length/4)*4,"=");return Mc(Og(r))}var sot="6.8.2",obr="a_8280",cbr="xiaomi",iot="Redmi Note 12",ubr="Xiaomi",aot="14",lbr=`HanjuTV/${sot} (${iot}; Android ${aot}; Scale/2.00)`,oot=14*24*60*60*1e3,eot="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",cot="f349wghhe784tqwh",uot="d3w8hf94fidk38lk",dbr="34F9Q53w/HJW8E6Q",tot="fb3597b87601d5a7";function nw(t){return typeof TextEncoder<"u"?new TextEncoder().encode(t):kg(t)}function fbr(t){return typeof TextDecoder<"u"?new TextDecoder().decode(t):Mc(t)}function lot(t,e){let r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=t[n]^e[n];return r}function pbr(t,e=16){let r=t.length%e,n=r===0?e:e-r,s=new Uint8Array(t.length+n);return s.set(t,0),s.fill(n,t.length),s}function mbr(t){return t.replace(/[\u0000-\u001f\u007f-\u009f]/g,"")}function j1(t,e,r){let n=new Uint8Array(16);for(let s=0;s<4;s++)for(let i=0;i<4;i++)n[i+4*s]=t[i+4*s]^e[r*4+s][i];return n}function rot(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)];return e}function qn(t,e){let r=0,n=t,s=e;for(let i=0;i<8;i++){s&1&&(r^=n);let a=n&128;n=n<<1&255,a&&(n^=27),s>>=1}return r}function hbr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=qn(n[0],2)^qn(n[1],3)^n[2]^n[3],e[4*r+1]=n[0]^qn(n[1],2)^qn(n[2],3)^n[3],e[4*r+2]=n[0]^n[1]^qn(n[2],2)^qn(n[3],3),e[4*r+3]=qn(n[0],3)^n[1]^n[2]^qn(n[3],2)}return e}function gbr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=qn(n[0],14)^qn(n[1],11)^qn(n[2],13)^qn(n[3],9),e[4*r+1]=qn(n[0],9)^qn(n[1],14)^qn(n[2],11)^qn(n[3],13),e[4*r+2]=qn(n[0],13)^qn(n[1],9)^qn(n[2],14)^qn(n[3],11),e[4*r+3]=qn(n[0],11)^qn(n[1],13)^qn(n[2],9)^qn(n[3],14)}return e}function ybr(t,e){let r=new Uint8Array(t);r=j1(r,e,0);for(let n=1;n<=9;n++)r=yL(r),r=rot(r),r=hbr(r),r=j1(r,e,n);return r=yL(r),r=rot(r),r=j1(r,e,10),r}function Abr(t,e){let r=new Uint8Array(t);r=j1(r,e,10);for(let n=9;n>=1;n--)r=LC(r),r=BC(r),r=j1(r,e,n),r=gbr(r);return r=LC(r),r=BC(r),r=j1(r,e,0),r}function xbr(t,e,r){let n=pbr(t,16),s=AL(e),i=new Uint8Array(n.length),a=new Uint8Array(r);for(let o=0;o<n.length;o+=16){let c=n.slice(o,o+16),u=lot(c,a),l=ybr(u,s);i.set(l,o),a=l}return i}function bbr(t,e,r){if(t.length%16!==0)throw new Error(`\u5BC6\u6587\u957F\u5EA6\u4E0D\u662F16\u7684\u500D\u6570: ${t.length}`);let n=AL(e),s=new Uint8Array(t.length),i=new Uint8Array(r);for(let a=0;a<t.length;a+=16){let o=t.slice(a,a+16),c=lot(Abr(o,n),i);s.set(c,a),i=o}return s}async function F6(t,e,r){let n=nw(e),s=nw(r),i=nw(t),a=xbr(i,n,s);return xL(a)}async function _br(t,e,r){let n=nw(e),s=nw(r),i=Og(t),a=bbr(i,n,s);return fbr(a)}function dot(t){if(globalThis.crypto?.getRandomValues){let e=new Uint8Array(1);return globalThis.crypto.getRandomValues(e),e[0]%t}return Math.floor(Math.random()*t)}function fot(t=20){let e="";for(let r=0;r<t;r++)e+=eot[dot(eot.length)];return e}function q6(t,e){let r="";for(let n=0;n<e;n++)r+=t[dot(t.length)];return r}function Ebr(t,e=Date.now()){let r=not(e);return{uid:t||fot(),said:q6("0123456789abcdef",16),oa:q6("0123456789abcdef",16),installTs:Math.max(0,r-oot)}}function vbr(t,e){let r=not(e,t.installTs+oot);return JSON.stringify({emu:0,ou:0,it:t.installTs,iit:t.installTs,bs:0,uid:t.uid,pc:0,tm:81,d8m:"0,0,0,0,0,0,0,4",md:iot,maker:ubr,osv:aot,br:95,rpc:0,scc:2,plc:6,toc:19,tsc:10,ts:r,pa:1,crec:0,nw:2,px:"0",isp:"",ai:t.said,oa:t.oa,dpc:0,dsc:0,qpc:0,apad:0,pk:"com.babycloud.hanju"})}async function pot(t=Date.now(),e=fot()){let r=Ebr(e,t),n=ss(r.uid),s=await F6(r.uid,cot,uot);return async function(a=Date.now()){let o=vbr(r,a),c=await F6(o,n.slice(0,16),n.slice(16,32));return{uid:r.uid,headers:{app:"hj",ch:cbr,said:r.said,uk:s,vn:sot,sign:c,"User-Agent":lbr,vc:obr,"Accept-Encoding":"gzip",Connection:"Keep-Alive"}}}}async function mot(t=Date.now()){let e=q6("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",20),r=q6("0123456789abcdef",16);return async function(s=Date.now()){let i=ss(e),a=JSON.stringify({emu:0,ou:0,it:t,iit:t,bs:0,uid:e,isp:"",pc:0,tm:50,d8m:"0,0,0,0,0,0,14,7",md:"23127PN0CC",dn:"",osv:"16",br:50,rpc:0,scc:1,plc:1,toc:5,tsc:7,ts:s,nw:2,px:"0",ai:tot,oa:r,dpc:0,dsc:0,qpc:0,apad:0}),o=await F6(e,cot,uot),c=await F6(a,i.slice(0,16),i.slice(16,32));return{uid:e,headers:{version:"a_22570","version-name":"1.7.2",channel:"xiaomi","app-type":"ztv","User-Agent":"ZTV/1.7.2 (23127PN0CC; Android 16; Scale/2.00)",said:tot,di:o,token:"",uid:"",rp:c,"Accept-Encoding":"gzip",Connection:"Keep-Alive"}}}}async function joe(t,e=""){if(!t||typeof t!="object"||Array.isArray(t)||typeof t.data!="string"||t.data.length===0)return t;let r=t.ts??"",n=typeof t.key=="string"&&t.key?t.key:"";if(!n&&e&&r!==""&&(n=ss(`${e}${r}`)),!n)throw new Error("\u7F3A\u5C11\u89E3\u5BC6 key\uFF0C\u4E14\u65E0\u6CD5\u901A\u8FC7 uid+ts \u63A8\u5BFC");let s=ss(`${n}${dbr}`),i=s.slice(0,16),a=s.slice(16,32),o=await _br(t.data,i,a),c=mbr(o).trim();return JSON.parse(c)}function hot(t=""){let e=String(t||"").trim();return e.startsWith("hanjutv:")?e.slice(8):e}function rw(t="",e=!1){let r=String(t||"").trim();return r?{id:r,preferTv:e,rawId:`${e?"tv":"hxq"}:${r}`}:null}function Sbr(t=""){if(!t.startsWith("merge:"))return null;try{let e=abr(t.slice(6)),r=JSON.parse(e),n=String(r?.hxq||"").trim(),s=String(r?.tv||"").trim();return!n||!s?null:{hxqId:n,tvId:s}}catch{return null}}function got(t="",e=""){let r=String(t||"").trim(),n=String(e||"").trim();return!r||!n?"":`merge:${ibr(JSON.stringify({hxq:r,tv:n}))}`}function yot(t=""){let e=hot(t);if(!e)return{id:"",preferTv:!1,rawId:"",refs:[]};let r=Sbr(e);if(r){let s=[rw(r.hxqId,!1),rw(r.tvId,!0)].filter(Boolean);return{id:s[0]?.id||"",preferTv:!1,rawId:e,refs:s}}if(e.startsWith("tv:")){let s=rw(e.slice(3),!0);return{id:s?.id||"",preferTv:!0,rawId:s?.rawId||"",refs:s?[s]:[]}}if(e.startsWith("hxq:")){let s=rw(e.slice(4),!1);return{id:s?.id||"",preferTv:!1,rawId:s?.rawId||"",refs:s?[s]:[]}}let n=rw(e,!1);return{id:n?.id||"",preferTv:!1,rawId:n?.rawId||"",refs:n?[n]:[]}}function j6(t=""){let e=hot(t);return e.startsWith("merge:")?"\u97E9\u5C0F\u5708\uFF06\u6781\u901F\u7248":e.startsWith("tv:")?"\u6781\u901F\u7248":"\u97E9\u5C0F\u5708"}Et();sn();var wt=class{constructor(){}async search(e){throw new Error("Method 'search' must be implemented")}async getEpisodes(e){throw new Error("Method 'Episodes' must be implemented")}async handleAnimes(e,r,n,s=null,i=null){throw new Error("Method 'handleAnimes' must be implemented")}async getEpisodeDanmu(e){throw new Error("Method 'getEpisodeDanmu' must be implemented")}async getEpisodeDanmuSegments(e){throw new Error("Method 'getEpisodeDanmuSegments' must be implemented")}async getEpisodeSegmentDanmu(e){throw new Error("Method 'getEpisodeSegmentDanmu' must be implemented")}formatComments(e){throw new Error("Method 'formatComments' must be implemented")}async getComments(e,r,n=!1,s=null){if(n)return s&&await s(5,`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55\u5206\u7247\u5217\u8868`),E("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55\u5206\u7247\u5217\u8868`),await this.getEpisodeDanmuSegments(e);s&&await s(5,`\u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55`),E("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5F39\u5E55${r}\u5F39\u5E55`);let i=await this.getEpisodeDanmu(e);s&&await s(85,`\u539F\u59CB\u5F39\u5E55 ${i.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`),E("info",`[system] [Base] \u539F\u59CB\u5F39\u5E55 ${i.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`);let a=this.formatComments(i);return s&&await s(100,`\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${a.length} \u6761`),E("info",`[system] [Base] \u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${a.length} \u6761`),zC(a,r)}async getSegmentComments(e,r=null){r&&await r(5,`\u5F00\u59CB\u83B7\u53D6\u5206\u7247\u5F39\u5E55${e.type}\u5F39\u5E55`),E("info",`[system] [Base] \u5F00\u59CB\u83B7\u53D6\u5206\u7247\u5F39\u5E55${e.type}\u5F39\u5E55`);let n=await this.getEpisodeSegmentDanmu(e);r&&await r(85,`\u539F\u59CB\u5206\u7247\u5F39\u5E55 ${n.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`),E("info",`[system] [Base] \u539F\u59CB\u5206\u7247\u5F39\u5E55 ${n.length} \u6761\uFF0C\u6B63\u5728\u89C4\u8303\u5316`);let s=this.formatComments(n);return r&&await r(100,`\u5206\u7247\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${s.length} \u6761`),E("info",`[system] [Base] \u5206\u7247\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${s.length} \u6761`),zC(s,e.type)}sortAndPushAnimesByYear(e,r){e.filter(n=>n!==null).sort((n,s)=>{let i=im(n.animeTitle),a=im(s.animeTitle);if(i!=null&&a!==null&&a!==void 0){if(a!==i)return a-i;let o=MY(n.animeTitle),c=MY(s.animeTitle);return o.length-c.length}return i!=null&&a==null?-1:i==null&&a!=null?1:0}).forEach(n=>{r.findIndex(i=>i.animeId===n.animeId)===-1&&r.push(n)})}};kt();Et();fr();function Br(t){let e=parseInt(t);return isNaN(e)||e<1900||e>2100?`${new Date().getFullYear()}-01-01T00:00:00Z`:`${e}-01-01T00:00:00Z`}function ty(t){let e=t.split(":").map(Number),r=0;return e.length===3?r=e[0]*3600+e[1]*60+e[2]:e.length===2?r=e[0]*60+e[1]:r=e[0],r}Un();sn();var sw=class extends wt{async get360Zongyi(e,r,n,s){try{let i=[];for(let a=0;a<=10;a++){let u=(await(await Ae(`https://api.so.360kan.com/episodeszongyi?entid=${r}&site=${n}&y=${s}&count=20&offset=${a*20}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data).data.list;if(E("info",`[360kan] 360kan zongyi response: \u7B2C${a}\u9875\u83B7\u53D6\u5230${u?u.length:0}\u6761\u5267\u96C6`),!u)break;for(let l of u){let d=l.name.match(/第(\d+)期([上中下])?/)||l.period.match(/第(\d+)期([上中下])?/),f=d?d[1]:null;f&&d[2]&&(f=d[2]==="\u4E0A"?`${f}.1`:d[2]==="\u4E2D"?`${f}.2`:`${f}.3`),i.push({name:l.id,url:l.url,title:`\u3010${n}\u3011 ${l.name} ${l.period}`,sort:f||l.sort||null})}E("info",`[360kan] links.length: ${i.length}`)}return i.sort((a,o)=>{if(!a.sort||!o.sort)return 0;let c=parseFloat(a.sort),u=parseFloat(o.sort);return c-u}),i}catch(i){return E("error","[360kan] get360Animes error:",{message:i.message,name:i.name,stack:i.stack}),[]}}async getNumber(e,r,n){try{let s=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&site=${n}`,a=(await Ae(s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(a&&a.data&&a.data.allupinfo)return Number(a.data.allupinfo[n])}catch(s){E("error","[360kan] getNumber error:",s&&s.message?s.message:s)}return null}async get360Detail(e,r,n,s,i){try{let a=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&start=${s}&end=${i}&site=${n}`;return(await Ae(a,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data}catch(a){E("error","[360kan] get360Detail error:",a&&a.message?a.message:a)}return null}async getEpisodesV1(e,r,n,s){try{if(!s||Number(s)===0)return[];let i=200,a=1,o=[],c=Number(s);for(;a<=c;){let u=Math.min(a+i-1,c);try{let l=await this.get360Detail(e,r,n,a,u);if(l&&l.data&&l.data.allepidetail&&l.data.allepidetail[n])for(let d of l.data.allepidetail[n])o.push({name:d.playlink_num,url:d.url});else{if(a===1)return[];break}}catch(l){if(E("error",`[360kan] getEpisodesV1 batch ${a}-${u} failed for site ${n}: ${l&&l.message?l.message:l}`),a===1)return[];break}a=u+1}return o}catch(i){return E("error",`getEpisodesV1 error: ${i&&i.message?i.message:i}`),[]}}async getEpisodesV2(e,r,n){try{let s=JSON.stringify([{cat_id:String(e),ent_id:String(r),site:n}]),i=`https://api.so.360kan.com/episodesv2?v_ap=1&s=${encodeURIComponent(s)}`,o=(await Ae(i,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(typeof o=="string")try{o=JSON.parse(o)}catch(c){return E("error",`[360kan] getEpisodesV2 JSON parse error: ${c.message}`),[]}if(!o)return[];if(o.code===0&&Array.isArray(o.data)&&o.data.length>0){let c=o.data[0].seriesHTML||{},u=c.seriesPlaylinks||c.series_playlinks||[],l=[];for(let d=0;d<u.length;d++){let f=u[d];if(f){if(typeof f=="string")l.push({name:(d+1).toString(),url:f,sort:(d+1).toString()});else if(typeof f=="object"){let m=f.url,p=d+1;l.push({name:String(p),url:m||""})}}}return l.filter(d=>d.url)}return[]}catch(s){return E("error","[360kan] getEpisodesV2 error:",{message:s&&s.message?s.message:String(s),stack:s&&s.stack?s.stack:void 0}),[]}}async search(e){try{let n=(await Ae(`https://api.so.360kan.com/index?force_v=1&kw=${encodeURIComponent(e)}&from=&pageno=1&v_ap=1&tab=all`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data,s=[];return"rows"in n.data.longData&&(s=n.data.longData.rows),E("info",`[360kan] 360kan response: ${JSON.stringify(s)}`),E("info",`[360kan] 360kan animes.length: ${s.length}`),s}catch(r){return E("error","[360kan] get360Animes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[360kan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>Ct(l.titleTxt,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.titleTxt).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[360kan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=[];if(l.cat_name==="\u7535\u5F71")for(let f of Object.keys(l.playlinks))O.vodAllowedPlatforms.includes(f)&&d.push({name:f.toString(),url:l.playlinks[f],title:`\u3010${f}\u3011 ${l.titleTxt}(${l.year})`});else if(l.cat_name==="\u7535\u89C6\u5267"||l.cat_name==="\u52A8\u6F2B"){let f=0;l.cat_name==="\u7535\u89C6\u5267"?f=2:l.cat_name==="\u52A8\u6F2B"&&(f=4);let m=null;if(Array.isArray(l.seriesPlaylinks)&&l.seriesPlaylinks.length>0){if(O.vodAllowedPlatforms.includes(l.seriesSite))for(let p=0;p<l.seriesPlaylinks.length;p++){let h=l.seriesPlaylinks[p],y="";h&&typeof h=="object"?y=h.url||"":typeof h=="string"&&(y=l.playlinks&&l.playlinks[l.seriesSite]?l.playlinks[l.seriesSite]:""),y&&d.push({name:(p+1).toString(),url:y,title:`\u3010${l.seriesSite}\u3011 \u7B2C${p+1}\u96C6`})}}else if(l.playlinks&&typeof l.playlinks=="object"){for(let p of Object.keys(l.playlinks))if(O.vodAllowedPlatforms.includes(p))try{let h=l.en_id,y=await this.getEpisodesV2(f,h,p);if(y&&y.length>0)for(let g of y)d.push({name:g.name,url:g.url,title:`\u3010${p}\u3011 \u7B2C${g.name}\u96C6`,sort:g.name});else try{let g=await this.getNumber(f,h,p);if(g&&Number(g)>0){let A=await this.getEpisodesV1(f,h,p,g);if(A&&A.length>0)for(let b of A)d.push({name:b.name,url:b.url,title:`\u3010${p}\u3011 \u7B2C${b.name}\u96C6`,sort:b.name})}}catch(g){E("error",`[360kan] fallback detail fetch failed for site ${p}: ${g&&g.message?g.message:g}`)}}catch(h){E("error",`[360kan] failed to fetch episodesv2 for site ${p}: ${h&&h.message?h.message:h}`)}}}else l.cat_name==="\u7EFC\u827A"&&(d=(await Promise.all(Object.keys(l.playlinks_year).map(async m=>O.vodAllowedPlatforms.includes(m)?(await Promise.all(l.playlinks_year[m].map(async h=>await this.get360Zongyi(l.titleTxt,l.id,m,h)))).flat():[]))).flat());if(d.length>0){let f={animeId:Number(l.id),bangumiId:String(l.id),animeTitle:`${l.titleTxt}(${l.year})\u3010${l.cat_name}\u3011from 360`,type:l.cat_name,typeDescription:l.cat_name,imageUrl:l.cover,startDate:Br(l.year),episodeCount:d.length,rating:0,isFavorited:!0,source:"360"};a.push(f),Dt({...f,links:d},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(d){E("error",`[360kan] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};kt();Et();fr();Un();sn();var iw=class extends wt{async getVodAnimes(e,r,n){try{let s=G$e(e),i=encodeURIComponent(s),a=await Ae(`${r}/api.php/provide/vod/?ac=detail&wd=${i}&pg=1`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});if(a&&a.data&&a.data.list&&a.data.list.length>0){E("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F`);let o=a.data;return E("info",`[VOD] ${n} response: \u2193\u2193\u2193`),ns(o),{serverName:n,list:o.list}}else return E("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F\uFF0C\u4F46 response.data.list \u4E3A\u7A7A`),{serverName:n,list:[]}}catch(s){return E("error",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u5931\u8D25:`,{message:s.message,name:s.name,stack:s.stack}),{serverName:n,list:[]}}}async getVodAnimesFromAllServersImpl(e,r){let n=r.map(i=>this.getVodAnimes(e,i.url,i.name));return(await Promise.allSettled(n)).filter(i=>i.status==="fulfilled").map(i=>i.value)}async getVodAnimesFromFastestServer(e,r,n=null,s=null){if(!r||r.length===0)return[];let i=r.map(l=>this.getVodAnimes(e,l.url,l.name)),a;try{a=await Promise.race(i)}catch(l){return E("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u76F4\u63A5\u629B\u9519",l),[]}let o=l=>!n||s!=="vod"?!0:(JSON.stringify(l)?.toLowerCase()||"").includes(String(n).toLowerCase());if(o(a)&&a&&a.list&&a.list.length>0)return E("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName}${s==="vod"?" \u5B57\u7B26\u4E32\u5305\u542B preferAnimeId \u2192 \u4F18\u5148\u4F7F\u7528":""}`),[a];E("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName} \u4E0D\u542B preferAnimeId\uFF0C\u7B49\u5F85\u5176\u4ED6\u670D\u52A1\u5668\u2026`);let c=await Promise.allSettled(i);if(n){for(let l of c)if(l.status==="fulfilled"&&o(l.value)&&l.value&&l.value.list&&l.value.list.length>0)return E("info",`[VOD fastest mode] \u627E\u5230\u5305\u542B preferAnimeId \u7684\u670D\u52A1\u5668: ${l.value.serverName}`),[l.value];E("info","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u90FD\u4E0D\u5305\u542B preferAnimeId\uFF0C\u56DE\u9000\u5230\u201C\u771F\u6B63\u6709\u6570\u636E\u201D\u7684\u6700\u5FEB\u670D\u52A1\u5668")}let u=c.filter(l=>l.status==="fulfilled").map(l=>l.value).filter(l=>l&&l.list&&l.list.length>0);if(u.length>0){let l=u[0];return E("info",`[VOD fastest mode] \u4F7F\u7528\u6700\u5FEB\u6709\u6570\u636E\u7684\u670D\u52A1\u5668: ${l.serverName}`),[l]}return E("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u5747\u65E0\u6709\u6548\u6570\u636E"),[]}async search(e,r=null,n=null){return!O.vodServers||O.vodServers.length===0?[]:O.vodReturnMode==="fastest"?await this.getVodAnimesFromFastestServer(e,O.vodServers,r,n):await this.getVodAnimesFromAllServersImpl(e,O.vodServers)}async getEpisodes(e){}async handleAnimes(e,r,n,s,i=null,a=null){let o=[];if(!e||!Array.isArray(e))return E("error","[VOD] sourceAnimes is not a valid array"),[];let c=e.filter(d=>Ct(d.vod_name,r,a)),u=a!==null?a:Ut(r);if(u!==null){let d=c.filter(f=>{let m=Tt(f.vod_name).season;return m===u||u===1&&m===null});d.length>0&&(c=d,E("info",`[VOD] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=await Promise.all(c.map(async d=>{try{let f=d.vod_play_from.split("$$$");f=f.map(g=>g==="mgtv"?"imgo":g==="bilibili"?"bilibili1":g);let m=d.vod_play_url.split("$$$"),p=f.map((g,A)=>O.vodAllowedPlatforms.includes(g)?A:-1).filter(g=>g!==-1),h=[],y=0;for(let g of p){let A=f[g],b=m[g].split("#");for(let x of b){let S=x.split("$");y++,h.push({name:y.toString(),url:S[1],title:`\u3010${A}\u3011 ${S[0]}`})}}if(h.length>0){let g={animeId:Number(d.vod_id),bangumiId:String(d.vod_id),animeTitle:`${d.vod_name}(${d.vod_year})\u3010${d.type_name}\u3011from ${s}`,type:d.type_name,typeDescription:d.type_name,imageUrl:d.vod_pic,startDate:Br(d.vod_year),episodeCount:h.length,rating:0,isFavorited:!0,source:"vod"};o.push(g),Dt({...g,links:h},i),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(f){E("error",`[VOD] Error processing anime: ${f.message}`)}}));return this.sortAndPushAnimesByYear(o,n),l}async getEpisodeDanmu(e){}formatComments(e){}};Et();Et();fr();kt();async function Aot(t){let e="https://m.douban.com/rexxar/api/v2",r={Referer:"https://m.douban.com/movie/","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"};O.doubanCookie&&(r.Cookie=O.doubanCookie);try{let n=await Ae(`${e}${t}`,{method:"GET",headers:r});return n.status!=200?null:n}catch(n){return E("error","[Utils] [Douban] GET API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function xot(t,e={}){let r="https://api.douban.com/v2";try{let n=await Gr(`${r}${t}`,JSON.stringify({...e,apikey:"0ac44ae016490db2204ce0a042db2916"}),{method:"GET",headers:{Referer:"https://api.douban.com","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return n.status!=200?null:n}catch(n){return E("error","[Utils] [Douban] POST API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function bot(t,e=20){let r=`/search?q=${t}&start=0&count=${e}&type=movie`;return await Aot(r)}async function _ot(t,e=20){return await xot("/movie/search",{q:t,start:0,count:e})}async function Eot(t){let e=`/movie/${t}?for_mobile=1`;return await Aot(e)}async function vot(t){let e=`/movie/imdb/${t}`;return await xot(e)}Et();fr();async function Sot(t){let e="https://api.imdbapi.dev";try{let r=await Ae(`${e}${t}`,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return r.status!=200?null:r}catch(r){return E("error","[Utils] [IMDB] API error:",{message:r.message,name:r.name,stack:r.stack}),null}}async function Iot(t){let e=`/titles/${t}/seasons`;return await Sot(e)}async function Cot(t,e){let r=`/titles/${t}/episodes?season=${e}`;return await Sot(r)}var aw=class extends wt{constructor(e){super("BaseSource"),this.doubanSource=e}async _getDoubanInfo(e,r,n){if(!e)return;let s=await vot(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 Pat(e,r)).data?.imdb_id;if(!i)return[];if(e==="movie")await this._getDoubanInfo(i,e,n);else{let a=await Iot(i);E("info","[TMDB] imdb seasons:",a.data.seasons);let o=(a?.data?.seasons??[]).map(async c=>{let u=i;E("info","[TMDB] imdb season:",c.season);try{Number(c.season)!==1&&(u=(await Cot(i,c.season)).data?.episodes.find(d=>d.episodeNumber===1)?.id??""),await this._getDoubanInfo(u,e,n)}catch(l){E("error",`[TMDB] \u5904\u7406\u7B2C ${c.season} \u5B63\u5931\u8D25\uFF0C\u7EE7\u7EED\u6267\u884C\u5176\u4ED6\u5B63:`,l)}});await Promise.all(o)}return n}catch(n){return E("error","[TMDB] getTmdbIds error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async search(e){try{let n=(await M6(e)).data,s=[],i=[];n?.results?.length>0&&(i=n.results.filter(c=>(c.name||c.title)===e)),E("info",`[TMDB] tmdb items.length: ${i.length}`);let a=i.map(async c=>{try{return await this.getDoubanIdByTmdbId(c.media_type,c.id)}catch(u){return E("error",`[TMDB] \u83B7\u53D6 TMDB ID ${c.id} \u7684\u8C46\u74E3 ID \u5931\u8D25\uFF0C\u7EE7\u7EED\u5904\u7406\u5176\u4ED6\u6761\u76EE:`,u),[]}}),o=await Promise.all(a);return s=[...s,...o.flat()],s}catch(r){return E("error","[TMDB] getTmdbAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){return this.doubanSource.handleAnimes(e,r,n,s,i)}async getEpisodeDanmu(e){}formatComments(e){}};Et();sn();var ow=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 bot(e))?.data;if(!n||!n?.subjects?.items?.length&&!n?.smart_box?.length){E("info","[Douban] searchDoubanTitles failed or empty, trying searchDoubanTitlesByPublic");let a=(await _ot(e))?.data;a?.subjects?.length>0&&(n={subjects:{items:a.subjects.map(o=>this.convertToOriginalFormat(o))}})}let s=[];return n?.subjects?.items?.length>0&&(s=[...s,...n.subjects.items]),n?.smart_box?.length>0&&(s=[...s,...n.smart_box]),E("info",`[Douban] douban animes.length: ${s.length}`),s}catch(r){return E("error","[Douban] getDoubanAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}convertToOriginalFormat(e){let n={movie:"\u7535\u5F71",tv:"\u7535\u89C6\u5267"}[e.subtype]||e.subtype,s=e.images?.large||e.images?.medium||e.images?.small||"",i="";if(s){let u=s.match(/\/(p\d+)\.jpg/);u&&u[1]&&(i=`https://qnmob3.doubanio.com/view/photo/large/public/${u[1]}.jpg?imageView2/0/q/80/w/9999/h/120/format/jpg`)}let a=e.directors?.map(u=>u.name).join(" ")||"",o=e.casts?.slice(0,3).map(u=>u.name).join(" ")||"",c=`${e.year} / ${e.genres?.join(" / ")||""} / ${a}${o?" / "+o:""}`;return{layout:"subject",type_name:n,target_id:String(e.id),target:{rating:{count:e.collect_count||0,max:e.rating?.max||10,star_count:e.rating?.stars?parseInt(e.rating.stars)/10:0,value:e.rating?.average||0},controversy_reason:"",title:e.title,abstract:"",has_linewatch:!1,uri:`douban://douban.com/${e.subtype==="movie"?"movie":"tv"}/${e.id}`,cover_url:i,year:String(e.year||""),card_subtitle:c,id:String(e.id),null_rating_reason:""},target_type:e.subtype==="movie"?"movie":"tv"}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Douban] sourceAnimes is not a valid array"),[];let o=e.filter(l=>{let d=l?.target?.title||"";return Ct(d,r,i)}),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=d?.target?.title||"",m=Tt(f).season;return m===c||c===1&&m===null});l.length>0&&(o=l,E("info",`[Douban] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.allSettled(o.map(async l=>{try{if(l?.layout!=="subject")return;let d=l.target_id,f=l?.type_name;if(f!=="\u7535\u5F71"&&f!=="\u7535\u89C6\u5267")return;E("info","[Douban] doubanId: ",d,l?.target?.title,f);let m=await Eot(d),p=[];for(let h of m.data?.vendors??[]){if(!h)continue;E("info","[Douban] vendor uri: ",h.uri),m.data?.genres.includes("\u771F\u4EBA\u79C0")?f="\u7EFC\u827A":m.data?.genres.includes("\u7EAA\u5F55\u7247")?f="\u7EAA\u5F55\u7247":f==="\u7535\u89C6\u5267"&&m.data?.genres.includes("\u52A8\u753B")&&m.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u6F2B":f==="\u7535\u89C6\u5267"&&m.data?.genres.includes("\u52A8\u753B")&&m.data?.countries.includes("\u65E5\u672C")?f="\u65E5\u756A":f==="\u7535\u89C6\u5267"&&m.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u6F2B":f==="\u7535\u5F71"&&m.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u753B\u7535\u5F71":f==="\u7535\u5F71"&&m.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"&&m.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u4EA7\u5267":f==="\u7535\u89C6\u5267"&&m.data?.countries.some(g=>["\u65E5\u672C","\u97E9\u56FD"].includes(g))?f="\u65E5\u97E9\u5267":f==="\u7535\u89C6\u5267"&&m.data?.countries.some(g=>["\u7F8E\u56FD","\u82F1\u56FD","\u52A0\u62FF\u5927","\u6CD5\u56FD","\u5FB7\u56FD","\u610F\u5927\u5229","\u897F\u73ED\u7259","\u6FB3\u5927\u5229\u4E9A"].includes(g))&&(f="\u6B27\u7F8E\u5267");let y=[{title:m.data?.title,year:m.data?.year,type:f,imageUrl:l?.target?.cover_url}];switch(h.id){case"qq":{let g=new URL(h.uri).searchParams.get("cid");g&&(y[0].provider="tencent",y[0].mediaId=g,await this.tencentSource.handleAnimes(y,m.data?.title,a,s,i));break}case"iqiyi":{let g=new URL(h.uri).searchParams.get("tvid");g&&(y[0].provider="iqiyi",y[0].mediaId=l?.type_name==="\u7535\u5F71"?`movie_${g}`:g,await this.iqiyiSource.handleAnimes(y,m.data?.title,a,s,i));break}case"youku":{let g=new URL(h.uri).searchParams.get("showid");g&&(y[0].provider="youku",y[0].mediaId=g,await this.youkuSource.handleAnimes(y,m.data?.title,a,s,i));break}case"bilibili":{let g=new URL(h.uri).pathname.split("/").pop();g&&(y[0].provider="bilibili",y[0].mediaId=`ss${g}`,await this.bilibiliSource.handleAnimes(y,m.data?.title,a,s,i));break}case"miguvideo":{let g=null,b=decodeURIComponent(h.uri).match(/"contentID":"([^"]+)"/);b&&b[1]&&(g=b[1]),g&&(y[0].provider="migu",y[0].mediaId=`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${g}/1`,await this.miguSource.handleAnimes(y,m.data?.title,a,s,i));break}}}return p}catch(d){return E("error",`[Douban] Error processing anime: ${d.message}`),[]}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};kt();Et();fr();Ns();Un();sn();xs();var cp=null,cw=0,uw=0,na={search:"WIN",detail:"TV",danmu:"TV"},lw=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;i<r;i++)s+=n.charAt(Math.floor(Math.random()*n.length));return s}generateMacAliId(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){let r=Math.random()*16|0;return(e==="x"?r:r&3|8).toString(16).toUpperCase()})}generateWinAliId(){return Array.from({length:32},()=>Math.floor(Math.random()*16).toString(16)).join("").toUpperCase()}generateDeviceId(){return Math.random().toString(36).slice(2).toUpperCase()}rotateAliId(){let e=cp;cp=this.generateRandomAliId(),cw=0,uw=Math.floor(Math.random()*31)+30,e?E("info",`[Renren] AliID \u8F6E\u6362\u5B8C\u6210: ${e} -> ${cp}`):E("info",`[Renren] AliID \u521D\u59CB\u5316\u5B8C\u6210: ${cp}`),E("info",`[Renren] AliID \u4E0B\u6B21\u8F6E\u6362\u5C06\u5728 ${uw} \u6B21\u64CD\u4F5C\u540E\u89E6\u53D1`)}checkAndIncrementUsage(){cp||this.rotateAliId(),cw>=uw&&(E("info",`[Renren] AliID \u89E6\u53D1\u9608\u503C (${cw}/${uw})\uFF0C\u6B63\u5728\u8F6E\u6362 ID...`),this.rotateAliId()),cw++,E("info",`[Renren] AliID \u8BA1\u6570\u589E\u52A0: ${cw}/${uw} (\u5F53\u524DID: ...${cp.slice(-6)})`)}getAliId(){return cp||this.rotateAliId(),this.isBatchMode||this.checkAndIncrementUsage(),cp}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 XUe(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=GUe(r),c=DC(n),u=Date.now(),d=this.generateSignature(e,s,a.client_type,a.client_version,u,o,c,"ES513W0B1CsdUrR13Qk5EgDAKPeeKZY");return{clientVersion:a.client_version,deviceId:s,clientType:a.client_type,t:String(u),aliId:s,umid:s,token:i||"",cv:a.client_version,ct:a.client_type,uet:"9","x-ca-sign":d,Accept:"application/json","User-Agent":a.user_agent,Origin:a.origin,Referer:a.referer}}async fetchStandardDanmu(e,r,n){try{let s=await Ae(e,{headers:r,timeout:5e3,validStatusCodes:[404]});if(s.status===404)return s.data&&s.data.error==="Document not found"?[]:(E("info",`[Renren] ${n} \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548`),null);if(!s.data)return null;let i=s.data;return Array.isArray(i)?i:i&&i.data&&Array.isArray(i.data)?i.data:[]}catch(s){return E("info",`[Renren] ${n} \u7AEF\u5F39\u5E55\u62C9\u53D6\u5F02\u5E38: ${s.message}`),null}}async renrenHttpGet(e,{params:r={},headers:n={},validStatusCodes:s=[]}={}){let i=Jb(e,r);return await Ae(i,{headers:n,timeout:5e3,validStatusCodes:s})}async renrenRequest(e,r,n={}){let s=this.generateDeviceId(),i=this.buildSignedHeaders({method:e,url:r,params:n,deviceId:s});return await Ae(r+"?"+DC(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,m])=>`${f}=${encodeURIComponent(m==null?"":String(m))}`).join("&"),c=this.generateTvHeaders(n,a),u=`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,l=await Ae(u,{headers:c,timeout:5e3});return!l.data||l.data.code!=="0000"?(E("info",`[Renren] TV\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${l?.data?.code}, msg=${l?.data?.msg}`),null):(l.data.data||[]).map(f=>{let m=[];if(f.highlights&&(f.highlights.alias&&(m=f.highlights.alias.split(",").map(p=>p.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let p=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();p&&!m.includes(p)&&m.push(p)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:m,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:null,currentEpisodeIndex:null}})}catch(n){return E("info","[Renren] searchAppContent error:",n.message),null}}async performMacSearch(e,r=20){try{let n="/search/v5/season",s={keywords:e,order:"match",search_after:"",size:r},i=this.buildMacHeaders(),a=DC(s),o=`https://${this.API_CONFIG.MAC_HOST}${n}?${a}`,c=await Ae(o,{headers:i,timeout:5e3});return!c.data||c.data.code!=="0000"?(E("info",`[Renren] Mac\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${c?.data?.code}`),null):(c.data.data||[]).map(l=>{let d=[];if(l.highlights&&(l.highlights.alias&&(d=l.highlights.alias.split(",").map(f=>f.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),l.highlights.original_name)){let f=l.highlights.original_name.replace(/<[^>]+>/g,"").trim();f&&!d.includes(f)&&d.push(f)}return{provider:"renren",mediaId:String(l.id),title:String(l.title||l.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:d,type:l.classify||l.cat||"Renren",season:null,year:l.year||null,imageUrl:l.cover||l.cover3||"",episodeCount:null,currentEpisodeIndex:null}})}catch(n){return E("info","[Renren] performMacSearch error:",n.message),null}}async performWinSearch(e,r=30){try{let n=`https://${this.API_CONFIG.WIN_HOST}/search/comprehensive/precise-mixed`,i=DC({keywords:e,searchAfter:"",size:r}),a=this.buildWinHeaders(),o=await Ae(`${n}?${i}`,{headers:a,timeout:5e3});if(!o.data||o.data.code!=="0000")return E("info",`[Renren] Win\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${o?.data?.code}`),null;let c=o.data.data||{},u=[],l=c.seasonList||[],d=c.fuzzySeasonList||[],f=c.seriesList||[],m=p=>{let h=[];if(p.highlights&&(p.highlights.alias&&(h=p.highlights.alias.split(",").map(y=>y.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),p.highlights.original_name)){let y=p.highlights.original_name.replace(/<[^>]+>/g,"").trim();y&&!h.includes(y)&&h.push(y)}return{provider:"renren",mediaId:String(p.id),title:String(p.title||p.alias||p.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:h,type:p.classify||p.cat||"Renren",season:null,year:p.year||null,imageUrl:p.cover||p.coverUrl,episodeCount:null,currentEpisodeIndex:null}};return l.forEach(p=>u.push(m(p))),d.forEach(p=>u.push(m(p))),f.forEach(p=>{p.seasonList&&Array.isArray(p.seasonList)&&p.seasonList.forEach(h=>{u.push(m(h))})}),u}catch(n){return E("info","[Renren] performWinSearch error:",n.message),null}}async performNetworkSearch(e,{lockRef:r=null,lastRequestTimeRef:n={value:0},minInterval:s=500}={}){try{let i=`https://${this.API_CONFIG.WEB_HOST}/m-station/search/drama`,a={keywords:e,size:20,order:"match",search_after:"",isExecuteVipActivity:!0};if(r){for(;r.value;)await new Promise(f=>setTimeout(f,50));r.value=!0}let c=Date.now()-n.value;c<s&&await new Promise(f=>setTimeout(f,s-c));let u=await this.renrenRequest("GET",i,a);return n.value=Date.now(),r&&(r.value=!1),u.data?(MC(u.data)?.data?.searchDramaList||[]).map(f=>{let m=[];if(f.highlights&&(f.highlights.alias&&(m=f.highlights.alias.split(",").map(p=>p.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let p=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();p&&!m.includes(p)&&m.push(p)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:m,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:f.episodeTotal,currentEpisodeIndex:null}}):(E("info","[Renren] \u7F51\u9875\u7248\u641C\u7D22\u65E0\u54CD\u5E94\u6570\u636E"),null)}catch(i){return E("info","[Renren] performNetworkSearch error:",i.message),null}}async search(e){E("info",`[Renren] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=[],n=!1,s=["WIN","TV","MAC","WEB"],i=s.indexOf(na.search);i===-1&&(i=0);for(let a=i;a<s.length;a++){let o=s[a];E("info",`[Renren] \u5C1D\u8BD5\u4F7F\u7528 ${o} \u7AEF\u63A5\u53E3\u641C\u7D22`);try{let c=null;if(o==="TV")c=await this.searchAppContent(e);else if(o==="MAC")c=await this.performMacSearch(e);else if(o==="WIN")c=await this.performWinSearch(e);else if(o==="WEB"){let u={value:!1},l={value:0};c=await this.performNetworkSearch(e,{lockRef:u,lastRequestTimeRef:l,minInterval:400})}if(c!==null&&Array.isArray(c)){n=!0,r=c,na.search!==o&&(E("info",`[Renren] \u641C\u7D22\u57DF\u63A5\u53E3\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${na.search} -> ${o}`),na.search=o);break}else E("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38\u6216\u8BF7\u6C42\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){E("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return n||(E("info","[Renren] \u641C\u7D22\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5F02\u5E38\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 WIN \u7AEF"),na.search="WIN"),r}async getAppDramaDetail(e,r=""){try{let n=Date.now(),s="/qwtv/drama/details",i={isAgeLimit:"false",seriesId:String(e),episodeId:String(r),clarity:"HD",caption:"0",hevcOpen:"1"},a=WC(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,m])=>`${f}=${encodeURIComponent(m)}`).join("&"),c=this.generateTvHeaders(n,a),u=await Ae(`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,{headers:c,timeout:5e3});if(!u||!u.data)return E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A: ID=${e}`),null;let l=u.data,d=l.msg||l.message||"";return d.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(E("info",`[Renren] TV\u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):l.code!=="0000"?(E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${l.code}, msg=${d} (ID=${e})`),null):!l.data||!l.data.episodeList||l.data.episodeList.length===0?l.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),l.data.episodeList||(l.data.episodeList=[]),l.data):(E("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (ID=${e})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(E("info",`[Renren] TV\u7AEF\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${l.data.episodeList.length}`),l.data)}catch(n){return E("info","[Renren] getAppDramaDetail error:",n.message),null}}async getGatewayDramaDetail(e,r,n=""){try{let s=Date.now(),i="/qwtv/drama/details",a={isAgeLimit:"false",seriesId:String(r),episodeId:String(n),clarity:"HD",caption:"0",hevcOpen:"1"},o=WC(i,s,a,this.API_CONFIG.TV_SECRET_KEY),c=Object.entries(a).map(([p,h])=>`${p}=${encodeURIComponent(h)}`).join("&"),u=this.generateTvHeaders(s,o),l=`https://${e}${i}?${c}`,d=await Ae(l,{headers:u,timeout:5e3});if(!d||!d.data)return E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A (${e}): ID=${r}`),null;let f=d.data,m=f.msg||f.message||"";return m.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(E("info",`[Renren] \u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):f.code!=="0000"?(E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${f.code}, msg=${m} (${e}) (ID=${r})`),null):!f.data||!f.data.episodeList||f.data.episodeList.length===0?f.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),f.data.episodeList||(f.data.episodeList=[]),f.data):(E("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (${e}) (ID=${r})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(E("info",`[Renren] \u8DE8\u534F\u8BAE\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F (${e}): ID=${r}, \u5305\u542B\u96C6\u6570=${f.data.episodeList.length}`),f.data)}catch(s){return E("info",`[Renren] getGatewayDramaDetail error (${e}):`,s.message),null}}async getWebDramaDetailFallback(e){let r=`https://${this.API_CONFIG.WEB_HOST}/m-station/drama/page`,n={hsdrOpen:0,isAgeLimit:0,dramaId:String(e),hevcOpen:1};try{let s=await this.renrenRequest("GET",r,n);if(!s.data)return null;let i=MC(s.data);return i&&i.data&&i.data.episodeList&&i.data.episodeList.length>0?(E("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${i.data.episodeList.length}`),i.data):null}catch(s){return E("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u8BF7\u6C42\u5931\u8D25: ${s.message}`),null}}async getDetail(e,r=""){let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(na.detail);i===-1&&(i=0);for(let a=i;a<s.length;a++){let o=s[a];E("info",`[Renren] \u5C1D\u8BD5\u4F7F\u7528 ${o} \u7AEF\u63A5\u53E3\u83B7\u53D6\u8BE6\u60C5\u5206\u96C6 (ID=${e})`);try{if(o==="TV"?n=await this.getAppDramaDetail(String(e),String(r)):o==="MAC"?n=await this.getGatewayDramaDetail(this.API_CONFIG.MAC_HOST,String(e),String(r)):o==="WIN"?n=await this.getGatewayDramaDetail(this.API_CONFIG.WIN_HOST,String(e),String(r)):o==="WEB"&&(n=await this.getWebDramaDetailFallback(String(e))),n)return na.detail!==o&&(E("info",`[Renren] \u8BE6\u60C5\u57DF\u63A5\u53E3\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${na.detail} -> ${o}`),na.detail=o),n;E("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5931\u8D25\u6216\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){E("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return E("info","[Renren] \u8BE6\u60C5\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),na.detail="TV",null}async getEpisodes(e){let r=await this.getDetail(e);if(!r)return E("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: \u8BE6\u60C5\u5BF9\u8C61\u4E3A\u7A7A ID=${e}`),[];if(!r.episodeList||!Array.isArray(r.episodeList))return E("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: episodeList \u5B57\u6BB5\u7F3A\u5931\u6216\u975E\u6570\u7EC4 ID=${e}`),[];let n=[],s=String(e);r.episodeList.forEach((a,o)=>{let c=String(a.sid||"").trim();if(!c)return;let u=a.title?String(a.title):`\u7B2C${String(a.episodeNo||o+1).padStart(2,"0")}\u96C6`,l=`${s}-${c}`;n.push({sid:l,order:a.episodeNo||o+1,title:u})});let i=n.map(a=>({provider:"renren",episodeId:a.sid,title:a.title,episodeIndex:a.order,url:null}));if(r.dramaInfo&&(r.dramaInfo.enName&&(i.enName=r.dramaInfo.enName),r.dramaInfo.year&&(i.year=r.dramaInfo.year),r.dramaInfo.dramaType)){let a=r.dramaInfo.dramaType,o=r.dramaInfo.plotType||"";a==="TV"?a="\u7535\u89C6\u5267":a==="MOVIE"?o.includes("\u52A8\u753B")?a="\u5267\u573A\u7248":a="\u7535\u5F71":a==="COMIC"?a="\u52A8\u753B":a==="VARIETY"?a="\u7EFC\u827A":a==="DOCUMENTARY"&&(a="\u7EAA\u5F55\u7247"),i.type=a}return i}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("info","[Renren] sourceAnimes is not a valid array"),[];let o=e.filter(d=>Ct(d.title,r,i)?!0:d.aliases&&Array.isArray(d.aliases)?d.aliases.some(f=>Ct(f,r,i)):!1),c=i!==null?i:Ut(r);if(c!==null){let d=o.filter(f=>{let m=Tt(f.title).season;return m===c||c===1&&m===null});d.length>0&&(o=d,E("info",`[Renren] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l={TV:"TV",MAC:"Mac",WIN:"Win",WEB:"\u7F51\u9875"}[na.search]||"\u672A\u77E5";E("info",`[Renren] ${l}\u7AEF\u641C\u7D22\u63D0\u53D6\u7ED3\u679C\u6570\u91CF: ${e.length} \u6709\u6548\u7ED3\u679C\u6570\u91CF\uFF1A${o.length}`),this.isBatchMode=!0;try{await Promise.all(o.map(async d=>{try{let f=await this.getEpisodes(d.mediaId),m=[];for(let p of f)m.push({name:p.episodeIndex.toString(),url:p.episodeId,title:`\u3010${p.provider}\u3011 ${p.title}`});if(m.length>0){let p=d.aliases||[];f.enName&&!p.includes(f.enName)&&p.push(f.enName);let h=f.year||d.year||"",y=f.type||(d.type&&d.type!=="Renren"?d.type:"Renren"),g={animeId:Number(d.mediaId),bangumiId:String(d.mediaId),animeTitle:`${d.title}(${h})\u3010${y}\u3011from renren`,aliases:p,type:y,typeDescription:y,imageUrl:d.imageUrl,startDate:Br(h),episodeCount:m.length,rating:0,isFavorited:!0,source:"renren"};a.push(g),Dt({...g,links:m},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(f){E("info",`[Renren] Error processing anime: ${f.message}`)}}))}finally{this.isBatchMode=!1,this.checkAndIncrementUsage()}return this.sortAndPushAnimesByYear(a,n),a}async getAppDanmu(e){try{let r=Date.now(),n=e;String(e).includes("-")&&(n=String(e).split("-")[1]);let s=`/v1/produce/danmu/EPISODE/${n}`,a=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 Ae(c,{headers:o,timeout:5e3,validStatusCodes:[404]});if(u.status===404)return u.data&&u.data.error==="Document not found"?[]:(E("info","[Renren] TV \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!u.data)return null;let l=MC(u.data);return Array.isArray(l)?l:l&&l.data&&Array.isArray(l.data)?l.data:[]}catch(r){return E("info","[Renren] getAppDanmu error:",r.message),null}}async getMacDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,n=`https://${this.API_CONFIG.MAC_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.MAC_USER_AGENT,Accept:"*/*"};return this.fetchStandardDanmu(n,s,"MAC")}async getWinDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,n=`https://${this.API_CONFIG.WIN_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.WIN_USER_AGENT};return this.fetchStandardDanmu(n,s,"WIN")}async getWebDanmuFallback(e){let r=e;String(e).includes("-")&&(r=String(e).split("-")[1]);let n={user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},s=`https://${this.API_CONFIG.WEB_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,i={Accept:"application/json","User-Agent":n.user_agent,Origin:n.origin,Referer:n.referer};try{let a=await this.renrenHttpGet(s,{headers:i,validStatusCodes:[404]});if(a.status===404)return a.data&&a.data.error==="Document not found"?[]:(E("info","[Renren] WEB \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!a.data)return null;let o=MC(a.data),c=[];return Array.isArray(o)?c=o:o?.data&&Array.isArray(o.data)&&(c=o.data),c}catch(a){return E("info",`[Renren] \u7F51\u9875\u7248\u5F39\u5E55\u964D\u7EA7\u5931\u8D25: ${a.message}`),null}}async getEpisodeDanmu(e){let r=0;if(String(e).includes("-")){let[o,c]=String(e).split("-"),u=await this.getDetail(o,c);if(u&&u.watchInfo){let l=u.watchInfo.m3u8||u.watchInfo.tria4kPlayInfo||{},d=parseInt(l.startingLength)||0,f=parseInt(l.openingLength)||0;r=d>0?d:f>0?f:0}}let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(na.danmu);i===-1&&(i=0);for(let o=i;o<s.length;o++){let c=s[o];E("info",`[Renren] \u5C1D\u8BD5\u4F7F\u7528 ${c} \u7AEF\u63A5\u53E3\u83B7\u53D6\u5F39\u5E55`);try{if(c==="TV"?n=await this.getAppDanmu(e):c==="MAC"?n=await this.getMacDanmu(e):c==="WIN"?n=await this.getWinDanmu(e):c==="WEB"&&(n=await this.getWebDanmuFallback(e)),n!==null&&Array.isArray(n))return na.danmu!==c&&(E("info",`[Renren] \u5F39\u5E55\u57DF\u63A5\u53E3\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${na.danmu} -> ${c}`),na.danmu=c),n.length>0?E("info",`[Renren] \u6210\u529F\u83B7\u53D6 ${n.length} \u6761\u5F39\u5E55 (${c}\u7AEF)`):E("info",`[Renren] \u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55 (${c}\u7AEF)`),n.adDurationMs=r,n.episodeId=e,n;E("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(u){E("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${u.message}`)}}E("info","[Renren] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),na.danmu="TV";let a=[];return a.adDurationMs=r,a.episodeId=e,a}async getEpisodeDanmuSegments(e){return new 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 m=d(l);return isNaN(m)?f:m},s=n(r[0],parseFloat,0),i=n(r[1],l=>parseInt(l,10),1),a=n(r[2],l=>parseInt(l,10),25),o=n(r[3],l=>parseInt(l,10),16777215),c=r[6]||"",u=r[7]||`${s}:${c}`;return{timestamp:s,mode:i,size:a,color:o,userId:c,contentId:u}}formatComments(e){let r=e.adDurationMs||0,n=e.episodeId||"\u672A\u77E5",s=r/1e3,i=0,a=e.map(o=>{let c=String(o.d||"");if(!c&&o.content&&(c=String(o.content)),!c)return null;if(o.p){let u=this.parseRRSPPFields(o.p),l=u.timestamp-s;return l<0?(i++,null):{cid:Number(u.contentId)||0,p:`${l.toFixed(2)},${u.mode},${u.color},[renren]`,m:c,t:l}}return null}).filter(Boolean);return r>0&&E("info",`[Renren] \u8BC6\u522B\u5230\u524D\u7F6E\u5E7F\u544A(${r}ms)\uFF0C\u5DF2\u81EA\u52A8\u504F\u79FB\u65F6\u95F4\u8F74\u3002\u6210\u529F\u8F6C\u6362 ${a.length} \u6761\uFF0C\u5254\u9664\u65E0\u6548\u5F39\u5E55 ${i} \u6761 (ID=${n})`),a}};kt();Et();fr();Ns();Un();sn();xs();var Ibr={1:"\u97E9\u5267",2:"\u7EFC\u827A",3:"\u7535\u5F71",4:"\u65E5\u5267",5:"\u7F8E\u5267",6:"\u6CF0\u5267",7:"\u56FD\u4EA7\u5267"},ry=1e8,Tot=6e4,_s=Object.freeze({HXQ:"hxq",TV:"tv",MERGED:"merged"}),dw=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._mobileWarmedUid=null}getDanmuHeaders(){return{"Content-Type":"application/json","User-Agent":this.danmuUserAgent}}getAppHeaders(){return{vc:"a_8280",vn:"6.8.2",ch:"xiaomi",app:"hj","User-Agent":this.appUserAgent,"Accept-Encoding":"gzip"}}getCategory(e){return Ibr[e]||"\u5176\u4ED6"}async buildTvHeaders(){return this._tvMakeHeaders||(this._tvMakeHeaders=await mot(Date.now())),this._tvMakeHeaders(Date.now())}async buildMobileHeaders(){return this._mobileMakeHeaders||(this._mobileMakeHeaders=await pot(Date.now())),this._mobileMakeHeaders(Date.now())}async tvGet(e,r={}){let n=await this.buildTvHeaders(),s=await Ae(`${this.tvHost}${e}`,{headers:n.headers,timeout:1e4,retries:1,...r});return joe(s?.data,n.uid)}logError(e,r){E("error",`[Hanjutv] ${e}:`,{message:r.message,name:r.name,stack:r.stack})}attachDanmuSourceLabel(e=[],r=""){let n=j6(r);return Array.isArray(e)?e.map(s=>({...s,_sourceLabel:n})):[]}async tryGet(e,r,n){try{return await e()}catch(s){return n&&E("warn",`${n}: ${s.message}`),r}}normalizeSearchItems(e=[]){return Array.isArray(e)?e.map(r=>{if(!r||typeof r!="object")return null;let n=r.sid||r.seriesId||r.id||r.series_id,s=r.name||r.title||r.seriesName||r.showName;if(!n||!s)return null;let i=typeof r.image=="object"&&r.image!==null?r.image:{},a=i.thumb||i.poster||i.url||r.thumb||r.poster||"";return{...r,sid:String(n),name:String(s),image:{...i,thumb:a}}}).filter(Boolean):[]}normalizeEpisodes(e=[]){return Array.isArray(e)?e.map((r,n)=>{if(!r||typeof r!="object")return null;let s=r.pid||r.eid||r.id||r.programId||r.episodeId;if(!s)return null;let i=r.serialNo??r.serial_no??r.sort??r.sortNo??r.num??r.episodeNo??n+1,a=Number(i),o=r.pid||r.programId||r.episodeId||r.id||"",c=r.eid||r.id||r.episodeId||"";return{...r,episodeId:String(s),pid:o?String(o):"",eid:c?String(c):"",serialNo:Number.isFinite(a)&&a>0?a:n+1,title:r.title||r.name||r.programName||r.episodeTitle||""}}).filter(Boolean).sort((r,n)=>r.serialNo-n.serialNo):[]}normalizeHxqEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.pid).map(r=>({...r,pid:String(r.pid)}))}normalizeTvEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.eid||r.episodeId).map(r=>({...r,eid:String(r.eid||r.episodeId)}))}extractSearchItems(e){let r=e?.seriesData?.seriesList||e?.seriesList||e?.seriesData?.series||[];return this.normalizeSearchItems(r)}dedupeBySid(e=[]){let r=new Map;for(let n of e){if(!n?.sid)continue;let s=String(n.sid);r.has(s)||r.set(s,n)}return Array.from(r.values())}normalizeSearchPairTitle(e=""){return String(e||"").normalize("NFKC").trim()}getSearchPairYear(e){let r=e?.publishTime??e?.releaseTime??e?.year??null,n=String(r??"").trim(),s=c=>Number.isInteger(c)&&c>=1900&&c<=2100,i=c=>{let l=new Date(c).getUTCFullYear();return s(l)?l:null};if(/^(?:19|20)\d{2}$/.test(n))return Number(n);let a=n.match(/^((?:19|20)\d{2})\d{4}$/);if(a)return Number(a[1]);if(r!==null&&r!==""){let c=Number(r);if(Number.isFinite(c)){if(c!==0){let u=Math.abs(c),l=null;u>=1e10?l=c:u>=1e8&&(l=c*1e3);let d=l===null?null:i(l);if(d!==null)return d}}else if(n){let u=i(n);if(u!==null)return u}}let o=String(e?.searchMemo||"").match(/(?:19|20)\d{2}/);return o?Number(o[0]):null}getSearchPairEpisodeCount(e){let r=Number(e?.lastSerialNo??e?.totalEpisode??e?.episodeCount);return Number.isFinite(r)&&r>0?r:null}getSearchPairMetadata(e){let r=n=>n==null?null:String(n).trim()||null;return{playMode:r(e?.playMode),year:r(this.getSearchPairYear(e)),episodeCount:r(this.getSearchPairEpisodeCount(e)),category:r(e?.category)}}isMergeableSearchPair(e,r){let n=this.normalizeSearchPairTitle(e?.name),s=this.normalizeSearchPairTitle(r?.name);if(!n||!s||n!==s)return!1;let i=this.getSearchPairMetadata(e),a=this.getSearchPairMetadata(r);for(let o of["playMode","year","category"])if(i[o]!==null&&a[o]!==null&&i[o]!==a[o])return!1;return!0}getSearchPairMatchScore(e,r){if(!this.isMergeableSearchPair(e,r))return null;let n=this.getSearchPairMetadata(e),s=this.getSearchPairMetadata(r),i={year:8,playMode:4,category:2,episodeCount:1},a=0;for(let[o,c]of Object.entries(i))n[o]!==null&&s[o]!==null&&n[o]===s[o]&&(a+=c);return a}selectUniqueBestSearchCandidate(e,r=[]){let n=r.map(a=>({candidate:a,score:this.getSearchPairMatchScore(e,a)})).filter(a=>a.score!==null);if(n.length===0)return null;let s=Math.max(...n.map(a=>a.score)),i=n.filter(a=>a.score===s);return i.length===1?i[0].candidate:null}pairSearchCandidateGroup(e=[],r=[]){let n=new Map(e.map(a=>[String(a.sid),a])),s=new Map(r.map(a=>[String(a.sid),a])),i=new Map;for(;n.size>0&&s.size>0;){let a=Array.from(n.values()),o=Array.from(s.values()),c=new Map,u=new Map;for(let d of a){let f=this.selectUniqueBestSearchCandidate(d,o);f&&c.set(String(d.sid),f)}for(let d of o){let f=this.selectUniqueBestSearchCandidate(d,a);f&&u.set(String(d.sid),f)}let l=[];for(let[d,f]of c){let m=String(f.sid),p=u.get(m);p&&String(p.sid)===d&&l.push({s5Sid:d,tvSid:m,tvItem:f})}if(l.length===0)break;for(let d of l)i.set(d.s5Sid,d.tvItem),n.delete(d.s5Sid),s.delete(d.tvSid)}return i}pairSearchCandidates(e=[],r=[]){let n=o=>{let c=new Map;for(let u of o){let l=this.normalizeSearchPairTitle(u?.name);l&&(c.has(l)||c.set(l,[]),c.get(l).push(u))}return c},s=n(e),i=n(r),a=new Map;for(let[o,c]of s){let u=i.get(o);if(!u)continue;let l=this.pairSearchCandidateGroup(c,u);for(let[d,f]of l)a.set(d,f)}return a}buildSearchCandidate(e,r,n=""){if(!e?.sid)return null;let s=String(e.sid),i=String(n||"").trim(),a=r===_s.MERGED?zr(`hxq:${s}|tv:${i}`):zr(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 h=[],y=[];for(let g of p)(Ct(g?.name||"",e)?h:y).push(g);return{matched:h,unmatched:y}},o=a(s),c=a(i),u=o.matched.length+c.matched.length>0,l=[],d=this.pairSearchCandidates(o.matched,c.matched),f=new Set(Array.from(d.values(),p=>String(p.sid)));for(let p of o.matched){let h=d.get(String(p.sid));h?l.push(this.buildSearchCandidate(p,_s.MERGED,h.sid)):l.push(this.buildSearchCandidate(p,_s.HXQ))}c.matched.filter(p=>!f.has(String(p.sid))).forEach(p=>{l.push(this.buildSearchCandidate(p,_s.TV))}),u?l.push(...o.unmatched.map(p=>this.buildSearchCandidate(p,_s.HXQ)).filter(Boolean),...c.unmatched.map(p=>this.buildSearchCandidate(p,_s.TV)).filter(Boolean)):l.push(...s.map(p=>this.buildSearchCandidate(p,_s.HXQ)).filter(Boolean),...i.map(p=>this.buildSearchCandidate(p,_s.TV)).filter(Boolean));let m=p=>p.map(h=>h.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===_s.MERGED).length:0,s5MatchedList:m(o.matched),s5UnmatchedList:m(o.unmatched),tvMatchedList:m(c.matched),tvUnmatchedList:m(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 joe(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{return await Ae(`${this.appHost}/api/common/configs`,{headers:e,timeout:8e3,retries:0}),!0}catch{return!1}}async ensureMobileIdentityWarmed(){if(this._mobileWarmedUid)return!0;if(this._mobileWarmupPromise)return this._mobileWarmupPromise;let e=(async()=>{let r=await this.buildMobileHeaders();if(this._mobileWarmedUid===r.uid)return!0;let n=await this.warmupMobileIdentity(r.headers);return n&&(this._mobileWarmedUid=r.uid),n})();this._mobileWarmupPromise=e;try{return await e}finally{this._mobileWarmupPromise===e&&(this._mobileWarmupPromise=null)}}async searchWithS5Api(e){await this.ensureMobileIdentityWarmed();let{uid:r,headers:n}=await this.buildMobileHeaders(),s=encodeURIComponent(e),i=await Ae(`https://hxqapi.hiyun.tv/api/search/s5?k=${s}&srefer=search_input&type=0&page=1`,{headers:n,timeout:1e4,retries:1});return this.extractFromPayload(i?.data,r,"s5")}async searchWithTvApi(e){let r=encodeURIComponent(e),n=await this.buildTvHeaders(),s=await Ae(`https://api.xiawen.tv/api/v1/aggregate/search?key=${r}&scope=101&page=1`,{headers:n.headers,timeout:1e4,retries:1});return this.extractFromPayload(s?.data,n.uid,"tv")}async search(e){try{let r=String(e||"").trim();if(!r)return[];let[n,s]=await Promise.all([this.tryGet(()=>this.searchWithS5Api(r),[],"[Hanjutv] s5 \u641C\u7D22\u5931\u8D25"),this.tryGet(()=>this.searchWithTvApi(r),[],"[Hanjutv] TV \u641C\u7D22\u5931\u8D25")]),{resultList:i,stats:a}=this.mergeSearchCandidates(r,n,s),o=a.s5Matched+a.tvMatched;return i.length>0&&o===0?(E("warn",`[Hanjutv] \u6240\u6709\u5019\u9009\u5747\u672A\u547D\u4E2D\u5173\u952E\u8BCD\uFF0C\u4E22\u5F03\u7591\u4F3C\u63A8\u8350\u6D41\u7ED3\u679C: ${r}`),[]):i.length===0?(E("info","[Hanjutv] hanjutvSearchresp: s5 \u4E0E TV \u63A5\u53E3\u5747\u65E0\u6709\u6548\u7ED3\u679C"),[]):(E("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5MatchedList=${JSON.stringify(a.s5MatchedList)}, s5UnmatchedList=${JSON.stringify(a.s5UnmatchedList)}, tvMatchedList=${JSON.stringify(a.tvMatchedList)}, tvUnmatchedList=${JSON.stringify(a.tvUnmatchedList)}`),E("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5=${a.s5Total}(\u547D\u4E2D${a.s5Matched}), tv=${a.tvTotal}(\u547D\u4E2D${a.tvMatched}), merged=${a.mergedCount}`),E("info",`[Hanjutv] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i.filter(Boolean))}catch(r){return this.logError("getHanjutvAnimes error",r),[]}}async getSeriesDetail(e,r,n,s){try{let i=String(e||"").trim();if(!i)return null;let a=await this.tryGet(()=>r(i),null,s);return a||(E("info",`[Hanjutv] ${n}: series \u4E0D\u5B58\u5728`),null)}catch(i){return this.logError(s,i),null}}async getHxqDetail(e){return this.getSeriesDetail(e,async r=>(await Ae(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data?.series??null,"getHanjutvHxqDetail","getHanjutvHxqDetail error")}async getTvDetail(e){return this.getSeriesDetail(e,async r=>(await this.tvGet(`/api/v1/series/detail/query?sid=${r}`))?.series??null,"getHanjutvTvDetail","getHanjutvTvDetail error")}async getHxqEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=[async()=>{let i=await Ae(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1});return this.normalizeHxqEpisodes(Array.isArray(i?.data?.playItems)?i.data.playItems:[])},async()=>{let a=(await Ae(`${this.appHost}/api/series2/episodes?sid=${r}&refer=${encodeURIComponent(this.defaultRefer)}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes(a?.programs||a?.episodes||a?.qxkPrograms||[])},async()=>{let a=(await Ae(`${this.appHost}/api/series/programs_v2?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes([...Array.isArray(a?.programs)?a.programs:[],...Array.isArray(a?.qxkPrograms)?a.qxkPrograms:[]])}],s=[];for(let i of n){if(s.length>0)break;s=await this.tryGet(i,[])}return s.length===0?(E("info","[Hanjutv] getHanjutvHxqEpisodes: episodes \u4E0D\u5B58\u5728"),[]):s.sort((i,a)=>i.serialNo-a.serialNo)}catch(r){return this.logError("getHanjutvHxqEpisodes error",r),[]}}async getTvEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=await this.tryGet(async()=>{let s=await this.tvGet(`/api/v1/series/detail/query?sid=${r}`);return this.normalizeTvEpisodes(s?.episodes||[])},[],"getHanjutvTvEpisodes error");return n.length===0?(E("info","[Hanjutv] getHanjutvTvEpisodes: episodes \u4E0D\u5B58\u5728"),[]):n.sort((s,i)=>s.serialNo-i.serialNo)}catch(r){return this.logError("getHanjutvTvEpisodes error",r),[]}}resolveAnimeYear(e,...r){let n=[e?.updateTime,e?.publishTime,...r.map(s=>s?.updateTime),...r.map(s=>s?.publishTime)];for(let s of n){if(!s)continue;let a=new Date(s).getFullYear();if(Number.isFinite(a)&&a>1900)return a}return new Date().getFullYear()}buildEpisodeTitle(e,r=""){let n=String(r||"").trim();return n?`\u7B2C${e}\u96C6\uFF1A${n}`:`\u7B2C${e}\u96C6`}buildEpisodeLink(e,r){let n=e?.serialNo??r?.serialNo??1,s=this.buildEpisodeTitle(n,e?.title||r?.title||""),i="";if(e?.pid&&r?.eid){let a=got(e.pid,r.eid);i=a?`hanjutv:${a}`:""}else e?.pid?i=`hxq:${e.pid}`:r?.eid&&(i=`tv:${r.eid}`);return i?{name:s,url:i,title:`\u3010hanjutv\u3011 ${s}`}:null}mergeVariantEpisodes(e=[],r=[]){let n=new Map(e.map(a=>[Number(a.serialNo),a])),s=new Map(r.map(a=>[Number(a.serialNo),a]));return Array.from(new Set([...n.keys(),...s.keys()])).filter(Number.isFinite).sort((a,o)=>a-o).map(a=>this.buildEpisodeLink(n.get(a),s.get(a))).filter(Boolean)}buildAnimeSummary(e,r,n,s){let i=this.getCategory(r?.category??e?.category),a=this.resolveAnimeYear(e,r);return{animeId:s,bangumiId:String(s),animeTitle:`${e.name}(${a})\u3010${i}\u3011from hanjutv`,type:i,typeDescription:i,imageUrl:e?.image?.thumb||"",startDate:Br(a),episodeCount:n.length,rating:Number(r?.rank??0),isFavorited:!0,source:"hanjutv"}}async getHxqBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getHxqDetail(e),this.getHxqEpisodes(e)]);return{detail:r,episodes:n}}async getTvBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getTvDetail(e),this.getTvEpisodes(e)]);return{detail:r,episodes:n}}async buildAnimePayload(e){let r=e?._variant||_s.HXQ,n=String(e?.sid||"").trim(),s=String(e?.tvSid||"").trim(),i=s||(r===_s.TV?n:""),a=Number(e?.animeId),o=r===_s.MERGED&&n&&s?Number.isFinite(a)&&a>0?a:zr(`hxq:${n}|tv:${s}`):null,c=(r===_s.HXQ||r===_s.MERGED)&&n,u=(r===_s.TV||r===_s.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===_s.MERGED&&n&&s){let f=this.mergeVariantEpisodes(l.episodes,d.episodes);if(f.length>0){let m=l.detail?.category?l.detail:d.detail?.category?d.detail:l.detail||d.detail;return{summary:this.buildAnimeSummary(e,m,f,o),links:f}}}if((r===_s.HXQ||r===_s.MERGED)&&n){let f=l.episodes.map(m=>this.buildEpisodeLink(m,null)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,l.detail,f,o??zr(n)),links:f}}if((r===_s.TV||r===_s.MERGED)&&i){let f=d.episodes.map(m=>this.buildEpisodeLink(null,m)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,d.detail,f,o??zr(i)),links:f}}return null}async handleAnimes(e,r,n,s=null,i=null){if(!Array.isArray(e))return E("error","[Hanjutv] sourceAnimes is not a valid array"),[];let a=[],o=e.filter(l=>Ct(l.name,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Hanjutv] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.buildAnimePayload(l);return!d||!d.summary||!Array.isArray(d.links)||d.links.length===0?null:d}catch(d){return E("error",`[Hanjutv] Error processing anime: ${d.message}`),null}}));for(let l of u)if(l)try{a.push(l.summary),Dt({...l.summary,links:l.links},s),O.animes.length>O.MAX_ANIMES&&Lt()}catch(d){E("error",`[Hanjutv] Error processing anime: ${d.message}`)}return 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=Tot,l=0,d=240;for(;c<ry&&l<d;){let f=await Ae(`${i}/api/danmu/playItem/list?pid=${r}&prevId=${o}&fromAxis=${c}&toAxis=${u}&offset=0`,{headers:s,timeout:1e4,retries:1});l++;let m=Array.isArray(f?.data?.danmus)?f.data.danmus:[];m.length>0&&a.push(...m);let p=Number(f?.data?.more??0)===1||f?.data?.more===!0||f?.data?.more==="1",h=Number(f?.data?.nextAxis??ry),y=Number(f?.data?.lastId??o);if(!Number.isFinite(h)||h<=c||h>=ry)break;if(Number.isFinite(y)&&y>o&&(o=y),c=h,!p){if(m.length===0)break;u=c+Tot}}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(;i<ry&&a<o;)try{let c=await this.tvGet(`/api/v1/bulletchat/episode/get?eid=${r}&prevId=${s}&fromAxis=${i}&toAxis=${ry}&offset=0`);a++;let u=Array.isArray(c?.bulletchats)?c.bulletchats:[];u.length>0&&n.push(...u);let l=Number(c.more??0)===1||c.more===!0||c.more==="1",d=Number(c.nextAxis??ry),f=Number(c.lastId??s);if(!Number.isFinite(d)||d<=i||d>=ry||(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=yot(e),n=Array.isArray(r?.refs)?r.refs.filter(i=>i?.id):[];if(n.length===0)return[];if(n.length===1){let i=await this.fetchEpisodeDanmuByRef(n[0]);return this.attachDanmuSourceLabel(i,n[0].rawId)}return(await Promise.all(n.map(async i=>{let a=await this.fetchEpisodeDanmuByRef(i);return this.attachDanmuSourceLabel(a,i.rawId)}))).flat()}async getEpisodeDanmuSegments(e){return E("info","[Hanjutv] \u83B7\u53D6\u97E9\u5267TV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new 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}))}};kt();Et();fr();Un();po();sn();xs();var ny=class extends wt{async search(e){try{let r=[];O.useBangumiData&&(r=await ku(e,["gamer","gamer_hk"]),E("info",`[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(m=>m.video_sn);if(r.length>0&&r.length===n.length)return E("info","[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D\u5747\u542B video_sn\uFF0C\u542F\u7528\u6570\u636E\u6E90\u76F4\u901A\u6A21\u5F0F\uFF08\u8DF3\u8FC7\u641C\u7D22\u63A5\u53E3\uFF09"),r.map(m=>{let h=(m.titles.find(y=>y&&y.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");return{video_sn:parseInt(m.video_sn),title:h,_displayTitle:h,isLocalPriority:!0,aliases:[...m.titles],_typeStr:m.typeStr,_fromDataSourceDirectHit:!0,_originalQuery:e,_bangumiBegin:m.begin||null}});let s=Mo(e),i=e,a=encodeURIComponent(s);E("info",`[Bahamut] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`),E("info",`[Bahamut] \u5DF4\u54C8\u4F7F\u7528\u641C\u7D22\u8BCD: ${s}`);let o=new AbortController,c=(async()=>{try{let m=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${a}`,p=O.makeProxyUrl(m),h=await Ae(p,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(h&&h.data&&h.data.anime&&h.data.anime.length>0){o.abort();let y=h.data.anime;for(let g of y)try{g._originalQuery=e,g._searchUsedTitle=s}catch{}return E("info",`[Bahamut] bahamutSearchresp (original): ${JSON.stringify(y)}`),E("info",`[Bahamut] \u8FD4\u56DE ${y.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:y,source:"original"}}return E("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"}}catch(m){return E("error","[Bahamut] \u539F\u59CB\u641C\u7D22\u5931\u8D25:",{message:m.message,name:m.name,stack:m.stack}),{success:!1,source:"original"}}})(),u=(async()=>{try{await new Promise(x=>setTimeout(x,100));let m=await $1(i,o.signal,"Bahamut");if(!m||!m.title)return E("info","[Bahamut] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:p,cnAlias:h}=m;E("info",`[Bahamut] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u8FDB\u884C\u641C\u7D22: ${p}`);let g=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${encodeURIComponent(p)}`,A=O.makeProxyUrl(g),b=await Ae(A,{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(b&&b.data&&b.data.anime&&b.data.anime.length>0){let x=b.data.anime;for(let S of x)try{S._originalQuery=e,S._searchUsedTitle=p,S._tmdbCnAlias=h}catch{}return E("info",`[Bahamut] bahamutSearchresp (TMDB): ${JSON.stringify(x)}`),E("info",`[Bahamut] \u8FD4\u56DE ${x.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:x,source:"tmdb"}}return E("info","[Bahamut] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"}}catch(m){return m.name==="AbortError"?(E("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0}):(E("error","[Bahamut] TMDB\u641C\u7D22\u5931\u8D25:",{message:m.message,name:m.name,stack:m.stack}),{success:!1,source:"tmdb"})}})(),[l,d]=await Promise.all([c,u]),f=[];if(l.success?f=l.data:d.success?f=d.data:E("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C"),f.length>0&&r.length>0)for(let m of f){if(!m||!m.acg_sn)continue;let p=r.find(h=>String(m.acg_sn)===String(h.siteId))||r.find(h=>m.title&&h.title===m.title);if(p){let h=m.title,g=(p.titles.find(A=>A&&A.includes(e))||p.titles[1]||p.title)+(p.titleSuffix||"");m.title=g,m._displayTitle=g,m.isLocalPriority=!0,m.aliases=[...p.titles],h&&!m.aliases.includes(h)&&m.aliases.push(h),m._typeStr=p.typeStr,E("info",`[Bahamut] \u7F51\u7EDC\u7ED3\u679C [${m.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}}return f}catch(r){return E("error","[Bahamut] getBahamutAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=`https://api.gamer.com.tw/anime/v1/video.php?videoSn=${e}`,n=O.makeProxyUrl(r),s=await Ae(n,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(!s||!s.data)return E("info","[Bahamut] getBahamutEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];if(!s.data.data||!s.data.data.video||!s.data.data.anime)return E("info","[Bahamut] getBahamutEposides: video \u6216 anime \u4E0D\u5B58\u5728"),[];let{video:i,anime:a}=s.data.data;return E("info",`[Bahamut] getBahamutEposides: videoSn=${i.videoSn}, animeSn=${a.animeSn}, title=${a.title}, totalEpisode=${a.totalEpisode}, episodes=${JSON.stringify(a.episodes)}`),s.data.data}catch(r){return E("error","[Bahamut] getBahamutEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[],o=/[\u3040-\u309F\u30A0-\u30FF]/.test(r);r=Mo(r);function c(y,g,A){if(!y)return!1;let b=String(y),x=String(g||""),S=String(A||"");if(O.strictTitleMatch){if(am(b,x)||S&&am(b,S))return!0;try{if(am(b,Mo(x))||am(b,Vt(x))||S&&(am(b,Mo(S))||am(b,Vt(S))))return!0}catch{}return!1}let T=ir(b),I=ir(x),R=S?ir(S):"";if(T.includes(I)||R&&T.includes(R))return!0;try{if(T.includes(ir(Mo(x)))||T.includes(ir(Vt(x)))||R&&(T.includes(ir(Mo(S)))||T.includes(ir(Vt(S)))))return!0}catch{}try{if(T.toLowerCase().includes(I.toLowerCase())||R&&T.toLowerCase().includes(R.toLowerCase()))return!0}catch{}return!1}let l=(Array.isArray(e)?e:[]).filter(y=>{let g=y.title||"",A=y._searchUsedTitle||y._originalQuery||"";return o||y._searchUsedTitle&&y._searchUsedTitle!==r?(E("info",`[Bahamut] \u547D\u4E2D\u65E5\u8BED\u5173\u952E\u8BCD\u6216TMDB\u7ED3\u679C\uFF0C\u7ED5\u8FC7\u5339\u914D\u89C4\u5219\u76F4\u63A5\u4FDD\u7559: ${g}`),!0):c(g,r,A)||Array.isArray(y.aliases)&&y.aliases.some(b=>c(b,r,A))});l.forEach(y=>{y._originalTitleAlias=y.title?Vt(y.title):""});let d=l.length>0?l[0]._tmdbCnAlias:null;U1(l,d);let f=i!==null?i:Ut(r),m=l;if(f!==null){let y=l.filter(g=>{let A=g._displayTitle||g.title,b=Tt(A).season;return b===f||f===1&&b===null});y.length>0&&(m=y,E("info",`[Bahamut] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${f}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let p=new Map,h=await Promise.all(m.map(async y=>{try{let g=String(y.video_sn);p.has(g)||p.set(g,this.getEpisodes(y.video_sn));let A=await p.get(g);if(!A||typeof A!="object"||Array.isArray(A))return null;let b=A.video,x=null;A.anime.episodes&&(x=A.anime.episodes[0]||Object.values(A.anime.episodes)[0]);let S=[];if(x&&Array.isArray(x))for(let T of x){let I=`\u7B2C${T.episode}\u96C6`;S.push({name:T.episode.toString(),url:T.videoSn.toString(),title:`\u3010bahamut\u3011 ${I}`})}if(S.length>0){let T=null;if(y._bangumiBegin&&(T=parseInt(y._bangumiBegin.substring(0,4))),!T&&A.anime&&A.anime.seasonStart&&(T=new Date(A.anime.seasonStart).getFullYear()),!T&&b&&b.upTime){let L=String(b.upTime).match(/(\d{4})/);L&&(T=parseInt(L[1]))}if(!T){let P=(y.info||"").match(/(\d{4})/);P&&(T=parseInt(P[1]))}let I=A.anime&&A.anime.cover||y.cover||b&&b.cover||"",R=y._displayTitle||Vt(y.title),N=Array.isArray(y.aliases)?[...y.aliases]:[];y._originalTitleAlias&&y._originalTitleAlias!==R&&!N.includes(y._originalTitleAlias)&&N.push(y._originalTitleAlias);let k=y._typeStr||"\u52A8\u6F2B",B=A.anime&&A.anime.title||b&&b.title||"";B.includes("[\u96FB\u5F71]")?k="\u5267\u573A\u7248":B.includes("[\u7279\u5225\u7BC7]")&&(k="OVA");let M={animeId:y.video_sn,bangumiId:String(y.video_sn),animeTitle:`${R}(${T||"N/A"})\u3010${k}\u3011from bahamut`,aliases:N,type:"\u52A8\u6F2B",typeDescription:"\u52A8\u6F2B",imageUrl:I,startDate:T?Br(T):Br(A.anime.seasonStart?new Date(A.anime.seasonStart).getFullYear():null),episodeCount:S.length,rating:b.rating,isFavorited:!0,source:"bahamut"};a.push(M),Dt({...M,links:S},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(g){E("error",`[Bahamut] Error processing anime: ${g.message}`)}}));return this.sortAndPushAnimesByYear(a,n),h}async getEpisodeDanmu(e){let r=[];try{let n=`https://api.gamer.com.tw/anime/v1/danmu.php?geo=TW%2CHK&videoSn=${e}`,s=O.makeProxyUrl(n),i=await Ae(s,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});return i.data&&i.data.data&&i.data.data.danmu&&(r=i.data.data.danmu),r}catch(n){return E("error","[Bahamut] fetchBahamutEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return E("info","[Bahamut] \u83B7\u53D6\u5DF4\u54C8\u59C6\u7279\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new 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"?Vt(n.text):n.text,t:n.time/10}))}};kt();Et();fr();Un();po();xs();kt();Et();fr();Ns();Un();sn();xs();var sy=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 Ct(e.title,r,n)?!0:Array.isArray(e.aliases)&&e.aliases.some(s=>Ct(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(/<em>/g,"").replace(/<\/em>/g,"");if(!i||!s)return null;let a=n.typeName;if(a.includes("\u77ED\u5267")||!["\u7535\u89C6\u5267","\u52A8\u6F2B","\u7535\u5F71","\u7EAA\u5F55\u7247","\u7EFC\u827A","\u7EFC\u827A\u8282\u76EE"].includes(a))return null;let c=a,u=!1,l=!1;n.coverDoc&&(n.coverDoc.richTags&&Array.isArray(n.coverDoc.richTags)&&n.coverDoc.richTags.forEach(p=>{p.text&&p.text.includes("3D")&&(u=!0),p.text&&p.text.includes("2D")&&(l=!0)}),n.coverDoc.tags&&Array.isArray(n.coverDoc.tags)&&n.coverDoc.tags.forEach(p=>{p&&p.includes("3D")&&(u=!0),p&&p.includes("2D")&&(l=!0)})),u?c="3D"+c:l&&(c="2D"+c);let d=(n.playSites||[]).concat(n.episodeSites||[]);if(d.length>0&&!d.some(p=>p.enName==="qq")||a==="\u7535\u5F71"&&["\u82B1\u7D6E","\u5F69\u86CB","\u5E55\u540E","\u72EC\u5BB6","\u89E3\u8BF4","\u7279\u8F91","\u63A2\u73ED","\u62CD\u6444","\u5236\u4F5C","\u5BFC\u6F14","\u8BB0\u5F55","\u56DE\u987E","\u76D8\u70B9","\u6DF7\u526A","\u89E3\u6790","\u62A2\u5148"].some(h=>i.includes(h)))return null;let f=a==="\u7535\u5F71"?1:n.subjectDoc?n.subjectDoc.videoNum:0,m=this.extractAliasesFromHintWords(n.hintWords).filter(p=>p!==i);return{provider:"tencent",mediaId:s,title:i,aliases:m,type:c,year:n.year,imageUrl:n.imgUrl,episodeCount:f}}async search(e){try{E("info",`[Tencent] \u5F00\u59CB\u641C\u7D22: ${e}`);let r="https://pbaccess.video.qq.com/trpc.videosearch.mobile_search.MultiTerminalSearch/MbSearch?vplatform=2",n={version:"25071701",clientType:1,filterValue:"",uuid:"0379274D-05A0-4EB6-A89C-878C9A460426",query:e,retry:0,pagenum:0,isPrefetch:!0,pagesize:30,queryFrom:0,searchDatakey:"",transInfo:"",isneedQc:!0,preQid:"",adClientInfo:"",extraInfo:{multi_terminal_pc:"1",themeType:"1",sugRelatedIds:"{}",appVersion:""}},s={"Content-Type":"application/json",Origin:"https://v.qq.com","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`https://v.qq.com/x/search/?q=${encodeURIComponent(e)}&stag=&smartbox_ab=`,H38:"220496a1fb1498325e9be6d938",H42:"335a00a80ab9bbbef56793d8e7a97e87b9341dee34ebd83d61afc0cdb303214caaece3",Uk:"8e91af25d3af99d0f0640327e7307666",Cookie:"tvfe_boss_uuid=ee8f05103d59226f; pgv_pvid=3155633511; video_platform=2; ptag=v_qq_com; main_login=qq"},i=await Gr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return E("info","[Tencent] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return E("error",`[Tencent] API\u8FD4\u56DE\u9519\u8BEF: ${a.msg} (ret: ${a.ret})`),[];let o=[];if(a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.boxId==="MainNeed"&&u.itemList){E("info",`[Tencent] \u4ECE MainNeed box \u627E\u5230 ${u.itemList.length} \u4E2A\u9879\u76EE`),o=u.itemList;break}}if(o.length===0&&a.data&&a.data.normalList&&a.data.normalList.itemList&&(E("info","[Tencent] MainNeed box \u672A\u627E\u5230\uFF0C\u4F7F\u7528 normalList"),o=a.data.normalList.itemList),a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.itemList&&u.boxTitle&&Array.isArray(u.boxTitle.boxTitles)&&u.boxTitle.boxTitles.includes("\u76F8\u5173\u5F71\u89C6")){let l=u.itemList.filter(d=>d.videoInfo&&d.videoInfo.title&&d.videoInfo.title.includes(e));l.length>0?(E("info",`[Tencent] \u8FFD\u52A0\u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u5339\u914D "${e}" \u7684 ${l.length} \u4E2A\u9879\u76EE`),o=[...o,...l]):E("info",`[Tencent] \u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u65E0\u5339\u914D "${e}" \u7684\u9879\u76EE`);break}}if(o.length===0)return E("info","[Tencent] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o){let l=this.filterTencentSearchItem(u,e);l&&c.push(l)}return E("info",`[Tencent] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return E("error","[Tencent] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Tencent] \u83B7\u53D6\u5206\u96C6\u5217\u8868: cid=${e}`);let r="https://pbaccess.video.qq.com/trpc.universal_backend_service.page_server_rpc.PageServer/GetPageData?video_appid=3000010&vversion_name=8.2.96&vversion_platform=2",n={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:e,vid:"",lid:"",page_num:"",page_context:`cid=${e}&detail_page_type=1&req_from=web_vsite&req_from_second_type=&req_type=0`,detail_page_type:"1"}},s={"Content-Type":"application/json",Origin:"https://v.qq.com",Referer:`https://v.qq.com/x/cover/${e}.html`,"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/537.36 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Accept:"application/json","Accept-Language":"zh-CN,zh;q=0.9"},i=await Gr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return E("info","[Tencent] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return E("error",`[Tencent] \u5206\u96C6API\u8FD4\u56DE\u9519\u8BEF: ret=${a.ret}`),[];let o=[];if(a.data&&a.data.module_list_datas)for(let u of a.data.module_list_datas){for(let l of u.module_datas)if(l.module_params&&l.module_params.tabs)try{o=JSON.parse(l.module_params.tabs);break}catch(d){E("error","[Tencent] \u89E3\u6790tabs\u5931\u8D25:",d.message)}if(o.length>0)break}let c=[];if(o.length===0){if(E("info","[Tencent] \u672A\u627E\u5230\u5206\u9875\u4FE1\u606F,\u5C1D\u8BD5\u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5206\u96C6"),a.data&&a.data.module_list_datas){for(let u of a.data.module_list_datas)for(let l of u.module_datas)if(l.item_data_lists&&l.item_data_lists.item_datas)for(let d of l.item_data_lists.item_datas)d.item_params&&d.item_params.vid&&d.item_params.is_trailer!=="1"&&c.push({vid:d.item_params.vid,title:d.item_params.title,unionTitle:d.item_params.union_title||d.item_params.title})}if(c.length===0)return E("info","[Tencent] \u521D\u59CB\u54CD\u5E94\u4E2D\u4E5F\u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];E("info",`[Tencent] \u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5230 ${c.length} \u96C6`)}else{E("info",`[Tencent] \u627E\u5230 ${o.length} \u4E2A\u5206\u9875`);for(let u of o){if(!u.page_context)continue;let l={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:e,vid:"",lid:"",page_num:"",page_context:u.page_context,detail_page_type:"1"}},d=await Gr(r,JSON.stringify(l),{headers:s});if(!d||!d.data)continue;let f=typeof d.data=="string"?JSON.parse(d.data):d.data;if(!(f.ret!==0||!f.data)&&f.data.module_list_datas){for(let m of f.data.module_list_datas)for(let p of m.module_datas)if(p.item_data_lists&&p.item_data_lists.item_datas)for(let h of p.item_data_lists.item_datas)h.item_params&&h.item_params.vid&&h.item_params.is_trailer!=="1"&&c.push({vid:h.item_params.vid,title:h.item_params.title,unionTitle:h.item_params.union_title||h.item_params.title})}}}return E("info",`[Tencent] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return E("error","[Tencent] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Tencent] sourceAnimes is not a valid array"),[];let o=e.filter(l=>this.titleOrAliasMatches(l,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Tencent] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let m=0;m<d.length;m++){let p=d[m],h=p.unionTitle||p.title||`\u7B2C${m+1}\u96C6`,y=`https://v.qq.com/x/cover/${l.mediaId}/${p.vid}.html`;f.push({name:(m+1).toString(),url:y,title:`\u3010qq\u3011 ${h}`})}if(f.length>0){let m=d[0].unionTitle||d[0].title||"\u7B2C1\u96C6",p=l.title,h=m.match(/\[.+版\]/);h&&m.includes(l.title)&&(p=`${l.title}${h[0]}`);let g={animeId:zr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${p}(${l.year})\u3010${l.type}\u3011from tencent`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"tencent",aliases:l.aliases||[]};a.push(g),Dt({...g,links:f},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(d){E("error",`[Tencent] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}extractVid(e){let r=e;if(typeof e=="string"&&(e.startsWith("http")||e.includes("vid="))){let n=e.match(/[?&]vid=([^&]+)/);if(n)r=n[1];else{let s=e.split("/");r=s[s.length-1].split(".")[0]}}return r}async getEpisodeDanmu(e){E("info","[Tencent] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u817E\u8BAF\u89C6\u9891\u5F39\u5E55...",e);let r=this.extractVid(e);E("info",`[Tencent] vid: ${r}`);let n;try{n=await Ae(e,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(l){return E("error","[Tencent] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",l),[]}let s=n.data.match(/<title[^>]*>(.*?)<\/title>/i),i=s?s[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";E("info",`[Tencent] \u6807\u9898: ${i}`);let a=await this.getEpisodeDanmuSegments(e);if(!a||!a.segmentList||a.segmentList.length===0)return[];let o=a.segmentList;E("info",`[Tencent] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o.length}`);let c=[];for(let l of o)c.push(Ae(l.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let u=[];try{(await Promise.allSettled(c)).filter(f=>f.status==="fulfilled").map(f=>f.value&&f.value.data?f.value.data:null).filter(f=>f!==null).forEach(f=>{f=typeof f=="string"?JSON.parse(f):f,u.push(...f.barrage_list)})}catch(l){return E("error","[Tencent] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",l),[]}return ns(u),u}async getEpisodeDanmuSegments(e){E("info","[Tencent] \u83B7\u53D6\u817E\u8BAF\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://dm.video.qq.com/barrage/base/",n="https://dm.video.qq.com/barrage/segment/",s=this.extractVid(e);E("info",`[Tencent] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - vid: ${s}`);let i;try{i=await Ae(r+s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return u.response?.status===404?new vt({type:"qq",segmentList:[]}):(E("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 Ae(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.barrage_list)}return n}catch(r){return E("error","[Tencent] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>{let n={timepoint:r.time_offset/1e3,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:r.content};if(r.content_style&&r.content_style!=="")try{let s=JSON.parse(r.content_style);s.gradient_colors&&s.gradient_colors.length>0?n.color=parseInt(s.gradient_colors[0].replace("#",""),16):s.color&&s.color!=="ffffff"&&(n.color=parseInt(s.color.replace("#",""),16)),s.position===2?n.ct=5:s.position===3&&(n.ct=4)}catch{}return n.like=parseInt(r.up_count)||0,n})}};Et();fr();sn();Ns();Un();kt();xs();var iy=class t extends wt{static XOR_KEY=0x75706971676c;static SECRET_KEY="howcuteitis";static KEY_NAME="secret_key";async search(e){try{E("info",`[iQiyi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,current_page:"1",mode:"1",source:"input",suggest:"",pcv:"13.074.22699",version:"13.074.22699",pageNum:"1",pageSize:"25",pu:"",u:"f6440fc5d919dca1aea12b6aff56e1c7",scale:"200",token:"",userVip:"0",conduit:"",vipType:"-1",os:"",osShortName:"win10",dataType:"",appMode:"",ad:JSON.stringify({lm:3,azd:0xe8d4a513b7,azt:733,position:"feed"}),adExt:JSON.stringify({r:"2.1.5-ares6-pure"})},s=`https://mesh.if.iqiyi.com/portal/lw/search/homePageV3?${Ci(r)}`,i=async()=>{let l=await Ae(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});return!l||!l.data?null:typeof l.data=="string"?JSON.parse(l.data):l.data},a=2,o=await i();for(let l=0;l<a&&(!o||o.code==="-1");l++){let d=o?`\u641C\u7D22\u63A5\u53E3\u98CE\u63A7 (code=${o.code})`:"\u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A";E("info",`[iQiyi] ${d}\uFF0C\u7B49\u5F85 1.5 \u79D2\u540E\u91CD\u8BD5 (${l+1}/${a})`),await new Promise(f=>setTimeout(f,1500)),o=await i()}if(!o)return E("info","[iQiyi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];if(o.code==="-1")return E("info","[iQiyi] \u641C\u7D22\u63A5\u53E3\u98CE\u63A7 (code=-1)\uFF0C\u91CD\u8BD5\u540E\u4ECD\u5931\u8D25"),E("info",`[iQiyi] \u641C\u7D22\u539F\u59CB\u6570\u636E: ${JSON.stringify(o)}`),[];if(!o.data||!o.data.templates)return E("info","[iQiyi] \u641C\u7D22\u65E0\u7ED3\u679C"),E("info",`[iQiyi] \u641C\u7D22\u539F\u59CB\u6570\u636E: ${JSON.stringify(o)}`),[];let c=[],u=o.data.templates;for(let l of u){let d=[];l.template===112&&l.intentAlbumInfos?(E("info",`[iQiyi] \u627E\u5230\u610F\u56FE\u5361\u7247 (template 112)\uFF0C\u5904\u7406 ${l.intentAlbumInfos.length} \u4E2A\u7ED3\u679C`),d=l.intentAlbumInfos):[101,102,103].includes(l.template)&&l.albumInfo&&(E("info",`[iQiyi] \u627E\u5230\u666E\u901A\u7ED3\u679C\u5361\u7247 (template ${l.template})`),d=[l.albumInfo]);for(let f of d){let m=this._filterIqiyiSearchItem(f,e);m&&c.push(m)}}return E("info",`[iQiyi] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return E("error","[iQiyi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}_filterIqiyiSearchItem(e,r){if(!e.title)return null;if(e.btnText==="\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E")return E("info",`[iQiyi] \u8FC7\u6EE4\u6389\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E\u5185\u5BB9: ${e.title}`),null;let n=e.channel||"",s="\u7535\u89C6\u5267";if(n.includes("\u7535\u5F71"))s="\u7535\u5F71";else if(n.includes("\u52A8\u6F2B"))s="\u52A8\u6F2B";else if(n.includes("\u7EFC\u827A"))s="\u7EFC\u827A";else if(n.includes("\u7EAA\u5F55\u7247"))s="\u7EAA\u5F55\u7247";else if(n.includes("\u7535\u89C6\u5267"))s="\u7535\u89C6\u5267";else return null;let i=!1,a=!1;if(e.metaTags&&Array.isArray(e.metaTags)&&e.metaTags.forEach(m=>{m.name==="3D"&&(i=!0),m.name==="2D"&&(a=!0)}),e.baseTags&&Array.isArray(e.baseTags)&&e.baseTags.forEach(m=>{m.value==="3D"&&(i=!0),m.value==="2D"&&(a=!0)}),i?s="3D"+s:a&&(s="2D"+s),s.includes("\u7535\u5F71")){let m=e.qipuId||e.playQipuId;if(!m)return E("info",`[iQiyi] \u7535\u5F71\u7F3A\u5C11 qipuId: ${e.title}`),null;let p=null;if(e.year){let y=e.year.value||e.year.name;y&&typeof y=="string"&&y.length===4&&/^\d{4}$/.test(y)&&(p=parseInt(y))}let h=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:`movie_${m}`,title:h,type:s,year:p,imageUrl:e.img||e.imgH,episodeCount:1,_qipuId:m}}let o=e.pageUrl;if(!o)return E("info",`[iQiyi] \u975E\u7535\u5F71\u5185\u5BB9\u7F3A\u5C11 pageUrl: ${e.title}`),null;let c=o.match(/v_(\w+?)\.html/);if(!c)return E("info",`[iQiyi] \u65E0\u6CD5\u4ECE pageUrl \u63D0\u53D6 link_id: ${o}`),null;let u=c[1],l=null;if(e.year){let m=e.year.value||e.year.name;m&&typeof m=="string"&&m.length===4&&/^\d{4}$/.test(m)&&(l=parseInt(m))}let d=null;if(e.videos&&e.videos.length>0)d=e.videos.length;else if(e.subscriptContent){let m=e.subscriptContent.match(/(?:更新至|å…¨|å…±)\s*(\d+)\s*(?:集|话|期)/);if(m)d=parseInt(m[1]);else{let p=e.subscriptContent.trim().match(/^(\d+)$/);p&&(d=parseInt(p[1]))}}let f=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:u,title:f,type:s,year:l,imageUrl:e.img||e.imgH,episodeCount:d}}async getEpisodes(e){try{if(E("info",`[iQiyi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`),e.startsWith("movie_")){let m=e.substring(6);E("info",`[iQiyi] \u7535\u5F71\u7C7B\u578B\uFF0C\u8C03\u7528 base_info API \u83B7\u53D6\u89C6\u9891ID: qipuId=${m}`);let p=await this._getMovieVideoId(m);return p?(E("info",`[iQiyi] \u7535\u5F71\u89C6\u9891ID: ${p}`),[{id:p,title:"\u6B63\u7247",order:1,link:`https://www.iqiyi.com/v_${p}.html`}]):(E("error",`[iQiyi] \u65E0\u6CD5\u83B7\u53D6\u7535\u5F71\u7684\u89C6\u9891ID: qipuId=${m}`),[])}let r=/^\d+$/.test(e)?e:this._videoIdToEntityId(e);if(!r)return E("error",`[iQiyi] \u65E0\u6CD5\u5C06 media_id '${e}' \u8F6C\u6362\u4E3A entity_id`),[];let n={entity_id:r,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.082.22866",app_version:"13.082.22866",ext:"",app_mode:"standard",scale:"100",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.2.0-ares6-pure"}'};n.sign=this._createSign(n);let i=`https://www.iqiyi.com/prelw/tvg/v2/lw/base_info?${Ci(n)}`,a=await Ae(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.iqiyi.com/"}});if(!a||!a.data)return E("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.status_code!==0||!o.data||!o.data.template)return E("error",`[iQiyi] API \u8FD4\u56DE\u9519\u8BEF\uFF0Cstatus_code: ${o.status_code}`),[];let c=[],u=o.data.template.tabs||[];if(u.length===0)return E("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6807\u7B7E\u9875"),[];let l=u[0].blocks||[],d=!1;for(let m of l)if(m.bk_type==="video_list"&&m.data?.data){if(E("info",`[iQiyi] \u627E\u5230 video_list \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757, bk_id: ${m.bk_id}`),!m.tag||!m.tag.includes("episodes")){E("info",`[iQiyi] \u8DF3\u8FC7\u975E\u5206\u96C6\u5757: ${m.bk_id}`);continue}d=!0;let p=m.data.data;if(!Array.isArray(p)){E("warn","[iQiyi] data.data \u4E0D\u662F\u6570\u7EC4\uFF0C\u8DF3\u8FC7\u6B64\u5757");continue}for(let h of p)if(!(!h.videos||!Array.isArray(h.videos))){for(let y of h.videos)if(!(!y.data||!Array.isArray(y.data)))for(let g of y.data){if(g.content_type!==1)continue;let b=(g.play_url||"").match(/tvid=(\d+)/);if(!b)continue;let x=b[1],S=g.short_display_name||g.title||"\u672A\u77E5\u5206\u96C6",T=g.subtitle;T&&!S.includes(T)&&(S=`${S} ${T}`);let I=g.album_order,R=g.page_url;x&&S&&R&&c.push({id:x,title:S,order:I!==void 0?I:c.length,link:R})}}}else if(m.bk_type==="album_episodes"&&m.data?.data){E("info","[iQiyi] \u627E\u5230 album_episodes \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757"),d=!0;let p=m.data.data;for(let h of p){let y=h.videos;if(typeof y=="string"){E("info",`[iQiyi] \u53D1\u73B0\u5206\u5B63URL\uFF0C\u6B63\u5728\u83B7\u53D6: ${y}`);try{let g=await Ae(y);y=typeof g.data=="string"?JSON.parse(g.data):g.data}catch(g){E("error",`[iQiyi] \u83B7\u53D6\u5206\u5B63\u6570\u636E\u5931\u8D25: ${g.message}`);continue}}if(y&&typeof y=="object"&&y.feature_paged)for(let g in y.feature_paged){let A=y.feature_paged[g];for(let b of A){if(b.content_type!==1)continue;let S=(b.play_url||"").match(/tvid=(\d+)/);if(!S)continue;let T=S[1],I=b.short_display_name||b.title||"\u672A\u77E5\u5206\u96C6",R=b.subtitle;R&&!I.includes(R)&&(I=`${I} ${R}`);let N=b.album_order,k=b.page_url;T&&I&&N&&k&&c.push({id:T,title:I,order:N,link:k})}}}}if(!d)return E("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6570\u636E\u5757"),[];let f=Array.from(new Map(c.map(m=>[m.id,m])).values());return f.sort((m,p)=>m.order-p.order),E("info",`[iQiyi] \u6210\u529F\u83B7\u53D6 ${f.length} \u4E2A\u5206\u96C6`),f}catch(r){return E("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieVideoId(e){try{let r={entity_id:e,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.103.23529",app_version:"13.103.23529",ext:"",app_mode:"standard",scale:"125",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.5.0-ares6-pure"}'};r.sign=this._createSign(r);let s=`https://mesh.if.iqiyi.com/tvg/v2/lw/base_info?${Ci(r)}`;E("info",`[iQiyi] \u8BF7\u6C42\u7535\u5F71\u8BE6\u60C5: ${s}`);let i=await Ae(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!i||!i.data)return E("error","[iQiyi] base_info API \u54CD\u5E94\u4E3A\u7A7A"),null;let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.data&&a.data.base_data){let o=a.data.base_data;if(o.share_url){let c=o.share_url.match(/v_(\w+)\.html/);if(c)return E("info",`[iQiyi] \u4ECE share_url \u63D0\u53D6\u89C6\u9891ID: ${c[1]}`),c[1]}if(o.page_url){let c=o.page_url.match(/v_(\w+)\.html/);if(c)return E("info",`[iQiyi] \u4ECE page_url \u63D0\u53D6\u89C6\u9891ID: ${c[1]}`),c[1]}}return E("info",`[iQiyi] \u54CD\u5E94\u4E2D\u672A\u627E\u5230 v_xxx \u683C\u5F0F\u89C6\u9891ID\uFF0C\u4F7F\u7528 entity_id: ${e}`),E("info",`[iQiyi] \u54CD\u5E94\u6570\u636E\u7ED3\u6784: ${JSON.stringify(a).substring(0,1e3)}...`),e}catch(r){return E("error",`[iQiyi] \u83B7\u53D6\u7535\u5F71\u89C6\u9891ID\u65F6\u51FA\u9519: ${r.message}`),null}}_videoIdToEntityId(e){try{let r=parseInt(e,36),n=this._xorOperation(r),s=n<9e5?100*(n+9e5):n;return String(s)}catch(r){return E("error",`[iQiyi] \u5C06 video_id '${e}' \u8F6C\u6362\u4E3A entity_id \u65F6\u51FA\u9519: ${r.message}`),null}}_xorOperation(e){let r=e.toString(2),n=t.XOR_KEY.toString(2),s=r.split("").reverse(),i=n.split("").reverse(),a=[],o=Math.max(s.length,i.length);for(let u=0;u<o;u++){let l=u<s.length?s[u]:"0",d=u<i.length?i[u]:"0";l==="1"&&d==="1"?a.push("0"):l==="1"||d==="1"?a.push("1"):a.push("0")}let c=a.reverse().join("");return c?parseInt(c,2):0}_createSign(e){let r={};for(let o in e)o!=="sign"&&(r[o]=e[o]);let n=Object.keys(r).sort(),s=[];for(let o of n){let c=r[o]===null||r[o]===void 0?"":r[o];s.push(`${o}=${c}`)}let a=`${s.join("&")}&${t.KEY_NAME}=${t.SECRET_KEY}`;return ss(a).toUpperCase()}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[iQiyi] sourceAnimes is not a valid array"),[];let o=e.filter(l=>Ct(l.title,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[iQiyi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let m of d){let p=m.link||`https://www.iqiyi.com/v_${l.mediaId}.html`;f.push({name:m.order.toString(),url:p,title:`\u3010qiyi\u3011 ${m.title}`})}if(f.length>0){let p={animeId:zr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from iqiyi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"iqiyi"};a.push(p),Dt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(d){E("error",`[iQiyi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[iQiyi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u7231\u5947\u827A\u5F39\u5E55...",e);let r;try{r=await Ae(e,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return E("error","[iQiyi] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",u),[]}let n=r.data.match(/<title[^>]*>(.*?)<\/title>/i),s=n?n[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";E("info",`[iQiyi] \u6807\u9898: ${s}`);let i=await this.getEpisodeDanmuSegments(e);if(!i||!i.segmentList||i.segmentList.length===0)return[];let a=i.segmentList;E("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${a.length}`);let o=[];for(let u of a)o.push(this.getEpisodeSegmentDanmu(u));let c=[];try{(await Promise.allSettled(o)).filter(d=>d.status==="fulfilled").map(d=>d.value).filter(d=>d!==null).forEach(d=>{c.push(...d)})}catch(u){return E("error","[iQiyi] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",u),[]}return ns(c),c}async getEpisodeDanmuSegments(e){E("info","[iQiyi] \u83B7\u53D6\u7231\u5947\u827A\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcw-api.iq.com/api/decode/",n="https://pcw-api.iqiyi.com/video/video/baseinfo/",s,i;try{let f=e.match(/v_(\w+)/);if(!f)return E("error","[iQiyi] \u65E0\u6CD5\u4ECE URL \u4E2D\u63D0\u53D6 tvid"),new vt({type:"qiyi",segmentList:[]});s=f[1],E("info",`[iQiyi] tvid: ${s}`),i=s;let m=`${r}${s}?platformId=3&modeCode=intl&langCode=sg`,p=await Ae(m,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});s=(typeof p.data=="string"?JSON.parse(p.data):p.data).data.toString(),E("info",`[iQiyi] \u89E3\u7801\u540E tvid: ${s}`)}catch(f){return E("error","[iQiyi] \u8BF7\u6C42\u89E3\u7801\u4FE1\u606F\u5931\u8D25:",f),new vt({type:"qiyi",segmentList:[]})}let a;try{let f=`${n}${s}`,m=await Ae(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),h=(typeof m.data=="string"?JSON.parse(m.data):m.data).data;if(a=Number(h.durationSec)||0,h.displayBarrage===!1)return E("info","[iQiyi] \u7231\u5947\u827A\u89C6\u9891\u672A\u5F00\u542F\u5F39\u5E55"),new vt({type:"qiyi",duration:a,segmentList:[]});E("info",`[iQiyi] \u65F6\u957F: ${a}`)}catch(f){E("error","[iQiyi] \u8BF7\u6C42\u89C6\u9891\u57FA\u7840\u4FE1\u606F\u5931\u8D25:",f)}if(!a&&i&&i!==s){E("info",`[iQiyi] decode \u540E tvid \u65E0\u6548\uFF0C\u7528\u539F\u59CB tvid \u91CD\u8BD5: ${i}`);try{let f=`${n}${i}`,m=await Ae(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),p=typeof m.data=="string"?JSON.parse(m.data):m.data,h=Number(p.data.durationSec)||0;h>0&&(s=i,a=h,E("info",`[iQiyi] \u539F\u59CB tvid \u6709\u6548\uFF0C\u65F6\u957F: ${a}`))}catch(f){E("error","[iQiyi] \u539F\u59CB tvid \u91CD\u8BD5\u4E5F\u5931\u8D25:",f)}}if(!a)return new vt({type:"qiyi",segmentList:[]});let o=60,c=Math.ceil(a/o);E("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${c}`);let u=[],l=`0000${s}`,d=`${l.slice(-4,-2)}/${l.slice(-2)}`;for(let f=0;f<c;f++){let m=f+1,p=ss(`${s}_${o}_${m}cbzuw1259a`).slice(-8),h=`https://cmts.iqiyi.com/bullet/${d}/${s}_${o}_${m}_${p}.br`;u.push({type:"qiyi",segment_start:f*o,segment_end:Math.min((f+1)*o,a),url:h})}return new vt({type:"qiyi",duration:a,segmentList:u})}async getEpisodeSegmentDanmu(e){try{let r=await Ae(e.url,{headers:{"Accept-Encoding":"br","Content-Type":"application/octet-stream","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"},base64Data:!0,validStatusCodes:[404],retries:1});if(!r||r.status===404||!r.data)return[];let n=Og(r.data),s=await this._decompressBrotli(n);return s[0]===60?this._parseIqiyiXmlDanmu(new TextDecoder("utf-8").decode(s)):this._parseIqiyiProtoDanmu(s)}catch(r){return E("error","[iQiyi] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}async _decompressBrotli(e){if(typeof DecompressionStream<"u")try{let n=new Blob([e]).stream().pipeThrough(new DecompressionStream("brotli"));return new Uint8Array(await new Response(n).arrayBuffer())}catch{E("info","[iQiyi] DecompressionStream Brotli \u89E3\u538B\u5931\u8D25\uFF0C\u5C1D\u8BD5 Node zlib")}let{brotliDecompressSync:r}=await import("node:zlib");return new Uint8Array(r(e))}_parseIqiyiXmlDanmu(e){function r(o){let c=new RegExp(`<${o}>(.*?)</${o}>`,"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<e.length;){let i=this._readIqiyiVarint(e,n),a=i.value;n=i.offset;let o=Number(a>>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(;i<e.length;){let a=e[i++];if(n|=BigInt(a&127)<<s,!(a&128))return{value:n,offset:i};s+=7n}throw new Error("\u7231\u5947\u827A\u5F39\u5E55 protobuf varint \u4E0D\u5B8C\u6574")}_getIqiyiProtoString(e,r){return e.find(n=>n.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=Nf(r.content),n.size=25,n.like=r.like,n})}};kt();Et();fr();sn();Ns();Un();xs();var ay=class extends wt{transformV2Color(e){if(!e)return-1;let n=vJ(e.color_left),s=vJ(e.color_right);return n===-1&&s===-1?-1:n===-1?s:s===-1?n:Math.floor((n+s)/2)}_extractMediaType(e){let r=(e||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u52A8\u6F2B")||r.includes("\u52A8\u753B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EFC\u827A")||r.includes("\u771F\u4EBA\u79C0")||r.includes("variety")?"\u7EFC\u827A":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(e){try{E("info",`[Mango] \u5F00\u59CB\u641C\u7D22: ${e}`),this._deviceId||(this._deviceId=ss(`danmu-api-mango-${Date.now()}`));let r=Date.now(),n=ss(this._deviceId+"."+r),i=`https://mobileso.bz.mgtv.com/aphone/search/rebirth/v2?q=${encodeURIComponent(e)}&_support=10100001&device=23127PN0CC&osVersion=16&appVersion=9.3.3&did=${this._deviceId}&mac=${this._deviceId}&seqId=${n}&ticket=&userId=0&osType=android&type=10&abroad=0`,a=await Ae(i,{headers:{"User-Agent":"Dalvik/2.1.0 (Linux; U; Android 16; 23127PN0CC Build/AP1A.240505.003)",Accept:"application/json"}});if(!a||!a.data)return E("info","[Mango] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(!o.data||!o.data.contents)return E("info","[Mango] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o.data.contents)if(u.type==="mediaRebirthV2")for(let l of u.data){if(l.source&&l.source!=="imgo"||!l.clipId)continue;let d=String(l.clipId),f=l.title?l.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"):"",m=Array.isArray(l.desc)?l.desc[0]||"":l.desc||"",p=m.match(/[12][890][0-9][0-9]/),h=p?parseInt(p[0]):null,y=m.split("/")[0].replace("\u7C7B\u578B:","").trim(),g=this._extractMediaType(y);c.push({provider:"imgo",mediaId:d,title:f,type:g,year:h,imageUrl:l.img||null,episodeCount:l.videoCount||null})}return E("info",`[Mango] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return E("error","[Mango] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Mango] \u83B7\u53D6\u5206\u96C6\u5217\u8868: collection_id=${e}`);let r=[],n="",s=0,i=1;for(;s<i;){let u=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${e}&month=${n}&page=1&_support=10000000`,l=await Ae(u,{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(!l||!l.data){E("info","[Mango] \u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F");break}let d=typeof l.data=="string"?JSON.parse(l.data):l.data;if(!d.data||!d.data.list){E("info","[Mango] \u5206\u96C6\u5217\u8868\u4E3A\u7A7A");break}d.data.list&&d.data.list.length>0&&r.push(...d.data.list.filter(f=>f.src_clip_id===e)),s===0&&(i=d.data.tab_m&&d.data.tab_m.length>0?d.data.tab_m.length:1,E("info",`[Mango] \u68C0\u6D4B\u5230 ${i} \u4E2A\u6708\u4EFD\u5206\u9875`)),s++,s<i&&d.data.tab_m&&d.data.tab_m[s]&&(n=d.data.tab_m[s].m)}let a=/^(.*?)(抢先(看|版)|åŠ æ›´(版)?|花絮|预告|特辑|(特别|惊喜|纳凉)?企划|彩蛋|专访|幕后(花絮)?|ç›´æ’­|纯享|未播|衍生|番外|合伙人手记|会员(专享|åŠ é•¿)|片花|精华|看点|速看|解读|reaction|超前营业|超前(vlog)?|陪看(è®°)?|.{3,}篇|影评)(.*?)$/i,o=r.filter(u=>{let l=`${u.t2||""} ${u.t1||""}`.trim();return u.isnew==="2"?(E("info",`[Mango] \u8FC7\u6EE4\u9884\u544A\u7247: ${l}`),!1):a.test(l)?(E("info",`[Mango] \u9ED1\u540D\u5355\u8FC7\u6EE4: ${l}`),!1):!0}),c=this._processVarietyEpisodes(o);return E("info",`[Mango] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return E("error","[Mango] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieEpisode(e){try{E("info",`[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247: collection_id=${e}`);let r=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${e}&month=&page=1&_support=10000000`,n=await Ae(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.mgtv.com/"}});if(!n||!n.data)return E("info","[Mango] \u672A\u627E\u5230\u7535\u5F71\u4FE1\u606F"),null;let s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(!s.data||!s.data.list||s.data.list.length===0)return E("info","[Mango] \u7535\u5F71\u5217\u8868\u4E3A\u7A7A"),null;let i=s.data.list.find(a=>a.isIntact==="1");return i||(i=s.data.list.find(a=>a.isnew!=="2")),i||(i=s.data.list[0]),E("info",`[Mango] \u627E\u5230\u7535\u5F71\u6B63\u7247: ${i.t3||i.t1||"\u6B63\u7247"}`),i}catch(r){return E("error","[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247\u51FA\u9519:",r.message),null}}_processVarietyEpisodes(e){if(!e||e.length===0)return[];E("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5F00\u59CB\uFF0C\u539F\u59CB\u5206\u96C6\u6570: ${e.length}`);let r=e.some(i=>{let a=`${i.t2||""} ${i.t1||""}`.trim();return/第\d+期/.test(a)});E("info",`[Mango] \u7EFC\u827A\u683C\u5F0F\u5206\u6790: \u6709\u671F\u6570\u683C\u5F0F=${r}`);let n=[],s=new Map;for(let i of e){let a=`${i.t2||""} ${i.t1||""}`.trim();if(r){let o=a.match(/第(\d+)期([上中下])/),c=a.match(/第(\d+)期/),u=/第\d+期[上中下]/.test(a);if(o){let l=o[1],d=o[2],f=`\u7B2C${l}\u671F${d}`,m=a.substring(a.indexOf(f)+f.length);/^(åŠ æ›´|会员版|纯享版|特别版|独家版|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后)/.test(m)?E("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u4E0A\u4E2D\u4E0B\u683C\u5F0F+\u540E\u7F00: ${a}`):(s.set(i,[parseInt(l),d]),n.push(i),E("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u4E0A\u4E2D\u4E0B\u683C\u5F0F: ${a}`))}else if(c&&!u&&!/会员版|纯享版|特别版|独家版|åŠ æ›´|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后|访谈|采访|混剪|合集|盘点|总结|åˆ å‡|未播放|NG|番外|片段|看点|精彩|制作|导演|演员|拍摄|片尾曲|插曲|主题曲|背景音乐|OST|音乐|歌曲/.test(a)){let l=c[1];s.set(i,[parseInt(l),""]),n.push(i),E("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u6807\u51C6\u671F\u6570: ${a}`)}else E("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u975E\u6807\u51C6\u671F\u6570\u683C\u5F0F: ${a}`)}else{if(a.includes("\u5E7F\u544A")||a.includes("\u63A8\u5E7F")){E("info",`[Mango] \u8DF3\u8FC7\u5E7F\u544A\u5185\u5BB9: ${a}`);continue}n.push(i),E("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u539F\u59CB\u6807\u9898: ${a}`)}}return r?n.sort((i,a)=>{let o=s.get(i)||[0,""],c=s.get(a)||[0,""];if(o[0]!==c[0])return o[0]-c[0];let u={"":0,\u4E0A:1,\u4E2D:2,\u4E0B:3};return(u[o[1]]||0)-(u[c[1]]||0)}):n.sort((i,a)=>{let o=l=>{let f=`${l.t2||""} ${l.t1||""}`.trim().match(/第(\d+)集/);return f?parseInt(f[1]):999999},c=o(i),u=o(a);if(c===999999&&u===999999){let l=i.ts||"0",d=a.ts||"0";return l.localeCompare(d)}return c-u}),E("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5B8C\u6210\uFF0C\u8FC7\u6EE4\u540E\u5206\u96C6\u6570: ${n.length}`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Mango] sourceAnimes is not a valid array"),[];let o=e.filter(l=>Ct(l.title,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Mango] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{if(l.type==="\u7535\u5F71"){let m=await this._getMovieEpisode(l.mediaId);if(!m)return;let p=`https://www.mgtv.com/b/${l.mediaId}/${m.video_id}.html`,h=m.t3||m.t1||"\u6B63\u7247",y=[{name:"1",url:p,title:`\u3010imgo\u3011 ${h}`}],A={animeId:zr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:1,rating:0,isFavorited:!0,source:"imgo"};a.push(A),Dt({...A,links:y},s),O.animes.length>O.MAX_ANIMES&&Lt();return}let d=await this.getEpisodes(l.mediaId),f=[];for(let m=0;m<d.length;m++){let p=d[m],h=`https://www.mgtv.com/b/${l.mediaId}/${p.video_id}.html`,y=`${p.t2||""} ${p.t1||""}`.trim();f.push({name:String(m+1),url:h,title:`\u3010imgo\u3011 ${y}`})}if(f.length>0){let p={animeId:zr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"imgo"};a.push(p),Dt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(d){E("error",`[Mango] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Mango] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u8292\u679CTV\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Mango] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=[];for(let a of n)s.push(Ae(a.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let i=[];try{(await Promise.allSettled(s)).filter(c=>c.status==="fulfilled").map(c=>c.value&&c.value.data?c.value.data:null).filter(c=>c!==null).forEach(c=>{c=typeof c=="string"?JSON.parse(c):c,c.data?.items&&i.push(...c.data.items)})}catch(a){return E("error","[Mango] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",a),[]}return ns(i),i}async getEpisodeDanmuSegments(e){E("info","[Mango] \u83B7\u53D6\u8292\u679CTV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcweb.api.mgtv.com/video/info",n="https://galaxy.bz.mgtv.com/getctlbarrage",s="https://galaxy.bz.mgtv.com/rdbarrage",i=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,a=e.match(i),o;if(a)o=a[2].split("/").filter(Boolean);else return E("error","[Mango] Invalid URL"),new vt({type:"imgo",segmentList:[]});let c=o[o.length-2],u=o[o.length-1].split(".")[0];E("info",`[Mango] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - cid: ${c}, vid: ${u}`);let l;try{let p=`${r}?cid=${c}&vid=${u}`;l=await Ae(p,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(p){return p.response?.status===404?new vt({type:"imgo",segmentList:[]}):(E("error","[Mango] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",p),new vt({type:"imgo",segmentList:[]}))}let f=(typeof l.data=="string"?JSON.parse(l.data):l.data).data.info.time,m=!0;try{let p=`${n}?version=8.1.39&abroad=0&uuid=&os=10.15.7&platform=0&mac=&vid=${u}&pid=&cid=${c}&ticket=`,h=await Ae(p,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),y=typeof h.data=="string"?JSON.parse(h.data):h.data;(!y.data||!y.data.cdn_list||!y.data.cdn_version)&&(E("warn","[Mango] \u65B0API\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u8FD4\u56DE\u7A7A\u5206\u6BB5\u5217\u8868"),m=!1);let g=[];if(m){let A=Math.ceil(ty(f)/60),b=y.data.cdn_list.split(",")[0],x=y.data.cdn_version;for(let S=0;S<A;S++)g.push({type:"imgo",segment_start:S*60,segment_end:Math.min((S+1)*60,ty(f)),url:`https://${b}/${x}/${S}.json`})}else{let b=ty(f);for(let x=0;x<b;x+=60)g.push({type:"imgo",segment_start:x,segment_end:Math.min(x+60,ty(f)),url:`${s}?vid=${u}&cid=${c}&time=${x*1e3}`})}return new vt({type:"imgo",segmentList:g})}catch(p){return E("error","[Mango] \u8BF7\u6C42\u5F39\u5E55\u5206\u6BB5\u6570\u636E\u5931\u8D25:",p),new vt({type:"imgo",segmentList:[]})}}async getEpisodeSegmentDanmu(e){try{let r=await Ae(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;s.data?.items&&n.push(...s.data.items)}return n}catch(r){return E("error","[Mango] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}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 r?.v2_color&&(n.color=this.transformV2Color(r?.v2_color)),r?.v2_position&&(r?.v2_position===1?n.ct=5:r?.v2_position===2&&(n.ct=4)),n.timepoint=r.time/1e3,n.content=r.content,n.uid=r.uid,n.like=r.v2_up_count,n})}};kt();Et();fr();Ns();Un();sn();xs();po();var oy=class t extends wt{static WBI_MIXIN_KEY_CACHE={key:null,timestamp:0};static WBI_MIXIN_KEY_CACHE_TTL=3600;static WBI_MIXIN_KEY_TABLE=[46,47,18,2,53,8,23,32,15,50,10,31,58,3,45,35,27,43,5,49,33,9,42,19,29,28,14,39,12,38,41,13,37,48,7,16,24,55,40,61,26,17,0,1,60,51,30,4,22,25,54,21,56,59,6,63,57,62,11,36,20,34,44,52];static APP_KEY="1d8b6e7d45233436";static APP_SEC="560c52ccd288fed045859ed18bffd973";async resolveB23Link(e){let r;try{E("info",`[Bilibili] \u6B63\u5728\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5: ${e}`);let n=parseInt(O.vodRequestTimeout||"5000",10)||5e3,s=new AbortController;r=setTimeout(()=>s.abort(),n);let a=await(typeof fetch=="function"?fetch:(await Promise.resolve().then(()=>(PC(),hL))).default)(e,{method:"GET",headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:s.signal,redirect:"manual"}),o=a.headers?.get?.("location")||a.headers?.get?.("Location"),c=o?new URL(o,e).toString():a.url;return c&&c!==e?(E("info",`[Bilibili] b23.tv \u77ED\u94FE\u63A5\u5DF2\u89E3\u6790\u4E3A: ${c}`),c):(E("error","[Bilibili] \u65E0\u6CD5\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5"),e)}catch(n){return E("error","[Bilibili] \u89E3\u6790 b23.tv \u77ED\u94FE\u63A5\u5931\u8D25:",n),e}finally{r&&clearTimeout(r)}}async _getWbiMixinKey(){let e=Math.floor(Date.now()/1e3),r=t.WBI_MIXIN_KEY_CACHE;if(r.key&&e-r.timestamp<t.WBI_MIXIN_KEY_CACHE_TTL)return r.key;E("info","[Bilibili] WBI mixin key \u5DF2\u8FC7\u671F\u6216\u4E0D\u5B58\u5728\uFF0C\u6B63\u5728\u83B7\u53D6\u65B0\u7684...");try{let n=await Ae("https://api.bilibili.com/x/web-interface/nav",{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/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)return E("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",s.message),"dba4a5925b345b4598b7452c75070bca";let i=s.data?.wbi_img||{},a=i.img_url||"",o=i.sub_url||"",c=a.split("/").pop()?.split(".")[0]||"",u=o.split("/").pop()?.split(".")[0]||"",l=t.WBI_MIXIN_KEY_TABLE.map(d=>(c+u)[d]).join("").substring(0,32);return r.key=l,r.timestamp=e,E("info","[Bilibili] \u6210\u529F\u83B7\u53D6\u65B0\u7684 WBI mixin key"),l}catch(n){return E("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",n.message),"dba4a5925b345b4598b7452c75070bca"}}_getWbiSignedParams(e,r){let n={...e};n.wts=Math.floor(Date.now()/1e3);let o=Object.keys(n).sort().map(u=>{let l=n[u]??"";return`${encodeURIComponent(u)}=${encodeURIComponent(l)}`}).join("&")+r,c=ss(o);return n.w_rid=c,n}async _searchByType(e,r,n){try{E("info",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}'\uFF0C\u5173\u952E\u8BCD '${e}'`);let s={keyword:e,search_type:r},i=this._getWbiSignedParams(s,n),o=`https://api.bilibili.com/x/web-interface/wbi/search/type?${Object.keys(i).map(d=>`${encodeURIComponent(d)}=${encodeURIComponent(i[d])}`).join("&")}`,c=await Ae(o,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),u=typeof c.data=="string"?JSON.parse(c.data):c.data;if(u.code!==0||!u.data?.result)return E("info",`[Bilibili] \u7C7B\u578B '${r}' \u65E0\u7ED3\u679C (Code: ${u.code})`),[];let l=[];for(let d of u.data.result){let f=d.season_id?`ss${d.season_id}`:d.bvid?`bv${d.bvid}`:"";if(!f)continue;let m=this._extractMediaType(d.season_type_name),p=m==="\u7535\u5F71"?1:d.ep_size||0,h=null;try{d.pubdate?typeof d.pubdate=="number"?h=new Date(d.pubdate*1e3).getFullYear():typeof d.pubdate=="string"&&d.pubdate.length>=4&&(h=parseInt(d.pubdate.substring(0,4))):d.pubtime&&(h=new Date(d.pubtime*1e3).getFullYear())}catch{}let y=Nf((d.title||"").replace(/<[^>]+>/g,"")).replace(/:/g,"\uFF1A").trim(),g=Nf((d.org_title||"").replace(/<[^>]+>/g,"")).trim(),A={provider:"bilibili",mediaId:f,mdId:d.media_id?`md${d.media_id}`:null,title:y,org_title:g,type:m,year:h,imageUrl:d.cover||null,episodeCount:p};d.eps&&d.eps.length>0&&(A._eps=d.eps),l.push(A)}return E("info",`[Bilibili] \u7C7B\u578B '${r}' \u627E\u5230 ${l.length} \u4E2A\u7ED3\u679C`),l}catch(s){return E("error",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}' \u5931\u8D25:`,s.message),[]}}_extractMediaType(e){let r=(e||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u756A\u5267")||r.includes("\u56FD\u521B")||r.includes("\u52A8\u6F2B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":r.includes("\u7EFC\u827A")||r.includes("variety")?"\u7EFC\u827A":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(e){let r=[];O.useBangumiData&&(r=await ku(e,["bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"]),E("info",`[Bilibili] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(s=>["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(s.matchedSiteKey));try{E("info",`[Bilibili] \u5F00\u59CB\u641C\u7D22: ${e}`);let s=await this._getWbiMixinKey(),i=this._searchByType(e,"media_bangumi",s),a=this._searchByType(e,"media_ft",s),o=Promise.resolve([]);this._hasBilibiliProxy()&&(E("info","[Bilibili] \u68C0\u6D4B\u5230\u4EE3\u7406\u914D\u7F6E\uFF0C\u542F\u7528\u6E2F\u6FB3\u53F0\u5E76\u884C\u641C\u7D22"),o=this._searchOversea(e,n.length>0));let c=(await Promise.all([i,a,o])).flat(),u=[],l=new Set,d=new Set;for(let m of c){if(!m||!m.mediaId&&!m.season_id)continue;let p=r.find(y=>m.mdId&&m.mdId===`md${y.siteId}`)||r.find(y=>m.org_title&&y.title===m.org_title);if(p){let g=(p.titles.find(A=>A&&A.includes(e))||p.titles[1]||p.title)+(p.titleSuffix||"");m.title=g,m._displayTitle=g,m.aliases=[...p.titles],m.type=p.typeStr||m.type,m.isLocalPriority=!0,d.add(`md${p.siteId}`),E("info",`[Bilibili] \u7F51\u7EDC\u7ED3\u679C [${m.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}let h=m.mediaId||(m.season_id?`ss${m.season_id}`:null);h&&l.has(h)||(h&&l.add(h),u.push(m))}let f=r.filter(m=>!d.has(`md${m.siteId}`));if(f.length>0){let m=f.filter(h=>h.season_id),p=f.filter(h=>!h.season_id);if(m.length>0){E("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${m.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5....\uFF08\u5305\u542B season_id \uFF09`);for(let h of m){let g=(h.titles.find(x=>x&&x.includes(e))||h.titles[1]||h.title)+(h.titleSuffix||""),A={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},b=A.mediaId;b&&!l.has(b)&&(l.add(b),u.unshift(A))}}if(p.length>0){E("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${p.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5...`);let h=p.map(async g=>{let A=await this._resolveMediaInfo(g.siteId),x=(g.titles.find(S=>S&&S.includes(e))||g.titles[1]||g.title)+(g.titleSuffix||"");return{provider:"bilibili",mediaId:A.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:A.cover,episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(g.matchedSiteKey),isLocalPriority:!0}}),y=await Promise.all(h);for(let g of y){let A=g.mediaId;A&&l.has(A)||A&&(l.add(A),u.unshift(g))}}}return E("info",`[Bilibili] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${u.length} \u4E2A\u6709\u6548\u7ED3\u679C`),u}catch(s){return E("error","[Bilibili] \u641C\u7D22\u51FA\u9519:",s.message),[]}}async _resolveMediaInfo(e){try{let r=await Ae(`https://api.bilibili.com/pgc/review/user?media_id=${e}`),n=typeof r.data=="string"?JSON.parse(r.data):r.data;if(n.code===0&&n.result&&n.result.media){let s=n.result.media;return{seasonId:`ss${s.season_id}`,cover:s.cover||s.horizontal_picture||""}}}catch(r){E("error",`[Bilibili] \u83B7\u53D6\u5A92\u4F53\u4FE1\u606F\u5931\u8D25 (md${e}):`,r.message)}return{seasonId:null,cover:""}}async _getPgcEpisodes(e){let r=[],n=[`https://api.bilibili.com/pgc/view/web/season?season_id=${e}`,`https://api.bilibili.com/pgc/web/season/section?season_id=${e}`];for(let i of n)try{let a=await Ae(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.code===0&&o.result&&(r=o.result.main_section?.episodes||o.result.episodes||[],o.result.cover&&(r._cover=o.result.cover),r.length>0))break}catch{}if(r.length===0)return E("error",`[Bilibili] \u83B7\u53D6\u756A\u5267\u5206\u96C6\u5931\u8D25 (season_id=${e}): \u6240\u6709\u63A5\u53E3\u5747\u65E0\u6570\u636E`),[];let s=r.map((i,a)=>{let o="";if(i.show_title)o=i.show_title;else{let c=i.title||String(a+1),u=i.long_title||"";o=/^\d+(\.\d+)?$/.test(c)?`\u7B2C${c}\u8BDD`:c,u&&u!==c&&(o+=` ${u}`)}return{vid:`${i.aid},${i.cid}`,id:i.id,title:o.trim(),link:`https://www.bilibili.com/bangumi/play/ep${i.id}`}});return r._cover&&(s._cover=r._cover),E("info",`[Bilibili] \u83B7\u53D6\u5230 ${s.length} \u4E2A\u756A\u5267\u5206\u96C6`),s}async _getUgcEpisodes(e){try{let r=`https://api.bilibili.com/x/web-interface/view?bvid=${e}`,n=await Ae(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(s.code!==0||!s.data)return E("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u5931\u8D25 (bvid=${e}):`,s.message),[];let i=s.data.pages||[];if(i.length===0)return E("info",`[Bilibili] \u89C6\u9891 bvid=${e} \u65E0\u5206\u96C6\u6570\u636E`),[];let a=i.map((o,c)=>({vid:`${s.data.aid},${o.cid}`,id:o.cid,title:(o.part||`P${o.page}`).trim(),link:`https://www.bilibili.com/video/${e}?p=${o.page}`}));return E("info",`[Bilibili] \u83B7\u53D6\u5230 ${a.length} \u4E2A\u89C6\u9891\u5206\u96C6`),a}catch(r){return E("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u51FA\u9519 (bvid=${e}):`,r.message),[]}}async getEpisodes(e){if(e.startsWith("md")){let r=e.substring(2),n=await this._resolveMediaInfo(r);if(n.seasonId){let s=await this._getPgcEpisodes(n.seasonId.substring(2));return s._cover=n.cover,s}return[]}if(e.startsWith("ss")){let r=e.substring(2);return await this._getPgcEpisodes(r)}else if(e.startsWith("bv")){let r=e.substring(2);return await this._getUgcEpisodes(r)}return E("error",`[Bilibili] \u4E0D\u652F\u6301\u7684 ID \u683C\u5F0F: ${e}`),[]}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Bilibili] sourceAnimes is not a valid array"),[];e.forEach(d=>{d.aliases=d.aliases||[],d.title&&!d.aliases.includes(d.title)&&d.aliases.push(d.title),d.org_title&&!d.aliases.includes(d.org_title)&&d.aliases.push(d.org_title)});let o=e.length>0?e[0]._tmdbCnAlias:null;U1(e,o);let c=e.filter(d=>d.isOversea||Ct(d.title,r,i)||d.aliases&&d.aliases.some(f=>Ct(f,r,i))),u=i!==null?i:Ut(r);if(u!==null){let d=c.filter(f=>{let m=f._displayTitle||f.title,p=Tt(m).season;return p===u||u===1&&p===null});d.length>0&&(c=d,E("info",`[Bilibili] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=c.map(async d=>{try{let f=[],m=d.checkMore?.content?.includes("\u67E5\u770B\u5168\u90E8");if(d._eps&&d._eps.length>0&&!m){f=d._eps.map((A,b)=>{let x;d.isOversea&&A.position?x=A.position.toString():x=A.index_title||A.index||(b+1).toString();let S=A.title||A.index_title||x,T=A.long_title||"",I=/^\d+(\.\d+)?$/.test(S)?`\u7B2C${S}\u8BDD`:S;T&&T!==S&&(I+=` ${T}`);let R=A.id||A.param,N=`https://www.bilibili.com/bangumi/play/ep${R}?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(N+="&area=hkmt"),{name:x,url:N,title:`\u3010bilibili1\u3011 ${I.trim()}`,_id:parseInt(R,10)||0}});let g=f.map(A=>Cf(A.name));g.every(A=>A!==null)?(f.forEach((A,b)=>A._sortKey=g[b]),f.sort((A,b)=>A._sortKey-b._sortKey)):f.sort((A,b)=>A._id-b._id),E("info",`[Bilibili] \u76F4\u63A5\u4F7F\u7528\u641C\u7D22\u7ED3\u679C\u4E2D\u7684 ${f.length} \u96C6\u5206\u96C6`)}else{let g=await this.getEpisodes(d.mediaId);if(g.length===0){E("info",`[Bilibili] ${d.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}g._cover&&(d.imageUrl=g._cover),f=g.map((A,b)=>{let x=A.link+`?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(x+="&area=hkmt"),{name:`${b+1}`,url:x,title:`\u3010bilibili1\u3011 ${A.title}`,_id:parseInt(A.id,10)||0}}),f.sort((A,b)=>A._id-b._id)}if(f.length===0)return;let p=zr(d.mediaId),h=d._displayTitle||Vt(d.title),y={animeId:p,bangumiId:d.mediaId,animeTitle:`${h}(${d.year||"N/A"})\u3010${d.type}\u3011from bilibili`,type:d.type,typeDescription:d.type,imageUrl:d.imageUrl,startDate:Br(d.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"bilibili",aliases:d.aliases};a.push(y),Dt({...y,links:f},s),O.animes.length>O.MAX_ANIMES&&Lt()}catch(f){E("error",`[Bilibili] \u5904\u7406 ${d.title} \u5931\u8D25:`,f.message)}});return await Promise.all(l),this.sortAndPushAnimesByYear(a,n),a}async _extractVideoInfo(e){E("info","[Bilibili] \u63D0\u53D6B\u7AD9\u89C6\u9891\u4FE1\u606F...",e);let r="https://api.bilibili.com/x/web-interface/view",n="https://api.bilibili.com/pgc/view/web/season",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),E("info","[Bilibili] ",a);else return E("error","[Bilibili] Invalid URL"),null;let o,c,u,l;if(e.includes("video/"))try{let d=e.split("?")[1],f=1;if(d){let y=d.split("&");for(let g of y){let[A,b]=g.split("=");A==="p"&&(f=b||1)}}E("info",`[Bilibili] p: ${f}`);let m;e.includes("BV")?m=`${r}?bvid=${a[2]}`:(c=a[2].substring(2),m=`${r}?aid=${a[2].substring(2)}`);let p=await Ae(m,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),h=typeof p.data=="string"?JSON.parse(p.data):p.data;if(h.code!==0)return E("error","[Bilibili] \u83B7\u53D6\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",h.message),null;u=h.data.duration,o=h.data.pages[f-1].cid}catch(d){return E("error","[Bilibili] \u8BF7\u6C42\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ep"))try{let d=a.slice(-1)[0].slice(2),f=e.split("?")[1]||"",m=null,p=!1;f.split("&").forEach(y=>{let[g,A]=y.split("=");g==="season_id"&&(m=A),g==="area"&&A==="hkmt"&&(p=!0)});let h=!1;if(!p){let y=await Ae(`${n}?ep_id=${d}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0"}}),g=typeof y.data=="string"?JSON.parse(y.data):y.data;if(g.code===0&&g.result){let A=g.result.episodes.find(b=>b.id==d);A&&(o=A.cid,u=A.duration/1e3,l=A.share_copy,h=!0)}}if((!h||p)&&m&&this._hasBilibiliProxy()){try{let y=this._makeProxyUrl(`https://api.bilibili.com/pgc/view/web/season?season_id=${m}`),g=await Ae(y,{headers:{Cookie:O.bilibliCookie||"","User-Agent":"Mozilla/5.0"}}),A=typeof g.data=="string"?JSON.parse(g.data):g.data;if(A.code===0&&A.result){let b=(A.result.episodes||A.result.main_section?.episodes||[]).find(x=>x.id==d);b&&(o=b.cid,c=b.aid,u=b.duration/1e3,l=b.long_title,h=!0)}}catch{}if(!h)try{let y=await Ae(`https://api.bilibili.com/pgc/web/season/section?season_id=${m}`,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||""}}),g=typeof y.data=="string"?JSON.parse(y.data):y.data;if(g.code===0&&g.result?.main_section?.episodes){let A=g.result.main_section.episodes.find(b=>b.id==d);A&&(o=A.cid,c=A.aid,u=A.duration?A.duration/1e3:0,l=A.long_title,h=!0)}}catch{}}if(!o)return E("error","[Bilibili] \u672A\u627E\u5230\u5339\u914D\u7684\u756A\u5267\u96C6\u4FE1\u606F"),null;!u&&u!==0&&(u=0)}catch(d){return E("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ss"))try{let d=a.slice(-1)[0].slice(2).split("?")[0],f=`${n}?season_id=${d}`;E("info",`[Bilibili] \u83B7\u53D6\u756A\u5267\u4FE1\u606F: season_id=${d}`);let m=await Ae(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),p=typeof m.data=="string"?JSON.parse(m.data):m.data;if(p.code!==0)return E("error","[Bilibili] \u83B7\u53D6\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",p.message),null;if(!p.result.episodes||p.result.episodes.length===0)return E("error","[Bilibili] \u756A\u5267\u6CA1\u6709\u53EF\u7528\u7684\u96C6\u6570"),null;let h=p.result.episodes[0];o=h.cid,u=h.duration/1e3,l=h.share_copy,E("info",`[Bilibili] \u4F7F\u7528\u7B2C\u4E00\u96C6: ${l}, cid=${o}`)}catch(d){return E("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else return E("error","[Bilibili] \u4E0D\u652F\u6301\u7684B\u7AD9\u89C6\u9891\u7F51\u5740\uFF0C\u4EC5\u652F\u6301\u666E\u901A\u89C6\u9891(av,bv)\u3001\u5267\u96C6\u89C6\u9891(ep,ss)"),null;return E("info",`[Bilibili] \u63D0\u53D6\u89C6\u9891\u4FE1\u606F\u5B8C\u6210: cid=${o}, aid=${c}, duration=${u}`),{cid:o,aid:c,duration:u,title:l}}async getEpisodeDanmu(e){E("info","[Bilibili] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42B\u7AD9\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Bilibili] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=6,i=[];for(let a=0;a<n.length;a+=s){let c=n.slice(a,a+s).map(d=>this.getEpisodeSegmentDanmu(d).then(f=>({status:"ok",value:f})).catch(f=>({status:"err",error:f}))),u=await Promise.all(c),l=!1;for(let d of u)d.status==="ok"&&d.value?i.push(...d.value):(E("info","[Bilibili] \u6355\u83B7\u5230\u5206\u6BB5\u8BF7\u6C42\u51FA\u9519\uFF0C\u8BF4\u660E\u8BF7\u6C42\u5B8C\u6BD5\uFF0C\u505C\u6B62\u540E\u7EED\u8BF7\u6C42"),l=!0);if(l)break}return i}async getEpisodeDanmuSegments(e){if(E("info","[Bilibili] \u83B7\u53D6B\u7AD9\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),typeof e=="string"&&e.includes("/combine?")){let c=[],u=0,l=0,d=e.startsWith("http")?e:`https://www.bilibili.com${e}`,f=new URL(d);for(let[m,p]of f.searchParams.entries()){if(!m.startsWith("cid"))continue;let h=m.substring(3),[y,g]=p.split("-"),A=parseFloat(y)||0,b=parseFloat(g)||0,x=b-A;if(x<=0)continue;l+=x;let S=Math.ceil(b/360);for(let T=0;T<S;T++){let I=`#combine_start=${A}&combine_end=${b}&combine_offset=${u}`;c.push({type:"bilibili1",segment_start:T*360,segment_end:Math.min((T+1)*360,b),url:`https://api.bilibili.com/x/v2/dm/web/seg.so?type=1&oid=${h}&segment_index=${T+1}${I}`})}u+=x}return new vt({type:"bilibili1",duration:l,segmentList:c})}let r=await this._extractVideoInfo(e);if(!r)return new vt({type:"bilibili1",segmentList:[]});let{cid:n,aid:s,duration:i}=r;E("info",`[Bilibili] \u89C6\u9891\u4FE1\u606F: cid=${n}, aid=${s}, duration=${i}`),i<=0&&E("info","[Bilibili] \u672A\u83B7\u53D6\u5230\u7CBE\u51C6\u65F6\u957F\uFF0C\u4F7F\u7528\u9884\u8BBE 36 \u5206\u6BB5");let a=i>0?Math.ceil(i/360):36;E("info",`[Bilibili] maxLen: ${a}`);let o=[];for(let c=0;c<a;c+=1){let u;s?u=`https://api.bilibili.com/x/v2/dm/web/seg.so?type=1&oid=${n}&pid=${s}&segment_index=${c+1}`:u=`https://api.bilibili.com/x/v2/dm/web/seg.so?type=1&oid=${n}&segment_index=${c+1}`,o.push({type:"bilibili1",segment_start:c*360,segment_end:i>0?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 Ae(n,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Cookie:O.bilibliCookie},base64Data:!0,retries:1}),i=[];if(s&&s.data&&(i=YUe(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 m=f-o+u;if(d.p&&typeof d.p=="string"){let p=d.p.split(",");p[0]=m.toFixed(5),d.p=p.join(",")}d.t!==void 0&&(d.t=m),d.progress!==void 0&&(d.progress=Math.round(m*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=Vt(r.m)),r.like=r.like_num,r))}_makeProxyUrl(e){return O.makeProxyUrl(e)}_hasBilibiliProxy(){return(O.proxyUrl||"").split(",").some(e=>{let r=e.trim();return r.startsWith("bilibili@")||r.startsWith("@")})}_javaUrlEncode(e){return encodeURIComponent(e).replace(/!/g,"%21").replace(/'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/\*/g,"%2A").replace(/%20/g,"+")}async _searchOverseaRequest(e,r,n,s="Original",i=null){let o=(O.bilibliCookie||"").match(/([0-9a-fA-F]{32})/);if(!((O.proxyUrl||"").includes("bilibili@")||(O.proxyUrl||"").includes("@")))return[];if(o){E("info",`[Bilibili-Proxy][${s}] \u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 APP \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${r})...`);try{let u={keyword:e,type:r,area:"tw",mobi_app:"android",platform:"android",build:"8140200",ts:Math.floor(Date.now()/1e3),appkey:t.APP_KEY,access_key:o[1],disable_rcmd:1},l=Object.keys(u).sort().map(h=>`${h}=${this._javaUrlEncode(String(u[h]))}`).join("&"),d=ss(l+t.APP_SEC),f=`https://app.bilibili.com/x/v2/search/type?${l}&sign=${d}`,m=O.makeProxyUrl(f),p=await this._fetchAppSearchWithStream(m,{"User-Agent":"Mozilla/5.0 Android","X-From-Biliroaming":"1.0.0"},s,i);if(p&&p.code===0)return(p.data?.items||p.data?.result||p.data||[]).filter(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:Nf((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:Nf((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);p&&p.code!==0&&E("warn",`[Bilibili-Proxy] App \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${p.code}: ${p.message}`)}catch(u){if(u.name==="AbortError")throw u;E("error",`[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}`)}E("info","[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5931\u8D25\uFF0C\u81EA\u52A8\u964D\u7EA7\u81F3 Web \u63A5\u53E3...")}else E("info",`[Bilibili-Proxy][${s}] \u672A\u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 Web \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${n})...`);try{let u={keyword:e,search_type:n,area:"tw",page:1,order:"totalrank",__refresh__:!0,_timestamp:Date.now()},d=`https://api.bilibili.com/x/web-interface/search/type?${Object.keys(u).map(h=>`${encodeURIComponent(h)}=${encodeURIComponent(u[h])}`).join("&")}`,f=O.makeProxyUrl(d),m=await Ae(f,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||"","X-From-Biliroaming":"1.0.0"},signal:i}),p=typeof m.data=="string"?JSON.parse(m.data):m.data;if(p.code!==0)return E("warn",`[Bilibili-Proxy] Web \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${p.code}: ${p.message}`),[];if(p.data?.result)return p.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:Nf((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:Nf((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.pubtime?new Date(h.pubtime*1e3).getFullYear():null,imageUrl:h.cover||null,episodeCount:h.ep_size||0,_eps:h.eps,isOversea:!0})).filter(h=>h.mediaId)}catch(u){if(u.name==="AbortError")throw u;E("error",`[Bilibili-Proxy] Web \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}\uFF08\u5982\u679C\u662F-500/-502\u8BF4\u660E\u53EA\u662F\u98CE\u63A7\uFF09`)}return[]}async _searchOversea(e,r=!1){let n=new AbortController,s=r?[{appType:8,webType:"media_ft"}]:[{appType:7,webType:"media_bangumi"},{appType:8,webType:"media_ft"}],i=Promise.all(s.map(async(o,c)=>(c>0&&await new Promise(u=>setTimeout(u,c*300)),this._searchOverseaRequest(e,o.appType,o.webType,"Original")))).then(o=>{let c=o.flat();return c.length&&n.abort(),c.forEach(u=>u._originalQuery=e),c}).catch(()=>[]),a=O.tmdbApiKey?new Promise(o=>setTimeout(o,100)).then(async()=>{let o=await $1(e,n.signal,"Bilibili");if(o&&o.title&&o.title!==e){let{title:c,cnAlias:u}=o,l=s.map(async(f,m)=>(m>0&&await new Promise(p=>setTimeout(p,m*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 sJ!="function")return null;let i=!1,a=!1,o=await sJ(e,{headers:r,sniffLimit:8192,signal:s},c=>i?!0:c.includes('"goto":"recommend_tips"')||c.includes("\u6682\u65E0\u641C\u7D22\u7ED3\u679C")?(E("info",`[Bilibili-Proxy][${n}] \u55C5\u63A2\u5230\u65E0\u6548\u6570\u636E\uFF0C\u4E2D\u65AD`),a=!0,!1):((c.includes('"season_id"')||c.includes('"episodes"'))&&(i=!0),!0));return a?{code:0,data:{items:[]}}:o}};kt();Et();fr();sn();Ns();Un();xs();var cy=class extends wt{convertYoukuUrl(e){let r=e.match(/vid=([^&]+)/);return!r||!r[1]?null:`https://v.youku.com/v_show/id_${r[1]}.html`}filterYoukuSearchItem(e,r){let n=e.commonData;if(!n||!n.titleDTO||n.isYouku!==1&&n.hasYouku!==1)return null;let s=n.titleDTO.displayName;if(["\u4E2D\u914D\u7248","\u62A2\u5148\u770B","\u975E\u6B63\u7247","\u89E3\u8BFB","\u63ED\u79D8","\u8D4F\u6790","\u300A"].some(f=>s.includes(f)))return null;let a=n.feature.match(/[12][890][0-9][0-9]/),o=a?parseInt(a[0]):null,c=s.replace(/<[^>]+>/g,"").replace(/【.+?】/g,"").trim().replace(/:/g,"\uFF1A"),u="\u7535\u89C6\u5267",l=(n.cats||"").toLowerCase(),d=(n.feature||"").toLowerCase();return l.includes("\u52A8\u6F2B")||l.includes("anime")?u="\u52A8\u6F2B":l.includes("\u7535\u5F71")||l.includes("movie")?u="\u7535\u5F71":l.includes("\u7535\u89C6\u5267")||l.includes("drama")?u="\u7535\u89C6\u5267":l.includes("\u7EFC\u827A")||l.includes("variety")?u="\u7EFC\u827A":d.includes("\u52A8\u6F2B")?u="\u52A8\u6F2B":d.includes("\u7535\u5F71")?u="\u7535\u5F71":d.includes("\u7535\u89C6\u5267")?u="\u7535\u89C6\u5267":d.includes("\u7EFC\u827A")&&(u="\u7EFC\u827A"),{provider:"youku",mediaId:n.showId,title:c,type:u,year:o,imageUrl:n.posterDTO?n.posterDTO.vThumbUrl:null,episodeCount:n.episodeTotal,cats:n.cats}}async search(e){try{E("info",`[Youku] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=encodeURIComponent(e),n=encodeURIComponent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"),s=`https://search.youku.com/api/search?keyword=${r}&userAgent=${n}&site=1&categories=0&ftype=0&ob=0&pg=1`,i=await Ae(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Accept:"application/json",Referer:"https://www.youku.com/"}});if(!i||!i.data)return E("info","[Youku] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.pageComponentList)return E("info","[Youku] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[];for(let c of a.pageComponentList){let u=this.filterYoukuSearchItem(c,e);u&&o.push(u)}return E("info",`[Youku] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return E("error","[Youku] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Youku] \u83B7\u53D6\u5206\u96C6\u5217\u8868: show_id=${e}`);let r=100,n=await this._getEpisodesPage(e,1,r);if(!n||!n.videos||n.videos.length===0)return E("info","[Youku] \u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];let s=[...n.videos],i=n.total;if(i>r){let a=Math.ceil(i/r);E("info",`[Youku] \u68C0\u6D4B\u5230 ${i} \u4E2A\u5206\u96C6\uFF0C\u5C06\u5E76\u53D1\u8BF7\u6C42 ${a} \u9875`);let o=[];for(let u=2;u<=a;u++)o.push(this._getEpisodesPage(e,u,r));let c=await Promise.allSettled(o);for(let u=0;u<c.length;u++){let l=c[u];l.status==="fulfilled"&&l.value&&l.value.videos?s.push(...l.value.videos):l.status==="rejected"&&E("error",`[Youku] \u83B7\u53D6\u5206\u96C6\u9875\u9762 ${u+2} \u5931\u8D25:`,l.reason)}E("info",`[Youku] \u5E76\u53D1\u83B7\u53D6\u5B8C\u6210\uFF0C\u5171\u83B7\u53D6 ${s.length} \u4E2A\u5206\u96C6`)}return E("info",`[Youku] \u5171\u83B7\u53D6 ${s.length} \u96C6`),s}catch(r){return E("error","[Youku] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getEpisodesPage(e,r,n){let s=`https://openapi.youku.com/v2/shows/videos.json?client_id=53e6cc67237fc59a&package=com.huawei.hwvplayer.youku&ext=show&show_id=${e}&page=${r}&count=${n}`,i=await Ae(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!i||!i.data?null:typeof i.data=="string"?JSON.parse(i.data):i.data}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Youku] sourceAnimes is not a valid array"),[];let o=e.filter(l=>Ct(l.title,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Youku] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=this._extractMediaType(l.cats,l.type),m=this._processAndFormatEpisodes(d,f),p=[];for(let h of m){let y=h.link||`https://v.youku.com/v_show/id_${h.vid}.html`;p.push({name:h.episodeIndex.toString(),url:y,title:`\u3010youku\u3011 ${h.title}`})}if(p.length>0){let y={animeId:zr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from youku`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:p.length,rating:0,isFavorited:!0,source:"youku"};a.push(y),Dt({...y,links:p},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(d){E("error",`[Youku] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}_processAndFormatEpisodes(e,r="variety"){return[...e].map((i,a)=>{let o=a+1,c=this._formatEpisodeTitle(i,o,r);return{vid:i.id,title:c,episodeIndex:o,link:i.link}})}_formatEpisodeTitle(e,r,n){let s=e.displayName||e.title,i=/^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*(?=(?:第\d+期))|^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*:\s*/;if(s=s.replace(i,"").trim(),n==="movie")return s;if(n==="variety"){let a=s.match(/第(\d+)期/);return a?`\u7B2C${a[1]}\u671F ${e.published?.split(" ")[0]??""} ${s}`:`\u7B2C${r}\u671F ${e.published?.split(" ")[0]??""} ${s}`}return/^第\d+集/.test(s)?s:`\u7B2C${r}\u96C6 ${s}`}_extractMediaType(e,r){let n=(e||"").toLowerCase(),s=(r||"").toLowerCase();return n.includes("\u7EFC\u827A")||n.includes("variety")?"variety":n.includes("\u7535\u5F71")||n.includes("movie")?"movie":n.includes("\u52A8\u6F2B")||n.includes("anime")?"anime":n.includes("\u7535\u89C6\u5267")||n.includes("drama")?"drama":s.includes("\u7EFC\u827A")?"variety":s.includes("\u7535\u5F71")?"movie":s.includes("\u52A8\u6F2B")?"anime":(s.includes("\u7535\u89C6\u5267"),"drama")}async getEpisodeDanmu(e){if(E("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5F39\u5E55...",e),!e)return[];let n=(await this.getEpisodeDanmuSegments(e)).segmentList,s=[],i=O.youkuConcurrency,a=[...n];for(let o=0;o<a.length;o+=i){let c=a.slice(o,o+i).map(async u=>{let l=await Gr(u.url,Ci({data:u.data}),{headers:{Cookie:`_m_h5_tk=${u._m_h5_tk};_m_h5_tk_enc=${u._m_h5_tk_enc};`,Referer:"https://v.youku.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1,retries:1}),d=[];if(l.data?.data&&l.data.data.result){let f=JSON.parse(l.data.data.result);f.code!=="-1"&&d.push(...f.data.result)}return d});try{let u=await Promise.allSettled(c);for(let l of u)l.status==="fulfilled"&&Array.isArray(l.value)&&(s=s.concat(l.value))}catch(u){E("error","[Youku] \u4F18\u9177\u5206\u6BB5\u6279\u91CF\u8BF7\u6C42\u5931\u8D25:",u.message)}}return ns(s),s}async getEpisodeDanmuSegments(e){if(E("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(""),E("info","[Youku]",a);else return E("error","[Youku] Invalid URL"),[];let o=a[a.length-1].split(".")[0].slice(3);E("info",`[Youku] video_id: ${o}`);let c;try{let x=`${r}?client_id=53e6cc67237fc59a&video_id=${o}&package=com.huawei.hwvplayer.youku&ext=show`;c=await Ae(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 E("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;E("info",`[Youku] \u6807\u9898: ${l}, \u65F6\u957F: ${d}`);let f,m,p;try{let x="https://log.mmstat.com/eg.js",S="https://acs.youku.com/h5/mtop.com.youku.aplatform.weakget/1.0/?jsv=2.5.1&appKey=24679788",T=await Ae(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});E("info",`[Youku] cnaRes: ${JSON.stringify(T)}`),E("info",`[Youku] cnaRes.headers: ${JSON.stringify(T.headers)}`);let I=T.headers.etag||T.headers.Etag;E("info",`[Youku] etag: ${I}`),f=I.replace(/^"|"$/g,""),E("info",`[Youku] cna: ${f}`);let R;for(;!R;)R=await Ae(S,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});E("info",`[Youku] tkEncRes: ${JSON.stringify(R)}`),E("info",`[Youku] tkEncRes.headers: ${JSON.stringify(R.headers)}`);let N=R.headers["set-cookie"]||R.headers["Set-Cookie"];E("info",`[Youku] tkEncSetCookie: ${N}`);let k=N.match(/_m_h5_tk_enc=([^;]+)/);m=k?k[1]:null;let B=N.match(/_m_h5_tk=([^;]+)/);p=B?B[1]:null,E("info",`[Youku] _m_h5_tk_enc: ${m}`),E("info",`[Youku] _m_h5_tk: ${p}`)}catch(x){return E("error","[Youku] \u83B7\u53D6 cna \u6216 tk_enc \u5931\u8D25:",x),[]}let h=60,y=Math.floor(d/h)+1,g=[],A=async x=>{let S={ctime:Date.now(),ctype:10004,cver:"v1.0",guid:f,mat:x,mcount:1,pid:0,sver:"3.1.0",type:1,vid:o},T=JSON.stringify(S);function I(Z){let W="";for(let U=0;U<Z.length;U++)Z.charCodeAt(U)>255?W+=encodeURIComponent(Z[U]):W+=Z[U];return W}function R(Z){let W="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",U="",V=0,j=0;for(let J=0;J<Z.length;J++)for(V=V<<8|Z.charCodeAt(J),j+=8;j>=6;)U+=W[V>>j-6&63],j-=6;for(j>0&&(U+=W[V<<6-j&63]);U.length%4!==0;)U+="=";return U}let N=R(I(T));S.msg=N,S.sign=ss(`${N}MkmC9SoIw6xCkSKHhJ7b5D2r51kBiREr`).toString().toLowerCase();let k=JSON.stringify(S),B=Date.now(),M={jsv:"2.5.6",appKey:"24679788",t:B,sign:ss([p.slice(0,32),B,"24679788",k].join("&")).toString().toLowerCase(),api:"mopen.youku.danmu.list",v:"1.0",type:"originaljson",dataType:"jsonp",timeout:"20000",jsonpIncPrefix:"utility"},P=Ci(M),L=`${n}?${P}`;return E("info",`[Youku] piece_url: ${L}`),{type:"youku",segment_start:x*h,segment_end:Math.min((x+1)*h,d),url:L,data:k,_m_h5_tk:p,_m_h5_tk_enc:m}},b=Array.from({length:y},(x,S)=>S);for(let x=0;x<b.length;x++){let S=await A(b[x]);g.push(S)}return new vt({type:"youku",segmentList:g})}async getEpisodeSegmentDanmu(e){E("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5206\u6BB5\u5F39\u5E55...",e.url);let r=await Gr(e.url,Ci({data:e.data}),{headers:{Cookie:`_m_h5_tk=${e._m_h5_tk};_m_h5_tk_enc=${e._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}),n=[];if(r.data?.data&&r.data.data.result){let s=JSON.parse(r.data.data.result);s.code!=="-1"&&n.push(...s.data.result)}return n}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:""};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})}};sn();var bmn=new sy,_mn=new iy,Emn=new ay,vmn=new oy,Smn=new cy,Imn=new ny,Q6=`LogVar Danmu API/${O.version}`,fw=class extends wt{async search(e,r=!1){if(O.useBangumiData&&!r){let n=await ku(e,["anidb"]);if(n.length>0)return E("info",`[Dandan] Bangumi-Data \u672C\u5730\u547D\u4E2D ${n.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`),n.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||s.titles[1]||s.title)+(s.titleSuffix||"");return{animeId:parseInt(s.siteId),animeTitle:a,type:s.typeId,typeDescription:s.typeStr,imageUrl:"",startDate:s.begin,rating:0,aliases:[...s.titles]}})}try{E("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`);let n=new AbortController,s=(async()=>{try{let c=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":Q6},retries:1});if(!c||!c.data)return E("info","[Dandan] \u539F\u59CB\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: original)"),{success:!1,source:"original"};if(!c.data.animes||c.data.animes.length===0)return E("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"};n.abort();let u=c.data.animes;return E("info",`[Dandan] dandanSearchresp (original): ${JSON.stringify(u)}`),E("info",`[Dandan] \u8FD4\u56DE ${u.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:u,source:"original"}}catch(c){return E("error","[Dandan] getDandanAnimes error:",{message:c.message,name:c.name,stack:c.stack}),{success:!1,source:"original"}}})(),i=(async()=>{try{await new Promise(m=>setTimeout(m,100));let c=await $1(e,n.signal,"Dandan");if(!c||!c.title)return E("info","[Dandan] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:u,cnAlias:l}=c;E("info",`[Dandan] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u901A\u8FC7 episodes \u63A5\u53E3\u8FDB\u884C\u641C\u7D22: ${u}`);let d=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/episodes?anime=${encodeURIComponent(u)}`,{headers:{"Content-Type":"application/json","User-Agent":Q6},signal:n.signal,retries:1});if(!d||!d.data)return E("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: tmdb)"),{success:!1,source:"tmdb"};if(!d.data.animes||d.data.animes.length===0)return E("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"};let f=d.data.animes;for(let m of f)m.isTmdbSource=!0,m._tmdbCnAlias=l;return E("info",`[Dandan] dandanSearchresp (tmdb): ${JSON.stringify(f)}`),E("info",`[Dandan] \u8FD4\u56DE ${f.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:f,source:"tmdb"}}catch(c){if(c.name==="AbortError")return E("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0};throw c}})(),[a,o]=await Promise.all([s,i]);if(a.success)return a.data;if(o.success)return o.data;if(E("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (\u5F53\u524D\u641C\u7D22\u8BCD: ${e})`),!r){let c=e.replace(/(?:第\s*[0-9一二三四五六七八九十百千万]+\s*[季期部])|(?:S(?:eason)?\s*\d+)|(?:Part\s*\d+)/gi,"").trim();if(c&&c!==e)return E("info",`[Dandan] \u5C1D\u8BD5\u53BB\u9664\u5B63\u5EA6\u4FE1\u606F\u8FDB\u884C\u964D\u7EA7\u641C\u7D22: ${c}`),await this.search(c,!0)}return[]}catch(n){return E("error","[Dandan] getDandanAnimes error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async getEpisodes(e){try{let r=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":Q6},retries:1});if(!r||!r.data)return E("info","[Dandan] getDandanEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};if(!r.data.bangumi)return E("info","[Dandan] getDandanEposides: bangumi \u6570\u636E\u4E0D\u5B58\u5728"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};let n=r.data.bangumi,s=Array.isArray(n.episodes)?n.episodes:[],i=Array.isArray(n.titles)?n.titles.map(f=>f.title):[],a=Array.isArray(n.relateds)?n.relateds:[],o=n.type||null,c=n.typeDescription||null,u=!1,l=!1;n.tags&&Array.isArray(n.tags)&&n.tags.forEach(f=>{f.name&&f.name.toUpperCase().includes("3D")&&(u=!0),f.name&&f.name.toUpperCase().includes("2D")&&(l=!0)}),u?c="3D"+(c||""):l&&(c="2D"+(c||""));let d=n.imageUrl||null;return E("info",`[Dandan] getDandanEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),{episodes:s,titles:i,relateds:a,type:o,typeDescription:c,imageUrl:d}}catch(r){return E("error","[Dandan] getDandanEposides error:",{message:r.message,name:r.name,stack:r.stack}),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null,imageUrl:null}}}calculateSimilarity(e,r){if(!e||!r)return 0;let n=new Set(e.toLowerCase()),s=new Set(r.toLowerCase()),i=[...n].filter(o=>s.has(o)).length,a=new Set([...n,...s]).size;return i/a}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Dandan] sourceAnimes is not a valid array"),[];e.forEach(p=>{p.title=p.animeTitle});let o=e.length>0?e[0]._tmdbCnAlias:null;U1(e,o);let c=e.length,u=new Set,l=[],d=i!==null?i:Ut(r),f=e,m=!1;if(d!==null){let p=e.filter(h=>{let y=h._displayTitle||h.animeTitle,g=Tt(y).season;return g===d||d===1&&g===null});p.length>0&&(f=p,m=!0,E("info",`[Dandan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${d}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}for(let p of f)u.add(p.animeId),l.push({...p,isRelated:!1});for(;l.length>0;){let p=l.splice(0,l.length);await Promise.all(p.map(async h=>{try{let y=await this.getEpisodes(h.animeId),g=y.episodes,A=y.titles||[],b=this.calculateSimilarity(r,h.animeTitle),x=!m;if(b>=.1&&y.relateds&&Array.isArray(y.relateds)&&x)for(let R of y.relateds){let N=Tt(R.animeTitle).season!==null;!u.has(R.animeId)&&(N||c>=25)&&(u.add(R.animeId),l.push({animeId:R.animeId,animeTitle:R.animeTitle,imageUrl:R.imageUrl,rating:R.rating||0,isRelated:!0}))}let S=[h.animeTitle,...A,...h.aliases||[]],T=!1;if(h.isRelated||h.isTmdbSource)if(d!==null){let R=null;for(let N of S){if(!N)continue;let k=Ut(N);if(k!==null){R=k;break}}d>1?T=(R||1)===d:d===1&&(T=R===null||R===1)}else T=!0;else T=S.some(R=>R&&Ct(R,r,d));if(!T)return;let I=[];for(let R of g){let N=R.episodeTitle&&R.episodeTitle.trim()!==""?`${R.episodeTitle}`:`\u7B2C${R.episodeNumber}\u96C6`;I.push({name:N,url:R.episodeId.toString(),title:`\u3010dandan\u3011 ${N}`})}if(I.length>0){let R=h._displayTitle||h.animeTitle,N=[...new Set([...A,...h.aliases||[]])];h.animeTitle&&h.animeTitle!==R&&!N.includes(h.animeTitle)&&N.push(h.animeTitle);let k=y.type||h.type||"tvseries",B=y.typeDescription||h.typeDescription||"TV\u52A8\u753B",M=h.startDate||(g.length>0?g[0].airDate:null),P=M?new Date(M).getFullYear():"\u672A\u77E5",L={animeId:h.animeId,bangumiId:String(h.animeId),animeTitle:`${R}(${P})\u3010${B}\u3011from dandan`,aliases:N,type:k,typeDescription:B,imageUrl:y.imageUrl||h.imageUrl,startDate:M,episodeCount:I.length,rating:h.rating||0,isFavorited:!0,source:"dandan"};a.push(L),Dt({...L,links:I},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(y){E("error",`[Dandan] Error processing anime: ${y.message}`)}}))}return this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e,r=[]){let n=[],s={};try{let a=await Ae(`https://api.danmaku.weeblify.app/ddp/v1?path=%2Fv2%2Fcomment%2F${e}%3Ffrom%3D0%26withRelated%3Dtrue%26chConvert%3D0`,{headers:{"Content-Type":"application/json","User-Agent":Q6},retries:1}).catch(o=>(E("error",`[Dandan] dandan base comments error: ${o.message}`),null));a&&a.data&&a.data.comments?(n=a.data.comments,s.dandan=n.length):s.dandan=0}catch(i){E("error","[Dandan] getEpisodeDanmu error:",{message:i.message,name:i.name,stack:i.stack})}return n}async getEpisodeDanmuSegments(e){return E("info","[Dandan] \u83B7\u53D6\u5F39\u5F39play\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new 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:Vt(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"?Vt(r.m):r.m})}};kt();Et();fr();Un();po();xs();var pw=class extends wt{async search(e){try{let r=await Ae(`${O.customSourceApiUrl}/api/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(E("info","[Custom] customSourceSearchresp: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):r.data.animes?(E("info",`[Custom] \u641C\u7D22\u627E\u5230 ${r.data.animes.length} \u4E2A\u6709\u6548\u7ED3\u679C`),r.data.animes):(E("info","[Custom] customSourceSearchresp: seriesData \u6216 seriesList \u4E0D\u5B58\u5728"),[])}catch(r){return E("error","[Custom] getCustomSourceAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=await Ae(`${O.customSourceApiUrl}/api/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(E("info","[Custom] getCustomSourceEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):!r.data.bangumi||!r.data.bangumi.episodes?(E("info",`[Custom] getCustomSourceEposides: episodes \u4E0D\u5B58\u5728. Response: ${JSON.stringify(r.data)}`),[]):(E("info",`[Custom] getCustomSourceEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),r.data.bangumi.episodes)}catch(r){return E("error","[Custom] getCustomSourceEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null){let i=[];if(!e||!Array.isArray(e))return E("error","[Custom] sourceAnimes is not a valid array"),[];let a=await Promise.all(e.map(async o=>{try{let c=await this.getEpisodes(o.bangumiId),u=[];for(let l of c){let d=l.episodeTitle&&l.episodeTitle.trim()!==""?`${l.episodeTitle}`:`\u7B2C${l.episodeNumber}\u96C6`;u.push({name:d,url:l.episodeId.toString(),title:`\u3010custom\u3011 ${d}`})}if(u.length>0){let l={animeId:o.animeId,bangumiId:String(o.bangumiId),animeTitle:`${o.animeTitle}(${new Date(o.startDate).getFullYear()})\u3010${o.typeDescription}\u3011from custom`,type:o.type,typeDescription:o.typeDescription,imageUrl:o.imageUrl,startDate:o.startDate,episodeCount:u.length,rating:o.rating,isFavorited:!0,source:"custom"};i.push(l),Dt({...l,links:u},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(c){E("error",`[Custom] Error processing anime: ${c.message}`)}}));return this.sortAndPushAnimesByYear(i,n),a}async getEpisodeDanmu(e){let r=[];try{let n=await Ae(`${O.customSourceApiUrl}/api/v2/comment/${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1});return n.data&&n.data.comments&&(r=n.data.comments),r}catch(n){return E("error","[Custom] fetchCustomSourceEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return E("info","[Custom] \u83B7\u53D6Custom Source\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new 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"?Vt(r.m):r.m}))}};kt();Et();fr();Ns();Un();Ns();var Cbr=`
AGFzbQEAAAABWA5gAn9/AX9gA39/fwF/YAJ/fwBgA39/fwBgAX8Bf2ABfwBgBX9/f39/AX9gBX9/f39/AGAAAX9gBH9/f38AYAR/
f39/AX9gAn5/AX9gBn9/f39/fwBgAAACXAMDd2JnGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAUDd2JnFV9fd2JpbmRnZW5f
c3RyaW5nX25ldwAAA3diZxdfX3diaW5kZ2VuX2RlYnVnX3N0cmluZwACA4gBhgEEAgUBAAIGBQMFAQMBAgMCAwMCAgAGAAsABQIB
CAcHAAIHBgMJAwwDAAMDCQAAAAACBwIDAwMDAAIDAwUAAQIBAwAABg0CCgAAAgUFAwIFBAQCAQAFAAoDBAAAAAAAAgICAgQABAQE
BAIEAAAEBQAAAAQEBAQAAAIAAAECAgABAQgAAAQEBQQFAXABOTkFAwEAEQYJAX8BQYCAwAALB58BCQZtZW1vcnkCAAZlbnNpZ24A
JA9nYXRld2F5X2VuY3J5cHQAIA9nYXRld2F5X2RlY3J5cHQAIQdnZXRfa2V5AIMBEV9fd2JpbmRnZW5fbWFsbG9jAEUSX193Ymlu
ZGdlbl9yZWFsbG9jAEkfX193YmluZGdlbl9hZGRfdG9fc3RhY2tfcG9pbnRlcgBvD19fd2JpbmRnZW5fZnJlZQBaCUgBAEEBCzhw
RF5fL4gBKzJXMYgBcnFfiAFKS247UUAZc2OIAWJBZE4jM4gBYYgBSlFCe3mIAVZ4UTptXWaIAWGIAQ8/fIABGyIKv+YChgG+IQIP
fwF+IwBBEGsiCyQAAkACQAJ/AkAgAEH1AU8EQEEIQQgQWCEGQRRBCBBYIQVBEEEIEFghAUEAQRBBCBBYQQJ0ayICQYCAfCABIAUg
Bmpqa0F3cUEDayIBIAEgAksbIABNDQQgAEEEakEIEFghBEG0psAAKAIARQ0DQQAgBGshAwJ/QQAgBEGAAkkNABpBHyAEQf///wdL
DQAaIARBBiAEQQh2ZyIAa3ZBAXEgAEEBdGtBPmoLIgZBAnRBmKPAAGooAgAiAUUEQEEAIQBBACEFDAILIAQgBhBTdCEHQQAhAEEA
IQUDQAJAIAEQdCICIARJDQAgAiAEayICIANPDQAgASEFIAIiAw0AQQAhAyABIQBBAAwECyABQRRqKAIAIgIgACACIAEgB0EddkEE
cWpBEGooAgAiAUcbIAAgAhshACAHQQF0IQcgAQ0ACwwBC0EQIABBBGpBEEEIEFhBBWsgAEsbQQgQWCEEQbCmwAAoAgAiASAEQQN2
IgB2IgJBA3EEQAJAIAJBf3NBAXEgAGoiA0EDdCIAQbCkwABqKAIAIgVBCGooAgAiAiAAQaikwABqIgBHBEAgAiAANgIMIAAgAjYC
CAwBC0GwpsAAIAFBfiADd3E2AgALIAUgA0EDdBBQIAUQhgEhAwwECyAEQbimwAAoAgBNDQICQAJAAkACQAJAAkAgAkUEQEG0psAA
KAIAIgBFDQkgABBpaEECdEGYo8AAaigCACIBEHQgBGshAyABEFIiAARAA0AgABB0IARrIgIgAyACIANJIgIbIQMgACABIAIbIQEg
ABBSIgANAAsLIAEgBBCEASEFIAEQHEEQQQgQWCADSw0CIAEgBBBrIAUgAxBUQbimwAAoAgAiAA0BDAULAkBBASAAQR9xIgB0EFsg
AiAAdHEQaWgiAkEDdCIAQbCkwABqKAIAIgNBCGooAgAiASAAQaikwABqIgBHBEAgASAANgIMIAAgATYCCAwBC0GwpsAAQbCmwAAo
AgBBfiACd3E2AgALIAMgBBBrIAMgBBCEASIFIAJBA3QgBGsiAhBUQbimwAAoAgAiAA0CDAMLIABBeHFBqKTAAGohB0HApsAAKAIA
IQYCf0GwpsAAKAIAIgJBASAAQQN2dCIAcUUEQEGwpsAAIAAgAnI2AgAgBwwBCyAHKAIICyEAIAcgBjYCCCAAIAY2AgwgBiAHNgIM
IAYgADYCCAwDCyABIAMgBGoQUAwDCyAAQXhxQaikwABqIQdBwKbAACgCACEGAn9BsKbAACgCACIBQQEgAEEDdnQiAHFFBEBBsKbA
ACAAIAFyNgIAIAcMAQsgBygCCAshACAHIAY2AgggACAGNgIMIAYgBzYCDCAGIAA2AggLQcCmwAAgBTYCAEG4psAAIAI2AgAgAxCG
ASEDDAULQcCmwAAgBTYCAEG4psAAIAM2AgALIAEQhgEiA0UNAgwDCyAAIAVyRQRAQQAhBUEBIAZ0EFtBtKbAACgCAHEiAEUNAiAA
EGloQQJ0QZijwABqKAIAIQALQQELIQEDQCABRQRAIAUgACAFIAAQdCIBIARrIgYgA0kiAhsgASAESSIBGyEFIAMgBiADIAIbIAEb
IQMgABBSIQBBASEBDAELIAAEQEEAIQEMAQUgBUUNAiAEQbimwAAoAgAiAE0gAyAAIARrT3ENAiAFIAQQhAEhBiAFEBwCQEEQQQgQ
WCADTQRAIAUgBBBrIAYgAxBUIANBgAJPBEAgBiADEB0MAgsgA0F4cUGopMAAaiECAn9BsKbAACgCACIBQQEgA0EDdnQiAHFFBEBB
sKbAACAAIAFyNgIAIAIMAQsgAigCCAshACACIAY2AgggACAGNgIMIAYgAjYCDCAGIAA2AggMAQsgBSADIARqEFALIAUQhgEiAw0D
CwsLAkACQCAEQbimwAAoAgAiAEsEQCAEQbymwAAoAgAiAE8EQEEIQQgQWCAEakEUQQgQWGpBEEEIEFhqQYCABBBYIgBBEHZAACEC
IAtBBGoiAUEANgIIIAFBACAAQYCAfHEgAkF/RiIAGzYCBCABQQAgAkEQdCAAGzYCACALKAIEIghFBEBBACEDDAULIAsoAgwhDEHI
psAAIAsoAggiCkHIpsAAKAIAaiIBNgIAQcymwABBzKbAACgCACIAIAEgACABSxs2AgACQEHEpsAAKAIABEBBmKTAACEAA0AgABBs
IAhGDQIgACgCCCIADQALDAQLQdSmwAAoAgAiAEEAIAAgCE0bRQRAQdSmwAAgCDYCAAtB2KbAAEH/HzYCAEGkpMAAIAw2AgBBnKTA
ACAKNgIAQZikwAAgCDYCAEG0pMAAQaikwAA2AgBBvKTAAEGwpMAANgIAQbCkwABBqKTAADYCAEHEpMAAQbikwAA2AgBBuKTAAEGw
pMAANgIAQcykwABBwKTAADYCAEHApMAAQbikwAA2AgBB1KTAAEHIpMAANgIAQcikwABBwKTAADYCAEHcpMAAQdCkwAA2AgBB0KTA
AEHIpMAANgIAQeSkwABB2KTAADYCAEHYpMAAQdCkwAA2AgBB7KTAAEHgpMAANgIAQeCkwABB2KTAADYCAEH0pMAAQeikwAA2AgBB
6KTAAEHgpMAANgIAQfCkwABB6KTAADYCAEH8pMAAQfCkwAA2AgBB+KTAAEHwpMAANgIAQYSlwABB+KTAADYCAEGApcAAQfikwAA2
AgBBjKXAAEGApcAANgIAQYilwABBgKXAADYCAEGUpcAAQYilwAA2AgBBkKXAAEGIpcAANgIAQZylwABBkKXAADYCAEGYpcAAQZCl
wAA2AgBBpKXAAEGYpcAANgIAQaClwABBmKXAADYCAEGspcAAQaClwAA2AgBBqKXAAEGgpcAANgIAQbSlwABBqKXAADYCAEG8pcAA
QbClwAA2AgBBsKXAAEGopcAANgIAQcSlwABBuKXAADYCAEG4pcAAQbClwAA2AgBBzKXAAEHApcAANgIAQcClwABBuKXAADYCAEHU
pcAAQcilwAA2AgBByKXAAEHApcAANgIAQdylwABB0KXAADYCAEHQpcAAQcilwAA2AgBB5KXAAEHYpcAANgIAQdilwABB0KXAADYC
AEHspcAAQeClwAA2AgBB4KXAAEHYpcAANgIAQfSlwABB6KXAADYCAEHopcAAQeClwAA2AgBB/KXAAEHwpcAANgIAQfClwABB6KXA
ADYCAEGEpsAAQfilwAA2AgBB+KXAAEHwpcAANgIAQYymwABBgKbAADYCAEGApsAAQfilwAA2AgBBlKbAAEGIpsAANgIAQYimwABB
gKbAADYCAEGcpsAAQZCmwAA2AgBBkKbAAEGIpsAANgIAQaSmwABBmKbAADYCAEGYpsAAQZCmwAA2AgBBrKbAAEGgpsAANgIAQaCm
wABBmKbAADYCAEGopsAAQaCmwAA2AgBBCEEIEFghBUEUQQgQWCECQRBBCBBYIQFBxKbAACAIIAgQhgEiAEEIEFggAGsiABCEASID
NgIAQbymwAAgCkEIaiABIAIgBWpqIABqayIFNgIAIAMgBUEBcjYCBEEIQQgQWCECQRRBCBBYIQFBEEEIEFghACADIAUQhAEgACAB
IAJBCGtqajYCBEHQpsAAQYCAgAE2AgAMBAsgABB2DQIgABB3IAxHDQIgACgCACICQcSmwAAoAgAiAU0EfyACIAAoAgRqIAFLBUEA
C0UNAiAAIAAoAgQgCmo2AgRBvKbAACgCACAKaiEBQcSmwAAoAgAiACAAEIYBIgBBCBBYIABrIgAQhAEhA0G8psAAIAEgAGsiBTYC
AEHEpsAAIAM2AgAgAyAFQQFyNgIEQQhBCBBYIQJBFEEIEFghAUEQQQgQWCEAIAMgBRCEASAAIAEgAkEIa2pqNgIEQdCmwABBgICA
ATYCAAwDC0G8psAAIAAgBGsiATYCAEHEpsAAQcSmwAAoAgAiAiAEEIQBIgA2AgAgACABQQFyNgIEIAIgBBBrIAIQhgEhAwwDC0HA
psAAKAIAIQJBEEEIEFggACAEayIBTQRAIAIgBBCEASEAQbimwAAgATYCAEHApsAAIAA2AgAgACABEFQgAiAEEGsgAhCGASEDDAML
QcCmwABBADYCAEG4psAAKAIAIQBBuKbAAEEANgIAIAIgABBQIAIQhgEhAwwCC0HUpsAAQdSmwAAoAgAiACAIIAAgCEkbNgIAIAgg
CmohAUGYpMAAIQACQANAIAEgACgCAEcEQCAAKAIIIgANAQwCCwsgABB2DQAgABB3IAxHDQAgACgCACEDIAAgCDYCACAAIAAoAgQg
Cmo2AgQgCBCGASIFQQgQWCECIAMQhgEiAUEIEFghACAIIAIgBWtqIgYgBBCEASEHIAYgBBBrIAMgACABa2oiACAEIAZqayEEAkBB
xKbAACgCACAARwRAIABBwKbAACgCAEYNASAAKAIEQQNxQQFGBEACQCAAEHQiBUGAAk8EQCAAEBwMAQsgAEEMaigCACICIABBCGoo
AgAiAUcEQCABIAI2AgwgAiABNgIIDAELQbCmwABBsKbAACgCAEF+IAVBA3Z3cTYCAAsgBCAFaiEEIAAgBRCEASEACyAHIAQgABBP
IARBgAJPBEAgByAEEB0gBhCGASEDDAULIARBeHFBqKTAAGohAgJ/QbCmwAAoAgAiAUEBIARBA3Z0IgBxRQRAQbCmwAAgACABcjYC
ACACDAELIAIoAggLIQAgAiAHNgIIIAAgBzYCDCAHIAI2AgwgByAANgIIIAYQhgEhAwwEC0HEpsAAIAc2AgBBvKbAAEG8psAAKAIA
IARqIgA2AgAgByAAQQFyNgIEIAYQhgEhAwwDC0HApsAAIAc2AgBBuKbAAEG4psAAKAIAIARqIgA2AgAgByAAEFQgBhCGASEDDAIL
QcSmwAAoAgAhCUGYpMAAIQACQANAIAkgACgCAE8EQCAAEGwgCUsNAgsgACgCCCIADQALQQAhAAsgCSAAEGwiBkEUQQgQWCIPa0EX
ayIBEIYBIgBBCBBYIABrIAFqIgAgAEEQQQgQWCAJakkbIg0QhgEhDiANIA8QhAEhAEEIQQgQWCEDQRRBCBBYIQVBEEEIEFghAkHE
psAAIAggCBCGASIBQQgQWCABayIBEIQBIgc2AgBBvKbAACAKQQhqIAIgAyAFamogAWprIgM2AgAgByADQQFyNgIEQQhBCBBYIQVB
FEEIEFghAkEQQQgQWCEBIAcgAxCEASABIAIgBUEIa2pqNgIEQdCmwABBgICAATYCACANIA8Qa0GYpMAAKQIAIRAgDkEIakGgpMAA
KQIANwIAIA4gEDcCAEGkpMAAIAw2AgBBnKTAACAKNgIAQZikwAAgCDYCAEGgpMAAIA42AgADQCAAQQQQhAEgAEEHNgIEIgBBBGog
BkkNAAsgCSANRg0AIAkgDSAJayIAIAkgABCEARBPIABBgAJPBEAgCSAAEB0MAQsgAEF4cUGopMAAaiECAn9BsKbAACgCACIBQQEg
AEEDdnQiAHFFBEBBsKbAACAAIAFyNgIAIAIMAQsgAigCCAshACACIAk2AgggACAJNgIMIAkgAjYCDCAJIAA2AggLQQAhA0G8psAA
KAIAIgAgBE0NAEG8psAAIAAgBGsiATYCAEHEpsAAQcSmwAAoAgAiAiAEEIQBIgA2AgAgACABQQFyNgIEIAIgBBBrIAIQhgEhAwsg
C0EQaiQAIAMLrRABGH8gACABKAIQIgkgASgCICIHIAEoAjAiCiABKAIAIgsgASgCJCIMIAEoAjQiDSABKAIEIg4gASgCFCIPIA0g
DCAPIA4gCiAHIAkgCyAAKAIAIhkgACgCCCIQIAAoAgQiCHFqIAAoAgwiGCAIQX9zcWpqQYi31cQCa0EHdyAIaiICaiAOIBhqIBAg
AkF/c3FqIAIgCHFqQaqR4bkBa0EMdyACaiIDIAggASgCDCIRaiACIAMgECABKAIIIhJqIAggA0F/c3FqIAIgA3FqQdvhgaECakER
d2oiBUF/c3FqIAMgBXFqQZLiiPIDa0EWdyAFaiIEQX9zcWogBCAFcWpB0eCP1ABrQQd3IARqIgJqIAMgD2ogBSACQX9zcWogAiAE
cWpBqoyfvARqQQx3IAJqIgMgASgCHCITIARqIAIgAyABKAIYIhQgBWogBCADQX9zcWogAiADcWpB7fO+vgVrQRF3aiIFQX9zcWog
AyAFcWpB/9XlFWtBFncgBWoiAkF/c3FqIAIgBXFqQdixgswGakEHdyACaiIEaiADIAxqIAUgBEF/c3FqIAIgBHFqQdGQ7KUHa0EM
dyAEaiIDIAEoAiwiFSACaiAEIAMgASgCKCIWIAVqIAIgA0F/c3FqIAMgBHFqQc/IAmtBEXdqIgJBf3NxaiACIANxakHC0Iy1B2tB
FncgAmoiBUF/c3FqIAIgBXFqQaKiwNwGakEHdyAFaiIGaiABKAI4IhcgAmogBSADIA1qIAIgBkF/c3FqIAUgBnFqQe2cnhNrQQx3
IAZqIgRBf3MiAnFqIAQgBnFqQfL4mswFa0ERdyAEaiIDIAJxaiAFIAEoAjwiBWogBiADQX9zIgFxaiADIARxakGhkNDNBGpBFncg
A2oiBiAEcWpBnrWHzwBrQQV3IAZqIgJqIAMgFWogAiAGQX9zcWogBCAUaiABIAZxaiACIANxakHAmf39A2tBCXcgAmoiBCAGcWpB
0bT5sgJqQQ53IARqIgMgBEF/c3FqIAYgC2ogBCACQX9zcWogAiADcWpB1vCksgFrQRR3IANqIgIgBHFqQaPfw84Ca0EFdyACaiIB
aiADIAVqIAEgAkF/c3FqIAQgFmogAiADQX9zcWogASADcWpB06iQEmpBCXcgAWoiBCACcWpB/7L4ugJrQQ53IARqIgMgBEF/c3Fq
IAIgCWogBCABQX9zcWogASADcWpBuIiwwQFrQRR3IANqIgIgBHFqQeabh48CakEFdyACaiIBaiADIBFqIAEgAkF/c3FqIAQgF2og
AiADQX9zcWogASADcWpBqvCj5gNrQQl3IAFqIgQgAnFqQfnkq9kAa0EOdyAEaiIDIARBf3NxaiACIAdqIAQgAUF/c3FqIAEgA3Fq
Qe2p6KoEakEUdyADaiICIARxakH7rfCwBWtBBXcgAmoiAWogAiAKaiAEIBJqIAIgA0F/c3FqIAEgA3FqQYi4wRhrQQl3IAFqIgYg
AUF/c3FqIAMgE2ogASACQX9zcWogAiAGcWpB2YW8uwZqQQ53IAZqIgQgAXFqQfbm1pYHa0EUdyAEaiIDIARzIgEgBnNqQb6NF2tB
BHcgA2oiAmogBCAVaiACIAYgB2ogASACc2pB/5K4xAdrQQt3IAJqIgJzIgEgA3NqQaLC9ewGakEQdyACaiIEIAJzIAMgF2ogASAE
c2pB9I/rEGtBF3cgBGoiB3NqQbyrhNoFa0EEdyAHaiIBaiAEIBNqIAIgCWogBCAHcyABc2pBqZ/73gRqQQt3IAFqIgQgASAHc3Nq
QaDpksoAa0EQdyAEaiIDIARzIAcgFmogASAEcyADc2pBkIeBigRrQRd3IANqIgJzakHG/e3EAmpBBHcgAmoiAWogAyARaiAEIAtq
IAIgA3MgAXNqQYaw+6oBa0ELdyABaiIEIAEgAnNzakH7nsPYAmtBEHcgBGoiAyAEcyACIBRqIAEgBHMgA3NqQYW6oCRqQRd3IANq
IgJzakHH36yxAmtBBHcgAmoiAWogAiASaiAEIApqIAIgA3MgAXNqQZvMkckBa0ELdyABaiIEIAFzIAMgBWogASACcyAEc2pB+PmJ
/QFqQRB3IARqIgNzakGb087aA2tBF3cgA2oiAiAEQX9zciADc2pBvLvb3gBrQQZ3IAJqIgFqIAIgD2ogAyAXaiAEIBNqIAEgA0F/
c3IgAnNqQZf/q5kEakEKdyABaiIEIAJBf3NyIAFzakHZuK+jBWtBD3cgBGoiAyABQX9zciAEc2pBx7+xG2tBFXcgA2oiAiAEQX9z
ciADc2pBw7PtqgZqQQZ3IAJqIgFqIAIgDmogAyAWaiAEIBFqIAEgA0F/c3IgAnNqQe7mzIcHa0EKdyABaiIEIAJBf3NyIAFzakGD
l8AAa0EPdyAEaiICIAFBf3NyIARzakGvxO7TB2tBFXcgAmoiASAEQX9zciACc2pBz/yh/QZqQQZ3IAFqIgNqIAEgDWogAiAUaiAE
IAVqIAMgAkF/c3IgAXNqQaCyzA5rQQp3IANqIgIgAUF/c3IgA3NqQez5+ucFa0EPdyACaiIBIANBf3NyIAJzakGho6DwBGpBFXcg
AWoiBCACQX9zciABc2pB/oKyxQBrQQZ3IARqIgMgGWo2AgAgACAYIAIgFWogAyABQX9zciAEc2pBy5uUlgRrQQp3IANqIgJqNgIM
IAAgECABIBJqIAIgBEF/c3IgA3NqQbul39YCakEPdyACaiIBajYCCCAAIAEgCGogBCAMaiABIANBf3NyIAJzakHv2OSjAWtBFXdq
NgIEC5IHAQV/IAAQhwEiACAAEHQiARCEASECAkACQAJAAkACQAJAAkACQAJAIAAQdQ0AIAAoAgAhAyAAEGoNASABIANqIQEgACAD
EIUBIgBBwKbAACgCAEYEQCACKAIEQQNxQQNHDQFBuKbAACABNgIAIAAgASACEE8MCQsgA0GAAk8EQCAAEBwMAQsgAEEMaigCACIE
IABBCGooAgAiBUcEQCAFIAQ2AgwgBCAFNgIIDAELQbCmwABBsKbAACgCAEF+IANBA3Z3cTYCAAsgAhBlDQIgAkHEpsAAKAIARg0E
IAJBwKbAACgCAEcNAUHApsAAIAA2AgBBuKbAAEG4psAAKAIAIAFqIgI2AgAgACACEFQPCyABIANqQRBqIQAMBgsgAhB0IgMgAWoh
AQJAIANBgAJPBEAgAhAcDAELIAJBDGooAgAiBCACQQhqKAIAIgJHBEAgAiAENgIMIAQgAjYCCAwBC0GwpsAAQbCmwAAoAgBBfiAD
QQN2d3E2AgALIAAgARBUIABBwKbAACgCAEcNAUG4psAAIAE2AgAPCyAAIAEgAhBPCyABQYACSQ0BIAAgARAdQdimwABB2KbAACgC
AEEBayIANgIAIAANAxAfGg8LQcSmwAAgADYCAEG8psAAQbymwAAoAgAgAWoiAjYCACAAIAJBAXI2AgRBwKbAACgCACAARgRAQbim
wABBADYCAEHApsAAQQA2AgALIAJB0KbAACgCAE0NAkEIQQgQWCEAQRRBCBBYIQJBEEEIEFghA0EAQRBBCBBYQQJ0ayIBQYCAfCAD
IAAgAmpqa0F3cUEDayIAIAAgAUsbRQ0CQcSmwAAoAgBFDQJBCEEIEFghAEEUQQgQWCECQRBBCBBYIQFBACEDQbymwAAoAgAiBCAB
IAIgAEEIa2pqIgBNDQEgBCAAa0H//wNqQYCAfHEiBEGAgARrIQJBxKbAACgCACEBQZikwAAhAAJAA0AgASAAKAIATwRAIAAQbCAB
Sw0CCyAAKAIIIgANAAtBACEACyAAEHYNASAAKAIMGgwBCyABQXhxQaikwABqIQICf0GwpsAAKAIAIgNBASABQQN2dCIBcUUEQEGw
psAAIAEgA3I2AgAgAgwBCyACKAIICyEDIAIgADYCCCADIAA2AgwgACACNgIMIAAgAzYCCA8LEB9BACADa0cNAEG8psAAKAIAQdCm
wAAoAgBNDQBB0KbAAEF/NgIACwv0BgEIfwJAIAAoAgAiCiAAKAIIIgNyBEACQCADRQ0AIAEgAmohCCAAQQxqKAIAQQFqIQcgASEF
A0ACQCAFIQMgB0EBayIHRQ0AIAMgCEYNAgJ/IAMsAAAiBkEATgRAIAZB/wFxIQYgA0EBagwBCyADLQABQT9xIQkgBkEfcSEFIAZB
X00EQCAFQQZ0IAlyIQYgA0ECagwBCyADLQACQT9xIAlBBnRyIQkgBkFwSQRAIAkgBUEMdHIhBiADQQNqDAELIAVBEnRBgIDwAHEg
Ay0AA0E/cSAJQQZ0cnIiBkGAgMQARg0DIANBBGoLIgUgBCADa2ohBCAGQYCAxABHDQEMAgsLIAMgCEYNACADLAAAIgVBAE4gBUFg
SXIgBUFwSXJFBEAgBUH/AXFBEnRBgIDwAHEgAy0AA0E/cSADLQACQT9xQQZ0IAMtAAFBP3FBDHRycnJBgIDEAEYNAQsCQAJAIARF
DQAgAiAETQRAQQAhAyACIARGDQEMAgtBACEDIAEgBGosAABBQEgNAQsgASEDCyAEIAIgAxshAiADIAEgAxshAQsgCkUNASAAKAIE
IQgCQCACQRBPBEAgASACEAchAwwBCyACRQRAQQAhAwwBCyACQQNxIQcCQCACQQRJBEBBACEDQQAhBgwBCyACQXxxIQVBACEDQQAh
BgNAIAMgASAGaiIELAAAQb9/SmogBEEBaiwAAEG/f0pqIARBAmosAABBv39KaiAEQQNqLAAAQb9/SmohAyAFIAZBBGoiBkcNAAsL
IAdFDQAgASAGaiEFA0AgAyAFLAAAQb9/SmohAyAFQQFqIQUgB0EBayIHDQALCwJAIAMgCEkEQCAIIANrIQRBACEDAkACQAJAIAAt
ACBBAWsOAgABAgsgBCEDQQAhBAwBCyAEQQF2IQMgBEEBakEBdiEECyADQQFqIQMgAEEYaigCACEFIAAoAhAhBiAAKAIUIQADQCAD
QQFrIgNFDQIgACAGIAUoAhARAABFDQALQQEPCwwCC0EBIQMgACABIAIgBSgCDBEBAAR/IAMFQQAhAwJ/A0AgBCADIARGDQEaIANB
AWohAyAAIAYgBSgCEBEAAEUNAAsgA0EBawsgBEkLDwsgACgCFCABIAIgAEEYaigCACgCDBEBAA8LIAAoAhQgASACIABBGGooAgAo
AgwRAQAL1wYBCH8CQAJAIAEgAEEDakF8cSICIABrIghJDQAgASAIayIGQQRJDQAgBkEDcSEHQQAhAQJAIAAgAkYiCQ0AAkAgAiAA
QX9zakEDSQRADAELA0AgASAAIARqIgMsAABBv39KaiADQQFqLAAAQb9/SmogA0ECaiwAAEG/f0pqIANBA2osAABBv39KaiEBIARB
BGoiBA0ACwsgCQ0AIAAgAmshAyAAIARqIQIDQCABIAIsAABBv39KaiEBIAJBAWohAiADQQFqIgMNAAsLIAAgCGohBAJAIAdFDQAg
BCAGQXxxaiIALAAAQb9/SiEFIAdBAUYNACAFIAAsAAFBv39KaiEFIAdBAkYNACAFIAAsAAJBv39KaiEFCyAGQQJ2IQYgASAFaiED
A0AgBCEAIAZFDQJBwAEgBiAGQcABTxsiBUEDcSEHIAVBAnQhBEEAIQIgBUEETwRAIAAgBEHwB3FqIQggACEBA0AgAiABKAIAIgJB
f3NBB3YgAkEGdnJBgYKECHFqIAFBBGooAgAiAkF/c0EHdiACQQZ2ckGBgoQIcWogAUEIaigCACICQX9zQQd2IAJBBnZyQYGChAhx
aiABQQxqKAIAIgJBf3NBB3YgAkEGdnJBgYKECHFqIQIgAUEQaiIBIAhHDQALCyAGIAVrIQYgACAEaiEEIAJBCHZB/4H8B3EgAkH/
gfwHcWpBgYAEbEEQdiADaiEDIAdFDQALAn8gACAFQfwBcUECdGoiACgCACIBQX9zQQd2IAFBBnZyQYGChAhxIgEgB0EBRg0AGiAB
IAAoAgQiAUF/c0EHdiABQQZ2ckGBgoQIcWoiASAHQQJGDQAaIAAoAggiAEF/c0EHdiAAQQZ2ckGBgoQIcSABagsiAUEIdkH/gRxx
IAFB/4H8B3FqQYGABGxBEHYgA2oPCyABRQRAQQAPCyABQQNxIQQCQCABQQRJBEBBACECDAELIAFBfHEhBUEAIQIDQCADIAAgAmoi
ASwAAEG/f0pqIAFBAWosAABBv39KaiABQQJqLAAAQb9/SmogAUEDaiwAAEG/f0pqIQMgBSACQQRqIgJHDQALCyAERQ0AIAAgAmoh
AQNAIAMgASwAAEG/f0pqIQMgAUEBaiEBIARBAWsiBA0ACwsgAwunBgEGfyMAQeADayIFJAAgBUEAQeADEIEBIgUgASABEBQgBUEg
aiABQRBqIgEgARAUQcAAIQZBCCEHA0AgBSAHEDUgAyAFaiIBQUBrIgQQDCAEIAQoAgBBf3M2AgAgAUHEAGoiBCAEKAIAQX9zNgIA
IAFB1ABqIgQgBCgCAEF/czYCACABQdgAaiIEIAQoAgBBf3M2AgAgBSAGaiIEIAQoAgBBgIADczYCACAFIAdBCGoiB0EOECogA0GA
A0YEQCAFQeAAaiEHIAVBQGshAyAFQSBqIQZBAyEEA0AgBEEBayEEQQAhAQNAIAEgBmoiAiACKAIAIgIgAiACQQR2c0GAmLwYcSIC
QQR0cyACcyICIAIgAkECdnNBgOaAmANxIgJBAnRzIAJzNgIAIAFBBGoiAUEgRw0AC0EAIQEDQCABIANqIgIgAigCACICIAIgAkEE
dnNBgJ6A+ABxIgJBBHRzIAJzNgIAIAFBBGoiAUEgRw0AC0EAIQEDQCABIAdqIgIgAigCACICIAIgAkEEdnNBgIa84ABxIgJBBHRz
IAJzIgIgAiACQQJ2c0GA5oCYA3EiAkECdHMgAnM2AgAgAUEEaiIBQSBHDQALIAdBgAFqIQcgA0GAAWohAyAGQYABaiEGIAQNAAtB
oAMhAQNAIAEgBWoiAyADKAIAIgMgAyADQQR2c0GAmLwYcSIDQQR0cyADcyIDIAMgA0ECdnNBgOaAmANxIgNBAnRzIANzNgIAIAFB
BGoiAUHAA0cNAAtBACEDA0AgAyAFaiIBQSBqIgYgBigCAEF/czYCACABQSRqIgYgBigCAEF/czYCACABQTRqIgYgBigCAEF/czYC
ACABQThqIgEgASgCAEF/czYCACADQSBqIgNBwANHDQALIAAgBUHgAxCCARogBUHgA2okAAUgBSAHEDUgAUHgAGoiBBAMIAQgBCgC
AEF/czYCACABQeQAaiIEIAQoAgBBf3M2AgAgAUH0AGoiBCAEKAIAQX9zNgIAIAFB+ABqIgEgASgCAEF/czYCACAFIAdBCGoiB0EG
ECogBkHEAGohBiADQUBrIQMMAQsLC7QFAQh/QStBgIDEACAAKAIcIghBAXEiBhshDCAEIAZqIQYCQCAIQQRxRQRAQQAhAQwBCwJA
IAJBEE8EQCABIAIQByEFDAELIAJFBEAMAQsgAkEDcSEJAkAgAkEESQRADAELIAJBfHEhCgNAIAUgASAHaiILLAAAQb9/SmogC0EB
aiwAAEG/f0pqIAtBAmosAABBv39KaiALQQNqLAAAQb9/SmohBSAKIAdBBGoiB0cNAAsLIAlFDQAgASAHaiEHA0AgBSAHLAAAQb9/
SmohBSAHQQFqIQcgCUEBayIJDQALCyAFIAZqIQYLAkACQCAAKAIARQRAQQEhBSAAKAIUIgYgACgCGCIAIAwgASACEEYNAQwCCyAG
IAAoAgQiB08EQEEBIQUgACgCFCIGIAAoAhgiACAMIAEgAhBGDQEMAgsgCEEIcQRAIAAoAhAhCCAAQTA2AhAgAC0AICEKQQEhBSAA
QQE6ACAgACgCFCIJIAAoAhgiCyAMIAEgAhBGDQEgByAGa0EBaiEFAkADQCAFQQFrIgVFDQEgCUEwIAsoAhARAABFDQALQQEPC0EB
IQUgCSADIAQgCygCDBEBAA0BIAAgCjoAICAAIAg2AhBBACEFDAELIAcgBmshBgJAAkACQCAALQAgIgVBAWsOAwABAAILIAYhBUEA
IQYMAQsgBkEBdiEFIAZBAWpBAXYhBgsgBUEBaiEFIABBGGooAgAhCCAAKAIQIQogACgCFCEAAkADQCAFQQFrIgVFDQEgACAKIAgo
AhARAABFDQALQQEPC0EBIQUgACAIIAwgASACEEYNACAAIAMgBCAIKAIMEQEADQBBACEFA0AgBSAGRgRAQQAPCyAFQQFqIQUgACAK
IAgoAhARAABFDQALIAVBAWsgBkkPCyAFDwsgBiADIAQgACgCDBEBAAvYBAEcfyAAIAAoAggiBCAAKAIEIgVzIgwgACgCHCINIAAo
AhAiAXMiFiAAKAIYIgJzIhcgFnFzIAIgDXMiAyAAKAIMIgYgACgCACIHcyIIcyIJcyADIAUgB3MiCnMiEyABIAJzIg8gBCAAKAIU
IgRzIhBzIhlxIhRzIAYgF3MiFSABIAZzIgEgDHMiGHEgCSAYcyABcSILcyIOcyIRIA4gDyABIAdzIhpxIAIgBXMiBSAEIAZzcyIH
IAEgCnMiDnJzcyIScSICIAsgAyAJcXMiCyAHIA5xIAogD3MiCiAEcyIbIAUgCHMiHHFzIAFzIARzcyIGcyARIBQgCiANIBBzIhRx
IAhzcyALcyIEcyIIcSAEcyIFIAYgEnMiCyACIARzcSAGcyINcyIQIAFxIAogDXEiCnMgDSALIAQgEnFBf3NxIAJzIgFzIgQgE3Eg
AyACIAYgEXEgCHFzIAhzIgIgAXMiA3EiCHMiEXM2AgAgACAHIAIgBXMiB3EiBiAFIBtxIhJzIAMgEHMiEyAVcSIVIAMgCXEiA3Mi
CyAQIAkgDHNxIgwgByAOcSIHIAIgD3EiD3NzIg5zIglzNgIcIAAgDCACIBpxIgIgASAXcXMiDCAGIAUgHHFzc3MiBSADIA0gFHEi
AyABIBZxcyIBIA9zcyARc3M2AhggACABIApzIgEgB3MgC3MgBXM2AhQgACADIAQgGXEiA3MgCXM2AhAgACATIBhxIAJzIA5zIgIg
ASADIBJzIgEgCHNzczYCDCAAIAEgDHMgCXM2AgggACAGIBVzIAJzNgIEC9QFAgZ/An4CQCACRQ0AIAJBB2siA0EAIAIgA08bIQcg
AUEDakF8cSABayEIQQAhAwNAAkACQAJAIAEgA2otAAAiBcAiBkEATgRAIAggA2tBA3ENASADIAdPDQIDQCABIANqIgRBBGooAgAg
BCgCAHJBgIGChHhxDQMgA0EIaiIDIAdJDQALDAILQoCAgICAICEKQoCAgIAQIQkCQAJAAn4CQAJAAkACQAJAAkACQAJAAkAgBUGM
oMAAai0AAEECaw4DAAECCgsgA0EBaiIEIAJJDQJCACEKQgAhCQwJC0IAIQogA0EBaiIEIAJJDQJCACEJDAgLQgAhCiADQQFqIgQg
AkkNAkIAIQkMBwsgASAEaiwAAEG/f0oNBgwHCyABIARqLAAAIQQCQAJAIAVB4AFrIgUEQCAFQQ1GBEAMAgUMAwsACyAEQWBxQaB/
Rg0EDAMLIARBn39KDQIMAwsgBkEfakH/AXFBDE8EQCAGQX5xQW5HDQIgBEFASA0DDAILIARBQEgNAgwBCyABIARqLAAAIQQCQAJA
AkACQCAFQfABaw4FAQAAAAIACyAGQQ9qQf8BcUECSyAEQUBOcg0DDAILIARB8ABqQf8BcUEwTw0CDAELIARBj39KDQELIAIgA0EC
aiIETQRAQgAhCQwFCyABIARqLAAAQb9/Sg0CQgAhCSADQQNqIgQgAk8NBCABIARqLAAAQb9/TA0FQoCAgICA4AAMAwtCgICAgIAg
DAILQgAhCSADQQJqIgQgAk8NAiABIARqLAAAQb9/TA0DC0KAgICAgMAACyEKQoCAgIAQIQkLIAAgCiADrYQgCYQ3AgQgAEEBNgIA
DwsgBEEBaiEDDAILIANBAWohAwwBCyACIANNDQADQCABIANqLAAAQQBIDQEgAiADQQFqIgNHDQALDAILIAIgA0sNAAsLIAAgATYC
BCAAQQhqIAI2AgAgAEEANgIAC6YEARt/IAAgACgCHCIBIAAoAgQiBHMiByAAKAIQIgUgACgCCCIKcyIMcyIRIAAoAgxzIgggACgC
GCIGcyILIAEgBXMiEnMiCSAGIAAoAhRzIgJzIgMgBCACIAAoAgAiBHMiBnMiEyAGcXMgAyAHcSINcyAHcyAJIBJxIg4gAiAIIApz
IgJzIgggCXMiFyAMcXMiD3MiECAPIAIgEXEiDyALIAIgBHMiGCATIAEgCnMiCnMiGXFzc3MiFHEiCyAIIApxIA5zIg4gDyAFIAZz
Ig8gBHEgCnMgCHNzcyIFcyAOIA0gAyAEIAlzIg0gASAGcyIOcXNzIAFzcyIBIBBzcSIVIAtzIAFxIhYgEHMiECACcSIaIAQgASAV
cyIEcXMiFSAFIAEgC3MiAiAFIBRzIgVxcyIBIA1xcyADIAIgFnMgAXEgBXMiAyABcyILcSINcyIUIAMgE3FzIAwgAyAEIBBzIgJz
IgUgASAEcyIMcyITcSAMIBJxIhJzIhZzIhsgDSADIAZxcyIGIBMgF3FzIgMgByALcSIHIAUgCHEgFXNzcyIIczYCBCAAIAcgG3M2
AgAgACAWIAIgGXFzIgcgECARcXMiESADIAkgDHFzIglzNgIcIAAgCCABIA5xcyIDIAUgCnEgEnMgCXNzNgIUIAAgAiAYcSAacyAG
cyARcyIBNgIQIAAgByAEIA9xcyADczYCCCAAIAEgCXM2AhggACABIBRzNgIMC4YFAQp/IwBBMGsiAyQAIANBJGogATYCACADQQM6
ACwgA0EgNgIcIANBADYCKCADIAA2AiAgA0EANgIUIANBADYCDAJ/AkACQAJAIAIoAhAiCkUEQCACQQxqKAIAIgBFDQEgAigCCCEB
IABBA3QhBSAAQQFrQf////8BcUEBaiEHIAIoAgAhAANAIABBBGooAgAiBARAIAMoAiAgACgCACAEIAMoAiQoAgwRAQANBAsgASgC
ACADQQxqIAFBBGooAgARAAANAyABQQhqIQEgAEEIaiEAIAVBCGsiBQ0ACwwBCyACQRRqKAIAIgBFDQAgAEEFdCELIABBAWtB////
P3FBAWohByACKAIIIQggAigCACEAA0AgAEEEaigCACIBBEAgAygCICAAKAIAIAEgAygCJCgCDBEBAA0DCyADIAUgCmoiAUEQaigC
ADYCHCADIAFBHGotAAA6ACwgAyABQRhqKAIANgIoIAFBDGooAgAhBkEAIQlBACEEAkACQAJAIAFBCGooAgBBAWsOAgACAQsgBkED
dCAIaiIMKAIEQS1HDQEgDCgCACgCACEGC0EBIQQLIAMgBjYCECADIAQ2AgwgAUEEaigCACEEAkACQAJAIAEoAgBBAWsOAgACAQsg
BEEDdCAIaiIGKAIEQS1HDQEgBigCACgCACEEC0EBIQkLIAMgBDYCGCADIAk2AhQgCCABQRRqKAIAQQN0aiIBKAIAIANBDGogASgC
BBEAAA0CIABBCGohACALIAVBIGoiBUcNAAsLIAcgAigCBE8NASADKAIgIAIoAgAgB0EDdGoiACgCACAAKAIEIAMoAiQoAgwRAQBF
DQELQQEMAQtBAAsgA0EwaiQAC4cVARV/IwBBIGsiAyQAIANBGGpCADcDACADQRBqQgA3AwAgA0EIakIANwMAIANCADcDACADIAIg
AkEQahAUIAFBwANqIQpBACECA0AgAiADaiITIBMoAgAgAiAKaigCAHM2AgAgAkEEaiICQSBHDQALIAMQCkEAIQIDQCACIANqIgog
CigCACIKIAogCkEEdnNBgJ6A+ABxIgpBBHRzIApzNgIAIAJBBGoiAkEgRw0ACyABQcACaiETIAFB4AJqIRQgAUGAA2ohFSABQaAD
aiEWQegAIQoCQANAQQAhAgNAIAIgA2oiBiAGKAIAIAIgFmooAgBzNgIAIAJBBGoiAkEgRw0ACyADIAMoAhgiBkEWd0G//vz5A3Eg
BkEed0HAgYOGfHFyIAZzIgkgAygCHCICcyIHIAJBFndBv/78+QNxIAJBHndBwIGDhnxxciACcyICIAMoAhAiBUEWd0G//vz5A3Eg
BUEed0HAgYOGfHFyIAVzIgwgAygCFCIEcyINcyILQQx3QY+evPgAcSALQRR3QfDhw4d/cXJzIAtzNgIcIAMgBiAEIARBFndBv/78
+QNxIARBHndBwIGDhnxxcnMiCHMiBiADKAIAIgRBFndBv/78+QNxIARBHndBwIGDhnxxciAEcyIPcyILIAtBDHdBj568+ABxIAtB
FHdB8OHDh39xcnMgAiAEcyILczYCACADIAYgCSAFIAMoAgwiBEEWd0G//vz5A3EgBEEed0HAgYOGfHFyIARzIg5zIAJzIhBzIgVB
DHdBj568+ABxIAVBFHdB8OHDh39xcnMgBXM2AhggAyANIAQgAygCCCIFQRZ3Qb/+/PkDcSAFQR53QcCBg4Z8cXIgBXMiCXMgAnMi
ESAHIAhzcyIEQQx3QY+evPgAcSAEQRR3QfDhw4d/cXJzIARzNgIUIAMgECAGIAdzIg0gDCAFIAMoAgQiBEEWd0G//vz5A3EgBEEe
d0HAgYOGfHFyIARzIghzIhJzcyIFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAVzNgIQIAMgESAEIA9zIAJzIgUgBiAOc3MiAkEM
d0GPnrz4AHEgAkEUd0Hw4cOHf3FycyACczYCDCADIBIgByAJcyALcyICQQx3QY+evPgAcSACQRR3QfDhw4d/cXJzIAJzNgIIIAMg
BSAIIA1zIgJBDHdBj568+ABxIAJBFHdB8OHDh39xcnMgAnM2AgQgAxAKIApBCEYEQEEAIQIDQCACIANqIgogCigCACABIAJqKAIA
czYCACACQQRqIgJBIEcNAAsgACADEBUgA0EgaiQADwtBACECA0AgAiADaiIGIAYoAgAgAiAVaigCAHM2AgAgAkEEaiICQSBHDQAL
IApBEGshCyADIAMoAhgiB0EYdyAHcyIJIAMoAhwiAnMiBiACQRh3IAJzIgIgAygCECIFQRh3IAVzIgwgAygCFCIEcyINcyIIQRB3
cyAIczYCHCADIAcgBCAEQRh3cyIIcyIHIAMoAgAiBEEYdyAEcyIPcyIOQRB3IA5zIAIgBHMiDnM2AgAgAyAHIAkgBSADKAIMIgRB
GHcgBHMiEHMgAnMiEXMiBUEQd3MgBXM2AhggAyANIAQgAygCCCIFQRh3IAVzIglzIAJzIhIgBiAIc3MiBEEQd3MgBHM2AhQgAyAR
IAYgB3MiDSAMIAUgAygCBCIEQRh3IARzIghzIgVzcyIMQRB3cyAMczYCECADIBIgBCAPcyACcyICIAcgEHNzIgdBEHdzIAdzNgIM
IAMgBSAGIAlzIA5zIgZBEHdzIAZzNgIIIAMgAiAIIA1zIgZBEHdzIAZzNgIEIAMQCkEAIQIDQCACIANqIgYgBigCACACIBRqKAIA
czYCACACQQRqIgJBIEcNAAsgAyADKAIYIgZBEndBg4aMGHEgBkEad0H8+fNncXIgBnMiDCADKAIcIgJzIgcgAkESd0GDhowYcSAC
QRp3Qfz582dxciACcyICIAMoAhAiBUESd0GDhowYcSAFQRp3Qfz582dxciAFcyINIAMoAhQiBHMiCHMiCUEMd0GPnrz4AHEgCUEU
d0Hw4cOHf3FycyAJczYCHCADIAYgBCAEQRJ3QYOGjBhxIARBGndB/PnzZ3FycyIPcyIGIAMoAgAiBEESd0GDhowYcSAEQRp3Qfz5
82dxciAEcyIOcyIJIAlBDHdBj568+ABxIAlBFHdB8OHDh39xcnMgAiAEcyIJczYCACADIAYgDCAFIAMoAgwiBEESd0GDhowYcSAE
QRp3Qfz582dxciAEcyIQcyACcyIRcyIFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAVzNgIYIAMgCCAEIAMoAggiBUESd0GDhowY
cSAFQRp3Qfz582dxciAFcyIMcyACcyISIAcgD3NzIgRBDHdBj568+ABxIARBFHdB8OHDh39xcnMgBHM2AhQgAyARIAYgB3MiCCAN
IAUgAygCBCIEQRJ3QYOGjBhxIARBGndB/PnzZ3FyIARzIg9zIhdzcyIFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAVzNgIQIAMg
EiAEIA5zIAJzIgUgBiAQc3MiAkEMd0GPnrz4AHEgAkEUd0Hw4cOHf3FycyACczYCDCADIBcgByAMcyAJcyICQQx3QY+evPgAcSAC
QRR3QfDhw4d/cXJzIAJzNgIIIAMgBSAIIA9zIgJBDHdBj568+ABxIAJBFHdB8OHDh39xcnMgAnM2AgQgAxAKIApBGGsiCSALSw0B
QQAhAgNAIAIgA2oiBiAGKAIAIAIgE2ooAgBzNgIAIAJBBGoiAkEgRw0ACyATQYABayETIBRBgAFrIRQgFUGAAWshFSAWQYABayEW
IAMgAygCGCIGQRR3QY+evPgAcSAGQRx3QfDhw4d/cXIgBnMiCyADKAIcIgJzIgcgAkEUd0GPnrz4AHEgAkEcd0Hw4cOHf3FyIAJz
IgIgAygCECIFQRR3QY+evPgAcSAFQRx3QfDhw4d/cXIgBXMiDCADKAIUIgRzIg1zIghBEHdzIAhzNgIcIAMgBiAEIARBFHdBj568
+ABxIARBHHdB8OHDh39xcnMiCHMiBiADKAIAIgRBFHdBj568+ABxIARBHHdB8OHDh39xciAEcyIPcyIOQRB3IA5zIAIgBHMiDnM2
AgAgAyAGIAsgBSADKAIMIgRBFHdBj568+ABxIARBHHdB8OHDh39xciAEcyIQcyACcyIRcyIFQRB3cyAFczYCGCADIA0gBCADKAII
IgVBFHdBj568+ABxIAVBHHdB8OHDh39xciAFcyILcyACcyISIAcgCHNzIgRBEHdzIARzNgIUIAMgESAGIAdzIg0gDCAFIAMoAgQi
BEEUd0GPnrz4AHEgBEEcd0Hw4cOHf3FyIARzIghzIgVzcyIMQRB3cyAMczYCECADIBIgBCAPcyACcyICIAYgEHNzIgZBEHdzIAZz
NgIMIAMgBSAHIAtzIA5zIgZBEHdzIAZzNgIIIAMgAiAIIA1zIgZBEHdzIAZzNgIEIAMQCiAKQSBrIgpBeEcNAAtBeCAJQYyWwAAQ
OQALIAkgC0GclsAAEDkAC5UEAQt/IAAoAgQhCiAAKAIAIQsgACgCCCEMAkADQCAFDQECQAJAIAIgBEkNAANAIAEgBGohBQJAAkAC
QAJAIAIgBGsiBkEITwRAIAVBA2pBfHEiACAFRg0BIAAgBWsiAEUNAUEAIQMDQCADIAVqLQAAQQpGDQUgACADQQFqIgNHDQALIAAg
BkEIayIDSw0DDAILIAIgBEYEQCACIQQMBgtBACEDA0AgAyAFai0AAEEKRg0EIAYgA0EBaiIDRw0ACyACIQQMBQsgBkEIayEDQQAh
AAsDQCAAIAVqIgdBBGooAgAiCUGKlKjQAHNBgYKECGsgCUF/c3EgBygCACIHQYqUqNAAc0GBgoQIayAHQX9zcXJBgIGChHhxDQEg
AEEIaiIAIANNDQALCyAAIAZGBEAgAiEEDAMLA0AgACAFai0AAEEKRgRAIAAhAwwCCyAGIABBAWoiAEcNAAsgAiEEDAILIAMgBGoi
AEEBaiEEAkAgACACTw0AIAAgAWotAABBCkcNAEEAIQUgBCEDIAQhAAwDCyACIARPDQALC0EBIQUgAiIAIAgiA0YNAgsCQCAMLQAA
BEAgC0HUnMAAQQQgCigCDBEBAA0BCyABIAhqIQYgACAIayEHQQAhCSAMIAAgCEcEfyAGIAdqQQFrLQAAQQpGBSAJCzoAACADIQgg
CyAGIAcgCigCDBEBAEUNAQsLQQEhDQsgDQvPBAEEfyAAIAEQhAEhAgJAAkACQAJAAkACQAJAIAAQdQ0AIAAoAgAhAyAAEGoNASAB
IANqIQEgACADEIUBIgBBwKbAACgCAEYEQCACKAIEQQNxQQNHDQFBuKbAACABNgIAIAAgASACEE8PCyADQYACTwRAIAAQHAwBCyAA
QQxqKAIAIgQgAEEIaigCACIFRwRAIAUgBDYCDCAEIAU2AggMAQtBsKbAAEGwpsAAKAIAQX4gA0EDdndxNgIACyACEGUNAiACQcSm
wAAoAgBGDQQgAkHApsAAKAIARw0BQcCmwAAgADYCAEG4psAAQbimwAAoAgAgAWoiATYCACAAIAEQVA8LIAEgA2pBEGohAAwECyAC
EHQiAyABaiEBAkAgA0GAAk8EQCACEBwMAQsgAkEMaigCACIEIAJBCGooAgAiAkcEQCACIAQ2AgwgBCACNgIIDAELQbCmwABBsKbA
ACgCAEF+IANBA3Z3cTYCAAsgACABEFQgAEHApsAAKAIARw0BQbimwAAgATYCAA8LIAAgASACEE8LIAFBgAJPBEAgACABEB0PCyAB
QXhxQaikwABqIQICf0GwpsAAKAIAIgNBASABQQN2dCIBcUUEQEGwpsAAIAEgA3I2AgAgAgwBCyACKAIICyEBIAIgADYCCCABIAA2
AgwgACACNgIMIAAgATYCCA8LQcSmwAAgADYCAEG8psAAQbymwAAoAgAgAWoiATYCACAAIAFBAXI2AgQgAEHApsAAKAIARw0AQbim
wABBADYCAEHApsAAQQA2AgALC5ASAQ5/IwBBIGsiAyQAIANBGGpCADcDACADQRBqQgA3AwAgA0EIakIANwMAIANCADcDACADIAIg
AkEQahAUQQAhAgNAIAIgA2oiCiAKKAIAIAEgAmooAgBzNgIAIAJBBGoiAkEgRw0ACyABQYABaiEKIAFB4ABqIQ0gAUFAayEOIAFB
IGohD0EIIRADQCADEAwgAyADKAIYIgJBFndBv/78+QNxIAJBHndBwIGDhnxxciIGIAJzIgQgAygCHCICQRZ3Qb/+/PkDcSACQR53
QcCBg4Z8cXIiBSACcyICQQx3QY+evPgAcSACQRR3QfDhw4d/cXJzIAVzNgIcIAMgBiADKAIUIgVBFndBv/78+QNxIAVBHndBwIGD
hnxxciIHIAVzIgUgBEEMd0GPnrz4AHEgBEEUd0Hw4cOHf3Fyc3M2AhggAyADKAIQIgRBFndBv/78+QNxIARBHndBwIGDhnxxciIJ
IARzIgQgBUEMd0GPnrz4AHEgBUEUd0Hw4cOHf3FycyAHczYCFCADIAMoAgQiBUEWd0G//vz5A3EgBUEed0HAgYOGfHFyIgsgBXMi
BSADKAIIIgZBFndBv/78+QNxIAZBHndBwIGDhnxxciIHIAZzIgZBDHdBj568+ABxIAZBFHdB8OHDh39xcnMgB3M2AgggAyADKAIA
IgdBFndBv/78+QNxIAdBHndBwIGDhnxxciIIIAdzIgdBDHdBj568+ABxIAdBFHdB8OHDh39xciAIcyACczYCACADIAkgAygCDCII
QRZ3Qb/+/PkDcSAIQR53QcCBg4Z8cXIiDCAIcyIIIARBDHdBj568+ABxIARBFHdB8OHDh39xcnNzIAJzNgIQIAMgBiAIQQx3QY+e
vPgAcSAIQRR3QfDhw4d/cXJzIAxzIAJzNgIMIAMgByAFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAtzIAJzNgIEQQAhAgNAIAIg
A2oiBCAEKAIAIAIgD2ooAgBzNgIAIAJBBGoiAkEgRw0ACyAQQegARgRAQQAhAgNAIAIgA2oiCiAKKAIAIgogCiAKQQR2c0GAnoD4
AHEiCkEEdHMgCnM2AgAgAkEEaiICQSBHDQALIAFBwANqIQEgAxAMQQAhAgNAIAIgA2oiCiAKKAIAIAEgAmooAgBzNgIAIAJBBGoi
AkEgRw0ACyAAIAMQFSADQSBqJAAFIAMQDCADIAMoAhgiAkEUd0GPnrz4AHEgAkEcd0Hw4cOHf3FyIgUgAnMiBiADKAIcIgJBFHdB
j568+ABxIAJBHHdB8OHDh39xciIEIAJzIgJBEHdzIARzNgIcIAMgBSADKAIUIgRBFHdBj568+ABxIARBHHdB8OHDh39xciIHIARz
IgggBkEQd3NzNgIYIAMgByADKAIQIgRBFHdBj568+ABxIARBHHdB8OHDh39xciIFIARzIgYgCEEQd3NzNgIUIAMgAygCBCIEQRR3
QY+evPgAcSAEQRx3QfDhw4d/cXIiByAEcyIIIAMoAggiBEEUd0GPnrz4AHEgBEEcd0Hw4cOHf3FyIgkgBHMiC0EQd3MgCXM2Aggg
AyADKAIAIgRBFHdBj568+ABxIARBHHdB8OHDh39xciIJIARzIgxBEHcgCXMgAnM2AgAgAyAFIAMoAgwiBEEUd0GPnrz4AHEgBEEc
d0Hw4cOHf3FyIgkgBHMiBCAGQRB3c3MgAnM2AhAgAyALIARBEHdzIAlzIAJzNgIMIAMgDCAIQRB3cyAHcyACczYCBEEAIQIDQCAC
IANqIgQgBCgCACACIA5qKAIAczYCACACQQRqIgJBIEcNAAsgAxAMIAMgAygCGCICQRJ3QYOGjBhxIAJBGndB/PnzZ3FyIgYgAnMi
BCADKAIcIgJBEndBg4aMGHEgAkEad0H8+fNncXIiBSACcyICQQx3QY+evPgAcSACQRR3QfDhw4d/cXJzIAVzNgIcIAMgBiADKAIU
IgVBEndBg4aMGHEgBUEad0H8+fNncXIiByAFcyIFIARBDHdBj568+ABxIARBFHdB8OHDh39xcnNzNgIYIAMgAygCECIEQRJ3QYOG
jBhxIARBGndB/PnzZ3FyIgkgBHMiBCAFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAdzNgIUIAMgAygCBCIFQRJ3QYOGjBhxIAVB
GndB/PnzZ3FyIgsgBXMiBSADKAIIIgZBEndBg4aMGHEgBkEad0H8+fNncXIiByAGcyIGQQx3QY+evPgAcSAGQRR3QfDhw4d/cXJz
IAdzNgIIIAMgAygCACIHQRJ3QYOGjBhxIAdBGndB/PnzZ3FyIgggB3MiB0EMd0GPnrz4AHEgB0EUd0Hw4cOHf3FyIAhzIAJzNgIA
IAMgCSADKAIMIghBEndBg4aMGHEgCEEad0H8+fNncXIiDCAIcyIIIARBDHdBj568+ABxIARBFHdB8OHDh39xcnNzIAJzNgIQIAMg
BiAIQQx3QY+evPgAcSAIQRR3QfDhw4d/cXJzIAxzIAJzNgIMIAMgByAFQQx3QY+evPgAcSAFQRR3QfDhw4d/cXJzIAtzIAJzNgIE
QQAhAgNAIAIgA2oiBCAEKAIAIAIgDWooAgBzNgIAIAJBBGoiAkEgRw0ACyADEAwgAyADKAIYIgJBGHciBCACcyIFIAMoAhwiAkEY
dyIGIAJzIgJBEHdzIAZzNgIcIAMgBCADKAIUIgZBGHciByAGcyIGIAVBEHdzczYCGCADIAcgAygCECIEQRh3IgUgBHMiBCAGQRB3
c3M2AhQgAyADKAIEIgZBGHciByAGcyIGIAMoAggiCEEYdyIJIAhzIghBEHdzIAlzNgIIIAMgAygCACIJQRh3IgsgCXMiCUEQdyAL
cyACczYCACADIAUgAygCDCILQRh3IgwgC3MiCyAEQRB3c3MgAnM2AhAgAyAIIAtBEHdzIAxzIAJzNgIMIAMgCSAGQRB3cyAHcyAC
czYCBEEAIQIDQCACIANqIgQgBCgCACACIApqKAIAczYCACACQQRqIgJBIEcNAAsgCkGAAWohCiANQYABaiENIA5BgAFqIQ4gD0GA
AWohDyAQQSBqIRAMAQsLC4gEAQh/IAEoAgQiBQRAIAEoAgAhBANAAkAgA0EBaiECAn8gAiADIARqLQAAIgjAIglBAE4NABoCQAJA
AkACQAJAAkACQAJAAkACQAJAIAhBjKDAAGotAABBAmsOAwABAgwLQYyiwAAgAiAEaiACIAVPGy0AAEHAAXFBgAFHDQsgA0ECagwK
C0GMosAAIAIgBGogAiAFTxssAAAhByAIQeABayIGRQ0BIAZBDUYNAgwDC0GMosAAIAIgBGogAiAFTxssAAAhBiAIQfABaw4FBAMD
AwUDCyAHQWBxQaB/Rw0IDAYLIAdBn39KDQcMBQsgCUEfakH/AXFBDE8EQCAJQX5xQW5HIAdBQE5yDQcMBQsgB0FATg0GDAQLIAlB
D2pB/wFxQQJLIAZBQE5yDQUMAgsgBkHwAGpB/wFxQTBPDQQMAQsgBkGPf0oNAwtBjKLAACAEIANBAmoiAmogAiAFTxstAABBwAFx
QYABRw0CQYyiwAAgBCADQQNqIgJqIAIgBU8bLQAAQcABcUGAAUcNAiADQQRqDAELQYyiwAAgBCADQQJqIgJqIAIgBU8bLQAAQcAB
cUGAAUcNASADQQNqCyIDIgIgBUkNAQsLIAAgAzYCBCAAIAQ2AgAgASAFIAJrNgIEIAEgAiAEajYCACAAIAIgA2s2AgwgACADIARq
NgIIDwsgAEEANgIAC/QGAgx/AX4jAEHQAGsiAyQAIANBPGogASACECYCQCADKAI8BEAgA0EoaiADQcQAaiILKAIAIgE2AgAgAyAD
KQI8Ig83AyBBACECIANBGGogAUEAEDwgA0EANgJEIAMgAykDGDcCPCADQRBqIgQgASAPpyIFajYCBCAEIAU2AgAgAygCECIBIAMo
AhQiDEcEQANAIAEtAAAiBEEEdkHkiMAAai0AAEEEdCAEQQ9xQeSIwABqLQAAciENIAMoAkAgAkYEfyMAQRBrIggkACAIQQhqIQog
A0E8aiEJQQAhBiMAQSBrIgUkAAJAIAIgAkEBaiIESw0AQQggCSgCBCICQQF0IgYgBCAEIAZJGyIEIARBCE0bIgRBf3NBH3YhBgJA
IAJFBEAgBUEANgIYDAELIAUgAjYCHCAFQQE2AhggBSAJKAIANgIUCyAFQRRqIQcgBUEIaiICAn8CQAJ/AkACQCAGBEAgBEEASA0B
IAcoAgQEQCAHQQhqKAIAIg4EQCAHKAIAIA4gBiAEEFkMBQsLIARFDQJB3aLAAC0AABogBCAGEGAMAwsgAkEANgIEIAJBCGogBDYC
AAwDCyACQQA2AgQMAgsgBgsiBwRAIAIgBzYCBCACQQhqIAQ2AgBBAAwCCyACIAY2AgQgAkEIaiAENgIAC0EBCzYCACAFKAIMIQYg
BSgCCARAIAVBEGooAgAhBAwBCyAJIAQ2AgQgCSAGNgIAQYGAgIB4IQYLIAogBDYCBCAKIAY2AgAgBUEgaiQAAkACQCAIKAIIIgJB
gYCAgHhHBEAgAkUNASACIAgoAgwQegALIAhBEGokAAwBCxBHAAsgAygCRAUgAgsgAygCPGogDToAACADIAMoAkRBAWoiAjYCRCAB
QQFqIgEgDEcNAAsLIANBOGogCygCACIBNgIAIAMgAykCPCIPNwMwIANBPGogD6cgARALIAMoAjwNASADKAJAIQIgA0EIaiADQcQA
aigCACIBQQAQPCADKAIMIQQgAygCCCACIAEQggEhAiAAIAE2AgggACAENgIEIAAgAjYCACADQTBqEFEgA0EgahBRIANB0ABqJAAP
CyADIAMpAkA3AzBB3IfAAEErIANBMGpBmIjAAEHUiMAAEDQACyADIAMpAkA3A0hB3IfAAEErIANByABqQYiIwABB9IjAABA0AAuk
AwENfyAAIAIoAAwiAyABKAAMIgRBAXZzQdWq1aoFcSIIIANzIgMgAigACCIFIAEoAAgiBkEBdnNB1arVqgVxIgkgBXMiBUECdnNB
s+bMmQNxIgsgA3MiAyACKAAEIgcgASgABCIKQQF2c0HVqtWqBXEiDCAHcyIHIAIoAAAiAiABKAAAIgFBAXZzQdWq1aoFcSINIAJz
IgJBAnZzQbPmzJkDcSIOIAdzIgdBBHZzQY+evPgAcSIPIANzNgIcIAAgBCAIQQF0cyIDIAYgCUEBdHMiBEECdnNBs+bMmQNxIggg
A3MiAyAKIAxBAXRzIgYgASANQQF0cyIBQQJ2c0Gz5syZA3EiCSAGcyIGQQR2c0GPnrz4AHEiCiADczYCGCAAIAtBAnQgBXMiAyAO
QQJ0IAJzIgJBBHZzQY+evPgAcSIFIANzNgIUIAAgD0EEdCAHczYCDCAAIAhBAnQgBHMiAyAJQQJ0IAFzIgFBBHZzQY+evPgAcSIE
IANzNgIQIAAgCkEEdCAGczYCCCAAIAVBBHQgAnM2AgQgACAEQQR0IAFzNgIAC6QDAQ5/IAAgASgCHCICIAEoAhgiBEEBdnNB1arV
qgVxIgcgAnMiAiABKAIUIgUgASgCECIGQQF2c0HVqtWqBXEiCCAFcyIFQQJ2c0Gz5syZA3EiCSACcyICIAEoAgwiAyABKAIIIgtB
AXZzQdWq1aoFcSIMIANzIgMgASgCBCIKIAEoAgAiAUEBdnNB1arVqgVxIg0gCnMiCkECdnNBs+bMmQNxIg4gA3MiA0EEdnNBj568
+ABxIg8gAnM2ABwgACAJQQJ0IAVzIgIgDkECdCAKcyIFQQR2c0GPnrz4AHEiCSACczYAGCAAIA9BBHQgA3M2ABQgACAEIAdBAXRz
IgIgBiAIQQF0cyIEQQJ2c0Gz5syZA3EiByACcyICIAsgDEEBdHMiBiABIA1BAXRzIgFBAnZzQbPmzJkDcSIIIAZzIgZBBHZzQY+e
vPgAcSIDIAJzNgAMIAAgCUEEdCAFczYAECAAIAdBAnQgBHMiAiAIQQJ0IAFzIgFBBHZzQY+evPgAcSIEIAJzNgAIIAAgA0EEdCAG
czYABCAAIARBBHQgAXM2AAAL+wIBB38jAEEQayIEJAACQAJAAkACQAJAAkAgASgCBCICRQ0AIAEoAgAhBiACQQNxIQcCQCACQQRJ
BEBBACECDAELIAZBHGohAyACQXxxIQhBACECA0AgAygCACADQQhrKAIAIANBEGsoAgAgA0EYaygCACACampqaiECIANBIGohAyAI
IAVBBGoiBUcNAAsLIAcEQCAFQQN0IAZqQQRqIQMDQCADKAIAIAJqIQIgA0EIaiEDIAdBAWsiBw0ACwsgAUEMaigCAARAIAJBAEgN
ASAGKAIERSACQRBJcQ0BIAJBAXQhAgsgAg0BC0EBIQNBACECDAELIAJBAEgNAUHdosAALQAAGiACQQEQYCIDRQ0CCyAEQQA2Aggg
BCACNgIEIAQgAzYCACAEQbiZwAAgARANRQ0CQZiawABBMyAEQQ9qQcyawABB9JrAABA0AAsQRwALQQEgAhB6AAsgACAEKQIANwIA
IABBCGogBEEIaigCADYCACAEQRBqJAAL4wIBBX9BEEEIEFggAEsEQEEQQQgQWCEAC0EIQQgQWCEDQRRBCBBYIQJBEEEIEFghBAJA
QQBBEEEIEFhBAnRrIgVBgIB8IAQgAiADamprQXdxQQNrIgMgAyAFSxsgAGsgAU0NACAAQRAgAUEEakEQQQgQWEEFayABSxtBCBBY
IgNqQRBBCBBYakEEaxADIgJFDQAgAhCHASEBAkAgAEEBayIEIAJxRQRAIAEhAAwBCyACIARqQQAgAGtxEIcBIQJBEEEIEFghBCAB
EHQgAiAAQQAgAiABayAETRtqIgAgAWsiAmshBCABEGpFBEAgACAEEEwgASACEEwgASACEBAMAQsgASgCACEBIAAgBDYCBCAAIAEg
Amo2AgALAkAgABBqDQAgABB0IgJBEEEIEFggA2pNDQAgACADEIQBIQEgACADEEwgASACIANrIgMQTCABIAMQEAsgABCGASEGIAAQ
ahoLIAYLigMCBX8BfiMAQUBqIgUkAEEBIQcCQCAALQAEDQAgAC0ABSEJIAAoAgAiBigCHCIIQQRxRQRAIAYoAhRB25zAAEHYnMAA
IAkbQQJBAyAJGyAGQRhqKAIAKAIMEQEADQEgBigCFCABIAIgBigCGCgCDBEBAA0BIAYoAhRBqJzAAEECIAYoAhgoAgwRAQANASAD
IAYgBCgCDBEAACEHDAELIAlFBEAgBigCFEHdnMAAQQMgBkEYaigCACgCDBEBAA0BIAYoAhwhCAsgBUEBOgAbIAVBNGpBvJzAADYC
ACAFIAYpAhQ3AgwgBSAFQRtqNgIUIAUgBikCCDcCJCAGKQIAIQogBSAINgI4IAUgBigCEDYCLCAFIAYtACA6ADwgBSAKNwIcIAUg
BUEMaiIINgIwIAggASACEA8NACAFQQxqQaicwABBAhAPDQAgAyAFQRxqIAQoAgwRAAANACAFKAIwQeCcwABBAiAFKAI0KAIMEQEA
IQcLIABBAToABSAAIAc6AAQgBUFAayQAIAALiAQBBX8jAEEQayIDJAACQAJ/AkAgAUGAAU8EQCADQQA2AgwgAUGAEEkNASABQYCA
BEkEQCADIAFBP3FBgAFyOgAOIAMgAUEMdkHgAXI6AAwgAyABQQZ2QT9xQYABcjoADUEDDAMLIAMgAUE/cUGAAXI6AA8gAyABQQZ2
QT9xQYABcjoADiADIAFBDHZBP3FBgAFyOgANIAMgAUESdkEHcUHwAXI6AAxBBAwCCyAAKAIIIgIgACgCBEYEQCMAQSBrIgQkAAJA
AkAgAkEBaiICRQ0AQQggACgCBCIGQQF0IgUgAiACIAVJGyICIAJBCE0bIgVBf3NBH3YhAgJAIAZFBEAgBEEANgIYDAELIAQgBjYC
HCAEQQE2AhggBCAAKAIANgIUCyAEQQhqIAIgBSAEQRRqEC4gBCgCDCECIAQoAghFBEAgACAFNgIEIAAgAjYCAAwCCyACQYGAgIB4
Rg0BIAJFDQAgAiAEQRBqKAIAEHoACxBHAAsgBEEgaiQAIAAoAgghAgsgACACQQFqNgIIIAAoAgAgAmogAToAAAwCCyADIAFBP3FB
gAFyOgANIAMgAUEGdkHAAXI6AAxBAgshASABIAAoAgQgACgCCCICa0sEQCAAIAIgARAsIAAoAgghAgsgACgCACACaiADQQxqIAEQ
ggEaIAAgASACajYCCAsgA0EQaiQAQQALvgICBX8BfiMAQTBrIgQkAEEnIQICQCAAQpDOAFQEQCAAIQcMAQsDQCAEQQlqIAJqIgNB
BGsgACAAQpDOAIAiB0KQzgB+faciBUH//wNxQeQAbiIGQQF0QaqdwABqLwAAOwAAIANBAmsgBSAGQeQAbGtB//8DcUEBdEGqncAA
ai8AADsAACACQQRrIQIgAEL/wdcvViAHIQANAAsLIAenIgNB4wBLBEAgAkECayICIARBCWpqIAenIgMgA0H//wNxQeQAbiIDQeQA
bGtB//8DcUEBdEGqncAAai8AADsAAAsCQCADQQpPBEAgAkECayICIARBCWpqIANBAXRBqp3AAGovAAA7AAAMAQsgAkEBayICIARB
CWpqIANBMGo6AAALIAFBxJvAAEEAIARBCWogAmpBJyACaxAJIARBMGokAAuyAgEDfyMAQYABayIEJAACQAJAAn8CQCABKAIcIgJB
EHFFBEAgAkEgcQ0BIAA1AgAgARAaDAILIAAoAgAhAEEAIQIDQCACIARqQf8AakEwQdcAIABBD3EiA0EKSRsgA2o6AAAgAkEBayEC
IABBEEkgAEEEdiEARQ0ACyACQYABaiIAQYABSw0CIAFBqJ3AAEECIAIgBGpBgAFqQQAgAmsQCQwBCyAAKAIAIQBBACECA0AgAiAE
akH/AGpBMEE3IABBD3EiA0EKSRsgA2o6AAAgAkEBayECIABBEEkgAEEEdiEARQ0ACyACQYABaiIAQYABSw0CIAFBqJ3AAEECIAIg
BGpBgAFqQQAgAmsQCQsgBEGAAWokAA8LIABBgAFBmJ3AABA2AAsgAEGAAUGYncAAEDYAC7sCAQV/IAAoAhghAwJAAkAgACAAKAIM
RgRAIABBFEEQIABBFGoiASgCACIEG2ooAgAiAg0BQQAhAQwCCyAAKAIIIgIgACgCDCIBNgIMIAEgAjYCCAwBCyABIABBEGogBBsh
BANAIAQhBSACIgFBFGoiAiABQRBqIAIoAgAiAhshBCABQRRBECACG2ooAgAiAg0ACyAFQQA2AgALAkAgA0UNAAJAIAAgACgCHEEC
dEGYo8AAaiICKAIARwRAIANBEEEUIAMoAhAgAEYbaiABNgIAIAENAQwCCyACIAE2AgAgAQ0AQbSmwABBtKbAACgCAEF+IAAoAhx3
cTYCAA8LIAEgAzYCGCAAKAIQIgIEQCABIAI2AhAgAiABNgIYCyAAQRRqKAIAIgBFDQAgAUEUaiAANgIAIAAgATYCGAsLnwIBBH8g
AEIANwIQIAACf0EAIAFBgAJJDQAaQR8gAUH///8HSw0AGiABQQYgAUEIdmciAmt2QQFxIAJBAXRrQT5qCyIDNgIcIANBAnRBmKPA
AGohAgJAQbSmwAAoAgAiBEEBIAN0IgVxRQRAQbSmwAAgBCAFcjYCACACIAA2AgAMAQsgAigCACECIAMQUyEDAkACQCACEHQgAUYE
QCACIQMMAQsgASADdCEEA0AgAiAEQR12QQRxakEQaiIFKAIAIgNFDQIgBEEBdCEEIAMiAhB0IAFHDQALCyADKAIIIgEgADYCDCAD
IAA2AgggACADNgIMIAAgATYCCCAAQQA2AhgPCyAFIAA2AgALIAAgAjYCGCAAIAA2AgggACAANgIMC8QCAgR/AX4jAEFAaiIDJAAg
ACgCACEFIAACf0EBIAAtAAgNABogACgCBCIEKAIcIgZBBHFFBEBBASAEKAIUQducwABB5ZzAACAFG0ECQQEgBRsgBEEYaigCACgC
DBEBAA0BGiABIAQgAigCDBEAAAwBCyAFRQRAQQEgBCgCFEHmnMAAQQIgBEEYaigCACgCDBEBAA0BGiAEKAIcIQYLIANBAToAGyAD
QTRqQbycwAA2AgAgAyAEKQIUNwIMIAMgA0EbajYCFCADIAQpAgg3AiQgBCkCACEHIAMgBjYCOCADIAQoAhA2AiwgAyAELQAgOgA8
IAMgBzcCHCADIANBDGo2AjBBASABIANBHGogAigCDBEAAA0AGiADKAIwQeCcwABBAiADKAI0KAIMEQEACzoACCAAIAVBAWo2AgAg
A0FAayQAIAALXQEMf0GgpMAAKAIAIgIEQEGYpMAAIQYDQCACIgEoAgghAiABKAIEIQMgASgCACEEIAEoAgwaIAEhBiAFQQFqIQUg
Ag0ACwtB2KbAAEH/HyAFIAVB/x9NGzYCACAIC8YeAhB/A34jAEEgayIIJAAgCCACNgIYIAggAjYCFCAIIAE2AhAgCEEQahA+IAgo
AhghEyAIKAIQIQEgCCADBH8gCCAENgIYIAggBDYCFCAIIAM2AhAgCEEQahA+IAggCCgCGCICNgIMIAggAjYCCCAIKAIQBUEACzYC
BCAIQRBqIREjAEGgCWsiBSQAAkACQAJAAkACQCAIQQRqIgMoAgBFBEAgBUHwBGpB4InAAEEsEBMgBSgC8AQiAkUNASAFIAUoAvgE
Igc2AiwgBSAFKAL0BDYCKCAFIAI2AiQMAgsgBUGYAWogA0EIaigCACICNgIAIAUgAykCACIWNwOQASAFQfAEaiAWpyACEBMgBSgC
8AQiAgRAIAUgBSgC+AQiBzYCLCAFIAUoAvQENgIoIAUgAjYCJCAFQZABahBRDAILIAUoAvQEIQIgEUEANgIAIBEgAjYCBCAFQZAB
ahBRDAILIAUoAvQEIQIgEUEANgIAIBEgAjYCBAwBCyAHQSBHBEBBnIrAAEEJEAEhAiARQQA2AgAgESACNgIEIAVBJGoQUQwBCyAF
QcgAaiIHIAJBGGopAAA3AwAgBUFAayIEIAJBEGopAAA3AwAgBUE4aiIDIAJBCGopAAA3AwAgBSACKQAANwMwIAVBGGogE0EAEDwg
BSgCHCECIAUoAhggASATEIIBIQogBSATNgJcIAUgAjYCWCAFIAo2AlQgBUH4AGogBykDADcDACAFQfAAaiAEKQMANwMAIAVB6ABq
IAMpAwA3AwAgBSAFKQMwNwNgIAVBkAFqIAVB4ABqEAggBUEQaiATQXBxIg1BEGoiDkEBEDwgBSAONgKMASAFIAUoAhQ2AogBIAUg
BSgCECISNgKEASAOIBNJDQEgBUHwBGoiECAFQZABakHgAxCCARogBUGACWoiA0IANwAAIANBCGpCADcAACADIAogDWogE0EPcSIC
EIIBGiACIANqQRAgAmsiAiACEIEBGiAFQdgIaiAFQYgJaikAADcDACAFIAUpAIAJNwPQCCAFIBNBBHY2AogJIAUgEjYChAkgBSAK
NgKACSMAQUBqIgkkACADKAIIIhRBAXEgAygCBCEHIAMoAgAhBCAUQQJPBEAgFEEBdiEGIAQhAyAHIQIDQCAJQSBqIBAgAxARIAJB
GGogCUE4aikDADcAACACQRBqIAlBMGopAwA3AAAgAkEIaiAJQShqKQMANwAAIAIgCSkDIDcAACADQSBqIQMgAkEgaiECIAZBAWsi
Bg0ACwsEQCAJEE0gCUEIaiAEIBRB/v///wBxQQR0IgNqIgJBCGopAAA3AwAgCSACKQAANwMAIAlBIGogECAJEBEgAyAHaiICQQhq
IAlBKGopAAA3AAAgAiAJKQAgNwAACyAJQUBrJAAgEkUNASAFQeAIaiICEE0gBUHoCGogBUHYCGopAwA3AwAgBSAFKQPQCDcD4Agg
BUGACWogBUHwBGoiFCACEBEgDSASaiICQQhqIAVBiAlqKQAANwAAIAIgBSkAgAk3AAAgBUEIaiAOQQAQPCAFKAIMIQMgBSgCCCAS
IA4QggEhAiAFIA42AvgEIAUgAzYC9AQgBSACNgLwBCMAQTBrIgwkACAMQRBqIQYgFCgCCCIPIRBBqILAAC0AACEKIwBBIGsiDSQA
IBBBgICAgHxJIQQgEEEDbiICQQJ0IQMCQCAQIAJBA2xrIgdFBEAgAyECDAELAkACQAJAIApFBEBBAiECIAdBAWsOAgMCAQsgEEGA
gICAfEkgA0EEaiICIANPcSEEDAMLIA1BEGpCADcCACANQQE2AgggDUHgjsAANgIEIA0gDUEcajYCDCANQQRqQcyPwAAQSAALQQMh
AgsgAiADciECCyAGIAI2AgQgBiAENgIAIA1BIGokAAJAAkAgDCgCEARAIAxBCGogDCgCFCILQQEQPCAMKAIMIRAgDCgCCCEJQQAh
B0EAIQQCQAJAAkACfyAUKAIAIQ5BACECAkAgD0EbSQ0AIA9BGmsiAkEAIAIgD00bIQoCQANAIA8gB0Eaak8EQCAEQWBGDQIgCyAE
QSBqIgJJBEAgAiALQZSVwAAQOAALIAQgCWoiBiAHIA5qIgQpAAAiFUI4hiIWQjqIp0GrgsAAai0AADoAACAGQQRqIBVCgICA+A+D
QgiGIhdCIoinQauCwABqLQAAOgAAIAZBAWogFiAVQoD+A4NCKIaEIhZCNIinQT9xQauCwABqLQAAOgAAIAZBAmogFiAVQoCA/AeD
QhiGIBeEhCIXQi6Ip0E/cUGrgsAAai0AADoAACAGQQNqIBdCKIinQT9xQauCwABqLQAAOgAAIAZBBmogFUIIiEKAgID4D4MgFUIY
iEKAgPwHg4QgFUIoiEKA/gODIBVCOIiEhCIWpyIDQRZ2QT9xQauCwABqLQAAOgAAIAZBB2ogA0EQdkE/cUGrgsAAai0AADoAACAG
QQVqIBYgF4RCHIinQT9xQauCwABqLQAAOgAAIAZBCGogBEEGaikAACIVQjiGIhZCOoinQauCwABqLQAAOgAAIAZBCWogFiAVQoD+
A4NCKIaEIhdCNIinQT9xQauCwABqLQAAOgAAIAZBCmogFyAVQoCAgPgPg0IIhiIWIBVCgID8B4NCGIaEhCIXQi6Ip0E/cUGrgsAA
ai0AADoAACAGQQtqIBdCKIinQT9xQauCwABqLQAAOgAAIAZBDGogFkIiiKdBq4LAAGotAAA6AAAgBkENaiAXIBVCCIhCgICA+A+D
IBVCGIhCgID8B4OEIBVCKIhCgP4DgyAVQjiIhIQiFoRCHIinQT9xQauCwABqLQAAOgAAIAZBDmogFqciA0EWdkE/cUGrgsAAai0A
ADoAACAGQQ9qIANBEHZBP3FBq4LAAGotAAA6AAAgBkEQaiAEQQxqKQAAIhVCOIYiFkI6iKdBq4LAAGotAAA6AAAgBkERaiAWIBVC
gP4Dg0IohoQiF0I0iKdBP3FBq4LAAGotAAA6AAAgBkESaiAXIBVCgICA+A+DQgiGIhYgFUKAgPwHg0IYhoSEIhdCLoinQT9xQauC
wABqLQAAOgAAIAZBE2ogF0IoiKdBP3FBq4LAAGotAAA6AAAgBkEUaiAWQiKIp0GrgsAAai0AADoAACAGQRZqIBVCCIhCgICA+A+D
IBVCGIhCgID8B4OEIBVCKIhCgP4DgyAVQjiIhIQiFqciA0EWdkE/cUGrgsAAai0AADoAACAGQRdqIANBEHZBP3FBq4LAAGotAAA6
AAAgBkEVaiAWIBeEQhyIp0E/cUGrgsAAai0AADoAACAGQRhqIARBEmopAAAiFUI4hiIWQjqIp0GrgsAAai0AADoAACAGQRlqIBYg
FUKA/gODQiiGhCIXQjSIp0E/cUGrgsAAai0AADoAACAGQRpqIBcgFUKAgID4D4NCCIYiFiAVQoCA/AeDQhiGhIQiF0IuiKdBP3FB
q4LAAGotAAA6AAAgBkEbaiAXQiiIp0E/cUGrgsAAai0AADoAACAGQRxqIBZCIoinQauCwABqLQAAOgAAIAZBHWogFyAVQgiIQoCA
gPgPgyAVQhiIQoCA/AeDhCAVQiiIQoD+A4MgFUI4iISEIhaEQhyIp0E/cUGrgsAAai0AADoAACAGQR5qIBanIgNBFnZBP3FBq4LA
AGotAAA6AAAgBkEfaiADQRB2QT9xQauCwABqLQAAOgAAIAIhBCAKIAdBGGoiB08NAQwDCwsgB0EaaiAPQYSVwAAQOAALQWBBAEGU
lcAAEDkACwJAAkACQAJAAkACfwJAAkACQAJAAkACQCAPIA9BA3AiBmsiEiAHTQRAIAIhAwwBCwNAIAdBfEsNAiAHQQNqIgQgD0sN
AyACQQRqIQMgAkF7Sw0EIAMgC0sEQCADIAtB9JTAABA4AAsgAiAJaiINIAcgDmoiAi0AACIKQQJ2QauCwABqLQAAOgAAIA1BA2og
AkECai0AACIHQT9xQauCwABqLQAAOgAAIA1BAmogAkEBai0AACICQQJ0IAdBBnZyQT9xQauCwABqLQAAOgAAIA1BAWogCkEEdCAC
QQR2ckE/cUGrgsAAai0AADoAACADIQIgBCIHIBJJDQALCyAGQQFrDgIDBAYLIAcgB0EDakHklMAAEDkACyAHQQNqIA9B5JTAABA4
AAsgAiADQfSUwAAQOQALIAMgC0kEQEECIQcgAyAJaiAOIBJqLQAAIgJBAnZBq4LAAGotAAA6AAAgAkEEdEEwcSALIANBAWoiBEsN
AhogBCALQdSUwAAQNwALIAMgC0HElMAAEDcACyADIAtPDQIgAyAJaiAOIBJqLQAAIgJBAnZBq4LAAGotAAA6AAAgEkEBaiIKIA9P
DQMgA0EBaiIEIAtPDQRBAyEHIAQgCWogAkEEdCAKIA5qLQAAIgJBBHZyQT9xQauCwABqLQAAOgAAIANBAmoiBCALTw0FIAJBAnRB
PHELIQIgBCAJaiACQauCwABqLQAAOgAAIAMgB2ohAwsgAwwECyADIAtBhJTAABA3AAsgCiAPQZSUwAAQNwALIAQgC0GklMAAEDcA
CyAEIAtBtJTAABA3AAsiCkGogsAALQAABH8gCiALSw0BAn8gCSAKaiECIAsgCmshB0EAIQMCQEEAIAprQQNxIgQEQANAIAMgB0YN
AiACIANqQT06AAAgBCADQQFqIgNHDQALCyAEDAELIAcgB0Hcj8AAEDcACwVBAAsgCmpLDQEMAgsgCiALQdCFwAAQNgALQeCFwABB
KkGMhsAAED0ACyAMQRxqIAkgCxALIAwoAhwEQCAMKQIgIhZCgICAgPAfg0KAgICAIFINAgsgESALNgIIIBEgEDYCBCARIAk2AgAg
FBBRIAxBMGokAAwCC0GCh8AAQS1BsIfAABA9AAsgDCAWNwIoIAwgCzYCJCAMIBA2AiAgDCAJNgIcQcCHwABBDCAMQRxqQZCBwABB
zIfAABA0AAsgBUGEAWoQUSAFQdQAahBRIAVBJGoQUQsgBUGgCWokAAwBC0Hch8AAQSsgBUHwBGpBuIjAAEGMisAAEDQACyAIKAIY
IQIgCCgCFCEDIAgoAhAhBCATBEAgARAFCyAAIAQEfyAIIAI2AhggCCADNgIUIAggBDYCECAIQRBqED4gCCgCGCEBIAgoAhAhBEEA
IQNBAAVBAQs2AgwgACADNgIIIAAgATYCBCAAIAQ2AgAgCEEgaiQAC9wRAg1/AX4jAEEgayIHJAAgByACNgIYIAcgAjYCFCAHIAE2
AhAgB0EQahA+IAcoAhghDyAHKAIQIQEgByADBH8gByAENgIYIAcgBDYCFCAHIAM2AhAgB0EQahA+IAcgBygCGCICNgIMIAcgAjYC
CCAHKAIQBUEACzYCBCAHQRBqIQsjAEHgCGsiBSQAAkACQAJAIAdBBGoiAigCAEUEQCAFQfQEakHgicAAQSwQEyAFKAL0BCIDRQ0B
IAUgBSgC/AQiBDYCLCAFIAUoAvgENgIoIAUgAzYCJAwCCyAFQZgBaiACQQhqKAIAIgM2AgAgBSACKQIAIhI3A5ABIAVB9ARqIBKn
IAMQEyAFKAL0BCIDBEAgBSAFKAL8BCIENgIsIAUgBSgC+AQ2AiggBSADNgIkIAVBkAFqEFEMAgsgBSgC+AQhAiALQQA2AgAgCyAC
NgIEIAVBkAFqEFEMAgsgBSgC+AQhAiALQQA2AgAgCyACNgIEDAELAkACQAJAIARBIEYEQCAFQcgAaiIEIANBGGopAAA3AwAgBUFA
ayIJIANBEGopAAA3AwAgBUE4aiIGIANBCGopAAA3AwAgBSADKQAANwMwIAVB9ARqIAEgDxAmIAUoAvQEIgINAUG4isAAQRwQASEC
IAtBADYCACALIAI2AgQMAgtBnIrAAEEJEAEhAiALQQA2AgAgCyACNgIEDAELIAUgBSgC/AQiCjYCXCAFIAUoAvgENgJYIAUgAjYC
VCAFQfgAaiAEKQMANwMAIAVB8ABqIAkpAwA3AwAgBUHoAGogBikDADcDACAFIAUpAzA3A2AgBUGQAWoiAyAFQeAAahAIIAVBGGog
CkEBEDwgBSAKNgKMASAFIAUoAhw2AogBIAUgBSgCGCIJNgKEASAFQfQEaiADQeADEIIBGgJAIApBD3ENACAFIAk2AtgIIAUgAjYC
1AggBSAKQQR2Igw2AtwIIAVB9ARqIQ4jAEFAaiIIJAAgBUHUCGoiAigCCCINQQFxIAIoAgQhAyACKAIAIQYgDUECTwRAIA1BAXYh
ECAGIQQgAyECA0AgCEEgaiAOIAQQDiACQRhqIAhBOGopAwA3AAAgAkEQaiAIQTBqKQMANwAAIAJBCGogCEEoaikDADcAACACIAgp
AyA3AAAgBEEgaiEEIAJBIGohAiAQQQFrIhANAAsLBEAgCBBNIAhBCGogBiANQf7///8AcUEEdCICaiIEQQhqKQAANwMAIAggBCkA
ADcDACAIQSBqIA4gCBAOIAIgA2oiAkEIaiAIQShqKQAANwAAIAIgCCkAIDcAAAsgCEFAayQAIAVBEGohCCAJIQJBACEDQQAhBgJA
AkACQCAMRQ0AIAxBBHQgAmpBEGstAA8iBEERa0H/AXFB8AFJDQBBACAEayEDQRAgBGsgAiAMQQR0aiEOAkADQCADQX9GDQEgAyAO
aiEGIANBAWohAyAGLQAAIARGDQALQQAhAwwBC0ERTw0BIAxBBHQgBGshBiACIQMLIAggBjYCBCAIIAM2AgAMAQtB5YDAAEEZQYCB
wAAQQwALIAUoAhBFDQACQCAKRQRAQQAhBgwBCyAKIAkgCmpBAWstAAAiAmshBiACIApLDQMLIAVB9ARqIQhBACEEIwBB8ABrIgMk
ACADQShqIgIgBjYCBCACIAk2AgAgAyADKQMoNwI0IANB0ABqIANBNGoQEgJAAkACQAJAIAMoAlAEQCADQegAaiADQdgAaikCADcD
ACADIAMpAlA3A2AgA0EgaiADQeAAaiICEH4gAygCJCEJIAMoAiAhCiADQRhqIAIQfyADKAIcRQRAIAggCjYCBCAIQQA2AgAgCEEI
aiAJNgIADAILAkAgBkUEQEEBIQIMAQsgBkEASA0DQd2iwAAtAAAaIAZBARBgIgJFDQQLIANBADYCRCADIAI2AjwgAyAGNgJAIAYg
CUkEfyADQTxqQQAgCRAtIAMoAkQhBCADKAI8BSACCyAEaiAKIAkQggEaIAMgBCAJaiIGNgJEIAMoAkAgBmtBAk0EQCADQTxqIAZB
AxAtIAMoAkQhBgsgAygCPCICIAZqIgRBhJvAAC8AACIJOwAAIARBAmpBhpvAAC0AACIKOgAAIAMgBkEDaiIGNgJEIAMgAykCNDcC
SCADQdAAaiADQcgAahASIAMoAlAEQANAIANB6ABqIANB2ABqKQIANwMAIAMgAykCUDcDYCADQRBqIANB4ABqEH4gAygCECEMIAMo
AhQiBCADKAJAIAZrSwRAIANBPGogBiAEEC0gAygCRCEGIAMoAjwhAgsgAiAGaiAMIAQQggEaIAMgBCAGaiIGNgJEIANBCGogA0Hg
AGoQfyADKAIMBEAgAygCQCAGa0ECTQRAIANBPGogBkEDEC0gAygCRCEGCyADKAI8IgIgBmoiBCAJOwAAIARBAmogCjoAACADIAZB
A2oiBjYCRAsgA0HQAGogA0HIAGoQEiADKAJQDQALCyAIIAMpAjw3AgAgCEEIaiADQcQAaigCADYCAAwBCyAIQbiZwAA2AgQgCEEA
NgIAIAhBCGpBADYCAAsgA0HwAGokAAwCCxBHAAtBASAGEHoACwJAIAUoAvQEIgNFBEAgBSgC+AQhBCAFQQhqIAVB/ARqKAIAIgZB
ABA8IAUoAgwhAiAFKAIIIgMgBCAGEIIBGgwBCyAFKAL8BCEGIAUoAvgEIQILIAsgBjYCCCALIAI2AgQgCyADNgIAIAVBhAFqEFEg
BUHUAGoQUSAFQSRqEFEMAwtB1IrAAEEeEAEhAiALQQA2AgAgCyACNgIEIAVBhAFqEFEgBUHUAGoQUQsgBUEkahBRDAELIAYgCkGo
isAAEDgACyAFQeAIaiQAIAcoAhghAiAHKAIUIQMgBygCECEEIA8EQCABEAULIAAgBAR/IAcgAjYCGCAHIAM2AhQgByAENgIQIAdB
EGoQPiAHKAIYIQEgBygCECEEQQAhA0EABUEBCzYCDCAAIAM2AgggACABNgIEIAAgBDYCACAHQSBqJAALjQIBAn8jAEEQayICJAAC
QCAAKAIAIgMtAABFBEAgASgCFEGNosAAQQQgAUEYaigCACgCDBEBACEADAELQQEhACACIANBAWo2AgAgAiABKAIUQZGiwABBBCAB
QRhqKAIAKAIMEQEAOgAMIAIgATYCCCACQQA6AA0gAkEANgIEIAJBBGogAkHsnMAAEB4gAi0ADCEBKAIAIgNFBEAgAUEARyEADAEL
IAENACACKAIIIQECQCADQQFHDQAgAi0ADUUNACABLQAcQQRxDQAgASgCFEHonMAAQQEgAUEYaigCACgCDBEBAA0BCyABKAIUQcSb
wABBASABQRhqKAIAKAIMEQEAIQALIAJBEGokACAAC/ABAgR/AX4jAEEwayICJAAgAUEEaiEEIAEoAgRFBEAgASgCACEDIAJBLGoi
BUEANgIAIAJCATcCJCACQSRqQaCXwAAgAxANGiACQSBqIAUoAgAiAzYCACACIAIpAiQiBjcDGCAEQQhqIAM2AgAgBCAGNwIACyAC
QRBqIgMgBEEIaigCADYCACABQQxqQQA2AgAgBCkCACEGIAFCATcCBEHdosAALQAAGiACIAY3AwhBDEEEEGAiAUUEQEEEQQwQegAL
IAEgAikDCDcCACABQQhqIAMoAgA2AgAgAEHQmMAANgIEIAAgATYCACACQTBqJAAL1wYBCn8jAEEQayIFJAAgBSACNgIIIAUgAjYC
BCAFIAE2AgAgBRA+IAUoAgghCyAFKAIAIQEgBSAENgIIIAUgBDYCBCAFIAM2AgAgBRA+IAUoAgAiDCEEIAUoAgghAyMAQfABayIC
JAAgAiALNgIEIAIgATYCACACIAM2AgwgAiAENgIIIAJBmAFqQYSJwABBLBATIAIoApgBRQRAIAIgAigCnAE2AkBB3IfAAEErIAJB
QGtBqIjAAEGwicAAEDQACyACQRhqIAJBoAFqKAIANgIAIAIgAikCmAE3AxAgAkHMAGpCAzcCACACQawBakEDNgIAIAJBpAFqIg1B
BDYCACACQQM2AkQgAkHAicAANgJAIAJBAzYCnAEgAiACQZgBaiIHNgJIIAIgAkEIajYCqAEgAiACQRBqIg42AqABIAIgAjYCmAEg
AkEcaiIEIAJBQGsiCRAWIAlBAEHAABCBARogAkGIAWpC/rnrxemOlZkQNwIAIAJCgcaUupbx6uZvNwKAASACQgA3ApABIAkgAigC
HCACKAIkECggBBBRIAcgCUHYABCCARogAkEoaiEKQQAhBCMAQdAAayIGJAAgBkEAQTgQgQEiBiAHKAJQIgg2AjggBiAHQdQAaigC
ADYCPCAHQfKKwABBOEH4ACAIQQN2QT9xIghBOEkbIAhrECgDQCAEIAZqIAQgB2ooAgA2AgAgBEEEaiIEQThHDQALIAdBQGsiCCAG
EAQgBkIANwNIIAZCADcDQEFwIQQDQCAEIAZqQdAAaiAEIAhqQRBqKAIANgIAIARBBGoiBA0ACyAKIAYpA0g3AAggCiAGKQNANwAA
IAZB0ABqJAAgDUIBNwIAIAJBATYCnAEgAkHYicAANgKYASACQQU2AjwgAiACQThqNgKgASACIAo2AjggCSAHEBYgBUEIaiACQcgA
aigCADYCACAFIAIpA0A3AgAgDhBRIAJB8AFqJAAgBSgCCCEGIAUoAgQhBCAFKAIAIQIgAwRAIAwQBQsgCwRAIAEQBQsgACACBH8g
BSAGNgIIIAUgBDYCBCAFIAI2AgAgBRA+IAUoAgghASAFKAIAIQNBACEEQQAFQQELNgIMIAAgBDYCCCAAIAE2AgQgACADNgIAIAVB
EGokAAvaAQEBfyMAQRBrIgUkACAFIAAoAhQgASACIABBGGooAgAoAgwRAQA6AAwgBSAANgIIIAUgAkU6AA0gBUEANgIEIAVBBGog
A0Hsj8AAEB4gBEHYi8AAEB4hAAJ/IAUtAAwiAUEARyAAKAIAIgJFDQAaQQEgAQ0AGiAFKAIIIQACQCACQQFHDQAgBS0ADUUNACAA
LQAcQQRxDQBBASAAKAIUQeicwABBASAAQRhqKAIAKAIMEQEADQEaCyAAKAIUQcSbwABBASAAQRhqKAIAKAIMEQEACyAFQRBqJAAL
jSICEX8IfiMAQTBrIgkkACAJQQhqIhEgAkEDdiACQQdxIgNBAEdqNgIAIBEgAkECdiACQQNxQQBHakEDbDYCBCAJIAkpAwg3AhAg
CSAJQRBqKAIEIg5BARA8IAkgDjYCICAJIAkoAgQ2AhwgCSAJKAIAIhE2AhggCUEkaiEGIAEhDCAJKAIQIQogCSgCFBpBqoLAAC0A
ACETQamCwAAtAAAhEgJAAkACQAJAAkACQAJAAkACQAJAAkAgAw4GAAUBAgMFBAtBCCEDDAMLQQohAwwCC0ELIQMMAQtBDCEDC0EA
IQEgAiADayIEQQAgAiAETxsiD0EgTw0BDAMLIAJFDQEgDCACQQFrIgFqLQAAIgJBPUYNASACQeuCwABqLQAAQf8BRw0BIAZBADoA
BCAGQQI2AgAgBkEIaiABNgIAIAZBBWogAjoAAAwECyAPQSBrIQsCQAJAAkACQANAIAVBYEYNASAFQSBqIgEgAksNAiAIQRpqIA5L
DQMCQAJAIAUgDGoiBy0AACIDQeuCwABqMQAAIhlC/wFRDQAgB0EBai0AACIDQeuCwABqMQAAIhdC/wFRBEAgBUEBaiEFDAELIAdB
AmotAAAiA0HrgsAAajEAACIYQv8BUQRAIAVBAmohBQwBCyAHQQNqLQAAIgNB64LAAGoxAAAiGkL/AVEEQCAFQQNqIQUMAQsgB0EE
ai0AACIDQeuCwABqMQAAIhRC/wFRBEAgBUEEaiEFDAELIAdBBWotAAAiA0HrgsAAajEAACIVQv8BUQRAIAVBBWohBQwBCyAHQQZq
LQAAIgNB64LAAGoxAAAiG0L/AVEEQCAFQQZqIQUMAQsgB0EHai0AACIDQeuCwABqMQAAIhZC/wFSDQEgBUEHaiEFCyAGQQI2AgAg
BiADrUIIhiAFrUIghoQ3AgQMCQsgCCARaiINIBdCNIYgGUI6hoQiFyAYQi6GhCIYIBpCKIaEIBRCIoaEIhQgFUIchoQiFSAbQhaG
hCAWQhCGhCIWQoD+A4NCKIYgFkKAgPwHg0IYhiAWQoCAgPgPg0IIhoSEIBVCCIhCgICA+A+DIBRCGIhCgID8B4OEIBhCKIhCgP4D
gyAXQjiIhISENwAAQQghAyAHQQhqLQAAIgRB64LAAGoxAAAiGUL/AVENBEEJIQMgB0EJai0AACIEQeuCwABqMQAAIhdC/wFRDQRB
CiEDIAdBCmotAAAiBEHrgsAAajEAACIYQv8BUQ0EQQshAyAHQQtqLQAAIgRB64LAAGoxAAAiGkL/AVENBEEMIQMgB0EMai0AACIE
QeuCwABqMQAAIhRC/wFRDQRBDSEDIAdBDWotAAAiBEHrgsAAajEAACIVQv8BUQ0EQQ4hAyAHQQ5qLQAAIgRB64LAAGoxAAAiG0L/
AVENBEEPIQMgB0EPai0AACIEQeuCwABqMQAAIhZC/wFRDQQgDUEGaiAXQjSGIBlCOoaEIhcgGEIuhoQiGCAaQiiGhCAUQiKGhCIU
IBVCHIaEIhUgG0IWhoQgFkIQhoQiFkKA/gODQiiGIBZCgID8B4NCGIYgFkKAgID4D4NCCIaEhCAVQgiIQoCAgPgPgyAUQhiIQoCA
/AeDhCAYQiiIQoD+A4MgF0I4iISEhDcAAEEQIQMCQCAHQRBqLQAAIgRB64LAAGoxAAAiGUL/AVENAEERIQMgB0ERai0AACIEQeuC
wABqMQAAIhdC/wFRDQBBEiEDIAdBEmotAAAiBEHrgsAAajEAACIYQv8BUQ0AQRMhAyAHQRNqLQAAIgRB64LAAGoxAAAiGkL/AVEN
AEEUIQMgB0EUai0AACIEQeuCwABqMQAAIhRC/wFRDQBBFSEDIAdBFWotAAAiBEHrgsAAajEAACIVQv8BUQ0AQRYhAyAHQRZqLQAA
IgRB64LAAGoxAAAiG0L/AVENAEEXIQMgB0EXai0AACIEQeuCwABqMQAAIhZC/wFRDQAgDUEMaiAXQjSGIBlCOoaEIhcgGEIuhoQi
GCAaQiiGhCAUQiKGhCIUIBVCHIaEIhUgG0IWhoQgFkIQhoQiFkKA/gODQiiGIBZCgID8B4NCGIYgFkKAgID4D4NCCIaEhCAVQgiI
QoCAgPgPgyAUQhiIQoCA/AeDhCAYQiiIQoD+A4MgF0I4iISEhDcAAEEYIQMgB0EYai0AACIEQeuCwABqMQAAIhlC/wFRDQhBGSED
IAdBGWotAAAiBEHrgsAAajEAACIXQv8BUQ0IQRohAyAHQRpqLQAAIgRB64LAAGoxAAAiGEL/AVENCEEbIQMgB0Ebai0AACIEQeuC
wABqMQAAIhpC/wFRDQhBHCEDIAdBHGotAAAiBEHrgsAAajEAACIUQv8BUQ0IQR0hAyAHQR1qLQAAIgRB64LAAGoxAAAiFUL/AVEN
CEEeIQMgB0Eeai0AACIEQeuCwABqMQAAIhtC/wFRDQhBHyEDIAdBH2otAAAiBEHrgsAAajEAACIWQv8BUQ0IIA1BEmogF0I0hiAZ
QjqGhCIXIBhCLoaEIhggGkIohoQgFEIihoQiFCAVQhyGhCIVIBtCFoaEIBZCEIaEIhZCgP4Dg0IohiAWQoCA/AeDQhiGIBZCgICA
+A+DQgiGhIQgFUIIiEKAgID4D4MgFEIYiEKAgPwHg4QgGEIoiEKA/gODIBdCOIiEhIQ3AAAgCkEEayEKIAhBGGohCCALIAEiBUkN
BwwBCwsMBgtBYEEAQayRwAAQOQALIAEgAkGskcAAEDgACyAIQRpqIA5BvJHAABA4AAsMAgsgBkECNgIAIAZBAToABAwCCwJAAkAg
D0EISQ0AIAEgD0EIayIFTw0AAkACQAJAAkACQANAIAFBCGohBCABQXhGDQIgAiAESQ0DIAhBd0sNBCAIQQhqIA5LDQUgASAMaiIL
LQAAIgNB64LAAGoxAAAiGUL/AVENASALQQFqLQAAIgNB64LAAGoxAAAiF0L/AVEEQCABQQFyIQEMAgsgC0ECai0AACIDQeuCwABq
MQAAIhhC/wFRBEAgAUECciEBDAILIAtBA2otAAAiA0HrgsAAajEAACIaQv8BUQRAIAFBA3IhAQwCCyALQQRqLQAAIgNB64LAAGox
AAAiFEL/AVEEQCABQQRyIQEMAgsgC0EFai0AACIDQeuCwABqMQAAIhVC/wFRBEAgAUEFciEBDAILIAtBBmotAAAiA0HrgsAAajEA
ACIbQv8BUQRAIAFBBnIhAQwCCyALQQdqLQAAIgNB64LAAGoxAAAiFkL/AVIEQCAIIBFqIBdCNIYgGUI6hoQiFyAYQi6GhCIYIBpC
KIaEIBRCIoaEIhQgFUIchoQiFSAbQhaGhCAWQhCGhCIWQoD+A4NCKIYgFkKAgPwHg0IYhiAWQoCAgPgPg0IIhoSEIBVCCIhCgICA
+A+DIBRCGIhCgID8B4OEIBhCKIhCgP4DgyAXQjiIhISENwAAIApBAWshCiAIQQZqIQggBSAEIgFNDQgMAQsLIAFBB3IhAQsgBkEC
NgIAIAYgAa1CIIYgA61CCIaENwIEDAcLQXggBEHMkcAAEDkACyAEIAJBzJHAABA4AAsgCCAIQQhqQdyRwAAQOQALIAhBCGogDkHc
kcAAEDgACyABIQQLAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgCkECSQRAIAghCgwBCyAKQQFrIQUgAiAE
ayEDA0AgAiAESQ0DIAhBBmohCiAIQXlLDQQgCiAOSw0FIAIgBEYNBiAEIAxqIgstAAAiAUHrgsAAajEAACIZQv8BUQ0TIANBAkkN
ByALQQFqLQAAIgFB64LAAGoxAAAiGkL/AVENAiADQQJNDQggC0ECai0AACIBQeuCwABqMQAAIhtC/wFRDQkgA0EDTQ0KIAtBA2ot
AAAiAUHrgsAAajEAACIWQv8BUQ0LIANBBE0NDCALQQRqLQAAIgFB64LAAGoxAAAiF0L/AVENDSADQQVNDQ4gC0EFai0AACIBQeuC
wABqMQAAIhhC/wFRDQ8gA0EGTQ0QIAtBBmotAAAiAUHrgsAAajEAACIUQv8BUQ0RIANBB00NEiALQQdqLQAAIgFB64LAAGoxAAAi
FUL/AVEEQCAEQQdqIQQMFAsgCCARaiIBIBpCNIYgGUI6hoQgG0IuhoQgFkIohoQgF0IihoQgGEIchoQgFEIWhoQiFEIIiEKAgID4
D4MgFEIYiEKAgPwHg4QgFEIoiEKA/gODIBRCOIiEhD4AACABQQRqIBQgFUIQhoQiFUKAgPwHg0IYhiAVQoCAgPgPg0IIhoRCIIg9
AAAgA0EIayEDIARBCGohBCAKIQggBUEBayIFDQALCyASQQBHIRJBACENQQAhCEEAIQNCACEUQQAhB0EAIQEjAEEgayIQJAACQAJA
AkACQAJAIAIgBE8EQCACIARGBEBBACECDAMLIAIgDGohDyAEIAxqIQwDQEEAIQUDQCAFIAdqIQ0gBSAMaiILLQAAIgJBPUcEQAJA
IAVFBEAgAkHrgsAAajEAACIVQv8BUQ0BIA1BAWohByAVIAhBAWoiCEE6bEE+ca2GIBSEIRRBACENIAIhASALQQFqIgwgD0cNBAwH
CyAGQYD6ADsBBCAGQQI2AgAgBkEIaiADIARqNgIADAcLIAZBADoABCAGQQI2AgAgBkEFaiACOgAAIAZBCGogBCAHaiAFajYCAAwG
CyADIA0gBRshAyANQQJxBEAgDCAFQQFqIgVqIA9GDQQMAQsLCyAGQYD6ADsBBCAGQQI2AgAgBkEIaiADIARqNgIADAMLIAQgAkHo
jMAAEDYACyAPIAxrIQ0gASECCwJAAkACQAJAIBNBAWsOAgEAAwsgDQ0BDAILIAggDWpBA3FFDQEgBkECNgIAIAZBAzoABAwCCyAG
QQI2AgAgBkEDOgAEDAELQQAhBQJAAn8CQAJAAkACQAJAAkACQCAIIgwOCQgAAQIDAAQFBgALIBBBEGpCADcCACAQQQE2AgggEEGI
jsAANgIEIBAgEEEcajYCDCAQQQRqQZCOwAAQSAALQQgMBQtBEAwEC0EYDAMLQSAMAgtBKAwBC0EwCyEMQQEhBQsgEkUgFCAMrYZC
AFJxRQRAIAUEQCAKIA4gCiAOSxshAUEAIQJBOCEFA0AgASAKRg0EIAogEWogFCAFQThxrYg8AAAgBUEIayEFIApBAWohCiACQQhq
IgIgDEkNAAsLIAYgCjYCCCAGIAMgBGo2AgQgBiANQQBHNgIADAELIAZBAjoABCAGQQI2AgAgBkEFaiACOgAAIAZBCGogBCAIakEB
azYCAAsgEEEgaiQADAELIAEgDkH4jMAAEDcACwwTCyAEQQFqIQQMEAsgBCACQeyRwAAQNgALIAggCkH8kcAAEDkACyAKIA5B/JHA
ABA4AAtBAEEAQYySwAAQNwALQQFBAUGcksAAEDcAC0ECQQJBrJLAABA3AAsgBEECaiEEDAkLQQNBA0G8ksAAEDcACyAEQQNqIQQM
BwtBBEEEQcySwAAQNwALIARBBGohBAwFC0EFQQVB3JLAABA3AAsgBEEFaiEEDAMLQQZBBkHsksAAEDcACyAEQQZqIQQMAQtBB0EH
QfySwAAQNwALIAZBAjYCACAGIAGtQgiGIAStQiCGhDcCBAwBCyAGQQI2AgAgBiAErUIIhiADIAVqrUIghoQ3AgQLAkAgCSgCJEEC
RwRAIAlBLGooAgAiASAOTQRAIAkgATYCIAsgACAJKQIYNwIAIABBCGogCUEgaigCADYCAAwBCyAJKQIoIRUgAEEANgIAIAAgFTcC
BCAJQRhqEFELIAlBMGokAAvKAQACQAJAIAEEQCACQQBIDQECQAJAAn8gAygCBARAIANBCGooAgAiAUUEQCACRQRAQQEhAQwEC0Hd
osAALQAAGiACQQEQYAwCCyADKAIAIAFBASACEFkMAQsgAkUEQEEBIQEMAgtB3aLAAC0AABogAkEBEGALIgFFDQELIAAgATYCBCAA
QQhqIAI2AgAgAEEANgIADwsgAEEBNgIEDAILIABBADYCBAwBCyAAQQA2AgQgAEEBNgIADwsgAEEIaiACNgIAIABBATYCAAvFAQEE
fyMAQUBqIgMkACADQQBBwAAQgQEhAyAAIAAoAlAiBiACQQN0aiIENgJQIABB1ABqIgUgBSgCACACQR12aiAEIAZJajYCACACBEAg
ASACaiEEIABBQGshBSAGQQN2QT9xIQIDQCAAIAJqIAEtAAA6AAAgAkEBaiICQcAARgRAQQAhAgNAIAIgA2ogACACaigCADYCACAC
QQRqIgJBwABHDQALIAUgAxAEQQAhAgsgAUEBaiIBIARHDQALCyADQUBrJAALhAIBAn8jAEEgayIGJABBlKPAAEGUo8AAKAIAIgdB
AWo2AgACQAJAIAdBAEgNAEHgpsAALQAADQBB4KbAAEEBOgAAQdymwABB3KbAACgCAEEBajYCACAGIAU6AB0gBiAEOgAcIAYgAzYC
GCAGIAI2AhQgBkGYmcAANgIQIAZB9JbAADYCDEGEo8AAKAIAIgJBAEgNAEGEo8AAIAJBAWo2AgBBhKPAAEGMo8AAKAIABH8gBiAA
IAEoAhARAgAgBiAGKQMANwIMQYyjwAAoAgAgBkEMakGQo8AAKAIAKAIUEQIAQYSjwAAoAgBBAWsFIAILNgIAQeCmwABBADoAACAE
DQELAAsAC70BAQR/QXAhBCAAIAFBAnRqIQBB+AAgASABQfgATxtB+ABrIQYCQAJAA0AgASAEaiIDQfgATw0CIAUgBkYNASAAIABB
QGooAgAgACgCACACeEGDhowYcXMiA0ECdEH8+fNncSADQQR0QfDhw4d/cXMgA0EGdEHAgYOGfHFzIANzNgIAIARBAWohBCAAQQRq
IQAgBUEBayIFQXhHDQALDwsgASAFa0H4AEG8lsAAEDcACyADQfgAQayWwAAQNwAL2QEBAn8jAEEQayICJAAgAiAAQQRqNgIEIAEo
AhRBraLAAEEJIAFBGGooAgAoAgwRAQAhAyACQQA6AA0gAiADOgAMIAIgATYCCCACQQhqQbaiwABBCyAAQZiiwAAQGEHBosAAQQkg
AkEEakHMosAAEBghAyACLQAMIQACfyAAQQBHIAItAA1FDQAaQQEgAA0AGiADKAIAIgAtABxBBHFFBEAgACgCFEHjnMAAQQIgACgC
GCgCDBEBAAwBCyAAKAIUQeKcwABBASAAKAIYKAIMEQEACyACQRBqJAALyAEBAn8jAEEgayIDJAACQAJAIAEgASACaiIBSw0AQQgg
ACgCBCICQQF0IgQgASABIARJGyIBIAFBCE0bIgRBf3NBH3YhAQJAIAJFBEAgA0EANgIYDAELIAMgAjYCHCADQQE2AhggAyAAKAIA
NgIUCyADQQhqIAEgBCADQRRqEC4gAygCDCEBIAMoAghFBEAgACAENgIEIAAgATYCAAwCCyABQYGAgIB4Rg0BIAFFDQAgASADQRBq
KAIAEHoACxBHAAsgA0EgaiQAC8gBAQJ/IwBBIGsiAyQAAkACQCABIAEgAmoiAUsNAEEIIAAoAgQiAkEBdCIEIAEgASAESRsiASAB
QQhNGyIEQX9zQR92IQECQCACRQRAIANBADYCGAwBCyADIAI2AhwgA0EBNgIYIAMgACgCADYCFAsgA0EIaiABIAQgA0EUahAnIAMo
AgwhASADKAIIRQRAIAAgBDYCBCAAIAE2AgAMAgsgAUGBgICAeEYNASABRQ0AIAEgA0EQaigCABB6AAsQRwALIANBIGokAAusAQEB
fwJAAkAgAQRAIAJBAEgNAQJ/IAMoAgQEQAJAIANBCGooAgAiBEUEQAwBCyADKAIAIAQgASACEFkMAgsLIAEgAkUNABpB3aLAAC0A
ABogAiABEGALIgMEQCAAIAM2AgQgAEEIaiACNgIAIABBADYCAA8LIAAgATYCBCAAQQhqIAI2AgAMAgsgAEEANgIEIABBCGogAjYC
AAwBCyAAQQA2AgQLIABBATYCAAusAQEDfyMAQdAAayICJAADQAJAIAIgACADajYCDCACQQ02AiwgAkEBNgIkIAJBATYCFCACQbSL
wAA2AhAgAkEBNgIcIAIgAkEMajYCKCACQQM6AEwgAkEINgJIIAJCIDcCQCACQoCAgIAgNwI4IAJBAjYCMCACIAJBMGo2AiAgAiAC
QShqNgIYIAEgAkEQahBcIgQNACADQQFqIgNBEEcNAQsLIAJB0ABqJAAgBAuPAQEDfyMAQYABayIDJAAgAC0AACECQQAhAANAIAAg
A2pB/wBqQTBB1wAgAkEPcSIEQQpJGyAEajoAACAAQQFrIQAgAiIEQQR2IQIgBEEQTw0ACyAAQYABaiICQYABSwRAIAJBgAFBmJ3A
ABA2AAsgAUGoncAAQQIgACADakGAAWpBACAAaxAJIANBgAFqJAALkgEBAX8jAEFAaiICJAAgAkIANwM4IAJBOGogACgCABACIAJB
GGpCATcCACACIAIoAjwiADYCNCACIAA2AjAgAiACKAI4NgIsIAJBDjYCKCACQQI2AhAgAkHIi8AANgIMIAIgAkEsajYCJCACIAJB
JGo2AhQgASACQQxqEFwgAigCMARAIAIoAiwQBQsgAkFAayQAC4sBAQF/IwBBEGsiAiQAAn8CQAJAAkACQCAALQAAQQFrDgMBAgMA
CyACIABBAWo2AgggAUGJkMAAQQsgAEEEaiACQQhqECUMAwsgAUH8j8AAQQ0QVQwCCyACIABBAWo2AgwgAUGUkMAAQREgAEEEaiAC
QQxqECUMAQsgAUGlkMAAQQ4QVQsgAkEQaiQAC4wBAgN/AX4jAEEgayICJAAgAUEEaiEDIAEoAgRFBEAgASgCACEBIAJBHGoiBEEA
NgIAIAJCATcCFCACQRRqQaCXwAAgARANGiACQRBqIAQoAgAiATYCACACIAIpAhQiBTcDCCADQQhqIAE2AgAgAyAFNwIACyAAQdCY
wAA2AgQgACADNgIAIAJBIGokAAt9AQF/IwBBQGoiBSQAIAUgATYCDCAFIAA2AgggBSADNgIUIAUgAjYCECAFQSRqQgI3AgAgBUE8
akEuNgIAIAVBAjYCHCAFQaycwAA2AhggBUEvNgI0IAUgBUEwajYCICAFIAVBEGo2AjggBSAFQQhqNgIwIAVBGGogBBBIAAt4AQJ/
IAFBD2ohAiAAIAFBAnRqIQBBICEBAkACQANAIAJBCGtB+ABPDQIgAkH4AE8NASAAIAFqIgNBHGogA0EEaygCADYCACACQQFrIQIg
AUEEayIBDQALDwsgAkH4AEHclsAAEDcACyACQQhrQfgAQcyWwAAQNwALbAEBfyMAQTBrIgMkACADIAA2AgAgAyABNgIEIANBFGpC
AjcCACADQSxqQRI2AgAgA0ECNgIMIANBqJ/AADYCCCADQRI2AiQgAyADQSBqNgIQIAMgA0EEajYCKCADIAM2AiAgA0EIaiACEEgA
C2wBAX8jAEEwayIDJAAgAyABNgIEIAMgADYCACADQRRqQgI3AgAgA0EsakESNgIAIANBAjYCDCADQZicwAA2AgggA0ESNgIkIAMg
A0EgajYCECADIAM2AiggAyADQQRqNgIgIANBCGogAhBIAAtsAQF/IwBBMGsiAyQAIAMgADYCACADIAE2AgQgA0EUakICNwIAIANB
LGpBEjYCACADQQI2AgwgA0HIn8AANgIIIANBEjYCJCADIANBIGo2AhAgAyADQQRqNgIoIAMgAzYCICADQQhqIAIQSAALbAEBfyMA
QTBrIgMkACADIAA2AgAgAyABNgIEIANBFGpCAjcCACADQSxqQRI2AgAgA0ECNgIMIANB/J/AADYCCCADQRI2AiQgAyADQSBqNgIQ
IAMgA0EEajYCKCADIAM2AiAgA0EIaiACEEgAC/sDAgd/AX4jAEEQayIEJAAgACgCCCEGIAAoAgAhACABKAIUQdCbwABBASABQRhq
KAIAKAIMEQEAIQMgBEEEaiICQQA6AAUgAiADOgAEIAIgATYCACAGBEADQCAEIAA2AgwgBEEMaiEIIwBBQGoiASQAQQEhAwJAIARB
BGoiBS0ABA0AIAUtAAUhAwJAIAUoAgAiAigCHCIHQQRxRQRAIANFDQFBASEDIAIoAhRB25zAAEECIAJBGGooAgAoAgwRAQBFDQEM
AgsgA0UEQEEBIQMgAigCFEHpnMAAQQEgAkEYaigCACgCDBEBAA0CIAIoAhwhBwtBASEDIAFBAToAGyABQTRqQbycwAA2AgAgASAC
KQIUNwIMIAEgAUEbajYCFCABIAIpAgg3AiQgAikCACEJIAEgBzYCOCABIAIoAhA2AiwgASACLQAgOgA8IAEgCTcCHCABIAFBDGo2
AjAgCCABQRxqQbSZwAAoAgARAAANASABKAIwQeCcwABBAiABKAI0KAIMEQEAIQMMAQsgCCACQbSZwAAoAgARAAAhAwsgBUEBOgAF
IAUgAzoABCABQUBrJAAgAEEBaiEAIAZBAWsiBg0ACwsgBEEEaiIALQAEBH9BAQUgACgCACIAKAIUQfycwABBASAAQRhqKAIAKAIM
EQEACyAEQRBqJAALZwAjAEEwayIAJABB3KLAAC0AAARAIABBGGpCATcCACAAQQI2AhAgAEHcl8AANgIMIABBEjYCKCAAIAE2Aiwg
ACAAQSRqNgIUIAAgAEEsajYCJCAAQQxqQYSYwAAQSAALIABBMGokAAt3AAJAAkACQCABRQRAQQEhAgwBCyABQQBIDQECfyACRQRA
Qd2iwAAtAAAaIAFBARBgDAELAkAgARADIgJFDQAgAhCHARBqDQAgAkEAIAEQgQEaCyACCyICRQ0CCyAAIAE2AgQgACACNgIADwsQ
RwALQQEgARB6AAtbAQF/IwBBMGsiAyQAIAMgATYCDCADIAA2AgggA0EcakIBNwIAIANBATYCFCADQcibwAA2AhAgA0EvNgIsIAMg
A0EoajYCGCADIANBCGo2AiggA0EQaiACEEgAC7sCAQd/IwBBEGsiBSQAAkAgACgCCCIEIAAoAgRPDQAgBUEIaiEGIwBBIGsiASQA
AkAgBCAAKAIETQRAIAFBCGohAgJAIAAoAgQiA0UEQCACQQA2AgQMAQsgAiADNgIIIAJBATYCBCACIAAoAgA2AgALAkACQCABKAIM
IgJFDQAgAUEQaigCACEDIAEoAgghByAERQRAIAMEQCAHEAULIABCATcCAAwBCyAHIAMgAiAEEFkiA0UNASAAIAQ2AgQgACADNgIA
C0GBgICAeCECCyAGIAQ2AgQgBiACNgIAIAFBIGokAAwBCyABQRRqQgA3AgAgAUEBNgIMIAFBxIHAADYCCCABQZCBwAA2AhAgAUEI
akGYgsAAEEgACyAFKAIIIgBBgYCAgHhGDQAgACAFKAIMEHoACyAFQRBqJAALTwECfyAAKAIEIQIgACgCACEDAkAgACgCCCIALQAA
RQ0AIANB1JzAAEEEIAIoAgwRAQBFDQBBAQ8LIAAgAUEKRjoAACADIAEgAigCEBEAAAtCAQF/IAIgACgCBCAAKAIIIgNrSwRAIAAg
AyACECwgACgCCCEDCyAAKAIAIANqIAEgAhCCARogACACIANqNgIIQQALTQECf0HdosAALQAAGiABKAIEIQIgASgCACEDQQhBBBBg
IgFFBEBBBEEIEHoACyABIAI2AgQgASADNgIAIABB4JjAADYCBCAAIAE2AgALQgEBfyACIAAoAgQgACgCCCIDa0sEQCAAIAMgAhAt
IAAoAgghAwsgACgCACADaiABIAIQggEaIAAgAiADajYCCEEAC0cBAX8jAEEgayIDJAAgA0EMakIANwIAIANBATYCBCADQcSbwAA2
AgggAyABNgIcIAMgADYCGCADIANBGGo2AgAgAyACEEgAC+cBAQN/IwBBEGsiAyQAIAMgAEEMajYCDCMAQRBrIgIkACABKAIUQaSb
wABBDSABQRhqKAIAKAIMEQEAIQQgAkEAOgANIAIgBDoADCACIAE2AgggAkEIakGHm8AAQQUgAEG0m8AAEBhBjJvAAEEFIANBDGpB
lJvAABAYIQACfyACLQAMIgFBAEcgAi0ADUUNABpBASABDQAaIAAoAgAiAC0AHEEEcUUEQCAAKAIUQeOcwABBAiAAKAIYKAIMEQEA
DAELIAAoAhRB4pzAAEEBIAAoAhgoAgwRAQALIAJBEGokACADQRBqJAALNwACQCABaUEBR0GAgICAeCABayAASXINACAABEBB3aLA
AC0AABogACABEGAiAUUNAQsgAQ8LAAs5AAJAAn8gAkGAgMQARwRAQQEgACACIAEoAhARAAANARoLIAMNAUEACw8LIAAgAyAEIAEo
AgwRAQALPwEBfyMAQSBrIgAkACAAQRRqQgA3AgAgAEEBNgIMIABBgJrAADYCCCAAQbiZwAA2AhAgAEEIakGImsAAEEgAC8kCAQJ/
IwBBIGsiAiQAIAJBATsBHCACIAE2AhggAiAANgIUIAJB1JvAADYCECACQcSbwAA2AgwjAEEQayIBJAACQCACQQxqIgAoAgwiAgRA
IAAoAggiA0UNASABIAI2AgwgASAANgIIIAEgAzYCBCMAQRBrIgAkACABQQRqIgEoAgAiAkEMaigCACEDAkACfwJAAkAgAigCBA4C
AAEDCyADDQJBACECQfSWwAAMAQsgAw0BIAIoAgAiAygCBCECIAMoAgALIQMgACACNgIEIAAgAzYCACAAQfCYwAAgASgCBCIAKAII
IAEoAgggAC0AECAALQARECkACyAAQQA2AgQgACACNgIAIABBhJnAACABKAIEIgAoAgggASgCCCAALQAQIAAtABEQKQALQfSWwABB
K0GwmMAAEEMAC0H0lsAAQStBwJjAABBDAAstAAJAIANpQQFHQYCAgIB4IANrIAFJckUEQCAAIAEgAyACEFkiAA0BCwALIAALsgEB
A38gACgCACEAIAEQZ0UEQCABEGhFBEAgADEAACABEBoPCyMAQYABayIDJAAgAC0AACEAA0AgAiADakH/AGpBMEE3IABBD3EiBEEK
SRsgBGo6AAAgAkEBayECIAAiBEEEdiEAIARBEE8NAAsgAkGAAWoiAEGAAUsEQCAAQYABQZidwAAQNgALIAFBqJ3AAEECIAIgA2pB
gAFqQQAgAmsQCSADQYABaiQADwsgACABEDALpwIBA38gARBnRQRAIAEQaEUEQCAAIAEQbg8LIwBBgAFrIgMkACAAKAIAIQADQCAC
IANqQf8AakEwQTcgAEEPcSIEQQpJGyAEajoAACACQQFrIQIgAEEQSSAAQQR2IQBFDQALIAJBgAFqIgBBgAFLBEAgAEGAAUGYncAA
EDYACyABQaidwABBAiACIANqQYABakEAIAJrEAkgA0GAAWokAA8LIwBBgAFrIgMkACAAKAIAIQADQCACIANqQf8AakEwQdcAIABB
D3EiBEEKSRsgBGo6AAAgAkEBayECIABBEEkgAEEEdiEARQ0ACyACQYABaiIAQYABSwRAIABBgAFBmJ3AABA2AAsgAUGoncAAQQIg
AiADakGAAWpBACACaxAJIANBgAFqJAALJwAgACAAKAIEQQFxIAFyQQJyNgIEIAAgAWoiACAAKAIEQQFyNgIECycAIABCADcAACAA
QRhqQgA3AAAgAEEQakIANwAAIABBCGpCADcAAAsgAQF/AkAgACgCBCIBRQ0AIABBCGooAgBFDQAgARAFCwsjACACIAIoAgRBfnE2
AgQgACABQQFyNgIEIAAgAWogATYCAAseACAAIAFBA3I2AgQgACABaiIAIAAoAgRBAXI2AgQLEQAgACgCBARAIAAoAgAQBQsLGQEB
fyAAKAIQIgEEfyABBSAAQRRqKAIACwsSAEEZIABBAXZrQQAgAEEfRxsLFgAgACABQQFyNgIEIAAgAWogATYCAAsZACAAKAIUIAEg
AiAAQRhqKAIAKAIMEQEACxwAIAEoAhRBqKLAAEEFIAFBGGooAgAoAgwRAQALFAAgACgCACIAQYQBTwRAIAAQAAsLEAAgACABakEB
a0EAIAFrcQuLBgEGfwJ/IAAhBQJAAkACQAJAAkAgAkEJTwRAIAIgAxAXIgcNAUEADAYLQQhBCBBYIQBBFEEIEFghAUEQQQgQWCEC
QQBBEEEIEFhBAnRrIgRBgIB8IAIgACABamprQXdxQQNrIgAgACAESxsgA00NA0EQIANBBGpBEEEIEFhBBWsgA0sbQQgQWCECIAUQ
hwEiACAAEHQiBBCEASEBAkACQAJAAkACQAJAIAAQakUEQCACIARNDQQgAUHEpsAAKAIARg0GIAFBwKbAACgCAEYNAyABEGUNCSAB
EHQiBiAEaiIIIAJJDQkgCCACayEEIAZBgAJJDQEgARAcDAILIAAQdCEBIAJBgAJJDQggASACa0GBgAhJIAJBBGogAU1xDQQgASAA
KAIAIgFqQRBqIQQgAkEfakGAgAQQWCECDAgLIAFBDGooAgAiCSABQQhqKAIAIgFHBEAgASAJNgIMIAkgATYCCAwBC0GwpsAAQbCm
wAAoAgBBfiAGQQN2d3E2AgALQRBBCBBYIARNBEAgACACEIQBIQEgACACEEwgASAEEEwgASAEEBAgAA0JDAcLIAAgCBBMIAANCAwG
C0G4psAAKAIAIARqIgQgAkkNBQJAQRBBCBBYIAQgAmsiAUsEQCAAIAQQTEEAIQFBACEEDAELIAAgAhCEASIEIAEQhAEhBiAAIAIQ
TCAEIAEQVCAGIAYoAgRBfnE2AgQLQcCmwAAgBDYCAEG4psAAIAE2AgAgAA0HDAULQRBBCBBYIAQgAmsiAUsNACAAIAIQhAEhBCAA
IAIQTCAEIAEQTCAEIAEQEAsgAA0FDAMLQbymwAAoAgAgBGoiBCACSw0BDAILIAcgBSABIAMgASADSRsQggEaIAUQBQwCCyAAIAIQ
hAEhASAAIAIQTCABIAQgAmsiAkEBcjYCBEG8psAAIAI2AgBBxKbAACABNgIAIAANAgsgAxADIgFFDQAgASAFIAAQdEF4QXwgABBq
G2oiACADIAAgA0kbEIIBIAUQBQwCCyAHDAELIAAQahogABCGAQsLCwAgAQRAIAAQBQsLDwAgAEEBdCIAQQAgAGtyCxMAIAAoAhQg
AEEYaigCACABEA0LFAAgACgCACABIAAoAgQoAgwRAAALEAAgACgCACAAKAIEIAEQfQsQACAAKAIAIAAoAgggARB9CxkAAn8gAUEJ
TwRAIAEgABAXDAELIAAQAwsLIQAgAEKYo6rL4I761NYANwMIIABCq6qJm/b22twaNwMACyAAIABC5N7HhZDQhd59NwMIIABCwff5
6MyTstFBNwMACyIAIABCqrDurabN4qqqfzcDCCAAQrusqeeAuviazQA3AwALEwAgAEHgmMAANgIEIAAgATYCAAsNACAALQAEQQJx
QQF2CxAAIAEgACgCACAAKAIEEAYLDQAgAC0AHEEQcUEEdgsNACAALQAcQSBxQQV2CwoAQQAgAGsgAHELCwAgAC0ABEEDcUULDAAg
ACABQQNyNgIECw0AIAAoAgAgACgCBGoLDgAgACgCABoDQAwACwALCwAgADUCACABEBoLCwAgACMAaiQAIwALBgAgABBRCwsAIAAo
AgAgARAwCw0AIAFB7JbAAEEIEFULDQAgAEGgl8AAIAEQDQsKACAAKAIEQXhxCwoAIAAoAgRBAXELCgAgACgCDEEBcQsKACAAKAIM
QQF2CwsAIAAoAgAgARArCw0AIABBuJnAACABEA0LGQAgACABQYCjwAAoAgAiAEETIAAbEQIAAAuIBAEFfyMAQRBrIgMkAAJAAn8C
QCABQYABTwRAIANBADYCDCABQYAQSQ0BIAFBgIAESQRAIAMgAUE/cUGAAXI6AA4gAyABQQx2QeABcjoADCADIAFBBnZBP3FBgAFy
OgANQQMMAwsgAyABQT9xQYABcjoADyADIAFBBnZBP3FBgAFyOgAOIAMgAUEMdkE/cUGAAXI6AA0gAyABQRJ2QQdxQfABcjoADEEE
DAILIAAoAggiAiAAKAIERgRAIwBBIGsiBCQAAkACQCACQQFqIgJFDQBBCCAAKAIEIgZBAXQiBSACIAIgBUkbIgIgAkEITRsiBUF/
c0EfdiECAkAgBkUEQCAEQQA2AhgMAQsgBCAGNgIcIARBATYCGCAEIAAoAgA2AhQLIARBCGogAiAFIARBFGoQJyAEKAIMIQIgBCgC
CEUEQCAAIAU2AgQgACACNgIADAILIAJBgYCAgHhGDQEgAkUNACACIARBEGooAgAQegALEEcACyAEQSBqJAAgACgCCCECCyAAIAJB
AWo2AgggACgCACACaiABOgAADAILIAMgAUE/cUGAAXI6AA0gAyABQQZ2QcABcjoADEECCyEBIAEgACgCBCAAKAIIIgJrSwRAIAAg
AiABEC0gACgCCCECCyAAKAIAIAJqIANBDGogARCCARogACABIAJqNgIICyADQRBqJABBAAsNACAAQbycwAAgARANCwoAIAIgACAB
EAYLDAAgACABKQIANwMACwwAIAAgASkCCDcDAAu3AgEDfwJ/IAAoAgAhACMAQYABayIEJAACQAJAAn8CQCABKAIcIgNBEHFFBEAg
A0EgcQ0BIAAxAAAgARAaDAILIAAtAAAhAANAIAIgBGpB/wBqQTBB1wAgAEEPcSIDQQpJGyADajoAACACQQFrIQIgACIDQQR2IQAg
A0EQTw0ACyACQYABaiIAQYABSw0CIAFBqJ3AAEECIAIgBGpBgAFqQQAgAmsQCQwBCyAALQAAIQADQCACIARqQf8AakEwQTcgAEEP
cSIDQQpJGyADajoAACACQQFrIQIgACIDQQR2IQAgA0EQTw0ACyACQYABaiIAQYABSw0CIAFBqJ3AAEECIAIgBGpBgAFqQQAgAmsQ
CQsgBEGAAWokAAwCCyAAQYABQZidwAAQNgALIABBgAFBmJ3AABA2AAsLrwEBA38gASEFAkAgAkEQSQRAIAAhAQwBCyAAQQAgAGtB
A3EiA2ohBCADBEAgACEBA0AgASAFOgAAIAFBAWoiASAESQ0ACwsgBCACIANrIgJBfHEiA2ohASADQQBKBEAgBUH/AXFBgYKECGwh
AwNAIAQgAzYCACAEQQRqIgQgAUkNAAsLIAJBA3EhAgsgAgRAIAEgAmohAgNAIAEgBToAACABQQFqIgEgAkkNAAsLIAALuAIBB38C
QCACIgRBEEkEQCAAIQIMAQsgAEEAIABrQQNxIgNqIQUgAwRAIAAhAiABIQYDQCACIAYtAAA6AAAgBkEBaiEGIAJBAWoiAiAFSQ0A
CwsgBSAEIANrIghBfHEiB2ohAgJAIAEgA2oiA0EDcQRAIAdBAEwNASADQQN0IgRBGHEhCSADQXxxIgZBBGohAUEAIARrQRhxIQQg
BigCACEGA0AgBSAGIAl2IAEoAgAiBiAEdHI2AgAgAUEEaiEBIAVBBGoiBSACSQ0ACwwBCyAHQQBMDQAgAyEBA0AgBSABKAIANgIA
IAFBBGohASAFQQRqIgUgAkkNAAsLIAhBA3EhBCADIAdqIQELIAQEQCACIARqIQMDQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiAD
SQ0ACwsgAAsLAEGEicAAQSwQAQsHACAAIAFqCwcAIAAgAWsLBwAgAEEIagsHACAAQQhrCwMAAQsL7SEEAEGAgMAAC/MKL1VzZXJz
L21hZ3Vhbmd6aGkvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9ibG9jay1wYWRk
aW5nLTAuMy4zL3NyYy9saWIucnNhc3NlcnRpb24gZmFpbGVkOiBuIDw9IGJzAAAAABAAZQAAAFEAAAARAAAAAQAAABQAAAAEAAAA
AgAAAFRyaWVkIHRvIHNocmluayB0byBhIGxhcmdlciBjYXBhY2l0eaAAEAAkAAAAL3J1c3RjLzc5ZTk3MTZjOTgwNTcwYmZkMWY2
NjZlM2IxNmFjNTgzZjAxNjg5NjIvbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5yc8wAEABMAAAArgEAAAkAAAABAAFBQkNERUZH
SElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsv////////////////////////
/////////////////////////////////z7///8/NDU2Nzg5Ojs8Pf////////8AAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGf//
/////xobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIz////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////y9Vc2Vycy9tYWd1YW5nemhpLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJi
YmExNTAwMWYvYmFzZTY0LTAuMjEuMi9zcmMvZW5jb2RlLnJzAAAAawIQAGIAAABQAAAAMwAAAHVzaXplIG92ZXJmbG93IHdoZW4g
Y2FsY3VsYXRpbmcgYjY0IGxlbmd0aAAAawIQAGIAAABXAAAACgAAAC9Vc2Vycy9tYWd1YW5nemhpLy5jYXJnby9yZWdpc3RyeS9z
cmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYmFzZTY0LTAuMjEuMi9zcmMvZW5naW5lL21vZC5yc2ludGVnZXIg
b3ZlcmZsb3cgd2hlbiBjYWxjdWxhdGluZyBidWZmZXIgc2l6ZQAcAxAAZgAAAHcAAAAOAAAASW52YWxpZCBVVEY4HAMQAGYAAAB8
AAAAIAAAAGNhbGxlZCBgUmVzdWx0Ojp1bndyYXAoKWAgb24gYW4gYEVycmAgdmFsdWUABgAAAAgAAAAEAAAABwAAAAYAAAAIAAAA
BAAAAAgAAAAJAAAABAAAAAQAAAAKAAAACwAAAAAAAAABAAAADAAAAHNyYy9saWIucnMAAEgEEAAKAAAAeQAAACUAAAADBQcADwoN
AQsOBAYJDAgCSAQQAAoAAAB7AAAAJwAAAEFMc1BEcnNPQjdDN0RBZTN1cjhNQ3dzQnNBRUh1Z0M2QXdBQUI3OEtBQTg9SAQQAAoA
AAAVAAAALwAAANwDEAAAAAAA3AMQAAAAAADcAxAAAAAAANwDEAAAAAAAdnd3THU3ZTZ1ZzRIQVFNQXVnOENzQThIRDdvSER3dXhB
ZzRIQVFHNkRMQT1IBBAACgAAADcAAAAKAAAARXJyb3IgS2V5AAAASAQQAAoAAABaAAAANgAAAEVycm9yIGRlY29kaW5nIGNpcGhl
ciB0ZXh0IDFFcnJvciBkZWNyeXB0aW5nIGNpcGhlciB0ZXh0IDKAAEG0i8AAC9gVsgUQAAAAAABKc1ZhbHVlKCkAAAC8BRAACAAA
AMQFEAABAAAADwAAAAQAAAAEAAAAEAAAAC9Vc2Vycy9tYWd1YW5nemhpLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVz
LmlvLTZmMTdkMjJiYmExNTAwMWYvYmFzZTY0LTAuMjEuMi9zcmMvZW5naW5lL2dlbmVyYWxfcHVycG9zZS9kZWNvZGVfc3VmZml4
LnJz6AUQAIAAAAAdAAAAGQAAAOgFEACAAAAAmgAAAAkAAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2Rl
OiBJbXBvc3NpYmxlOiBtdXN0IG9ubHkgaGF2ZSAwIHRvIDggaW5wdXQgYnl0ZXMgaW4gbGFzdCBjaHVuaywgd2l0aCBubyBpbnZh
bGlkIGxlbmd0aHMAAIgGEAB+AAAA6AUQAIAAAACFAAAADgAAAGludGVybmFsIGVycm9yOiBlbnRlcmVkIHVucmVhY2hhYmxlIGNv
ZGU6IEltcG9zc2libGUgcmVtYWluZGVyAAAgBxAAPgAAAC9Vc2Vycy9tYWd1YW5nemhpLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5k
ZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYmFzZTY0LTAuMjEuMi9zcmMvZW5jb2RlLnJzAABoBxAAYgAAAG4AAAAWAAAA
aAcQAGIAAACCAAAACQAAAA8AAAAEAAAABAAAABEAAABJbnZhbGlkTGVuZ3RoSW52YWxpZEJ5dGVJbnZhbGlkTGFzdFN5bWJvbElu
dmFsaWRQYWRkaW5nL1VzZXJzL21hZ3Vhbmd6aGkvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJi
YTE1MDAxZi9iYXNlNjQtMC4yMS4yL3NyYy9lbmdpbmUvZ2VuZXJhbF9wdXJwb3NlL2RlY29kZS5yczMIEAB5AAAAcgAAACkAAAAz
CBAAeQAAAHMAAAAvAAAAMwgQAHkAAACZAAAAGwAAADMIEAB5AAAAnQAAABkAAAAzCBAAeQAAALAAAAATAAAAMwgQAHkAAACzAAAA
GAAAADMIEAB5AAAA2gAAAB8AAAAzCBAAeQAAAOAAAAAfAAAAMwgQAHkAAADpAAAAHwAAADMIEAB5AAAA8gAAAB8AAAAzCBAAeQAA
APsAAAAfAAAAMwgQAHkAAAAEAQAAHwAAADMIEAB5AAAADQEAAB8AAAAzCBAAeQAAABYBAAAfAAAAL1VzZXJzL21hZ3Vhbmd6aGkv
LmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tNmYxN2QyMmJiYTE1MDAxZi9iYXNlNjQtMC4yMS4yL3NyYy9lbmdp
bmUvZ2VuZXJhbF9wdXJwb3NlL21vZC5ycwAAjAkQAHYAAACUAAAADQAAAIwJEAB2AAAAlgAAAEAAAACMCRAAdgAAAJUAAAANAAAA
jAkQAHYAAACYAAAADQAAAIwJEAB2AAAAnAAAAA0AAACMCRAAdgAAAJ0AAAANAAAAjAkQAHYAAACFAAAAJQAAAIwJEAB2AAAAhgAA
ACsAAACMCRAAdgAAAD4AAAAbAAAAjAkQAHYAAABAAAAAIAAAAC9Vc2Vycy9tYWd1YW5nemhpLy5jYXJnby9yZWdpc3RyeS9zcmMv
aW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYWVzLTAuOC4zL3NyYy9zb2Z0L2ZpeHNsaWNlMzIucnMApAoQAGcAAADd
AQAAKQAAAKQKEABnAAAA8gEAAC0AAACkChAAZwAAAIkEAAASAAAApAoQAGcAAACJBAAAPQAAAKQKEABnAAAAFAUAACIAAACkChAA
ZwAAABQFAAAJAAAAUGFkRXJyb3JjYWxsZWQgYE9wdGlvbjo6dW53cmFwKClgIG9uIGEgYE5vbmVgIHZhbHVlABQAAAAMAAAABAAA
ABUAAAAWAAAAFwAAAG1lbW9yeSBhbGxvY2F0aW9uIG9mICBieXRlcyBmYWlsZWQAALgLEAAVAAAAzQsQAA0AAABsaWJyYXJ5L3N0
ZC9zcmMvYWxsb2MucnPsCxAAGAAAAGIBAAAJAAAAbGlicmFyeS9zdGQvc3JjL3Bhbmlja2luZy5ycxQMEAAcAAAAUwIAAB8AAAAU
DBAAHAAAAFQCAAAeAAAAFAAAAAwAAAAEAAAAGAAAABkAAAAIAAAABAAAABoAAAAZAAAACAAAAAQAAAAbAAAAHAAAAB0AAAAQAAAA
BAAAAB4AAAAfAAAAIAAAAAAAAAABAAAAIQAAACIAAAAEAAAABAAAACMAAAAkAAAADAAAAAQAAAAlAAAAJgAAACcAAABsaWJyYXJ5
L2FsbG9jL3NyYy9yYXdfdmVjLnJzY2FwYWNpdHkgb3ZlcmZsb3cAAADsDBAAEQAAANAMEAAcAAAAFgIAAAUAAABhIGZvcm1hdHRp
bmcgdHJhaXQgaW1wbGVtZW50YXRpb24gcmV0dXJuZWQgYW4gZXJyb3IAKAAAAAAAAAABAAAAKQAAAGxpYnJhcnkvYWxsb2Mvc3Jj
L2ZtdC5yc1wNEAAYAAAAYgIAACAAAADvv71ieXRlc2Vycm9yAAAAIgAAAAQAAAAEAAAAKgAAAEZyb21VdGY4RXJyb3IAAAArAAAA
DAAAAAQAAAAsAAAAKQAAAMQNEAAAAAAAWwAAADAAAAAAAAAAAQAAADEAAABpbmRleCBvdXQgb2YgYm91bmRzOiB0aGUgbGVuIGlz
ICBidXQgdGhlIGluZGV4IGlzIAAA5A0QACAAAAAEDhAAEgAAADogAADEDRAAAAAAACgOEAACAAAAMgAAAAwAAAAEAAAAMwAAADQA
AAA1AAAAICAgICB7ICwgIHsKLAp9IH0oKAosCgAAMgAAAAQAAAAEAAAANgAAAF1saWJyYXJ5L2NvcmUvc3JjL2ZtdC9udW0ucnN9
DhAAGwAAAGkAAAAXAAAAMHgwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4
MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2
NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OXJhbmdlIHN0
YXJ0IGluZGV4ICBvdXQgb2YgcmFuZ2UgZm9yIHNsaWNlIG9mIGxlbmd0aCAAAHIPEAASAAAAhA8QACIAAAByYW5nZSBlbmQgaW5k
ZXgguA8QABAAAACEDxAAIgAAAHNsaWNlIGluZGV4IHN0YXJ0cyBhdCAgYnV0IGVuZHMgYXQgANgPEAAWAAAA7g8QAA0AAAABAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBzqHAAAszAgICAgICAgICAgICAgICAgIC
AgICAgICAgICAgICAwMDAwMDAwMDAwMDAwMDAwQEBAQEAEGNosAAC0xOb25lU29tZQAAADIAAAAEAAAABAAAADcAAABFcnJvclV0
ZjhFcnJvcnZhbGlkX3VwX3RvZXJyb3JfbGVuAAAyAAAABAAAAAQAAAA4AHsJcHJvZHVjZXJzAghsYW5ndWFnZQEEUnVzdAAMcHJv
Y2Vzc2VkLWJ5AwVydXN0Yx0xLjc0LjAgKDc5ZTk3MTZjOSAyMDIzLTExLTEzKQZ3YWxydXMGMC4xOS4wDHdhc20tYmluZGdlbhIw
LjIuODcgKGYwYThhZTNiOSkALA90YXJnZXRfZmVhdHVyZXMCKw9tdXRhYmxlLWdsb2JhbHMrCHNpZ24tZXh0
`,Ho=null,mw=null,hw=null,Hoe=null,G6=0,up=new Array(132).fill(void 0);up.push(void 0,null,!0,!1);var gw=up.length;function Rot(t){let e=up[t];return t>=132&&(up[t]=gw,gw=t),e}function Qoe(){return(hw===null||hw.byteLength===0)&&(hw=new Uint8Array(Hoe.buffer)),hw}function H6(){return(mw===null||mw.byteLength===0)&&(mw=new Int32Array(Hoe.buffer)),mw}function Not(t,e){return t=t>>>0,Mc(Qoe().subarray(t,t+e))}function wot(t,e,r){if(r===void 0){let i=kg(t),a=e(i.length,1)>>>0;return Qoe().subarray(a,a+i.length).set(i),G6=i.length,a}let n=kg(t),s=e(n.length,1)>>>0;return Qoe().subarray(s,s+n.length).set(n),G6=n.length,s}function Tbr(t){return t==null}function wbr(t){let e=atob(t.replace(/\s+/g,"")),r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=e.charCodeAt(n);return r}async function Rbr(){if(Ho!==null)return Ho;let t=wbr(Cbr),e={wbg:{__wbindgen_object_drop_ref:n=>Rot(n),__wbindgen_string_new:(n,s)=>{let i=Not(n,s);gw===up.length&&up.push(up.length+1);let a=gw;return gw=up[a],up[a]=i,a},__wbindgen_debug_string:()=>{}}};return Ho=(await WebAssembly.instantiate(t,e)).instance.exports,Hoe=Ho.memory,mw=null,hw=null,Ho}function Nbr(t,e){let r,n;try{let s=Ho.__wbindgen_add_to_stack_pointer(-16),i=wot(t,Ho.__wbindgen_malloc,Ho.__wbindgen_realloc),a=G6,o=Tbr(e)?0:wot(e,Ho.__wbindgen_malloc,Ho.__wbindgen_realloc),c=G6;Ho.gateway_decrypt(s,i,a,o,c);let u=H6()[s/4+0],l=H6()[s/4+1],d=H6()[s/4+2],f=H6()[s/4+3],m=u,p=l;if(f)throw m=0,p=0,Rot(d);return r=m,n=p,Not(m,p)}finally{Ho.__wbindgen_add_to_stack_pointer(16),r!==void 0&&n!==void 0&&Ho.__wbindgen_free(r,n,1)}}async function Oot(t,e){return t=t.replace(/\s+/g,""),await Rbr(),Nbr(t,e)}sn();xs();var Goe=class extends wt{async search(e){try{let r="https://jadeite.migu.cn/search/v3/open-search",n={appVersion:"6.1.1.00",ct:101,isCorrectWord:1,k:e,mediaSource:9e6,packId:"1002581,1002601,1003861,1003862,1003863,1003864,1003865,1003866,1004041,1004121,1004261,1004262,1004281,1004321,1004262,1004281,1004322,1004261,1004421,1004422,1002781,1004301,1004641,1004761,1005061,1005261,1005301,1005321,1005361,1005362,1005341,1005342,1005521,1005722,1005721,1015749,1015761,1015760,1015762,1015763,1015768,1015786,1015790,1015812,1015813,1015814,1015815,1015816,1015817,1015820,1015819,1015821",pageIdx:1,pageSize:20,sid:"1X4A395AL3XS3UV5MT8PQ1L5JUYK6KFM8VKDSDD48S5Y7YX5WY1MOUHRT6512988",copyrightTerminal:3,searchScene:2,uiVersion:"A3.26.0"},s={Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive","Content-Type":"application/json",Origin:"https://www.miguvideo.com",Referer:"https://www.miguvideo.com/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"cross-site","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",appId:"miguvideo","sec-ch-ua":'Not(A:Brand";v="8", "Chromium";v="144", "Google Chrome";v="144"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"Windows",terminalId:"www"},i=await Gr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return E("info","[Migu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let o=(typeof i.data=="string"?JSON.parse(i.data):i.data)?.body?.contentInfoList,c=[];return o.forEach(u=>{let l=u?.shortMediaAsset;if(l&&l.isLong){let d;l?.extraData?d=l?.extraData?.episodes?.[0]:d=l?.pID,c.push({name:l.name,type:l.contDisplayName,year:l.year.trim(),img:l.h5pics?.highResolutionV,url:`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${d}/1`,epsId:d})}}),E("info",`[Migu] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return E("error","[Migu] getMiguAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}extractEpId(e){let n=e.split("?")[0].split("/").filter(s=>s!=="");return n[n.length-1]||""}async getDetail(e){try{let r=await Ae(`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${e}/1`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return E("info","[Migu] getMiguDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{duration:0,epsID:null};let n=r.data?.body?.data?.playing?.duration||0,s=r.data?.body?.data?.epsID||null;return{duration:n,epsID:s}}catch(r){return E("error","[Migu] getMiguDetail error:",{message:r.message,name:r.name,stack:r.stack}),{duration:0,epsID:null}}}async getEpisodes(e){try{let r=await Ae(e,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return E("info","[Migu] getMiguEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let n=r.data?.body?.data?.datas;if(n)return n;{let s=r.data?.body?.data?.name,i=r.data?.body?.data?.playing?.pID;return i?[{name:s,pID:i}]:(E("info","[Migu] getMiguEposides: eps \u4E0D\u5B58\u5728"),[])}}catch(r){return E("error","[Migu] getMiguEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Migu] sourceAnimes is not a valid array"),[];let o=e.filter(l=>Ct(l.name||l.title,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=d.name||d.title,m=Tt(f).season;return m===c||c===1&&m===null});l.length>0&&(o=l,E("info",`[Migu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url||l.mediaId),f=[];for(let m of d)f.push({name:m.name,url:`https://webapi.miguvideo.com/gateway/live_barrage/videox/barrage/v2/list/${l.epsId??m.pID}/${m.pID}`,title:`\u3010migu\u3011 ${m.name}`});if(f.length>0){let m={animeId:zr(l.epsId??d[0]?.pID),bangumiId:String(l.epsId??d[0]?.pID),animeTitle:`${l.name||l.title}(${l.year})\u3010${l.type}\u3011from migu`,type:l.type,typeDescription:l.type,imageUrl:l.img??l.imageUrl,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"migu"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(d){E("error",`[Migu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Migu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u54AA\u5495\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Migu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;a<n.length;a+=s){let o=n.slice(a,a+s),c=o.map(l=>this.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l<u.length;l++){let d=u[l],f=o[l],m=f.segment_start,p=f.segment_end;if(d.status==="fulfilled"){let h=d.value;h&&h.length>0&&i.push(...h)}else E("error",`[Migu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${m}-${p}s):`,d.reason.message)}a+s<n.length&&await new Promise(l=>setTimeout(l,200))}return i.length===0?(E("info",`[Migu] \u54AA\u5495\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ns(i),i)}async getEpisodeDanmuSegments(e){E("info","[Migu] \u83B7\u53D6\u54AA\u5495\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=this.extractEpId(e),n=await this.getDetail(r),s=ty(n.duration);E("info","[Migu] itemId:",r),E("info","[Migu] durationSec:",s),E("info","[Migu] epsID:",n.epsID);let i=30,a=[];for(let o=0;o<s;o+=i){let c=o,u=Math.min(o+i,s),l=`https://webapi.miguvideo.com/gateway/live_barrage/videox/barrage/v2/list/${n.epsID??r}/${r}/${c}/${u}/020`;a.push({type:"migu",segment_start:c,segment_end:u,url:l})}return new vt({type:"migu",segmentList:a})}async getEpisodeSegmentDanmu(e){try{let r=await Ae(e.url,{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",appCode:"miguvideo_default_h5"},retries:1}),n=[];if(r&&r.data){let s=await Oot(r.data),a=(typeof r.data=="string"?JSON.parse(s):s)?.body?.result??[];n.push(...a)}return n}catch(r){return E("error","[Migu] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>({cid:Number(r.cid),p:`${r.playtime},1,${r1(r.textcolor)},[migu]`,m:r.msg,t:r.playtime,like:r.praiseCount}))}},kot=Goe;kt();Et();fr();Ns();Un();sn();xs();var yw=class extends wt{constructor(){super(),this.positionMap={1:1,4:5,5:4}}filterSohuSearchItem(e,r){if(!e.aid||!e.album_name||e.is_trailer===1||e.corner_mark&&e.corner_mark.text==="\u9884\u544A")return null;let n=e.album_name.replace("<<<","").replace(">>>",""),s=null;if(e.meta&&Array.isArray(e.meta)){for(let i of e.meta)if(i.txt&&i.txt.includes("|")){let a=i.txt.split("|");if(a.length>0){let o=a[0].trim();o.includes("\u522B\u540D")&&a.length>1?s=a[1].trim():s=o;break}}}return{mediaId:String(e.aid),title:n,type:s,year:e.year||null,imageUrl:e.ver_big_pic||null,episodeCount:e.total_video_count||0}}async search(e){try{E("info",`[Sohu] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,type:"1",page:"1",page_size:"20",user_id:"",tabsChosen:"0",poster:"4",tuple:"6",extSource:"1",show_star_detail:"3",pay:"1",hl:"3",uid:String(Math.floor(Date.now()*1e3)),passport:"",plat:"-1",ssl:"0"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://so.tv.sohu.com/",Origin:"https://so.tv.sohu.com"},s=`https://m.so.tv.sohu.com/search/pc/keyword?${Ci(r)}`,i=await Ae(s,{headers:n});if(!i||!i.data)return E("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.data||!a.data.items)return E("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E2D\u65E0\u6570\u636E"),[];let o=[];for(let c of a.data.items){let u=this.filterSohuSearchItem(c,e);u&&o.push(u)}return E("info",`[Sohu] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return E("error","[Sohu] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getPlaylistData(e){let r={playlistid:e,api_key:"f351515304020cad28c92f70f002261c"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://tv.sohu.com/"},s=`https://pl.hd.sohu.com/videolist?${Ci(r)}`,i=await Ae(s,{headers:n,timeout:15e3});if(!i||!i.data)return null;let a=i.data;if(typeof a=="string"&&a.startsWith("jsonp")){let o=a.indexOf("(")+1,c=a.lastIndexOf(")");if(o>0&&c>o)a=JSON.parse(a.substring(o,c));else return E("error","[Sohu] \u641C\u72D0\u89C6\u9891: \u65E0\u6CD5\u89E3\u6790JSONP\u54CD\u5E94"),null}else typeof a=="string"&&(a=JSON.parse(a));return a}async getEpisodes(e){try{E("info",`[Sohu] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=await this.getPlaylistData(e);if(!r)return E("info","[Sohu] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let n=r.videos||[];if(!n||n.length===0)return E("warn",`[Sohu] \u641C\u72D0\u89C6\u9891: \u672A\u627E\u5230\u5206\u96C6\u5217\u8868 (media_id=${e})`),[];let s=[];for(let i=0;i<n.length;i++){let a=n[i],o,c,u;typeof a=="object"?(o=String(a.vid||""),c=a.video_name||`\u7B2C${i+1}\u96C6`,u=a.url_html5||""):(o=String(a.vid||a.vid||""),c=a.name||a.video_name||`\u7B2C${i+1}\u96C6`,u=a.pageUrl||a.url_html5||""),u&&u.startsWith("http://")&&(u=u.replace("http://","https://"));let l={vid:o,title:c,url:u,episodeId:`${o}:${e}`};s.push(l)}return E("info",`[Sohu] \u6210\u529F\u83B7\u53D6 ${s.length} \u4E2A\u5206\u96C6 (media_id=${e})`),s}catch(r){return E("error","[Sohu] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Sohu] sourceAnimes is not a valid array"),[];let o=e.filter(l=>Ct(l.title,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Sohu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let m=0;m<d.length;m++){let p=d[m],h=p.title||`\u7B2C${m+1}\u96C6`,y=`https://tv.sohu.com/item/${l.mediaId}.html`;f.push({name:(m+1).toString(),url:`${p.url}`,title:`\u3010sohu\u3011 ${h}`})}if(f.length>0){let p={animeId:zr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from sohu`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"sohu"};a.push(p),Dt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(d){E("error",`[Sohu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDuration(e,r){if(!e)return 0;try{let n=await this.getPlaylistData(e),s=Array.isArray(n?.videos)?n.videos:[];if(!s.length)return 0;let i=s.find(o=>String(o?.vid||"")===String(r||""))||(s.length===1?s[0]:null),a=Number(i?.playLength||0);return Number.isFinite(a)&&a>0?a:0}catch(n){return E("warn",`[Sohu] \u83B7\u53D6\u771F\u5B9E\u65F6\u957F\u5931\u8D25: ${n.message}`),0}}async extractVidAndAid(e){let r,n="0",s=await Ae(e,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),i=s.data.match(/vid="(\d+)"/);return i&&(r=i[1]),n=s.data.match(/id="aid"[^>]*value=['"](\d+)['"]/)?.[1],n||(n=s.data.match(/playlistId="(\d+)"/)?.[1]),{vid:r,aid:n}}async getEpisodeDanmu(e){E("info","[Sohu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u641C\u72D0\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Sohu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;a<n.length;a+=s){let o=n.slice(a,a+s),c=o.map(l=>this.getDanmuSegment(l)),u=await Promise.allSettled(c);for(let l=0;l<u.length;l++){let d=u[l],f=o[l],m=f.segment_start,p=f.segment_end;if(d.status==="fulfilled"){let h=d.value;if(h&&h.length>0)i.push(...h);else if(m>600)break}else E("error",`[Sohu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${m}-${p}s):`,d.reason.message)}a+s<n.length&&await new Promise(l=>setTimeout(l,200))}return i.length===0?(E("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ns(i),i)}async getDanmuSegment(e){try{let r={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Referer:"https://tv.sohu.com/"},n=await Ae(e.url,{headers:r,timeout:1e4});if(!n||!n.data)return E("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u5F39\u5E55\u6BB5\u54CD\u5E94\u4E3A\u7A7A (${e.segment_start}-${e.segment_end}s)`),[];try{let i=(typeof n.data=="string"?JSON.parse(n.data):n.data).info?.comments||[];return i&&i.length>0&&E("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5230 ${i.length} \u6761\u5F39\u5E55 (${e.segment_start}-${e.segment_end}s)`),i||[]}catch(s){return E("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u89E3\u6790\u5F39\u5E55\u54CD\u5E94\u5931\u8D25: ${s.message}`),[]}}catch(r){return E("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (vid=${vid}, ${start}-${end}s): ${r.message}`),[]}}async getEpisodeDanmuSegments(e){E("info","[Sohu] \u83B7\u53D6\u641C\u72D0\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let{vid:r,aid:n}=await this.extractVidAndAid(e),s=await this.getEpisodeDuration(n,r),i=s>0?Math.ceil(s):10800,a=300,o=[];for(let c=0;c<i;c+=a){let u=Math.min(c+a,i);o.push({type:"sohu",segment_start:c,segment_end:u,url:`https://api.danmu.tv.sohu.com/dmh5/dmListAll?act=dmlist_v2&vid=${r}&aid=${n}&pct=2&time_begin=${c}&time_end=${u}&dct=1&request_from=h5_js`})}return new vt({type:"sohu",duration:s>0?s:0,segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=await Ae(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.info?.comments||[])}return n}catch(r){return E("error","[Sohu] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>{try{let n=16777215;if(r.t&&r.t.c){let l=r.t.c;typeof l=="string"&&l.startsWith("#")?n=parseInt(l.substring(1),16):n=parseInt(String(l),16)}let s=r.v||0,i=Math.floor(parseFloat(r.created||Date.now()/1e3)),a=r.uid||"",o=r.i||"",c=1;r.t&&r.t.p&&(c=this.positionMap[r.t.p]||1);let u=`${s},1,25,${n},${i},0,${a},${o}`;return{cid:String(o),p:u,m:r.c||"",t:parseFloat(s),like:r.fcount}}catch(n){return E("error",`[Sohu] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};kt();Et();fr();Ns();Un();sn();xs();var Pot={tv:"\u7535\u89C6\u5267",movie:"\u7535\u5F71",cartoon:"\u52A8\u6F2B",comic:"\u52A8\u6F2B"},Aw=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=Pot[e.type]||"\u7535\u89C6\u5267";return{mediaId:String(e.pid),title:n,type:s,year:e.year||null,imageUrl:e.imageUrl||null,episodeCount:e.episodeCount||0}}async search(e){try{E("info",`[Leshi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={wd:e,from:"pc",ref:"click",click_area:"search_button",query:e,is_default_query:"0",module:"search_rst_page"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Accept-Encoding":"gzip, deflate, br",Referer:"https://so.le.com/",Connection:"keep-alive","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin"},s=`https://so.le.com/s?${Ci(r)}`,i=await Ae(s,{headers:n,timeout:15e3});if(!i||!i.data)return E("info","[Leshi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=i.data;E("info",`[Leshi] \u641C\u7D22\u8BF7\u6C42\u6210\u529F\uFF0C\u54CD\u5E94\u957F\u5EA6: ${a.length} \u5B57\u7B26`);let o=[],c=/<div class="So-detail[^"]*"[^>]*data-info="({.*?})"[^>]*>/g,u,l=[];for(;(u=c.exec(a))!==null;)l.push(u);E("info",`[Leshi] \u4ECEHTML\u4E2D\u627E\u5230 ${l.length} \u4E2A data-info \u5757`);for(let d of l)try{let f=d[1];E("info",`[Leshi] \u63D0\u53D6\u5230 data-info \u539F\u59CB\u5B57\u7B26\u4E32: ${f.substring(0,200)}...`),f=f.replace(/'/g,'"'),f=f.replace(/([{,])(\w+):/g,'$1"$2":');let m=JSON.parse(f);E("info",`[Leshi] \u6210\u529F\u89E3\u6790 data-info\uFF0Cpid=${m.pid}, type=${m.type}`);let p=m.pid||"",h=m.type||"",y=m.total||"0";if(!p)continue;let g=d.index,A=[`</div>
</div>`,`</div>
</div>`,"</div></div>"],b=-1;for(let L of A){let Z=a.indexOf(L,g);if(Z!==-1){b=Z;break}}if(b===-1){let L=a.indexOf('<div class="So-detail',g+100);if(L!==-1)b=L;else continue}let x=a.substring(g,b),S="",T=/<h1>[\s\S]*?<a[^>]*title="([^"]*)"[^>]*>/.exec(x);if(T&&T[1]&&(S=T[1].trim()),!S&&m.keyWord){let L=/(.*?)(?:\d{4})?(?:电影|电视剧|综艺)?$/.exec(m.keyWord);L&&L[1]&&(S=L[1].replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g,"").trim())}if(!S){let L=/<a[^>]*title="([^"]*?)[^0-9\u4e00-\u9fa5][^"]*"/.exec(x);L&&L[1]&&(S=L[1].trim())}S||E("info","[Leshi] \u672A\u627E\u5230\u6807\u9898\uFF0C\u5C1D\u8BD5\u4ECE\u5176\u4ED6\u6765\u6E90\u83B7\u53D6");let I=/<img[^>]*(?:src|data-src|alt)="([^"]+)"/.exec(x),R=I?I[1]:"",N=null,k=/<b>年份:<\/b>.*?>(\d{4})<\/a>/.exec(x);k||(k=/<b>ä¸Šæ˜ æ—¶é—´ï¼š<\/b>.*?>(\d{4})<\/a>/.exec(x)),k||(k=/_y(\d{4})_/.exec(x)),k||(k=/(\d{4})/.exec(m.keyWord||"")),k&&(N=parseInt(k[1]));let B=Pot[h]||"\u7535\u89C6\u5267",M=y&&/^\d+$/.test(y)?parseInt(y):0,P={mediaId:p,title:S,type:B,year:N,imageUrl:R&&R.startsWith("http")?R:R?`https:${R}`:null,episodeCount:M};o.push(P),E("info",`[Leshi] \u89E3\u6790\u6210\u529F - ${S} (pid=${p}, type=${B}, episodes=${M})`)}catch(f){E("warn",`[Leshi] \u89E3\u6790\u641C\u7D22\u7ED3\u679C\u9879\u5931\u8D25: ${f}`);continue}if(o.length>0){E("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C\u3002`),E("info","[Leshi] \u641C\u7D22\u7ED3\u679C\u5217\u8868:");for(let d of o)E("info",`[Leshi] - ${d.title} (ID: ${d.mediaId}, \u7C7B\u578B: ${d.type}, \u5E74\u4EFD: ${d.year})`)}else E("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 0 \u4E2A\u7ED3\u679C\u3002`);return o}catch(r){return E("error","[Leshi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{E("info",`[Leshi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=[`https://www.le.com/tv/${e}.html`,`https://www.le.com/comic/${e}.html`,`https://www.le.com/playlet/${e}.html`,`https://www.le.com/movie/${e}.html`],n=null;for(let l of r)try{let d=await Ae(l,{timeout:1e4});if(d&&d.data&&d.status===200){n=d.data,E("info",`[Leshi] \u6210\u529F\u83B7\u53D6\u9875\u9762: ${l}`);break}}catch(d){E("info",`[Leshi] \u5C1D\u8BD5URL\u5931\u8D25 ${l}: ${d}`);continue}if(!n)return E("error",`[Leshi] \u65E0\u6CD5\u83B7\u53D6\u4F5C\u54C1\u9875\u9762: media_id=${e}`),[];let s=/<div class="show_cnt twxj-[^"]*">[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(s)return E("info","[Leshi] \u627E\u5230\u56FE\u6587\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(s[0],e);let i=/<div class="show_cnt sjxj-[^"]*">[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(i)return E("info","[Leshi] \u627E\u5230\u6570\u5B57\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(i[0],e);E("info","[Leshi] \u672A\u627E\u5230\u7279\u5B9A\u9009\u96C6\u5BB9\u5668\uFF0C\u5C1D\u8BD5\u67E5\u627E\u7B2C\u4E00\u96C6\u89C6\u9891\u5217\u8868...");let a=/<div class="show_play first_videolist[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(a){let l=a[0];return this.parseEpisodesFromHtml(l,e)}E("error",`[Leshi] \u65E0\u6CD5\u627E\u5230\u5267\u96C6\u5217\u8868\u5BB9\u5668: media_id=${e}`);let o=/https:\/\/www\.le\.com\/ptv\/vplay\/(\d+)\.html/g,c=n.matchAll(o),u=[];for(let l of c){let d=l[1],f=l[0],m={vid:d,title:`\u7B2C${u.length+1}\u96C6`,url:f,episodeId:`${d}:${e}`};u.push(m)}return u.length>0?(E("info",`[Leshi] \u4ECEHTML\u5185\u5BB9\u4E2D\u5339\u914D\u5230 ${u.length} \u4E2A\u5267\u96C6\u94FE\u63A5`),u):[]}catch(r){return E("error","[Leshi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}parseEpisodesFromHtml(e,r){try{let n=/<div class="col_4"[^>]*>[\s\S]*?<\/div>/g,s=e.match(n);if(!s||s.length===0){E("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5BB9\u5668div.col_4\uFF0C\u5C1D\u8BD5\u67E5\u627Edl.dl_temp\u5143\u7D20");let a=/<dl class="dl_temp">[\s\S]*?<\/dl>/g,o=e.match(a);if(!o||o.length===0){E("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5143\u7D20\uFF0C\u5C1D\u8BD5\u66F4\u5E7F\u6CDB\u7684\u9009\u62E9\u5668");let c=/<dl[^>]*class="[^"]*dl_temp[^"]*"[^>]*>[\s\S]*?<\/dl>/g,u=e.match(c);return!u||u.length===0?(E("error",`[Leshi] \u65E0\u6CD5\u4ECEHTML\u4E2D\u89E3\u6790\u5230\u4EFB\u4F55\u5267\u96C6: media_id=${r}`),[]):this.extractEpisodes(u,r)}return this.extractEpisodes(o,r)}let i=[];for(let a of s){let o=/<dl class="dl_temp">[\s\S]*?<\/dl>/.exec(a);o&&i.push(o[0])}return i.length===0?(E("error",`[Leshi] \u4ECE\u5BB9\u5668\u4E2D\u672A\u80FD\u63D0\u53D6\u5230\u4EFB\u4F55dl.dl_temp\u5143\u7D20: media_id=${r}`),[]):this.extractEpisodes(i,r)}catch(n){return E("error",`[Leshi] \u89E3\u6790\u5267\u96C6HTML\u5931\u8D25: ${n.message}`),[]}}extractEpisodes(e,r){let n=[];for(let s of e)try{let i=/<a[^>]+href="(\/\/www\.le\.com\/ptv\/vplay\/(\d+)\.html)"[^>]*>/.exec(s);if(!i){E("info","[Leshi] \u8DF3\u8FC7\u65E0\u6CD5\u89E3\u6790\u94FE\u63A5\u7684\u5267\u96C6\u5143\u7D20");continue}let a=i[1],o=i[2],c=`https:${a}`,u="",l=/<dt class="d_tit">[\s\n\r]*<a[^>]*title="([^"]*)"[^>]*>([^<]*)<\/a>/.exec(s);if(l&&l[1])u=l[1].trim();else if(l&&l[2])u=l[2].trim();else{let m=/<a[^>]*title="([^"]*)"[^>]*>[\s\S]*?<dt class="d_tit">/.exec(s)||/<dt class="d_tit">[\s\S]*?<a[^>]*title="([^"]*)"/.exec(s);if(m&&m[1])u=m[1].trim();else{let p=/<dd class="d_cnt"[^>]*>([^<]*)/.exec(s);if(p&&p[1])u=p[1].trim();else{let h=/<a[^>]*title="[^"]*"[^>]*>([^<]*)/.exec(s);h&&h[1]&&(u=h[1].trim())}}}if(!u){let m=/第(\d+)集|(\d+)(?:\s*预告)?/.exec(s);m?u=`\u7B2C${m[1]||m[2]}\u96C6`:u=`\u7B2C${n.length+1}\u96C6`}if(/预告|Preview|preview/.test(u)){E("info",`[Leshi] \u8DF3\u8FC7\u9884\u544A\u7247: ${u}`);continue}let f={vid:o,title:u,url:c,episodeId:`${o}:${r}`};n.push(f)}catch(i){E("warn",`[Leshi] \u89E3\u6790\u5355\u4E2A\u5267\u96C6\u5931\u8D25: ${i.message}`);continue}return E("info",`[Leshi] \u6210\u529F\u89E3\u6790\u5267\u96C6\u5217\u8868: media_id=${r}, \u5171 ${n.length} \u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Leshi] sourceAnimes is not a valid array"),[];let o=e.filter(l=>Ct(l.title,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Leshi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let m=0;m<d.length;m++){let p=d[m],h=p.title||`\u7B2C${m+1}\u96C6`;f.push({name:(m+1).toString(),url:`${p.url}`,title:`\u3010leshi\u3011 ${h}`})}if(f.length>0){let p={animeId:zr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from leshi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"leshi"};a.push(p),Dt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(d){E("error",`[Leshi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Leshi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4E50\u89C6\u7F51\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Leshi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;a<n.length;a+=s){let o=n.slice(a,a+s),c=o.map(l=>this.getDanmuSegment(l)),u=await Promise.allSettled(c);for(let l=0;l<u.length;l++){let d=u[l],f=o[l],m=f.segment_start,p=f.segment_end;if(d.status==="fulfilled"){let h=d.value;if(h&&h.length>0)i.push(...h);else if(m>600)break}else E("error",`[Leshi] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${m}-${p}s):`,d.reason.message)}a+s<n.length&&await new Promise(l=>setTimeout(l,200))}return i.length===0?(E("info",`[Leshi] \u4E50\u89C6\u7F51: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ns(i),i)}async getDanmuSegment(e){try{let r=await Ae(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?r.data:JSON.stringify(r.data),i=/vjs_\d+\((.*)\)/.exec(s);if(i){let a=JSON.parse(i[1]);a.code===200&&a.data&&n.push(...a.data.list||[])}}return n}catch(r){return E("error","[Leshi] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}async getEpisodeDanmuSegments(e){E("info","[Leshi] \u83B7\u53D6\u4E50\u89C6\u7F51\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e,n=e.match(/\/vplay\/(\d+)\.html/);n&&(r=n[1]);let s=await this.getVideoDuration(r),i=[];for(let a=0;a<Math.ceil(s/300);a++){let o=a*300,c=Math.min((a+1)*300,s);i.push({type:"leshi",segment_start:o,segment_end:c,url:`https://hd-my.le.com/danmu/list?vid=${r}&start=${o}&end=${c}&callback=vjs_${Date.now()}`})}return E("info",`[Leshi] \u4E50\u89C6\u7F51: \u89C6\u9891\u65F6\u957F ${s}\u79D2\uFF0C\u5206\u4E3A ${i.length} \u4E2A\u65F6\u95F4\u6BB5`),new vt({type:"leshi",segmentList:i})}async getEpisodeSegmentDanmu(e){return this.getDanmuSegment(e)}async getVideoDuration(e){try{let r=await Ae(`https://www.le.com/ptv/vplay/${e}.html`,{timeout:1e4});if(!r||!r.data)return E("warn","[Leshi] \u4E50\u89C6\u7F51: \u83B7\u53D6\u89C6\u9891\u65F6\u957F\u5931\u8D25\uFF0C\u4F7F\u7528\u9ED8\u8BA4\u503C2400\u79D2"),2400;let n=/duration['"]?\s*:\s*['"]?(\d{2}):(\d{2}):(\d{2})['"]?|duration['"]?\s*:\s*['"]?(\d{2}):(\d{2})['"]?|duration['"]?\s*:\s*(\d+)['"]?/.exec(r.data);if(n){if(n[1]&&n[2]&&n[3]){let s=parseInt(n[1]),i=parseInt(n[2]),a=parseInt(n[3]);return s*3600+i*60+a}else if(n[4]&&n[5]){let s=parseInt(n[4]),i=parseInt(n[5]);return s*60+i}else if(n[6])return parseInt(n[6])}return 2400}catch(r){return E("warn",`[Leshi] \u83B7\u53D6\u89C6\u9891\u65F6\u957F\u5931\u8D25: ${r}\uFF0C\u4F7F\u7528\u9ED8\u8BA4\u503C2400\u79D2`),2400}}formatComments(e){return e.map(r=>{try{let n=this.positionMap[parseInt(r.position)]||1,s=parseFloat(r.start||0),i=r.color||"FFFFFF",a=parseInt(i,16),o=r.id||r._id||"",c=r.txt||"",u=`${s.toFixed(2)},${n},25,${a},[${this.constructor.name.toLowerCase()}]`;return{cid:String(o),p:u,m:c,t:Math.round(s*100)/100}}catch(n){return E("error",`[Leshi] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};kt();Et();fr();Ns();Un();sn();xs();var Voe=class extends wt{async search(e){try{let r=`https://m.ixigua.com/s/${e}`,s=(await Ae(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}})).data,i=[],a=/<section class="search-section">[\s\S]*?<h2 class="search-section-title">[\s\S]*?相关视频[\s\S]*?<\/h2>[\s\S]*?<div class="s-long-video-card">([\s\S]*?)<\/div><\/div><\/div>/,o=s.match(a);if(o){let c=o[1],u=/<div class="s-long-video">[\s\S]*?(?=<div class="s-long-video">|$)/g;(c.match(u)||[]).forEach(d=>{let f=d.match(/href="(\/video\/\d+)"/),m=f?`https://m.ixigua.com${f[1]}`:"",p=d.match(/<h3 class="s-long-video-info-title">[\s\S]*?title="([^"]+)"/),h=p?p[1]:"",y=d.match(/<img src="([^"]+)"/),g=y?y[1]:"";g&&g.startsWith("//")&&(g="https:"+g),g=g.replace(/&amp;/g,"&");let A=d.match(/<p>([^<]+\/[^<]+\/\d{4})<\/p>/),b="",x="";if(A){let S=A[1].split("/");b=S[0]||"",x=S[2]||""}m&&h&&i.push({name:h,type:b,year:x,img:g,url:m})})}else return E("info","[Xigua] xiguaSearchresp: \u76F8\u5173\u89C6\u9891\u7684section \u4E0D\u5B58\u5728"),[];return E("info",`[Xigua] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i}catch(r){return E("error","[Xigua] getXiguaAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let n=`https://m.ixigua.com/video/${e.split("/").pop()}`,s=await Ae(n,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!s||!s.data)return E("info","[Xigua] getXiguaDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),0;let i=s.data.match(/"duration"\s*:\s*([\d.]+)/);return i?parseFloat(i[1]):0}catch(r){return E("error","[Xigua] getXiguaDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r=`https://m.ixigua.com/video/${e}`,n=await Ae(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!n||!n.data)return E("info","[Xigua] getXiguaEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let s=n.data.match(/"episodes_list"\s*:\s*(\[[\s\S]*?\})\s*\]/);if(s)try{let i=s[0].replace(/"episodes_list"\s*:\s*/,"");return JSON.parse(i).map(c=>({seq_num:c.seq_num,title:c.title||`\u7B2C${c.seq_num}\u96C6`,url:`https://m.ixigua.com/video/${c.gid}`,gid:c.gid,cover_image_url:c.cover_image_url}))}catch(i){E("error","[Xigua] \u89E3\u6790episodes_list\u5931\u8D25:",i)}else return E("info","[Xigua] getXiguaEposides: episodes_list \u4E0D\u5B58\u5728"),[]}catch(r){return E("error","[Xigua] getXiguaEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Xigua] sourceAnimes is not a valid array"),[];let o=e.filter(l=>Ct(l.name,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Xigua] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=l.url.split("/").pop(),f=await this.getEpisodes(d),m=[];for(let p of f){let h=p.title;m.push({name:h,url:p.url,title:`\u3010xigua\u3011 ${h}`})}if(m.length>0){let p={animeId:zr(d),bangumiId:String(d),animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from xigua`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Br(l.year),episodeCount:m.length,rating:0,isFavorited:!0,source:"xigua"};a.push(p),Dt({...p,links:m},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(d){E("error",`[Xigua] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Xigua] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u897F\u74DC\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Xigua] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;a<n.length;a+=s){let o=n.slice(a,a+s),c=o.map(l=>this.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l<u.length;l++){let d=u[l],f=o[l],m=f.segment_start,p=f.segment_end;if(d.status==="fulfilled"){let h=d.value;h&&h.length>0&&i.push(...h)}else E("error",`[Xigua] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${m}-${p}s):`,d.reason.message)}a+s<n.length&&await new Promise(l=>setTimeout(l,200))}return i.length===0?(E("info",`[Xigua] \u897F\u74DC\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ns(i),i)}async getEpisodeDanmuSegments(e){E("info","[Xigua] \u83B7\u53D6\u897F\u74DC\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e.split("/").pop(),n=await this.getDetail(e)*1e3;E("info","[Xigua] itemId:",r),E("info","[Xigua] duration:",n);let s=3e5,i=[];for(let a=0;a<n;a+=s){let o=a,c=Math.min(a+s,n),l=`https://ib.snssdk.com/vapp/danmaku/list/v1/?${Ci({item_id:r,start_time:o,end_time:c,format:"json"})}`;i.push({type:"xigua",segment_start:o,segment_end:c,url:l})}return new vt({type:"xigua",segmentList:i})}async getEpisodeSegmentDanmu(e){try{let r=await Ae(e.url,{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"},retries:1}),n=[];if(r&&r.data){let i=(typeof r.data=="string"?JSON.parse(r.data):r.data).data??[];n.push(...i)}return n}catch(r){return E("error","[Xigua] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>({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)}))}},Dot=Voe;kt();Et();fr();Ns();Un();sn();xs();var Koe=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=Ci(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:ss(i),sourceVersion:0,terminalType:"APP",thirdStatus:0,time:n,version:"5.8.00",visitorStatus:0}}extractByRegex(e){let r=e.match(/\/video\/([a-f0-9]+)\.html/i),n=e.match(/[?&]uuid=([a-f0-9]+)/i);return{vodUuid:r?r[1]:null,uuid:n?n[1]:null,success:!!(r&&n)}}async search(e){try{let r="/searchApi/search/getAllSearchResult4820.action",n=`${this.domain}${r}`,s={keyWord:e},i=await Gr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return E("info","[Maiduidui] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=a?.data;for(let u of c)if(u?.typeName==="\u5267\u96C6"||u?.typeName==="\u7535\u5F71"||u?.typeName==="\u7EFC\u827A")for(let l of u?.vodList)o.push({name:l.name,type:u.typeName,year:l.yearName,img:l.downImage,url:l.uuid});return E("info",`[Maiduidui] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return E("error","[Maiduidui] getMaiduiduiAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let r=this.extractByRegex(e),n=r.uuid,s=r.vodUuid,i="/api/vod/listVodSactions.action",a=`${this.domain}${i}`,o={hasIntroduction:0,vodUuid:s},c=await Gr(a,JSON.stringify(this.getPlayload(i,o)),{headers:this.headers});if(!c||!c.data)return E("info","[Maiduidui] \u83B7\u53D6\u8BE6\u60C5\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let u=typeof c.data=="string"?JSON.parse(c.data):c.data;for(let l of u?.data)if(l.uuid===n)return l.duration;return 0}catch(r){return E("error","[Maiduidui] getMaiduiduiDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r="/api/vod/listVodSactions.action",n=`${this.domain}${r}`,s={hasIntroduction:0,vodUuid:e},i=await Gr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return E("info","[Maiduidui] \u83B7\u53D6\u96C6\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let a=[];return(typeof i.data=="string"?JSON.parse(i.data):i.data)?.data.forEach(c=>{a.push({title:c.name,episodeId:c.uuid})}),a}catch(r){return E("error","[Maiduidui] getMaiduiduiEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Maiduidui] sourceAnimes is not a valid array"),[];let o=e.filter(l=>Ct(l.name,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Maiduidui] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url),f=[];for(let m of d){let p=m.title;f.push({name:p,url:`https://www.mddcloud.com.cn/video/${l.url}.html?uuid=${m.episodeId}`,title:`\u3010maiduidui\u3011 ${p}`})}if(f.length>0){let m={animeId:zr(l.url),bangumiId:l.url,animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from maiduidui`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"maiduidui"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Lt()}}catch(d){E("error",`[Maiduidui] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){E("info","[Maiduidui] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u57CB\u5806\u5806\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;E("info",`[Maiduidui] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=20,i=[];for(let a=0;a<n.length;a+=s){let o=n.slice(a,a+s),c=o.map(l=>this.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l<u.length;l++){let d=u[l],f=o[l],m=f.segment_start,p=f.segment_end;if(d.status==="fulfilled"){let h=d.value;h&&h.length>0&&i.push(...h)}else E("error",`[Maiduidui] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${m}-${p}s):`,d.reason.message)}a+s<n.length&&await new Promise(l=>setTimeout(l,200))}return i.length===0?(E("info",`[Maiduidui] \u57CB\u5806\u5806: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ns(i),i)}async getEpisodeDanmuSegments(e){E("info","[Maiduidui] \u83B7\u53D6\u57CB\u5806\u5806\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let n=this.extractByRegex(e).uuid,s=await this.getDetail(e);E("info","[Maiduidui] uuid:",n),E("info","[Maiduidui] duration:",s);let i=60,a=[];for(let o=0;o<s;o+=i){let c=o,u=Math.min(o+i,s);a.push({type:"maiduidui",segment_start:c,segment_end:u,url:e})}return new vt({type:"maiduidui",segmentList:a})}async getEpisodeSegmentDanmu(e){try{let r=this.extractByRegex(e.url),n=r.uuid,s=r.vodUuid,i="/api/barrage/vodBarrage396.action",a=`${this.domain}${i}`,o={sactionUuid:n,times:e.segment_start,vodUuid:s},c=await Gr(a,JSON.stringify(this.getPlayload(i,o)),{headers:this.headers,retries:1}),u=[];return c&&c.data&&((typeof c.data=="string"?JSON.parse(c.data):c.data).data??[]).forEach(f=>{u.push(...f.barrageList)}),u}catch(r){return E("error","[Maiduidui] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>({cid:Number(r.uuid),p:`${r.times.toFixed(2)},1,${r1(r.color.replace("#",""))},[maiduidui]`,m:r.content,t:r.times}))}},Bot=Koe;Et();fr();Ns();Un();sn();po();kt();kt();Et();Ns();fr();var Obr="https://www.yfsp.tv/",kbr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",Pbr=60*1e3;function xw(t,e,r){if(t==null)return r;let n=e.split("."),s=t;for(let i=0;i<n.length;i++){if(s==null)return r;let a=n[i],o=a.match(/^(.+)\[(\d+)\]$/);if(o){let c=o[1],u=parseInt(o[2],10);if(s=s[c],Array.isArray(s)&&u<s.length)s=s[u];else return r}else s=s[a]}return s!==void 0?s:r}function Dbr(t,e){let n=new RegExp("\\b(?:var|let|const)\\s+"+e+"\\s*=\\s*").exec(t);if(!n)return null;let s=t.indexOf("{",n.index+n[0].length);if(s===-1)return null;let i=0,a=!1,o="",c=!1;for(let u=s;u<t.length;u++){let l=t[u];if(a){c?c=!1:l==="\\"?c=!0:l===o&&(a=!1,o="");continue}if(l==='"'||l==="'"){a=!0,o=l;continue}if(l==="{"){i+=1;continue}if(l==="}"&&(i-=1,i===0))return t.slice(s,u+1)}return null}function Bbr(t){let e=t.match(/"pConfig"\s*:\s*\{\s*"publicKey"\s*:\s*"([^"]+)"\s*,\s*"privateKey"\s*:\s*\[(.*?)\]\s*\}/s);if(!e)return null;let r=[];try{r=JSON.parse("["+e[2]+"]")}catch{return null}return!e[1]||!r.length?null:{publicKey:e[1],privateKey:r[0]}}function Lbr(t){let e=xw(t,"config[0]",null),r=e?e.pConfig:null;if(!r)return null;let n=r.publicKey,s=Array.isArray(r.privateKey)?r.privateKey[0]:r.privateKey;return!n||!s?null:{publicKey:n,privateKey:s}}function Mbr(t){let e=Dbr(t,"injectJson");if(e)try{let r=JSON.parse(e),n=Lbr(r);if(n)return n}catch(r){E("warn","[Utils] [Aiyifan] \u89E3\u6790 injectJson \u5931\u8D25\uFF0C\u56DE\u9000\u5230 pConfig \u63D0\u53D6: "+(r.message||"\u672A\u77E5\u9519\u8BEF"))}return Bbr(t)}function Lot(t){return t==null?null:String(t)}function Wbr(t){return t==="vv"||t==="pub"}function $br(t){return t?t.split("&").filter(Boolean).map(function(e){let r=e.indexOf("="),n=r===-1?e:e.slice(0,r),s=r===-1?"":e.slice(r+1);function i(c){try{return decodeURIComponent(c.replace(/\+/g,"%20"))}catch{return c}}let a=i(n),o=i(s);return[a,o]}):[]}function Ubr(t){if(!t)return[];if(typeof t=="string"){let n=t.trim();if(!n)return[];let s=n,i=n.indexOf("?");if(i!==-1){let a=n.indexOf("#",i);s=n.slice(i+1,a===-1?void 0:a)}else n.charAt(0)==="?"&&(s=n.slice(1));return $br(s)}if(typeof t=="object"&&t!==null){if(typeof t.entries=="function")try{var e=t.entries();if(Array.isArray(e))return e;var r=[];if(typeof t.forEach=="function")return t.forEach(function(n,s){r.push([s,Lot(n)])}),r.filter(function(n){return n[1]!==null})}catch{}return Object.keys(t).map(function(n){return[n,Lot(t[n])]}).filter(function(n){return n[1]!==null})}return[]}function Fbr(t){return Ubr(t).filter(function(e){return!Wbr(e[0])}).map(function(e){return e[0]+"="+e[1]}).join("&")}function qbr(t,e){let r=Fbr(t),n=e.publicKey+"&"+r.toLowerCase()+"&"+e.privateKey;return ss(n)}function jbr(t){return typeof t=="string"?JSON.parse(t):t}function Qbr(t){var e=xw(t,"ret",null),r=xw(t,"data.code",null);return e===200&&r===0}function Mot(t,e){var r=xw(t,"data.msg",null)||xw(t,"msg",null);return r||"HTTP "+e}var V6=class{constructor(e){e=e||{},this.proxyUrlBuilder=e.proxyUrlBuilder||function(r){return O.makeProxyUrl(r)},this.userAgent=e.userAgent||kbr,this.configPageUrl=e.configPageUrl||Obr,this.ttlMs=e.ttlMs||Pbr,this.now=e.now||function(){return Date.now()},this.signingConfig=null,this.signingConfigFetchedAt=0}async getSigningConfig(e){e=e||!1;var r=this.now(),n=this.signingConfig&&r-this.signingConfigFetchedAt<this.ttlMs;if(!e&&n)return this.signingConfig;var s=await Ae(this.proxyUrlBuilder(this.configPageUrl),{headers:{"User-Agent":this.userAgent,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}}),i=typeof s.data=="string"?s.data:String(s.data||""),a=Mbr(i);if(!a)throw new Error("\u672A\u80FD\u4ECE\u684C\u9762\u7AD9\u9875\u9762\u89E3\u6790\u5230 pConfig");return this.signingConfig=a,this.signingConfigFetchedAt=r,E("info","[Utils] [Aiyifan] \u5DF2\u66F4\u65B0\u684C\u9762\u7AD9\u7B7E\u540D\u914D\u7F6E: "+a.publicKey.slice(0,12)+"..."),a}buildSignedParams(e,r){var n={};for(var s in e)e.hasOwnProperty(s)&&(n[s]=e[s]);return n.vv=qbr(e,r),n.pub=r.publicKey,n}async signedGetJson(e,r,n,s,i){n=n||{},s=s||"Aiyifan",i=i||!1;var a=await this.getSigningConfig(i),o=this.buildSignedParams(r,a),c=Jb(e,o),u=await Ae(this.proxyUrlBuilder(c),{headers:n}),l;try{l=jbr(u.data)}catch(f){if(!i)return E("warn","["+s+"] \u54CD\u5E94\u65E0\u6CD5\u89E3\u6790\u4E3A JSON\uFF0C\u5237\u65B0\u7B7E\u540D\u914D\u7F6E\u540E\u91CD\u8BD5: "+(f.message||"\u672A\u77E5\u9519\u8BEF")),this.signedGetJson(e,r,n,s,!0);throw f}var d=u.status!=null?u.status:200;if(d!==200||!Qbr(l)){if(!i)return E("warn","["+s+"] \u5F53\u524D\u7B7E\u540D\u8BF7\u6C42\u5931\u8D25\uFF0C\u5237\u65B0 pConfig \u540E\u91CD\u8BD5: "+Mot(l,d)),this.signedGetJson(e,r,n,s,!0);throw new Error(Mot(l,d))}return{data:l,vv:o.vv,signingConfig:a}}};var bw=class extends wt{constructor(){super(),this.USER_AGENT="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",this.SEARCH_API="https://rankv21.tripdata.app/v3/list/briefsearch",this.PLAYLIST_API="https://m10.yfsp.tv/v3/video/languagesplaylist",this.VIDEO_API="https://m10.yfsp.tv/v3/video/play",this.DANMU_API="https://m10.yfsp.tv/api/video/getBarrage",this.DOMAIN_API="https://www.yfsp.tv/play",this.CONFIG_PAGE_API="https://www.yfsp.tv/",this.signingProvider=new V6({userAgent:this.USER_AGENT,configPageUrl:this.CONFIG_PAGE_API}),this.inflightDanmuRequests=new Map}extractEpisodeRequestKey(e){try{return new URL(e).searchParams.get("id")??e}catch{return e}}async searchDrama(e,r=1,n=10){let s={tags:e,orderby:4,page:r,size:n,desc:1,isserial:-1},i={"User-Agent":this.USER_AGENT,Accept:"application/json"};E("info",`[Aiyifan] [\u641C\u7D22] \u5173\u952E\u8BCD: ${e}, \u9875\u7801: ${r}`);try{let a=Jb(this.SEARCH_API,s),o=await Ae(O.makeProxyUrl(a),{headers:i});return typeof o.data=="string"?JSON.parse(o.data):o.data}catch(a){return E("error",`[Aiyifan] [\u641C\u7D22\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractDramaList(e){let r=[],n=e?.data?.info||[];if(!n.length)return E("warn","[Aiyifan] [\u8B66\u544A] \u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),r;for(let s of n){let i=s.result||[];if(i.length)for(let a of i){let o=a.contxt,c=a.title;r.push({contxt:o,title:c,...a}),E("info",`[Aiyifan] [\u53D1\u73B0\u5267\u76EE] ${c} vid=${o}`)}}return r}async getPlaylist(e){let r={cinema:1,vid:e,lsk:1,taxis:0,cid:"0,1,4,152"},n={"User-Agent":this.USER_AGENT,Accept:"application/json"};E("info",`[Aiyifan] [\u64AD\u653E\u5217\u8868] \u8BF7\u6C42 vid: ${e}`);try{let{data:s}=await this.signingProvider.signedGetJson(this.PLAYLIST_API,r,n,"\u64AD\u653E\u5217\u8868"),i=[],a=s.data?.info||[];for(let o of a)for(let c of o.playList||[])i.push(c);return E("info",`[Aiyifan] [\u64AD\u653E\u5217\u8868] \u5171\u83B7\u53D6\u5230 ${i.length} \u96C6`),i}catch(s){return E("error",`[Aiyifan] [\u64AD\u653E\u5217\u8868\u5931\u8D25] \u9519\u8BEF: ${s.message}`),[]}}async getVideoInfo(e,r=null){let n={cinema:1,id:e,a:0,lang:"none",usersign:1,region:"GL.",device:0,isMasterSupport:1},s={"User-Agent":this.USER_AGENT,Accept:"application/json"},i=r?`(ID:${r})`:"";E("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] \u8BF7\u6C42 key: ${e} ${i}`);try{let{data:a,vv:o}=await this.signingProvider.signedGetJson(this.VIDEO_API,n,s,"\u89C6\u9891\u4FE1\u606F");return E("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] vv\u7B7E\u540D: ${o.substring(0,16)}...`),a.data||{}}catch(a){return E("error",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractUniqueKey(e){let n=(e.info?.[0]||{}).uniqueKey;return n&&E("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] \u83B7\u53D6\u5230 uniqueKey: ${n}`),n}async fetchBarrage(e,r=1,n=3e4){let s={cinema:1,page:r,size:n,uniqueKey:e},i={"User-Agent":this.USER_AGENT};E("info",`[Aiyifan] [\u5F39\u5E55] \u8BF7\u6C42 uniqueKey: ${e}`);try{let{data:a,vv:o}=await this.signingProvider.signedGetJson(this.DANMU_API,s,i,"\u5F39\u5E55");E("info",`[Aiyifan] [\u5F39\u5E55] vv\u7B7E\u540D: ${o.substring(0,16)}...`);let c=a.data?.info||[];return E("info",`[Aiyifan] [\u5F39\u5E55] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c}catch(a){return E("error",`[Aiyifan] [\u5F39\u5E55\u5931\u8D25] \u9519\u8BEF: ${a.message}`),[]}}async search(e){E("info",`[Aiyifan] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=await this.searchDrama(e);if(!r)return E("error","[Aiyifan] \u641C\u7D22\u5931\u8D25\uFF0C\u9000\u51FA"),[];let n=this.extractDramaList(r);if(!n.length)return E("warn","[Aiyifan] \u672A\u627E\u5230\u5267\u76EE\u4FE1\u606F\uFF0C\u9000\u51FA"),[];let s=n.map(i=>({provider:"aiyifan",mediaId:i.contxt,title:i.title,type:i.atypeName,year:new Date(i.postTime).getFullYear(),imageUrl:i.imgPath||null,episodeCount:0}));return E("info",`[Aiyifan] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${s.length} \u4E2A\u7ED3\u679C`),s}async getEpisodes(e){E("info",`[Aiyifan] \u83B7\u53D6\u5267\u96C6\u8BE6\u60C5: ${e}`);let r=await this.getPlaylist(e);if(!r.length)return E("error","[Aiyifan] \u83B7\u53D6\u64AD\u653E\u5217\u8868\u5931\u8D25"),[];let n=r.map((s,i)=>({vid:s.key,id:s.id,title:s.name||`\u7B2C${i+1}\u96C6`,link:`${this.DOMAIN_API}/${e}?id=${s.key}`}));return E("info",`[Aiyifan] \u83B7\u53D6\u5230 ${n.length} \u4E2A\u5267\u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return E("error","[Aiyifan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>Ct(l.title,r,i)),c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,E("info",`[Aiyifan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId);if(d.length===0){E("info",`[Aiyifan] ${l.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}let f=d.map((h,y)=>({name:h.title||`${y+1}`,url:h.link,title:`\u3010aiyifan\u3011 ${h.title}`}));if(f.length===0)return;let p={animeId:zr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from aiyifan`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Br(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"aiyifan"};a.push(p),Dt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Lt()}catch(d){E("error",`[Aiyifan] \u5904\u7406 ${l.title} \u5931\u8D25:`,d.message)}});return await Promise.all(u),this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e){E("info",`[Aiyifan] \u83B7\u53D6\u5F39\u5E55: ${e}`);let r=this.extractEpisodeRequestKey(e),n=this.inflightDanmuRequests.get(r);if(n)return E("info",`[Aiyifan] \u590D\u7528\u8FDB\u884C\u4E2D\u7684\u5F39\u5E55\u8BF7\u6C42: ${r}`),await n;let s=(async()=>{let i=r,a=await this.getVideoInfo(i);if(!a)return E("error","[Aiyifan] \u83B7\u53D6\u89C6\u9891\u4FE1\u606F\u5931\u8D25"),[];let o=this.extractUniqueKey(a);if(!o)return E("error","[Aiyifan] \u672A\u83B7\u53D6\u5230uniqueKey"),[];let c=await this.fetchBarrage(o);return c.length===0?(E("info","[Aiyifan] \u672A\u83B7\u53D6\u5230\u5F39\u5E55"),[]):(c.sort((u,l)=>(u.second||0)-(l.second||0)),E("info",`[Aiyifan] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c)})();this.inflightDanmuRequests.set(r,s);try{return await s}finally{this.inflightDanmuRequests.delete(r)}}async getEpisodeDanmuSegments(e){let r=await this.getEpisodeDanmu(e),n=[{type:"aiyifan",segment_start:0,segment_end:Math.max(...r.map(s=>s.second||0),0),url:`${this.DANMU_API}?uniqueKey=${e}`}];return{type:"aiyifan",duration:Math.max(...r.map(s=>s.second||0),0),segmentList:n}}async getEpisodeSegmentDanmu(e){let r=e.url?.split("uniqueKey=")[1];return r?await this.getEpisodeDanmu(r):[]}formatComments(e){return e.map(r=>({p:`${r.second||0},${r.position===1?5:1},25,${r1(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=Vt(r.m)),r))}};kt();Et();fr();Un();po();xs();sn();var Fc={danmu:null,subject:null},_w=new Map,Hbr=3*60*1e3,Gbr=100,Ew=class extends wt{get headers(){return{"Content-Type":"application/json","User-Agent":`huangxd-/danmu_api/${O.version}(https://github.com/huangxd-/danmu_api)`}}_applyProxyForSearch(e){return O.makeProxyUrl(e)}_getDanmuServerPriority(){return new Date().getTimezoneOffset()===-480?["https://api.animeko.org","https://danmaku-global.myani.org","https://danmaku-cn.myani.org","https://s1.animeko.openani.org"]:["https://danmaku-global.myani.org","https://api.animeko.org","https://s1.animeko.openani.org","https://danmaku-cn.myani.org"]}_getSubjectServerPriority(){let e="https://api.bgm.tv",r="https://api.bangumi.lol",n=this._applyProxyForSearch(e),i=new Date().getTimezoneOffset()===-480?[{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"},{type:"V2",url:"https://s1.animeko.openani.org"}]:[{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://s1.animeko.openani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"}];return n!==e?[...i,{type:"V0",url:n},{type:"V0",url:r}]:[...i,{type:"V0",url:r},{type:"V0",url:e}]}async _fetchV0AllEpisodes(e,r){let n=[],s=0,i=200;try{for(;;){let a=`${e}/v0/episodes?subject_id=${r}&limit=${i}&offset=${s}`,o=await Ae(a,{headers:this.headers,timeout:3e3});if(!o||!o.data||!Array.isArray(o.data.data)){s===0&&E("info",`[Animeko] Subject ${r} \u65E0\u5267\u96C6\u6570\u636E\u6216\u54CD\u5E94\u5F02\u5E38`);break}let c=o.data.data;if(c.length===0||(n=n.concat(c),c.length===i&&E("info",`[Animeko] ID:${r} \u6B63\u52A0\u8F7D\u66F4\u591A\u5267\u96C6 (\u5F53\u524D\u5DF2\u83B7: ${n.length})`),c.length<i))break;if(s+=i,s>1600){E("warn",`[Animeko] ID:${r} \u5267\u96C6\u6570\u91CF\u8D85\u8FC7\u5B89\u5168\u9650\u5236(1600)\uFF0C\u505C\u6B62\u7FFB\u9875`);break}}return n}catch(a){return E("error","[Animeko] V0\u5267\u96C6\u83B7\u53D6\u5F02\u5E38:",{message:a.message,id:r,offset:s}),[]}}async _fetchAnimekoSubject(e){let r=_w.get(e);if(r&&Date.now()-r.timestamp<Hbr)return r.data;let n=this._getSubjectServerPriority(),s=Fc.subject,i=n.findIndex(a=>a.url===s);(!s||i===-1)&&(i=0,s=n[0].url,Fc.subject=s);for(let a=0;a<n.length;a++){let o=n[(i+a)%n.length];try{let c=null;if(o.type==="V2"){E("info",`[Animeko] \u8BE6\u60C5\u63A5\u53E3\u8BF7\u6C42 V2 \u8282\u70B9: ${o.url} (${e})`);let u=await Ae(`${o.url}/v2/subjects/${e}`,{headers:this.headers,timeout:3e3});u&&u.data&&u.data.id&&(c=u.data)}else if(o.type==="V0"){E("info",`[Animeko] \u8BE6\u60C5\u8865\u5168\u8BF7\u6C42 V0 \u8282\u70B9: ${o.url} (${e})`);let[u,l]=await Promise.all([this._fetchV0AllEpisodes(o.url,e),Ae(`${o.url}/v0/subjects/${e}/subjects`,{headers:this.headers,timeout:3e3}).catch(d=>(E("warn",`[Animeko] V0\u5173\u8054\u83B7\u53D6\u5F02\u5E38: ${d.message}`),null))]);(u&&u.length>0||l)&&(c={id:e},u&&u.length>0&&(c.episodes=u.map(d=>({episodeId:d.id,sort:d.sort,ep:d.ep,type:d.type===0?"MAIN":d.type===1?"SP":String(d.type),name:d.name,nameCn:d.name_cn,airdate:d.airdate}))),l&&l.data&&Array.isArray(l.data)&&(c.relations=l.data))}if(c){if(Fc.subject!==o.url&&(E("info",`[Animeko] \u8BE6\u60C5\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${Fc.subject} -> ${o.url}`),Fc.subject=o.url),_w.set(e,{data:c,timestamp:Date.now()}),_w.size>Gbr){let u=_w.keys().next().value;_w.delete(u)}return c}E("warn",`[Animeko] \u8282\u70B9 ${o.url} \u8FD4\u56DE\u65E0\u6548\u6570\u636E`)}catch(c){E("warn",`[Animeko] \u8282\u70B9\u8BF7\u6C42\u5931\u8D25: ${o.url} - ${c.message}`)}}return E("warn","[Animeko] \u6240\u6709\u8BE6\u60C5\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u4F18\u5148\u7EA7\u9996\u4F4D"),Fc.subject=n[0].url,null}async search(e){if(O.useBangumiData){let r=await ku(e,["bangumi"]);if(r.length>0){E("info",`[Animeko] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`);let n=r.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||s.titles[1]||s.title)+(s.titleSuffix||"");return{id:parseInt(s.siteId),name:s.title,name_cn:a,imageUrl:"",date:s.begin,score:0,platform:s.typeStr,aliases:[...s.titles]}});if(n.length>1){let s=await this.checkRelationsAndModifyTitles(n);return E("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF08Bangumi-Data + \u5173\u7CFB\u68C0\u6D4B\uFF09\uFF0C\u5171\u627E\u5230 ${s.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(s)}return this.transformResults(n)}}try{let r=e.replace(/[._]/g," ").replace(/\s+/g," ").trim();E("info",`[Animeko] \u5F00\u59CB\u641C\u7D22 (V0): ${r}`);let n=[],s=0,i=20;for(;;){let o=`/v0/search/subjects?limit=${i}&offset=${s}`,c=`https://api.bgm.tv${o}`,u=`https://api.bangumi.lol${o}`,l=this._applyProxyForSearch(c),d=[];l!==c?d=[{id:"PROXY_OFFICIAL",url:l},{id:"MIRROR",url:u}]:d=[{id:"MIRROR",url:u},{id:"OFFICIAL",url:c}];let f={keyword:r,filter:{type:[2]}},m=null;for(let y of d)try{if(m=await Gr(y.url,JSON.stringify(f),{headers:this.headers,timeout:5e3}),m&&m.data){E("info",`[Animeko] \u641C\u7D22\u8282\u70B9 [${y.id}] \u8BF7\u6C42\u6210\u529F (offset: ${s})`);break}}catch(g){E("warn",`[Animeko] \u641C\u7D22\u8282\u70B9 [${y.id}] \u8BF7\u6C42\u5931\u8D25: ${g.message}`)}if(!m||!m.data){E("info",`[Animeko] \u641C\u7D22\u8BF7\u6C42\u6240\u6709\u8282\u70B9\u5747\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (offset: ${s})`);break}let p=m.data.data||[];if(p.length===0)break;let h=this.filterSearchResults(p,e);if(h.length>0&&(n=n.concat(h)),h.length<i){E("info",`[Animeko] \u8FC7\u6EE4\u540E\u5F53\u524D\u6279\u6B21\u5269 ${h.length} \u4E2A\u7ED3\u679C\uFF0C\u505C\u6B62\u7FFB\u9875`);break}if(s+=i,s>=60){E("warn","[Animeko] \u641C\u7D22\u7FFB\u9875\u8FBE\u5230\u5B89\u5168\u4E0A\u9650(60)\uFF0C\u5F3A\u5236\u505C\u6B62");break}}if(n.length===0)return E("info","[Animeko] \u8FC7\u6EE4\u540E\u65E0\u5339\u914D\u7ED3\u679C"),[];let a=Array.from(new Map(n.map(o=>[o.id,o])).values());return a.length>1&&(a=await this.checkRelationsAndModifyTitles(a)),E("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF0C\u5171\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(a)}catch(r){return E("error","[Animeko] Search error:",{message:r.message,name:r.name,stack:r.stack}),[]}}filterSearchResults(e,r){return e.filter(n=>{let s=[n.name,n.name_cn];return n.infobox&&Array.isArray(n.infobox)&&n.infobox.forEach(i=>{i.key==="\u522B\u540D"&&Array.isArray(i.value)&&i.value.forEach(a=>{a&&a.v&&s.push(a.v)}),i.key==="\u4E2D\u6587\u540D"&&typeof i.value=="string"&&s.push(n.value)}),s.some(i=>i&&Ct(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|(?<!\d)\d+$|\S+[ç¯‡ç« ]/i.test(e):!1}async checkRelationsAndModifyTitles(e){let r=Math.min(e.length,3);for(let n=0;n<r;n++)for(let s=0;s<r;s++){if(n===s)continue;let i=e[n],a=e[s],o=i.name_cn||i.name,c=a.name_cn||a.name;if(c.includes(o)&&c.length>o.length){if(this.hasExplicitSeasonInfo(c))continue;let u=await this._fetchAnimekoSubject(i.id),d=this._extractRelations(u).find(f=>f.id===a.id);if(d&&(E("info",`[Animeko] \u68C0\u6D4B\u5230\u5173\u7CFB: [${o}] -> ${d.relation} -> [${c}]`),["\u7EED\u96C6","\u756A\u5916\u7BC7","\u4E3B\u7EBF\u6545\u4E8B","\u524D\u4F20","\u4E0D\u540C\u6F14\u7ECE","\u884D\u751F"].includes(d.relation))){let m=d.relation;m==="\u7EED\u96C6"&&(m="\u7EED\u7BC7"),a._relation_mark=`(${m})`}}}return e}_extractRelations(e){if(!e||!e.relations)return[];let r=e.relations;if(Array.isArray(r))return r.filter(i=>i.type===2).map(i=>({id:i.id,name:i.name_cn||i.name,relation:i.relation}));let n=[],s=(i,a)=>{Array.isArray(i)&&i.forEach(o=>{o&&n.push({id:o,name:"",relation:a})})};return s(r.sequelSubjects,"\u7EED\u96C6"),s(r.prequelSubjects,"\u524D\u4F20"),s(r.sideStorySubjects,"\u756A\u5916\u7BC7"),s(r.alternativeSettingSubjects,"\u4E0D\u540C\u6F14\u7ECE"),s(r.characterSubjects,"\u884D\u751F"),n}_extractInfoboxValue(e,r){if(!e||!e.fields||!Array.isArray(e.fields))return null;let n=e.fields.find(s=>s.key===r);return n&&n.values&&n.values.length>0&&n.values[0].v||null}_ExtractInfoboxAliases(e){let r=[];return!e||!e.fields||!Array.isArray(e.fields)||e.fields.forEach(n=>{n.key==="\u522B\u540D"&&Array.isArray(n.values)&&n.values.forEach(s=>{s&&s.v&&!r.includes(s.v)&&r.push(s.v)})}),r}transformResults(e){return e.map(r=>{let n="\u52A8\u6F2B";if(r.platform)switch(r.platform){case"TV":case 1:n="TV\u52A8\u753B";break;case"Web":n="Web\u52A8\u753B";break;case"OVA":n="OVA";break;case"Movie":n="\u5267\u573A\u7248";break;default:n=typeof r.platform=="number"?"TV\u52A8\u753B":r.platform}let s=!1,i=!1;r.tags&&Array.isArray(r.tags)&&r.tags.forEach(u=>{let l=u.name||u;l==="3D"&&(s=!0),l==="2D"&&(i=!0)}),s?n="3D"+n:i&&(n="2D"+n);let a=r._relation_mark?` ${r._relation_mark}`:"",o=Array.isArray(r.aliases)?[...r.aliases]:[];r.infobox&&(Array.isArray(r.infobox)?r.infobox.forEach(u=>{u.key==="\u522B\u540D"&&Array.isArray(u.value)&&u.value.forEach(l=>{l&&l.v&&!o.includes(l.v)&&o.push(l.v)})}):r.infobox.fields&&this._ExtractInfoboxAliases(r.infobox).forEach(l=>{o.includes(l)||o.push(l)})),r.name_cn&&r.name_cn!==r.name&&o.push(r.name_cn),r.nameCn&&r.nameCn!==r.name&&(o.includes(r.nameCn)||o.push(r.nameCn));let c=r.airDate||r.date||"";return{id:r.id,name:r.name,name_cn:(r.name_cn||r.nameCn||r.name)+a,aliases:o,images:r.images,air_date:c,score:r.score?parseFloat(r.score):0,typeDescription:n}})}async getEpisodes(e){try{let r=await this._fetchAnimekoSubject(e);return!r||!r.episodes||!Array.isArray(r.episodes)?(r&&E("info",`[Animeko] Subject ${e} \u65E0\u5267\u96C6\u6570\u636E`),[]):r.episodes.map(n=>({id:n.episodeId,sort:parseInt(n.sort)||0,ep:n.ep,type:n.type==="MAIN"?0:n.type==="SP"?1:n.type,name:n.name||"",name_cn:n.nameCn||"",airdate:n.airdate||""}))}catch(r){return E("error","[Animeko] GetEpisodes error:",{message:r.message,id:e}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return e&&E("error","[Animeko] sourceAnimes is not a valid array"),[];let o=e,c=i!==null?i:Ut(r);if(c!==null){let l=o.filter(d=>{let f=d.name_cn||d.name,m=Tt(f).season;return m===c||c===1&&m===null});l.length>0&&(o=l,E("info",`[Animeko] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.id),f=[],m=l.air_date||"";if(Array.isArray(d)){d.sort((p,h)=>(p.sort||0)-(h.sort||0));for(let p of d){if(p.type!==0)continue;!m&&p.airdate&&(m=p.airdate);let h=p.sort||p.ep,y=p.name_cn||p.name||"",g=`\u7B2C${h}\u8BDD ${y}`.trim();f.push({name:`${h}`,url:p.id.toString(),title:`\u3010animeko\u3011 ${g}`})}}if(f.length>0){let p=m?new Date(m).getFullYear():"",h={animeId:l.id,bangumiId:String(l.id),animeTitle:`${l.name_cn||l.name}(${p})\u3010${l.typeDescription||"\u52A8\u6F2B"}\u3011from animeko`,aliases:l.aliases||[],type:"\u52A8\u6F2B",typeDescription:l.typeDescription||"\u52A8\u6F2B",imageUrl:l.images?l.images.common||l.images.large:"",startDate:m,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&&Lt()}}catch(d){E("error",`[Animeko] Error processing anime ${l.id}: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){let r=String(e).trim();if(r.includes("/")){let a=r.split("/");r=a[a.length-1]}if(r.includes("?")&&(r=r.split("?")[0]),!r)return E("error","[Animeko] \u65E0\u6548\u7684 episodeId"),[];let n=this._getDanmuServerPriority(),s=Fc.danmu,i=n.indexOf(s);(!s||i===-1)&&(i=0,s=n[0],Fc.danmu=s);for(let a=0;a<n.length;a++){let o=(i+a)%n.length,c=n[o],u=`${c}/v1/danmaku/${r}`;E("info",`[Animeko] \u5C1D\u8BD5\u4F7F\u7528 ${c} \u8282\u70B9\u83B7\u53D6\u5F39\u5E55`);try{let l=await Ae(u,{headers:this.headers,timeout:3e3});if(l&&l.data){let d=l.data.danmakuList;if(d&&Array.isArray(d))return Fc.danmu!==c&&(E("info",`[Animeko] \u5F39\u5E55\u57DF\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${Fc.danmu} -> ${c}`),Fc.danmu=c),E("info",`[Animeko] \u6210\u529F\u83B7\u53D6\u5F39\u5E55\uFF0C\u5171 ${d.length} \u6761 (${c}\u8282\u70B9)`),d}E("info",`[Animeko] ${c} \u8282\u70B9\u83B7\u53D6\u5931\u8D25/\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(l){E("warn",`[Animeko] \u8BF7\u6C42\u8282\u70B9\u5931\u8D25: ${c} - ${l.message}`)}}return E("info","[Animeko] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u9996\u9009\u8282\u70B9"),Fc.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"?Vt(s.text):s.text;return{cid:n.id,p:`${i},${a},${o},[animeko]`,m:c}})}};kt();Et();fr();sn();xs();var vw=class extends wt{async search(e){}async getEpisodes(e){}async handleAnimes(e,r,n,s=null){}async getEpisodeDanmu(e){try{let r=await Ae(`${O.otherServer}/?url=${e}&ac=dm`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return E("info",`[Other] danmu response from ${O.otherServer}: \u2193\u2193\u2193`),ns(r.data),r.data}catch(r){return E("error",`[Other] \u8BF7\u6C42 ${O.otherServer} \u5931\u8D25:`,r),[]}}async getEpisodeDanmuSegments(e){return E("info","[Other] \u83B7\u53D6\u7B2C\u4E09\u65B9\u670D\u52A1\u5668\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new 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}};xs();var Fot=new sw,qot=new iw,Sw=new lw,Iw=new dw,Q1=new ny,Cw=new fw,eM=new pw,Am=new sy,xm=new cy,bm=new iy,uy=new ay,qc=new oy,_m=new kot,ly=new yw,dy=new Aw,fy=new Dot,py=new Bot,my=new bw,H1=new Ew,Yoe=new vw,Joe=new ow(Am,bm,xm,qc,_m),jot=new aw(Joe),K6=new Map;function Wot(t){let e=Number(t||0);return!Number.isFinite(e)||e<=0?0:e>6*60*60?e/1e3:e}function Qot(t,e=!1){return e?String(t||O.danmuOutputFormat||"json").toLowerCase()==="json":!1}function z6(t,e=null){return e===null?t:{videoDuration:e,...t}}function Vbr(t){let e=Wot(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=Wot(s?.segment_end||0);i<=0||i>n&&(n=i)}),n>0?n:0}async function Xoe(t){if(!/^https?:\/\//i.test(t))return 0;try{let e=t,r=null;return e.includes(".qq.com")?r=await _e.run("tencent",()=>Am.getComments(e,"qq",!0)):e.includes(".iqiyi.com")?r=await _e.run("iqiyi",()=>bm.getComments(e,"qiyi",!0)):e.includes(".mgtv.com")?r=await _e.run("mango",()=>uy.getComments(e,"imgo",!0)):e.includes(".bilibili.com")||e.includes("b23.tv")?(e.includes("b23.tv")&&(e=await _e.run("bilibili",()=>qc.resolveB23Link(e))),r=await _e.run("bilibili",()=>qc.getComments(e,"bilibili1",!0))):e.includes(".youku.com")?r=await _e.run("youku",()=>xm.getComments(e,"youku",!0)):e.includes(".miguvideo.com")?r=await _e.run("migu",()=>_m.getComments(e,"migu",!0)):e.includes(".sohu.com")?r=await _e.run("sohu",()=>ly.getComments(e,"sohu",!0)):e.includes(".le.com")?r=await _e.run("leshi",()=>dy.getComments(e,"leshi",!0)):e.includes(".douyin.com")||e.includes(".ixigua.com")?r=await _e.run("xigua",()=>fy.getComments(e,"xigua",!0)):e.includes(".mddcloud.com.cn")?r=await _e.run("maiduidui",()=>py.getComments(e,"maiduidui",!0)):e.includes(".yfsp.tv")&&(r=await _e.run("aiyifan",()=>my.getComments(e,"aiyifan",!0))),Vbr(r)}catch(e){return E("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function Kbr(t){return String(t||"").split(Uc).map(e=>{let r=e.indexOf(":");return r===-1?e.trim():e.slice(r+1).trim()}).filter(Boolean)}async function Y6(t){if(!t)return 0;try{let e=t.includes(Uc)?Kbr(t):[t];return(await Promise.all(e.map(Xoe))).reduce((n,s)=>Math.max(n,s||0),0)}catch(e){return E("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function J6(t,e){if(!e)return!0;let r=im(t.animeTitle);return r?r===e:!0}function zbr(t,e,r){let n=t.animeTitle.match(/^(.*?)\(\d{4}\)/),s=n?n[1].trim():t.animeTitle.split("(")[0].trim(),i=ir(s),a=ir(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&&Hl(u[0])===r)return!0}return!1}else return!1}function zoe(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=X6(d.animeTitle)||d.source;if(o!=="_any_"&&lp(f,o)===0)continue;l=!0;let m=gy(d,n);if(m?.success&&m.bangumi?.episodes){let p=m.bangumi.episodes.filter(b=>!O.episodeTitleFilter.test(b.episodeTitle)),h=hy(p);if(h.some(b=>Cf(b.episodeTitle)===r)){c=!0;break}let y=[d.animeTitle];d.aliases&&Array.isArray(d.aliases)&&y.push(...d.aliases);let g=null;for(let b of y){if(!b)continue;let x=Tt(b).season;if(x!==null){g=x;break}}g===null&&(g=1);let A=u.get(g)||0;h.length>A&&u.set(g,h.length)}}if(l&&!c){let d=0;for(let f of u.values())d+=f;if(d<r){a=!1;break}}}return a}async function $ot(t,e,r,n,s,i=null,a=null){let{vod:o,360:c,tmdb:u,douban:l,renren:d,hanjutv:f,bahamut:m,dandan:p,custom:h,tencent:y,youku:g,iqiyi:A,imgo:b,bilibili:x,migu:S,sohu:T,leshi:I,xigua:R,maiduidui:N,aiyifan:k,animeko:B}=t,M=O.sourceOrderArr.filter(W=>t[W]!==void 0),P=[];for(let W of M){let U=[],V=new Map;if(W==="360")P.push({key:W,animes:U,detailStore:V,promise:_e.run(hn(W),()=>Fot.handleAnimes(c,e,U,V,s))});else if(W==="vod"){if(o&&Array.isArray(o)){let j=_e.run(W,()=>(async()=>{for(let J of o)J&&J.list&&J.list.length>0&&await qot.handleAnimes(J.list,e,U,J.serverName,V,s)})());P.push({key:W,animes:U,detailStore:V,promise:j})}}else W==="tmdb"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>jot.handleAnimes(u,e,U,V,s))}):W==="douban"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>Joe.handleAnimes(l,e,U,V,s))}):W==="renren"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>Sw.handleAnimes(d,e,U,V,s))}):W==="hanjutv"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>Iw.handleAnimes(f,e,U,V,s))}):W==="bahamut"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>Q1.handleAnimes(m,e,U,V,s))}):W==="dandan"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>Cw.handleAnimes(p,e,U,V,s))}):W==="custom"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>eM.handleAnimes(h,e,U))}):W==="tencent"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>Am.handleAnimes(y,e,U,V,s))}):W==="youku"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>xm.handleAnimes(g,e,U,V,s))}):W==="iqiyi"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>bm.handleAnimes(A,e,U,V,s))}):W==="imgo"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(hn(W),()=>uy.handleAnimes(b,e,U,V,s))}):W==="bilibili"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>qc.handleAnimes(x,e,U,V,s))}):W==="migu"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>_m.handleAnimes(S,e,U,V,s))}):W==="sohu"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>ly.handleAnimes(T,e,U,V,s))}):W==="leshi"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>dy.handleAnimes(I,e,U,V,s))}):W==="xigua"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>fy.handleAnimes(R,e,U,V,s))}):W==="maiduidui"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>py.handleAnimes(N,e,U,V,s))}):W==="aiyifan"?P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>my.handleAnimes(k,e,U,V,s))}):W==="animeko"&&P.push({key:W,animes:U,detailStore:V,promise:_e.run(W,()=>H1.handleAnimes(B,e,U,V,s))})}let L=await Promise.allSettled(P.map(W=>W.promise)),Z=new Set(r.map(W=>W.animeId));for(let W=0;W<P.length;W++){if(L[W].status==="rejected"){E("error",`[system] [executeSourceHandlers] \u6E90 ${P[W].key} \u5904\u7406\u5931\u8D25: ${L[W].reason}`);continue}let{animes:U,detailStore:V}=P[W];for(let j of U)Z.has(j.animeId)||(r.push(j),Z.add(j.animeId));for(let[j,J]of V)n.has(j)||n.set(j,J)}}async function G1(t,e=null,r=null,n=null,s=null){let i=t.searchParams.get("keyword");O.titleNoiseFilter&&(i=i.replace(O.titleNoiseFilter,"").trim());let a=t.searchParams.get("season");a=a?parseInt(a,10):null;let o=t.searchParams.get("episode");if(o=o?parseInt(o,10):null,E("info",`[system] [searchAnime] Search anime with keyword: ${i}, target season: ${a}, target episode: ${o}`),i==="")return Me({errorCode:0,success:!0,errorMessage:"",animes:[]});if(O.animeTitleSimplified){let g=Vt(i);E("info",`[system] [searchAnime] searchAnime converted traditional to simplified: ${i} -> ${g}`),i=g}let c=n instanceof Map?n:new Map,u=a!==null?`${i}_S${a}`:i,l=QC(u,c);if(l===null&&a!==null){let g=QC(i,c);g!==null&&(E("info",`[system] [searchAnime] Cache miss for ${u}, fallback to generic cache for ${i}`),l=g)}if(l!==null){let g=zoe(l,a,o,c,s);if(g)return Me({errorCode:0,success:!0,errorMessage:"",animes:l});{let A=a+1,b=[...l],x=!1;for(;!g&&!x;){let S=`${i}_S${A}`,T=QC(S,c);T!==null&&T.length>0?(b.push(...T),g=zoe(b,a,o,c,s),A++):x=!0}if(g)return E("info",`[system] [LogVar-API] Episode ${o} satisfied by combining cached seasons S${a} to S${A-1}`),Me({errorCode:0,success:!0,errorMessage:"",animes:b});E("info",`[system] [LogVar-API] Episode ${o} not satisfied in cache. Proceeding to network search.`)}}let d=[],f=/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}(:\d+)?(\/[^\s]*)?$/,m=i.split(/\s+/).filter(g=>{let A=g.replace(/@%?-?\d+(?:\.\d+)?$/,"");return f.test(A)});if(m.length>=2){let g=m.map(A=>{let{source:b,realId:x}=Uot(A);return b?`${b}:${x}`:""}).filter(Boolean);if(g.length>=2){let A=g.join(Uc),b=[];for(let R of m){let{source:N}=Uot(R);if(N==="animeko"){let k=R.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);b.push(`\u3010animeko\u3011 BGMEp${k?k[1]:"?"}`)}else if(N==="bahamut")b.push(`\u3010bahamut\u3011 BahaSn${R.match(/sn=(\d+)/)?.[1]||"?"}`);else{let k=await _e.run(hn(N),()=>nJ(R));b.push(`\u3010${N}\u3011 ${k}`)}}let x=b.join("\uFF06"),S=Kl.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u5408\u5E76",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),T=[{name:"\u624B\u52A8\u5408\u5E76\u5F39\u5E55",url:A,title:x}];d.push(S),Dt(Kl.fromJson({...S,links:T}),c),O.animes.length>O.MAX_ANIMES&&Lt(),O.localCacheValid&&d.length!==0&&await KC(),O.redisValid&&d.length!==0&&await $C(),O.localRedisValid&&d.length!==0&&await ZT();let I=d.map(({links:R,...N})=>N);return Me({errorCode:0,success:!0,errorMessage:"",animes:I})}}if(f.test(i)){let g=Kl.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u89E3\u6790",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),A="unknown";i.includes(".qq.com")?A="qq":i.includes(".iqiyi.com")?A="qiyi":i.includes(".mgtv.com")?A="imgo":i.includes(".youku.com")?A="youku":i.includes(".bilibili.com")||i.includes("b23.tv")?A="bilibili1":i.includes(".miguvideo.com")?A="migu":i.includes(".sohu.com")?A="sohu":i.includes(".le.com")?A="leshi":i.includes(".douyin.com")||i.includes(".ixigua.com")?A="xigua":i.includes(".mddcloud.com.cn")?A="maiduidui":i.includes(".yfsp.tv")?A="aiyifan":/(?:bgm|bangumi)\.(?:tv|lol)\/ep\/|chii\.in\/ep\//.test(i)?A="animeko":i.includes("ani.gamer.com.tw")&&(A="bahamut");let b=i,x=i;if(A==="animeko"){let I=i.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);b=I?I[1]:i,x=`BGMEp${b}`}else if(A==="bahamut"){let I=i.match(/sn=(\d+)/);b=I?I[1]:i,x=`BahaSn${b}`}else x=await _e.run(hn(A),()=>nJ(i));let S=[{name:"\u624B\u52A8\u89E3\u6790\u94FE\u63A5\u5F39\u5E55",url:b,title:`\u3010${A}\u3011 ${x}`}];d.push(g),Dt(Kl.fromJson({...g,links:S}),c),O.animes.length>O.MAX_ANIMES&&Lt(),O.localCacheValid&&d.length!==0&&await KC(),O.redisValid&&d.length!==0&&await $C(),O.localRedisValid&&d.length!==0&&await ZT();let T=d.map(({links:I,...R})=>R);return Me({errorCode:0,success:!0,errorMessage:"",animes:T})}try{E("info",`[system] [LogVar-API] Search sourceOrderArr: ${O.sourceOrderArr}`);let g={},A={};for(let I of O.sourceOrderArr)I==="360"?A[I]=_e.run(hn(I),()=>Fot.search(i)):I==="vod"?A[I]=_e.run(hn(I),()=>qot.search(i,e,r)):I==="tmdb"?A[I]=_e.run(hn(I),()=>jot.search(i)):I==="douban"?A[I]=_e.run(hn(I),()=>Joe.search(i)):I==="renren"?A[I]=_e.run(hn(I),()=>Sw.search(i)):I==="hanjutv"?A[I]=_e.run(hn(I),()=>Iw.search(i)):I==="bahamut"?A[I]=_e.run(hn(I),()=>Q1.search(i)):I==="dandan"?A[I]=_e.run(hn(I),()=>Cw.search(i)):I==="custom"?A[I]=_e.run(hn(I),()=>eM.search(i)):I==="tencent"?A[I]=_e.run(hn(I),()=>Am.search(i)):I==="youku"?A[I]=_e.run(hn(I),()=>xm.search(i)):I==="iqiyi"?A[I]=_e.run(hn(I),()=>bm.search(i)):I==="imgo"?A[I]=_e.run(hn(I),()=>uy.search(i)):I==="bilibili"?A[I]=_e.run(hn(I),()=>qc.search(i)):I==="migu"?A[I]=_e.run(hn(I),()=>_m.search(i)):I==="sohu"?A[I]=_e.run(hn(I),()=>ly.search(i)):I==="leshi"?A[I]=_e.run(hn(I),()=>dy.search(i)):I==="xigua"?A[I]=_e.run(hn(I),()=>fy.search(i)):I==="maiduidui"?A[I]=_e.run(hn(I),()=>py.search(i)):I==="aiyifan"?A[I]=_e.run(hn(I),()=>my.search(i)):I==="animeko"&&(A[I]=_e.run(hn(I),()=>H1.search(i)));let b=O.sourceOrderArr.map(I=>{let R=[],N=new Map,k=A[I].then(async B=>{g[I]=B,await $ot({[I]:B},i,R,N,a,e,r)});return{key:I,animes:R,detailStore:N,promise:k}}),x=await Promise.allSettled(b.map(I=>I.promise)),S=new Set(d.map(I=>I.animeId));for(let I=0;I<b.length;I++){if(x[I].status==="rejected"){E("error",`[system] [searchAnime] \u6E90 ${b[I].key} \u7BA1\u9053\u5904\u7406\u5931\u8D25: ${x[I].reason}`);continue}let{animes:R,detailStore:N}=b[I];for(let k of R)S.has(k.animeId)||(d.push(k),S.add(k.animeId));for(let[k,B]of N)c.has(k)||c.set(k,B)}if(d.length>0&&HC(u,d.map(({links:I,...R})=>R),c),!zoe(d,a,o,c,s)&&a!==null){let I=a;for(let R of O.sourceOrderArr){let N=g[R];if(Array.isArray(N))for(let k of N){let B=k&&Array.isArray(k.list)?k.list:[k];for(let M of B){if(!M)continue;let P=Tt(M.animeTitle||M.title||"").season;P!==null&&P>I&&(I=P)}}}if(I>a){E("info",`[system] [LogVar-API] Episode ${o} not satisfied in Season ${a}. Parallel mapping to S${a+1}~S${I}...`);let R=[];for(let k=a+1;k<=I;k++)R.push((async()=>{let B=[];return await $ot(g,i,B,c,k,e,r),B.length>0&&HC(`${i}_S${k}`,B.map(({links:M,...P})=>P),c),B})());let N=await Promise.all(R);for(let k of N)d.push(...k)}}}catch(g){E("error","[system] [LogVar-API] \u53D1\u751F\u9519\u8BEF:",g)}let p=O.mergeSourcePairs&&O.mergeSourcePairs.length>0,h=O.customMergeRules&&O.customMergeRules.length>0;if((p||h)&&await Jat(d,c),AJ(d,i),O.enableAnimeEpisodeFilter){let g=[];for(let A of d){let b=A.animeTitle||"";if(O.animeTitleFilter&&O.animeTitleFilter.test(b)){E("info",`[searchAnime] Anime ${A.animeId} filtered by name: ${b}`);continue}let x=Bg(A?.bangumiId,c,A?.source)||Bg(A?.animeId,c,A?.source)||Dg(A?.bangumiId,c,A?.source)||Dg(A?.animeId,c,A?.source);if(x&&x.links){let S=x.links.map((T,I)=>({episodeId:T.id,episodeTitle:T.title,episodeNumber:I+1}));S=S.filter(T=>!O.episodeTitleFilter.test(T.episodeTitle)),E("info",`[searchAnime] Anime ${A.animeId} filtered episodes: ${S.length}/${x.links.length}`),S.length>0&&g.push(A)}}d.length=0,d.push(...g)}O.localCacheValid&&d.length!==0&&await KC(),O.redisValid&&d.length!==0&&await $C(),O.localRedisValid&&d.length!==0&&await ZT();let y=d.map(({links:g,...A})=>A);if(y.length>0){let g=a!==null?`${i}_S${a}`:i;HC(g,y,c)}return Me({errorCode:0,success:!0,errorMessage:"",animes:y})}function hy(t){return t.filter((r,n,s)=>!s.slice(0,n).some(i=>i.episodeTitle===r.episodeTitle))}function lp(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 X6(t){let e=t.match(/from\s+([a-zA-Z0-9&]+)/i);return e?e[1]:null}function Z6(t,e,r,n=null){if(!t||t.length===0)return null;let s=t;if(n&&(s=t.filter(i=>{let a=sm(i.episodeTitle);return lp(a,n)>0})),s.length===0)return null;for(let i of s){let a=Cf(i.episodeTitle);if(e===r&&a===r)return E("info",`Found episode by title number: ${i.episodeTitle} (extracted: ${a})`),i}if(s.length>=r){let i=s[r-1];return E("info",`Using fallback array index for episode ${r}: ${i.episodeTitle}`),i}for(let i of s)if(i.episodeNumber&&parseInt(i.episodeNumber,10)===r)return E("info",`Found episode by episodeNumber: ${i.episodeTitle} (episodeNumber: ${i.episodeNumber})`),i;return null}async function Ybr(t,e,r,n,s,i,a,o,c=null){let u=O.aiBaseUrl,l=O.aiModel,d=O.aiApiKey,f=O.aiMatchPrompt;if(!O.aiValid||!f)return E("warn","AI configuration is incomplete, falling back to normal matching"),{resEpisode:null,resAnime:null};let m=new kf({apiKey:d,baseURL:u,model:l,systemPrompt:f}),p={title:s,season:t,episode:e,year:r,dynamicPlatformOrder:a,preferAnimeId:o,animes:n.animes.map(h=>{let y=h.animeTitle||"",g=y.match(/^(.*?)\(\d{4}\)/),A=g?g[1].trim():y.split("(")[0].trim();return{animeId:h.animeId,animeTitle:A,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(p,null,2),y=await m.ask(h);E("info",`AI match response: ${y}`);let g;try{let T=y.match(/```json\s*([\s\S]*?)\s*```|```([\s\S]*?)\s*```|({[\s\S]*})/),I=T?T[1]||T[2]||T[3]:y;g=JSON.parse(I.trim())}catch(T){return E("error",`Failed to parse AI response: ${T.message}`),{resEpisode:null,resAnime:null}}let A=g.animeIndex;if(A==null)return{resEpisode:null,resAnime:null};let b=n.animes[A];if(!b)return E("error",`AI returned invalid anime index: ${A}`),{resEpisode:null,resAnime:null};let x=gy(b,c);if(!x?.success||!x?.bangumi?.episodes)return{resEpisode:null,resAnime:null};let S=null;if(t&&e){let T=x.bangumi.episodes.filter(R=>!O.episodeTitleFilter.test(R.episodeTitle)),I=hy(T);E("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",I.map(R=>R.episodeTitle)),S=Z6(I,e,e)}else x.bangumi.episodes.length>0&&(S=x.bangumi.episodes[0]);return{resEpisode:S,resAnime:b}}catch(h){return E("error",`AI matching failed: ${h.message}`),{resEpisode:null,resAnime:null}}}function gy(t,e=null){let r=Bg(t?.bangumiId,e,t?.source)||Bg(t?.animeId,e,t?.source);return r?ece(r,t?.bangumiId||t?.animeId||""):(E("warn",`[matchAnime] Missing request detail snapshot for anime ${t?.animeId??t?.bangumiId}`),null)}function Hot(t,e,r,n,s){let i=String(e),a=t[i].match(/^([^:]+):(.+)$/),o=Number(a?.[1])||0,c=a?.[2]||"",u=r-o,l=n.findIndex(d=>d.episodeTitle===c);return l!==-1&&(s=l+u+1,E("info",`Applying offset "${t[i]}" for S${e}E${r} -> ${s}`)),s}function Got(t,e,r,n,s,i,a){if(!n||!s)return{resEpisode:null,resAnime:null};E("info",`[system] [Spillover] \u5F53\u524D\u5B63\u96C6\u5339\u914D\u7B56\u7565\u5931\u8D25 (S${n}E${s})\uFF0C\u6B63\u5728\u8FDB\u884C\u8DE8\u5B63\u96C6\u6570\u6620\u5C04\u5339\u914D...`);let o=ir(e),c=new Map;for(let f of t.animes){let m=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&m.push(...f.aliases);let p=!1;for(let y of m)if(y&&ir(y).includes(o)){if(!J6(f,r))continue;p=!0;break}if(!p)continue;let h=null;for(let y of m){if(!y)continue;let g=Tt(y).season;if(g!==null){h=g;break}}if(h===null&&(h=1),!c.has(h)){let y=gy(f,a);if(y?.success&&y?.bangumi?.episodes){let g=y.bangumi.episodes.filter(b=>!O.episodeTitleFilter.test(b.episodeTitle)),A=hy(g);A.length>0&&c.set(h,{anime:f,episodes:A,actualPlatform:X6(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),m=f.episodes,p=null;for(let h of m)if(Cf(h.episodeTitle)===s){p=h;break}if(p){if(i&&lp(sm(p.episodeTitle),i)===0)break;E("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u7EDD\u5BF9\u6807\u9898\u6570\u5B57) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${p.episodeTitle}`),d={anime:f.anime,episode:p,score:i?lp(f.actualPlatform,i):1};break}if(u<=m.length){let h=m[u-1];if(i&&lp(sm(h.episodeTitle),i)===0)break;E("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u76F8\u5BF9\u6392\u4F4D\u8BA1\u7B97) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${h.episodeTitle}`),d={anime:f.anime,episode:h,score:i?lp(f.actualPlatform,i):1};break}E("info",`[system] [Spillover] S${l} \u5171\u6709 ${m.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-=m.length,l++}return{resEpisode:d.episode,resAnime:d.anime}}async function Jbr(t,e,r,n,s,i,a,o,c,u=null){let l={anime:null,episode:null,score:-9999},d=ir(s);for(let f of n.animes){if(O.rememberLastSelect&&o&&String(f.bangumiId)!==String(o)&&String(f.animeId)!==String(o))continue;let p=!1,h=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&h.push(...f.aliases);for(let b of h)if(b){if(t&&e){if(ir(b).includes(d)){if(!J6(f,r)){E("info",`Year mismatch: anime year ${im(f.animeTitle)} vs query year ${r}`);continue}let x=O.rememberLastSelect&&o&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o)),S={...f,animeTitle:b};if(zbr(S,s,t)||x){p=!0;break}}}else if(b.split("(")[0].trim()===s){if(!J6(f,r)){E("info",`Year mismatch: anime year ${im(f.animeTitle)} vs query year ${r}`);continue}p=!0;break}}if(!p)continue;let y=gy(f,u);if(!y?.success||!y?.bangumi?.episodes)continue;E("info","\u5224\u65AD\u5267\u96C6",`Anime: ${f.animeTitle}`),E("info",y);let g=null,A=O.rememberLastSelect&&o!=null&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o));if(t&&e){let b=y.bangumi.episodes.filter(T=>!O.episodeTitleFilter.test(T.episodeTitle)),x=hy(b);E("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",x.map(T=>T.episodeTitle));let S=e;c&&c[String(t)]!==void 0&&(S=Hot(c,t,e,x,S)),g=Z6(x,e,S,a),!g&&A&&(E("info",`[system] [Match] \u4F18\u9009\u5267\u96C6\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u96C6\u6570`),g=Z6(x,e,S,null))}else if(y.bangumi.episodes.length>0)if(a){let b=y.bangumi.episodes.find(x=>{let S=sm(x.episodeTitle);return lp(S,a)>0});b?g=b:A&&(E("info",`[system] [Match] \u4F18\u9009\u7535\u5F71\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u8D44\u6E90`),g=y.bangumi.episodes[0])}else g=y.bangumi.episodes[0];if(g){let b=X6(f.animeTitle)||f.source,x=0;if(a?x=lp(b,a):x=1,A&&(x+=9999),x>l.score&&(l={anime:f,episode:g,score:x}),!a||A)break}}if(!l.episode&&t&&e){let f=Got(n,s,r,t,e,a,u);f.resEpisode&&(l={episode:f.resEpisode,anime:f.resAnime,score:a?lp(X6(f.resAnime.animeTitle)||f.resAnime.source,a):1})}return{resEpisode:l.episode,resAnime:l.anime}}async function Xbr(t,e,r,n,s,i,a,o,c,u=null){for(let d of t.animes){if(s&&!J6(d,s)){E("info",`Fallback: Year mismatch: anime year ${im(d.animeTitle)} vs query year ${s}`);continue}let f=gy(d,u);if(!(!f?.success||!f?.bangumi?.episodes)){if(E("info",f),r&&n){let m=f.bangumi.episodes.filter(g=>!O.episodeTitleFilter.test(g.episodeTitle)),p=hy(m);E("info","[system] [LogVar-API] \u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",p.map(g=>g.episodeTitle));let h=n;c&&c[String(r)]!==void 0&&(h=Hot(c,r,n,p,h));let y=Z6(p,n,h,null);if(y){a=y,o=d;break}}else if(f.bangumi.episodes.length>0){a=f.bangumi.episodes[0],o=d;break}}}let l=!1;if(!a&&r&&n){let d=Got(t,i,s,r,n,null,u);d.resEpisode&&(a=d.resEpisode,o=d.resAnime,l=!0)}return{resEpisode:a,resAnime:o,isSpillover:l}}function Uot(t){let e=t.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);if(e){let s=t.match(/@(-?\d+(?:\.\d+)?)$/);return{source:"animeko",realId:e[1]+(s?s[0]:"")}}let r=t.match(/ani\.gamer\.com\.tw\/animeVideo\.php\?sn=(\d+)/);if(r){let s=t.match(/@(-?\d+(?:\.\d+)?)$/);return{source:"bahamut",realId:r[1]+(s?s[0]:"")}}return{source:Zbr(t),realId:t}}function Zbr(t){return t.includes(".qq.com")?"tencent":t.includes(".iqiyi.com")?"iqiyi":t.includes(".mgtv.com")?"imgo":t.includes(".youku.com")?"youku":t.includes(".bilibili.com")||t.includes("b23.tv")?"bilibili":t.includes(".miguvideo.com")?"migu":t.includes(".sohu.com")?"sohu":t.includes(".le.com")?"leshi":t.includes(".douyin.com")||t.includes(".ixigua.com")?"xigua":t.includes(".mddcloud.com.cn")?"maiduidui":t.includes(".yfsp.tv")?"aiyifan":"unknown"}async function e1r(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 Dat(n.replace("."," "),s,i)),E("info","[system] [Match] Parsed title, season, episode, year",{title:n,season:s,episode:i,year:a}),{title:n,season:s,episode:i,year:a}}function Vot(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 Kot(t,e,r){try{let n=await e.json();if(!n)return E("error","[system] [Match] Request body is empty"),Me({errorCode:400,success:!1,errorMessage:"Empty request body"},400);let{fileName:s}=n;if(!s)return E("error","[system] [Match] Missing fileName parameter in request body"),Me({errorCode:400,success:!1,errorMessage:"Missing fileName parameter"},400);let{cleanFileName:i,preferredPlatform:a}=Q$e(s);E("info",`[system] [Match] Processing anime match for query: ${s}`),E("info",`[system] [Match] Parsed cleanFileName: ${i}, preferredPlatform: ${a}`);let{title:o,season:c,episode:u,year:l}=await e1r(i);if(O.titleMappingTable&&O.titleMappingTable.size>0){let N=O.titleMappingTable.get(o);N&&(o=N,E("info",`[system] [Match] Title mapped from original: ${t.searchParams.get("keyword")} to: ${o}`))}if(O.animeTitleSimplified){let N=Vt(o);E("info",`[system] [Match] matchAnime converted traditional to simplified: ${o} -> ${N}`),o=N}O.titleNoiseFilter&&(o=o.replace(O.titleNoiseFilter,"").trim());let[d,f,m]=bJ(o,c);E("info",`[system] [Match] prefer animeId: ${d} from ${f}`);let p=H$e(a),h=p.length>0?p[0]:null,y=new Map,g=Vot(e.url,o,c,u),b=await(await G1(g,d,f,y,h)).json();E("info",`[system] [Match] searchData: ${b.animes}`);let x,S,T=!1,I={errorCode:0,success:!0,errorMessage:"",isMatched:!1,matches:[]};E("info",`[system] [Match] Original platformOrderArr: ${O.platformOrderArr}`),E("info",`[system] [Match] Dynamic platformOrder: ${p}`),E("info",`[system] [Match] Preferred platform: ${a||"none"}`);let R=await Ybr(c,u,l,b,o,e,p,d,y);if(R.resAnime&&R.resEpisode)x=R.resAnime,S=R.resEpisode,I.isMatched=!0,E("info",`[system] [Match] AI match found: ${x.animeTitle}; episode: ${S.episodeTitle}`);else{for(let N of p){let k=await Jbr(c,u,l,b,o,e,N,d,m,y);if(S=k.resEpisode,x=k.resAnime,x){I.isMatched=!0,E("info",`[system] [Match] Found match with platform: ${N||"default"}`);break}}if(!x){let N=await Xbr(b,e,c,u,l,o,S,x,m,y);S=N.resEpisode,x=N.resAnime,T=N.isSpillover}}return S&&(I.isMatched=!0,r&&!T&&mJ(r,{title:o,season:c,episode:u,episodeId:S.episodeId}),I.matches=[EL.fromJson({episodeId:S.episodeId,animeId:x.animeId,animeTitle:x.animeTitle,episodeTitle:S.episodeTitle,type:x.type,typeDescription:x.typeDescription,shift:0,imageUrl:x.imageUrl})]),E("info",`[system] [Match] resMatchData: ${I}`),Me(I)}catch(n){return E("error",`[system] [Match] Failed to parse request body: ${n.message}`),Me({errorCode:400,success:!1,errorMessage:"Invalid JSON body"},400)}}async function zot(t){let e=t.searchParams.get("anime"),r=t.searchParams.get("episode")||"";if(O.animeTitleSimplified){let c=Vt(e);E("info",`[system] [Episodes] searchEpisodes converted traditional to simplified: ${e} -> ${c}`),e=c}if(E("info",`[system] [Episodes] Search episodes with anime: ${e}, episode: ${r}`),!e)return E("error","[system] [Episodes] Missing anime parameter"),Me({errorCode:400,success:!1,errorMessage:"Missing anime parameter"},400);let n=Vot(t,e),s=new Map,a=await(await G1(n,null,null,s)).json();if(!a.success||!a.animes||a.animes.length===0)return E("info","[system] [Episodes] No anime found for the given title"),Me({errorCode:0,success:!0,errorMessage:"",hasMore:!1,animes:[]});let o=[];for(let c of a.animes){let u=Dg(c.bangumiId,s,c.source)||Dg(c.animeId,s,c.source),l=null;if(u)l=ece(u,c.bangumiId);else{let d=new URL(`/bangumi/${c.bangumiId}`,t.origin);l=await(await Zoe(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(m=>parseInt(m.episodeNumber)===f)}}d.length>0&&o.push(SL.fromJson({animeId:c.animeId,animeTitle:c.animeTitle,type:c.type,typeDescription:c.typeDescription,episodes:d.map(f=>({episodeId:f.episodeId,episodeTitle:f.episodeTitle}))}))}}return E("info",`[system] [Episodes] Found ${o.length} animes with filtered episodes`),Me({errorCode:0,success:!0,errorMessage:"",animes:o})}async function Zoe(t,e=null,r=null){let n=t.split("/").pop(),s=Bg(n,e,r)||Dg(n);return s?Me(ece(s,n)):(E("error",`[system] [Bangumi] Anime with ID ${n} not found`),Me({errorCode:404,success:!1,errorMessage:"Anime not found",bangumi:null},404))}function ece(t,e=""){E("info",`[system] [Bangumi] Fetched details for anime ID: ${e||t.bangumiId}`);let r=[];for(let s=0;s<t.links.length;s++){let i=t.links[s];r.push({seasonId:`season-${t.animeId}`,episodeId:i.id,episodeTitle:`${i.title}`,episodeNumber:`${s+1}`,airDate:t.startDate})}if(O.enableAnimeEpisodeFilter){if(r=r.filter(s=>!O.episodeTitleFilter.test(s.episodeTitle)),E("info",`[system] [getBangumi] Episode filter enabled. Filtered episodes: ${r.length}/${t.links.length}`),r.length===0)return E("warn",`[system] [getBangumi] No valid episodes after filtering for anime ID ${e||t.bangumiId}`),{errorCode:404,success:!1,errorMessage:"No valid episodes after filtering",bangumi:null};r=r.map((s,i)=>({...s,episodeNumber:`${i+1}`}))}return{errorCode:0,success:!0,errorMessage:"",bangumi:IL.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 t1r(t,e,r){let n=t.split(Uc),s=n.map(p=>{let h=p.indexOf(":");if(h===-1)return{realId:"",logicalSource:"",sourceLabel:""};let y=p.substring(0,h),g=p.substring(h+1),A=0,b=!1,x=g.match(/@%(-?\d+(?:\.\d+)?)$/);if(x)A=parseFloat(x[1]),b=!0,g=g.substring(0,g.length-x[0].length);else{let S=g.match(/@(-?\d+(?:\.\d+)?)$/);S&&(A=parseFloat(S[1]),g=g.substring(0,g.length-S[0].length))}return y!=="hanjutv"?{realId:g,logicalSource:y,sourceLabel:y,manualOffset:A,manualOffsetPercent:b}:{realId:g,logicalSource:"hanjutv",sourceLabel:j6(g),manualOffset:A,manualOffsetPercent:b}}),i=s.map(p=>p.logicalSource).filter(Boolean),a=s.map(p=>p.realId),o=s.map(p=>p.sourceLabel).filter(Boolean).join("\uFF06");E("info",`[Merge] \u5F00\u59CB\u83B7\u53D6 [${o}] \u805A\u5408\u5F39\u5E55...`);let c=Of(t);if(c)return E("info",`[Merge] \u547D\u4E2D\u7F13\u5B58 [${o}]\uFF0C\u8FD4\u56DE ${c.length} \u6761`),c;let u={},l=s.map(async p=>{let h=p.logicalSource,y=p.sourceLabel||p.logicalSource,g=p.realId;if(!h||!g)return[];let A=`${h}:${g}`;if(K6.has(A)){E("info",`[Merge] \u590D\u7528\u6B63\u5728\u8FDB\u884C\u7684\u8BF7\u6C42: ${A}`);try{return await K6.get(A)||[]}catch{return[]}}let b=_e.run(hn(h),async()=>{let x=null;if(h==="renren"?x=Sw:h==="hanjutv"?x=Iw:h==="bahamut"?x=Q1:h==="dandan"?x=Cw:h==="tencent"?x=Am:h==="youku"?x=xm:h==="iqiyi"?x=bm:h==="imgo"?x=uy:h==="bilibili"?x=qc:h==="migu"?x=_m:h==="sohu"?x=ly:h==="leshi"?x=dy:h==="xigua"?x=fy:h==="maiduidui"?x=py:h==="aiyifan"?x=my:h==="animeko"&&(x=H1),x)try{let S=g;h==="bilibili"&&String(S).includes("b23.tv")&&(S=await qc.resolveB23Link(S));let T=await x.getEpisodeDanmu(S,n),I=x.formatComments(T);if(E("info",`[${y}] \u83B7\u53D6\u5F39\u5E55 ${I.length} \u6761`),p.manualOffset&&I&&Array.isArray(I))if(p.manualOffsetPercent){let R=Math.max(...I.map(N=>parseFloat(String(N.p).split(",")[0])||0),0);I=Ig(I,p.manualOffset,{usePercent:!0,videoDuration:R||1}),E("info",`[${y}] \u5E94\u7528\u767E\u5206\u6BD4\u504F\u79FB ${p.manualOffset}s (\u65F6\u957F=${R}s)`)}else I=Ig(I,p.manualOffset),E("info",`[${y}] \u5E94\u7528\u624B\u52A8\u504F\u79FB ${p.manualOffset}s`);return I&&Array.isArray(I)&&I.forEach(R=>{R._sourceLabel||(R._sourceLabel=y)}),u[y]=I.length,I}catch(S){return E("error",`[Merge] \u83B7\u53D6 ${y} \u5931\u8D25: ${S.message}`),u[y]=0,[]}return[]});K6.set(A,b);try{return await b}finally{K6.delete(A)}}),d=await Promise.all(l);if(Zat(d,i,a),O.danmuOffsetRules?.length>0&&e&&r){let[,,p]=wL(r);if(p){let{baseTitle:h,season:y,episode:g}=WY(e,p);y||=1,g||=TL(r)+1;let A=`S${y.toString().padStart(2,"0")}`,b=`E${g.toString().padStart(2,"0")}`;for(let x=0;x<d.length;x++){let S=d[x],T=$Y(O.danmuOffsetRules,{anime:h,season:A,episode:b,source:i[x]}),I=T?.offset||0;if(I!==0){let R=a[x],N=T?.usePercent?await Xoe(R):0,k=T?.usePercent?"%":"s";E("info",`[Merge] \u5E94\u7528\u504F\u79FB ${I}${k} -> ${i[x]} (${h}/${A}/${b})${T?.usePercent?`, duration=${N}s`:""}`),d[x]=Ig(S,I,{usePercent:T?.usePercent,videoDuration:N})}}}}let f=[];d.forEach(p=>{f=Xat(f,p)});let m=Object.entries(u).map(([p,h])=>`${p}: ${h}`).join(", ");return E("info",`[Merge] \u805A\u5408\u539F\u59CB\u6570\u636E\u5B8C\u6210: \u603B\u8BA1 ${f.length} \u6761 (${m})`),zC(f,o)}async function tce(t,e,r,n,s=!1){let i=parseInt(t.split("/").pop()),a=yJ(i),o=VC(i),c=gJ(i),u=c?sm(c):null,l=Qot(e,s);if(E("info","[system] [LogVar-API] comment url...",o),E("info","[system] [LogVar-API] comment title...",c),E("info","[system] [LogVar-API] comment platform...",u),!o)return E("error",`[system] [LogVar-API] Comment with ID ${i} not found`),Me({count:0,comments:[]},404);E("info",`[system] [LogVar-API] Fetched comment ID: ${i}`);let d=Of(o);if(d!==null){let I=z6({count:d.length,comments:d},l?await Y6(o):null);return Lg(I,e)}E("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",o);let f=[],m=l?Y6(o):null,p=0,h=!1,y=o,g=o.match(/@%(-?\d+(?:\.\d+)?)$/);if(g)p=parseFloat(g[1]),h=!0,y=o.substring(0,o.length-g[0].length),E("info",`[system] [LogVar-API] \u68C0\u6D4B\u5230\u94FE\u63A5\u767E\u5206\u6BD4\u504F\u79FB: ${p}s`);else{let I=o.match(/@(-?\d+(?:\.\d+)?)$/);I&&(p=parseFloat(I[1]),y=o.substring(0,o.length-I[0].length),E("info",`[system] [LogVar-API] \u68C0\u6D4B\u5230\u94FE\u63A5\u504F\u79FB: ${p}s`))}if(o&&o.includes(Uc))f=await t1r(o,a,i);else{let I=y;if(o.includes(".qq.com"))f=await _e.run("tencent",()=>Am.getComments(I,u,r));else if(o.includes(".iqiyi.com"))f=await _e.run("iqiyi",()=>bm.getComments(I,u,r));else if(o.includes(".mgtv.com"))f=await _e.run("mango",()=>uy.getComments(I,u,r));else if(o.includes(".bilibili.com")||o.includes("b23.tv")){let N=I;N.includes("b23.tv")&&(N=await _e.run("bilibili",()=>qc.resolveB23Link(N))),f=await _e.run("bilibili",()=>qc.getComments(N,u,r))}else if(o.includes(".youku.com"))f=await _e.run("youku",()=>xm.getComments(I,u,r));else if(o.includes(".miguvideo.com"))f=await _e.run("migu",()=>_m.getComments(I,u,r));else if(o.includes(".sohu.com"))f=await _e.run("sohu",()=>ly.getComments(I,u,r));else if(o.includes(".le.com"))f=await _e.run("leshi",()=>dy.getComments(I,u,r));else if(o.includes(".douyin.com")||o.includes(".ixigua.com"))f=await _e.run("xigua",()=>fy.getComments(I,u,r));else if(o.includes(".mddcloud.com.cn"))f=await _e.run("maiduidui",()=>py.getComments(I,u,r));else if(o.includes(".yfsp.tv"))f=await _e.run("aiyifan",()=>my.getComments(I,u,r));else if(/(?:bgm|bangumi)\.(?:tv|lol)\/ep\/|chii\.in\/ep\//.test(o)){let N=I.match(/(?:bgm\.tv|bangumi\.tv|bangumi\.lol|chii\.in)\/ep\/(\d+)/);f=await _e.run("animeko",()=>H1.getComments(N?N[1]:I,u,r))}else if(o.includes("ani.gamer.com.tw")){let N=I.match(/sn=(\d+)/);f=await _e.run("bahamut",()=>Q1.getComments(N?N[1]:I,u,r))}let R=/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i;R.test(o)||(u==="renren"?f=await _e.run("renren",()=>Sw.getComments(o,u,r)):u==="hanjutv"?f=await _e.run("hanjutv",()=>Iw.getComments(o,u,r)):u==="bahamut"?f=await _e.run("bahamut",()=>Q1.getComments(o,u,r)):u==="dandan"?f=await _e.run("dandan",()=>Cw.getComments(o,u,r)):u==="custom"?f=await _e.run("custom",()=>eM.getComments(o,u,r)):u==="animeko"&&(f=await _e.run("animeko",()=>H1.getComments(o,u,r)))),(!f||f.length===0)&&R.test(o)&&(f=await _e.run("other",()=>Yoe.getComments(o,"other_server",r)))}if(p!==0&&f&&Array.isArray(f)&&f.length>0)if(h){let I=Math.max(...f.map(R=>parseFloat(String(R.p).split(",")[0])||0),0);f=Ig(f,p,{usePercent:!0,videoDuration:I||1}),E("info",`[system] [LogVar-API] \u5E94\u7528\u94FE\u63A5\u767E\u5206\u6BD4\u504F\u79FB ${p}s (\u65F6\u957F=${I}s)`)}else f=Ig(f,p),E("info",`[system] [LogVar-API] \u5E94\u7528\u94FE\u63A5\u504F\u79FB ${p}s`);let[A,b,x,S]=wL(i);if(A&&b){let I=null,R=null,N=null;if(n){let B=hJ(n);B&&B.title&&B.season&&B.episode&&x&&(I=B.title,R=B.season,N=`${B.episode}:${x}`,E("info",`[system] [LogVar-API] Calculated episode offset for IP ${n}: Query E${B.episode}, Selected ${x} -> Offset ${N} (Season ${R})`))}E("info",`[system] [LogVar-API] animeTitle\uFF1A${a}; lastTitle\uFF1A${I}; titleMatches\uFF1A${Ct(a,I)}`),(Ct(a,I)||Array.isArray(S)&&S.some(B=>Ct(B,I)))&&(E("info","[system] [LogVar-API] excute setPreferByAnimeId"),xJ(A,b,R,N)),O.localCacheValid&&A&&OL("lastSelectMap",JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.redisValid&&A&&cJ("lastSelectMap",O.lastSelectMap).catch(B=>E("error","[system] [LogVar-API] Redis set error",B)),O.localRedisValid&&A&&D6("lastSelectMap",O.lastSelectMap)}if(a&&x&&O.danmuOffsetRules?.length>0&&!(o&&o.includes(Uc))){let{baseTitle:I,season:R,episode:N}=WY(a,x);R||=1,N||=TL(i)+1;let k=`S${R.toString().padStart(2,"0")}`,B=`E${N.toString().padStart(2,"0")}`,M=$Y(O.danmuOffsetRules,{anime:I,season:k,episode:B,source:b}),P=M?.offset||0;if(P!==0){let L=M?.usePercent?await Xoe(o):0;E("info",`[system] [LogVar-API] Applying danmu offset: ${P}${M?.usePercent?"%":"s"} for ${I}/${k}/${B}${M?.usePercent?`, duration=${L}s`:""}`),f=Ig(f,P,{usePercent:M?.usePercent,videoDuration:L})}}r||(f&&f.comments&&(f=f.comments),Array.isArray(f)||(f=[]),f.length>0&&GC(o,f));let T=z6({count:f.length,comments:f},m?await m:null);return Lg(T,e)}async function rce(t,e,r,n=!1){try{if(!t||typeof t!="string")return E("error","[system] [LogVar-API] Missing or invalid url parameter"),Me({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);if(t=t.trim(),!t.startsWith("http"))return E("error","[system] [LogVar-API] Invalid url format, must start with http or https"),Me({errorCode:400,success:!1,errorMessage:"Invalid url format, must start with http or https",count:0,comments:[]},400);E("info",`[system] [LogVar-API] Processing comment request for URL: ${t}`);let s=t,i=Qot(e,n),a=Of(s);if(a!==null){let l=z6({errorCode:0,success:!0,errorMessage:"",count:a.length,comments:a},i?await Y6(s):null);return Lg(l,e)}E("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",s);let o=[],c=i?Y6(s):null;s.includes(".qq.com")?o=await _e.run("tencent",()=>Am.getComments(s,"qq",r)):s.includes(".iqiyi.com")?o=await _e.run("iqiyi",()=>bm.getComments(s,"qiyi",r)):s.includes(".mgtv.com")?o=await _e.run("mango",()=>uy.getComments(s,"imgo",r)):s.includes(".bilibili.com")||s.includes("b23.tv")?(s.includes("b23.tv")&&(s=await _e.run("bilibili",()=>qc.resolveB23Link(s))),o=await _e.run("bilibili",()=>qc.getComments(s,"bilibili1",r))):s.includes(".youku.com")?o=await _e.run("youku",()=>xm.getComments(s,"youku",r)):s.includes(".miguvideo.com")?o=await _e.run("migu",()=>_m.getComments(s,"migu",r)):s.includes(".sohu.com")?o=await _e.run("sohu",()=>ly.getComments(s,"sohu",r)):s.includes(".le.com")?o=await _e.run("leshi",()=>dy.getComments(s,"leshi",r)):s.includes(".douyin.com")||s.includes(".ixigua.com")?o=await _e.run("xigua",()=>fy.getComments(s,"xigua",r)):s.includes(".mddcloud.com.cn")?o=await _e.run("maiduidui",()=>py.getComments(s,"maiduidui",r)):s.includes(".yfsp.tv")?o=await _e.run("aiyifan",()=>my.getComments(s,"aiyifan",r)):/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i.test(s)&&(o=await _e.run("other",()=>Yoe.getComments(s,"other_server",r))),E("info",`[system] [LogVar-API] Successfully fetched ${o.length} comments from URL`),o.length>0&&GC(s,o);let u=z6({errorCode:0,success:!0,errorMessage:"",count:o.length,comments:o},c?await c:null);return Lg(u,e)}catch(s){return E("error",`[system] [LogVar-API] Failed to process comment by URL request: ${s.message}`),Me({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}async function Yot(t,e){try{let r=t.url,n=t.type;if(!r||typeof r!="string")return E("error","[system] [SegmentComment] Missing or invalid url parameter"),Me({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);r=r.trim(),E("info",`[system] [SegmentComment] Processing segment comment request for URL: ${r}`);let s=Of(r);if(s!==null){let o={errorCode:0,success:!0,errorMessage:"",count:s.length,comments:s};return Lg(o,e)}E("info",`[system] [SegmentComment] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5206\u6BB5\u5F39\u5E55... URL: ${r}`);let i=[];n==="qq"?i=await _e.run("tencent",()=>Am.getSegmentComments(t)):n==="qiyi"?i=await _e.run("iqiyi",()=>bm.getSegmentComments(t)):n==="imgo"?i=await _e.run("mango",()=>uy.getSegmentComments(t)):n==="bilibili1"?i=await _e.run("bilibili",()=>qc.getSegmentComments(t)):n==="youku"?i=await _e.run("youku",()=>xm.getSegmentComments(t)):n==="migu"?i=await _e.run("migu",()=>_m.getSegmentComments(t)):n==="sohu"?i=await _e.run("sohu",()=>ly.getSegmentComments(t)):n==="leshi"?i=await _e.run("leshi",()=>dy.getSegmentComments(t)):n==="xigua"?i=await _e.run("xigua",()=>fy.getSegmentComments(t)):n==="maiduidui"?i=await _e.run("maiduidui",()=>py.getSegmentComments(t)):n==="aiyifan"?i=await _e.run("aiyifan",()=>my.getSegmentComments(t)):n==="hanjutv"?i=await _e.run("hanjutv",()=>Iw.getSegmentComments(t)):n==="bahamut"?i=await _e.run("bahamut",()=>Q1.getSegmentComments(t)):n==="renren"?i=await _e.run("renren",()=>Sw.getSegmentComments(t)):n==="dandan"?i=await _e.run("dandan",()=>Cw.getSegmentComments(t)):n==="animeko"?i=await _e.run("animeko",()=>H1.getSegmentComments(t)):n==="custom"?i=await _e.run("custom",()=>eM.getSegmentComments(t)):n==="other_server"&&(i=await _e.run("other",()=>Yoe.getSegmentComments(t))),E("info",`[system] [SegmentComment] Successfully fetched ${i.length} segment comments from URL`),i.length>0&&GC(r,i);let a={errorCode:0,success:!0,errorMessage:"",count:i.length,comments:i};return Lg(a,e)}catch(r){return E("error",`[system] [SegmentComment] Failed to process segment comment request: ${r.message}`),Me({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}kt();fr();Et();po();sn();var r1r=[[/[\(\[(【]\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," "]],n1r=[[/\[[^\]]*\]/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," "]],s1r=[{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}],i1r=[{pattern:/(\d{4})[.\-\/å¹´](\d{1,2})[.\-\/月](\d{1,2})/,type:"ymd"},{pattern:/(\d{4})(\d{2})(\d{2})/,type:"ymd_compact"}];function tM(t){let e=String(t||"").trim();if(!e)return"";if(O.animeTitleSimplified)try{e=Vt(e)}catch{}return ir(e.toLowerCase())}function Jot(t){let e=String(t||"").replace(/\D/g,"");return e.length>=8?e.slice(0,8):""}function a1r(t){let e=String(t||"");return r1r.forEach(([r,n])=>{e=e.replace(r,n)}),e}function Zot(t){let e=String(t||"");return n1r.forEach(([n,s],i)=>{e=e.replace(n,s)}),e.replace(/\s+/g," ").trim()}function Xot(t){if(!t)return null;let e=String(t);for(let{pattern:s,group:i,chinese:a}of s1r){let o=e.match(s);if(o&&o[i]!==void 0){let c=o[i];if(a){let u=Hl(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 i1r){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=Zot(t),n=Cf(r);return n!==null?n:null}function o1r(t){let e=String(t||"").trim();if(!e)return[];let r=[],n=a=>{let o=ir(String(a||"").trim());!o||r.includes(o)||r.push(o)};n(e);let s=ir(a1r(e)).trim();s&&s!==e&&n(s);let i=ir(e.replace(/[\(\[(【].*$/,"")).trim();return i&&i!==e&&n(i),r.sort((a,o)=>a.length-o.length)}function c1r(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 u1r(t,e){if(e.method==="GET")return{name:t.searchParams.get("name")||"",episode:t.searchParams.get("episode")||""};try{let r=e.clone(),n=(r.headers.get("content-type")||"").toLowerCase();if(n.includes("application/json")){let i=await r.json();return{name:i?.name||"",episode:i?.episode||""}}if(n.includes("application/x-www-form-urlencoded")||n.includes("multipart/form-data")){let i=await r.formData();return{name:i.get("name")||"",episode:i.get("episode")||""}}let s=await r.text();if(s)try{let i=JSON.parse(s);return{name:i?.name||"",episode:i?.episode||""}}catch{let a=new URLSearchParams(s);return{name:a.get("name")||"",episode:a.get("episode")||""}}}catch(r){E("warn",`[system] [Fongmi] \u89E3\u6790\u8BF7\u6C42\u53C2\u6570\u5931\u8D25: ${r.message}`)}return{name:"",episode:""}}function l1r(t,e,r,n){let s=Math.max(0,200-n),i=Zot(r),a=tM(i);if(!a)return s;let o=e?.episodeTitle||"",c=tM(o),u=tM(sm(o)),l=tM(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=Xot(i),f=Xot(o),m=parseInt(e?.episodeNumber||`${n+1}`,10);d!==null&&f!==null&&d===f&&(s+=7e3),d!==null&&Number.isFinite(m)&&d===m&&(s+=4e3);let p=Jot(i),h=Jot(o);return p&&h&&p===h&&(s+=9e3),p&&a.includes(p)&&(s+=800),l.includes("\u7EFC\u827A")&&p&&h&&(s+=1200),l.includes("\u7EFC\u827A")&&p&&!h&&d===null&&(s-=1500),s}function d1r(t,e,r){let n=[];for(let s of t){let i=gy(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=hy(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 nce(t,e){let{name:r,episode:n}=await u1r(t,e);if(!r)return Me([],200);if(O.titleMappingTable&&O.titleMappingTable.size>0){let f=O.titleMappingTable.get(r);f&&(E("info",`[system] [Fongmi] Title mapped from original: ${r} to: ${f}`),r=f)}let s=new URL(t.toString()),i=new Map,a=o1r(r),o=[];for(let f of a){s.searchParams.set("keyword",f);let p=await(await G1(s,null,null,i)).json();if(o=Array.isArray(p?.animes)?p.animes:[],o.length){f!==r&&E("info",`[system] [Fongmi] Search fallback hit: raw=${r}, keyword=${f}, episode=${n}`);break}}if(!o.length)return E("info",`[system] [Fongmi] No danmaku candidates for name=${r}, episode=${n}`),Me([],200);let c=c1r(e),u=d1r(o,i,c).map(f=>({...f,score:l1r(f.anime,f.episode,n,f.index)})).sort((f,m)=>m.score-f.score),l=new Set,d=[];for(let f of u)if(!(!f?.commentUrl||l.has(f.commentUrl))&&(l.add(f.commentUrl),d.push({name:`${f.anime.animeTitle} - ${f.episode.episodeTitle}`,url:f.commentUrl}),d.length>=1e3))break;return E("info",`[system] [Fongmi] name=${r}, episode=${n}, candidates=${d.length}`),Me(d,200)}kt();fr();kt();var ect=`
/* \u57FA\u7840\u6837\u5F0F - Zen-iOS Hybrid Design */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;800&display=swap');
:root {
--bg-base: #F2F2F7;
--bg-card: rgba(255, 255, 255, 0.65);
--bg-glass: rgba(255, 255, 255, 0.4);
--text-primary: #1C1C1E;
--text-secondary: #6C6C70;
--primary-color: #1C1C1E; /* \u6DF1\u7A7A\u9ED1 */
--accent-color: #007AFF; /* iOS Blue for interactions */
--danger-color: #FF3B30;
--success-color: #34C759;
--warning-color: #FFCC00;
--shadow-floating: 0 24px 48px -12px rgba(0, 0, 0, 0.08);
--shadow-card: 0 4px 12px rgba(0, 0, 0, 0.03);
--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, 0.05);
--radius-xl: 40px;
--radius-lg: 24px;
--radius-md: 16px;
--radius-sm: 8px;
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
body {
font-family: 'Inter', -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, sans-serif;
background-color: var(--bg-base);
color: var(--text-primary);
min-height: 100vh;
padding: 20px;
line-height: 1.5;
}
/* \u5BB9\u5668\uFF1A\u6781\u81F4\u6BDB\u73BB\u7483 + \u53CC\u5C42\u7269\u7406\u63CF\u8FB9 */
.container {
max-width: 1200px;
margin: 0 auto;
background: var(--bg-card);
backdrop-filter: blur(50px);
-webkit-backdrop-filter: blur(50px);
border-radius: var(--radius-xl);
box-shadow: var(--shadow-floating);
border: 1px solid rgba(255, 255, 255, 0.6); /* \u5185\u63CF\u8FB9 */
position: relative;
overflow: hidden;
}
/* \u6A21\u62DF\u5916\u63CF\u8FB9 (\u901A\u8FC7\u4F2A\u5143\u7D20\u6216 box-shadow \u4E5F\u53EF\u4EE5\uFF0C\u8FD9\u91CC\u7528 outline \u4FDD\u6301 dom \u5E72\u51C0) */
.container::after {
content: '';
position: absolute;
inset: -1px;
border-radius: var(--radius-xl);
padding: 1px;
background: linear-gradient(to bottom, rgba(0,0,0,0.05), rgba(0,0,0,0.02));
-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
-webkit-mask-composite: xor;
mask-composite: exclude;
pointer-events: none;
z-index: 1;
}
.header {
background: rgba(255, 255, 255, 0.5);
border-bottom: 1px solid rgba(0, 0, 0, 0.05);
padding: 30px 40px;
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
gap: 20px;
}
.header-left {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 12px;
}
.logo-title-container {
display: flex;
align-items: center;
gap: 18px;
}
.logo {
width: 56px;
height: 56px;
background: #fff;
border-radius: 16px;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 4px 12px rgba(0,0,0,0.08);
overflow: hidden;
border: 1px solid rgba(0,0,0,0.03);
}
.logo img {
width: 100%;
height: 100%;
object-fit: cover;
}
.header h1 {
font-size: 28px;
font-weight: 800;
color: var(--text-primary);
letter-spacing: -0.02em;
margin: 0;
}
.version-info {
display: flex;
align-items: center;
gap: 12px;
font-size: 12px;
font-weight: 600;
color: var(--text-secondary);
}
.version-badge {
background: rgba(0, 0, 0, 0.04);
padding: 4px 12px;
border-radius: 100px;
text-transform: uppercase;
letter-spacing: 0.05em;
}
.update-badge {
background: rgba(255, 204, 0, 0.15);
color: #997a00;
padding: 4px 12px;
border-radius: 100px;
cursor: pointer;
transition: all 0.2s;
}
.update-badge:hover {
background: rgba(255, 204, 0, 0.25);
}
.api-endpoint-badge span {
font-family: 'SF Mono', 'Menlo', monospace;
font-size: 11px;
}
.content {
padding: 40px;
}
.section {
display: none;
animation: fadeIn 0.4s cubic-bezier(0.16, 1, 0.3, 1); /* iOS easeOut */
}
.section.active {
display: block;
}
@keyframes fadeIn {
from { opacity: 0; transform: translateY(10px) scale(0.98); }
to { opacity: 1; transform: translateY(0) scale(1); }
}
h2 {
font-size: 24px;
font-weight: 700;
letter-spacing: -0.01em;
margin-bottom: 24px;
color: var(--text-primary);
}
/* Footer */
.footer {
padding: 40px;
text-align: center;
font-size: 12px;
color: var(--text-secondary);
border-top: 1px solid rgba(0,0,0,0.05);
background: rgba(255,255,255,0.3);
}
.footer-text {
color: var(--text-secondary);
margin: 8px 0;
max-width: 600px;
margin-left: auto;
margin-right: auto;
line-height: 1.6;
}
.footer-links {
margin-top: 20px;
display: flex;
justify-content: center;
gap: 20px;
}
.footer-link {
color: var(--text-primary);
text-decoration: none;
font-weight: 600;
opacity: 0.7;
transition: opacity 0.2s;
}
.footer-link:hover {
opacity: 1;
}
.github-link {
display: inline-flex;
align-items: center;
gap: 6px;
}
.github-icon {
width: 14px;
height: 14px;
opacity: 0.8;
}
.tg-link {
display: inline-flex;
align-items: center;
gap: 6px;
}
.tg-icon {
width: 14px;
height: 14px;
opacity: 0.8;
}
/* \u6EDA\u52A8\u6761\u7F8E\u5316 */
::-webkit-scrollbar {
width: 8px;
height: 8px;
}
::-webkit-scrollbar-track {
background: transparent;
}
::-webkit-scrollbar-thumb {
background: rgba(0, 0, 0, 0.1);
border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
background: rgba(0, 0, 0, 0.2);
}
/* \u5DE5\u5177\u7C7B */
.text-gray {
color: var(--text-secondary);
}
.text-dark-gray {
color: #333;
}
.text-red {
color: var(--danger-color);
}
.text-center {
text-align: center;
}
.font-size-12 {
font-size: 12px;
}
.margin-top-3 {
margin-top: 3px;
}
.margin-bottom-15 {
margin-bottom: 15px;
}
.padding-20 {
padding: 20px;
}
.text-monospace {
font-family: 'SF Mono', 'Menlo', monospace;
}
`;var tct=`
/* \u7EC4\u4EF6\u6837\u5F0F - Zen-iOS Hybrid Design */
/* \u5BFC\u822A\u6309\u94AE\uFF1A\u80F6\u56CA\u5F0F\u8BBE\u8BA1 */
.nav-buttons {
display: flex;
gap: 8px;
background: rgba(118, 118, 128, 0.12);
padding: 4px;
border-radius: 14px; /* iOS Segmented Control style */
flex-wrap: wrap;
}
.nav-btn {
padding: 8px 16px;
background: transparent;
border: none;
color: var(--text-secondary);
border-radius: 10px;
cursor: pointer;
font-size: 13px;
font-weight: 600;
transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
user-select: none;
}
.nav-btn:hover {
color: var(--text-primary);
background: rgba(255, 255, 255, 0.5);
}
.nav-btn.active {
background: #FFFFFF;
color: #000000;
box-shadow: 0 3px 8px rgba(0, 0, 0, 0.12), 0 3px 1px rgba(0, 0, 0, 0.04);
}
.nav-btn:active {
transform: scale(0.97);
}
/* \u73AF\u5883\u53D8\u91CF\u5206\u7C7B\u5207\u6362 */
.env-categories {
display: flex;
gap: 12px;
margin-bottom: 30px;
flex-wrap: wrap;
}
.category-btn {
padding: 10px 20px;
background: #FFFFFF;
border: 1px solid rgba(0,0,0,0.05);
border-radius: 100px; /* Fully rounded */
cursor: pointer;
font-size: 13px;
font-weight: 600;
color: var(--text-secondary);
transition: all 0.2s;
box-shadow: var(--shadow-card);
}
.category-btn:hover {
transform: translateY(-1px);
background: #FAFAFA;
}
.category-btn.active {
background: var(--primary-color);
color: white;
border-color: var(--primary-color);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}
.category-btn:active {
transform: scale(0.95);
}
/* \u5361\u7247\u5217\u8868 (Layering) */
.env-list {
display: grid;
gap: 16px;
margin-bottom: 30px;
}
.env-item {
background: rgba(255, 255, 255, 0.6);
backdrop-filter: blur(20px);
padding: 24px;
border-radius: var(--radius-lg);
border: 1px solid rgba(255, 255, 255, 0.8); /* Inner light stroke */
box-shadow:
0 4px 6px -1px rgba(0, 0, 0, 0.02),
0 2px 4px -1px rgba(0, 0, 0, 0.02),
inset 0 0 0 1px rgba(255, 255, 255, 0.5);
display: flex;
justify-content: space-between;
align-items: flex-start; /* Align to top for better look with descriptions */
flex-wrap: wrap;
gap: 20px;
transition: transform 0.2s;
overflow: hidden;
}
.env-item:hover {
transform: translateY(-1px);
background: rgba(255, 255, 255, 0.8);
}
.env-item .env-info {
flex: 1;
min-width: 240px;
overflow: hidden;
}
.env-item .env-info strong {
color: var(--text-primary);
font-size: 15px;
font-weight: 700;
margin-bottom: 8px;
display: block;
letter-spacing: -0.01em;
overflow-wrap: break-word;
word-break: break-word;
}
.env-item .env-info div.text-dark-gray {
background: rgba(0, 0, 0, 0.03);
padding: 8px 12px;
border-radius: 8px;
font-family: 'SF Mono', 'Menlo', monospace;
font-size: 14px;
color: #333;
display: block;
border: 1px solid rgba(0,0,0,0.04);
overflow-wrap: break-word;
word-break: break-all;
}
.env-item .env-actions {
display: flex;
gap: 10px;
flex-shrink: 0;
}
/* \u6309\u94AE\u4F53\u7CFB */
.btn {
padding: 10px 20px;
border: none;
border-radius: 12px; /* iOS medium radius */
cursor: pointer;
font-size: 14px;
font-weight: 600;
transition: all 0.2s cubic-bezier(0.25, 1, 0.5, 1);
display: inline-flex;
align-items: center;
justify-content: center;
gap: 6px;
letter-spacing: 0.01em;
}
.btn:active {
transform: scale(0.95); /* Tactile feedback */
}
/* Primary: Dark Space Black */
.btn-primary {
background: var(--primary-color);
color: white;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.btn-primary:hover {
background: #333;
}
/* Success: iOS Green */
.btn-success {
background: var(--success-color);
color: white;
box-shadow: 0 4px 12px rgba(52, 199, 89, 0.2);
}
.btn-success:hover {
background: #2db54e;
}
/* Danger: iOS Red */
.btn-danger {
background: var(--danger-color);
color: white;
box-shadow: 0 4px 12px rgba(255, 59, 48, 0.2);
}
.btn-danger:hover {
background: #e03328;
}
/* \u9884\u89C8\u533A\u57DF */
.preview-area {
display: grid;
gap: 30px;
margin-top: 20px;
}
.preview-category {
background: rgba(255, 255, 255, 0.6);
backdrop-filter: blur(20px);
border-radius: var(--radius-lg);
border: 1px solid rgba(255, 255, 255, 0.8);
box-shadow:
0 4px 6px -1px rgba(0, 0, 0, 0.02),
0 2px 4px -1px rgba(0, 0, 0, 0.02),
inset 0 0 0 1px rgba(255, 255, 255, 0.5);
padding: 24px;
transition: transform 0.2s;
overflow: hidden;
}
.preview-category:hover {
transform: translateY(-2px);
background: rgba(255, 255, 255, 0.75);
box-shadow: var(--shadow-floating);
}
.preview-category h3 {
font-size: 18px;
font-weight: 800;
margin-bottom: 20px;
color: var(--text-primary);
border-bottom: 1px solid rgba(0,0,0,0.05);
padding-bottom: 12px;
}
.preview-item {
padding: 16px;
background: rgba(255, 255, 255, 0.5);
margin-bottom: 12px;
border-radius: 12px;
border-left: 4px solid var(--primary-color);
box-shadow: 0 2px 8px rgba(0,0,0,0.02);
transition: all 0.2s;
overflow: hidden;
}
.preview-item:last-child {
margin-bottom: 0;
}
.preview-item:hover {
transform: translateX(4px);
background: #FFFFFF;
box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}
.preview-item .preview-key {
font-size: 11px;
text-transform: uppercase;
letter-spacing: 0.05em;
color: var(--text-secondary);
margin-bottom: 6px;
font-weight: 700;
overflow-wrap: break-word;
word-break: break-word;
}
.preview-item .preview-value {
background: transparent;
padding: 0;
font-family: 'SF Mono', 'Menlo', monospace;
color: var(--text-primary);
font-size: 13px;
word-break: break-all;
overflow-wrap: break-word;
}
/* \u65E5\u5FD7\u6837\u5F0F */
.log-controls {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 15px;
flex-wrap: wrap;
gap: 10px;
}
@keyframes pulse {
0% { box-shadow: 0 0 0 0 rgba(40, 167, 69, 0.5); }
70% { box-shadow: 0 0 0 10px rgba(40, 167, 69, 0); }
100% { box-shadow: 0 0 0 0 rgba(40, 167, 69, 0); }
}
/* \u65E5\u5FD7\u4E0E\u54CD\u5E94\u5BB9\u5668 */
.log-container, .api-response, .json-response, .error-response {
background: #1C1C1E; /* Deep Dark */
color: #F2F2F7;
padding: 20px;
border-radius: 16px;
border: 1px solid rgba(255,255,255,0.1);
box-shadow: inset 0 2px 10px rgba(0,0,0,0.2);
font-family: 'SF Mono', 'Menlo', monospace;
font-size: 12px;
line-height: 1.6;
max-height: 400px;
overflow: auto;
white-space: pre-wrap;
word-wrap: break-word;
}
.log-container {
max-height: 500px;
}
/* \u65E5\u5FD7\u8FC7\u6EE4\u4EA4\u4E92\u9762\u677F\u53CA\u6807\u7B7E\u6837\u5F0F */
.log-filters-container {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-bottom: 10px;
}
.filter-btn {
background: transparent;
color: #888;
border: 1px solid #555;
padding: 4px 14px;
border-radius: 20px;
font-size: 12px;
cursor: pointer;
transition: all 0.3s;
text-transform: capitalize;
}
.filter-btn:hover {
border-color: #999;
background: rgba(255, 255, 255, 0.05);
}
.filter-btn.active {
background: rgba(191, 161, 255, 0.1);
color: #bfa1ff;
border-color: #bfa1ff;
text-shadow: 0.3px 0 0 currentColor, -0.3px 0 0 currentColor;
}
.log-tag {
color: #bfa1ff;
font-weight: bold;
margin-right: 4px;
display: inline-block;
}
.log-entry.error .log-tag {
color: #ffb74d;
}
/* \u8868\u5355\u5E2E\u52A9\u6587\u672C */
.form-help {
font-size: 12px;
color: #666;
margin-top: 5px;
font-style: italic;
}
/* API\u8C03\u8BD5\u6837\u5F0F */
.api-selector {
margin-bottom: 20px;
}
.api-params {
background: rgba(255, 255, 255, 0.6);
padding: 20px;
border-radius: 16px;
border: 1px solid rgba(255,255,255,0.8);
box-shadow:
0 4px 6px -1px rgba(0, 0, 0, 0.02),
0 2px 4px -1px rgba(0, 0, 0, 0.02),
inset 0 0 0 1px rgba(255, 255, 255, 0.5);
margin-bottom: 20px;
}
.api-response.xml {
color: #88ccff;
}
/* JSON\u9AD8\u4EAE\u6837\u5F0F */
.json-response .key {
color: #9cdcfe;
}
.json-response .string {
color: #ce9178;
}
.json-response .number {
color: #b5cea8;
}
.json-response .boolean {
color: #569cd6;
}
.json-response .null {
color: #569cd6;
}
.json-response .undefined {
color: #569cd6;
}
.error-response {
color: #f48771;
}
.log-entry {
padding: 4px 8px;
border-radius: 4px;
margin-bottom: 2px;
}
.log-entry.info { color: #4fc3f7; }
.log-entry.warn { color: #ffb74d; }
.log-entry.error { color: #e57373; }
.log-entry.success { color: #81c784; }
.log-entry:hover {
background: rgba(255,255,255,0.05);
}
/* \u6A21\u6001\u6846 */
.modal {
display: none;
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.25);
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
z-index: 1000;
padding: 20px;
overflow-y: auto;
}
.modal.active {
display: flex;
justify-content: center;
align-items: center;
}
.modal-content {
background: rgba(255, 255, 255, 0.85);
backdrop-filter: blur(50px);
-webkit-backdrop-filter: blur(50px);
border-radius: 32px;
box-shadow: 0 40px 80px rgba(0,0,0,0.2);
border: 1px solid rgba(255,255,255,0.5);
padding: 40px;
width: 100%;
max-width: 600px;
max-height: calc(100vh - 40px);
overflow-y: auto;
position: relative;
top: 0;
left: 0;
}
/* \u914D\u7F6E\u7F16\u8F91\u5F39\u7A97\u4E13\u7528\u6837\u5F0F - \u66F4\u5BBD\u66F4\u534F\u8C03\u7684\u6BD4\u4F8B */
#env-modal .modal-content {
width: 90vw;
max-width: 680px;
max-height: 85vh;
overflow-y: auto;
padding: 32px 36px;
}
#env-modal .modal-content::-webkit-scrollbar {
width: 6px;
}
#env-modal .modal-content::-webkit-scrollbar-track {
background: transparent;
}
#env-modal .modal-content::-webkit-scrollbar-thumb {
background: rgba(0, 0, 0, 0.15);
border-radius: 3px;
}
#env-modal .modal-content::-webkit-scrollbar-thumb:hover {
background: rgba(0, 0, 0, 0.25);
}
/* \u591A\u9009\u6807\u7B7E\u533A\u57DF\u4F18\u5316 - \u9650\u5236\u9AD8\u5EA6\u5E76\u652F\u6301\u6EDA\u52A8 */
#env-modal .selected-tags {
max-height: 140px;
overflow-y: auto;
}
#env-modal .available-tags {
display: flex;
flex-wrap: wrap;
gap: 8px;
max-height: 180px;
overflow-y: auto;
padding: 12px;
background: rgba(245, 245, 247, 0.5);
border-radius: 12px;
margin-top: 12px;
}
.modal-header {
display: flex;
justify-content: space-between;
align-items: center;
border-bottom: 1px solid rgba(0,0,0,0.06);
padding-bottom: 20px;
margin-bottom: 30px;
}
.modal-header h3 {
font-size: 20px;
font-weight: 700;
color: var(--text-primary);
}
.close-btn {
width: 32px;
height: 32px;
border-radius: 50%;
background: rgba(0,0,0,0.05);
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s;
font-size: 18px;
}
.close-btn:hover {
background: rgba(0,0,0,0.1);
transform: rotate(90deg);
}
/* \u8FDB\u5EA6\u6761 */
.progress-container {
height: 2px;
background: transparent;
}
.progress-bar {
background: linear-gradient(90deg, var(--primary-color), var(--text-secondary));
box-shadow: none;
}
/* Bilibili Status */
.bili-cookie-status {
background: rgba(255,255,255,0.5);
border: 1px solid rgba(0,0,0,0.05);
border-left: 4px solid var(--primary-color);
border-radius: 12px;
}
/* Tag Styles */
.value-type-badge {
padding: 4px 10px;
border-radius: 100px;
background: var(--text-primary);
color: #FFFFFF;
font-weight: 600;
text-transform: uppercase;
font-size: 10px;
letter-spacing: 0.05em;
}
/* \u52A0\u8F7D\u63D0\u793A */
.loading-overlay {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.2);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
display: none;
justify-content: center;
align-items: center;
z-index: 9998;
}
.loading-overlay.active {
display: flex;
}
.loading-content {
background: rgba(255, 255, 255, 0.8);
backdrop-filter: blur(20px);
-webkit-backdrop-filter: blur(20px);
padding: 32px;
border-radius: 24px;
text-align: center;
box-shadow: 0 20px 40px rgba(0,0,0,0.15);
max-width: 320px;
border: 1px solid rgba(255,255,255,0.4);
}
.loading-spinner {
width: 48px;
height: 48px;
border: 4px solid rgba(0,0,0,0.05);
border-top: 4px solid var(--primary-color);
border-radius: 50%;
animation: spin 0.8s cubic-bezier(0.6, 0.2, 0.4, 0.8) infinite;
margin: 0 auto 20px;
}
.loading-spinner-small {
display: inline-block;
width: 16px;
height: 16px;
border: 2px solid rgba(255,255,255,0.3);
border-top: 2px solid white;
border-radius: 50%;
animation: spin 0.8s cubic-bezier(0.6, 0.2, 0.4, 0.8) infinite;
}
.btn-success .loading-spinner-small {
border: 2px solid rgba(255,255,255,0.3);
border-top: 2px solid white;
}
.loading-text {
font-size: 16px;
color: var(--text-primary);
font-weight: 600;
margin-bottom: 8px;
}
.loading-detail {
font-size: 13px;
color: var(--text-secondary);
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
/* \u52A8\u6F2B\u641C\u7D22\u7ED3\u679C\u7F51\u683C */
.anime-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
gap: 20px;
margin-top: 16px;
}
.anime-item {
background: rgba(255, 255, 255, 0.6);
backdrop-filter: blur(20px);
border-radius: 16px;
border: 1px solid rgba(255, 255, 255, 0.8);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
overflow: hidden;
cursor: pointer;
transition: all 0.2s cubic-bezier(0.25, 1, 0.5, 1);
}
.anime-item:hover {
transform: translateY(-4px);
box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08);
background: rgba(255, 255, 255, 0.85);
}
.anime-item:active {
transform: scale(0.98);
}
.anime-item-img {
width: 100%;
aspect-ratio: 3 / 4;
object-fit: cover;
display: block;
background: rgba(0, 0, 0, 0.03);
}
.anime-title {
padding: 12px;
font-size: 13px;
font-weight: 600;
color: var(--text-primary);
line-height: 1.4;
margin: 0;
word-break: normal;
overflow-wrap: break-word;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}
/* \u5267\u96C6\u5217\u8868 */
.episode-list-container {
display: grid;
gap: 10px;
margin-top: 16px;
}
.episode-item {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: 16px 20px;
background: rgba(255, 255, 255, 0.6);
backdrop-filter: blur(20px);
border-radius: 14px;
border: 1px solid rgba(255, 255, 255, 0.8);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02);
transition: all 0.2s;
}
.episode-item:hover {
background: rgba(255, 255, 255, 0.85);
transform: translateX(4px);
}
.episode-item-content {
flex: 1;
font-size: 14px;
color: var(--text-primary);
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.episode-item-content strong {
font-weight: 700;
color: var(--text-primary);
}
.episode-push-btn {
flex-shrink: 0;
padding: 8px 16px;
font-size: 13px;
}
/* \u6587\u5B57\u989C\u8272\u5DE5\u5177\u7C7B */
.text-yellow-gold {
color: #997a00;
}
/* \u63A8\u9001\u5F39\u5E55\u533A\u57DF\u6807\u9898 */
#push-anime-list h3,
#push-episode-list h3 {
font-size: 18px;
font-weight: 700;
margin-bottom: 8px;
color: var(--text-primary);
}
#push-anime-list,
#push-episode-list {
margin-top: 24px;
padding: 24px;
background: rgba(255, 255, 255, 0.4);
border-radius: 20px;
border: 1px solid rgba(255, 255, 255, 0.6);
}
/* \u8BF7\u6C42\u8BB0\u5F55\u6837\u5F0F */
.request-records-container {
border-radius: 8px;
}
.no-records {
text-align: center;
color: #fff;
padding: 60px;
font-style: italic;
font-size: 16px;
}
.record-item {
background: linear-gradient(145deg, #ffffff 0%, #f8f9fa 100%);
border: none;
border-radius: 16px;
padding: 10px;
margin-bottom: 10px;
box-shadow: 0 8px 32px rgba(0,0,0,0.15);
transition: transform 0.2s, box-shadow 0.2s;
}
.record-item:hover {
transform: translateY(-2px);
box-shadow: 0 12px 40px rgba(0,0,0,0.2);
}
.record-header {
display: flex;
justify-content: flex-start;
align-items: center;
margin-bottom: 15px;
flex-wrap: wrap;
gap: 15px;
}
.record-method {
background: linear-gradient(135deg, #00b4db 0%, #0083b0 100%);
color: white;
padding: 8px 16px;
border-radius: 10px;
font-size: 14px;
font-weight: bold;
min-width: 60px;
text-align: center;
box-shadow: 0 4px 15px rgba(0,180,219,0.3);
}
.record-interface {
flex: 1;
font-family: 'Courier New', monospace;
font-weight: 600;
color: #2d3748;
word-break: break-all;
font-size: 15px;
background: #edf2f7;
padding: 8px 16px;
border-radius: 8px;
}
.record-ip {
background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
color: white;
padding: 8px 16px;
border-radius: 10px;
font-size: 13px;
min-width: 120px;
text-align: center;
font-weight: 500;
box-shadow: 0 4px 15px rgba(245,87,108,0.3);
}
.record-timestamp {
color: #718096;
font-size: 14px;
margin-bottom: 15px;
padding-bottom: 15px;
border-bottom: 2px dashed #e2e8f0;
display: flex;
align-items: center;
gap: 8px;
}
.record-timestamp.no-params {
border-bottom: none;
margin-bottom: 0;
padding-bottom: 0;
}
.record-timestamp::before {
content: '\u{1F550}';
font-size: 16px;
}
.record-params {
background: #f5f5f5;
border-radius: 12px;
padding: 15px;
border: 1px solid #e0e0e0;
}
.record-params-title {
color: #667eea;
font-weight: 600;
font-size: 14px;
margin-bottom: 12px;
display: flex;
align-items: center;
gap: 8px;
}
.record-params-title::before {
content: '\u{1F4CB}';
font-size: 16px;
}
.record-params pre {
margin: 0;
padding: 15px;
background: #ffffff;
color: #333;
border-radius: 8px;
font-family: 'Courier New', monospace;
font-size: 13px;
white-space: pre-wrap;
word-wrap: break-word;
overflow-x: auto;
line-height: 1.6;
border: 1px solid #ddd;
}
/* \u8BF7\u6C42\u8BB0\u5F55\u79FB\u52A8\u7AEF\u9002\u914D */
@media (max-width: 768px) {
.record-header {
flex-direction: column;
align-items: stretch;
}
.record-method,
.record-interface,
.record-ip {
width: 100%;
box-sizing: border-box;
}
}
/* ===================== */
/* \u5F39\u5E55\u6D4B\u8BD5\u76F8\u5173\u6837\u5F0F */
/* ===================== */
/* \u9876\u7EA7\u6807\u7B7E\u9875 */
.api-top-tabs {
display: flex;
gap: 0;
margin-bottom: 20px;
border-bottom: 2px solid #e0e0e0;
}
.api-top-tab {
padding: 10px 24px;
background: none;
border: none;
border-bottom: 3px solid transparent;
cursor: pointer;
font-size: 15px;
font-weight: 500;
color: #666;
transition: all 0.3s;
margin-bottom: -2px;
}
.api-top-tab:hover {
color: #667eea;
}
.api-top-tab.active {
color: #667eea;
border-bottom-color: #667eea;
font-weight: bold;
}
.api-tab-content {
display: none;
}
.api-tab-content.active {
display: block;
}
/* \u5F39\u5E55\u6D4B\u8BD5\u5B50\u6807\u7B7E */
.danmu-test-tabs {
display: flex;
gap: 10px;
margin-bottom: 20px;
}
.danmu-test-tab {
padding: 8px 20px;
background: #f0f0f0;
border: 2px solid transparent;
border-radius: 20px;
cursor: pointer;
font-size: 14px;
font-weight: 500;
transition: all 0.3s;
color: #555;
}
.danmu-test-tab:hover {
background: #e0e0e0;
}
.danmu-test-tab.active {
background: #667eea;
color: white;
border-color: #667eea;
}
.danmu-test-panel {
display: none;
}
.danmu-test-panel.active {
display: block;
}
/* \u5F39\u5E55\u7EDF\u8BA1\u5361\u7247 */
.danmu-stats {
margin-bottom: 15px;
}
.danmu-stats-title {
font-size: 16px;
font-weight: bold;
color: #667eea;
margin-bottom: 12px;
padding-bottom: 8px;
border-bottom: 1px solid #eee;
}
.danmu-stats-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
gap: 12px;
}
.danmu-stat-card {
background: #f8f9fa;
border-radius: 10px;
padding: 15px;
text-align: center;
border: 1px solid #eee;
transition: transform 0.2s;
}
.danmu-stat-card:hover {
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}
.stat-value {
font-size: 20px;
font-weight: bold;
color: #333;
margin-bottom: 4px;
word-break: break-all;
}
.stat-label {
font-size: 12px;
color: #999;
}
.danmu-result-error {
margin-bottom: 15px;
background: #fff8f8;
border: 1px solid #ffcdd2;
color: #c62828;
border-radius: 10px;
padding: 12px 15px;
font-size: 13px;
}
/* \u5F39\u5E55\u70ED\u529B\u56FE */
.danmu-heatmap-container {
margin-bottom: 15px;
background: #f8f9fa;
border-radius: 10px;
padding: 15px;
}
.danmu-section-title {
margin: 0 0 10px;
font-size: 15px;
}
.danmu-section-title-spaced {
margin-top: 15px;
}
.danmu-empty-text {
color: #999;
}
.danmu-empty-list {
text-align: center;
padding: 20px;
}
.heatmap-bars {
display: flex;
align-items: flex-end;
gap: 2px;
height: 100px;
padding: 0 2px;
}
.danmu-heatmap-interactive {
position: relative;
padding-top: 34px;
touch-action: pan-y;
user-select: none;
}
.danmu-heatmap-tooltip {
position: absolute;
top: 0;
left: 0;
transform: translateX(-50%) translateY(-4px);
display: flex;
align-items: baseline;
gap: 4px;
padding: 5px 9px;
border-radius: 999px;
background: rgba(51, 51, 51, 0.92);
color: white;
font-size: 12px;
line-height: 1.2;
white-space: nowrap;
opacity: 0;
pointer-events: none;
transition: opacity 0.12s ease, transform 0.12s ease;
z-index: 2;
}
.danmu-heatmap-tooltip.active {
opacity: 1;
transform: translateX(-50%) translateY(0);
}
.danmu-heatmap-tooltip strong {
font-size: 15px;
}
.danmu-heatmap-tooltip em {
color: rgba(255,255,255,0.72);
font-style: normal;
margin-left: 3px;
}
.danmu-heatmap-indicator {
position: absolute;
top: 34px;
bottom: 0;
width: 2px;
transform: translateX(-50%);
border-radius: 999px;
background: rgba(102, 126, 234, 0.88);
box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.14);
opacity: 0;
pointer-events: none;
transition: opacity 0.12s ease;
z-index: 1;
}
.danmu-heatmap-indicator.active {
opacity: 1;
}
.heatmap-bar {
flex: 1;
min-width: 3px;
height: var(--heatmap-height, 2%);
background: var(--heatmap-color, #667eea);
border-radius: 2px 2px 0 0;
transition: opacity 0.2s, transform 0.12s ease, box-shadow 0.12s ease;
cursor: pointer;
}
.heatmap-bar.active {
opacity: 0.95;
transform: translateY(-2px);
box-shadow: 0 0 0 2px rgba(102, 126, 234, 0.24);
}
.heatmap-bar:hover {
opacity: 0.8;
}
.heatmap-axis {
display: flex;
justify-content: space-between;
margin-top: 6px;
font-size: 11px;
color: #999;
}
/* \u5F39\u5E55\u8FC7\u6EE4\u6807\u7B7E */
.danmu-filter-tabs {
display: flex;
flex-wrap: nowrap;
gap: 8px;
margin-bottom: 12px;
overflow-x: auto;
overflow-y: hidden;
padding-bottom: 2px;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
}
.danmu-filter-tabs::-webkit-scrollbar {
display: none;
}
.danmu-filter-tab {
flex: 0 0 auto;
display: inline-flex;
align-items: center;
gap: 6px;
white-space: nowrap;
padding: 6px 12px;
background: #f0f0f0;
border: 1px solid #ddd;
border-radius: 15px;
cursor: pointer;
font-size: 13px;
transition: all 0.2s;
color: #555;
}
.danmu-filter-tab:hover {
background: #e0e0e0;
}
.danmu-filter-tab.active {
background: #667eea;
color: white;
border-color: #667eea;
}
.danmu-filter-count {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 20px;
height: 18px;
padding: 0 6px;
border-radius: 999px;
background: rgba(0,0,0,0.08);
color: inherit;
font-size: 11px;
font-weight: 600;
line-height: 1;
}
.danmu-filter-tab.active .danmu-filter-count {
background: rgba(255,255,255,0.22);
}
/* \u5F39\u5E55\u5217\u8868 */
.danmu-list-area {
background: #f8f9fa;
border-radius: 10px;
padding: 15px;
}
.danmu-list-area h3 {
margin: 0 0 10px;
font-size: 15px;
}
.danmu-list {
max-height: 500px;
overflow-y: auto;
border: 1px solid #eee;
border-radius: 8px;
background: white;
}
.danmu-item {
display: flex;
align-items: center;
gap: 10px;
padding: 8px 12px;
border-bottom: 1px solid #f0f0f0;
font-size: 13px;
transition: background 0.15s;
}
.danmu-item:last-child {
border-bottom: none;
}
.danmu-item:hover {
background: #f8f9ff;
}
.danmu-time {
color: #999;
font-family: 'Courier New', monospace;
font-size: 12px;
min-width: 50px;
flex-shrink: 0;
}
.danmu-color-dot {
width: 12px;
height: 12px;
border-radius: 50%;
flex-shrink: 0;
border: 1px solid rgba(0,0,0,0.1);
background: var(--danmu-color-dot, #fff);
}
.danmu-mode-tag {
font-size: 11px;
padding: 2px 6px;
border-radius: 8px;
flex-shrink: 0;
font-weight: 500;
}
.danmu-mode-scroll {
background: #e3f2fd;
color: #1976d2;
}
.danmu-mode-top {
background: #fce4ec;
color: #c62828;
}
.danmu-mode-bottom {
background: #e8f5e9;
color: #2e7d32;
}
.danmu-text {
flex: 1;
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: #333;
}
.danmu-load-more {
display: none;
width: 100%;
margin-top: 10px;
}
.jump-to-episode {
margin-top: 15px;
margin-bottom: 15px;
padding: 10px;
background: #f8f9fa;
border-radius: 12px;
display: flex;
align-items: center;
gap: 10px;
flex-wrap: wrap;
}
.jump-episode-input {
padding: 8px;
width: 90px;
border: 1px solid #ccc;
border-radius: 8px;
}
.jump-episode-btn {
margin-left: 5px;
border-radius: 8px;
}
.jump-episode-total {
margin-left: 5px;
color: #666;
font-size: 14px;
}
.episode-item.episode-item-highlight {
background: #fff3cd;
}
/* \u8FD4\u56DE\u6309\u94AE */
.btn-back {
padding: 8px 16px;
background: #f0f0f0;
border: 1px solid #ddd;
border-radius: 6px;
cursor: pointer;
font-size: 14px;
color: #555;
transition: all 0.2s;
margin-bottom: 15px;
display: inline-block;
}
.btn-back:hover {
background: #e0e0e0;
color: #333;
}
/* \u5F39\u5E55\u52A0\u8F7D\u52A8\u753B */
.danmu-loading {
text-align: center;
padding: 60px 20px;
}
.danmu-loading .loading-spinner {
margin: 0 auto 15px;
}
.danmu-loading .loading-text {
color: #666;
font-size: 15px;
}
/* \u5F39\u5E55\u7ED3\u679C\u5DE5\u5177\u680F\uFF08\u8FD4\u56DE+\u5BFC\u51FA\u540C\u884C\uFF09 */
.danmu-result-toolbar {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 15px;
flex-wrap: wrap;
gap: 10px;
}
.danmu-result-toolbar .btn-back {
margin-bottom: 0;
}
.danmu-export-btns {
display: flex;
gap: 8px;
margin-left: auto;
}
/* \u5F39\u5E55\u6D4B\u8BD5\u79FB\u52A8\u7AEF\u9002\u914D */
@media (max-width: 768px) {
.danmu-stats-grid {
grid-template-columns: repeat(2, 1fr);
}
.api-top-tab {
padding: 8px 16px;
font-size: 14px;
}
.danmu-test-tabs {
flex-wrap: wrap;
}
.stat-value {
font-size: 16px;
}
.heatmap-bars {
height: 70px;
gap: 1px;
padding: 0 1px;
}
.heatmap-bar {
min-width: 2px;
}
}
/* \u989C\u8272\u6C60\u914D\u7F6E */
.color-pool-display {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-bottom: 12px;
min-height: 36px;
padding: 8px;
border: 1px solid #e0e0e0;
border-radius: 8px;
background: #f9f9f9;
}
.color-pool-item {
display: inline-flex;
align-items: center;
gap: 4px;
padding: 3px 8px;
border: 1px solid #ddd;
border-radius: 6px;
background: #fff;
font-size: 12px;
}
.color-pool-swatch {
display: inline-block;
width: 18px;
height: 18px;
border-radius: 3px;
border: 1px solid #ccc;
}
.color-pool-value {
color: #666;
font-family: monospace;
font-size: 11px;
}
.color-pool-remove {
border: none;
background: none;
color: #999;
cursor: pointer;
padding: 0 2px;
font-size: 14px;
line-height: 1;
}
.color-pool-empty {
color: #999;
font-size: 12px;
align-self: center;
}
.color-pool-picker {
padding: 14px;
border: 1px solid #e0e0e0;
border-radius: 10px;
background: #fafafa;
margin-bottom: 12px;
}
.color-pool-picker-inner {
display: flex;
flex-direction: column;
align-items: center;
gap: 12px;
}
.color-wheel {
width: 120px;
height: 120px;
border-radius: 50%;
background: conic-gradient(hsl(0,100%,50%),hsl(60,100%,50%),hsl(120,100%,50%),hsl(180,100%,50%),hsl(240,100%,50%),hsl(300,100%,50%),hsl(360,100%,50%));
cursor: crosshair;
position: relative;
box-shadow: 0 1px 4px rgba(0,0,0,0.1);
flex-shrink: 0;
}
.color-wheel-center {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
width: 44%;
height: 44%;
border-radius: 50%;
background: #fafafa;
}
.color-wheel-dot {
position: absolute;
width: 14px;
height: 14px;
border-radius: 50%;
border: 2.5px solid #fff;
box-shadow: 0 0 4px rgba(0,0,0,0.35);
pointer-events: none;
}
.color-pool-preview {
display: flex;
align-items: center;
gap: 10px;
}
.color-pool-preview-swatch {
width: 32px;
height: 32px;
border-radius: 6px;
border: 1px solid #ddd;
flex-shrink: 0;
}
.color-pool-preview-hex {
font-family: monospace;
font-size: 13px;
color: #555;
}
.color-pool-lightness {
display: flex;
align-items: center;
gap: 8px;
width: 100%;
max-width: 240px;
}
.color-pool-lightness span {
font-size: 12px;
color: #888;
flex-shrink: 0;
}
.color-pool-lightness input {
flex: 1;
accent-color: #667eea;
}
.color-pool-actions {
display: flex;
gap: 8px;
flex-wrap: nowrap;
}
.color-pool-actions .btn {
white-space: nowrap;
flex-shrink: 0;
}
.color-pool-actions .spacer {
flex: 1;
}
/* \u6279\u91CF\u6DFB\u52A0\u989C\u8272\u5F39\u7A97 */
.batch-color-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.4);
z-index: 9999;
display: flex;
align-items: center;
justify-content: center;
}
.batch-color-dialog {
background: #fff;
border-radius: 12px;
padding: 20px;
width: 90%;
max-width: 420px;
box-shadow: 0 4px 20px rgba(0,0,0,0.15);
}
.batch-color-input {
width: 100%;
padding: 8px 10px;
border: 1px solid #ddd;
border-radius: 6px;
font-size: 13px;
font-family: monospace;
resize: vertical;
box-sizing: border-box;
}
.batch-color-preview {
display: flex;
flex-wrap: wrap;
gap: 6px;
margin-top: 10px;
min-height: 24px;
}
.batch-color-preview-swatch {
display: inline-block;
width: 22px;
height: 22px;
border-radius: 4px;
border: 1px solid #ccc;
}
.batch-color-actions {
display: flex;
gap: 8px;
justify-content: flex-end;
margin-top: 14px;
}
/* \u504F\u79FB\u89C4\u5219\u5FEB\u901F\u914D\u7F6E */
.offset-rule-panel {
display: none;
margin-top: 10px;
padding: 12px;
border: 1px solid #e0e0e0;
border-radius: 8px;
background: #f9f9f9;
}
.offset-form-row {
display: flex;
gap: 8px;
flex-wrap: wrap;
margin-bottom: 10px;
}
.offset-label {
font-size: 12px;
color: #666;
}
.offset-input {
width: 100%;
padding: 6px 8px;
border: 1px solid #ddd;
border-radius: 4px;
font-size: 13px;
box-sizing: border-box;
}
.offset-sources {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin-top: 5px;
}
.offset-source-tag {
padding: 3px 10px;
border: 1px solid #ddd;
border-radius: 12px;
font-size: 12px;
cursor: pointer;
user-select: none;
background: #fff;
color: #666;
transition: all 0.15s;
}
.offset-source-tag.selected {
background: #1a73e8;
color: #fff;
border-color: #1a73e8;
}
.offset-actions {
display: flex;
gap: 8px;
justify-content: flex-end;
}
/* \u6700\u8FD1\u6570\u636E\u4E0Eanimes\u7F13\u5B58\u9762\u677F\u6837\u5F0F */
/* \u9762\u677F\u5BB9\u5668 */
.recent-data-panel {
display: none;
max-height: 350px;
overflow-y: auto;
}
.anime-cache-list {
display: flex;
flex-direction: column;
gap: 8px;
}
.anime-cache-card {
background: #fff;
border-radius: 6px;
border: 1px solid #eaeaea;
box-shadow: 0 1px 3px rgba(0,0,0,0.04);
overflow: hidden;
}
.anime-cache-card-body {
display: flex;
gap: 12px;
align-items: center;
padding: 10px;
}
.anime-cache-cover {
width: 44px;
height: 60px;
border-radius: 4px;
background-color: #e2e3e5;
background-size: cover;
background-position: center;
flex-shrink: 0;
box-shadow: 0 1px 4px rgba(0,0,0,0.15);
}
.anime-cache-info,
.anime-cache-child-info {
flex: 1;
min-width: 0;
}
.anime-cache-title {
font-weight: 600;
font-size: 13px;
line-height: 1.4;
margin-bottom: 4px;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
word-break: break-all;
}
.anime-cache-meta {
color: #888;
font-size: 11px;
}
.anime-cache-actions,
.anime-cache-child-actions {
display: flex;
flex-direction: column;
flex-shrink: 0;
}
.anime-cache-actions { gap: 6px; }
.btn-xs {
padding: 2px 6px;
font-size: 11px;
}
/* \u5361\u7247\u5E95\u90E8\u6807\u7B7E\u5207\u6362\u680F(Tab \u98CE\u683C) */
.anime-cache-footer {
display: flex;
gap: 8px;
padding: 8px 10px;
background: #fdfdfd;
border-top: 1px solid #f0f0f0;
}
.cache-badge {
font-size: 11px;
padding: 4px 10px;
border-radius: 12px;
cursor: pointer;
user-select: none;
display: inline-flex;
align-items: center;
font-weight: 500;
transition: all 0.2s;
}
.cache-badge.badge-sources { background: #e3f2fd; color: #0d47a1; border: 1px solid #bbdefb; }
.cache-badge.badge-episodes { background: #e8f5e9; color: #1b5e20; border: 1px solid #c8e6c9; }
.cache-badge.active { filter: brightness(0.9); box-shadow: inset 0 1px 3px rgba(0,0,0,0.1); }
/* \u6298\u53E0\u5217\u8868\u5BB9\u5668 */
.merged-children-container,
.episodes-list-container {
display: none;
flex-direction: column;
gap: 6px;
padding: 8px 10px;
background: #fafafa;
border-top: 1px solid #f0f0f0;
}
.episodes-list-container {
max-height: 200px;
overflow-y: auto;
}
/* \u5B50\u8282\u70B9\u5361\u7247 */
.anime-cache-child-item {
display: flex;
flex-direction: column;
background: #fff;
padding: 8px;
border-radius: 4px;
border: 1px dashed #ccc;
}
.anime-cache-child-main {
display: flex;
gap: 10px;
align-items: center;
width: 100%;
}
.anime-cache-child-cover {
width: 33px;
height: 45px;
border-radius: 3px;
background-color: #e2e3e5;
background-size: cover;
background-position: center;
flex-shrink: 0;
box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.anime-cache-child-title {
font-weight: 500;
font-size: 12px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.anime-cache-child-actions { gap: 4px; }
/* \u5408\u5E76\u6620\u5C04\u8BE6\u60C5 */
.child-mapping-toggle {
font-size: 10px;
color: #666;
cursor: pointer;
margin-top: 8px;
padding-top: 6px;
border-top: 1px dashed #eee;
text-align: center;
}
.child-mapping-toggle:hover {
color: #0066cc;
}
.child-mapping-container {
display: none;
flex-direction: column;
gap: 4px;
margin-top: 6px;
background: #fdfdfd;
padding: 6px;
border-radius: 4px;
border: 1px solid #f0f0f0;
max-height: 150px;
overflow-y: auto;
}
.mapping-row {
font-size: 10px;
display: flex;
gap: 6px;
align-items: flex-start;
}
.mapping-status { flex-shrink: 0; font-weight: bold; }
.mapping-status.success { color: #28a745; }
.mapping-status.warning { color: #d39e00; }
.mapping-text { color: #555; word-break: break-all; }
`;var rct=`
/* \u8868\u5355\u6837\u5F0F - Zen-iOS Hybrid Design */
.form-group {
margin-bottom: 24px;
}
.form-group label {
display: block;
margin-bottom: 8px;
font-size: 11px;
font-weight: 700;
color: var(--text-secondary);
text-transform: uppercase;
letter-spacing: 0.08em;
}
.form-group input,
.form-group select,
.form-group textarea {
width: 100%;
padding: 12px 16px;
border: 1px solid rgba(0,0,0,0.06);
border-radius: 12px; /* Smooth corners */
font-size: 14px;
background-color: rgba(245, 245, 247, 0.5); /* #F5F5F7 50% */
color: var(--text-primary);
box-shadow: var(--shadow-inner); /* Inner shadow for depth */
transition: all 0.2s;
outline: none;
}
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
background-color: #FFFFFF;
border-color: var(--primary-color);
box-shadow: 0 0 0 4px rgba(28, 28, 30, 0.1); /* Focus ring */
}
.form-group textarea {
resize: vertical;
min-height: 100px;
font-family: 'SF Mono', 'Menlo', monospace;
line-height: 1.5;
}
/* \u5F00\u5173\u6309\u94AE (iOS style) */
.switch-container {
display: flex;
align-items: center;
gap: 12px;
}
.switch {
position: relative;
display: inline-block;
width: 52px;
height: 32px;
}
.switch input {
opacity: 0;
width: 0;
height: 0;
}
.slider {
position: absolute;
cursor: pointer;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: rgba(120, 120, 128, 0.16); /* iOS gray */
transition: .3s cubic-bezier(0.25, 1, 0.5, 1);
border-radius: 32px;
}
.slider:before {
position: absolute;
content: "";
height: 28px;
width: 28px;
left: 2px;
bottom: 2px;
background-color: white;
transition: .3s cubic-bezier(0.25, 1, 0.5, 1);
border-radius: 50%;
box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), 0 3px 1px rgba(0, 0, 0, 0.06);
}
input:checked + .slider {
background-color: var(--success-color); /* Green for on */
}
input:checked + .slider:before {
transform: translateX(20px);
}
.switch-label {
font-weight: 600;
color: var(--text-primary);
font-size: 14px;
}
/* \u6570\u5B57\u6EDA\u8F6E */
.number-picker {
display: flex;
align-items: center;
gap: 20px;
background: rgba(255, 255, 255, 0.5);
padding: 20px;
border-radius: 16px;
border: 1px solid rgba(0,0,0,0.05);
}
.number-display {
font-size: 40px;
font-weight: 800;
color: var(--text-primary);
min-width: 70px;
text-align: center;
font-variant-numeric: tabular-nums;
}
.number-controls {
display: flex;
flex-direction: column;
gap: 8px;
}
.number-btn {
width: 36px;
height: 36px;
border: 1px solid rgba(0,0,0,0.1);
background: white;
color: var(--text-primary);
border-radius: 10px;
cursor: pointer;
font-size: 18px;
font-weight: bold;
transition: all 0.2s;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}
.number-btn:hover {
background: #F5F5F7;
transform: translateY(-1px);
}
.number-btn:active {
transform: scale(0.95);
background: #E5E5EA;
}
/* Range Slider */
.number-range input[type="range"] {
-webkit-appearance: none;
width: 100%;
height: 6px;
border-radius: 3px;
background: rgba(120, 120, 128, 0.16);
outline: none;
padding: 0;
box-shadow: none;
border: none;
}
.number-range input[type="range"]::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 28px;
height: 28px;
border-radius: 50%;
background: white;
cursor: pointer;
box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), 0 3px 1px rgba(0, 0, 0, 0.06);
border: 0.5px solid rgba(0,0,0,0.04);
}
/* \u6807\u7B7E\u9009\u62E9 */
.tag-selector {
display: flex;
flex-wrap: wrap;
gap: 12px;
}
.tag-option {
padding: 8px 16px;
background: #FFFFFF;
border: 1px solid rgba(0,0,0,0.1);
border-radius: 100px;
cursor: pointer;
transition: all 0.2s;
font-size: 13px;
font-weight: 600;
color: var(--text-secondary);
}
.tag-option:hover {
background: #F5F5F7;
color: var(--text-primary);
}
.tag-option.selected {
background: var(--primary-color);
color: white;
border-color: var(--primary-color);
box-shadow: 0 4px 10px rgba(0,0,0,0.15);
}
/* \u591A\u9009\u533A\u57DF */
.selected-tags {
min-height: 80px;
background: rgba(245, 245, 247, 0.5);
border: 1px dashed rgba(0,0,0,0.15);
border-radius: 16px;
padding: 16px;
display: flex;
flex-wrap: wrap;
gap: 10px;
align-items: flex-start;
box-shadow: var(--shadow-inner);
}
.selected-tag {
display: inline-flex;
align-items: center;
gap: 8px;
background: var(--primary-color);
color: white;
padding: 8px 16px;
border-radius: 100px;
font-size: 13px;
font-weight: 600;
box-shadow: 0 4px 10px rgba(0,0,0,0.1);
cursor: move;
}
.selected-tag .remove-btn {
width: 20px;
height: 20px;
background: rgba(255,255,255,0.2);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: background 0.2s;
font-size: 12px;
}
.selected-tag .remove-btn:hover {
background: rgba(255,255,255,0.4);
}
.available-tags {
margin-top: 15px;
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.available-tag {
padding: 6px 14px;
background: #FFFFFF;
border: 1px solid rgba(0,0,0,0.1);
border-radius: 100px;
font-size: 12px;
font-weight: 500;
color: var(--text-secondary);
transition: all 0.2s;
display: inline-flex;
cursor: pointer;
}
.available-tag:hover {
transform: translateY(-1px);
border-color: rgba(0,0,0,0.2);
}
.available-tag.disabled {
opacity: 0.4;
cursor: not-allowed;
pointer-events: none;
}
/* \u5408\u5E76\u6A21\u5F0F\u63A7\u5236\u533A */
.merge-mode-controls {
display: flex;
align-items: center;
margin-top: 16px;
margin-bottom: 12px;
gap: 0;
}
.merge-mode-btn {
display: inline-flex;
align-items: center;
padding: 0;
background: transparent;
border: none;
color: var(--accent-color);
font-size: 13px;
font-weight: 600;
cursor: pointer;
transition: all 0.2s;
text-decoration: none;
position: relative;
}
.merge-mode-btn:hover {
color: #005ecb;
}
.merge-mode-btn:active {
opacity: 0.6;
}
.merge-mode-btn.active {
color: var(--success-color);
}
.merge-mode-controls .form-help {
font-size: 12px;
color: var(--text-secondary);
margin: 0;
margin-left: 10px;
}
/* \u6682\u5B58\u533A */
.staging-area {
display: none;
min-height: 60px;
background: rgba(255, 243, 205, 0.3);
border: 1px dashed rgba(255, 193, 7, 0.4);
border-radius: 12px;
padding: 12px;
margin-top: 12px;
margin-bottom: 12px;
flex-wrap: wrap;
gap: 8px;
align-items: center;
position: relative;
}
.staging-area.active {
display: flex;
}
.staging-tag {
display: inline-flex;
align-items: center;
gap: 6px;
background: rgba(255, 193, 7, 0.15);
color: var(--text-primary);
padding: 6px 12px;
border-radius: 100px;
font-size: 12px;
font-weight: 600;
border: 1px solid rgba(255, 193, 7, 0.3);
cursor: move;
}
.staging-tag.dragging {
opacity: 0.5;
}
.staging-tag.drag-over {
border-color: var(--accent-color);
background: rgba(0, 122, 255, 0.1);
}
.staging-tag .remove-btn {
width: 16px;
height: 16px;
background: rgba(0, 0, 0, 0.1);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: background 0.2s;
font-size: 11px;
line-height: 1;
}
.staging-tag .remove-btn:hover {
background: rgba(0, 0, 0, 0.2);
}
.confirm-merge-btn {
width: 32px;
height: 32px;
background: var(--success-color);
color: white;
border: none;
border-radius: 50%;
cursor: pointer;
font-size: 16px;
font-weight: bold;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s;
box-shadow: 0 2px 8px rgba(52, 199, 89, 0.3);
margin-left: auto;
}
.confirm-merge-btn:hover {
background: #2fb350;
transform: scale(1.05);
}
.confirm-merge-btn:active {
transform: scale(0.95);
}
/* Map items */
.map-item {
background: #FFFFFF;
border: 1px solid rgba(0,0,0,0.06);
border-radius: 12px;
padding: 12px;
margin-bottom: 12px;
display: flex;
align-items: center;
gap: 12px;
box-shadow: 0 2px 6px rgba(0,0,0,0.02);
}
.map-input-left, .map-input-right {
background: #F5F5F7;
border: none;
border-radius: 8px;
padding: 8px 12px;
font-family: 'SF Mono', monospace;
font-size: 13px;
}
`;var nct=`
/* \u54CD\u5E94\u5F0F\u6837\u5F0F - Zen-iOS Hybrid Design */
@media (max-width: 768px) {
body {
padding: 10px;
}
.container {
border-radius: 24px; /* Slightly smaller radius on mobile */
}
.header {
padding: 20px;
flex-direction: column;
align-items: stretch;
}
.header-left {
width: 100%;
align-items: center;
text-align: center;
}
.logo-title-container {
flex-direction: column;
gap: 10px;
}
.logo {
width: 48px;
height: 48px;
font-size: 20px;
}
.header h1 {
font-size: 20px;
}
.version-info {
justify-content: center;
margin-top: 8px;
width: 100%;
font-size: 11px;
}
.nav-buttons {
width: 100%;
justify-content: stretch;
gap: 4px;
background: rgba(118, 118, 128, 0.12);
border-radius: 12px;
padding: 4px;
}
.nav-btn {
flex: 1;
text-align: center;
font-size: 12px;
padding: 6px 2px;
border-radius: 8px;
}
.content {
padding: 20px;
}
.env-item {
flex-direction: column;
align-items: stretch;
padding: 16px;
}
.env-item .env-info {
min-width: 0; /* Fix flex overflow */
width: 100%;
}
.env-item .env-info div.text-dark-gray {
font-size: 13px;
max-width: 100%;
}
.env-actions {
width: 100%;
margin-top: 12px;
display: flex;
}
.env-actions .btn {
flex: 1;
}
/* \u9884\u89C8\u5361\u7247\u79FB\u52A8\u7AEF */
.preview-category {
padding: 16px;
}
.preview-item {
padding: 12px;
}
.preview-item .preview-value {
font-size: 12px;
}
.api-selector select {
font-size: 16px; /* Prevent auto-zoom on iOS */
}
/* \u914D\u7F6E\u7F16\u8F91\u5F39\u7A97\u79FB\u52A8\u7AEF\u9002\u914D */
#env-modal .modal-content {
width: 95vw;
max-width: none;
padding: 24px 20px;
border-radius: 24px;
max-height: 90vh;
}
#env-modal .selected-tags {
max-height: 120px;
}
#env-modal .available-tags {
max-height: 150px;
}
#env-modal .modal-header {
padding-bottom: 16px;
margin-bottom: 20px;
}
#env-modal .modal-header h3 {
font-size: 18px;
}
/* \u63A8\u9001\u5F39\u5E55\u79FB\u52A8\u7AEF\u9002\u914D */
.anime-grid {
grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
gap: 12px;
}
.anime-item-img {
aspect-ratio: 3 / 4;
}
.anime-title {
padding: 10px;
font-size: 12px;
}
.episode-item {
flex-direction: column;
align-items: stretch;
gap: 12px;
padding: 14px 16px;
}
.episode-item-content {
white-space: normal;
}
.episode-push-btn {
width: 100%;
}
#push-anime-list,
#push-episode-list {
padding: 16px;
margin-top: 16px;
}
}
`;var sct=`
// \u81EA\u5B9A\u4E49\u5F39\u7A97\u7EC4\u4EF6
function createCustomAlert() {
// \u68C0\u67E5\u662F\u5426\u5DF2\u5B58\u5728\u81EA\u5B9A\u4E49\u5F39\u7A97\u5143\u7D20
if (document.getElementById('custom-alert-overlay')) {
return;
}
// \u521B\u5EFA\u5F39\u7A97HTML\u5143\u7D20
const alertHTML = '<div class="modal" id="custom-alert-overlay"><div class="modal-content" id="custom-alert-content"><div class="modal-header"><h3 id="custom-alert-title">\u63D0\u793A</h3><button class="close-btn" id="custom-alert-close">&times;</button></div><div class="modal-body"><p id="custom-alert-message"></p></div><div class="modal-footer"><button class="btn btn-primary" id="custom-alert-confirm">\u786E\u5B9A</button></div></div></div>';
// \u6DFB\u52A0\u5230body
document.body.insertAdjacentHTML('beforeend', alertHTML);
// \u83B7\u53D6\u5143\u7D20
const overlay = document.getElementById('custom-alert-overlay');
const closeBtn = document.getElementById('custom-alert-close');
const confirmBtn = document.getElementById('custom-alert-confirm');
// \u5173\u95ED\u5F39\u7A97\u51FD\u6570
function closeAlert() {
overlay.classList.remove('active');
// \u91CD\u7F6E\u6807\u9898\u548C\u6D88\u606F
document.getElementById('custom-alert-title').textContent = '\u63D0\u793A';
}
// \u4E8B\u4EF6\u76D1\u542C\u5668
closeBtn.addEventListener('click', closeAlert);
confirmBtn.addEventListener('click', closeAlert);
// \u70B9\u51FB\u906E\u7F69\u5C42\u5173\u95ED\u5F39\u7A97
overlay.addEventListener('click', function(e) {
if (e.target === overlay) {
closeAlert();
}
});
}
// \u81EA\u5B9A\u4E49alert\u51FD\u6570
function customAlert(message, title = '\u63D0\u793A') {
// \u786E\u4FDD\u5F39\u7A97\u5143\u7D20\u5DF2\u521B\u5EFA
createCustomAlert();
// \u83B7\u53D6\u5143\u7D20
const overlay = document.getElementById('custom-alert-overlay');
const titleElement = document.getElementById('custom-alert-title');
const messageElement = document.getElementById('custom-alert-message');
// \u8BBE\u7F6E\u6807\u9898\u548C\u6D88\u606F
titleElement.textContent = title;
messageElement.innerHTML = message;
// \u663E\u793A\u5F39\u7A97
overlay.classList.add('active');
}
// \u81EA\u5B9A\u4E49confirm\u51FD\u6570\uFF08\u5982\u679C\u9700\u8981\uFF09
function customConfirm(message, title = '\u786E\u8BA4') {
return new Promise((resolve) => {
// \u786E\u4FDD\u5F39\u7A97\u5143\u7D20\u5DF2\u521B\u5EFA
createCustomAlert();
// \u83B7\u53D6\u5143\u7D20
const overlay = document.getElementById('custom-alert-overlay');
const titleElement = document.getElementById('custom-alert-title');
const messageElement = document.getElementById('custom-alert-message');
const confirmBtn = document.getElementById('custom-alert-confirm');
// \u79FB\u9664\u4E4B\u524D\u7684\u4E8B\u4EF6\u76D1\u542C\u5668\uFF08\u5982\u679C\u6709\uFF09
const newConfirmBtn = confirmBtn.cloneNode(true);
confirmBtn.parentNode.replaceChild(newConfirmBtn, confirmBtn);
// \u8BBE\u7F6E\u6807\u9898\u548C\u6D88\u606F
titleElement.textContent = title;
messageElement.innerHTML = message;
// \u786E\u5B9A\u6309\u94AE\u4E8B\u4EF6
newConfirmBtn.addEventListener('click', () => {
overlay.classList.remove('active');
resolve(true);
});
// \u5173\u95ED\u6309\u94AE\u4E8B\u4EF6
document.getElementById('custom-alert-close').addEventListener('click', () => {
overlay.classList.remove('active');
resolve(false);
});
// \u70B9\u51FB\u906E\u7F69\u5C42\u5173\u95ED
overlay.addEventListener('click', function(e) {
if (e.target === overlay) {
overlay.classList.remove('active');
resolve(false);
}
});
// \u663E\u793A\u5F39\u7A97
overlay.classList.add('active');
});
}
// \u521D\u59CB\u5316\u81EA\u5B9A\u4E49\u5F39\u7A97
document.addEventListener('DOMContentLoaded', createCustomAlert);
// \u6570\u636E\u5B58\u50A8
let envVariables = {};
let currentCategory = 'api'; // \u9ED8\u8BA4\u5206\u7C7B\u6539\u4E3Aapi
let editingKey = null;
let logs = []; // \u4FDD\u7559\u672C\u5730\u65E5\u5FD7\u6570\u7EC4\uFF0C\u7528\u4E8EUI\u663E\u793A
// \u7248\u672C\u4FE1\u606F
let currentVersion = '';
let latestVersion = '';
let currentToken = 'globals.currentToken';
let currentAdminToken = ''; // admin token\uFF0C\u7528\u4E8E\u7CFB\u7EDF\u7BA1\u7406
let originalToken = '';
// \u53CD\u5411\u4EE3\u7406/API\u57FA\u7840\u8DEF\u5F84\u914D\u7F6E
// \u4ECELocalStorage\u83B7\u53D6\u7528\u6237\u81EA\u5B9A\u4E49\u7684Base URL
let customBaseUrl = localStorage.getItem('logvar_api_base_url') || '';
// \u4FDD\u5B58\u81EA\u5B9A\u4E49Base URL (\u4E3A\u7A7A\u5219\u6E05\u9664)
function saveBaseUrl() {
const input = document.getElementById('custom-base-url').value.trim();
if (input) {
// \u786E\u4FDDURL\u4E0D\u4EE5\u659C\u6760\u7ED3\u5C3E\uFF0C\u65B9\u4FBF\u540E\u7EED\u62FC\u63A5
let formattedUrl = input;
if (formattedUrl.endsWith('/')) {
formattedUrl = formattedUrl.slice(0, -1);
}
localStorage.setItem('logvar_api_base_url', formattedUrl);
customBaseUrl = formattedUrl;
customAlert('API\u5730\u5740\u914D\u7F6E\u5DF2\u4FDD\u5B58\uFF0C\u5373\u5C06\u5237\u65B0\u9875\u9762\u3002', '\u4FDD\u5B58\u6210\u529F');
setTimeout(() => {
location.reload();
}, 1000);
} else {
// \u8F93\u5165\u4E3A\u7A7A\uFF0C\u89C6\u4E3A\u6E05\u9664\u914D\u7F6E/\u91CD\u7F6E\u4E3A\u9ED8\u8BA4
localStorage.removeItem('logvar_api_base_url');
customBaseUrl = '';
customAlert('\u914D\u7F6E\u5DF2\u91CD\u7F6E\u4E3A\u9ED8\u8BA4\u72B6\u6001\uFF0C\u5373\u5C06\u5237\u65B0\u9875\u9762\u3002', '\u64CD\u4F5C\u6210\u529F');
setTimeout(() => {
location.reload();
}, 1000);
}
}
// \u6784\u5EFA\u5E26token\u7684API\u8BF7\u6C42\u8DEF\u5F84
function buildApiUrl(path, isSystemPath = false) {
let res;
// \u5982\u679C\u662F\u7CFB\u7EDF\u7BA1\u7406\u8DEF\u5F84\u4E14\u6709admin token,\u5219\u4F7F\u7528admin token
if (isSystemPath && currentAdminToken && currentAdminToken.trim() !== '' && currentAdminToken.trim() !== '*'.repeat(currentAdminToken.length)) {
res = '/' + currentAdminToken + path;
} else {
// \u5426\u5219\u4F7F\u7528\u666E\u901Atoken
res = (currentToken ? '/' + currentToken : "") + path;
}
// \u5982\u679C\u914D\u7F6E\u4E86\u81EA\u5B9A\u4E49\u57FA\u7840URL (\u89E3\u51B3\u53CD\u4EE3\u95EE\u9898)
if (customBaseUrl) {
// \u786E\u4FDD\u8DEF\u5F84\u4EE5/\u5F00\u5934
const cleanPath = res.startsWith('/') ? res : '/' + res;
return customBaseUrl + cleanPath;
}
return res;
}
// \u4ECEAPI\u52A0\u8F7D\u771F\u5B9E\u73AF\u5883\u53D8\u91CF\u6570\u636E
function loadEnvVariables() {
// \u4ECEAPI\u83B7\u53D6\u771F\u5B9E\u914D\u7F6E\u6570\u636E
fetch(buildApiUrl('/api/config', true))
.then(response => response.json())
.then(config => {
// \u4ECE\u914D\u7F6E\u4E2D\u83B7\u53D6admin token
currentAdminToken = config.originalEnvVars?.ADMIN_TOKEN || '';
originalToken = config.originalEnvVars?.TOKEN || '';
// \u4F7F\u7528\u4ECEAPI\u83B7\u53D6\u7684\u539F\u59CB\u73AF\u5883\u53D8\u91CF\uFF0C\u7528\u4E8E\u7CFB\u7EDF\u8BBE\u7F6E
const originalEnvVars = config.originalEnvVars || {};
// \u91CD\u65B0\u7EC4\u7EC7\u6570\u636E\u7ED3\u6784\u4EE5\u9002\u914D\u73B0\u6709UI
envVariables = {};
// \u5C06\u539F\u59CB\u73AF\u5883\u53D8\u91CF\u8F6C\u6362\u4E3AUI\u6240\u9700\u683C\u5F0F
// \u8FD9\u91CC\u9700\u8981\u5C06\u539F\u59CB\u73AF\u5883\u53D8\u91CF\u6309\u7C7B\u522B\u7EC4\u7EC7
Object.keys(originalEnvVars).forEach(key => {
// \u4ECEenvVarConfig\u83B7\u53D6\u914D\u7F6E\u4FE1\u606F
const varConfig = config.envVarConfig?.[key] || { category: 'system', type: 'text', description: '\u672A\u5206\u7C7B\u914D\u7F6E\u9879' };
const category = varConfig.category || 'system';
// \u5982\u679C\u8BE5\u5206\u7C7B\u4E0D\u5B58\u5728\uFF0C\u521B\u5EFA\u5B83
if (!envVariables[category]) {
envVariables[category] = [];
}
// \u6DFB\u52A0\u5230\u5BF9\u5E94\u5206\u7C7B\uFF0C\u5305\u542B\u5B8C\u6574\u7684\u914D\u7F6E\u4FE1\u606F
envVariables[category].push({
key: key,
value: originalEnvVars[key],
description: varConfig.description || '',
type: varConfig.type || 'text',
min: varConfig.min,
max: varConfig.max,
options: varConfig.options || [], // \u4EC5\u5BF9 select \u548C multi-select \u7C7B\u578B\u6709\u6548
sources: varConfig.sources || null // \u4EC5\u5BF9 DANMU_OFFSET \u7B49\u9700\u8981\u6765\u6E90\u914D\u7F6E\u7684\u6709\u6548
});
});
// \u6E32\u67D3\u73AF\u5883\u53D8\u91CF\u5217\u8868
renderEnvList();
})
.catch(error => {
console.error('Failed to load env variables:', error);
});
}
// \u66F4\u65B0API\u7AEF\u70B9\u4FE1\u606F
function updateApiEndpoint() {
return fetch(buildApiUrl('/api/config', true))
.then(response => {
// \u68C0\u67E5ContentType\uFF0C\u5982\u679C\u662FHTML\u8BF4\u660E\u53EF\u80FD\u662F404\u9875\u9762\u6216\u53CD\u4EE3\u9519\u8BEF\u9875\u9762
const contentType = response.headers.get("content-type");
if (contentType && contentType.indexOf("application/json") === -1) {
throw new Error("Received HTML instead of JSON. Possible 404 or Proxy Error.");
}
if (!response.ok) {
throw new Error(\`HTTP error! status: \${response.status}\`);
}
return response.json();
})
.then(config => {
let _reverseProxy = customBaseUrl; // \u4F7F\u7528\u5168\u5C40\u914D\u7F6E
// \u83B7\u53D6\u5F53\u524D\u9875\u9762\u7684\u534F\u8BAE\u3001\u4E3B\u673A\u548C\u7AEF\u53E3
const protocol = window.location.protocol;
const host = window.location.host;
const token = config.originalEnvVars?.TOKEN || '87654321'; // \u9ED8\u8BA4token\u503C
const adminToken = config.originalEnvVars?.ADMIN_TOKEN;
// \u83B7\u53D6URL\u8DEF\u5F84\u5E76\u63D0\u53D6token
let urlPath = window.location.pathname;
if(_reverseProxy) {
try {
let proxyPath = _reverseProxy.startsWith('http')
? new URL(_reverseProxy).pathname
: _reverseProxy;
if (proxyPath.endsWith('/')) {
proxyPath = proxyPath.slice(0, -1);
}
if(proxyPath && urlPath.startsWith(proxyPath)) {
urlPath = urlPath.substring(proxyPath.length);
}
} catch(e) { /* ignore */ }
}
const pathParts = urlPath.split('/').filter(part => part !== '');
const urlToken = pathParts.length > 0 ? pathParts[0] : '';
let apiToken = '********';
// \u5224\u65AD\u662F\u5426\u4F7F\u7528\u9ED8\u8BA4token
if (token === '87654321') {
// \u5982\u679C\u662F\u9ED8\u8BA4token\uFF0C\u5219\u663E\u793A\u771F\u5B9Etoken
apiToken = token;
} else {
// \u5982\u679C\u4E0D\u662F\u9ED8\u8BA4token\uFF0C\u5219\u68C0\u67E5URL\u4E2D\u7684token\u662F\u5426\u5339\u914D\uFF0C\u5339\u914D\u5219\u663E\u793A\u771F\u5B9Etoken\uFF0C\u5426\u5219\u663E\u793A\u661F\u53F7
if (urlToken === token || (adminToken !== "" && urlToken === adminToken)) {
apiToken = token; // \u66F4\u65B0\u5168\u5C40token\u53D8\u91CF
}
}
// \u6784\u9020API\u7AEF\u70B9URL
let baseUrlStr;
if (_reverseProxy) {
// \u5982\u679C\u914D\u7F6E\u4E86\u53CD\u4EE3\uFF0C\u4E14\u662F\u76F8\u5BF9\u8DEF\u5F84\uFF0C\u5219\u8865\u5168\u534F\u8BAE\u548C\u4E3B\u673A\uFF0C\u786E\u4FDD\u663E\u793A\u4E3A\u7EDD\u5BF9\u8DEF\u5F84
baseUrlStr = _reverseProxy.startsWith('http')
? _reverseProxy
: (protocol + '//' + host + _reverseProxy);
} else {
baseUrlStr = protocol + '//' + host;
}
// \u786E\u4FDD baseUrlStr \u4E0D\u4EE5\u659C\u6760\u7ED3\u5C3E
let cleanBaseUrl = baseUrlStr;
if (cleanBaseUrl.endsWith('/')) {
cleanBaseUrl = cleanBaseUrl.slice(0, -1);
}
const apiEndpoint = cleanBaseUrl + '/' + apiToken;
const apiEndpointElement = document.getElementById('api-endpoint');
if (apiEndpointElement) {
apiEndpointElement.textContent = apiEndpoint;
}
return config; // \u8FD4\u56DE\u914D\u7F6E\u4FE1\u606F\uFF0C\u4EE5\u4FBF\u94FE\u5F0F\u8C03\u7528
})
.catch(error => {
console.error('\u83B7\u53D6\u914D\u7F6E\u4FE1\u606F\u5931\u8D25:', error);
// \u51FA\u9519\u65F6\u663E\u793A\u9ED8\u8BA4\u503C
const protocol = window.location.protocol;
const host = window.location.host;
let _reverseProxy = customBaseUrl;
// \u6784\u9020\u663E\u793A\u7528\u7684BaseUrl
let baseUrlStr;
if (_reverseProxy) {
baseUrlStr = _reverseProxy.startsWith('http')
? _reverseProxy
: (protocol + '//' + host + _reverseProxy);
} else {
baseUrlStr = protocol + '//' + host;
}
let cleanBaseUrl = baseUrlStr;
if (cleanBaseUrl.endsWith('/')) {
cleanBaseUrl = cleanBaseUrl.slice(0, -1);
}
const apiEndpoint = cleanBaseUrl + '/********';
const apiEndpointElement = document.getElementById('api-endpoint');
if (apiEndpointElement) {
apiEndpointElement.textContent = apiEndpoint;
}
// \u5982\u679C\u662F\u56E0\u4E3A\u53CD\u4EE3\u5BFC\u81F4\u7684\u95EE\u9898\uFF0C\u663E\u793A\u8F93\u5165\u6846 (\u4EA4\u7531renderPreview\u5904\u7406\uFF0C\u6216\u8005\u5728\u8FD9\u91CC\u4E5F\u53EF\u4EE5\u89E6\u53D1)
const proxyContainer = document.getElementById('proxy-config-container');
if(proxyContainer) {
proxyContainer.style.display = 'block';
// \u586B\u5145\u5F53\u524D\u8F93\u5165\u6846\uFF08\u5982\u679C\u6709\u503C\uFF09
if(customBaseUrl) {
document.getElementById('custom-base-url').value = customBaseUrl;
}
}
throw error; // \u629B\u51FA\u9519\u8BEF\uFF0C\u4EE5\u4FBF\u8C03\u7528\u8005\u53EF\u4EE5\u5904\u7406
});
}
function getDockerVersion() {
const url = "https://img.shields.io/docker/v/logvar/danmu-api?sort=semver";
fetch(url)
.then(response => response.text())
.then(svgContent => {
// \u4F7F\u7528\u6B63\u5219\u8868\u8FBE\u5F0F\u4ECE SVG \u4E2D\u63D0\u53D6\u7248\u672C\u53F7
const versionMatch = svgContent.match(/version<\\/text><text.*?>(v[\\d\\.]+)/);
if (versionMatch && versionMatch[1]) {
console.log("Version:", versionMatch[1]);
const latestVersionElement = document.getElementById('latest-version');
if (latestVersionElement) {
latestVersionElement.textContent = versionMatch[1];
}
} else {
console.log("Version not found");
}
})
.catch(error => {
console.error("Error fetching the SVG:", error);
});
}
// \u5207\u6362\u5BFC\u822A
function switchSection(section, event = null) {
// \u68C0\u67E5\u662F\u5426\u5C1D\u8BD5\u8BBF\u95EE\u53D7token\u4FDD\u62A4\u7684section\uFF08\u65E5\u5FD7\u67E5\u770B\u3001\u63A5\u53E3\u8C03\u8BD5\u3001\u63A8\u9001\u5F39\u5E55\u3001\u8BF7\u6C42\u8BB0\u5F55\u3001\u7CFB\u7EDF\u914D\u7F6E\u9700\u8981token\u8BBF\u95EE\uFF09
if (section === 'logs' || section === 'api' || section === 'env' || section === 'push' || section === 'request-records') {
let _reverseProxy = customBaseUrl; // \u4F7F\u7528\u5168\u5C40\u914D\u7F6E
// \u83B7\u53D6URL\u8DEF\u5F84\u5E76\u63D0\u53D6token
let urlPath = window.location.pathname;
if(_reverseProxy) {
// \u4E25\u8C28\u5730\u79FB\u9664BaseUrl\u4E2D\u7684path\u90E8\u5206
try {
// \u5982\u679C_reverseProxy\u5305\u542B\u5B8C\u6574URL\uFF0C\u63D0\u53D6pathname
// \u5982\u679C\u53EA\u662F\u76F8\u5BF9\u8DEF\u5F84\uFF0C\u76F4\u63A5\u4F7F\u7528
let proxyPath = _reverseProxy.startsWith('http')
? new URL(_reverseProxy).pathname
: _reverseProxy;
// \u786E\u4FDD\u79FB\u9664\u5C3E\u90E8\u659C\u6760\uFF0C\u9632\u6B62\u5339\u914D\u5931\u8D25
if (proxyPath.endsWith('/')) {
proxyPath = proxyPath.slice(0, -1);
}
if(proxyPath && urlPath.startsWith(proxyPath)) {
urlPath = urlPath.substring(proxyPath.length);
}
} catch(e) {
console.error("\u89E3\u6790\u53CD\u4EE3\u8DEF\u5F84\u5931\u8D25", e);
}
}
const pathParts = urlPath.split('/').filter(part => part !== '');
const urlToken = pathParts.length > 0 ? pathParts[0] : '';
// \u68C0\u67E5URL\u4E2D\u662F\u5426\u6709token
if (!urlToken && originalToken !== "87654321") {
// \u63D0\u793A\u7528\u6237\u9700\u8981\u5728URL\u4E2D\u914D\u7F6ETOKEN
setTimeout(() => {
// \u83B7\u53D6\u5F53\u524D\u9875\u9762\u7684\u534F\u8BAE\u3001\u4E3B\u673A\u548C\u7AEF\u53E3
const protocol = window.location.protocol;
const host = window.location.host;
// \u6784\u9020\u663E\u793A\u7684BaseUrl\uFF0C\u786E\u4FDD\u662F\u7EDD\u5BF9\u8DEF\u5F84
let displayBase;
if (_reverseProxy) {
displayBase = _reverseProxy.startsWith('http')
? _reverseProxy
: (protocol + '//' + host + _reverseProxy);
} else {
displayBase = protocol + '//' + host;
}
if (displayBase.endsWith('/')) {
displayBase = displayBase.slice(0, -1);
}
// \u6839\u636Esection\u7C7B\u578B\u663E\u793A\u4E0D\u540C\u7684token\u63D0\u793A
const tokenType = section === 'env' ? 'ADMIN_TOKEN' : 'TOKEN';
customAlert('\u8BF7\u5728URL\u4E2D\u914D\u7F6E\u76F8\u5E94\u7684' + tokenType + '\u4EE5\u8BBF\u95EE\u6B64\u529F\u80FD\uFF01\\n\\n\u8BBF\u95EE\u65B9\u5F0F\uFF1A' + displayBase + '/{' + tokenType + '}');
}, 100);
return;
}
// \u5982\u679C\u662F\u7CFB\u7EDF\u914D\u7F6E\u9875\u9762\uFF0C\u8FD8\u9700\u8981\u68C0\u67E5\u662F\u5426\u914D\u7F6E\u4E86ADMIN_TOKEN\u4E14URL\u4E2D\u7684token\u7B49\u4E8EcurrentAdminToken
if (section === 'env') {
// \u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E
checkDeployPlatformConfig().then(result => {
if (!result.success) {
// \u5982\u679C\u914D\u7F6E\u68C0\u67E5\u4E0D\u901A\u8FC7\uFF0C\u53EA\u663E\u793A\u63D0\u793A\uFF0C\u4E0D\u5207\u6362\u9875\u9762
setTimeout(() => {
customAlert(result.message);
}, 100);
} else {
// \u5982\u679C\u914D\u7F6E\u68C0\u67E5\u901A\u8FC7\uFF0C\u624D\u5207\u6362\u5230env\u9875\u9762
document.querySelectorAll('.section').forEach(s => s.classList.remove('active'));
document.querySelectorAll('.nav-btn').forEach(b => b.classList.remove('active'));
document.getElementById(\`\${section}-section\`).classList.add('active');
// \u5728\u5F02\u6B65\u56DE\u8C03\u4E2D\u4F7F\u7528\u4F20\u5165\u7684event\u53C2\u6570\u6765\u8BBE\u7F6E\u6309\u94AE\u7684active\u72B6\u6001
if (event && event.target) {
event.target.classList.add('active');
}
addLog(\`\u5207\u6362\u5230\${section === 'env' ? '\u73AF\u5883\u53D8\u91CF' : section === 'preview' ? '\u914D\u7F6E\u9884\u89C8' : section === 'logs' ? '\u65E5\u5FD7\u67E5\u770B' : section === 'push' ? '\u63A8\u9001\u5F39\u5E55' : section === 'request-records' ? '\u8BF7\u6C42\u8BB0\u5F55' : '\u63A5\u53E3\u8C03\u8BD5'}\u6A21\u5757\`, 'info');
}
});
} else {
// \u5BF9\u4E8E\u65E5\u5FD7\u67E5\u770B\u3001\u63A5\u53E3\u8C03\u8BD5\u548C\u63A8\u9001\u5F39\u5E55\u9875\u9762\uFF0C\u53EA\u8981URL\u4E2D\u6709token\u5C31\u53EF\u4EE5\u8BBF\u95EE
document.querySelectorAll('.section').forEach(s => s.classList.remove('active'));
document.querySelectorAll('.nav-btn').forEach(b => b.classList.remove('active'));
document.getElementById(\`\${section}-section\`).classList.add('active');
if (event && event.target) {
event.target.classList.add('active');
}
addLog(\`\u5207\u6362\u5230\${section === 'env' ? '\u73AF\u5883\u53D8\u91CF' : section === 'preview' ? '\u914D\u7F6E\u9884\u89C8' : section === 'logs' ? '\u65E5\u5FD7\u67E5\u770B' : section === 'push' ? '\u63A8\u9001\u5F39\u5E55' : section === 'request-records' ? '\u8BF7\u6C42\u8BB0\u5F55' : '\u63A5\u53E3\u8C03\u8BD5'}\u6A21\u5757\`, 'info');
// \u5982\u679C\u5207\u6362\u5230\u65E5\u5FD7\u67E5\u770B\u9875\u9762\uFF0C\u5219\u7ACB\u5373\u5237\u65B0\u65E5\u5FD7
if (section === 'logs') {
if (typeof fetchRealLogs === 'function') {
fetchRealLogs();
}
}
}
} else {
// \u5BF9\u4E8E\u975E\u53D7\u4FDD\u62A4\u9875\u9762\uFF08\u5982\u914D\u7F6E\u9884\u89C8\uFF09\uFF0C\u6B63\u5E38\u5207\u6362
document.querySelectorAll('.section').forEach(s => s.classList.remove('active'));
document.querySelectorAll('.nav-btn').forEach(b => b.classList.remove('active'));
document.getElementById(\`\${section}-section\`).classList.add('active');
if (event && event.target) {
event.target.classList.add('active');
}
addLog(\`\u5207\u6362\u5230\${section === 'env' ? '\u73AF\u5883\u53D8\u91CF' : section === 'preview' ? '\u914D\u7F6E\u9884\u89C8' : section === 'logs' ? '\u65E5\u5FD7\u67E5\u770B' : section === 'push' ? '\u63A8\u9001\u5F39\u5E55' : '\u63A5\u53E3\u8C03\u8BD5'}\u6A21\u5757\`, 'info');
}
}
// \u5207\u6362\u7C7B\u522B
function switchCategory(category, event = null) {
currentCategory = category;
document.querySelectorAll('.category-btn').forEach(b => b.classList.remove('active'));
if (event && event.target) {
event.target.classList.add('active');
}
renderEnvList();
}
// \u5173\u95ED\u6A21\u6001\u6846
function closeModal() {
document.getElementById('env-modal').classList.remove('active');
// \u91CD\u7F6E\u8868\u5355\u5B57\u6BB5\u72B6\u6001
document.getElementById('env-category').disabled = false;
document.getElementById('env-key').readOnly = false;
document.getElementById('value-type').disabled = false;
document.getElementById('env-description').readOnly = false;
}
// \u9875\u9762\u52A0\u8F7D\u5B8C\u6210\u540E\u521D\u59CB\u5316\u65F6\u83B7\u53D6\u4E00\u6B21\u65E5\u5FD7
async function init() {
try {
await updateApiEndpoint(); // \u7B49\u5F85API\u7AEF\u70B9\u66F4\u65B0\u5B8C\u6210
getDockerVersion();
// \u4ECEAPI\u83B7\u53D6\u914D\u7F6E\u4FE1\u606F\uFF0C\u5305\u62EC\u68C0\u67E5\u662F\u5426\u6709admin token
const config = await fetchAndSetConfig();
// \u8BBE\u7F6E\u9ED8\u8BA4\u63A8\u9001\u5730\u5740
setDefaultPushUrl(config);
// \u68C0\u67E5\u5E76\u5904\u7406\u7BA1\u7406\u5458\u4EE4\u724C
checkAndHandleAdminToken();
loadEnvVariables(); // \u4ECEAPI\u52A0\u8F7D\u771F\u5B9E\u73AF\u5883\u53D8\u91CF\u6570\u636E
renderEnvList();
renderPreview();
addLog('\u7CFB\u7EDF\u521D\u59CB\u5316\u5B8C\u6210', 'success');
// \u83B7\u53D6\u771F\u5B9E\u65E5\u5FD7\u6570\u636E
fetchRealLogs();
// \u521D\u59CB\u5316\u63A8\u9001\u5F39\u5E55\u754C\u9762
if (typeof initPushDanmuInterface === 'function') {
initPushDanmuInterface();
}
// \u521D\u59CB\u5316\u63A5\u53E3\u8C03\u8BD5\u754C\u9762
if (typeof initApiTestInterface === 'function') {
initApiTestInterface();
}
} catch (error) {
console.error('\u521D\u59CB\u5316\u5931\u8D25:', error);
addLog('\u7CFB\u7EDF\u521D\u59CB\u5316\u5931\u8D25: ' + error.message, 'error');
// \u786E\u4FDD\u53CD\u4EE3\u914D\u7F6E\u6846\u663E\u793A
const proxyContainer = document.getElementById('proxy-config-container');
if(proxyContainer) {
proxyContainer.style.display = 'block';
if(customBaseUrl) {
document.getElementById('custom-base-url').value = customBaseUrl;
}
}
// \u5373\u4F7F\u521D\u59CB\u5316\u5931\u8D25\uFF0C\u4E5F\u8981\u5C1D\u8BD5\u83B7\u53D6\u65E5\u5FD7
fetchRealLogs();
}
}
// \u590D\u5236API\u7AEF\u70B9\u5230\u526A\u8D34\u677F
function copyApiEndpoint() {
const apiEndpointElement = document.getElementById('api-endpoint');
if (apiEndpointElement) {
const apiEndpoint = apiEndpointElement.textContent;
navigator.clipboard.writeText(apiEndpoint)
.then(() => {
// \u4E34\u65F6\u6539\u53D8\u663E\u793A\u6587\u672C\u4EE5\u63D0\u4F9B\u53CD\u9988
const originalText = apiEndpointElement.textContent;
apiEndpointElement.textContent = '\u5DF2\u590D\u5236!';
apiEndpointElement.style.color = '#ff6b6b';
// 2\u79D2\u540E\u6062\u590D\u539F\u59CB\u6587\u672C
setTimeout(() => {
apiEndpointElement.textContent = originalText;
apiEndpointElement.style.color = '#4CAF50';
}, 2000);
addLog('API\u7AEF\u70B9\u5DF2\u590D\u5236\u5230\u526A\u8D34\u677F: ' + apiEndpoint, 'success');
})
.catch(err => {
console.error('\u590D\u5236\u5931\u8D25:', err);
customAlert('\u590D\u5236\u5931\u8D25: ' + err);
addLog('\u590D\u5236API\u7AEF\u70B9\u5931\u8D25: ' + err, 'error');
});
}
}
function escapeHtml(text) {
// \u5982\u679C\u662F null \u6216 undefined\uFF0C\u8FD4\u56DE\u7A7A\u5B57\u7B26\u4E32
if (text === null || text === undefined) {
return '';
}
// \u5C06\u975E\u5B57\u7B26\u4E32\u503C\u8F6C\u6362\u4E3A\u5B57\u7B26\u4E32
const str = String(text);
const map = {
'&': '&amp;',
'<': '&lt;',
'>': '&gt;',
'"': '&quot;',
"'": '&#039;'
};
return str.replace(/[&<>"']/g, m => map[m]);
}
// \u9875\u9762\u52A0\u8F7D\u5B8C\u6210\u540E\u521D\u59CB\u5316
init();
`;var ict=`
// \u6E32\u67D3\u914D\u7F6E\u9884\u89C8
let currentPreviewCategory = 'api';
function renderPreview() {
const preview = document.getElementById('preview-area');
const proxyConfigContainer = document.getElementById('proxy-config-container');
// \u4ECEAPI\u83B7\u53D6\u771F\u5B9E\u914D\u7F6E\u6570\u636E
fetch(buildApiUrl('/api/config'))
.then(response => {
const contentType = response.headers.get("content-type");
if (contentType && contentType.indexOf("application/json") === -1) {
// \u8FD4\u56DE\u6587\u672C\u4EE5\u4FBF\u540E\u7EED\u5904\u7406\uFF08\u4F8B\u5982\u663E\u793AHTML\u9519\u8BEF\u7684\u524D\u51E0\u4E2A\u5B57\u7B26\uFF09
return response.text().then(text => {
throw new Error('Expected JSON, got ' + contentType + '. Content: ' + text.substring(0, 50) + '...');
});
}
if (!response.ok) {
throw new Error('HTTP error! status: ' + response.status);
}
return response.json();
})
.then(config => {
// \u6210\u529F\u52A0\u8F7D\uFF0C\u9690\u85CF\u53CD\u4EE3\u914D\u7F6E\u6846
if(proxyConfigContainer) {
proxyConfigContainer.style.display = 'none';
}
// \u4F7F\u7528\u4ECEAPI\u83B7\u53D6\u7684\u5206\u7C7B\u73AF\u5883\u53D8\u91CF
const categorizedVars = config.categorizedEnvVars || {};
// \u6E32\u67D3\u5F53\u524D\u9009\u4E2D\u7684\u9884\u89C8\u5185\u5BB9
let html = '';
const items = categorizedVars[currentPreviewCategory];
if (items && items.length > 0) {
html += '<div class="preview-category">' +
'<h3>' + getCategoryName(currentPreviewCategory) + '</h3>';
items.forEach(item => {
const escapedValue = escapeHtml(item.value);
html += '<div class="preview-item">' +
'<div class="preview-item-content">' +
'<div class="preview-key"><strong>' + item.key + '</strong></div>' +
'<div class="preview-value">' + escapedValue + '</div>' +
'</div>' +
(item.description ? '<div class="text-gray font-size-12 margin-top-3">' + item.description + '</div>' : '') +
'</div>';
});
html += '</div>';
}
preview.innerHTML = html || '<p class="text-gray padding-20 text-center">\u6682\u65E0\u914D\u7F6E</p>';
})
.catch(error => {
console.error('Failed to load config for preview:', error);
// \u663E\u793A\u53CD\u4EE3\u914D\u7F6E\u6846
if(proxyConfigContainer) {
proxyConfigContainer.style.display = 'block';
// \u5982\u679C\u6709\u5DF2\u4FDD\u5B58\u7684URL\uFF0C\u586B\u5145\u5B83
const savedUrl = localStorage.getItem('logvar_api_base_url');
if(savedUrl) {
document.getElementById('custom-base-url').value = savedUrl;
}
}
preview.innerHTML = '<p class="text-red">\u52A0\u8F7D\u914D\u7F6E\u5931\u8D25: ' + error.message + '</p>';
addLog('\u52A0\u8F7D\u914D\u7F6E\u5931\u8D25: ' + error.message, 'error');
});
}
// \u5207\u6362\u9884\u89C8\u7C7B\u522B
function switchPreviewCategory(category, event = null) {
currentPreviewCategory = category;
// \u66F4\u65B0\u6309\u94AE\u72B6\u6001
const section = document.getElementById('preview-section');
if (section) {
section.querySelectorAll('.category-btn').forEach(b => b.classList.remove('active'));
}
if (event && event.target) {
event.target.classList.add('active');
}
renderPreview();
}
// \u83B7\u53D6\u7C7B\u522B\u540D\u79F0
function getCategoryName(category) {
const names = {
api: 'API\u914D\u7F6E',
source: '\u6E90\u914D\u7F6E',
match: '\u5339\u914D\u914D\u7F6E',
danmu: '\u5F39\u5E55\u914D\u7F6E',
cache: '\u7F13\u5B58\u914D\u7F6E',
system: '\u7CFB\u7EDF\u914D\u7F6E'
};
return names[category] || category;
}
`;var act=`
// \u65E5\u5FD7\u5168\u5C40\u8FC7\u6EE4\u72B6\u6001
let currentLogFilter = 'ALL';
// \u83B7\u53D6\u65E5\u5FD7\u7684\u4E25\u683C\u5F52\u5C5E\u5206\u7C7B
function getLogCategory(message) {
// \u5339\u914D\u884C\u9996\u7684\u8FDE\u7EED\u65B9\u62EC\u53F7\u6807\u7B7E (\u9700\u53CC\u91CD\u8F6C\u4E49)
const prefixMatch = message.match(/^(?:\\s*\\[[^\\]]+\\])+/);
if (!prefixMatch) {
// \u65E0\u6807\u7B7E\u884C\u4F5C\u4E3A\u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u884C\u7684\u5206\u7C7B
return '_inherit_';
}
const tags = prefixMatch[0].match(/\\[([^\\]]+)\\]/g).map(t => t.replace(/[\\[\\]]/g, '').trim());
// \u5F52\u7C7B\u5408\u5E76\u5DE5\u5177\u65E5\u5FD7
// \u53EA\u8981\u884C\u9996\u5305\u542B Merge\uFF0C\u6216\u8005\u5305\u542B\u5408\u5E76\u6620\u5C04\u72EC\u6709\u7684\u5B50\u6807\u7B7E\uFF0C\u5F3A\u884C\u5C06\u5176\u6536\u675F\u81F3 Merge \u4E13\u5C5E\u5206\u7C7B
if (tags.some(t => t.toLowerCase() === 'merge' || ['\u5339\u914D', '\u843D\u5355', '\u8865\u5168', '\u5408\u96C6', '\u7565\u8FC7', 'Merge-Check'].some(key => t.includes(key)))) {
return 'merge';
}
// \u6392\u9664\u65F6\u95F4\u6233\u548C\u5E95\u5C42\u65E0\u610F\u4E49\u6807\u7B7E\uFF0C\u6293\u53D6\u771F\u6B63\u7684\u4E1A\u52A1\u6E90
const validTags = tags.filter(t =>
!/^\\d{4}-\\d{2}-\\d{2}[T ]/.test(t) && // \u6392\u9664 ISO \u65F6\u95F4\u6233\u683C\u5F0F\uFF08YYYY-MM-DDTHH:MM:SS\uFF09
!/^\\d{2}:\\d{2}(:\\d{2})?$/.test(t) && // \u6392\u9664 HH:MM:SS \u65F6\u95F4\u683C\u5F0F\uFF08JSON \u7EED\u884C\uFF09
!t.includes('08:00') &&
t !== '\u8BF7\u6C42\u6A21\u62DF' &&
t !== '\u7F51\u7EDC\u8BF7\u6C42'
);
if (validTags.length === 0) {
// \u5168\u90E8\u6807\u7B7E\u88AB\u65F6\u95F4\u6233\u7B49\u8FC7\u6EE4\u89C4\u5219\u6392\u9664\uFF0C\u4F5C\u4E3A\u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u884C\u7684\u5206\u7C7B
return '_inherit_';
}
// \u7EDF\u4E00\u8F6C\u6362\u4E3A\u5C0F\u5199\uFF0C\u786E\u4FDD\u5927\u5C0F\u5199\u53D8\u4F53(\u5982 Bahamut \u548C bahamut)\u6536\u675F\u81F3\u540C\u4E00\u5185\u90E8\u6807\u8BC6\u7B26
let category = validTags[0].toLowerCase();
// \u6807\u7B7E\u5F52\u4E00\u5316\uFF1A\u5C06\u53D8\u4F53\u6807\u7B7E\u6620\u5C04\u5230\u6807\u51C6\u5206\u7C7B
const normalizationMap = {
'vod fastest mode': 'vod',
'custom source': 'custom',
'bilibili-proxy': 'bilibili',
'tmdb-source': 'tmdb',
'path check': 'system',
'path fix': 'system',
'base': 'system',
'fongmi': 'system',
};
if (normalizationMap[category]) {
category = normalizationMap[category];
}
return category;
}
// \u65E5\u5FD7\u76F8\u5173
function addLog(message, type = 'info') {
const timestamp = new Date().toLocaleTimeString();
logs.push({ timestamp, message, type });
if (logs.length > 100) logs.shift();
renderLogs();
}
function renderLogs() {
const container = document.getElementById('log-container');
const filterContainer = document.getElementById('log-filters') || createFilterContainer();
let filteredLogs = logs;
if (currentLogFilter !== 'ALL') {
// \u91C7\u7528\u4E25\u683C\u5F52\u5C5E\u6821\u9A8C\uFF0C\u540C\u65F6\u652F\u6301\u7EED\u884C\u4E0A\u4E0B\u6587\u7EE7\u627F
let lastCategory = 'system';
filteredLogs = logs.filter(log => {
let category = getLogCategory(log.message);
if (category === '_inherit_') {
// \u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u4E2A\u660E\u786E\u5206\u7C7B\u884C
category = lastCategory;
} else {
lastCategory = category;
}
return category === currentLogFilter;
});
}
container.innerHTML = filteredLogs.map(log => {
let highlightedMessage = log.message;
// \u884C\u9996\u8FDE\u7EED\u6807\u7B7E\u9AD8\u4EAE (\u9700\u53CC\u91CD\u8F6C\u4E49)
const prefixMatch = log.message.match(/^(?:\\s*\\[[^\\]]+\\])+/);
if (prefixMatch) {
const prefix = prefixMatch[0];
const rest = log.message.slice(prefix.length);
const coloredPrefix = prefix.replace(/\\[([^\\]]+)\\]/g, '<span class="log-tag">[$1]</span>');
highlightedMessage = coloredPrefix + rest;
}
return \`<div class="log-entry \${log.type}">[\${log.timestamp}] \${highlightedMessage}</div>\`;
}).join('');
container.scrollTop = container.scrollHeight;
updateFilterUI();
}
function createFilterContainer() {
const controls = document.querySelector('.log-controls');
const filterDiv = document.createElement('div');
filterDiv.id = 'log-filters';
filterDiv.className = 'log-filters-container';
controls.parentNode.insertBefore(filterDiv, document.getElementById('log-container'));
return filterDiv;
}
// \u6807\u7B7E\u663E\u793A\u987A\u5E8F\uFF1AALL \u2192 \u7CFB\u7EDF \u2192 \u5DE5\u5177 \u2192 \u6E90\uFF0C\u7EC4\u5185\u5B57\u6BCD\u5E8F
const tagGroupOrder = [
['system', 'ai'],
['utils', 'cache', 'merge'],
['360kan', 'aiyifan', 'animeko', 'bahamut', 'bilibili', 'custom', 'dandan', 'douban', 'hanjutv', 'iqiyi', 'leshi', 'maiduidui', 'mango', 'migu', 'other', 'renren', 'sohu', 'tencent', 'tmdb', 'vod', 'xigua', 'youku'],
];
const tagOrderMap = {};
tagGroupOrder.forEach((group, gi) => group.forEach((tag, ti) => tagOrderMap[tag] = gi * 1000 + ti));
function updateFilterUI() {
const filterContainer = document.getElementById('log-filters');
let html = \`<button class="filter-btn \${currentLogFilter === 'ALL' ? 'active' : ''}" onclick="setLogFilter('ALL')">ALL</button>\`;
const currentTags = new Set();
let lastCategory = 'system';
logs.forEach(log => {
let category = getLogCategory(log.message);
// \u7EED\u884C\u7EE7\u627F\u4E0A\u4E00\u4E2A\u660E\u786E\u5206\u7C7B\u884C
if (category === '_inherit_') {
category = lastCategory;
} else {
lastCategory = category;
}
// \u6240\u6709\u5206\u7C7B\u6807\u7B7E\u5747\u751F\u6210\u7B5B\u9009\u6309\u94AE
currentTags.add(category);
});
[...currentTags].sort((a, b) => {
const ai = tagOrderMap[a] ?? 99999, bi = tagOrderMap[b] ?? 99999;
return ai !== bi ? ai - bi : a.localeCompare(b);
}).forEach(tag => {
html += \`<button class="filter-btn \${currentLogFilter === tag ? 'active' : ''}" onclick="setLogFilter('\${tag}')">\${tag}</button>\`;
});
filterContainer.innerHTML = html;
}
window.setLogFilter = function(tag) {
currentLogFilter = tag;
renderLogs();
};
// \u4ECEAPI\u83B7\u53D6\u771F\u5B9E\u65E5\u5FD7\u6570\u636E
async function fetchRealLogs() {
try {
// \u65E5\u5FD7\u67E5\u770B\u4F7F\u7528\u666E\u901Atoken\u8BBF\u95EE\uFF0C\u4E0D\u9700\u8981admin token
const response = await fetch(buildApiUrl('/api/logs')); // \u4E0D\u4F7F\u7528admin token
if (!response.ok) {
throw new Error(\`HTTP error! status: \${response.status}\`);
}
const logText = await response.text();
// \u89E3\u6790\u65E5\u5FD7\u6587\u672C\u4E3A\u6570\u7EC4
const logLines = logText.split('\\n').filter(line => line.trim() !== '');
// \u8F6C\u6362\u4E3Alogs\u6570\u7EC4\u683C\u5F0F
logs = logLines.map(line => {
// \u89E3\u6790\u65E5\u5FD7\u884C\uFF0C\u63D0\u53D6\u65F6\u95F4\u6233\u3001\u7EA7\u522B\u548C\u6D88\u606F
const match = line.match(/\\[([^\\]]+)\\] (\\w+): (.*)/);
if (match) {
return {
timestamp: match[1],
type: match[2],
message: match[3]
};
}
// \u5982\u679C\u65E0\u6CD5\u89E3\u6790\uFF0C\u8FD4\u56DE\u539F\u59CB\u884C
return {
timestamp: new Date().toLocaleTimeString(),
type: 'info',
message: line
};
});
renderLogs();
} catch (error) {
console.error('Failed to fetch logs:', error);
addLog(\`\u83B7\u53D6\u65E5\u5FD7\u5931\u8D25: \${error.message}\`, 'error');
}
}
function refreshLogs() {
// \u4ECEAPI\u83B7\u53D6\u771F\u5B9E\u65E5\u5FD7\u6570\u636E
fetchRealLogs();
}
async function clearLogs() {
// \u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E
const configCheck = await checkDeployPlatformConfig();
if (!configCheck.success) {
customAlert(configCheck.message);
return;
}
customConfirm('\u786E\u5B9A\u8981\u6E05\u7A7A\u6240\u6709\u65E5\u5FD7\u5417?', '\u6E05\u7A7A\u786E\u8BA4').then(async confirmed => {
if (confirmed) {
try {
const response = await fetch(buildApiUrl('/api/logs/clear', true), { // \u4F7F\u7528admin token
method: 'POST',
headers: {
'Content-Type': 'application/json'
}
});
if (!response.ok) {
throw new Error(\`HTTP error! status: \${response.status}\`);
}
const result = await response.json();
if (result.success) {
// \u6E05\u7A7A\u524D\u7AEF\u663E\u793A\u7684\u65E5\u5FD7
logs = [];
renderLogs();
addLog('\u65E5\u5FD7\u5DF2\u6E05\u7A7A', 'warn');
} else {
addLog(\`\u6E05\u7A7A\u65E5\u5FD7\u5931\u8D25: \${result.message}\`, 'error');
}
} catch (error) {
console.error('Failed to clear logs:', error);
addLog(\`\u6E05\u7A7A\u65E5\u5FD7\u5931\u8D25: \${error.message}\`, 'error');
}
}
});
}
// JSON\u9AD8\u4EAE\u51FD\u6570
function highlightJSON(obj) {
let json = JSON.stringify(obj, null, 2);
// \u8F6C\u4E49HTML\u7279\u6B8A\u5B57\u7B26
json = json.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');
// \u9AD8\u4EAEJSON\u8BED\u6CD5
return json.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(s*:)?|\b(true|false|null)\b|-?d+(?:.d*)?(?:[eE][+-]?d+)?)/g, function (match) {
let cls = 'number';
if (/^"/.test(match)) {
if (/:$/.test(match)) {
cls = 'key';
} else {
cls = 'string';
}
} else if (/true|false/.test(match)) {
cls = 'boolean';
} else if (/null/.test(match)) {
cls = 'null';
}
return '<span class="' + cls + '">' + match + '</span>';
});
}
`;var oct=`
// API \u914D\u7F6E
const apiConfigs = {
searchAnime: {
name: '\u641C\u7D22\u52A8\u6F2B',
method: 'GET',
path: '/api/v2/search/anime',
params: [
{ name: 'keyword', label: '\u5173\u952E\u8BCD \u6216 \u64AD\u653E\u94FE\u63A5URL', type: 'text', required: true, placeholder: '\u793A\u4F8B: \u751F\u4E07\u7269 \u6216 http://v.qq.com/x/cover/rjae621myqca41h/j0032ubhl9s.html' }
]
},
searchEpisodes: {
name: '\u641C\u7D22\u5267\u96C6',
method: 'GET',
path: '/api/v2/search/episodes',
params: [
{ name: 'anime', label: '\u52A8\u6F2B\u540D\u79F0', type: 'text', required: true, placeholder: '\u793A\u4F8B: \u751F\u4E07\u7269' },
{ name: 'episode', label: '\u96C6', type: 'text', required: false, placeholder: '\u793A\u4F8B: 1, movie' }
]
},
matchAnime: {
name: '\u5339\u914D\u52A8\u6F2B',
method: 'POST',
path: '/api/v2/match',
params: [
{ name: 'fileName', label: '\u6587\u4EF6\u540D', type: 'text', required: true, placeholder: '\u793A\u4F8B: \u751F\u4E07\u7269 S02E08, \u65E0\u5FE7\u6E21.S02E08.2160p.WEB-DL.H265.DDP.5.1, \u7231\u60C5\u516C\u5BD3.ipartment.2009.S02E08.H.265.25fps.mkv, \u4EB2\u7231\u7684X S02E08, \u5B87\u5B99Marry Me? S02E08' }
]
},
getBangumi: {
name: '\u83B7\u53D6\u756A\u5267\u8BE6\u60C5',
method: 'GET',
path: '/api/v2/bangumi/:animeId',
params: [
{ name: 'animeId', label: '\u52A8\u6F2BID', type: 'text', required: true, placeholder: '\u793A\u4F8B: 236379' }
]
},
getComment: {
name: '\u83B7\u53D6\u5F39\u5E55',
method: 'GET',
path: '/api/v2/comment/:commentId',
params: [
{ name: 'commentId', label: '\u5F39\u5E55ID', type: 'text', required: true, placeholder: '\u793A\u4F8B: 10009' },
{ name: 'format', label: '\u683C\u5F0F', type: 'select', required: false, placeholder: '\u53EF\u9009: json\u6216xml', options: ['json', 'xml'] },
{ name: 'duration', label: '\u9644\u5E26\u65F6\u957F', type: 'select', required: false, placeholder: '\u53EF\u9009: true\u6216false', options: ['true', 'false'] },
{ name: 'segmentflag', label: '\u5206\u7247\u6807\u5FD7', type: 'select', required: false, placeholder: '\u53EF\u9009: true\u6216false', options: ['true', 'false'] }
]
},
getSegmentComment: {
name: '\u83B7\u53D6\u5206\u7247\u5F39\u5E55',
method: 'POST',
path: '/api/v2/segmentcomment',
params: [
{ name: 'format', label: '\u683C\u5F0F', type: 'select', required: false, placeholder: '\u53EF\u9009: json\u6216xml', options: ['json', 'xml'] },
],
hasBody: true,
bodyType: 'json'
}
};
// \u5F39\u5E55\u6D4B\u8BD5\u5168\u5C40\u72B6\u6001
let danmuTestState = {
allComments: [],
filteredComments: [],
currentFilter: 'all',
displayedCount: 0,
pageSize: 100,
currentEpisodeId: null,
currentTitle: '',
currentDuration: 0,
currentCallTrace: null,
currentManualSearchCallTraceBase: null,
currentManualEpisodeCallTraceBase: null,
nextDanmuRequestId: 0,
activeDanmuRequestId: 0,
nextDanmuFlowRequestId: 0,
activeDanmuFlowRequestId: 0,
nextManualBangumiRequestId: 0,
activeManualBangumiRequestId: 0
};
// \u521D\u59CB\u5316\u63A5\u53E3\u8C03\u8BD5\u754C\u9762
function initApiTestInterface() {
const apiSelect = document.getElementById('api-select');
if (apiSelect) {
apiSelect.addEventListener('keypress', function(event) {
if (event.key === 'Enter') { loadApiParams(); }
});
}
const autoInput = document.getElementById('auto-match-filename');
if (autoInput) {
autoInput.addEventListener('keypress', function(event) {
if (event.key === 'Enter') { autoMatchTest(); }
});
}
const manualInput = document.getElementById('manual-search-keyword');
if (manualInput) {
manualInput.addEventListener('keypress', function(event) {
if (event.key === 'Enter') { manualSearchAnime(); }
});
}
}
// \u4E3A\u53C2\u6570\u8F93\u5165\u6846\u6DFB\u52A0\u56DE\u8F66\u4E8B\u4EF6\u76D1\u542C
function attachEnterEventToParams() {
// \u5EF6\u8FDF\u6267\u884C\uFF0C\u786E\u4FDDDOM\u5143\u7D20\u5DF2\u7ECF\u6E32\u67D3
setTimeout(() => {
// \u83B7\u53D6\u6240\u6709\u53C2\u6570\u8F93\u5165\u6846
const paramInputs = document.querySelectorAll('#params-form input[type="text"], #params-form textarea, #params-form select');
paramInputs.forEach(input => {
// \u79FB\u9664\u4E4B\u524D\u7684\u4E8B\u4EF6\u76D1\u542C\u5668\uFF08\u907F\u514D\u91CD\u590D\u7ED1\u5B9A\uFF09
input.removeEventListener('keypress', handleParamInputEnter);
// \u6DFB\u52A0\u65B0\u7684\u4E8B\u4EF6\u76D1\u542C\u5668
input.addEventListener('keypress', handleParamInputEnter);
});
}, 100);
}
function updateCommentDurationFieldVisibility() {
const apiSelect = document.getElementById('api-select');
const durationGroup = document.querySelector('#params-form [data-param-name="duration"]');
const durationInput = document.getElementById('param-duration');
const formatInput = document.getElementById('param-format');
if (!durationGroup) return;
const isCommentApi = apiSelect && apiSelect.value === 'getComment';
const formatValue = formatInput ? formatInput.value.toLowerCase() : '';
const shouldShowDuration = isCommentApi && (formatValue === '' || formatValue === 'json');
durationGroup.style.display = shouldShowDuration ? '' : 'none';
if (!shouldShowDuration && durationInput) {
durationInput.value = '';
}
}
function bindCommentDurationFieldVisibility() {
const formatInput = document.getElementById('param-format');
if (!formatInput) return;
formatInput.addEventListener('change', updateCommentDurationFieldVisibility);
updateCommentDurationFieldVisibility();
}
// \u5904\u7406\u53C2\u6570\u8F93\u5165\u6846\u7684\u56DE\u8F66\u4E8B\u4EF6
function handleParamInputEnter(event) {
if (event.key === 'Enter') {
// \u89E6\u53D1\u6D4B\u8BD5API\u6309\u94AE\u7684\u70B9\u51FB\u4E8B\u4EF6
const testButton = document.querySelector('#api-params .btn-success');
if (testButton) {
testButton.click();
}
}
}
// \u63A5\u53E3\u8C03\u8BD5\u76F8\u5173
function loadApiParams() {
const select = document.getElementById('api-select');
const apiKey = select.value;
const paramsDiv = document.getElementById('api-params');
const formDiv = document.getElementById('params-form');
if (!apiKey) {
paramsDiv.style.display = 'none';
return;
}
const config = apiConfigs[apiKey];
paramsDiv.style.display = 'block';
let html = '';
// \u6DFB\u52A0\u67E5\u8BE2\u53C2\u6570\u90E8\u5206
if (config.params && config.params.length > 0) {
html += '<div class="params-section">';
html += '<h4>\u67E5\u8BE2\u53C2\u6570</h4>';
html += config.params.map(param => {
if (param.type === 'select') {
// \u4E3Aselect\u7C7B\u578B\u53C2\u6570\u6DFB\u52A0\u9ED8\u8BA4\u9009\u9879
let optionsHtml = '<option value="">-- \u8BF7\u9009\u62E9 --</option>';
if (param.options) {
optionsHtml += param.options.map(opt => \`<option value="\${opt}">\${opt}</option>\`).join('');
}
return \`
<div class="form-group" data-param-name="\${param.name}">
<label>\${param.label}\${param.required ? ' *' : ''}</label>
<select id="param-\${param.name}">
\${optionsHtml}
</select>
\${param.placeholder ? \`<div class="form-help">\${param.placeholder}</div>\` : ''}
</div>
\`;
}
// \u4F7F\u7528placeholder\u5C5E\u6027\u663E\u793A\u793A\u4F8B\u53C2\u6570
const placeholder = param.placeholder ? param.placeholder : "\u8BF7\u8F93\u5165" + param.label;
return \`
<div class="form-group" data-param-name="\${param.name}">
<label>\${param.label}\${param.required ? ' *' : ''}</label>
<input type="\${param.type}" id="param-\${param.name}" placeholder="\${placeholder}" \${param.required ? 'required' : ''}>
</div>
\`;
}).join('');
html += '</div>';
}
// \u6DFB\u52A0\u8BF7\u6C42\u4F53\u90E8\u5206\uFF08\u5982\u679C\u63A5\u53E3\u6709\u8BF7\u6C42\u4F53\uFF09
if (config.hasBody) {
html += '<div class="body-section">';
html += '<h4>\u8BF7\u6C42\u4F53</h4>';
html += \`<div class="form-group">
<label>\u8BF7\u6C42\u4F53\u5185\u5BB9 * (JSON\u683C\u5F0F)</label>
<textarea id="body-content" rows="6" placeholder='\u8F93\u5165JSON\u683C\u5F0F\u7684\u8BF7\u6C42\u4F53\uFF0C\u4F8B\u5982\uFF1A{"type": "qq","segment_start":0,"segment_end":30000,"url":"https://dm.video.qq.com/barrage/segment/j0032ubhl9s/t/v1/0/30000"}'></textarea>
<div class="form-help">\u8F93\u5165JSON\u683C\u5F0F\u7684\u8BF7\u6C42\u4F53\u5185\u5BB9</div>
</div>\`;
html += '</div>';
}
if (!html) {
html = '<p class="text-gray">\u6B64\u63A5\u53E3\u65E0\u9700\u53C2\u6570</p>';
}
formDiv.innerHTML = html;
// \u4E3A\u53C2\u6570\u8F93\u5165\u6846\u6DFB\u52A0\u56DE\u8F66\u4E8B\u4EF6\u76D1\u542C
attachEnterEventToParams();
bindCommentDurationFieldVisibility();
}
function testApi() {
const select = document.getElementById('api-select');
const apiKey = select.value;
const sendButton = document.querySelector('#api-params .btn-success'); // \u83B7\u53D6\u53D1\u9001\u8BF7\u6C42\u6309\u94AE
if (!apiKey) {
addLog('\u8BF7\u5148\u9009\u62E9\u63A5\u53E3', 'error');
return;
}
// \u8BBE\u7F6E\u6309\u94AE\u4E3A\u52A0\u8F7D\u72B6\u6001
const originalText = sendButton.innerHTML;
sendButton.innerHTML = '<span class="loading-spinner-small"></span>';
sendButton.disabled = true;
const config = apiConfigs[apiKey];
const params = {};
// \u83B7\u53D6\u67E5\u8BE2\u53C2\u6570
if (config.params) {
config.params.forEach(param => {
const value = document.getElementById(\`param-\${param.name}\`).value;
if (value) params[param.name] = value;
});
}
addLog(\`\u8C03\u7528\u63A5\u53E3: \${config.name} (\${config.method} \${config.path})\`, 'info');
addLog(\`\u8BF7\u6C42\u53C2\u6570: \${JSON.stringify(params)}\`, 'info');
// \u6784\u5EFA\u8BF7\u6C42URL
let url = config.path;
// \u68C0\u67E5\u662F\u5426\u4E3A\u8DEF\u5F84\u53C2\u6570\u63A5\u53E3
const isPathParameterApi = config.path.includes(':');
if (isPathParameterApi) {
// \u5904\u7406\u8DEF\u5F84\u53C2\u6570\u63A5\u53E3 (/api/v2/comment \u548C /api/v2/bangumi)
// \u5148\u5206\u79BB\u8DEF\u5F84\u53C2\u6570\u548C\u67E5\u8BE2\u53C2\u6570
const pathParams = {};
const queryParams = {};
// \u5206\u7C7B\u53C2\u6570
for (const [key, value] of Object.entries(params)) {
// \u68C0\u67E5\u53C2\u6570\u662F\u5426\u4E3A\u8DEF\u5F84\u53C2\u6570
if (config.path.includes(':' + key)) {
pathParams[key] = value;
} else {
// \u5176\u4ED6\u53C2\u6570\u4F5C\u4E3A\u67E5\u8BE2\u53C2\u6570
queryParams[key] = value;
}
}
// \u66FF\u6362\u8DEF\u5F84\u53C2\u6570
for (const [key, value] of Object.entries(pathParams)) {
url = url.replace(':' + key, encodeURIComponent(value));
}
// \u6DFB\u52A0\u67E5\u8BE2\u53C2\u6570
if (config.method === 'GET' && Object.keys(queryParams).length > 0) {
const queryString = new URLSearchParams(queryParams).toString();
url = url + '?' + queryString;
}
} else {
// \u4FDD\u6301\u539F\u6765\u7684\u903B\u8F91\uFF0C\u7528\u4E8E search/anime \u7B49\u63A5\u53E3
if (config.method === 'GET') {
const queryString = new URLSearchParams(params).toString();
url = url + '?' + queryString;
} else if (config.method === 'POST' && apiKey === 'getSegmentComment') {
// \u5BF9\u4E8E getSegmentComment \u63A5\u53E3\uFF0C\u9700\u8981\u5C06 format \u53C2\u6570\u6DFB\u52A0\u5230 URL \u67E5\u8BE2\u53C2\u6570\u4E2D
const queryParams = {};
if (params.format) {
queryParams.format = params.format;
}
if (Object.keys(queryParams).length > 0) {
const queryString = new URLSearchParams(queryParams).toString();
url = url + '?' + queryString;
}
}
}
// \u914D\u7F6E\u8BF7\u6C42\u9009\u9879
const requestOptions = {
method: config.method,
headers: {
'Content-Type': 'application/json'
}
};
// \u5904\u7406\u8BF7\u6C42\u4F53
if (config.hasBody) {
// \u4ECE\u8BF7\u6C42\u4F53\u8F93\u5165\u6846\u83B7\u53D6\u5185\u5BB9
const bodyContent = document.getElementById('body-content').value;
if (bodyContent) {
try {
// \u5C1D\u8BD5\u89E3\u6790\u7528\u6237\u8F93\u5165\u7684JSON
const bodyData = JSON.parse(bodyContent);
requestOptions.body = JSON.stringify(bodyData);
} catch (e) {
addLog('\u8BF7\u6C42\u4F53JSON\u683C\u5F0F\u9519\u8BEF: ' + e.message, 'error');
sendButton.innerHTML = originalText;
sendButton.disabled = false;
return;
}
} else {
// \u5982\u679C\u6CA1\u6709\u5728\u8BF7\u6C42\u4F53\u8F93\u5165\u6846\u4E2D\u8F93\u5165\u5185\u5BB9\uFF0C\u5219\u4F7F\u7528\u53C2\u6570\u6784\u5EFA\u8BF7\u6C42\u4F53\uFF08\u5411\u540E\u517C\u5BB9\uFF09
if (apiKey === 'getSegmentComment') {
// \u5BF9\u4E8E getSegmentComment \u63A5\u53E3\uFF0C\u521B\u5EFA segment \u5BF9\u8C61
const segmentData = { url: params.url };
if (params.format) {
segmentData.format = params.format;
}
requestOptions.body = JSON.stringify(segmentData);
} else {
requestOptions.body = JSON.stringify(params);
}
}
} else if (config.method === 'POST') {
// \u5BF9\u4E8E\u6CA1\u6709\u7279\u6B8A\u8BF7\u6C42\u4F53\u914D\u7F6E\u7684POST\u63A5\u53E3\uFF0C\u4F7F\u7528\u53C2\u6570\u6784\u5EFA\u8BF7\u6C42\u4F53
requestOptions.body = JSON.stringify(params);
}
// \u53D1\u9001\u771F\u5B9EAPI\u8BF7\u6C42
fetch(buildApiUrl(url), requestOptions)
.then(response => {
if (!response.ok) {
throw new Error(\`HTTP error! status: \${response.status}\`);
}
// \u68C0\u67E5format\u53C2\u6570\u4EE5\u786E\u5B9A\u5982\u4F55\u5904\u7406\u54CD\u5E94
const formatParam = params.format || 'json';
if (formatParam.toLowerCase() === 'xml') {
// \u5BF9\u4E8EXML\u683C\u5F0F\uFF0C\u8FD4\u56DE\u6587\u672C\u5185\u5BB9
return response.text().then(text => ({
data: text,
format: 'xml'
}));
} else {
// \u5BF9\u4E8EJSON\u683C\u5F0F\u6216\u5176\u4ED6\u60C5\u51B5\uFF0C\u8FD4\u56DEJSON\u5BF9\u8C61
return response.json().then(json => ({
data: json,
format: 'json'
}));
}
})
.then(result => {
// \u663E\u793A\u54CD\u5E94\u7ED3\u679C
document.getElementById('api-response-container').style.display = 'block';
if (result.format === 'xml') {
// \u663E\u793AXML\u54CD\u5E94
document.getElementById('api-response').textContent = result.data;
document.getElementById('api-response').className = 'api-response xml'; // \u4F7F\u7528XML\u4E13\u7528\u6837\u5F0F\u7C7B
} else {
// \u663E\u793AJSON\u54CD\u5E94
document.getElementById('api-response').className = 'json-response';
document.getElementById('api-response').innerHTML = highlightJSON(result.data);
}
addLog('\u63A5\u53E3\u8C03\u7528\u6210\u529F', 'success');
})
.catch(error => {
// \u5904\u7406\u9519\u8BEF
const errorMessage = \`API\u8BF7\u6C42\u5931\u8D25: \${error.message}\`;
document.getElementById('api-response-container').style.display = 'block';
document.getElementById('api-response').textContent = errorMessage;
// \u6DFB\u52A0\u9519\u8BEF\u4FE1\u606F\u7684CSS\u7C7B
document.getElementById('api-response').className = 'error-response';
addLog(errorMessage, 'error');
})
.finally(() => {
// \u6062\u590D\u6309\u94AE\u72B6\u6001
sendButton.innerHTML = originalText;
sendButton.disabled = false;
});
}
// =====================
// \u6807\u7B7E\u9875\u5207\u6362
// =====================
function switchApiTopTab(tab, event) {
document.querySelectorAll('.api-top-tab').forEach(btn => btn.classList.remove('active'));
document.querySelectorAll('.api-tab-content').forEach(el => el.classList.remove('active'));
event.target.classList.add('active');
if (tab === 'debug') {
document.getElementById('api-debug-content').classList.add('active');
} else {
document.getElementById('danmu-test-content').classList.add('active');
}
}
function switchDanmuTestTab(tab, event) {
document.querySelectorAll('.danmu-test-tab').forEach(btn => btn.classList.remove('active'));
document.querySelectorAll('.danmu-test-panel').forEach(el => el.classList.remove('active'));
event.target.classList.add('active');
if (tab === 'auto') {
document.getElementById('auto-match-panel').classList.add('active');
} else {
document.getElementById('manual-match-panel').classList.add('active');
}
}
// =====================
// \u5DE5\u5177\u51FD\u6570
// =====================
function decColorToHex(dec) {
const n = parseInt(dec) || 16777215;
return '#' + n.toString(16).padStart(6, '0');
}
function parseDanmuMode(p) {
const parts = p.split(',');
return parseInt(parts[1]) || 1;
}
function parseDanmuColor(p) {
const parts = p.split(',');
return parseInt(parts[2]) || 16777215;
}
function parseDanmuTime(p) {
return parseFloat(p.split(',')[0]) || 0;
}
function getModeLabel(mode) {
switch (mode) {
case 4: return '\u5E95\u90E8';
case 5: return '\u9876\u90E8';
default: return '\u6EDA\u52A8';
}
}
function formatDuration(seconds) {
const s = Math.floor(seconds);
const h = Math.floor(s / 3600);
const m = Math.floor((s % 3600) / 60);
const sec = s % 60;
if (h > 0) return h + ':' + String(m).padStart(2,'0') + ':' + String(sec).padStart(2,'0');
return m + ':' + String(sec).padStart(2,'0');
}
function getValidDanmuTimes(comments) {
return comments
.map(c => c.t !== undefined ? Number(c.t) : parseDanmuTime(c.p))
.filter(time => Number.isFinite(time) && time >= 0)
.sort((a, b) => a - b);
}
function getPercentileValue(sortedValues, percentile) {
if (!sortedValues.length) return 0;
const safePercentile = Math.min(Math.max(percentile, 0), 1);
const index = Math.floor((sortedValues.length - 1) * safePercentile);
return sortedValues[index] || 0;
}
function getMedian(values) {
if (!values.length) return 0;
const sorted = [...values].sort((a, b) => a - b);
const mid = Math.floor(sorted.length / 2);
return sorted.length % 2 === 0 ? (sorted[mid - 1] + sorted[mid]) / 2 : sorted[mid];
}
function buildTailGapThreshold(sortedValues) {
if (sortedValues.length < 2) return 45;
const gaps = [];
const startIndex = Math.max(1, sortedValues.length - 80);
for (let i = startIndex; i < sortedValues.length; i++) {
const gap = sortedValues[i] - sortedValues[i - 1];
if (gap > 0) {
gaps.push(gap);
}
}
if (!gaps.length) return 45;
const sortedGaps = [...gaps].sort((a, b) => a - b);
const medianGap = getMedian(sortedGaps);
const p90Gap = getPercentileValue(sortedGaps, 0.9);
return Math.min(240, Math.max(45, medianGap * 12, p90Gap * 3));
}
function estimateVideoDurationFromComments(comments) {
const validTimes = getValidDanmuTimes(comments);
if (!validTimes.length) return 0;
if (validTimes.length < 200) return validTimes[validTimes.length - 1];
const p995Time = getPercentileValue(validTimes, 0.995);
const p998Time = getPercentileValue(validTimes, 0.998);
const gapThreshold = buildTailGapThreshold(validTimes);
const trimBaseline = p998Time + Math.max(90, gapThreshold * 2);
let endIndex = validTimes.length - 1;
while (endIndex > 0) {
let tailStartIndex = endIndex;
while (tailStartIndex > 0) {
const gap = validTimes[tailStartIndex] - validTimes[tailStartIndex - 1];
if (gap > gapThreshold) break;
tailStartIndex--;
}
const tailClusterSize = endIndex - tailStartIndex + 1;
const tailClusterSpan = validTimes[endIndex] - validTimes[tailStartIndex];
const previousGap = tailStartIndex > 0 ? validTimes[tailStartIndex] - validTimes[tailStartIndex - 1] : 0;
const isIsolatedTail = tailStartIndex > 0
&& tailClusterSize <= 2
&& tailClusterSpan <= 15
&& previousGap > gapThreshold;
if (!isIsolatedTail || validTimes[endIndex] <= trimBaseline) {
break;
}
endIndex = tailStartIndex - 1;
}
return Math.max(validTimes[Math.max(endIndex, 0)] || 0, p995Time);
}
function getEffectiveDuration(comments, explicitDuration) {
if (Number.isFinite(explicitDuration) && explicitDuration > 0) {
return explicitDuration;
}
return estimateVideoDurationFromComments(comments);
}
function setBtnLoading(btn, loading) {
if (!btn) return;
if (loading) {
btn._origText = btn.innerHTML;
btn.innerHTML = '<span class="loading-spinner-small"></span>';
btn.disabled = true;
} else {
btn.innerHTML = btn._origText || '\u6309\u94AE';
btn.disabled = false;
}
}
// \u901A\u7528\uFF1A\u663E\u793A\u6307\u5B9A\u9762\u677F\uFF0C\u9690\u85CF\u540C\u7EA7\u5176\u4ED6\u9762\u677F
function showDanmuView(showIds, hideIds) {
hideIds.forEach(id => { const el = document.getElementById(id); if (el) el.style.display = 'none'; });
showIds.forEach(id => { const el = document.getElementById(id); if (el) el.style.display = 'block'; });
}
// \u751F\u6210\u8FD4\u56DE\u6309\u94AEHTML
function backBtnHtml(text, onclick) {
return '<button class="btn btn-back" onclick="' + onclick + '">&larr; ' + escapeHtml(text) + '</button>';
}
function inlineJsString(value) {
return escapeHtml(JSON.stringify(String(value || '')));
}
function createDanmuCallTrace(mode, inputText) {
return {
mode: mode || 'manual',
inputText: inputText || '',
steps: [],
startedAt: performance.now()
};
}
function cloneDanmuCallTrace(trace) {
if (!trace) return null;
return {
mode: trace.mode,
inputText: trace.inputText,
startedAt: performance.now(),
steps: (trace.steps || []).map(step => Object.assign({}, step))
};
}
function createDanmuCallStep(step) {
return Object.assign({
name: '',
method: 'GET',
url: '',
params: '',
result: '',
elapsed: 0,
status: 'success'
}, step);
}
function addDanmuCallStep(trace, step) {
if (!trace) return;
trace.steps.push(createDanmuCallStep(step));
}
function finishDanmuCallStep(trace, startedAt, step) {
addDanmuCallStep(trace, Object.assign({}, step, {
elapsed: performance.now() - startedAt
}));
}
function finishDanmuCallFailure(trace, startedAt, step, error) {
const message = error && error.message ? error.message : String(error || '\u672A\u77E5\u9519\u8BEF');
finishDanmuCallStep(trace, startedAt, Object.assign({
status: 'error',
result: '\u5931\u8D25\uFF1A' + message
}, step));
}
function finishDanmuCallEmpty(trace, startedAt, step, message) {
finishDanmuCallStep(trace, startedAt, Object.assign({
status: 'empty',
result: message || '\u65E0\u7ED3\u679C'
}, step));
}
function safeDanmuApiPath(path) {
return String(path || '').replace(new RegExp('^/[^/]+/api/'), '/<TOKEN>/api/');
}
function renderDanmuCallTrace(trace) {
return '';
}
function getDanmuCallTraceTotalMs(trace) {
if (!trace || !Array.isArray(trace.steps) || trace.steps.length === 0) return 0;
return trace.steps.reduce((sum, step) => sum + (Number(step.elapsed) || 0), 0);
}
function renderDanmuCallFailure(trace, title, message, source) {
let html = '<div class="danmu-result-toolbar">';
if (source === 'manual-episode') {
html += backBtnHtml('\u8FD4\u56DE\u5217\u8868', 'backToEpisodeList()');
} else if (source === 'manual-anime') {
html += backBtnHtml('\u8FD4\u56DE\u641C\u7D22\u7ED3\u679C', 'backToManualSearch()');
}
html += '</div>';
html += '<div class="danmu-result-error">' + escapeHtml(title || '\u8C03\u7528\u5931\u8D25') + '\uFF1A' + escapeHtml(message || '\u8BF7\u6C42\u5931\u8D25') + '</div>';
html += renderDanmuCallTrace(trace);
return html;
}
function showDanmuCallTraceFailure(trace, title, message, source) {
const resultArea = document.getElementById('danmu-result-area');
if (!resultArea) return;
resultArea.innerHTML = renderDanmuCallFailure(trace, title, message, source);
resultArea.style.display = 'block';
}
function getDanmuCallTraceTotalSeconds(trace, fallbackSeconds) {
const totalMs = getDanmuCallTraceTotalMs(trace);
if (totalMs > 0) return (totalMs / 1000).toFixed(2);
return fallbackSeconds || '0.00';
}
function formatCallElapsed(ms) {
if (!Number.isFinite(ms)) return '--';
return ms >= 1000 ? (ms / 1000).toFixed(2) + 's' : Math.round(ms) + 'ms';
}
function startDanmuFlowRequest() {
const requestId = ++danmuTestState.nextDanmuFlowRequestId;
danmuTestState.activeDanmuFlowRequestId = requestId;
danmuTestState.activeManualBangumiRequestId = 0;
invalidateActiveDanmuRequest();
return requestId;
}
function isCurrentDanmuFlowRequest(requestId) {
return danmuTestState.activeDanmuFlowRequestId === requestId;
}
function startManualBangumiRequest() {
const requestId = ++danmuTestState.nextManualBangumiRequestId;
danmuTestState.activeManualBangumiRequestId = requestId;
danmuTestState.activeDanmuFlowRequestId = 0;
invalidateActiveDanmuRequest();
return requestId;
}
function isCurrentManualBangumiRequest(requestId) {
return danmuTestState.activeManualBangumiRequestId === requestId;
}
function invalidateActiveDanmuRequest() {
danmuTestState.activeDanmuRequestId = 0;
}
function setDanmuFlowButtonLoading(btn, requestId, loading) {
if (!btn) return;
if (loading) {
btn._danmuFlowRequestId = requestId;
setBtnLoading(btn, true);
return;
}
if (btn._danmuFlowRequestId === requestId) {
setBtnLoading(btn, false);
btn._danmuFlowRequestId = 0;
}
}
// =====================
// \u81EA\u52A8\u5339\u914D\u6D4B\u8BD5
// =====================
async function autoMatchTest() {
const fileName = document.getElementById('auto-match-filename').value.trim();
if (!fileName) { customAlert('\u8BF7\u8F93\u5165\u6587\u4EF6\u540D'); return; }
const flowRequestId = startDanmuFlowRequest();
const btn = document.getElementById('auto-match-btn');
setDanmuFlowButtonLoading(btn, flowRequestId, true);
document.getElementById('danmu-result-area').style.display = 'none';
addLog('\u81EA\u52A8\u5339\u914D\u6D4B\u8BD5: ' + fileName, 'info');
const trace = createDanmuCallTrace('auto', fileName);
danmuTestState.currentCallTrace = trace;
danmuTestState.currentManualSearchCallTraceBase = null;
danmuTestState.currentManualEpisodeCallTraceBase = null;
let matchStartedAt = 0;
try {
matchStartedAt = performance.now();
const resp = await fetch(buildApiUrl('/api/v2/match'), {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ fileName: fileName })
});
if (!resp.ok) throw new Error('HTTP ' + resp.status);
const data = await resp.json();
if (!isCurrentDanmuFlowRequest(flowRequestId)) return;
if (data.isMatched && data.matches && data.matches.length > 0) {
const best = data.matches[0];
const title = (best.animeTitle || '') + ' ' + (best.episodeTitle || '');
finishDanmuCallStep(trace, matchStartedAt, {
name: '\u5339\u914D',
method: 'POST',
url: '/api/v2/match',
params: '\u6587\u4EF6\u540D\uFF1A' + fileName,
result: '\u547D\u4E2D ' + data.matches.length + ' \u4E2A\u7ED3\u679C\uFF0CepisodeId: ' + best.episodeId
});
addLog('\u81EA\u52A8\u5339\u914D\u547D\u4E2D: ' + title + ' (\u5171' + data.matches.length + '\u4E2A\u7ED3\u679C\uFF0C\u53D6\u7B2C1\u4E2A)', 'success');
setDanmuFlowButtonLoading(btn, flowRequestId, false);
fetchDanmuForTest(best.episodeId, title, 'auto', trace);
return;
} else {
finishDanmuCallEmpty(trace, matchStartedAt, {
name: '\u5339\u914D',
method: 'POST',
url: '/api/v2/match',
params: '\u6587\u4EF6\u540D\uFF1A' + fileName
}, '\u672A\u5339\u914D\u5230\u4EFB\u4F55\u7ED3\u679C');
customAlert('\u672A\u5339\u914D\u5230\u4EFB\u4F55\u7ED3\u679C');
addLog('\u81EA\u52A8\u5339\u914D\u65E0\u7ED3\u679C', 'warn');
showDanmuCallTraceFailure(trace, '\u81EA\u52A8\u5339\u914D\u65E0\u7ED3\u679C', '\u672A\u5339\u914D\u5230\u4EFB\u4F55\u7ED3\u679C', 'auto');
}
} catch (e) {
if (!isCurrentDanmuFlowRequest(flowRequestId)) return;
finishDanmuCallFailure(trace, matchStartedAt || performance.now(), {
name: '\u5339\u914D',
method: 'POST',
url: '/api/v2/match',
params: '\u6587\u4EF6\u540D\uFF1A' + fileName
}, e);
customAlert('\u5339\u914D\u5931\u8D25: ' + e.message);
addLog('\u81EA\u52A8\u5339\u914D\u5931\u8D25: ' + e.message, 'error');
showDanmuCallTraceFailure(trace, '\u81EA\u52A8\u5339\u914D\u5931\u8D25', e.message, 'auto');
} finally {
setDanmuFlowButtonLoading(btn, flowRequestId, false);
}
}
// =====================
// \u624B\u52A8\u5339\u914D\u6D4B\u8BD5
// =====================
async function manualSearchAnime() {
const keyword = document.getElementById('manual-search-keyword').value.trim();
if (!keyword) { customAlert('\u8BF7\u8F93\u5165\u641C\u7D22\u5173\u952E\u5B57'); return; }
const flowRequestId = startDanmuFlowRequest();
const btn = document.getElementById('manual-search-btn');
setDanmuFlowButtonLoading(btn, flowRequestId, true);
document.getElementById('manual-anime-list').style.display = 'none';
document.getElementById('manual-episode-list').style.display = 'none';
document.getElementById('danmu-result-area').style.display = 'none';
addLog('\u624B\u52A8\u641C\u7D22: ' + keyword, 'info');
const trace = createDanmuCallTrace('manual', keyword);
danmuTestState.currentCallTrace = trace;
danmuTestState.currentManualSearchCallTraceBase = null;
danmuTestState.currentManualEpisodeCallTraceBase = null;
let searchStartedAt = 0;
let searchUrl = '';
try {
searchUrl = '/api/v2/search/anime?keyword=' + encodeURIComponent(keyword);
searchStartedAt = performance.now();
const resp = await fetch(buildApiUrl(searchUrl));
if (!resp.ok) throw new Error('HTTP ' + resp.status);
const data = await resp.json();
if (!isCurrentDanmuFlowRequest(flowRequestId)) return;
if (data.success && data.animes && data.animes.length > 0) {
finishDanmuCallStep(trace, searchStartedAt, {
name: '\u641C\u7D22',
method: 'GET',
url: searchUrl,
params: '\u5173\u952E\u8BCD\uFF1A' + keyword,
result: '\u627E\u5230 ' + data.animes.length + ' \u4E2A\u52A8\u6F2B'
});
danmuTestState.currentManualSearchCallTraceBase = cloneDanmuCallTrace(trace);
displayManualAnimeList(data.animes);
addLog('\u641C\u7D22\u5230 ' + data.animes.length + ' \u4E2A\u52A8\u6F2B', 'success');
} else {
finishDanmuCallEmpty(trace, searchStartedAt, {
name: '\u641C\u7D22',
method: 'GET',
url: searchUrl,
params: '\u5173\u952E\u8BCD\uFF1A' + keyword
}, '\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B');
customAlert('\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B');
addLog('\u641C\u7D22\u65E0\u7ED3\u679C', 'warn');
showDanmuCallTraceFailure(trace, '\u641C\u7D22\u65E0\u7ED3\u679C', '\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B', 'manual-search');
}
} catch (e) {
if (!isCurrentDanmuFlowRequest(flowRequestId)) return;
finishDanmuCallFailure(trace, searchStartedAt || performance.now(), {
name: '\u641C\u7D22',
method: 'GET',
url: searchUrl || '/api/v2/search/anime',
params: '\u5173\u952E\u8BCD\uFF1A' + keyword
}, e);
customAlert('\u641C\u7D22\u5931\u8D25: ' + e.message);
addLog('\u641C\u7D22\u5931\u8D25: ' + e.message, 'error');
showDanmuCallTraceFailure(trace, '\u641C\u7D22\u5931\u8D25', e.message, 'manual-search');
} finally {
setDanmuFlowButtonLoading(btn, flowRequestId, false);
}
}
function displayManualAnimeList(animes) {
const container = document.getElementById('manual-anime-list');
let html = '<h3 class="danmu-section-title danmu-section-title-spaced">\u641C\u7D22\u7ED3\u679C</h3><div class="anime-grid">';
animes.forEach(anime => {
const animeId = Number.parseInt(anime.animeId, 10);
if (!Number.isFinite(animeId)) return;
const img = escapeHtml(anime.imageUrl || 'https://placehold.co/150x200?text=No+Image');
html += '<div class="anime-item" onclick="manualGetBangumi(' + animeId + ')">';
html += '<img src="' + img + '" alt="' + escapeHtml(anime.animeTitle) + '" referrerpolicy="no-referrer" class="anime-item-img">';
html += '<h4 class="anime-title">' + escapeHtml(anime.animeTitle) + ' - \u5171' + (anime.episodeCount || '?') + '\u96C6</h4>';
html += '</div>';
});
html += '</div>';
container.innerHTML = html;
container.style.display = 'block';
}
async function manualGetBangumi(animeId) {
const detailRequestId = startManualBangumiRequest();
const requestTrace = danmuTestState.currentManualSearchCallTraceBase
? cloneDanmuCallTrace(danmuTestState.currentManualSearchCallTraceBase)
: createDanmuCallTrace('manual', String(animeId || ''));
danmuTestState.currentCallTrace = requestTrace;
addLog('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5: ' + animeId, 'info');
// \u9690\u85CF\u641C\u7D22\u7ED3\u679C\uFF0C\u663E\u793A\u5267\u96C6\u5217\u8868\u533A\u57DF
showDanmuView(['manual-episode-list'], ['manual-anime-list', 'danmu-result-area']);
let bangumiStartedAt = 0;
const bangumiUrl = '/api/v2/bangumi/' + animeId;
try {
bangumiStartedAt = performance.now();
const resp = await fetch(buildApiUrl(bangumiUrl));
if (!resp.ok) throw new Error('HTTP ' + resp.status);
const data = await resp.json();
if (!isCurrentManualBangumiRequest(detailRequestId)) return;
const episodes = data && data.bangumi && Array.isArray(data.bangumi.episodes) ? data.bangumi.episodes : [];
if (data.success && data.bangumi && episodes.length > 0) {
finishDanmuCallStep(requestTrace, bangumiStartedAt, {
name: '\u756A\u5267\u8BE6\u60C5',
method: 'GET',
url: bangumiUrl,
params: 'animeId: ' + animeId,
result: '\u83B7\u53D6\u5230 ' + episodes.length + ' \u4E2A\u5267\u96C6'
});
danmuTestState.currentManualEpisodeCallTraceBase = cloneDanmuCallTrace(requestTrace);
displayManualEpisodeList(data.bangumi.animeTitle, episodes);
addLog('\u83B7\u53D6\u5230 ' + episodes.length + ' \u4E2A\u5267\u96C6', 'success');
} else {
finishDanmuCallEmpty(requestTrace, bangumiStartedAt, {
name: '\u756A\u5267\u8BE6\u60C5',
method: 'GET',
url: bangumiUrl,
params: 'animeId: ' + animeId
}, '\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F');
customAlert('\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F');
showDanmuCallTraceFailure(requestTrace, '\u756A\u5267\u8BE6\u60C5\u65E0\u5267\u96C6', '\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F', 'manual-anime');
// \u6062\u590D\u641C\u7D22\u7ED3\u679C
showDanmuView(['manual-anime-list'], ['manual-episode-list']);
}
} catch (e) {
if (!isCurrentManualBangumiRequest(detailRequestId)) return;
finishDanmuCallFailure(requestTrace, bangumiStartedAt || performance.now(), {
name: '\u756A\u5267\u8BE6\u60C5',
method: 'GET',
url: bangumiUrl,
params: 'animeId: ' + animeId
}, e);
customAlert('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25: ' + e.message);
addLog('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25: ' + e.message, 'error');
showDanmuCallTraceFailure(requestTrace, '\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25', e.message, 'manual-anime');
showDanmuView(['manual-anime-list'], ['manual-episode-list']);
}
}
function displayManualEpisodeList(animeTitle, episodes) {
const container = document.getElementById('manual-episode-list');
let html = backBtnHtml('\u8FD4\u56DE\u641C\u7D22\u7ED3\u679C', 'backToManualSearch()');
html += '<h3 class="danmu-section-title danmu-section-title-spaced">\u5267\u96C6\u5217\u8868</h3>';
html += '<h4 class="text-yellow-gold">' + escapeHtml(animeTitle) + '</h4>';
// \u6DFB\u52A0\u8DF3\u8F6C\u5230\u6307\u5B9A\u96C6\u6570\u7684\u529F\u80FD
html += \`
<div class="jump-to-episode">
<span>\u8DF3\u8F6C\u5230\u7B2C</span>
<input type="number" id="jump-episode-input" class="jump-episode-input" placeholder="\u8F93\u5165\u96C6\u6570" min="1">
<span>\u96C6</span>
<button class="btn btn-primary btn-sm jump-episode-btn" onclick="jumpToEpisode()">\u8DF3\u8F6C</button>
<span class="jump-episode-total">\u5171\${episodes.length}\u96C6</span>
</div>\`;
html += '<div class="episode-list-container">';
episodes.forEach(ep => {
const episodeId = Number.parseInt(ep.episodeId, 10);
const episodeNumber = Number.parseInt(ep.episodeNumber, 10);
if (!Number.isFinite(episodeId) || !Number.isFinite(episodeNumber)) return;
const title = String(animeTitle || '') + ' \u7B2C' + episodeNumber + '\u96C6';
html += '<div class="episode-item" id="episode-item-' + episodeNumber + '">';
html += '<div class="episode-item-content"><strong>\u7B2C' + episodeNumber + '\u96C6</strong> - ' + escapeHtml(ep.episodeTitle || '\u65E0\u6807\u9898') + '</div>';
html += '<button class="btn btn-success btn-sm" onclick="fetchDanmuForTest(' + episodeId + ', ' + inlineJsString(title) + ', \\'manual\\')">\u83B7\u53D6\u5F39\u5E55</button>';
html += '</div>';
});
html += '</div>';
container.innerHTML = html;
container.style.display = 'block';
setTimeout(() => container.scrollIntoView({ behavior: 'smooth', block: 'start' }), 10);
}
// \u8FD4\u56DE\u641C\u7D22\u7ED3\u679C
function backToManualSearch() {
showDanmuView(['manual-anime-list'], ['manual-episode-list', 'danmu-result-area']);
}
// \u8FD4\u56DE\u5267\u96C6\u5217\u8868
function backToEpisodeList() {
showDanmuView(['manual-episode-list'], ['danmu-result-area']);
}
// \u8DF3\u8F6C\u5230\u6307\u5B9A\u96C6\u6570
function jumpToEpisode() {
const episodeInput = document.getElementById('jump-episode-input');
const episodeNumber = parseInt(episodeInput.value);
if (!episodeNumber || episodeNumber <= 0) {
customAlert('\u8BF7\u8F93\u5165\u6709\u6548\u7684\u96C6\u6570\uFF08\u6B63\u6574\u6570\uFF09');
return;
}
// \u67E5\u627E\u5BF9\u5E94\u96C6\u6570\u7684\u5143\u7D20
const episodeElement = document.getElementById('episode-item-' + episodeNumber);
if (episodeElement) {
// \u6EDA\u52A8\u5230\u6307\u5B9A\u5143\u7D20\u4F4D\u7F6E
episodeElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
// \u6DFB\u52A0\u9AD8\u4EAE\u6548\u679C\u4EE5\u4FBF\u8BC6\u522B
episodeElement.classList.add('episode-item-highlight');
setTimeout(() => {
episodeElement.classList.remove('episode-item-highlight');
}, 2000);
} else {
customAlert('\u627E\u4E0D\u5230\u7B2C' + episodeNumber + '\u96C6');
}
}
function isCurrentDanmuRequest(requestId) {
return danmuTestState.activeDanmuRequestId === requestId;
}
// =====================
// \u83B7\u53D6\u5F39\u5E55\u5E76\u5C55\u793A\u7ED3\u679C
// =====================
async function fetchDanmuForTest(episodeId, title, source, traceBase) {
addLog('\u83B7\u53D6\u5F39\u5E55: ' + episodeId + ' (' + title + ')', 'info');
const requestId = ++danmuTestState.nextDanmuRequestId;
danmuTestState.activeDanmuRequestId = requestId;
let requestTrace = null;
if (traceBase) {
requestTrace = cloneDanmuCallTrace(traceBase);
danmuTestState.currentCallTrace = requestTrace;
} else if (source === 'manual' && danmuTestState.currentManualEpisodeCallTraceBase) {
danmuTestState.currentCallTrace = cloneDanmuCallTrace(danmuTestState.currentManualEpisodeCallTraceBase);
requestTrace = danmuTestState.currentCallTrace;
} else {
requestTrace = cloneDanmuCallTrace(danmuTestState.currentCallTrace);
danmuTestState.currentCallTrace = requestTrace;
}
danmuTestState.currentEpisodeId = episodeId;
danmuTestState.currentTitle = title;
danmuTestState.currentDuration = 0;
// \u9690\u85CF\u4E0A\u7EA7\u9762\u677F
if (source === 'manual') {
showDanmuView([], ['manual-episode-list', 'manual-anime-list', 'danmu-result-area']);
} else {
showDanmuView([], ['danmu-result-area']);
}
// \u663E\u793A\u52A0\u8F7D\u52A8\u753B
const resultArea = document.getElementById('danmu-result-area');
resultArea.innerHTML = '<div class="danmu-loading"><div class="loading-spinner"></div><div class="loading-text">\u6B63\u5728\u83B7\u53D6\u5F39\u5E55\u6570\u636E...</div></div>';
resultArea.style.display = 'block';
const startTime = performance.now();
try {
const commentUrl = '/api/v2/comment/' + episodeId + '?format=json&duration=true';
const data = await fetch(buildApiUrl(commentUrl))
.then(resp => {
if (!resp.ok) throw new Error('HTTP ' + resp.status);
return resp.json();
});
if (!isCurrentDanmuRequest(requestId)) return;
const elapsed = ((performance.now() - startTime) / 1000).toFixed(2);
const durationSeconds = Number((data && data.videoDuration) || 0);
if (!data.comments || data.comments.length === 0) {
finishDanmuCallEmpty(requestTrace, startTime, {
name: '\u5F39\u5E55',
method: 'GET',
url: commentUrl,
params: 'episodeId: ' + episodeId + '\uFF0Cformat=json\uFF0Cduration=true'
}, '\u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55\u6570\u636E');
customAlert('\u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55\u6570\u636E');
addLog('\u65E0\u5F39\u5E55\u6570\u636E', 'warn');
const failureSource = source === 'manual' ? 'manual-episode' : source;
resultArea.innerHTML = renderDanmuCallFailure(requestTrace, '\u65E0\u5F39\u5E55\u6570\u636E', '\u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55\u6570\u636E', failureSource);
resultArea.style.display = 'block';
return;
}
finishDanmuCallStep(requestTrace, startTime, {
name: '\u5F39\u5E55',
method: 'GET',
url: commentUrl,
params: 'episodeId: ' + episodeId + '\uFF0Cformat=json\uFF0Cduration=true',
result: data.comments.length + ' \u6761\u5F39\u5E55'
});
addLog('\u83B7\u53D6\u5230 ' + data.comments.length + ' \u6761\u5F39\u5E55, \u8017\u65F6 ' + elapsed + 's', 'success');
danmuTestState.allComments = data.comments;
danmuTestState.currentFilter = 'all';
danmuTestState.displayedCount = 0;
danmuTestState.currentDuration = durationSeconds;
// \u91CD\u5EFA\u7ED3\u679C\u533A\u5185\u5BB9\uFF1Aauto\u6A21\u5F0F\u53EA\u6709\u5BFC\u51FA\u6309\u94AE\uFF0Cmanual\u6A21\u5F0F\u6709\u8FD4\u56DE+\u5BFC\u51FA
let toolbarHtml = '<div class="danmu-result-toolbar">';
if (source === 'manual') {
toolbarHtml += backBtnHtml('\u8FD4\u56DE\u5217\u8868', 'backToEpisodeList()');
}
toolbarHtml += '<div class="danmu-export-btns">' +
'<button class="btn btn-sm btn-primary" onclick="exportDanmu(\\'json\\')">\u5BFC\u51FA JSON</button>' +
'<button class="btn btn-sm btn-primary" onclick="exportDanmu(\\'xml\\')">\u5BFC\u51FA XML</button>' +
'</div></div>';
const filterCounts = getDanmuFilterCounts(data.comments);
resultArea.innerHTML =
toolbarHtml +
'<div class="danmu-stats" id="danmu-stats"></div>' +
renderDanmuCallTrace(requestTrace) +
'<div class="danmu-heatmap-container"><h3 class="danmu-section-title">\u5F39\u5E55\u70ED\u529B\u56FE</h3><div class="danmu-heatmap" id="danmu-heatmap"></div></div>' +
'<div class="danmu-list-area"><h3 class="danmu-section-title">\u5F39\u5E55\u5217\u8868</h3>' +
renderDanmuFilterTabs(filterCounts) +
'<div class="danmu-list" id="danmu-list"></div>' +
'<button class="btn btn-primary danmu-load-more" id="danmu-load-more" onclick="loadMoreDanmu()">\u52A0\u8F7D\u66F4\u591A</button>' +
'</div>';
applyDanmuFilter();
renderDanmuStats(data, elapsed, title, durationSeconds, filterCounts);
renderDanmuHeatmap(data.comments, durationSeconds);
renderDanmuList();
setTimeout(() => resultArea.scrollIntoView({ behavior: 'smooth', block: 'start' }), 10);
} catch (e) {
if (!isCurrentDanmuRequest(requestId)) return;
const commentUrl = '/api/v2/comment/' + episodeId + '?format=json&duration=true';
finishDanmuCallFailure(requestTrace, startTime, {
name: '\u5F39\u5E55',
method: 'GET',
url: commentUrl,
params: 'episodeId: ' + episodeId + '\uFF0Cformat=json\uFF0Cduration=true'
}, e);
customAlert('\u83B7\u53D6\u5F39\u5E55\u5931\u8D25: ' + e.message);
addLog('\u83B7\u53D6\u5F39\u5E55\u5931\u8D25: ' + e.message, 'error');
const failureSource = source === 'manual' ? 'manual-episode' : source;
resultArea.innerHTML = renderDanmuCallFailure(requestTrace, '\u83B7\u53D6\u5F39\u5E55\u5931\u8D25', e.message, failureSource);
resultArea.style.display = 'block';
}
}
// =====================
// \u5BFC\u51FA\u5F39\u5E55\uFF08\u76F4\u63A5\u8BF7\u6C42\u540E\u7AEF\u83B7\u53D6\u683C\u5F0F\u5316\u6570\u636E\uFF09
// =====================
async function exportDanmu(format) {
const id = danmuTestState.currentEpisodeId;
if (!id) { customAlert('\u65E0\u5F39\u5E55\u6570\u636E\u53EF\u5BFC\u51FA'); return; }
const title = danmuTestState.currentTitle || ('danmu_' + id);
// \u6E05\u7406\u6587\u4EF6\u540D\u4E2D\u7684\u975E\u6CD5\u5B57\u7B26
const safeTitle = title.replace(/[\\\\/:*?"<>|]/g, '_');
addLog('\u5BFC\u51FA\u5F39\u5E55 ' + format.toUpperCase() + '...', 'info');
try {
const resp = await fetch(buildApiUrl('/api/v2/comment/' + id + '?format=' + format));
if (!resp.ok) throw new Error('HTTP ' + resp.status);
let content, mimeType;
if (format === 'xml') {
content = await resp.text();
mimeType = 'application/xml';
} else {
const data = await resp.json();
content = JSON.stringify(data, null, 2);
mimeType = 'application/json';
}
const blob = new Blob([content], { type: mimeType });
const url = URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = safeTitle + '.' + format;
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
URL.revokeObjectURL(url);
addLog('\u5BFC\u51FA\u5F39\u5E55 ' + format.toUpperCase() + ' \u6210\u529F', 'success');
} catch (e) {
customAlert('\u5BFC\u51FA\u5931\u8D25: ' + e.message);
addLog('\u5BFC\u51FA\u5931\u8D25: ' + e.message, 'error');
}
}
// =====================
// \u5F39\u5E55\u7EDF\u8BA1
// =====================
function renderDanmuStats(data, elapsed, title, durationSeconds, filterCounts) {
const comments = data.comments;
const count = comments.length;
const maxTime = getEffectiveDuration(comments, durationSeconds);
// \u5E73\u5747\u5BC6\u5EA6
const durationMin = maxTime / 60;
const avgDensity = durationMin > 0 ? (count / durationMin).toFixed(1) : '0';
// \u9AD8\u80FD\u65F6\u523B\uFF1A\u627E\u5BC6\u5EA6\u6700\u9AD8\u768430\u79D2\u533A\u95F4
const segLen = 30;
const segCount = Math.ceil(maxTime / segLen) || 1;
const segs = new Array(segCount).fill(0);
comments.forEach(c => {
const t = c.t !== undefined ? c.t : parseDanmuTime(c.p);
if (t > maxTime) return; // \u8DF3\u8FC7\u5F02\u5E38\u65F6\u95F4\u70B9
const idx = Math.min(Math.floor(t / segLen), segCount - 1);
segs[idx]++;
});
let hotIdx = 0;
for (let i = 1; i < segs.length; i++) {
if (segs[i] > segs[hotIdx]) hotIdx = i;
}
const hotStart = hotIdx * segLen;
const hotMoment = formatDuration(hotStart) + ' - ' + formatDuration(hotStart + segLen);
const coloredCount = comments.reduce((sum, comment) => {
if (!comment || !comment.p) return sum;
const color = parseInt(String(comment.p).split(',')[2], 10);
return Number.isFinite(color) && color !== 16777215 ? sum + 1 : sum;
}, 0);
const coloredRatio = count > 0 ? ((coloredCount / count) * 100).toFixed(1) + '%' : '--';
const container = document.getElementById('danmu-stats');
container.innerHTML =
'<div class="danmu-stats-title">' + escapeHtml(title) + '</div>' +
'<div class="danmu-stats-grid">' +
'<div class="danmu-stat-card"><div class="stat-value">' + count + '</div><div class="stat-label">\u5F39\u5E55\u6570</div></div>' +
'<div class="danmu-stat-card"><div class="stat-value">' + formatDuration(maxTime) + '</div><div class="stat-label">\u65F6\u957F</div></div>' +
'<div class="danmu-stat-card"><div class="stat-value">' + hotMoment + '</div><div class="stat-label">\u9AD8\u80FD\u65F6\u523B</div></div>' +
'<div class="danmu-stat-card"><div class="stat-value">' + avgDensity + ' \u6761/\u5206</div><div class="stat-label">\u5E73\u5747\u5BC6\u5EA6</div></div>' +
'<div class="danmu-stat-card"><div class="stat-value">' + elapsed + 's</div><div class="stat-label">\u8BF7\u6C42\u8017\u65F6</div></div>' +
'<div class="danmu-stat-card"><div class="stat-value">' + coloredRatio + '</div><div class="stat-label">\u5F69\u8272\u5360\u6BD4</div></div>' +
'</div>';
}
// =====================
// \u5F39\u5E55\u70ED\u529B\u56FE
// =====================
function renderDanmuHeatmap(comments, durationSeconds) {
const container = document.getElementById('danmu-heatmap');
const maxTime = getEffectiveDuration(comments, durationSeconds);
if (maxTime === 0) { container.innerHTML = '<p class="danmu-empty-text">\u65E0\u6570\u636E</p>'; return; }
const barCount = Math.min(60, Math.max(20, Math.ceil(maxTime / 30)));
const segLen = maxTime / barCount;
const segs = new Array(barCount).fill(0);
comments.forEach(c => {
const t = c.t !== undefined ? c.t : parseDanmuTime(c.p);
if (t > maxTime) return; // \u8DF3\u8FC7\u5F02\u5E38\u65F6\u95F4\u70B9
const idx = Math.min(Math.floor(t / segLen), barCount - 1);
segs[idx]++;
});
const maxSeg = Math.max(...segs, 1);
let html = '<div class="danmu-heatmap-interactive">';
html += '<div class="heatmap-bars">';
for (let i = 0; i < barCount; i++) {
const pct = Math.max(2, (segs[i] / maxSeg) * 100);
const intensity = segs[i] / maxSeg;
// \u4ECE\u84DD\u5230\u7EA2\u7684\u6E10\u53D8
const r = Math.round(66 + intensity * 189);
const g = Math.round(126 - intensity * 80);
const b = Math.round(234 - intensity * 180);
const start = i * segLen;
const end = Math.min((i + 1) * segLen, maxTime);
const timeLabel = formatDuration(start) + ' - ' + formatDuration(end);
html += '<div class="heatmap-bar" data-index="' + i + '" data-count="' + segs[i] + '" style="--heatmap-height:' + pct + '%;--heatmap-color:rgb(' + r + ',' + g + ',' + b + ');" aria-label="' + timeLabel + ' | ' + segs[i] + '\u6761\u5F39\u5E55"></div>';
}
html += '</div>';
html += '<div class="danmu-heatmap-indicator"></div><div class="danmu-heatmap-tooltip"></div>';
html += '</div>';
html += '<div class="heatmap-axis"><span>00:00</span><span>' + formatDuration(maxTime / 2) + '</span><span>' + formatDuration(maxTime) + '</span></div>';
container.innerHTML = html;
bindDanmuHeatmapScrub(container, segs, segLen, maxTime);
}
function bindDanmuHeatmapScrub(container, segs, segLen, maxTime) {
const interactive = container.querySelector('.danmu-heatmap-interactive');
const bars = container.querySelector('.heatmap-bars');
const tooltip = container.querySelector('.danmu-heatmap-tooltip');
const indicator = container.querySelector('.danmu-heatmap-indicator');
if (!interactive || !bars || !tooltip || !indicator) return;
let rafId = null;
let latestEvent = null;
const scheduleUpdate = event => {
latestEvent = event;
if (rafId) return;
rafId = requestAnimationFrame(() => {
rafId = null;
if (!latestEvent) return;
updateDanmuHeatmapTooltip(latestEvent, interactive, bars, tooltip, indicator, segs, segLen, maxTime);
});
};
const hideTooltip = () => hideDanmuHeatmapTooltip(bars, tooltip, indicator, () => {
if (rafId) {
cancelAnimationFrame(rafId);
rafId = null;
}
latestEvent = null;
});
interactive.addEventListener('pointermove', scheduleUpdate, { passive: true });
interactive.addEventListener('pointerdown', scheduleUpdate, { passive: true });
interactive.addEventListener('pointerup', hideTooltip, { passive: true });
interactive.addEventListener('pointercancel', hideTooltip, { passive: true });
interactive.addEventListener('pointerleave', hideTooltip);
}
function hideDanmuHeatmapTooltip(bars, tooltip, indicator, beforeHide) {
if (beforeHide) beforeHide();
tooltip.classList.remove('active');
indicator.classList.remove('active');
const activeBar = bars.querySelector('.heatmap-bar.active');
if (activeBar) activeBar.classList.remove('active');
}
function updateDanmuHeatmapTooltip(event, interactive, bars, tooltip, indicator, segs, segLen, maxTime) {
if (!event) return;
const rect = bars.getBoundingClientRect();
if (!rect.width) return;
const ratio = Math.max(0, Math.min(1, (event.clientX - rect.left) / rect.width));
const index = Math.max(0, Math.min(segs.length - 1, Math.floor(ratio * segs.length)));
const start = index * segLen;
const end = Math.min((index + 1) * segLen, maxTime);
const leftPct = ((index + 0.5) / segs.length) * 100;
const activeBar = bars.querySelector('.heatmap-bar.active');
if (activeBar) activeBar.classList.remove('active');
const currentBar = bars.querySelector('.heatmap-bar[data-index="' + index + '"]');
if (currentBar) currentBar.classList.add('active');
tooltip.innerHTML = '<strong>' + segs[index] + '</strong><span>\u6761\u5F39\u5E55</span><em>' + formatDuration(start) + ' - ' + formatDuration(end) + '</em>';
tooltip.classList.add('active');
indicator.classList.add('active');
const clampedLeft = clampHeatmapTooltipLeft(interactive, tooltip, leftPct);
tooltip.style.left = clampedLeft + 'px';
indicator.style.left = leftPct + '%';
}
function clampHeatmapTooltipLeft(interactive, tooltip, leftPct) {
const width = interactive.clientWidth || 0;
const tooltipWidth = tooltip.offsetWidth || 0;
const padding = 8;
const rawLeft = (leftPct / 100) * width;
const minLeft = (tooltipWidth / 2) + padding;
const maxLeft = width - (tooltipWidth / 2) - padding;
if (width <= tooltipWidth + padding * 2) return width / 2;
return Math.max(minLeft, Math.min(maxLeft, rawLeft));
}
function getDanmuFilterCounts(comments) {
const counts = { all: comments.length, scroll: 0, top: 0, bottom: 0 };
comments.forEach(c => {
const mode = parseDanmuMode(c.p);
if (mode === 5) counts.top++;
else if (mode === 4) counts.bottom++;
else counts.scroll++;
});
return counts;
}
function renderDanmuFilterTabs(counts) {
const items = [
{ key: 'all', label: '\u5168\u90E8' },
{ key: 'scroll', label: '\u6EDA\u52A8' },
{ key: 'top', label: '\u9876\u90E8' },
{ key: 'bottom', label: '\u5E95\u90E8' }
];
let html = '<div class="danmu-filter-tabs">';
items.forEach(item => {
const active = item.key === 'all' ? ' active' : '';
html += '<button class="danmu-filter-tab' + active + '" data-count="' + counts[item.key] + '" onclick="filterDanmuList(\\'' + item.key + '\\', event)">' + item.label + '<span class="danmu-filter-count">' + counts[item.key] + '</span></button>';
});
html += '</div>';
return html;
}
// =====================
// \u5F39\u5E55\u5217\u8868\u8FC7\u6EE4\u4E0E\u61D2\u52A0\u8F7D
// =====================
function applyDanmuFilter() {
const filter = danmuTestState.currentFilter;
if (filter === 'all') {
danmuTestState.filteredComments = danmuTestState.allComments;
} else {
const modeMap = { scroll: 1, top: 5, bottom: 4 };
const targetMode = modeMap[filter];
danmuTestState.filteredComments = danmuTestState.allComments.filter(c => {
const mode = parseDanmuMode(c.p);
if (filter === 'scroll') return mode !== 4 && mode !== 5;
return mode === targetMode;
});
}
danmuTestState.displayedCount = 0;
}
function filterDanmuList(type, event) {
document.querySelectorAll('.danmu-filter-tab').forEach(btn => btn.classList.remove('active'));
const tab = event.currentTarget || event.target.closest('.danmu-filter-tab');
if (tab) tab.classList.add('active');
danmuTestState.currentFilter = type;
applyDanmuFilter();
renderDanmuList();
}
function renderDanmuList() {
const list = danmuTestState.filteredComments;
const end = Math.min(danmuTestState.displayedCount + danmuTestState.pageSize, list.length);
let html = '';
for (let i = danmuTestState.displayedCount; i < end; i++) {
const c = list[i];
const time = c.t !== undefined ? c.t : parseDanmuTime(c.p);
const mode = parseDanmuMode(c.p);
const color = parseDanmuColor(c.p);
const hexColor = decColorToHex(color);
const modeLabel = getModeLabel(mode);
html += '<div class="danmu-item">' +
'<span class="danmu-time">' + formatDuration(time) + '</span>' +
'<span class="danmu-color-dot" style="--danmu-color-dot:' + hexColor + ';" title="' + hexColor + '"></span>' +
'<span class="danmu-mode-tag danmu-mode-' + (mode === 5 ? 'top' : mode === 4 ? 'bottom' : 'scroll') + '">' + modeLabel + '</span>' +
'<span class="danmu-text">' + escapeHtml(c.m) + '</span>' +
'</div>';
}
const container = document.getElementById('danmu-list');
if (danmuTestState.displayedCount === 0) {
container.innerHTML = html || '<p class="danmu-empty-text danmu-empty-list">\u65E0\u5F39\u5E55\u6570\u636E</p>';
} else {
container.insertAdjacentHTML('beforeend', html);
}
danmuTestState.displayedCount = end;
// \u63A7\u5236\u52A0\u8F7D\u66F4\u591A\u6309\u94AE
const loadMoreBtn = document.getElementById('danmu-load-more');
if (end < list.length) {
loadMoreBtn.style.display = 'block';
loadMoreBtn.textContent = '\u52A0\u8F7D\u66F4\u591A (' + end + '/' + list.length + ')';
} else {
loadMoreBtn.style.display = 'none';
}
}
function loadMoreDanmu() {
renderDanmuList();
}
`;var cct=`
// \u63A8\u9001\u5F39\u5E55\u529F\u80FD\u76F8\u5173
// \u4ECE\u73AF\u5883\u53D8\u91CF\u83B7\u53D6\u9ED8\u8BA4\u63A8\u9001\u5730\u5740
function getDefaultPushUrl(config) {
const pushUrl = config.originalEnvVars?.DANMU_PUSH_URL || '';
return pushUrl.trim();
}
// \u8BBE\u7F6E\u9ED8\u8BA4\u63A8\u9001\u5730\u5740
function setDefaultPushUrl(config) {
const defaultPushUrl = getDefaultPushUrl(config);
if (defaultPushUrl) {
const pushUrlInput = document.getElementById('push-url');
if (pushUrlInput && !pushUrlInput.value) {
pushUrlInput.value = defaultPushUrl;
}
}
}
// \u521D\u59CB\u5316\u63A8\u9001\u5F39\u5E55\u754C\u9762
function initPushDanmuInterface() {
const searchKeywordInput = document.getElementById('push-search-keyword');
if (searchKeywordInput) {
// \u6DFB\u52A0\u56DE\u8F66\u952E\u641C\u7D22\u4E8B\u4EF6\u76D1\u542C
searchKeywordInput.addEventListener('keypress', function(event) {
if (event.key === 'Enter') {
searchAnimeForPush();
}
});
}
}
// \u641C\u7D22\u52A8\u6F2B\u7528\u4E8E\u63A8\u9001
function searchAnimeForPush() {
const keyword = document.getElementById('push-search-keyword').value.trim();
const pushUrl = document.getElementById('push-url').value.trim();
const searchBtn = document.querySelector('#push-section .btn-primary');
if (!keyword) {
customAlert('\u8BF7\u8F93\u5165\u641C\u7D22\u5173\u952E\u5B57');
return;
}
// \u641C\u7D22\u65F6\u4E0D\u518D\u6821\u9A8CpushUrl\u662F\u5426\u4E3A\u7A7A\uFF0C\u53EA\u5728\u63A8\u9001\u65F6\u6821\u9A8C
// \u6DFB\u52A0\u52A0\u8F7D\u72B6\u6001
const originalText = searchBtn.textContent;
searchBtn.innerHTML = '<span class="loading-spinner-small"></span>';
searchBtn.disabled = true;
// \u6784\u5EFA\u641C\u7D22API\u8BF7\u6C42URL
const searchUrl = buildApiUrl('/api/v2/search/anime?keyword=' + encodeURIComponent(keyword));
addLog(\`\u5F00\u59CB\u641C\u7D22\u52A8\u6F2B: \${keyword}\`, 'info');
// \u53D1\u9001\u641C\u7D22\u8BF7\u6C42
fetch(searchUrl)
.then(response => {
if (!response.ok) {
throw new Error(\`HTTP error! status: \${response.status}\`);
}
return response.json();
})
.then(data => {
if (data.success && data.animes.length > 0) {
displayAnimeListForPush(data.animes, pushUrl);
} else {
document.getElementById('push-anime-list').style.display = 'none';
document.getElementById('push-episode-list').style.display = 'none';
customAlert('\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B');
addLog('\u672A\u627E\u5230\u76F8\u5173\u52A8\u6F2B', 'warn');
}
})
.catch(error => {
console.error('\u641C\u7D22\u52A8\u6F2B\u5931\u8D25:', error);
customAlert('\u641C\u7D22\u52A8\u6F2B\u5931\u8D25: ' + error.message);
addLog('\u641C\u7D22\u52A8\u6F2B\u5931\u8D25: ' + error.message, 'error');
})
.finally(() => {
// \u6062\u590D\u6309\u94AE\u72B6\u6001
searchBtn.innerHTML = originalText;
searchBtn.disabled = false;
});
}
// \u5C55\u793A\u52A8\u6F2B\u5217\u8868\u7528\u4E8E\u63A8\u9001
function displayAnimeListForPush(animes, pushUrl) {
const container = document.getElementById('push-anime-list');
let html = '<h3>\u641C\u7D22\u7ED3\u679C</h3><div class="anime-grid">';
animes.forEach(anime => {
const imageUrl = anime.imageUrl || 'https://placehold.co/150x200?text=No+Image';
html += \`
<div class="anime-item" onclick="getBangumiForPush(\${anime.animeId}, '\${pushUrl}')">
<img src="\${imageUrl}" alt="\${anime.animeTitle}" referrerpolicy="no-referrer" class="anime-item-img">
<h4 class="anime-title">\${anime.animeTitle} - \u5171\${anime.episodeCount}\u96C6</h4>
</div>
\`;
});
html += '</div>';
container.innerHTML = html;
container.style.display = 'block';
addLog(\`\u663E\u793A \${animes.length} \u4E2A\u52A8\u6F2B\u7ED3\u679C\`, 'info');
}
// \u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u7528\u4E8E\u63A8\u9001
function getBangumiForPush(animeId, pushUrl) {
const bangumiUrl = buildApiUrl('/api/v2/bangumi/' + animeId);
addLog(\`\u83B7\u53D6\u756A\u5267\u8BE6\u60C5: \${animeId}\`, 'info');
fetch(bangumiUrl)
.then(response => {
if (!response.ok) {
throw new Error(\`HTTP error! status: \${response.status}\`);
}
return response.json();
})
.then(data => {
if (data.success && data.bangumi && data.bangumi.episodes) {
displayEpisodeListForPush(data.bangumi.animeTitle, data.bangumi.episodes, pushUrl);
} else {
customAlert('\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F');
addLog('\u8BE5\u52A8\u6F2B\u6682\u65E0\u5267\u96C6\u4FE1\u606F', 'warn');
}
})
.catch(error => {
console.error('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25:', error);
customAlert('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25: ' + error.message);
addLog('\u83B7\u53D6\u756A\u5267\u8BE6\u60C5\u5931\u8D25: ' + error.message, 'error');
});
}
// \u5C55\u793A\u5267\u96C6\u5217\u8868\u7528\u4E8E\u63A8\u9001
function displayEpisodeListForPush(animeTitle, episodes, pushUrl) {
const container = document.getElementById('push-episode-list');
let html = \`<h3>\u5267\u96C6\u5217\u8868</h3><h4 class="text-yellow-gold">\${animeTitle}</h4>\`;
// \u6DFB\u52A0\u8DF3\u8F6C\u5230\u6307\u5B9A\u96C6\u6570\u7684\u529F\u80FD
html += \`
<div class="jump-to-episode" style="margin-top: 15px; margin-bottom: 15px; padding: 10px; background: #f8f9fa; border-radius: 12px; display: flex; align-items: center; gap: 10px;">
<span>\u8DF3\u8F6C\u5230\u7B2C</span>
<input type="number" id="jump-episode-input-push" placeholder="\u8F93\u5165\u96C6\u6570" min="1" style="padding: 8px; width: 90px; border: 1px solid #ccc; border-radius: 8px;">
<span>\u96C6</span>
<button class="btn btn-primary btn-sm" onclick="jumpToEpisodeForPushDanmu()" style="margin-left: 5px; border-radius: 8px;">\u8DF3\u8F6C</button>
<span style="margin-left: 5px; color: #666; font-size: 14px;">\u5171\${episodes.length}\u96C6</span>
</div>\`;
html += '<div class="episode-list-container">';
episodes.forEach(episode => {
// \u751F\u6210\u5F39\u5E55URL
const commentUrl = window.location.origin + buildApiUrl('/api/v2/comment/' + episode.episodeId + '?format=xml');
html += \`
<div class="episode-item" id="episode-item-push-\${episode.episodeNumber}">
<div class="episode-item-content">
<strong>\u7B2C\${episode.episodeNumber}\u96C6</strong> - \${episode.episodeTitle || '\u65E0\u6807\u9898'}
</div>
<button class="btn btn-success btn-sm episode-push-btn" onclick="pushDanmu('\${pushUrl}', '\${commentUrl}', '\${episode.episodeTitle || '\u7B2C' + episode.episodeNumber + '\u96C6'}')">\u63A8\u9001</button>
</div>
\`;
});
html += '</div>';
container.innerHTML = html;
container.style.display = 'block';
addLog(\`\u663E\u793A \${episodes.length} \u4E2A\u5267\u96C6\`, 'info');
// \u81EA\u52A8\u6EDA\u52A8\u5230\u5267\u96C6\u5217\u8868\u5904
setTimeout(() => {
container.scrollIntoView({ behavior: 'smooth', block: 'start' });
}, 10);
}
// \u8DF3\u8F6C\u5230\u6307\u5B9A\u96C6\u6570\uFF08\u63A8\u9001\u5F39\u5E55\u7248\uFF09
function jumpToEpisodeForPushDanmu() {
const episodeInput = document.getElementById('jump-episode-input-push');
const episodeNumber = parseInt(episodeInput.value);
if (!episodeNumber || episodeNumber <= 0) {
customAlert('\u8BF7\u8F93\u5165\u6709\u6548\u7684\u96C6\u6570\uFF08\u6B63\u6574\u6570\uFF09');
return;
}
// \u67E5\u627E\u5BF9\u5E94\u96C6\u6570\u7684\u5143\u7D20
const episodeElement = document.getElementById('episode-item-push-' + episodeNumber);
if (episodeElement) {
// \u6EDA\u52A8\u5230\u6307\u5B9A\u5143\u7D20\u4F4D\u7F6E
episodeElement.scrollIntoView({ behavior: 'smooth', block: 'center' });
// \u6DFB\u52A0\u9AD8\u4EAE\u6548\u679C\u4EE5\u4FBF\u8BC6\u522B
episodeElement.style.backgroundColor = '#fff3cd'; // \u9EC4\u8272\u80CC\u666F\u9AD8\u4EAE
setTimeout(() => {
episodeElement.style.backgroundColor = ''; // \u6062\u590D\u539F\u8272
}, 2000);
} else {
customAlert('\u627E\u4E0D\u5230\u7B2C' + episodeNumber + '\u96C6');
}
}
// \u63A8\u9001\u5F39\u5E55
async function pushDanmu(pushUrl, commentUrl, episodeTitle) {
// \u83B7\u53D6\u63A8\u9001\u6309\u94AE\u5143\u7D20
const pushButton = event.target; // \u901A\u8FC7\u4E8B\u4EF6\u5BF9\u8C61\u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u6309\u94AE
// \u6821\u9A8C\u63A8\u9001\u5730\u5740\u662F\u5426\u4E3A\u7A7A
if (!pushUrl || pushUrl.trim() === '') {
customAlert('\u8BF7\u8F93\u5165\u63A8\u9001\u5730\u5740');
if (pushButton) {
pushButton.innerHTML = '\u63A8\u9001';
pushButton.disabled = false;
}
return;
}
if (pushButton) {
const originalText = pushButton.innerHTML;
pushButton.innerHTML = '<span class="loading-spinner-small"></span>';
pushButton.disabled = true;
}
try {
// \u5411\u63A8\u9001\u5730\u5740\u53D1\u9001\u5F39\u5E55\u6570\u636E
const pushResponse = await fetch(pushUrl + encodeURIComponent(commentUrl), {
method: 'GET',
mode: 'no-cors', // \u7531\u4E8E\u8DE8\u57DF\u9650\u5236\uFF0C\u4F7F\u7528no-cors\u6A21\u5F0F
});
customAlert('\u5F39\u5E55\u63A8\u9001\u6210\u529F\uFF01' + episodeTitle);
addLog('\u5F39\u5E55\u63A8\u9001\u6210\u529F - ' + episodeTitle, 'success');
} catch (error) {
console.error('\u63A8\u9001\u5F39\u5E55\u5931\u8D25:', error);
customAlert('\u63A8\u9001\u5F39\u5E55\u5931\u8D25: ' + error.message);
addLog('\u63A8\u9001\u5F39\u5E55\u5931\u8D25: ' + error.message, 'error');
} finally {
// \u6062\u590D\u6309\u94AE\u72B6\u6001
if (pushButton) {
pushButton.innerHTML = '\u63A8\u9001';
pushButton.disabled = false;
}
}
}
`;var uct=`
// \u8BF7\u6C42\u8BB0\u5F55\u76F8\u5173\u529F\u80FD
async function renderRequestRecords() {
const recordsContainer = document.getElementById('request-records-list');
if (!recordsContainer) {
console.error('\u672A\u627E\u5230\u8BF7\u6C42\u8BB0\u5F55\u5BB9\u5668');
return;
}
try {
// \u4ECEAPI\u83B7\u53D6\u8BF7\u6C42\u8BB0\u5F55
const response = await fetch(buildApiUrl('/api/reqrecords'));
if (!response.ok) {
throw new Error('\u83B7\u53D6\u8BF7\u6C42\u8BB0\u5F55\u5931\u8D25');
}
const data = await response.json();
const records = data.records;
const todayReqNum = data.todayReqNum;
// \u663E\u793A\u4ECA\u65E5\u8BF7\u6C42\u603B\u6570
const totalRequestsElement = document.getElementById('total-requests-today');
if (totalRequestsElement) {
totalRequestsElement.textContent = \`\u4ECA\u65E5\u8BF7\u6C42\u603B\u6570: \${todayReqNum}\`;
}
if (records.length === 0) {
recordsContainer.innerHTML = '<div class="no-records">\u6682\u65E0\u8BF7\u6C42\u8BB0\u5F55</div>';
return;
}
// \u751F\u6210\u8BB0\u5F55HTML
const recordsHtml = records.map(record => {
const interfaceName = decodeURIComponent(record.interface) || '\u672A\u77E5\u63A5\u53E3';
const params = record.params || {};
const timestamp = record.timestamp ? new Date(record.timestamp).toLocaleString('zh-CN') : '\u672A\u77E5\u65F6\u95F4';
const method = record.method || 'GET';
const clientIp = record.clientIp || '\u672A\u77E5IP';
// \u683C\u5F0F\u5316\u53C2\u6570\u663E\u793A
const hasParams = Object.keys(params).length > 0;
const paramsHtml = hasParams
? \`<div class="record-params">
<div class="record-params-title">\u8BF7\u6C42\u53C2\u6570</div>
<pre>\${JSON.stringify(params, null, 2)}</pre>
</div>\`
: '';
// \u5982\u679C\u6CA1\u6709\u53C2\u6570\uFF0C\u7ED9\u65F6\u95F4\u6233\u6DFB\u52A0 no-params \u7C7B\u4EE5\u9690\u85CF\u865A\u7EBF
const timestampClass = hasParams ? 'record-timestamp' : 'record-timestamp no-params';
return \`
<div class="record-item">
<div class="record-header">
<div class="record-method">\${method}</div>
<div class="record-interface">\${interfaceName}</div>
<div class="record-ip">\${clientIp}</div>
</div>
<div class="\${timestampClass}">\${timestamp}</div>
\${paramsHtml}
</div>\`;
}).join('');
recordsContainer.innerHTML = recordsHtml;
} catch (error) {
console.error('\u83B7\u53D6\u8BF7\u6C42\u8BB0\u5F55\u65F6\u51FA\u9519:', error);
recordsContainer.innerHTML = '<div class="no-records">\u83B7\u53D6\u8BF7\u6C42\u8BB0\u5F55\u5931\u8D25: ' + error.message + '</div>';
}
}
// \u521D\u59CB\u5316\u8BF7\u6C42\u8BB0\u5F55\u754C\u9762
function initRequestRecordsInterface() {
// \u786E\u4FDD\u5728\u5207\u6362\u5230\u8BF7\u6C42\u8BB0\u5F55\u6807\u7B7E\u9875\u65F6\u4E5F\u66F4\u65B0\u8BB0\u5F55
const originalSwitchSection = window.switchSection;
if (originalSwitchSection && typeof originalSwitchSection === 'function') {
window.switchSection = function(section, event = null) {
// \u8C03\u7528\u539F\u51FD\u6570
originalSwitchSection(section, event);
// \u5982\u679C\u5207\u6362\u5230\u8BF7\u6C42\u8BB0\u5F55\u9875\u9762\uFF0C\u5219\u5237\u65B0\u8BB0\u5F55
if (section === 'request-records') {
setTimeout(renderRequestRecords, 100);
}
};
}
// \u9996\u6B21\u521D\u59CB\u5316
if (document.getElementById('request-records-section') &&
document.querySelector('.nav-btn[data-section="request-records"]') &&
document.querySelector('.nav-btn[data-section="request-records"]').classList.contains('active')) {
renderRequestRecords();
}
}
// \u9875\u9762\u52A0\u8F7D\u5B8C\u6210\u540E\u521D\u59CB\u5316
document.addEventListener('DOMContentLoaded', function() {
if (typeof initRequestRecordsInterface === 'function') {
initRequestRecordsInterface();
}
// \u6DFB\u52A0\u5237\u65B0\u6309\u94AE\u529F\u80FD
const refreshBtn = document.getElementById('refresh-request-records');
if (refreshBtn) {
refreshBtn.onclick = function() {
renderRequestRecords();
};
}
});
`;var lct=`
// \u5168\u5C40\u53D8\u91CF\u5B9A\u4E49
let isMergeMode = false;
let stagingTags = [];
// \u663E\u793A\u6E05\u7406\u7F13\u5B58\u786E\u8BA4\u6A21\u6001\u6846
function showClearCacheModal() {
document.getElementById('clear-cache-modal').classList.add('active');
}
// \u9690\u85CF\u6E05\u7406\u7F13\u5B58\u786E\u8BA4\u6A21\u6001\u6846
function hideClearCacheModal() {
document.getElementById('clear-cache-modal').classList.remove('active');
}
// \u786E\u8BA4\u6E05\u7406\u7F13\u5B58
async function confirmClearCache() {
// \u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E
const configCheck = await checkDeployPlatformConfig();
if (!configCheck.success) {
hideClearCacheModal();
customAlert(configCheck.message);
return;
}
hideClearCacheModal();
showLoading('\u6B63\u5728\u6E05\u7406\u7F13\u5B58...', '\u6E05\u9664\u4E2D\uFF0C\u8BF7\u7A0D\u5019');
addLog('\u5F00\u59CB\u6E05\u7406\u7F13\u5B58', 'info');
try {
// \u8C03\u7528\u771F\u5B9E\u7684\u6E05\u7406\u7F13\u5B58API
const response = await fetch(buildApiUrl('/api/cache/clear', true), { // \u4F7F\u7528admin token
method: 'POST',
headers: {
'Content-Type': 'application/json'
}
});
const result = await response.json();
if (result.success) {
updateLoadingText('\u6E05\u7406\u5B8C\u6210', '\u7F13\u5B58\u5DF2\u6210\u529F\u6E05\u9664');
addLog('\u7F13\u5B58\u6E05\u7406\u5B8C\u6210', 'success');
addLog('\u7F13\u5B58\u6E05\u7406\u6210\u529F\uFF01\u5DF2\u6E05\u7406: ' + JSON.stringify(result.clearedItems), 'success');
} else {
updateLoadingText('\u6E05\u7406\u5931\u8D25', '\u8BF7\u67E5\u770B\u65E5\u5FD7\u4E86\u89E3\u8BE6\u60C5');
addLog('\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ' + result.message, 'error');
}
} catch (error) {
updateLoadingText('\u6E05\u7406\u5931\u8D25', '\u7F51\u7EDC\u9519\u8BEF\u6216\u670D\u52A1\u4E0D\u53EF\u7528');
addLog('\u7F13\u5B58\u6E05\u7406\u8BF7\u6C42\u5931\u8D25: ' + error.message, 'error');
} finally {
setTimeout(() => {
hideLoading();
}, 10);
}
}
// \u663E\u793A\u91CD\u65B0\u90E8\u7F72\u786E\u8BA4\u6A21\u6001\u6846
function showDeploySystemModal() {
document.getElementById('deploy-system-modal').classList.add('active');
}
// \u9690\u85CF\u91CD\u65B0\u90E8\u7F72\u786E\u8BA4\u6A21\u6001\u6846
function hideDeploySystemModal() {
document.getElementById('deploy-system-modal').classList.remove('active');
}
// \u786E\u8BA4\u91CD\u65B0\u90E8\u7F72\u7CFB\u7EDF
function confirmDeploySystem() {
// \u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E
checkDeployPlatformConfig().then(configCheck => {
if (!configCheck.success) {
hideDeploySystemModal();
customAlert(configCheck.message);
return;
}
hideDeploySystemModal();
showLoading('\u51C6\u5907\u90E8\u7F72...', '\u6B63\u5728\u68C0\u67E5\u7CFB\u7EDF\u72B6\u6001');
addLog('===== \u5F00\u59CB\u7CFB\u7EDF\u90E8\u7F72 =====', 'info');
// \u83B7\u53D6\u5F53\u524D\u90E8\u7F72\u5E73\u53F0
fetch(buildApiUrl('/api/config', true))
.then(response => response.json())
.then(config => {
const deployPlatform = config.envs.deployPlatform || 'node';
addLog(\`\u68C0\u6D4B\u5230\u90E8\u7F72\u5E73\u53F0: \${deployPlatform}\`, 'info');
if (deployPlatform.toLowerCase() === 'node') {
// Node\u90E8\u7F72\u4E0D\u9700\u8981\u91CD\u65B0\u90E8\u7F72
setTimeout(() => {
hideLoading();
addLog('===== \u90E8\u7F72\u5B8C\u6210 =====', 'success');
addLog('Node\u90E8\u7F72\u6A21\u5F0F\uFF0C\u73AF\u5883\u53D8\u91CF\u5DF2\u751F\u6548', 'info');
addLog('Node\u90E8\u7F72\u6A21\u5F0F - \u5728Node\u90E8\u7F72\u6A21\u5F0F\u4E0B\uFF0C\u73AF\u5883\u53D8\u91CF\u4FEE\u6539\u540E\u4F1A\u81EA\u52A8\u751F\u6548\uFF0C\u65E0\u9700\u91CD\u65B0\u90E8\u7F72\u3002\u7CFB\u7EDF\u5DF2\u66F4\u65B0\u914D\u7F6E', 'success');
}, 150);
} else {
// \u8C03\u7528\u771F\u5B9E\u7684\u90E8\u7F72API
fetch(buildApiUrl('/api/deploy', true), { // \u4F7F\u7528admin token
method: 'POST',
headers: {
'Content-Type': 'application/json'
}
})
.then(response => response.json())
.then(result => {
if (result.success) {
addLog('\u4E91\u7AEF\u90E8\u7F72\u89E6\u53D1\u6210\u529F', 'success');
// \u6A21\u62DF\u4E91\u7AEF\u90E8\u7F72\u8FC7\u7A0B
simulateDeployProcess();
} else {
hideLoading();
addLog(\`\u4E91\u7AEF\u90E8\u7F72\u5931\u8D25: \${result.message}\`, 'error');
}
})
.catch(error => {
hideLoading();
addLog(\`\u4E91\u7AEF\u90E8\u7F72\u8BF7\u6C42\u5931\u8D25: \${error.message}\`, 'error');
});
}
})
.catch(error => {
hideLoading();
addLog(\`\u83B7\u53D6\u90E8\u7F72\u5E73\u53F0\u4FE1\u606F\u5931\u8D25: \${error.message}\`, 'error');
console.error('\u83B7\u53D6\u90E8\u7F72\u5E73\u53F0\u4FE1\u606F\u5931\u8D25:', error);
});
});
}
// \u6A21\u62DF\u4E91\u7AEF\u90E8\u7F72\u8FC7\u7A0B
function simulateDeployProcess() {
let progress = 0;
const progressInterval = setInterval(() => {
progress += Math.random() * 8;
if (progress >= 100) {
progress = 10;
clearInterval(progressInterval);
}
updateProgress(progress);
}, 300);
// \u6A21\u62DF\u90E8\u7F72\u6B65\u9AA4
const steps = [
{ delay: 100, text: '\u68C0\u67E5\u73AF\u5883\u53D8\u91CF...', detail: '\u9A8C\u8BC1\u914D\u7F6E\u6587\u4EF6', log: '\u914D\u7F6E\u6587\u4EF6\u9A8C\u8BC1\u901A\u8FC7' },
{ delay: 5000, text: '\u89E6\u53D1\u4E91\u7AEF\u90E8\u7F72...', detail: '\u90E8\u7F72\u5230\u5F53\u524D\u5E73\u53F0', log: '\u4E91\u7AEF\u90E8\u7F72\u5DF2\u89E6\u53D1' },
{ delay: 9500, text: '\u6784\u5EFA\u9879\u76EE...', detail: '\u4E91\u7AEF\u6784\u5EFA\u4E2D', log: '\u4E91\u7AEF\u6784\u5EFA\u5B8C\u6210' },
{ delay: 5000, text: '\u90E8\u7F72\u66F4\u65B0...', detail: '\u53D1\u5E03\u5230\u751F\u4EA7\u73AF\u5883', log: '\u66F4\u65B0\u5DF2\u90E8\u7F72' },
{ delay: 5500, text: '\u670D\u52A1\u91CD\u542F...', detail: '\u5E94\u7528\u65B0\u914D\u7F6E', log: '\u670D\u52A1\u5DF2\u91CD\u542F' },
{ delay: 5000, text: '\u5065\u5EB7\u68C0\u67E5...', detail: '\u9A8C\u8BC1\u670D\u52A1\u72B6\u6001', log: '\u6240\u6709\u670D\u52A1\u8FD0\u884C\u6B63\u5E38' },
];
steps.forEach(step => {
setTimeout(() => {
updateLoadingText(step.text, step.detail);
addLog(step.log, 'success');
}, step.delay);
});
// \u90E8\u7F72\u540E\u68C0\u67E5\u670D\u52A1\u662F\u5426\u53EF\u7528
setTimeout(() => {
checkDeploymentStatus();
}, 900); // \u5EF6\u957F\u5EF6\u8FDF\u4EE5\u786E\u4FDD\u6A21\u62DF\u90E8\u7F72\u8FC7\u7A0B\u5B8C\u6210
}
// \u68C0\u67E5\u90E8\u7F72\u72B6\u6001\uFF0C\u6BCF\u96945\u79D2\u8BF7\u6C42/api/logs\u63A5\u53E3\u76F4\u5230\u8BF7\u6C42\u6210\u529F
function checkDeploymentStatus() {
const checkInterval = setInterval(() => {
updateLoadingText('\u90E8\u7F72\u5B8C\u6210\uFF0C\u68C0\u67E5\u670D\u52A1\u72B6\u6001...', '\u6B63\u5728\u8BF7\u6C42 /api/logs \u63A5\u53E3');
addLog('\u6B63\u5728\u68C0\u67E5\u670D\u52A1\u72B6\u6001...', 'info');
fetch(buildApiUrl('/api/logs'))
.then(response => {
if (response.ok) {
// \u8BF7\u6C42\u6210\u529F\uFF0C\u505C\u6B62\u68C0\u67E5
clearInterval(checkInterval);
// \u66F4\u65B0\u52A0\u8F7D\u72B6\u6001\u800C\u4E0D\u662F\u7ACB\u5373\u9690\u85CF
updateLoadingText('\u90E8\u7F72\u6210\u529F\uFF01', '\u670D\u52A1\u5DF2\u91CD\u542F\u5E76\u6B63\u5E38\u8FD0\u884C');
addLog('===== \u90E8\u7F72\u5B8C\u6210 =====', 'success');
addLog('\u90E8\u7F72\u7248\u672C: ' + latestVersion, 'info');
addLog('\u7CFB\u7EDF\u5DF2\u66F4\u65B0\u5E76\u91CD\u542F', 'success');
// \u90E8\u7F72\u5B8C\u6210\u540E\u518D\u6B21\u786E\u8BA4\uFF0C\u8BBF\u95EE/api/logs\u63A5\u53E3\u6765\u786E\u8BA4\u90E8\u7F72\u5B8C\u6210
confirmDeploymentByLogs();
} else {
addLog('\u670D\u52A1\u68C0\u67E5\u4E2D - \u72B6\u6001\u7801: ' + response.status, 'info');
}
})
.catch(error => {
addLog('\u670D\u52A1\u68C0\u67E5\u4E2D - \u8FDE\u63A5\u5931\u8D25: ' + error.message, 'info');
});
}, 500); // \u6BCF5\u79D2\u68C0\u67E5\u4E00\u6B21
}
// \u90E8\u7F72\u5B8C\u6210\u540E\u901A\u8FC7\u8BBF\u95EE/api/logs\u63A5\u53E3\u6765\u786E\u8BA4\u90E8\u7F72\u5B8C\u6210
function confirmDeploymentByLogs() {
// \u90E8\u7F72\u5B8C\u6210\u540E\u7684\u786E\u8BA4\u68C0\u67E5
let confirmationAttempts = 0;
const maxAttempts = 3; // \u6700\u591A\u5C1D\u8BD53\u6B21\u786E\u8BA4\u90E8\u7F72\u5B8C\u6210
const confirmationInterval = setInterval(() => {
confirmationAttempts++;
updateLoadingText('\u90E8\u7F72\u5B8C\u6210\u786E\u8BA4\u4E2D...', '\u6B63\u5728\u786E\u8BA4\u90E8\u7F72\u5B8C\u6210 (' + confirmationAttempts + '/' + maxAttempts + ')');
addLog('\u90E8\u7F72\u5B8C\u6210\u786E\u8BA4 - \u5C1D\u8BD5 ' + confirmationAttempts + '/' + maxAttempts, 'info');
fetch(buildApiUrl('/api/logs'))
.then(response => {
if (response.ok) {
// \u8BF7\u6C42\u6210\u529F\uFF0C\u505C\u6B62\u786E\u8BA4\u68C0\u67E5
clearInterval(confirmationInterval);
// \u663E\u793A\u6210\u529F\u4FE1\u606F\u540E\u5EF6\u8FDF\u9690\u85CF\u52A0\u8F7D\u906E\u7F69
updateLoadingText('\u90E8\u7F72\u786E\u8BA4\u6210\u529F\uFF01', '\u670D\u52A1\u5DF2\u91CD\u542F\u5E76\u6B63\u5E38\u8FD0\u884C');
addLog('\u90E8\u7F72\u786E\u8BA4\u6210\u529F - /api/logs \u63A5\u53E3\u8BBF\u95EE\u6B63\u5E38', 'success');
setTimeout(() => {
hideLoading();
// \u663E\u793A\u6210\u529F\u5F39\u7A97
customAlert('\u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548');
addLog('\u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548', 'success');
}, 200);
} else if (confirmationAttempts >= maxAttempts) {
// \u8FBE\u5230\u6700\u5927\u5C1D\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u786E\u8BA4\u68C0\u67E5
clearInterval(confirmationInterval);
updateLoadingText('\u90E8\u7F72\u786E\u8BA4\u5B8C\u6210', '\u670D\u52A1\u5DF2\u91CD\u542F');
addLog('\u90E8\u7F72\u786E\u8BA4\u5B8C\u6210 - \u5DF2\u8FBE\u5230\u6700\u5927\u5C1D\u8BD5\u6B21\u6570', 'warn');
setTimeout(() => {
hideLoading();
// \u663E\u793A\u6210\u529F\u5F39\u7A97
customAlert('\u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548');
addLog('\u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548', 'success');
}, 200);
} else {
addLog('\u90E8\u7F72\u786E\u8BA4\u4E2D - \u72B6\u6001\u7801: ' + response.status, 'info');
}
})
.catch(error => {
if (confirmationAttempts >= maxAttempts) {
// \u8FBE\u5230\u6700\u5927\u5C1D\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u786E\u8BA4\u68C0\u67E5
clearInterval(confirmationInterval);
updateLoadingText('\u90E8\u7F72\u786E\u8BA4\u5B8C\u6210', '\u670D\u52A1\u5DF2\u91CD\u542F');
addLog('\u90E8\u7F72\u786E\u8BA4\u5B8C\u6210 - \u5DF2\u8FBE\u5230\u6700\u5927\u5C1D\u8BD5\u6B21\u6570', 'warn');
setTimeout(() => {
hideLoading();
// \u663E\u793A\u6210\u529F\u5F39\u7A97
customAlert('\u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548');
addLog('\u90E8\u7F72\u6210\u529F\uFF01\u4E91\u7AEF\u90E8\u7F72\u5DF2\u5B8C\u6210\uFF0C\u670D\u52A1\u5DF2\u91CD\u542F\uFF0C\u914D\u7F6E\u5DF2\u751F\u6548', 'success');
}, 200);
} else {
addLog('\u90E8\u7F72\u786E\u8BA4\u4E2D - \u8FDE\u63A5\u5931\u8D25: ' + error.message, 'info');
}
});
}, 5000); // \u6BCF5\u79D2\u68C0\u67E5\u4E00\u6B21\uFF0C\u7528\u4E8E\u786E\u8BA4\u90E8\u7F72\u5B8C\u6210
}
// \u68C0\u67E5URL\u4E2D\u7684token\u662F\u5426\u4E0EcurrentAdminToken\u5339\u914D
function checkAdminToken() {
let _reverseProxy = customBaseUrl; // \u4F7F\u7528\u5168\u5C40\u53D8\u91CF customBaseUrl
// \u83B7\u53D6URL\u8DEF\u5F84\u5E76\u63D0\u53D6token
let urlPath = window.location.pathname;
// \u5982\u679C\u914D\u7F6E\u4E86\u53CD\u4EE3\u8DEF\u5F84\uFF0C\u5FC5\u987B\u5148\u5265\u79BB\u5B83
if(_reverseProxy) {
try {
// \u89E3\u6790\u914D\u7F6E\u4E2D\u7684\u8DEF\u5F84\u90E8\u5206\uFF0C\u4F8B\u5982 http://192.168.8.1:2333/danmu_api => /danmu_api
let proxyPath = _reverseProxy.startsWith('http')
? new URL(_reverseProxy).pathname
: _reverseProxy;
// \u786E\u4FDD\u79FB\u9664\u5C3E\u90E8\u659C\u6760
if (proxyPath.endsWith('/')) {
proxyPath = proxyPath.slice(0, -1);
}
// \u5982\u679C\u5F53\u524DURL\u5305\u542B\u6B64\u524D\u7F00\uFF0C\u5219\u79FB\u9664\u5B83
if(proxyPath && urlPath.startsWith(proxyPath)) {
urlPath = urlPath.substring(proxyPath.length);
}
} catch(e) {
console.error("\u89E3\u6790\u53CD\u4EE3\u8DEF\u5F84\u5931\u8D25", e);
}
}
const pathParts = urlPath.split('/').filter(part => part !== '');
const urlToken = pathParts.length > 0 ? pathParts[0] : currentToken; // \u5982\u679C\u6CA1\u6709\u8DEF\u5F84\u6BB5\uFF0C\u4F7F\u7528\u9ED8\u8BA4token
// \u68C0\u67E5\u662F\u5426\u914D\u7F6E\u4E86ADMIN_TOKEN\u4E14URL\u4E2D\u7684token\u7B49\u4E8EcurrentAdminToken
return currentAdminToken && currentAdminToken.trim() !== '' && urlToken === currentAdminToken;
}
// \u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u76F8\u5173\u914D\u7F6E
async function checkDeployPlatformConfig() {
// \u9996\u5148\u68C0\u67E5\u662F\u5426\u914D\u7F6E\u4E86ADMIN_TOKEN
if (!checkAdminToken()) {
// \u83B7\u53D6\u5F53\u524D\u9875\u9762\u7684\u534F\u8BAE\u3001\u4E3B\u673A\u548C\u7AEF\u53E3
const protocol = window.location.protocol;
const host = window.location.host;
let displayBase;
if (customBaseUrl) {
displayBase = customBaseUrl.startsWith('http')
? customBaseUrl
: (protocol + '//' + host + customBaseUrl);
} else {
displayBase = protocol + '//' + host;
}
if (displayBase.endsWith('/')) {
displayBase = displayBase.slice(0, -1);
}
return { success: false, message: \`<div style="text-align: left;">
<p style="margin-bottom: 12px; font-weight: 500;">\u68C0\u6D4B\u5230\u672A\u914D\u7F6E\u7CFB\u7EDF\u7BA1\u7406\u4EE4\u724C (ADMIN_TOKEN)\uFF0C\u65E0\u6CD5\u4F7F\u7528\u7CFB\u7EDF\u914D\u7F6E\u529F\u80FD\u3002</p>
<div style="background: rgba(0,0,0,0.03); padding: 16px; border-radius: 12px; font-size: 13px; border: 1px solid rgba(0,0,0,0.05);">
<p style="margin-bottom: 8px; font-weight: bold; color: var(--text-primary);">\u5982\u4F55\u4FEE\u590D\uFF1A</p>
<ol style="padding-left: 20px; margin-bottom: 12px; color: var(--text-secondary); line-height: 1.6;">
<li>\u5728\u90E8\u7F72\u5E73\u53F0\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF <code>ADMIN_TOKEN</code></li>
<li>\u91CD\u65B0\u90E8\u7F72\u670D\u52A1</li>
<li>\u4F7F\u7528\u5E26Token\u7684\u94FE\u63A5\u8BBF\u95EE</li>
</ol>
<p style="margin-bottom: 6px; font-weight: bold; color: var(--text-primary);">\u8BBF\u95EE\u793A\u4F8B\uFF1A</p>
<code style="display: block; background: #fff; padding: 10px; border-radius: 8px; border: 1px solid rgba(0,0,0,0.08); word-break: break-all; font-family: 'SF Mono', monospace; color: var(--primary-color);">\${displayBase}/{ADMIN_TOKEN}</code>
</div>
</div>\` };
}
try {
const response = await fetch(buildApiUrl('/api/config', true));
if (!response.ok) {
throw new Error('HTTP error! status: ' + response.status);
}
const config = await response.json();
const deployPlatform = config.envs.deployPlatform || 'node';
// \u5982\u679C\u662Fnode\u90E8\u7F72\u5E73\u53F0\uFF0C\u53EA\u9700\u8981\u68C0\u67E5ADMIN_TOKEN
if (deployPlatform.toLowerCase() === 'node') {
return { success: true, message: 'Node\u90E8\u7F72\u5E73\u53F0\uFF0C\u4EC5\u9700\u914D\u7F6EADMIN_TOKEN' };
}
// \u5BF9\u4E8E\u5176\u4ED6\u90E8\u7F72\u5E73\u53F0\uFF0C\u6536\u96C6\u6240\u6709\u7F3A\u5931\u7684\u73AF\u5883\u53D8\u91CF
const missingVars = [];
const deployPlatformProject = config.originalEnvVars.DEPLOY_PLATFROM_PROJECT;
const deployPlatformToken = config.originalEnvVars.DEPLOY_PLATFROM_TOKEN;
const deployPlatformAccount = config.originalEnvVars.DEPLOY_PLATFROM_ACCOUNT;
if (!deployPlatformProject || deployPlatformProject.trim() === '') {
missingVars.push('DEPLOY_PLATFROM_PROJECT');
}
if (!deployPlatformToken || deployPlatformToken.trim() === '') {
missingVars.push('DEPLOY_PLATFROM_TOKEN');
}
// \u5BF9\u4E8E\u9700\u8981\u8D26\u53F7ID\u7684\u90E8\u7F72\u5E73\u53F0\uFF0C\u8FD8\u9700\u8981\u68C0\u67E5DEPLOY_PLATFROM_ACCOUNT
if (['netlify', 'cloudflare', 'huggingface'].includes(deployPlatform.toLowerCase())) {
if (!deployPlatformAccount || deployPlatformAccount.trim() === '') {
missingVars.push('DEPLOY_PLATFROM_ACCOUNT');
}
}
if (missingVars.length > 0) {
const missingVarsStr = missingVars.join('\u3001');
return { success: false, message: '\u90E8\u7F72\u5E73\u53F0\u4E3A' + deployPlatform + '\uFF0C\u8BF7\u914D\u7F6E\u4EE5\u4E0B\u7F3A\u5931\u7684\u73AF\u5883\u53D8\u91CF\uFF1A' + missingVarsStr };
}
return { success: true, message: deployPlatform + '\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E\u5B8C\u6574' };
} catch (error) {
console.error('\u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E\u5931\u8D25:', error);
return { success: false, message: '\u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u914D\u7F6E\u5931\u8D25: ' + error.message };
}
}
// \u83B7\u53D6\u5E76\u8BBE\u7F6E\u914D\u7F6E\u4FE1\u606F
async function fetchAndSetConfig() {
const config = await fetch(buildApiUrl('/api/config', true)).then(response => response.json());
const hasAdminToken = config.hasAdminToken;
currentAdminToken = config.originalEnvVars?.ADMIN_TOKEN || '';
return config;
}
// \u68C0\u67E5\u5E76\u5904\u7406\u7BA1\u7406\u5458\u4EE4\u724C
function checkAndHandleAdminToken() {
if (!checkAdminToken()) {
// \u7981\u7528\u7CFB\u7EDF\u914D\u7F6E\u6309\u94AE\u5E76\u6DFB\u52A0\u63D0\u793A
const envNavBtn = document.getElementById('env-nav-btn');
if (envNavBtn) {
envNavBtn.title = '\u8BF7\u5148\u914D\u7F6EADMIN_TOKEN\u5E76\u4F7F\u7528\u6B63\u786E\u7684admin token\u8BBF\u95EE\u4EE5\u542F\u7528\u7CFB\u7EDF\u7BA1\u7406\u529F\u80FD';
}
}
}
// \u6E32\u67D3\u503C\u8F93\u5165\u63A7\u4EF6
function renderValueInput(item) {
const container = document.getElementById('value-input-container');
const type = item ? item.type : document.getElementById('value-type').value;
const value = item ? item.value : '';
const currentKey = item ? item.key : document.getElementById('env-key').value;
if (type === 'boolean') {
// \u5E03\u5C14\u5F00\u5173
// \u5BF9\u4E8ELIKE_SWITCH\u53D8\u91CF\uFF0C\u9ED8\u8BA4\u503C\u8BBE\u4E3Atrue\uFF08\u5F00\u542F\u72B6\u6001\uFF09
let checked;
if (currentKey === 'LIKE_SWITCH' || currentKey === 'REMEMBER_LAST_SELECT') {
// \u5982\u679C\u503C\u4E3A\u7A7A\u6216\u672A\u5B9A\u4E49\uFF0CLIKE_SWITCH\u548CREMEMBER_LAST_SELECT\u9ED8\u8BA4\u4E3Atrue\uFF08\u5F00\u542F\uFF09
checked = value === 'true' || value === true || (value === '' || value === undefined || value === null);
} else {
checked = value === 'true' || value === true;
}
container.innerHTML = \`
<label>\u503C</label>
<div class="switch-container">
<label class="switch">
<input type="checkbox" id="bool-value" \${checked ? 'checked' : ''}>
<span class="slider"></span>
</label>
<span class="switch-label" id="bool-label">\${checked ? '\u542F\u7528' : '\u7981\u7528'}</span>
</div>
\`;
document.getElementById('bool-value').addEventListener('change', function(e) {
document.getElementById('bool-label').textContent = e.target.checked ? '\u542F\u7528' : '\u7981\u7528';
});
} else if (type === 'number') {
// \u6570\u5B57\u6EDA\u8F6E
const min = item && item.min !== undefined ? item.min : 1;
const max = item && item.max !== undefined ? item.max : 100;
const currentValue = value || min;
container.innerHTML = \`
<label>\u503C (\${min}-\${max})</label>
<div class="number-picker">
<div class="number-controls">
<button type="button" class="number-btn" onclick="adjustNumber(1)">\u25B2</button>
<button type="button" class="number-btn" onclick="adjustNumber(-1)">\u25BC</button>
</div>
<div class="number-display" id="num-value">\${currentValue}</div>
</div>
<div class="number-range">
<input type="range" id="num-slider" min="\${min}" max="\${max}" value="\${currentValue}"
oninput="updateNumberDisplay(this.value)">
</div>
\`;
} else if (type === 'select') {
// \u6807\u7B7E\u9009\u62E9
const options = item && item.options ? item.options : ['option1', 'option2', 'option3'];
const optionsInput = item ? '' : \`
<div class="form-group margin-bottom-15">
<label>\u53EF\u9009\u9879 (\u9017\u53F7\u5206\u9694)</label>
<input type="text" id="select-options" placeholder="\u4F8B\u5982: debug,info,warn,error"
value="\${options.join(',')}" onchange="updateTagOptions()">
</div>
\`;
container.innerHTML = \`
\${optionsInput}
<label>\u9009\u62E9\u503C</label>
<div class="tag-selector" id="tag-selector">
\${options.map(opt => \`
<div class="tag-option \${opt === value ? 'selected' : ''}"
data-value="\${opt}" onclick="selectTag(this)">
\${opt}
</div>
\`).join('')}
</div>
\`;
} else if (type === 'multi-select') {
// \u591A\u9009\u6807\u7B7E\uFF08\u53EF\u62D6\u52A8\u6392\u5E8F\uFF09
const options = item && item.options ? item.options : ['option1', 'option2', 'option3', 'option4'];
// \u786E\u4FDDvalue\u662F\u5B57\u7B26\u4E32\u7C7B\u578B\u540E\u518D\u8FDB\u884Csplit\u64CD\u4F5C
const stringValue = typeof value === 'string' ? value : String(value || '');
const selectedValues = stringValue ? stringValue.split(',').map(v => v.trim()).filter(v => v) : [];
// \u68C0\u67E5\u662F\u5426\u4E3A SOURCE_ORDER\uFF0C\u5982\u679C\u662F\u5219\u4E0D\u663E\u793A\u5408\u5E76\u6A21\u5F0F
const shouldShowMergeMode = currentKey === 'MERGE_SOURCE_PAIRS' || currentKey === 'PLATFORM_ORDER';
// \u6BCF\u6B21\u6E32\u67D3\u65F6\u91CD\u7F6E\u5408\u5E76\u6A21\u5F0F\u72B6\u6001
isMergeMode = false;
stagingTags = [];
const optionsInput = item ? '' : \`
<div class="form-group margin-bottom-15">
<label>\u53EF\u9009\u9879 (\u9017\u53F7\u5206\u9694)</label>
<input type="text" id="multi-options" placeholder="\u4F8B\u5982: auth,payment,analytics"
value="\${options.join(',')}" onchange="updateMultiOptions()">
</div>
\`;
container.innerHTML = \`
\${optionsInput}
<label>\u5DF2\u9009\u62E9 (\u62D6\u52A8\u8C03\u6574\u987A\u5E8F)</label>
<div class="multi-select-container">
<div class="selected-tags \${selectedValues.length === 0 ? 'empty' : ''}" id="selected-tags">
\${selectedValues.map(val => \`
<div class="selected-tag" draggable="true" data-value="\${val}">
<span class="tag-text">\${val}</span>
<button type="button" class="remove-btn" onclick="removeSelectedTag(this)">\xD7</button>
</div>
\`).join('')}
</div>
\${shouldShowMergeMode ? \`
<div class="merge-mode-controls">
<div class="merge-mode-btn" id="merge-mode-toggle" onclick="toggleMergeMode()">
\u5F00\u542F\u5408\u5E76\u6A21\u5F0F
</div>
<div class="form-help" style="margin: 0; margin-left: 10px;">
\u5F00\u542F\u540E\u70B9\u51FB\u4E0B\u65B9\u9009\u9879\u5C06\u6DFB\u52A0\u5230\u6682\u5B58\u533A,\u7EC4\u5408\u540E\u70B9\u51FB \u221A \u786E\u8BA4
</div>
</div>
<div class="staging-area" id="staging-area">
<button type="button" class="confirm-merge-btn" onclick="confirmMergeGroup()" title="\u786E\u8BA4\u6DFB\u52A0\u8BE5\u7EC4">\u2713</button>
</div>
\` : ''}
<label>\u53EF\u9009\u9879 (\u70B9\u51FB\u6DFB\u52A0)</label>
<div class="available-tags" id="available-tags">
\${options.map(opt => {
return \`
<div class="available-tag"
data-value="\${opt}" onclick="addSelectedTag(this)">
\${opt}
</div>
\`;
}).join('')}
</div>
</div>
\${currentKey === 'MERGE_SOURCE_PAIRS' ? \`
<div style="margin-top: 15px; margin-bottom: 8px;">
<button type="button" class="btn btn-primary btn-sm" onclick="fetchAndShowRecentData()">
\u{1F4CA} \u67E5\u770B\u6700\u8FD1\u6570\u636E
</button>
</div>
<div id="recent-data-panel" class="recent-data-panel">
<div id="recent-data-list"></div>
</div>
\` : ''}
\`;
// \u8BBE\u7F6E\u62D6\u52A8\u4E8B\u4EF6
// \u7ACB\u5373\u6267\u884C\u4E00\u6B21\u72B6\u6001\u68C0\u67E5\uFF0C\u786E\u4FDD\u5DF2\u9009\u9879\u53D8\u7070
setTimeout(updateTagStates, 0);
setupDragAndDrop();
} else if (type === 'map') {
// \u6620\u5C04\u8868\u7C7B\u578B
const pairs = value ? value.split(';').map(pair => pair.trim()).filter(pair => pair) : [];
const mapItems = pairs.map(pair => {
if (pair.includes('->')) {
const [left, right] = pair.split('->').map(s => s.trim());
return { left, right };
}
return { left: pair, right: '' };
});
container.innerHTML = \`
<label>\u6620\u5C04\u914D\u7F6E</label>
<div class="map-container" id="map-container">
\${mapItems.map((item, index) => \`
<div class="map-item" data-index="\${index}">
<input type="text" class="map-input-left" placeholder="\u539F\u59CB\u503C" value="\${item.left}">
<span class="map-separator">-></span>
<input type="text" class="map-input-right" placeholder="\u6620\u5C04\u503C" value="\${item.right}">
<button type="button" class="btn btn-danger map-remove-btn" onclick="removeMapItem(this)">\u5220\u9664</button>
</div>
\`).join('')}
<div class="map-item-template" style="display: none;">
<input type="text" class="map-input-left" placeholder="\u539F\u59CB\u503C">
<span class="map-separator">-></span>
<input type="text" class="map-input-right" placeholder="\u6620\u5C04\u503C">
<button type="button" class="btn btn-danger map-remove-btn" onclick="removeMapItem(this)">\u5220\u9664</button>
</div>
</div>
<button type="button" class="btn btn-primary" onclick="addMapItem()">\u6DFB\u52A0\u6620\u5C04\u9879</button>
\`;
} else {
// \u6587\u672C\u8F93\u5165
const currentKey = document.getElementById('env-key') ? document.getElementById('env-key').value : '';
const isBilibiliCookie = currentKey === 'BILIBILI_COOKIE';
const isAiApiKey = currentKey === 'AI_API_KEY';
const isColorPool = currentKey === 'COLOR_POOL';
const isDanmuOffset = currentKey === 'DANMU_OFFSET';
const isCustomMergeRules = currentKey === 'CUSTOM_MERGE_RULES';
const offsetSources = item && item.sources ? item.sources : [];
if (isColorPool) {
// \u81EA\u5B9A\u4E49\u989C\u8272\u6C60\u4E13\u7528\u7F16\u8F91\u754C\u9762
const colors = parseColorPool(value);
container.innerHTML = \`
<label>\u989C\u8272\u6C60\u914D\u7F6E (CONVERT_COLOR \u4E3A color \u65F6\u751F\u6548)</label>
<div id="color-pool-display" class="color-pool-display">
\${renderColorItems(colors)}
</div>
<div class="color-pool-picker">
<div class="color-pool-picker-inner">
<div id="color-wheel" class="color-wheel">
<div class="color-wheel-center"></div>
<div id="wheel-dot" class="color-wheel-dot" style="top: 2px; left: 53px; background: hsl(0,100%,50%);"></div>
</div>
<div class="color-pool-preview">
<div id="color-preview-swatch" class="color-pool-preview-swatch" style="background: #ff0000;"></div>
<span id="color-preview-hex" class="color-pool-preview-hex">#ff0000</span>
</div>
<div class="color-pool-lightness">
<span>\u4EAE\u5EA6</span>
<input type="range" id="color-lightness" min="10" max="100" value="50">
</div>
<div class="color-pool-actions">
<button type="button" class="btn btn-primary btn-sm" onclick="addColorToPool()">\u6DFB\u52A0\u5230\u989C\u8272\u6C60</button>
<button type="button" class="btn btn-primary btn-sm" onclick="addRandomColorToPool()">\u968F\u673A\u6DFB\u52A0</button>
</div>
</div>
</div>
<div class="color-pool-actions">
<button type="button" class="btn btn-primary btn-sm" onclick="showBatchColorDialog()">\u6279\u91CF\u6DFB\u52A0</button>
<div class="spacer"></div>
<button type="button" class="btn btn-primary btn-sm" onclick="resetColorPool()">\u6062\u590D\u9ED8\u8BA4</button>
</div>
<textarea id="text-value" style="display: none;">\${value}</textarea>
\`;
setTimeout(initColorWheel, 0);
} else if (isDanmuOffset) {
// DANMU_OFFSET \u4E13\u7528\u7F16\u8F91\u754C\u9762
const rows = value && value.length > 50 ? Math.min(Math.max(Math.ceil(value.length / 50), 3), 10) : 3;
container.innerHTML = \`
<label>\u53D8\u91CF\u503C</label>
<textarea id="text-value" placeholder="\u683C\u5F0F\uFF1A\u5267\u540D:\u79D2 \u6216 \u5267\u540D/S01:\u79D2 \u6216 \u5267\u540D@\u6765\u6E90:\u79D2 \u6216 \u5267\u540D/S01/E01@\u6765\u6E90%:\u79D2" rows="\${rows}" class="text-monospace">\${value}</textarea>
<div style="margin-top: 8px; display: flex; gap: 10px;">
<button type="button" class="btn btn-primary btn-sm" id="offset-rule-toggle" onclick="toggleOffsetRulePanel()">
\u6DFB\u52A0\u89C4\u5219
</button>
<button type="button" class="btn btn-primary btn-sm" onclick="fetchAndShowRecentData()">
\u{1F4CA} \u67E5\u770B\u6700\u8FD1\u6570\u636E
</button>
</div>
<div id="recent-data-panel" class="recent-data-panel">
<div class="form-help" style="margin: 0 0 8px 0;">\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u53EF\u5FEB\u6377\u586B\u5165\u89C4\u5219\u8868\u5355\uFF1A</div>
<div id="recent-data-list"></div>
</div>
<div id="offset-rule-panel" class="offset-rule-panel">
<div class="form-help" style="margin: 0 0 8px 0;">\u5B63\u548C\u96C6\u4E0D\u586B\u5219\u5BF9\u6240\u6709\u5B63/\u96C6\u751F\u6548</div>
<div class="offset-form-row">
<div style="flex: 2; min-width: 100px;">
<label class="offset-label">\u5267\u540D *</label>
<input type="text" id="offset-anime" class="offset-input" placeholder="\u4F8B\u5982: overlord">
</div>
<div style="width: 65px;">
<label class="offset-label">\u5B63</label>
<input type="number" id="offset-season" class="offset-input" placeholder="" min="1" max="99">
</div>
<div style="width: 65px;">
<label class="offset-label">\u96C6</label>
<input type="number" id="offset-episode" class="offset-input" placeholder="" min="1" max="999">
</div>
<div style="width: 85px;">
<label class="offset-label">\u504F\u79FB\u79D2 *</label>
<input type="number" id="offset-seconds" class="offset-input" placeholder="90">
</div>
</div>
<div style="margin-bottom: 10px; display: flex; align-items: center; width: 100%;">
<label class="offset-label" style="display: flex; align-items: center; gap: 8px; cursor: pointer; margin: 0; white-space: nowrap;">
\u542F\u7528\u767E\u5206\u6BD4\u6A21\u5F0F\uFF08\u6309\u89C6\u9891\u65F6\u957F\u7F29\u653E\u5168\u90E8\u5F39\u5E55\u65F6\u95F4\uFF09
<input type="checkbox" id="offset-use-percent" style="width: 16px; height: 16px; margin: 0; flex-shrink: 0;">
</label>
</div>
\${offsetSources.length > 0 ? \`
<div style="margin-bottom: 10px;">
<label class="offset-label">\u6765\u6E90 (\u53EF\u9009\uFF0C\u4E0D\u9009\u5219\u5BF9\u6240\u6709\u6765\u6E90\u751F\u6548)</label>
<div id="offset-sources" class="offset-sources">
\${offsetSources.map(src => \`
<div class="offset-source-tag" data-value="\${src}" onclick="toggleOffsetSource(this)">
\${src}
</div>
\`).join('')}
</div>
</div>
\` : ''}
<div class="offset-actions">
<button type="button" class="btn btn-sm" onclick="toggleOffsetRulePanel()">\u53D6\u6D88</button>
<button type="button" class="btn btn-primary btn-sm" onclick="appendOffsetRule()">\u786E\u8BA4\u6DFB\u52A0</button>
</div>
</div>
\`;
} else if (isAiApiKey) {
// AI API Key \u4E13\u7528\u7F16\u8F91\u754C\u9762
container.innerHTML = \`
<div class="ai-apikey-editor">
<label>API Key \u503C</label>
<textarea class="form-group" id="text-value" placeholder="\u8BF7\u8F93\u5165 AI API Key" rows="3">\${value}</textarea>
<div class="form-help">\u652F\u6301 OpenAI \u517C\u5BB9\u7684 API\uFF0C\u9700\u914D\u5408 AI_BASE_URL \u548C AI_MODEL \u914D\u7F6E\u4F7F\u7528</div>
<div class="ai-apikey-status" id="ai-apikey-status">
<span class="ai-status-icon">\u{1F50D}</span>
<span class="ai-status-text">\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u6D4B\u8BD5\u8FDE\u901A\u6027</span>
</div>
<div class="ai-apikey-actions" style="margin-bottom: 15px;">
<button type="button" class="btn btn-primary btn-sm" id="ai-verify-btn" onclick="verifyAiConnection()">
\u{1F9EA} \u6D4B\u8BD5\u8FDE\u901A\u6027
</button>
</div>
</div>
\`;
} else if (isBilibiliCookie) {
// Bilibili Cookie \u4E13\u7528\u7F16\u8F91\u754C\u9762
const rows = value && value.length > 50 ? Math.min(Math.max(Math.ceil(value.length / 50), 3), 8) : 3;
container.innerHTML = \`
<div class="bili-cookie-editor">
<div class="bili-cookie-status" id="bili-cookie-status">
<span class="bili-status-text">\u68C0\u6D4B\u4E2D...</span>
</div>
<div class="bili-cookie-actions">
<button type="button" class="btn btn-primary btn-sm" onclick="startBilibiliQRLogin()">
\u626B\u7801\u767B\u5F55
</button>
</div>
<label>Cookie \u503C</label>
<textarea class="form-group" id="text-value" placeholder="SESSDATA=xxx; bili_jct=xxx; DedeUserID=xxx;" rows="\${rows}">\${value}</textarea>
<div class="form-help">\u63A8\u8350\u4F7F\u7528\u626B\u7801\u767B\u5F55\u81EA\u52A8\u83B7\u53D6\uFF0C\u6216\u624B\u52A8\u7C98\u8D34\u5305\u542B SESSDATA \u548C bili_jct \u7684\u5B8C\u6574 Cookie</div>
</div>
\`;
// \u81EA\u52A8\u68C0\u6D4B Cookie \u72B6\u6001 + \u76D1\u542C\u8F93\u5165\u53D8\u5316\uFF08\u9632\u6296\uFF09
setTimeout(() => {
autoCheckBilibiliCookieStatus();
const inputEl = document.getElementById('text-value');
if (inputEl) {
let debounceTimer = null;
inputEl.addEventListener('input', () => {
if (debounceTimer) clearTimeout(debounceTimer);
debounceTimer = setTimeout(() => {
autoCheckBilibiliCookieStatus();
}, 600);
});
}
}, 120);
} else if (isCustomMergeRules) {
// CUSTOM_MERGE_RULES \u4E13\u7528\u7F16\u8F91\u754C\u9762
const rows = value && value.length > 50 ? Math.min(Math.max(Math.ceil(value.length / 50), 3), 10) : 3;
container.innerHTML = \`
<label>\u53D8\u91CF\u503C</label>
<textarea id="text-value" placeholder="\u683C\u5F0F\uFF1A\u526F\u6E90 -> \u4E3B\u6E90 | \u8DEF\u7531\u89C4\u5219 \u6216 \u526F\u6E90 \xD7 \u4E3B\u6E90" rows="\${rows}" class="text-monospace">\${value || ''}</textarea>
<div style="margin-top: 8px; display: flex; gap: 10px;">
<button type="button" class="btn btn-primary btn-sm" id="merge-rule-toggle" onclick="toggleMergeRulePanel()">
\u6DFB\u52A0\u89C4\u5219
</button>
<button type="button" class="btn btn-primary btn-sm" onclick="fetchAndShowRecentData()">
\u{1F4CA} \u67E5\u770B\u6700\u8FD1\u6570\u636E
</button>
</div>
<div id="recent-data-panel" class="recent-data-panel">
<div class="form-help" style="margin: 0 0 8px 0;">\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u53EF\u5FEB\u6377\u586B\u5165\u89C4\u5219\u8868\u5355\uFF1A</div>
<div id="recent-data-list"></div>
</div>
<div id="merge-rule-panel" class="offset-rule-panel">
<div class="offset-form-row">
<div style="flex: 1; min-width: 120px;">
<label class="offset-label">\u526F\u6E90\u5B9E\u4F53\uFF08\u526F\u6E90\u5267\u540D@\u6E90\uFF09</label>
<input type="text" id="merge-sec-entity" class="offset-input" placeholder="\u4F8B: \u6211\u63A8\u7684\u5B69\u5B50/S01@bahamut" onfocus="setMergeFocus('sec')">
</div>
<div style="width: 60px;">
<label class="offset-label" style="text-align: center; display: block;">\u5173\u7CFB</label>
<select id="merge-action" class="offset-input" onchange="onMergeActionChange()" style="cursor: pointer; padding: 6px; text-align: center; font-weight: bold; font-size: 14px;">
<option value="->">-&gt;</option>
<option value="\xD7">\xD7</option>
</select>
<div id="merge-action-hint" style="font-size: 11px; color: #666; text-align: center; margin-top: 4px;">\u5408\u5E76</div>
</div>
<div style="flex: 1; min-width: 120px;">
<label class="offset-label">\u4E3B\u6E90\u5B9E\u4F53\uFF08\u4E3B\u6E90\u5267\u540D@\u6E90\uFF09</label>
<input type="text" id="merge-prim-entity" class="offset-input" placeholder="\u4F8B: \u6211\u63A8\u7684\u5B69\u5B50/S03@dandan" onfocus="setMergeFocus('prim')">
</div>
</div>
<div class="offset-form-row" id="merge-route-row">
<div style="flex: 1;">
<label class="offset-label">\u96C6\u6570\u8DEF\u7531\u89C4\u5219 (\u9009\u586B\uFF0C\u53EF\u591A\u7EC4\u3002\u4F8B\u5982: E01>E01,E25~E35>E25~E35)</label>
<input type="text" id="merge-route-rule" class="offset-input" placeholder="\u7559\u7A7A\u5219\u4EA4\u7531\u7CFB\u7EDF\u81EA\u52A8\u8BA1\u7B97\u504F\u79FB">
</div>
</div>
<div style="margin-bottom: 10px;">
<label class="offset-label">\u5FEB\u901F\u8FFD\u52A0\u6765\u6E90\u81F3\u5F53\u524D\u805A\u7126\u7684\u8F93\u5165\u6846 (\u6CA1\u6709 @ \u5219\u8FFD\u52A0 @xxx\uFF0C\u5DF2\u5B58\u5728 @ \u5219\u8FFD\u52A0 &xxx \u5408\u5E76\u5199\u6CD5)</label>
<div class="offset-sources">
\${offsetSources.map(src => \`
<div class="offset-source-tag" onclick="appendSourceToMerge('\${src}')">\${src}</div>
\`).join('')}
</div>
</div>
<div class="offset-actions">
<button type="button" class="btn btn-sm" onclick="toggleMergeRulePanel()">\u53D6\u6D88</button>
<button type="button" class="btn btn-primary btn-sm" onclick="appendMergeRule()">\u786E\u8BA4\u6DFB\u52A0</button>
</div>
</div>
\`;
} else if (value && value.length > 50) {
const rows = Math.min(Math.max(Math.ceil(value.length / 50), 3), 10);
container.innerHTML = \`
<label>\u53D8\u91CF\u503C *</label>
<textarea id="text-value" placeholder="\u4F8B\u5982: localhost" rows="\${rows}" class="text-monospace">\${value}</textarea>
\`;
} else {
container.innerHTML = \`
<label>\u53D8\u91CF\u503C *</label>
<input type="text" id="text-value" placeholder="\u4F8B\u5982: localhost" value="\${value}" required>
\`;
}
}
}
// ===== \u989C\u8272\u6C60\u64CD\u4F5C\u51FD\u6570 =====
// \u8272\u8F6E\u72B6\u6001
let wheelHue = 0;
let wheelLightness = 50;
let wheelCleanup = null;
// \u89E3\u6790\u989C\u8272\u6C60\u5B57\u7B26\u4E32\u4E3A\u5341\u8FDB\u5236\u6570\u7EC4
function parseColorPool(str) {
if (!str) return [];
return str.split(',').map(c => parseInt(c.trim(), 10)).filter(c => !isNaN(c) && c >= 0 && c <= 16777215);
}
// \u6E32\u67D3\u989C\u8272\u6C60\u8272\u5757 HTML
function renderColorItems(colors) {
if (colors.length === 0) return '<span class="color-pool-empty">\u672A\u914D\u7F6E\uFF0C\u5C06\u4F7F\u7528\u9ED8\u8BA4\u989C\u8272\u6C60</span>';
return colors.map((c, i) => \`
<div class="color-pool-item">
<span class="color-pool-swatch" style="background: #\${c.toString(16).padStart(6, '0')};"></span>
<span class="color-pool-value">\${c}</span>
<button type="button" class="color-pool-remove" onclick="removeColorFromPool(\${i})">&times;</button>
</div>
\`).join('');
}
// HSL -> RGB -> \u5341\u8FDB\u5236
function hslToDecimal(h, s, l) {
s /= 100;
l /= 100;
const k = n => (n + h / 30) % 12;
const a = s * Math.min(l, 1 - l);
const f = n => l - a * Math.max(-1, Math.min(k(n) - 3, 9 - k(n), 1));
const r = Math.round(f(0) * 255);
const g = Math.round(f(8) * 255);
const b = Math.round(f(4) * 255);
return (r << 16) | (g << 8) | b;
}
// \u66F4\u65B0\u8272\u8F6E\u9884\u89C8
function updateWheelPreview() {
const dec = hslToDecimal(wheelHue, 100, wheelLightness);
const hex = '#' + dec.toString(16).padStart(6, '0');
const swatch = document.getElementById('color-preview-swatch');
const hexLabel = document.getElementById('color-preview-hex');
const dot = document.getElementById('wheel-dot');
if (swatch) swatch.style.background = hex;
if (hexLabel) hexLabel.textContent = hex;
if (dot) dot.style.background = hex;
}
// \u521D\u59CB\u5316\u8272\u8F6E\u4EA4\u4E92
function initColorWheel() {
if (wheelCleanup) wheelCleanup();
const wheel = document.getElementById('color-wheel');
const slider = document.getElementById('color-lightness');
if (!wheel) return;
let dragging = false;
function handleWheelEvent(e) {
const rect = wheel.getBoundingClientRect();
const cx = rect.width / 2;
const cy = rect.height / 2;
const x = e.clientX - rect.left - cx;
const y = e.clientY - rect.top - cy;
const dist = Math.sqrt(x * x + y * y);
const outerR = rect.width / 2;
const innerR = outerR * 0.22;
if (dist < innerR || dist > outerR) return;
let angle = Math.atan2(y, x) * 180 / Math.PI + 90;
if (angle < 0) angle += 360;
wheelHue = Math.round(angle % 360);
const dot = document.getElementById('wheel-dot');
if (dot) {
const r = (innerR + outerR) / 2;
const rad = (wheelHue - 90) * Math.PI / 180;
dot.style.left = (cx + r * Math.cos(rad) - 7) + 'px';
dot.style.top = (cy + r * Math.sin(rad) - 7) + 'px';
}
updateWheelPreview();
}
const onMove = e => {
if (dragging) handleWheelEvent(e);
};
const onTouchMove = e => {
if (dragging) handleWheelEvent(e.touches[0]);
};
const onUp = () => {
dragging = false;
};
wheel.addEventListener('mousedown', e => {
dragging = true;
handleWheelEvent(e);
});
wheel.addEventListener('touchstart', e => {
dragging = true;
handleWheelEvent(e.touches[0]);
e.preventDefault();
}, { passive: false });
document.addEventListener('mousemove', onMove);
document.addEventListener('touchmove', onTouchMove, { passive: false });
document.addEventListener('mouseup', onUp);
document.addEventListener('touchend', onUp);
if (slider) {
slider.addEventListener('input', function() {
wheelLightness = parseInt(this.value, 10);
updateWheelPreview();
});
}
wheelCleanup = () => {
document.removeEventListener('mousemove', onMove);
document.removeEventListener('touchmove', onTouchMove);
document.removeEventListener('mouseup', onUp);
document.removeEventListener('touchend', onUp);
wheelCleanup = null;
};
updateWheelPreview();
}
// \u989C\u8272\u6C60 - \u8FFD\u52A0\u989C\u8272\u503C
function appendColorToPool(decimal) {
const textarea = document.getElementById('text-value');
const current = textarea.value.trim();
textarea.value = current ? current + ',' + decimal : String(decimal);
syncColorPoolDisplay();
}
// \u989C\u8272\u6C60 - \u4ECE\u8272\u8F6E\u6DFB\u52A0
function addColorToPool() {
appendColorToPool(hslToDecimal(wheelHue, 100, wheelLightness));
}
// \u989C\u8272\u6C60 - \u968F\u673A\u6DFB\u52A0\uFF08crypto \u771F\u968F\u673A\uFF09
function addRandomColorToPool() {
const arr = new Uint32Array(1);
crypto.getRandomValues(arr);
appendColorToPool(arr[0] % 16777216);
}
// \u989C\u8272\u6C60 - \u5220\u9664\u6307\u5B9A\u989C\u8272
function removeColorFromPool(index) {
const textarea = document.getElementById('text-value');
const colors = textarea.value.split(',').map(c => c.trim()).filter(c => c);
colors.splice(index, 1);
textarea.value = colors.join(',');
syncColorPoolDisplay();
}
// \u989C\u8272\u6C60 - \u6062\u590D\u9ED8\u8BA4\uFF08\u6E05\u7A7A\u503C\uFF0C\u540E\u7AEF\u9ED8\u8BA4\u503C\u81EA\u52A8\u751F\u6548\uFF09
function resetColorPool() {
const textarea = document.getElementById('text-value');
textarea.value = '';
syncColorPoolDisplay();
}
// \u989C\u8272\u6C60 - \u540C\u6B65\u8272\u5757\u5C55\u793A
function syncColorPoolDisplay() {
const textarea = document.getElementById('text-value');
const display = document.getElementById('color-pool-display');
if (!textarea || !display) return;
display.innerHTML = renderColorItems(parseColorPool(textarea.value));
}
// \u989C\u8272\u6C60 - \u6279\u91CF\u6DFB\u52A0\u5F39\u7A97
function showBatchColorDialog() {
const overlay = document.createElement('div');
overlay.id = 'batch-color-overlay';
overlay.className = 'batch-color-overlay';
overlay.innerHTML = \`
<div class="batch-color-dialog">
<div style="font-size: 15px; font-weight: 600; margin-bottom: 12px;">\u6279\u91CF\u6DFB\u52A0\u989C\u8272</div>
<div class="form-help" style="margin: 0 0 10px 0;">\u652F\u6301\u5341\u8FDB\u5236\uFF08\u5982 16777215\uFF09\u548C\u5341\u516D\u8FDB\u5236\uFF08\u5982 #ffffff\uFF09\uFF0C\u9017\u53F7\u5206\u9694</div>
<textarea id="batch-color-input" class="batch-color-input" placeholder="\u4F8B\u5982: #ff0000, 65280, #0000ff, 16776960" rows="4"></textarea>
<div id="batch-color-preview" class="batch-color-preview"></div>
<div class="batch-color-actions">
<button type="button" class="btn btn-sm" onclick="closeBatchColorDialog()">\u53D6\u6D88</button>
<button type="button" class="btn btn-primary btn-sm" onclick="confirmBatchColor()">\u786E\u8BA4\u6DFB\u52A0</button>
</div>
</div>
\`;
document.body.appendChild(overlay);
overlay.addEventListener('click', function(e) {
if (e.target === overlay) closeBatchColorDialog();
});
const input = document.getElementById('batch-color-input');
if (input) input.addEventListener('input', updateBatchColorPreview);
}
// \u989C\u8272\u6C60 - \u5173\u95ED\u6279\u91CF\u5F39\u7A97
function closeBatchColorDialog() {
const overlay = document.getElementById('batch-color-overlay');
if (overlay) overlay.remove();
}
// \u989C\u8272\u6C60 - \u89E3\u6790\u5355\u4E2A\u989C\u8272\u503C\uFF08\u652F\u6301\u5341\u8FDB\u5236\u548C #hex\uFF09
function parseColorValue(raw) {
const s = raw.trim();
if (!s) return NaN;
if (s.startsWith('#')) {
const hex = s.slice(1);
if (/^[0-9a-fA-F]{3}$/.test(hex)) {
const full = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2];
return parseInt(full, 16);
}
if (/^[0-9a-fA-F]{6}$/.test(hex)) {
return parseInt(hex, 16);
}
return NaN;
}
const n = parseInt(s, 10);
if (isNaN(n) || n < 0 || n > 16777215) return NaN;
return n;
}
// \u989C\u8272\u6C60 - \u6279\u91CF\u9884\u89C8
function updateBatchColorPreview() {
const input = document.getElementById('batch-color-input');
const preview = document.getElementById('batch-color-preview');
if (!input || !preview) return;
const parts = input.value.split(',');
const html = parts.map(raw => {
const c = parseColorValue(raw);
if (isNaN(c)) return '';
return \`<span class="batch-color-preview-swatch" style="background: #\${c.toString(16).padStart(6, '0')};"></span>\`;
}).filter(Boolean).join('');
preview.innerHTML = html || '<span class="color-pool-empty">\u8F93\u5165\u989C\u8272\u540E\u9884\u89C8</span>';
}
// \u989C\u8272\u6C60 - \u786E\u8BA4\u6279\u91CF\u6DFB\u52A0
function confirmBatchColor() {
const input = document.getElementById('batch-color-input');
if (!input) return;
const parts = input.value.split(',');
const valid = parts.map(raw => parseColorValue(raw)).filter(c => !isNaN(c));
if (valid.length === 0) {
customAlert('\u672A\u8BC6\u522B\u5230\u6709\u6548\u989C\u8272\u503C');
return;
}
const textarea = document.getElementById('text-value');
const current = textarea.value.trim();
const newVal = valid.map(String).join(',');
textarea.value = current ? current + ',' + newVal : newVal;
syncColorPoolDisplay();
closeBatchColorDialog();
}
// DANMU_OFFSET \u5FEB\u901F\u914D\u7F6E - \u5207\u6362\u89C4\u5219\u9762\u677F
function toggleOffsetRulePanel() {
const panel = document.getElementById('offset-rule-panel');
if (panel) {
const isHidden = getComputedStyle(panel).display === 'none';
panel.style.display = isHidden ? 'block' : 'none';
const btn = document.getElementById('offset-rule-toggle');
if (btn) btn.textContent = isHidden ? '\u6536\u8D77' : '\u6DFB\u52A0\u89C4\u5219';
}
}
// DANMU_OFFSET \u5FEB\u901F\u914D\u7F6E - \u5207\u6362\u6765\u6E90\u9009\u4E2D\u72B6\u6001
function toggleOffsetSource(el) {
el.classList.toggle('selected');
}
// DANMU_OFFSET \u5FEB\u901F\u914D\u7F6E - \u786E\u8BA4\u6DFB\u52A0\u89C4\u5219
function appendOffsetRule() {
const anime = document.getElementById('offset-anime').value.trim();
const season = document.getElementById('offset-season').value.trim();
const episode = document.getElementById('offset-episode').value.trim();
const seconds = document.getElementById('offset-seconds').value.trim();
const usePercent = !!document.getElementById('offset-use-percent')?.checked;
if (!anime) {
customAlert('\u8BF7\u8F93\u5165\u5267\u540D');
return;
}
if (!seconds) {
customAlert('\u8BF7\u8F93\u5165\u504F\u79FB\u79D2\u6570');
return;
}
if (episode && !season) {
customAlert('\u6307\u5B9A\u96C6\u65F6\u9700\u8981\u540C\u65F6\u6307\u5B9A\u5B63');
return;
}
let path = anime;
if (season) {
path += '/S' + season.padStart(2, '0');
if (episode) {
path += '/E' + episode.padStart(2, '0');
}
}
const sourcesEl = document.getElementById('offset-sources');
if (sourcesEl) {
const selectedSources = Array.from(sourcesEl.querySelectorAll('.offset-source-tag.selected'))
.map(el => el.dataset.value);
if (selectedSources.length > 0) {
path += '@' + selectedSources.join('&');
}
}
if (usePercent) {
path += '%';
}
const rule = path + ':' + seconds;
const textarea = document.getElementById('text-value');
const current = textarea.value.trim();
textarea.value = current ? current + ',' + rule : rule;
document.getElementById('offset-anime').value = '';
document.getElementById('offset-season').value = '';
document.getElementById('offset-episode').value = '';
document.getElementById('offset-seconds').value = '';
const usePercentEl = document.getElementById('offset-use-percent');
if (usePercentEl) {
usePercentEl.checked = false;
}
if (sourcesEl) {
sourcesEl.querySelectorAll('.offset-source-tag.selected').forEach(el => {
el.classList.remove('selected');
});
}
toggleOffsetRulePanel();
}
// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u7126\u70B9\u72B6\u6001\u8BB0\u5F55
let currentMergeFocus = 'sec';
function setMergeFocus(type) {
currentMergeFocus = type;
}
// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u5FEB\u6377\u8FFD\u52A0\u6765\u6E90
function appendSourceToMerge(source) {
const inputId = currentMergeFocus === 'sec' ? 'merge-sec-entity' : 'merge-prim-entity';
const inputEl = document.getElementById(inputId);
if (!inputEl) return;
let val = inputEl.value.trim();
if (val.includes('@')) {
val += '&' + source;
} else {
val += '@' + source;
}
inputEl.value = val;
inputEl.focus(); // \u4FDD\u6301\u7126\u70B9\uFF0C\u65B9\u4FBF\u7528\u6237\u8FDE\u7EED\u70B9\u51FB\u591A\u4E2A\u6765\u6E90
}
// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u5207\u6362\u89C4\u5219\u9762\u677F
function toggleMergeRulePanel() {
const panel = document.getElementById('merge-rule-panel');
if (panel) {
const isHidden = getComputedStyle(panel).display === 'none';
panel.style.display = isHidden ? 'block' : 'none';
const btn = document.getElementById('merge-rule-toggle');
if (btn) btn.textContent = isHidden ? '\u6536\u8D77' : '\u6DFB\u52A0\u89C4\u5219';
}
}
// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u5207\u6362\u64CD\u4F5C\u7B26\u8054\u52A8
function onMergeActionChange() {
const action = document.getElementById('merge-action').value;
const routeRow = document.getElementById('merge-route-row');
const hint = document.getElementById('merge-action-hint');
if (action === '\xD7') {
if (routeRow) routeRow.style.display = 'none';
if (hint) hint.textContent = '\u963B\u65AD';
} else {
if (routeRow) routeRow.style.display = 'flex';
if (hint) hint.textContent = '\u5408\u5E76';
}
}
// CUSTOM_MERGE_RULES \u5FEB\u901F\u914D\u7F6E - \u786E\u8BA4\u6DFB\u52A0\u89C4\u5219
function appendMergeRule() {
const secEntity = document.getElementById('merge-sec-entity').value.trim();
const action = document.getElementById('merge-action').value;
const primEntity = document.getElementById('merge-prim-entity').value.trim();
const routeRule = document.getElementById('merge-route-rule').value.trim();
if (!secEntity || !primEntity) {
customAlert('\u526F\u6E90\u5B9E\u4F53\u548C\u4E3B\u6E90\u5B9E\u4F53\u4E0D\u80FD\u4E3A\u7A7A');
return;
}
let rule = secEntity + ' ' + action + ' ' + primEntity;
if (action === '->' && routeRule) {
rule += ' | ' + routeRule;
}
const textarea = document.getElementById('text-value');
const current = textarea.value.trim();
if (current && !current.endsWith(';')) {
textarea.value = current + ';' + rule;
} else {
textarea.value = current ? current + rule : rule;
}
// \u6E05\u7A7A\u8868\u5355
document.getElementById('merge-sec-entity').value = '';
document.getElementById('merge-prim-entity').value = '';
document.getElementById('merge-route-rule').value = '';
toggleMergeRulePanel();
}
// \u8C03\u6574\u6570\u5B57
function adjustNumber(delta) {
const display = document.getElementById('num-value');
const slider = document.getElementById('num-slider');
let value = parseInt(display.textContent) + delta;
value = Math.max(parseInt(slider.min), Math.min(parseInt(slider.max), value));
display.textContent = value;
slider.value = value;
}
// \u66F4\u65B0\u6570\u5B57\u663E\u793A
function updateNumberDisplay(value) {
document.getElementById('num-value').textContent = value;
}
// \u9009\u62E9\u6807\u7B7E
function selectTag(element) {
document.querySelectorAll('.tag-option').forEach(el => el.classList.remove('selected'));
element.classList.add('selected');
}
// \u66F4\u65B0\u6807\u7B7E\u9009\u9879
function updateTagOptions() {
const input = document.getElementById('select-options');
const options = input.value.split(',').map(s => s.trim()).filter(s => s);
const container = document.getElementById('tag-selector');
container.innerHTML = options.map(opt => \`
<div class="tag-option" data-value="\${opt}" onclick="selectTag(this)">
\${opt}
</div>
\`).join('');
}
// \u7EDF\u4E00\u7684\u72B6\u6001\u68C0\u67E5\u51FD\u6570
function updateTagStates() {
// \u786E\u4FDD DOM \u5143\u7D20\u5B58\u5728\uFF0C\u9632\u6B62\u5728\u6E32\u67D3\u8FC7\u7A0B\u4E2D\u88AB\u8C03\u7528\u51FA\u9519
const keyInput = document.getElementById('env-key');
if (!keyInput) return;
const currentKey = keyInput.value;
const isMergeSourcePairs = currentKey === 'MERGE_SOURCE_PAIRS';
// 1. \u83B7\u53D6\u5F53\u524D\u6682\u5B58\u533A\u4E2D\u7684Token (\u9632\u6B62\u540C\u7EC4\u5185\u91CD\u590D)
const stagingTokens = new Set(stagingTags);
// 2. \u83B7\u53D6\u5DF2\u786E\u8BA4\u7684 Selected Tags (\u4EC5\u5728\u975E\u5408\u5E76\u6A21\u5F0F\u4E0B\u9700\u8981\u68C0\u67E5)
const selectedTagElements = Array.from(document.querySelectorAll('.selected-tag'));
// 3. \u66F4\u65B0\u6240\u6709\u53EF\u9009\u9879\u7684\u72B6\u6001
const availableTags = document.querySelectorAll('.available-tag');
availableTags.forEach(tag => {
const value = tag.dataset.value;
let shouldDisable = false;
if (isMergeMode) {
// [\u5408\u5E76\u6A21\u5F0F\u903B\u8F91]
// \u53EA\u8981\u4E0D\u5728\u5F53\u524D\u7684\u6682\u5B58\u533A\u4E2D\uFF0C\u5C31\u53EF\u4EE5\u9009\uFF08\u5141\u8BB8 bilibili&a \u548C bilibili&b\uFF09
// \u4E5F\u5C31\u662F\u8BF4\uFF0C\u6211\u4EEC\u5B8C\u5168\u4E0D\u68C0\u67E5 selectedTagElements
if (stagingTokens.has(value)) {
shouldDisable = true;
}
} else {
// [\u666E\u901A\u6A21\u5F0F\u903B\u8F91]
// \u53EA\u8981\u5DF2\u7ECF\u88AB\u9009\u4E86\uFF0C\u5C31\u7981\u7528 (\u7CBE\u51C6\u5339\u914D)
const isAlreadySelected = selectedTagElements.some(el => el.dataset.value === value);
if (isAlreadySelected) {
shouldDisable = true;
}
// \u7279\u6B8A\u60C5\u51B5\uFF1A\u5982\u679C\u662F MERGE_SOURCE_PAIRS \u4F46\u6CA1\u5F00\u5408\u5E76\u6A21\u5F0F\uFF0C\u4E14\u8FD8\u6CA1\u88AB\u9009\uFF0C\u4E5F\u7981\u7528\uFF08\u5F3A\u8FEB\u7528\u6237\u5F00\u5F00\u5173\uFF09
if (isMergeSourcePairs && !isAlreadySelected) {
shouldDisable = true;
}
}
if (shouldDisable) {
tag.classList.add('disabled');
} else {
tag.classList.remove('disabled');
}
});
}
// \u6DFB\u52A0\u5DF2\u9009\u6807\u7B7E
function addSelectedTag(element) {
const value = element.dataset.value;
if (isMergeMode) {
if (!stagingTags.includes(value)) {
stagingTags.push(value);
renderStagingArea();
updateTagStates(); // \u7ACB\u5373\u66F4\u65B0\u72B6\u6001 (\u8BE5\u9009\u9879\u53D8\u7070\uFF0C\u9632\u6B62\u540C\u7EC4\u91CD\u590D)
}
return;
}
if (element.classList.contains('disabled')) return;
const container = document.getElementById('selected-tags');
// \u79FB\u9664empty\u7C7B
container.classList.remove('empty');
// \u521B\u5EFA\u65B0\u6807\u7B7E
const tag = document.createElement('div');
tag.className = 'selected-tag';
tag.draggable = true;
tag.dataset.value = value;
tag.innerHTML = \`
<span class="tag-text">\${value}</span>
<button type="button" class="remove-btn" onclick="removeSelectedTag(this)">\xD7</button>
\`;
container.appendChild(tag);
updateTagStates(); // \u7ACB\u5373\u66F4\u65B0\u72B6\u6001
setupDragAndDrop();
}
// \u79FB\u9664\u5DF2\u9009\u6807\u7B7E
function removeSelectedTag(button) {
const tag = button.parentElement;
tag.remove();
const container = document.getElementById('selected-tags');
if (container.children.length === 0) {
container.classList.add('empty');
}
updateTagStates(); // \u79FB\u9664\u540E\u7ACB\u5373\u91CA\u653E\u72B6\u6001
setupDragAndDrop();
}
// \u66F4\u65B0\u591A\u9009\u9009\u9879
function updateMultiOptions() {
const input = document.getElementById('multi-options');
const options = input.value.split(',').map(s => s.trim()).filter(s => s);
const container = document.getElementById('available-tags');
container.innerHTML = options.map(opt => {
return \`
<div class="available-tag"
data-value="\${opt}" onclick="addSelectedTag(this)">
\${opt}
</div>
\`;
}).join('');
updateTagStates(); // \u521D\u59CB\u5316\u65F6\u66F4\u65B0\u72B6\u6001
}
// \u5207\u6362\u5408\u5E76\u6A21\u5F0F
function toggleMergeMode() {
isMergeMode = !isMergeMode;
const btn = document.getElementById('merge-mode-toggle');
const stagingArea = document.getElementById('staging-area');
if (isMergeMode) {
btn.classList.add('active');
btn.innerHTML = '\u5173\u95ED\u5408\u5E76\u6A21\u5F0F';
stagingArea.classList.add('active');
renderStagingArea();
} else {
btn.classList.remove('active');
btn.innerHTML = '\u5F00\u542F\u5408\u5E76\u6A21\u5F0F';
stagingArea.classList.remove('active');
stagingTags = [];
}
// \u5207\u6362\u6A21\u5F0F\u65F6\u7ACB\u5373\u5237\u65B0\u6240\u6709\u53EF\u9009\u9879\u72B6\u6001
updateTagStates();
}
// \u6E32\u67D3\u6682\u5B58\u533A
function renderStagingArea() {
const container = document.getElementById('staging-area');
const confirmBtn = container.querySelector('.confirm-merge-btn');
while (container.firstChild && container.firstChild !== confirmBtn) {
container.removeChild(container.firstChild);
}
if (stagingTags.length === 0) {
const hint = document.createElement('span');
hint.textContent = '\u8BF7\u70B9\u51FB\u4E0B\u65B9\u9009\u9879\u8FDB\u884C\u7EC4\u5408...';
hint.style.color = '#666';
hint.style.fontSize = '12px';
container.insertBefore(hint, confirmBtn);
confirmBtn.disabled = true;
} else {
stagingTags.forEach((tag, index) => {
if (index > 0) {
const sep = document.createElement('span');
sep.className = 'staging-separator';
sep.textContent = '&';
container.insertBefore(sep, confirmBtn);
}
const tagEl = document.createElement('div');
tagEl.className = 'staging-tag';
tagEl.draggable = true;
tagEl.dataset.value = tag;
tagEl.dataset.index = index;
tagEl.innerHTML = \`\${tag}<span class="remove-btn" onclick="removeFromStaging(\${index})">\xD7</span>\`;
container.insertBefore(tagEl, confirmBtn);
});
confirmBtn.disabled = false;
setupStagingDragAndDrop();
}
}
// \u4ECE\u6682\u5B58\u533A\u79FB\u9664
function removeFromStaging(index) {
stagingTags.splice(index, 1);
renderStagingArea();
updateTagStates(); // \u79FB\u9664\u540E\u5237\u65B0\u72B6\u6001
}
// \u786E\u8BA4\u6DFB\u52A0\u5408\u5E76\u7EC4
function confirmMergeGroup() {
if (stagingTags.length === 0) return;
const groupValue = stagingTags.join('&');
const container = document.getElementById('selected-tags');
container.classList.remove('empty');
const tag = document.createElement('div');
tag.className = 'selected-tag';
tag.draggable = true;
tag.dataset.value = groupValue;
tag.innerHTML = \`<span class="tag-text">\${groupValue}</span><button type="button" class="remove-btn" onclick="removeSelectedTag(this)">\xD7</button>\`;
container.appendChild(tag);
setupDragAndDrop();
stagingTags = []; // \u6E05\u7A7A\u6682\u5B58\u533A
renderStagingArea();
updateTagStates(); // \u5173\u952E\uFF1A\u786E\u8BA4\u540E\u7ACB\u5373\u91CD\u65B0\u8BA1\u7B97\u6240\u6709\u53EF\u9009\u9879\u7684\u7981\u7528\u72B6\u6001 (\u91CD\u7F6E\u4E3A\u53EF\u7528)
}
// \u8BBE\u7F6E\u6682\u5B58\u533A\u62D6\u653E\u529F\u80FD
function setupStagingDragAndDrop() {
const container = document.getElementById('staging-area');
const tags = container.querySelectorAll('.staging-tag');
tags.forEach(tag => {
tag.addEventListener('dragstart', handleStagingDragStart);
tag.addEventListener('dragend', handleStagingDragEnd);
tag.addEventListener('dragover', handleStagingDragOver);
tag.addEventListener('drop', handleStagingDrop);
tag.addEventListener('dragenter', handleStagingDragEnter);
tag.addEventListener('dragleave', handleStagingDragLeave);
tag.addEventListener('touchstart', handleStagingTouchStart);
tag.addEventListener('touchmove', handleStagingTouchMove);
tag.addEventListener('touchend', handleStagingTouchEnd);
});
}
let stagingDraggedElement = null;
function handleStagingDragStart(e) {
stagingDraggedElement = this;
this.classList.add('dragging');
e.dataTransfer.effectAllowed = 'move';
}
function handleStagingDragEnd(e) {
this.classList.remove('dragging');
document.querySelectorAll('.staging-tag').forEach(tag => {
tag.classList.remove('drag-over');
});
}
function handleStagingDragOver(e) {
if (e.preventDefault) {
e.preventDefault();
}
e.dataTransfer.dropEffect = 'move';
return false;
}
function handleStagingDragEnter(e) {
if (this !== stagingDraggedElement) {
this.classList.add('drag-over');
}
}
function handleStagingDragLeave(e) {
this.classList.remove('drag-over');
}
function handleStagingDrop(e) {
if (e.stopPropagation) {
e.stopPropagation();
}
if (stagingDraggedElement !== this) {
const draggedIndex = parseInt(stagingDraggedElement.dataset.index);
const targetIndex = parseInt(this.dataset.index);
const [movedItem] = stagingTags.splice(draggedIndex, 1);
stagingTags.splice(targetIndex, 0, movedItem);
renderStagingArea();
}
this.classList.remove('drag-over');
return false;
}
function handleStagingTouchStart(e) {
if (e.target.classList.contains('remove-btn')) {
return;
}
e.preventDefault();
stagingDraggedElement = this;
this.classList.add('dragging');
this.style.transform = 'rotate(5deg)';
this.style.opacity = '0.8';
this.style.zIndex = '1000';
}
function handleStagingTouchMove(e) {
if (!stagingDraggedElement) return;
e.preventDefault();
const touch = e.touches[0];
const elementRect = stagingDraggedElement.getBoundingClientRect();
if (!document.getElementById('staging-touch-drag-ghost')) {
const ghostElement = stagingDraggedElement.cloneNode(true);
ghostElement.id = 'staging-touch-drag-ghost';
ghostElement.style.position = 'fixed';
ghostElement.style.left = '0';
ghostElement.style.top = '0';
ghostElement.style.pointerEvents = 'none';
ghostElement.style.zIndex = '9999';
ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)';
ghostElement.style.opacity = '0.8';
ghostElement.style.boxSizing = 'border-box';
ghostElement.style.width = elementRect.width + 'px';
ghostElement.style.height = elementRect.height + 'px';
document.body.appendChild(ghostElement);
} else {
const ghostElement = document.getElementById('staging-touch-drag-ghost');
ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)';
}
const container = document.getElementById('staging-area');
const tags = Array.from(container.querySelectorAll('.staging-tag')).filter(tag => tag !== stagingDraggedElement);
let targetElement = null;
for (const tag of tags) {
const rect = tag.getBoundingClientRect();
if (touch.clientX >= rect.left && touch.clientX <= rect.right &&
touch.clientY >= rect.top && touch.clientY <= rect.bottom) {
targetElement = tag;
break;
}
}
document.querySelectorAll('.staging-tag').forEach(tag => {
if (tag !== stagingDraggedElement) {
tag.classList.remove('drag-over');
}
});
if (targetElement) {
targetElement.classList.add('drag-over');
}
}
function handleStagingTouchEnd(e) {
if (!stagingDraggedElement) return;
e.preventDefault();
const ghostElement = document.getElementById('staging-touch-drag-ghost');
if (ghostElement) {
document.body.removeChild(ghostElement);
}
const touch = e.changedTouches[0];
const targetElement = document.elementFromPoint(touch.clientX, touch.clientY);
const targetTag = targetElement.closest('.staging-tag');
if (targetTag && targetTag !== stagingDraggedElement) {
const draggedIndex = parseInt(stagingDraggedElement.dataset.index);
const targetIndex = parseInt(targetTag.dataset.index);
const [movedItem] = stagingTags.splice(draggedIndex, 1);
stagingTags.splice(targetIndex, 0, movedItem);
renderStagingArea();
}
stagingDraggedElement.style.transform = '';
stagingDraggedElement.style.opacity = '';
stagingDraggedElement.style.zIndex = '';
stagingDraggedElement.classList.remove('dragging');
document.querySelectorAll('.staging-tag').forEach(tag => {
tag.classList.remove('drag-over');
});
stagingDraggedElement = null;
}
// \u8BBE\u7F6E\u62D6\u653E\u529F\u80FD
let draggedElement = null;
let touchDragging = false;
// \u4E3A\u5220\u9664\u6309\u94AE\u6DFB\u52A0\u89E6\u6478\u4E8B\u4EF6\u76D1\u542C\u5668\uFF0C\u4EE5\u786E\u4FDD\u5176\u53EF\u4EE5\u88AB\u70B9\u51FB
function setupDragAndDrop() {
const container = document.getElementById('selected-tags');
const tags = container.querySelectorAll('.selected-tag');
tags.forEach(tag => {
// \u9F20\u6807\u62D6\u653E\u4E8B\u4EF6
tag.addEventListener('dragstart', handleDragStart);
tag.addEventListener('dragend', handleDragEnd);
tag.addEventListener('dragover', handleDragOver);
tag.addEventListener('drop', handleDrop);
tag.addEventListener('dragenter', handleDragEnter);
tag.addEventListener('dragleave', handleDragLeave);
// \u89E6\u6478\u62D6\u653E\u4E8B\u4EF6
tag.addEventListener('touchstart', handleTouchStart);
tag.addEventListener('touchmove', handleTouchMove);
tag.addEventListener('touchend', handleTouchEnd);
// \u786E\u4FDD\u5220\u9664\u6309\u94AE\u53EF\u4EE5\u88AB\u70B9\u51FB
const removeBtn = tag.querySelector('.remove-btn');
if (removeBtn) {
// \u963B\u6B62\u5220\u9664\u6309\u94AE\u4E0A\u7684\u89E6\u6478\u4E8B\u4EF6\u5192\u6CE1\u5230\u7236\u5143\u7D20
removeBtn.addEventListener('touchstart', function(e) {
e.stopPropagation();
});
removeBtn.addEventListener('touchend', function(e) {
e.stopPropagation();
});
}
});
}
function handleDragStart(e) {
draggedElement = this;
this.classList.add('dragging');
e.dataTransfer.effectAllowed = 'move';
}
function handleDragEnd(e) {
this.classList.remove('dragging');
document.querySelectorAll('.selected-tag').forEach(tag => {
tag.classList.remove('drag-over');
});
}
function handleDragOver(e) {
if (e.preventDefault) {
e.preventDefault();
}
e.dataTransfer.dropEffect = 'move';
return false;
}
function handleDragEnter(e) {
if (this !== draggedElement) {
this.classList.add('drag-over');
}
}
function handleDragLeave(e) {
this.classList.remove('drag-over');
}
function handleDrop(e) {
if (e.stopPropagation) {
e.stopPropagation();
}
if (draggedElement !== this) {
const container = document.getElementById('selected-tags');
const allTags = Array.from(container.querySelectorAll('.selected-tag'));
const draggedIndex = allTags.indexOf(draggedElement);
const targetIndex = allTags.indexOf(this);
if (draggedIndex < targetIndex) {
this.parentNode.insertBefore(draggedElement, this.nextSibling);
} else {
this.parentNode.insertBefore(draggedElement, this);
}
}
this.classList.remove('drag-over');
return false;
}
// \u89E6\u6478\u62D6\u52A8\u4E8B\u4EF6\u5904\u7406
function handleTouchStart(e) {
// \u68C0\u67E5\u70B9\u51FB\u7684\u662F\u5426\u662F\u5220\u9664\u6309\u94AE
if (e.target.classList.contains('remove-btn')) {
// \u5982\u679C\u70B9\u51FB\u7684\u662F\u5220\u9664\u6309\u94AE\uFF0C\u5219\u4E0D\u6267\u884C\u62D6\u52A8\u64CD\u4F5C
return;
}
// \u9632\u6B62\u9ED8\u8BA4\u7684\u89E6\u6478\u884C\u4E3A
e.preventDefault();
// \u83B7\u53D6\u89E6\u6478\u70B9
const touch = e.touches[0];
// \u6A21\u62DF\u62D6\u52A8\u5F00\u59CB
draggedElement = this;
this.classList.add('dragging');
touchDragging = true;
// \u6DFB\u52A0\u62D6\u52A8\u6837\u5F0F
this.style.transform = 'rotate(5deg)';
this.style.opacity = '0.8';
this.style.zIndex = '1000';
// \u6DFB\u52A0\u89E6\u6478\u79FB\u52A8\u548C\u7ED3\u675F\u4E8B\u4EF6\u76D1\u542C\u5668\u5230\u6587\u6863
document.addEventListener('touchmove', handleTouchMove, { passive: false });
document.addEventListener('touchend', handleTouchEnd, { passive: false });
}
function handleTouchMove(e) {
if (!touchDragging || !draggedElement) return;
// \u9632\u6B62\u9ED8\u8BA4\u7684\u89E6\u6478\u884C\u4E3A
e.preventDefault();
// \u4F7F\u7528 requestAnimationFrame \u6765\u4F18\u5316\u6027\u80FD
if (window.requestAnimationFrame) {
window.requestAnimationFrame(() => {
// \u83B7\u53D6\u89E6\u6478\u70B9\u4F4D\u7F6E
const touch = e.touches[0];
// \u83B7\u53D6\u62D6\u52A8\u5143\u7D20\u7684\u5C3A\u5BF8
const elementRect = draggedElement.getBoundingClientRect();
// \u521B\u5EFA\u4E00\u4E2A\u4E34\u65F6\u7684\u62D6\u52A8\u5143\u7D20\uFF0C\u800C\u4E0D\u662F\u79FB\u52A8\u539F\u59CB\u5143\u7D20
if (!document.getElementById('touch-drag-ghost')) {
const ghostElement = draggedElement.cloneNode(true);
ghostElement.id = 'touch-drag-ghost';
ghostElement.style.position = 'fixed'; // \u4F7F\u7528 fixed \u800C\u4E0D\u662F absolute
ghostElement.style.left = '0';
ghostElement.style.top = '0';
ghostElement.style.pointerEvents = 'none'; // \u9632\u6B62\u5E72\u6270\u89E6\u6478\u4E8B\u4EF6
ghostElement.style.zIndex = '9999';
ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)';
ghostElement.style.opacity = '0.8';
ghostElement.style.boxSizing = 'border-box'; // \u786E\u4FDD\u5C3A\u5BF8\u8BA1\u7B97\u6B63\u786E
ghostElement.style.width = elementRect.width + 'px'; // \u56FA\u5B9A\u5BBD\u5EA6
ghostElement.style.height = elementRect.height + 'px'; // \u56FA\u5B9A\u9AD8\u5EA6
document.body.appendChild(ghostElement);
} else {
const ghostElement = document.getElementById('touch-drag-ghost');
ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)';
}
// \u68C0\u67E5\u4E0E\u5176\u4ED6\u5143\u7D20\u7684\u78B0\u649E
const container = document.getElementById('selected-tags');
const tags = Array.from(container.querySelectorAll('.selected-tag')).filter(tag => tag !== draggedElement);
let targetElement = null;
for (const tag of tags) {
const rect = tag.getBoundingClientRect();
if (touch.clientX >= rect.left && touch.clientX <= rect.right &&
touch.clientY >= rect.top && touch.clientY <= rect.bottom) {
targetElement = tag;
break;
}
}
// \u9AD8\u4EAE\u76EE\u6807\u5143\u7D20
document.querySelectorAll('.selected-tag').forEach(tag => {
if (tag !== draggedElement) {
tag.classList.remove('drag-over');
}
});
if (targetElement) {
targetElement.classList.add('drag-over');
}
});
} else {
// \u964D\u7EA7\u5904\u7406\uFF0C\u5982\u679C\u4E0D\u652F\u6301 requestAnimationFrame
const touch = e.touches[0];
// \u83B7\u53D6\u62D6\u52A8\u5143\u7D20\u7684\u5C3A\u5BF8
const elementRect = draggedElement.getBoundingClientRect();
// \u521B\u5EFA\u4E00\u4E2A\u4E34\u65F6\u7684\u62D6\u52A8\u5143\u7D20\uFF0C\u800C\u4E0D\u662F\u79FB\u52A8\u539F\u59CB\u5143\u7D20
if (!document.getElementById('touch-drag-ghost')) {
const ghostElement = draggedElement.cloneNode(true);
ghostElement.id = 'touch-drag-ghost';
ghostElement.style.position = 'fixed'; // \u4F7F\u7528 fixed \u800C\u4E0D\u662F absolute
ghostElement.style.left = '0';
ghostElement.style.top = '0';
ghostElement.style.pointerEvents = 'none'; // \u9632\u6B62\u5E72\u6270\u89E6\u6478\u4E8B\u4EF6
ghostElement.style.zIndex = '9999';
ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)';
ghostElement.style.opacity = '0.8';
ghostElement.style.boxSizing = 'border-box'; // \u786E\u4FDD\u5C3A\u5BF8\u8BA1\u7B97\u6B63\u786E
ghostElement.style.width = elementRect.width + 'px'; // \u56FA\u5B9A\u5BBD\u5EA6
ghostElement.style.height = elementRect.height + 'px'; // \u56FA\u5B9A\u9AD8\u5EA6
document.body.appendChild(ghostElement);
} else {
const ghostElement = document.getElementById('touch-drag-ghost');
ghostElement.style.transform = 'translate(' + (touch.clientX - (elementRect.width / 2)) + 'px, ' + (touch.clientY - (elementRect.height / 2)) + 'px) rotate(5deg)';
}
// \u68C0\u67E5\u4E0E\u5176\u4ED6\u5143\u7D20\u7684\u78B0\u649E
const container = document.getElementById('selected-tags');
const tags = Array.from(container.querySelectorAll('.selected-tag')).filter(tag => tag !== draggedElement);
let targetElement = null;
for (const tag of tags) {
const rect = tag.getBoundingClientRect();
if (touch.clientX >= rect.left && touch.clientX <= rect.right &&
touch.clientY >= rect.top && touch.clientY <= rect.bottom) {
targetElement = tag;
break;
}
}
// \u9AD8\u4EAE\u76EE\u6807\u5143\u7D20
document.querySelectorAll('.selected-tag').forEach(tag => {
if (tag !== draggedElement) {
tag.classList.remove('drag-over');
}
});
if (targetElement) {
targetElement.classList.add('drag-over');
}
}
}
function handleTouchEnd(e) {
if (!touchDragging || !draggedElement) return;
// \u9632\u6B62\u9ED8\u8BA4\u7684\u89E6\u6478\u884C\u4E3A
e.preventDefault();
// \u79FB\u9664\u4E34\u65F6\u62D6\u52A8\u5143\u7D20
const ghostElement = document.getElementById('touch-drag-ghost');
if (ghostElement) {
document.body.removeChild(ghostElement);
}
// \u627E\u5230\u76EE\u6807\u5143\u7D20\uFF08\u5982\u679C\u6709\uFF09
const touch = e.changedTouches[0];
const targetElement = document.elementFromPoint(touch.clientX, touch.clientY);
const container = document.getElementById('selected-tags');
const targetTag = targetElement.closest('.selected-tag');
// \u5982\u679C\u76EE\u6807\u662F\u53E6\u4E00\u4E2A\u6807\u7B7E\uFF0C\u6267\u884C\u4EA4\u6362
if (targetTag && targetTag !== draggedElement && container.contains(targetTag)) {
const allTags = Array.from(container.querySelectorAll('.selected-tag'));
const draggedIndex = allTags.indexOf(draggedElement);
const targetIndex = allTags.indexOf(targetTag);
if (draggedIndex < targetIndex) {
targetTag.parentNode.insertBefore(draggedElement, targetTag.nextSibling);
} else {
targetTag.parentNode.insertBefore(draggedElement, targetTag);
}
}
// \u91CD\u7F6E\u5143\u7D20\u6837\u5F0F
draggedElement.style.transform = '';
draggedElement.style.opacity = '';
draggedElement.style.zIndex = '';
// \u79FB\u9664\u62D6\u52A8\u7C7B
draggedElement.classList.remove('dragging');
document.querySelectorAll('.selected-tag').forEach(tag => {
tag.classList.remove('drag-over');
});
// \u91CD\u7F6E\u53D8\u91CF
touchDragging = false;
draggedElement = null;
// \u79FB\u9664\u4E8B\u4EF6\u76D1\u542C\u5668
document.removeEventListener('touchmove', handleTouchMove);
document.removeEventListener('touchend', handleTouchEnd);
}
// \u663E\u793A\u52A0\u8F7D\u906E\u7F69
function showLoading(text, detail) {
document.getElementById('loading-text').textContent = text;
document.getElementById('loading-detail').textContent = detail;
document.getElementById('loading-overlay').classList.add('active');
document.getElementById('progress-container').classList.add('active');
updateProgress(0);
}
// \u9690\u85CF\u52A0\u8F7D\u906E\u7F69
function hideLoading() {
document.getElementById('loading-overlay').classList.remove('active');
setTimeout(() => {
document.getElementById('progress-container').classList.remove('active');
updateProgress(0);
}, 300);
}
// \u66F4\u65B0\u52A0\u8F7D\u6587\u672C
function updateLoadingText(text, detail) {
document.getElementById('loading-text').textContent = text;
document.getElementById('loading-detail').textContent = detail;
}
// \u66F4\u65B0\u8FDB\u5EA6\u6761
function updateProgress(percent) {
document.getElementById('progress-bar').style.width = percent + '%';
}
// \u6E32\u67D3\u73AF\u5883\u53D8\u91CF\u5217\u8868
function renderEnvList() {
const list = document.getElementById('env-list');
const items = envVariables[currentCategory] || [];
if (items.length === 0) {
list.innerHTML = '<p class="text-gray padding-20 text-center">\u6682\u65E0\u914D\u7F6E\u9879</p>';
return;
}
list.innerHTML = items.map((item, index) => {
const typeLabel = item.type === 'boolean' ? '\u5E03\u5C14' :
item.type === 'number' ? '\u6570\u5B57' :
item.type === 'select' ? '\u5355\u9009' :
item.type === 'map' ? '\u6620\u5C04' :
item.type === 'multi-select' ? '\u591A\u9009' : '\u6587\u672C';
const badgeClass = item.type === 'multi-select' ? 'multi' : '';
const escapedValue = escapeHtml(item.value);
return \`
<div class="env-item">
<div class="env-info">
<strong>\${item.key}<span class="value-type-badge \${badgeClass}">\${typeLabel}</span></strong>
<div class="text-dark-gray">\${escapedValue}</div>
<div class="text-gray font-size-12 margin-top-3">\${item.description || '\u65E0\u63CF\u8FF0'}</div>
</div>
<div class="env-actions">
<button class="btn btn-primary" onclick="editEnv(\${index})">\u7F16\u8F91</button>
<button class="btn btn-danger" onclick="deleteEnv(\${index})">\u5220\u9664</button>
</div>
</div>
\`;
}).join('');
}
// \u7F16\u8F91\u73AF\u5883\u53D8\u91CF
function editEnv(index) {
const item = envVariables[currentCategory][index];
const editButton = event.target; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u7F16\u8F91\u6309\u94AE
// \u8BBE\u7F6E\u6309\u94AE\u4E3A\u52A0\u8F7D\u72B6\u6001
const originalText = editButton.innerHTML;
editButton.innerHTML = '<span class="loading-spinner-small"></span>';
editButton.disabled = true;
editingKey = index;
document.getElementById('modal-title').textContent = '\u7F16\u8F91\u914D\u7F6E\u9879';
document.getElementById('env-category').value = currentCategory;
document.getElementById('env-key').value = item.key;
document.getElementById('env-description').value = item.description || '';
document.getElementById('value-type').value = item.type || 'text';
// \u8BBE\u7F6E\u5B57\u6BB5\u4E3A\u53EA\u8BFB\uFF08\u7F16\u8F91\u6A21\u5F0F\u4E0B\uFF09
document.getElementById('env-category').disabled = true;
document.getElementById('env-key').readOnly = true;
document.getElementById('value-type').disabled = true;
document.getElementById('env-description').readOnly = true;
// \u6E32\u67D3\u5BF9\u5E94\u7684\u503C\u8F93\u5165\u63A7\u4EF6
renderValueInput(item);
document.getElementById('env-modal').classList.add('active');
// \u6062\u590D\u6309\u94AE\u72B6\u6001\uFF08\u5728\u5B9E\u9645\u573A\u666F\u4E2D\uFF0C\u8FD9\u4F1A\u5728\u7F16\u8F91\u5B8C\u6210\u540E\u53D1\u751F\uFF0C\u6BD4\u5982\u5728\u4FDD\u5B58\u540E\u6216\u53D6\u6D88\u540E\uFF09
// \u4E3A\u4E86\u6F14\u793A\uFF0C\u8FD9\u91CC\u7ACB\u5373\u6062\u590D\u6309\u94AE\u72B6\u6001\uFF0C\u5B9E\u9645\u4F7F\u7528\u4E2D\u5E94\u8BE5\u5728\u9002\u5F53\u7684\u5730\u65B9\u6062\u590D\u6309\u94AE\u72B6\u6001
editButton.innerHTML = originalText;
editButton.disabled = false;
}
// \u5220\u9664\u73AF\u5883\u53D8\u91CF
function deleteEnv(index) {
customConfirm('\u786E\u5B9A\u8981\u5220\u9664\u8FD9\u4E2A\u914D\u7F6E\u9879\u5417?', '\u5220\u9664\u786E\u8BA4').then(confirmed => {
if (confirmed) {
const item = envVariables[currentCategory][index];
const key = item.key;
const deleteButton = event.target; // \u83B7\u53D6\u5F53\u524D\u70B9\u51FB\u7684\u5220\u9664\u6309\u94AE
// \u8BBE\u7F6E\u6309\u94AE\u4E3A\u52A0\u8F7D\u72B6\u6001
const originalText = deleteButton.innerHTML;
deleteButton.innerHTML = '<span class="loading-spinner-small"></span>';
deleteButton.disabled = true;
// \u8C03\u7528API\u5220\u9664\u73AF\u5883\u53D8\u91CF
fetch(buildApiUrl('/api/env/del'), {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ key })
})
.then(response => response.json())
.then(result => {
if (result.success) {
// \u4ECE\u672C\u5730\u6570\u636E\u4E2D\u5220\u9664
envVariables[currentCategory].splice(index, 1);
renderEnvList();
renderPreview();
addLog(\`\u5220\u9664\u914D\u7F6E\u9879: \${key}\`, 'warn');
} else {
addLog(\`\u5220\u9664\u914D\u7F6E\u9879\u5931\u8D25: \${result.message}\`, 'error');
}
})
.catch(error => {
addLog(\`\u5220\u9664\u914D\u7F6E\u9879\u5931\u8D25: \${error.message}\`, 'error');
})
.finally(() => {
// \u6062\u590D\u6309\u94AE\u72B6\u6001
deleteButton.innerHTML = originalText;
deleteButton.disabled = false;
});
}
});
}
// \u8868\u5355\u63D0\u4EA4
document.getElementById('env-form').addEventListener('submit', async function(e) {
e.preventDefault();
const category = document.getElementById('env-category').value;
const key = document.getElementById('env-key').value.trim();
const description = document.getElementById('env-description').value.trim();
const type = document.getElementById('value-type').value;
const existingItem = editingKey !== null && envVariables[currentCategory]
? envVariables[currentCategory][editingKey]
: null;
// \u6839\u636E\u7C7B\u578B\u83B7\u53D6\u503C
let value, itemData;
if (type === 'boolean') {
value = document.getElementById('bool-value').checked ? 'true' : 'false';
itemData = { key, value, description, type };
} else if (type === 'number') {
value = document.getElementById('num-value').textContent;
const min = parseInt(document.getElementById('num-slider').min);
const max = parseInt(document.getElementById('num-slider').max);
itemData = { key, value, description, type, min, max };
} else if (type === 'select') {
const selected = document.querySelector('.tag-option.selected');
value = selected ? selected.dataset.value : '';
const options = Array.from(document.querySelectorAll('.tag-option')).map(el => el.dataset.value);
itemData = { key, value, description, type, options };
} else if (type === 'multi-select') {
// \u5982\u679C\u5F00\u542F\u4E86\u5408\u5E76\u6A21\u5F0F\uFF0C\u4E14\u6682\u5B58\u533A\u8FD8\u6709\u5185\u5BB9\uFF0C\u81EA\u52A8\u5C06\u5176\u89C6\u4E3A\u786E\u8BA4\u6DFB\u52A0
if (isMergeMode && stagingTags && stagingTags.length > 0) {
confirmMergeGroup();
}
const selectedTags = Array.from(document.querySelectorAll('.selected-tag'))
.map(el => el.dataset.value);
value = selectedTags.join(',');
const options = Array.from(document.querySelectorAll('.available-tag')).map(el => el.dataset.value);
itemData = { key, value, description, type, options };
} else if (type === 'map') {
// \u83B7\u53D6\u6620\u5C04\u8868\u503C
const mapItems = document.querySelectorAll('#map-container .map-item');
const pairs = [];
mapItems.forEach(item => {
const leftInput = item.querySelector('.map-input-left');
const rightInput = item.querySelector('.map-input-right');
const leftValue = leftInput.value.trim();
const rightValue = rightInput.value.trim();
if (leftValue && rightValue) {
pairs.push(leftValue + '->' + rightValue);
}
});
value = pairs.join(';');
itemData = { key, value, description, type };
} else {
value = document.getElementById('text-value').value.trim();
itemData = { key, value, description, type };
}
// \u8C03\u7528API\u66F4\u65B0\u73AF\u5883\u53D8\u91CF - \u5148\u5C1D\u8BD5set\u63A5\u53E3\uFF0C\u5931\u8D25\u5219\u8C03\u7528add\u63A5\u53E3
try {
// \u9996\u5148\u5C1D\u8BD5\u4F7F\u7528set\u63A5\u53E3\u66F4\u65B0
let response = await fetch(buildApiUrl('/api/env/set'), {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ key, value })
});
let result = await response.json();
if (!result.success) {
// \u5982\u679Cset\u63A5\u53E3\u5931\u8D25\uFF0C\u5C1D\u8BD5\u4F7F\u7528add\u63A5\u53E3
response = await fetch(buildApiUrl('/api/env/add'), {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ key, value })
});
result = await response.json();
}
if (result.success) {
// \u66F4\u65B0\u672C\u5730\u6570\u636E
if (!envVariables[category]) {
envVariables[category] = [];
}
if (editingKey !== null) {
envVariables[currentCategory][editingKey] = {
...(existingItem || {}),
...itemData
};
addLog(\`\u66F4\u65B0\u914D\u7F6E\u9879: \${key} = \${value}\`, 'success');
} else {
envVariables[category].push(itemData);
addLog(\`\u6DFB\u52A0\u914D\u7F6E\u9879: \${key} = \${value}\`, 'success');
}
if (category !== currentCategory) {
currentCategory = category;
document.querySelectorAll('.category-btn').forEach((btn, i) => {
btn.classList.toggle('active', ['api', 'source', 'match', 'danmu', 'cache', 'system'][i] === category);
});
}
renderEnvList();
renderPreview();
closeModal();
} else {
addLog(\`\u64CD\u4F5C\u5931\u8D25: \${result.message}\`, 'error');
customAlert(result.message + '\uFF0C\u8BF7\u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u76F8\u5173\u73AF\u5883\u53D8\u91CF\u914D\u7F6E\u662F\u5426\u6B63\u786E');
}
} catch (error) {
addLog(\`\u66F4\u65B0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: \${error.message}\`, 'error');
customAlert(error.message + '\uFF0C\u8BF7\u68C0\u67E5\u90E8\u7F72\u5E73\u53F0\u76F8\u5173\u73AF\u5883\u53D8\u91CF\u914D\u7F6E\u662F\u5426\u6B63\u786E');
}
});
// \u6DFB\u52A0\u6620\u5C04\u9879
function addMapItem() {
const container = document.getElementById('map-container');
const template = document.querySelector('.map-item-template');
const newItem = template.cloneNode(true);
newItem.style.display = 'flex';
newItem.classList.remove('map-item-template');
newItem.classList.add('map-item');
const index = container.querySelectorAll('.map-item').length;
newItem.setAttribute('data-index', index);
container.appendChild(newItem);
}
// \u5220\u9664\u6620\u5C04\u9879
function removeMapItem(button) {
const item = button.closest('.map-item');
if (item) {
item.remove();
}
}
/* ========================================
Bilibili Cookie \u626B\u7801\u767B\u5F55\u529F\u80FD
======================================== */
let biliQRCheckInterval = null;
let biliBiliQRKey = null;
async function startBilibiliQRLogin() {
// \u521B\u5EFA\u626B\u7801\u767B\u5F55\u6A21\u6001\u6846
if (!document.getElementById('bili-qr-modal')) {
const modalHTML = \`
<div class="modal" id="bili-qr-modal">
<div class="modal-content" style="max-width: 400px;">
<div class="modal-header">
<h3>\u626B\u7801\u767B\u5F55 Bilibili</h3>
<button class="close-btn" onclick="closeBiliQRModal()">\xD7</button>
</div>
<div class="modal-body" style="text-align: center;">
<div id="bili-qr-container">
<div class="loading-spinner" id="bili-qr-loading"></div>
<p id="bili-qr-status">\u6B63\u5728\u751F\u6210\u4E8C\u7EF4\u7801...</p>
<div id="bili-qr-code" style="display: none;"></div>
</div>
</div>
</div>
</div>
\`;
document.body.insertAdjacentHTML('beforeend', modalHTML);
}
const modal = document.getElementById('bili-qr-modal');
const qrCode = document.getElementById('bili-qr-code');
const qrLoading = document.getElementById('bili-qr-loading');
const qrStatus = document.getElementById('bili-qr-status');
modal.classList.add('active');
qrCode.style.display = 'none';
qrCode.innerHTML = '';
qrLoading.style.display = 'block';
qrStatus.textContent = '\u6B63\u5728\u751F\u6210\u4E8C\u7EF4\u7801...';
if (biliQRCheckInterval) {
clearInterval(biliQRCheckInterval);
}
try {
const response = await fetch(buildApiUrl('/api/cookie/qr/generate', true), {
method: 'POST'
});
const result = await response.json();
if (result.success && result.data) {
biliBiliQRKey = result.data.qrcode_key;
const qrUrl = result.data.url;
qrCode.innerHTML = '<img src="https://api.qrserver.com/v1/create-qr-code/?size=200x200&data=' + encodeURIComponent(qrUrl) + '" alt="\u4E8C\u7EF4\u7801">';
qrCode.style.display = 'block';
qrLoading.style.display = 'none';
qrStatus.textContent = '\u8BF7\u4F7F\u7528 Bilibili APP \u626B\u63CF';
startBiliQRCheck();
} else {
throw new Error(result.message || '\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25');
}
} catch (error) {
qrLoading.style.display = 'none';
qrStatus.textContent = error.message;
}
}
function startBiliQRCheck() {
if (!biliBiliQRKey) return;
const qrStatus = document.getElementById('bili-qr-status');
biliQRCheckInterval = setInterval(async () => {
try {
const response = await fetch(buildApiUrl('/api/cookie/qr/check', true), {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ qrcode_key: biliBiliQRKey })
});
const result = await response.json();
if (result.success && result.data) {
const code = result.data.code;
switch (code) {
case 86101:
qrStatus.textContent = '\u7B49\u5F85\u626B\u7801...';
break;
case 86090:
qrStatus.textContent = '\u5DF2\u626B\u7801\uFF0C\u8BF7\u786E\u8BA4';
break;
case 86038:
qrStatus.textContent = '\u4E8C\u7EF4\u7801\u5DF2\u8FC7\u671F';
clearInterval(biliQRCheckInterval);
break;
case 0:
qrStatus.textContent = '\u767B\u5F55\u6210\u529F\uFF01';
clearInterval(biliQRCheckInterval);
if (result.data.cookie) {
fillBilibiliCookie(result.data.cookie);
}
setTimeout(() => {
closeBiliQRModal();
}, 1000);
break;
}
}
} catch (error) {
console.error('\u68C0\u67E5\u626B\u7801\u72B6\u6001\u5931\u8D25:', error);
}
}, 2000);
}
function fillBilibiliCookie(cookie) {
const textInput = document.getElementById('text-value');
if (textInput) {
textInput.value = cookie;
textInput.dispatchEvent(new Event('input', { bubbles: true }));
textInput.style.borderColor = 'var(--success-color, #28a745)';
setTimeout(() => {
textInput.style.borderColor = '';
// \u586B\u5165\u540E\u89E6\u53D1\u68C0\u6D4B\u4E00\u6B21\uFF08\u4F1A\u63D0\u793A\u7528\u6237\u4FDD\u5B58\uFF09
autoCheckBilibiliCookieStatus();
}, 2000);
}
}
function closeBiliQRModal() {
const modal = document.getElementById('bili-qr-modal');
if (modal) {
modal.classList.remove('active');
}
if (biliQRCheckInterval) {
clearInterval(biliQRCheckInterval);
}
}
async function autoCheckBilibiliCookieStatus() {
const textInput = document.getElementById('text-value');
const statusEl = document.getElementById('bili-cookie-status');
if (!textInput || !statusEl) return;
const cookie = textInput.value.trim();
// \u5982\u679C\u8F93\u5165\u6846\u4E3A\u7A7A,\u63D0\u793A\u672A\u914D\u7F6E
if (!cookie) {
statusEl.innerHTML = '<span class="bili-status-text">\u672A\u914D\u7F6E</span>';
return;
}
statusEl.innerHTML = '<span class="bili-status-text">\u68C0\u6D4B\u4E2D...</span>';
// \u8131\u654F\u540E\u7684 *...* \u65E0\u6CD5\u76F4\u63A5\u6821\u9A8C\uFF0C\u540E\u7AEF\u4F1A\u81EA\u52A8\u6539\u4E3A\u6821\u9A8C\u201C\u5DF2\u4FDD\u5B58\u201D\u7684 Cookie
const isMasked = /^[*]+$/.test(cookie);
const payload = isMasked ? {} : { cookie };
try {
const response = await fetch(buildApiUrl('/api/cookie/verify', true), {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(payload)
});
const result = await response.json();
if (result && result.success && result.data) {
if (result.data.isValid) {
const uname = result.data.uname || '\u5DF2\u767B\u5F55';
const expiresAt = result.data.expiresAt;
const now = Math.floor(Date.now() / 1000);
let leftText = '';
if (typeof expiresAt === 'number' && expiresAt > now) {
const daysLeft = Math.ceil((expiresAt - now) / (24 * 60 * 60));
leftText = \` (\u5269\u4F59 \${daysLeft} \u5929)\`;
}
// \u7528\u6237\u624B\u52A8\u8F93\u5165/\u626B\u7801\u586B\u5165\u7684 Cookie \u2192 \u63D0\u793A\u4FDD\u5B58
if (!isMasked) {
statusEl.innerHTML = \`<span class="bili-status-text">\${uname}\${leftText} \xB7 \u8BF7\u70B9\u51FB\u4FDD\u5B58\u6309\u94AE\uFF08Vercel\u7B49\u5E73\u53F0\u9700\u91CD\u65B0\u90E8\u7F72\u540E\u751F\u6548\uFF09</span>\`;
} else {
// \u8131\u654F\u663E\u793A\u65F6\u53EA\u5C55\u793A\u5F53\u524D\u5DF2\u4FDD\u5B58 Cookie \u7684\u72B6\u6001
statusEl.innerHTML = \`<span class="bili-status-text">\${uname}\${leftText}</span>\`;
}
} else {
const err = result.data.error || 'Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548';
statusEl.innerHTML = \`<span class="bili-status-text">\${err}\uFF0C\u8BF7\u91CD\u65B0\u626B\u7801\u767B\u5F55\u5E76\u4FDD\u5B58</span>\`;
}
} else {
statusEl.innerHTML = '<span class="bili-status-text">\u68C0\u6D4B\u5931\u8D25</span>';
}
} catch (error) {
statusEl.innerHTML = '<span class="bili-status-text">\u68C0\u6D4B\u5931\u8D25</span>';
}
}
// \u663E\u793A Bilibili Cookie \u4FDD\u5B58\u63D0\u793A
function showBilibiliCookieSaveHint(text) {
const statusEl = document.getElementById('bili-cookie-status');
if (!statusEl) return;
const msg = text || '\u8BF7\u70B9\u51FB\u4FDD\u5B58\u6309\u94AE,Vercel\u7B49\u5E73\u53F0\u9700\u91CD\u65B0\u90E8\u7F72\u540E\u751F\u6548';
statusEl.innerHTML = \`<span class="bili-status-text">\${msg}</span>\`;
}
/* ========================================
AI API Key \u8FDE\u901A\u6027\u6D4B\u8BD5\u529F\u80FD
======================================== */
async function verifyAiConnection() {
const statusEl = document.getElementById('ai-apikey-status');
const btn = document.getElementById('ai-verify-btn');
const textInput = document.getElementById('text-value');
if (!statusEl || !textInput) return;
const apiKey = textInput.value.trim();
// \u5982\u679C\u8F93\u5165\u6846\u4E3A\u7A7A\uFF0C\u63D0\u793A\u672A\u914D\u7F6E
if (!apiKey) {
statusEl.innerHTML = '<span class="ai-status-icon">\u26A0\uFE0F</span><span class="ai-status-text">\u8BF7\u5148\u8F93\u5165 API Key</span>';
return;
}
// \u8BBE\u7F6E\u6309\u94AE\u4E3A\u52A0\u8F7D\u72B6\u6001
const originalText = btn.innerHTML;
btn.innerHTML = '<span class="loading-spinner-small"></span>';
btn.disabled = true;
statusEl.innerHTML = '<span class="ai-status-icon">\u{1F50D}</span><span class="ai-status-text">\u6B63\u5728\u6D4B\u8BD5\u8FDE\u901A\u6027...</span>';
// \u68C0\u67E5\u662F\u5426\u4E3A\u8131\u654F\u540E\u7684 *...*
const isMasked = /^[*]+$/.test(apiKey);
try {
const response = await fetch(buildApiUrl('/api/ai/verify', true), {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(isMasked ? {} : { 'aiApiKey': apiKey })
});
const result = await response.json();
if (result.ok) {
statusEl.innerHTML = '<span class="ai-status-icon">\u2705</span><span class="ai-status-text">' + (result.message || 'AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F') + '</span>';
statusEl.style.color = 'var(--success-color, #28a745)';
} else {
statusEl.innerHTML = '<span class="ai-status-icon">\u274C</span><span class="ai-status-text">' + (result.message || '\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25') + '</span>';
statusEl.style.color = 'var(--danger-color, #dc3545)';
}
} catch (error) {
statusEl.innerHTML = '<span class="ai-status-icon">\u26A0\uFE0F</span><span class="ai-status-text">\u6D4B\u8BD5\u8BF7\u6C42\u5931\u8D25: ' + error.message + '</span>';
statusEl.style.color = 'var(--warning-color, #ffc107)';
} finally {
// \u6062\u590D\u6309\u94AE\u72B6\u6001
btn.innerHTML = originalText;
btn.disabled = false;
}
}
/* ========================================
\u6700\u8FD1\u6570\u636E\u4E0Eanimes\u7F13\u5B58\u9762\u677F\u529F\u80FD
======================================== */
// \u7EDF\u4E00\u5207\u6362\u5361\u7247\u5185\u7684\u6298\u53E0\u533A\u57DF
function toggleCardSection(btnEl, targetSelector, openText, closeText) {
if (!btnEl) return;
const card = btnEl.closest('.anime-cache-card');
if (!card) return;
const container = card.querySelector(targetSelector);
if (!container) return;
const isHidden = window.getComputedStyle(container).display === 'none';
if (isHidden) {
container.style.display = 'flex';
btnEl.innerHTML = closeText;
btnEl.classList.add('active');
} else {
container.style.display = 'none';
btnEl.innerHTML = openText;
btnEl.classList.remove('active');
}
}
// \u5207\u6362\u5B50\u8282\u70B9\u5185\u7684\u6620\u5C04\u8BE6\u60C5
function toggleMapping(btnEl) {
if (!btnEl) return;
const parentItem = btnEl.closest('.anime-cache-child-item');
if (!parentItem) return;
const container = parentItem.querySelector('.child-mapping-container');
if (!container) return;
const isHidden = window.getComputedStyle(container).display === 'none';
if (isHidden) {
container.style.display = 'flex';
btnEl.innerHTML = '\u{1F4CA} \u6536\u8D77\u6620\u5C04\u8BE6\u60C5';
btnEl.classList.add('active');
} else {
container.style.display = 'none';
btnEl.innerHTML = '\u{1F4CA} \u5C55\u5F00\u6620\u5C04\u8BE6\u60C5';
btnEl.classList.remove('active');
}
}
// \u5FEB\u6377\u6570\u636E\u9762\u677F\u4E1A\u52A1\u903B\u8F91
async function fetchAndShowRecentData() {
const panel = document.getElementById('recent-data-panel');
const listContainer = document.getElementById('recent-data-list');
if (!panel || !listContainer) return;
if (window.getComputedStyle(panel).display !== 'none') {
panel.style.display = 'none';
return;
}
panel.style.display = 'block';
listContainer.innerHTML = '<span class="loading-spinner-small"></span> \u6570\u636E\u52A0\u8F7D\u4E2D...';
try {
const response = await fetch(buildApiUrl('/api/cache/animes', true));
const result = await response.json();
if (result.success && result.data && result.data.length > 0) {
renderAnimeCachePanel(result.data, listContainer);
} else {
listContainer.innerHTML = '<div class="text-gray font-size-12" style="padding: 10px 0;">\u7F13\u5B58\u4E2D\u6682\u65E0\u756A\u5267\u6570\u636E\uFF0C\u8BF7\u5148\u901A\u8FC7\u5BA2\u6237\u7AEF\u8BF7\u6C42\u5F39\u5E55\u63A5\u53E3\u4EE5\u751F\u6210\u7F13\u5B58\u3002</div>';
}
} catch (error) {
listContainer.innerHTML = \`<div class="text-red font-size-12">\u8BF7\u6C42\u5931\u8D25: \${error.message}</div>\`;
}
}
// \u6E32\u67D3animes\u7F13\u5B58\u9762\u677F (\u542B\u96C6\u6570\u89E3\u6790\u4E0E\u6620\u5C04\u8BE6\u60C5)
function renderAnimeCachePanel(data, listContainer) {
const keyInput = document.getElementById('env-key');
if (!listContainer || !keyInput) return;
const currentKey = keyInput.value;
// \u5185\u90E8\u8F85\u52A9\u51FD\u6570\uFF1A\u751F\u6210\u64CD\u4F5C\u6309\u94AE
const generateButtons = (title, source) => {
if (currentKey === 'CUSTOM_MERGE_RULES') {
return \`
<button type="button" class="btn btn-sm btn-xs" onclick="fillMergeEntity('sec', '\${title}', '\${source}')">\u8BBE\u4E3A\u526F</button>
<button type="button" class="btn btn-sm btn-primary btn-xs" onclick="fillMergeEntity('prim', '\${title}', '\${source}')">\u8BBE\u4E3A\u4E3B</button>
\`;
} else if (currentKey === 'DANMU_OFFSET') {
return \`
<button type="button" class="btn btn-sm btn-primary btn-xs" onclick="fillOffsetEntity('\${title}', '\${source}')">\u586B\u5165</button>
\`;
}
return '';
};
// \u5185\u90E8\u8F85\u52A9\u51FD\u6570\uFF1A\u6E05\u6D17\u6807\u9898
const cleanTitleStr = (rawTitle) => rawTitle.replace(/\\s*from\\s+.*$/i, '').trim().replace(/'/g, '&apos;');
let html = '<div class="anime-cache-list">';
data.forEach(item => {
const cleanTitle = cleanTitleStr(item.animeTitle);
const coverStyle = item.imageUrl ? \`background-image: url('\${item.imageUrl}');\` : '';
// 1. \u6784\u5EFA\u5408\u5E76\u5B50\u6E90\u6A21\u5757
let childrenHtml = '';
let childrenCount = 0;
if (item.mergedChildren && item.mergedChildren.length > 0) {
childrenCount = item.mergedChildren.length;
const childItems = item.mergedChildren.map(child => {
const childCleanTitle = cleanTitleStr(child.animeTitle);
const childCoverStyle = child.imageUrl ? \`background-image: url('\${child.imageUrl}');\` : '';
// \u89E3\u6790\u6620\u5C04\u6570\u636E\u5E76\u6309\u5339\u914D\u72B6\u6001\u6392\u5E8F
let mappingHtml = '';
if (item.links && item.links.length > 0) {
const parsedRows = [];
item.links.forEach((link, idx) => {
const urlStr = String(link.url || '');
const hasMainMatch = urlStr.includes(item.source + ':') || !urlStr.includes(':');
const hasChildMatch = urlStr.includes(child.source + ':');
if (!hasMainMatch && !hasChildMatch) return;
let mainSide = '(\u4E3B\u6E90\u8D8A\u754C)';
if (hasMainMatch) {
const cleanMainEpTitle = (link.title || '\u672A\u77E5\u5267\u96C6').replace(/^\u3010.*?\u3011\\s*/, '').replace(/'/g, '&apos;').replace(/"/g, '&quot;');
mainSide = \`\u3010\${item.source}\u3011\${cleanMainEpTitle}\`;
}
let childSide = '(\u526F\u6E90\u7F3A\u5931)';
let childNum = NaN;
if (hasChildMatch) {
const regex = new RegExp(child.source + ':([^$]+)');
const match = urlStr.match(regex);
let childTitleStr = '(\u6E90ID\u672A\u77E5)';
if (match) {
const childId = match[1];
childTitleStr = \`(\u6E90ID: \${childId})\`;
if (child.links && child.links.length > 0) {
const childLink = child.links.find(l => String(l.url) === String(childId));
if (childLink && childLink.title) {
childTitleStr = childLink.title.replace(/^\u3010.*?\u3011\\s*/, '').replace(/'/g, '&apos;').replace(/"/g, '&quot;');
}
}
} else {
childTitleStr = (link.title || '').replace(/^\u3010.*?\u3011\\s*/, '').replace(/'/g, '&apos;').replace(/"/g, '&quot;');
}
childSide = \`\u3010\${child.source}\u3011\${childTitleStr}\`;
const numMatch = childTitleStr.match(/\\d+/);
if (numMatch) {
childNum = parseInt(numMatch[0], 10);
}
}
let rowHtml = '';
if (hasMainMatch && hasChildMatch) {
rowHtml = \`<div class="mapping-row"><span class="mapping-status success">\u2713 \u5339\u914D</span> <span class="mapping-text">\${mainSide} \u2194 \${childSide}</span></div>\`;
} else {
rowHtml = \`<div class="mapping-row"><span class="mapping-status warning">\u2717 \u843D\u5355</span> <span class="mapping-text">\${mainSide} \u2194 \${childSide}</span></div>\`;
}
parsedRows.push({
originalIndex: idx,
hasChildMatch: hasChildMatch,
childNum: childNum,
html: rowHtml
});
});
const matchedRows = parsedRows.filter(r => r.hasChildMatch).sort((a, b) => {
if (!isNaN(a.childNum) && !isNaN(b.childNum)) {
return a.childNum - b.childNum;
}
return a.originalIndex - b.originalIndex;
});
const lonelyRows = parsedRows.filter(r => !r.hasChildMatch).sort((a, b) => a.originalIndex - b.originalIndex);
const finalRows = [...matchedRows, ...lonelyRows];
const mappingRowsHtml = finalRows.map(r => r.html).join('');
if (mappingRowsHtml) {
mappingHtml = \`
<div class="child-mapping-toggle" onclick="toggleMapping(this)">\u{1F4CA} \u5C55\u5F00\u6620\u5C04\u8BE6\u60C5</div>
<div class="child-mapping-container">
\${mappingRowsHtml}
</div>
\`;
}
}
return \`
<div class="anime-cache-child-item">
<div class="anime-cache-child-main">
<div class="anime-cache-child-cover" style="\${childCoverStyle}"></div>
<div class="anime-cache-child-info">
<div class="anime-cache-child-title" title="\${child.animeTitle}">\${childCleanTitle}</div>
<div class="anime-cache-meta">[\${child.source}] (\${child.episodes}\u96C6)</div>
</div>
<div class="anime-cache-child-actions">
\${generateButtons(childCleanTitle, child.source)}
</div>
</div>
\${mappingHtml}
</div>
\`;
}).join('');
childrenHtml = \`
<div class="merged-children-container">
\${childItems}
</div>
\`;
}
// 2. \u6784\u5EFA\u5267\u96C6\u53C2\u8003\u5217\u8868\u6A21\u5757
let episodesHtml = '';
let episodesCount = 0;
if (item.links && item.links.length > 0) {
episodesCount = item.links.length;
const epItems = item.links.map(link => {
const safeTitle = link.title ? link.title.replace(/'/g, '&apos;').replace(/"/g, '&quot;') : '\u672A\u77E5\u5267\u96C6';
return \`
<div class="anime-cache-child-item" style="padding: 6px;">
<div class="anime-cache-child-main">
<div class="anime-cache-child-info">
<div class="anime-cache-child-title" title="\${safeTitle}">\${safeTitle}</div>
</div>
</div>
</div>
\`;
}).join('');
episodesHtml = \`
<div class="episodes-list-container">
\${epItems}
</div>
\`;
}
// 3. \u6784\u5EFA\u5361\u7247\u5E95\u90E8\u4E13\u5C5E\u5207\u6362\u680F (Tab Bar)
let footerHtml = '';
if (childrenCount > 0 || episodesCount > 0) {
let badges = '';
if (episodesCount > 0) {
badges += \`<div class="cache-badge badge-episodes" onclick="toggleCardSection(this, '.episodes-list-container', '\u{1F4FA} \${episodesCount} \u4E2A\u5267\u96C6', '\u{1F4FA} \u6536\u8D77\u5267\u96C6')">\u{1F4FA} \${episodesCount} \u4E2A\u5267\u96C6</div>\`;
}
if (childrenCount > 0) {
badges += \`<div class="cache-badge badge-sources" onclick="toggleCardSection(this, '.merged-children-container', '\u{1F517} \${childrenCount} \u4E2A\u88AB\u5408\u5E76\u6E90', '\u{1F517} \u6536\u8D77\u88AB\u5408\u5E76\u6E90')">\u{1F517} \${childrenCount} \u4E2A\u88AB\u5408\u5E76\u6E90</div>\`;
}
footerHtml = \`<div class="anime-cache-footer">\${badges}</div>\`;
}
// 4. \u7EC4\u88C5\u5B8C\u6574\u5361\u7247
html += \`
<div class="anime-cache-card">
<div class="anime-cache-card-body">
<div class="anime-cache-cover" style="\${coverStyle}"></div>
<div class="anime-cache-info">
<div class="anime-cache-title" title="\${item.animeTitle}">\${cleanTitle}</div>
<div class="anime-cache-meta">[\${item.source}] (\${item.episodes}\u96C6)</div>
</div>
<div class="anime-cache-actions">
\${generateButtons(cleanTitle, item.source)}
</div>
</div>
\${footerHtml}
\${childrenHtml}
\${episodesHtml}
</div>
\`;
});
html += '</div>';
listContainer.innerHTML = html;
}
/* ========================================
\u8868\u5355\u586B\u5145\u5FEB\u6377\u64CD\u4F5C\u529F\u80FD
======================================== */
// \u5185\u90E8\u8F85\u52A9\u51FD\u6570\uFF1A\u8F93\u5165\u6846\u89C6\u89C9\u53CD\u9988\u7EDF\u4E00\u5904\u7406
function applyInputFeedback(inputEl) {
if (!inputEl) return;
const oldBorder = inputEl.style.borderColor;
inputEl.style.borderColor = '#28a745';
setTimeout(() => inputEl.style.borderColor = oldBorder, 800);
inputEl.focus();
}
// \u8868\u5355\u586B\u5145\u903B\u8F91\uFF1A\u5408\u5E76\u6620\u5C04\u8868
function fillMergeEntity(type, title, source) {
const panel = document.getElementById('merge-rule-panel');
if (panel && window.getComputedStyle(panel).display === 'none') {
toggleMergeRulePanel();
}
const inputId = type === 'sec' ? 'merge-sec-entity' : 'merge-prim-entity';
const inputEl = document.getElementById(inputId);
if (inputEl) {
inputEl.value = \`\${title}@\${source}\`;
applyInputFeedback(inputEl);
setMergeFocus(type);
}
}
// \u8868\u5355\u586B\u5145\u903B\u8F91\uFF1A\u5F39\u5E55\u504F\u79FB
function fillOffsetEntity(title, source) {
const panel = document.getElementById('offset-rule-panel');
if (panel && window.getComputedStyle(panel).display === 'none') {
toggleOffsetRulePanel();
}
// \u89C6\u56FE\u5C42\u6570\u636E\u6E05\u6D17\uFF1A\u53BB\u9664\u5E74\u4EFD\u548C\u7C7B\u578B\u540E\u7F00
const cleanTitle = title
.replace(/[\\u200B-\\u200F\\uFEFF]/g, '')
.replace(/\\s*[\uFF08(\u3014\\[]\\s*[0-9\uFF10-\uFF19]{4}\\s*\u5E74?\\s*[\uFF09)\u3015\\]]/g, '')
.replace(/(.+?)\\s*\u3010[^\u3011]+\u3011$/, '$1')
.trim();
const inputEl = document.getElementById('offset-anime');
if (inputEl) {
inputEl.value = cleanTitle;
// \u57FA\u4E8E data-value \u5C5E\u6027\u5339\u914D\u5E76\u9009\u4E2D\u5BF9\u5E94\u6765\u6E90\u6807\u7B7E
const sourceTags = document.querySelectorAll('#offset-sources .offset-source-tag');
if (sourceTags.length > 0) {
sourceTags.forEach(el => el.classList.remove('selected'));
const targetTag = Array.from(sourceTags).find(el => el.dataset.value === source);
if (targetTag) targetTag.classList.add('selected');
}
applyInputFeedback(inputEl);
}
}
`;var dct=`
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>LogVar\u5F39\u5E55API</title>
<link rel="icon" type="image/jpg" href="https://i.mji.rip/2025/09/27/eedc7b701c0fa5c1f7c175b22f441ad9.jpeg">
<link rel="apple-touch-icon" href="https://i.mji.rip/2025/09/27/eedc7b701c0fa5c1f7c175b22f441ad9.jpeg">
<style>${ect}</style>
<style>${tct}</style>
<style>${rct}</style>
<style>${nct}</style>
</head>
<body>
<div class="container">
<!-- \u8FDB\u5EA6\u6761 -->
<div class="progress-container" id="progress-container">
<div class="progress-bar" id="progress-bar"></div>
</div>
<div class="header">
<div class="header-left">
<div class="logo-title-container">
<div class="logo"><img src="https://i.mji.rip/2025/09/27/eedc7b701c0fa5c1f7c175b22f441ad9.jpeg" width="500"/></div>
<h1>LogVar\u5F39\u5E55API</h1>
</div>
<div class="version-info">
<span class="version-badge">\u5F53\u524D\u7248\u672C: <span id="current-version">v${O.version}</span></span>
<span class="update-badge" id="update-badge">
\u6700\u65B0\u7248\u672C: <span id="latest-version">\u52A0\u8F7D\u4E2D...</span>
</span>
<span class="api-endpoint-badge">
API\u7AEF\u70B9: <span id="api-endpoint" title="\u70B9\u51FB\u590D\u5236API\u7AEF\u70B9" style="cursor: pointer; color: var(--success-color); font-weight: bold;" onclick="copyApiEndpoint()">\u52A0\u8F7D\u4E2D...</span>
</span>
</div>
</div>
<div class="nav-buttons">
<button class="nav-btn active" onclick="switchSection('preview', event)">\u914D\u7F6E\u9884\u89C8</button>
<button class="nav-btn" onclick="switchSection('logs', event)">\u65E5\u5FD7\u67E5\u770B</button>
<button class="nav-btn" onclick="switchSection('api', event)">\u63A5\u53E3\u8C03\u8BD5</button>
<button class="nav-btn" onclick="switchSection('push', event)">\u63A8\u9001\u5F39\u5E55</button>
<button class="nav-btn" onclick="switchSection('request-records', event)">\u8BF7\u6C42\u8BB0\u5F55</button>
<button class="nav-btn" onclick="switchSection('env', event)" id="env-nav-btn">\u7CFB\u7EDF\u914D\u7F6E</button>
</div>
</div>
<div class="content">
<!-- \u914D\u7F6E\u9884\u89C8 -->
<div class="section active" id="preview-section">
<h2>\u914D\u7F6E\u9884\u89C8</h2>
<div id="proxy-config-container" style="display: none; background: rgba(255, 204, 0, 0.08); border: 1px solid rgba(255, 204, 0, 0.2); padding: 24px; border-radius: 16px; margin-bottom: 24px;">
<h3 style="color: #997a00; margin-top: 0; font-size: 16px; margin-bottom: 12px;">\u83B7\u53D6\u914D\u7F6E\u5931\u8D25</h3>
<p style="color: #997a00; margin-bottom: 16px; font-size: 14px; opacity: 0.9;">
\u68C0\u6D4B\u5230\u65E0\u6CD5\u83B7\u53D6\u914D\u7F6E\u3002\u5982\u679C\u60A8\u4F7F\u7528\u4E86\u590D\u6742\u7684\u53CD\u5411\u4EE3\u7406\uFF1A\u4F8B\u5982\u5C06 <code>http://{ip}:9321/</code> \u4EE3\u7406\u5230\u4E86 <code>http://{ip}:9321/danmu_api/</code>\uFF0C\u8BF7\u5728\u6B64\u5904\u624B\u52A8\u8F93\u5165\u5B8C\u6574\u7684\u53CD\u4EE3\u540E\u94FE\u63A5\uFF08\u4E0D\u5305\u542BTOKEN\u548CADMIN_TOKEN\u7684\uFF09
</p>
<div style="display: flex; gap: 10px; flex-wrap: wrap;">
<input type="text" id="custom-base-url" placeholder="\u4F8B\u5982: http://192.168.8.1:2333/danmu_api/ (\u7559\u7A7A\u4FDD\u5B58\u5373\u6062\u590D\u9ED8\u8BA4)" style="flex: 1; min-width: 200px; padding: 12px; border: 1px solid rgba(0,0,0,0.1); border-radius: 12px;">
<button class="btn btn-primary" onclick="saveBaseUrl()">\u4FDD\u5B58\u5E76\u5237\u65B0</button>
</div>
<p style="color: var(--text-secondary); font-size: 12px; margin-top: 10px; opacity: 0.8;">* \u8BBE\u7F6E\u5C06\u4FDD\u5B58\u5728\u6D4F\u89C8\u5668\u672C\u5730\u5B58\u50A8\u4E2D\uFF0C\u6E05\u9664\u7F51\u9875\u7684\u2018\u672C\u5730\u5B58\u50A8\u7A7A\u95F4\u2019\u6216\u8005\u8F93\u5165\u6846\u4E2D\u7559\u7A7A\u5E76\u4FDD\u5B58\u53EF\u6062\u590D\u9ED8\u8BA4</p>
</div>
<div class="env-categories">
<button class="category-btn active" onclick="switchPreviewCategory('api', event)">API\u914D\u7F6E</button>
<button class="category-btn" onclick="switchPreviewCategory('source', event)">\u6E90\u914D\u7F6E</button>
<button class="category-btn" onclick="switchPreviewCategory('match', event)">\u5339\u914D\u914D\u7F6E</button>
<button class="category-btn" onclick="switchPreviewCategory('danmu', event)">\u5F39\u5E55\u914D\u7F6E</button>
<button class="category-btn" onclick="switchPreviewCategory('cache', event)">\u7F13\u5B58\u914D\u7F6E</button>
<button class="category-btn" onclick="switchPreviewCategory('system', event)">\u7CFB\u7EDF\u914D\u7F6E</button>
</div>
<p style="color: var(--text-secondary); margin-bottom: 20px; font-size: 14px;">\u5F53\u524D\u751F\u6548\u7684\u73AF\u5883\u53D8\u91CF\u914D\u7F6E</p>
<div class="preview-area" id="preview-area"></div>
</div>
<!-- \u65E5\u5FD7\u67E5\u770B -->
<div class="section" id="logs-section">
<h2>\u65E5\u5FD7\u67E5\u770B</h2>
<div class="log-controls">
<div>
<button class="btn btn-primary" onclick="refreshLogs()">\u5237\u65B0\u65E5\u5FD7</button>
<button class="btn btn-danger" onclick="clearLogs()">\u6E05\u7406\u65E5\u5FD7</button>
</div>
<span style="color: var(--text-secondary); font-size: 13px;">\u5B9E\u65F6\u65E5\u5FD7\u76D1\u63A7</span>
</div>
<div class="log-container" id="log-container"></div>
</div>
<!-- \u63A5\u53E3\u8C03\u8BD5 -->
<div class="section" id="api-section">
<h2>\u63A5\u53E3\u8C03\u8BD5</h2>
<div class="api-top-tabs">
<button class="api-top-tab active" onclick="switchApiTopTab('debug', event)">\u63A5\u53E3\u8C03\u8BD5</button>
<button class="api-top-tab" onclick="switchApiTopTab('danmu-test', event)">\u5F39\u5E55\u6D4B\u8BD5</button>
</div>
<div class="api-tab-content active" id="api-debug-content">
<div class="api-selector">
<div class="form-group">
<label>\u9009\u62E9\u63A5\u53E3</label>
<select id="api-select" onchange="loadApiParams()">
<option value="">-- \u8BF7\u9009\u62E9\u63A5\u53E3 --</option>
<option value="searchAnime">\u641C\u7D22\u52A8\u6F2B - /api/v2/search/anime</option>
<option value="searchEpisodes">\u641C\u7D22\u5267\u96C6 - /api/v2/search/episodes</option>
<option value="matchAnime">\u5339\u914D\u52A8\u6F2B - /api/v2/match</option>
<option value="getBangumi">\u83B7\u53D6\u756A\u5267\u8BE6\u60C5 - /api/v2/bangumi/:animeId</option>
<option value="getComment">\u83B7\u53D6\u5F39\u5E55 - /api/v2/comment/:commentId</option>
<option value="getSegmentComment">\u83B7\u53D6\u5206\u7247\u5F39\u5E55 - /api/v2/segmentcomment</option>
</select>
</div>
</div>
<div class="api-params" id="api-params" style="display: none;">
<h3 style="margin-bottom: 15px;">\u63A5\u53E3\u53C2\u6570</h3>
<div id="params-form"></div>
<button class="btn btn-success" onclick="testApi()">\u53D1\u9001\u8BF7\u6C42</button>
</div>
<div id="api-response-container" style="display: none;">
<h3 style="margin: 20px 0 10px;">\u54CD\u5E94\u7ED3\u679C</h3>
<div class="api-response" id="api-response"></div>
</div>
</div>
<div class="api-tab-content" id="danmu-test-content">
<div class="danmu-test-tabs">
<button class="danmu-test-tab active" onclick="switchDanmuTestTab('auto', event)">\u81EA\u52A8\u5339\u914D\u6D4B\u8BD5</button>
<button class="danmu-test-tab" onclick="switchDanmuTestTab('manual', event)">\u624B\u52A8\u5339\u914D\u6D4B\u8BD5</button>
</div>
<div class="danmu-test-panel active" id="auto-match-panel">
<p style="color: #666; margin-bottom: 15px;">\u6A21\u62DF\u64AD\u653E\u5668\u81EA\u52A8\u5339\u914D\u6D41\u7A0B\uFF1A\u8F93\u5165\u6587\u4EF6\u540D \u2192 \u5339\u914D\u5267\u96C6 \u2192 \u83B7\u53D6\u5F39\u5E55</p>
<div class="form-group" style="margin-bottom: 15px;">
<label>\u6587\u4EF6\u540D</label>
<div style="display:flex;gap:10px;margin-top:5px;">
<input type="text" id="auto-match-filename" placeholder="\u793A\u4F8B: \u751F\u4E07\u7269 S02E08, \u65E0\u5FE7\u6E21.S02E08.2160p.WEB-DL" style="flex:1;">
<button class="btn btn-success" id="auto-match-btn" onclick="autoMatchTest()">\u5F00\u59CB\u5339\u914D</button>
</div>
</div>
</div>
<div class="danmu-test-panel" id="manual-match-panel">
<p style="color: #666; margin-bottom: 15px;">\u6A21\u62DF\u64AD\u653E\u5668\u624B\u52A8\u641C\u7D22\u6D41\u7A0B\uFF1A\u641C\u7D22\u52A8\u6F2B \u2192 \u9009\u62E9\u756A\u5267 \u2192 \u9009\u62E9\u5267\u96C6 \u2192 \u83B7\u53D6\u5F39\u5E55</p>
<div class="form-group" style="margin-bottom: 15px;">
<label>\u641C\u7D22\u5173\u952E\u5B57</label>
<div style="display:flex;gap:10px;margin-top:5px;">
<input type="text" id="manual-search-keyword" placeholder="\u8BF7\u8F93\u5165\u52A8\u6F2B\u540D\u79F0" style="flex:1;">
<button class="btn btn-primary" id="manual-search-btn" onclick="manualSearchAnime()">\u641C\u7D22</button>
</div>
</div>
<div id="manual-anime-list" style="display:none;"></div>
<div id="manual-episode-list" style="display:none;"></div>
</div>
<div id="danmu-result-area" style="display:none;"></div>
</div>
</div>
<!-- \u63A8\u9001\u5F39\u5E55 -->
<div class="section" id="push-section">
<h2>\u63A8\u9001\u5F39\u5E55</h2>
<p style="color: var(--text-secondary); margin-bottom: 24px; font-size: 13px;">\u652F\u6301OK\u5F71\u89C6\u7B49\u64AD\u653E\u5668\uFF0C\u4E24\u7AEF\u9700\u8981\u5728\u540C\u4E00\u5C40\u57DF\u7F51\u6216\u4F7F\u7528\u516C\u7F51ip\uFF0C\u63A8\u9001\u5730\u5740\u683C\u5F0F\u5982 http://127.0.0.1:9978/action?do=refresh&type=danmaku&path=</p>
<div class="push-controls" style="margin-bottom: 24px;">
<div class="form-group" style="margin-bottom: 20px;">
<label>\u63A8\u9001\u5730\u5740</label>
<input type="text" id="push-url" placeholder="\u8BF7\u8F93\u5165\u63A8\u9001\u5730\u5740\uFF0C\u4F8B\u5982: http://127.0.0.1:9978/action?do=refresh&type=danmaku&path=">
</div>
<div class="form-group" style="margin-bottom: 20px;">
<label>\u641C\u7D22\u5173\u952E\u5B57</label>
<div style="margin-top: 8px; display: flex; gap: 10px;">
<input type="text" id="push-search-keyword" placeholder="\u8BF7\u8F93\u5165\u641C\u7D22\u5173\u952E\u5B57" style="flex: 1;">
<button class="btn btn-primary" onclick="searchAnimeForPush()" style="width: auto; padding: 0 24px;">\u641C\u7D22</button>
</div>
</div>
</div>
<div id="push-anime-list" class="anime-list" style="display: none;"></div>
<div id="push-episode-list" class="episode-list" style="display: none; margin-top: 24px;"></div>
</div>
<!-- \u8BF7\u6C42\u8BB0\u5F55 -->
<div class="section" id="request-records-section">
<h2>\u8BF7\u6C42\u8BB0\u5F55</h2>
<div class="log-controls">
<div>
<button class="btn btn-primary" id="refresh-request-records">\u{1F504} \u5237\u65B0\u8BB0\u5F55</button>
<span id="total-requests-today" style="color: #ff5722; margin-left: 15px; vertical-align: middle; font-size: 1.2em; font-weight: bold;"></span>
</div>
<span style="color: #666;">\u4E91\u670D\u52A1\u90E8\u7F72\u9700\u8981\u914D\u7F6Eredis</span>
</div>
<div class="request-records-container" id="request-records-list"></div>
</div>
<!-- \u7CFB\u7EDF\u914D\u7F6E -->
<div class="section" id="env-section">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 24px; flex-wrap: wrap; gap: 16px;">
<div>
<h2 style="margin: 0;">\u73AF\u5883\u53D8\u91CF\u914D\u7F6E</h2>
<p style="margin: 8px 0 0 0; color: var(--text-secondary); font-size: 13px;">vercel/netlify/edgeone\u5E73\u53F0\u4FEE\u6539\u53D8\u91CF\u540E\u9700\u8981\u91CD\u65B0\u90E8\u7F72</p>
</div>
<div style="display: flex; gap: 12px; flex-wrap: wrap;">
<button class="btn btn-danger" onclick="showClearCacheModal()" title="\u6E05\u7406\u7CFB\u7EDF\u7F13\u5B58">
\u6E05\u7406\u7F13\u5B58
</button>
<button class="btn btn-success" onclick="showDeploySystemModal()" title="\u91CD\u65B0\u90E8\u7F72\u7CFB\u7EDF">
\u91CD\u65B0\u90E8\u7F72
</button>
</div>
<!-- \u6E05\u7406\u7F13\u5B58\u786E\u8BA4\u6A21\u6001\u6846 -->
<div class="modal" id="clear-cache-modal">
<div class="modal-content">
<div class="modal-header">
<h3>\u786E\u8BA4\u6E05\u7406\u7F13\u5B58</h3>
<button class="close-btn" onclick="hideClearCacheModal()">&times;</button>
</div>
<div class="modal-body">
<p style="margin-bottom: 20px;">\u786E\u5B9A\u8981\u6E05\u7406\u6240\u6709\u7F13\u5B58\u5417\uFF1F\u8FD9\u5C06\u6E05\u9664\uFF1A</p>
<ul class="confirmation-list">
<li>\u52A8\u6F2B\u641C\u7D22\u7F13\u5B58 (animes)</li>
<li>\u5267\u96C6ID\u7F13\u5B58 (episodeIds)</li>
<li>\u5267\u96C6\u7F16\u53F7\u7F13\u5B58 (episodeNum)</li>
<li>\u6700\u540E\u9009\u62E9\u6620\u5C04\u7F13\u5B58 (lastSelectMap)</li>
<li>\u52A8\u753B\u5143\u6570\u636E\u7F13\u5B58 (Bangumi Data)</li>
<li>\u641C\u7D22\u7ED3\u679C\u7F13\u5B58</li>
<li>\u5F39\u5E55\u5185\u5BB9\u7F13\u5B58</li>
<li>\u8BF7\u6C42\u5386\u53F2\u8BB0\u5F55</li>
</ul>
<p style="color: var(--text-secondary); margin-top: 20px; font-size: 13px;">\u6E05\u7406\u540E\u53EF\u80FD\u9700\u8981\u91CD\u65B0\u767B\u5F55</p>
</div>
<div class="modal-footer">
<button class="btn btn-success" onclick="confirmClearCache()">\u786E\u8BA4\u6E05\u7406</button>
<button class="btn btn-danger" onclick="hideClearCacheModal()">\u53D6\u6D88</button>
</div>
</div>
</div>
<!-- \u91CD\u65B0\u90E8\u7F72\u786E\u8BA4\u6A21\u6001\u6846 -->
<div class="modal" id="deploy-system-modal">
<div class="modal-content">
<div class="modal-header">
<h3>\u786E\u8BA4\u91CD\u65B0\u90E8\u7F72</h3>
<button class="close-btn" onclick="hideDeploySystemModal()">&times;</button>
</div>
<div class="modal-body">
<p style="margin-bottom: 20px;">\u786E\u5B9A\u8981\u91CD\u65B0\u90E8\u7F72\u7CFB\u7EDF\u5417\uFF1F</p>
<div class="warning-box" style="background: rgba(255, 204, 0, 0.08); border-left: 4px solid #FFCC00;">
<p style="margin: 0; font-weight: bold;">\u90E8\u7F72\u8FC7\u7A0B\u4E2D\uFF1A</p>
<ul class="confirmation-list">
<li>\u7CFB\u7EDF\u5C06\u77ED\u6682\u4E0D\u53EF\u7528</li>
<li>\u6240\u6709\u914D\u7F6E\u5C06\u91CD\u65B0\u52A0\u8F7D</li>
<li>\u670D\u52A1\u5C06\u81EA\u52A8\u91CD\u542F</li>
</ul>
<p style="margin-top: 10px; font-size: 13px;">\u9884\u8BA1\u8017\u65F6\uFF1A30-90\u79D2</p>
</div>
</div>
<div class="modal-footer">
<button class="btn btn-success" onclick="confirmDeploySystem()">\u786E\u8BA4\u90E8\u7F72</button>
<button class="btn btn-danger" onclick="hideDeploySystemModal()">\u53D6\u6D88</button>
</div>
</div>
</div>
</div>
<div class="env-categories">
<button class="category-btn active" onclick="switchCategory('api', event)">API\u914D\u7F6E</button>
<button class="category-btn" onclick="switchCategory('source', event)">\u6E90\u914D\u7F6E</button>
<button class="category-btn" onclick="switchCategory('match', event)">\u5339\u914D\u914D\u7F6E</button>
<button class="category-btn" onclick="switchCategory('danmu', event)">\u5F39\u5E55\u914D\u7F6E</button>
<button class="category-btn" onclick="switchCategory('cache', event)">\u7F13\u5B58\u914D\u7F6E</button>
<button class="category-btn" onclick="switchCategory('system', event)">\u7CFB\u7EDF\u914D\u7F6E</button>
</div>
<div class="env-list" id="env-list"></div>
</div>
</div>
</div>
<!-- \u52A0\u8F7D\u906E\u7F69\u5C42 -->
<div class="loading-overlay" id="loading-overlay">
<div class="loading-content">
<div class="loading-spinner"></div>
<div class="loading-text" id="loading-text">\u6B63\u5728\u5904\u7406...</div>
<div class="loading-detail" id="loading-detail">\u8BF7\u7A0D\u5019</div>
</div>
</div>
<!-- \u7F16\u8F91\u6A21\u6001\u6846 -->
<div class="modal" id="env-modal">
<div class="modal-content">
<div class="modal-header">
<h3 id="modal-title">\u7F16\u8F91\u914D\u7F6E\u9879</h3>
<button class="close-btn" onclick="closeModal()">&times;</button>
</div>
<form id="env-form">
<div class="form-group">
<label>\u53D8\u91CF\u7C7B\u522B</label>
<select id="env-category" disabled>
<option value="api">API\u914D\u7F6E</option>
<option value="source">\u6E90\u914D\u7F6E</option>
<option value="match">\u5339\u914D\u914D\u7F6E</option>
<option value="danmu">\u5F39\u5E55\u914D\u7F6E</option>
<option value="cache">\u7F13\u5B58\u914D\u7F6E</option>
<option value="system">\u7CFB\u7EDF\u914D\u7F6E</option>
</select>
</div>
<div class="form-group">
<label>\u53D8\u91CF\u540D</label>
<input type="text" id="env-key" placeholder="\u4F8B\u5982: DB_HOST" required readonly>
</div>
<div class="form-group">
<label>\u503C\u7C7B\u578B</label>
<select id="value-type" onchange="renderValueInput()" disabled>
<option value="text">\u6587\u672C</option>
<option value="boolean">\u5E03\u5C14\u503C</option>
<option value="number">\u6570\u5B57 (1-100)</option>
<option value="select">\u5355\u9009</option>
<option value="multi-select">\u591A\u9009 (\u53EF\u6392\u5E8F)</option>
<option value="map">\u6620\u5C04</option>
</select>
</div>
<div class="form-group" id="value-input-container">
<!-- \u52A8\u6001\u6E32\u67D3\u7684\u503C\u8F93\u5165\u63A7\u4EF6 -->
</div>
<div class="form-group">
<label>\u63CF\u8FF0</label>
<textarea id="env-description" placeholder="\u914D\u7F6E\u9879\u8BF4\u660E" readonly></textarea>
</div>
<div style="display: flex; gap: 10px;">
<button type="submit" class="btn btn-success" style="flex: 1;">\u4FDD\u5B58</button>
<button type="button" class="btn btn-danger" onclick="closeModal()" style="flex: 1;">\u53D6\u6D88</button>
</div>
</form>
</div>
</div>
<!-- \u9879\u76EE\u58F0\u660E -->
<footer class="footer">
<p class="footer-text">
\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
</p>
<p class="footer-text">\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</p>
<p class="footer-text">\u672C\u9879\u76EE\u5B8C\u5168\u514D\u8D39\uFF0C\u4E0D\u6536\u53D6\u4EFB\u4F55\u8D39\u7528\uFF0C\u8BF7\u52FF\u4E0A\u5F53\u53D7\u9A97\u3002</p>
<p class="footer-links">
<a href="https://t.me/ddjdd_bot" target="_blank" class="footer-link tg-link">
<svg class="tg-icon" viewBox="0 0 24 24" fill="currentColor"><path d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"/></svg>
TG MSG ROBOT
</a>
<a href="https://t.me/logvar_danmu_group" target="_blank" class="footer-link tg-link">
<svg class="tg-icon" viewBox="0 0 24 24" fill="currentColor"><path d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"/></svg>
TG GROUP
</a>
<a href="https://t.me/logvar_danmu_channel" target="_blank" class="footer-link tg-link">
<svg class="tg-icon" viewBox="0 0 24 24" fill="currentColor"><path d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"/></svg>
TG CHANNEL
</a>
<a href="https://github.com/huangxd-/danmu_api" target="_blank" class="footer-link github-link">
<img src="https://upload.wikimedia.org/wikipedia/commons/9/91/Octicons-mark-github.svg" alt="GitHub" class="github-icon">
GitHub Repo
</a>
</p>
<p>\u6709\u95EE\u9898\u63D0issue\u6216\u79C1\u4FE1\u673A\u5668\u4EBA\u90FDok</p>
</footer>
<script>
${sct}
${ict}
${act}
${oct}
${cct}
${uct}
${lct}
</script>
</body>
</html>
`;Et();var Ta=class{static async getHandler(e){switch(e?.toLowerCase()){case"cloudflare":let{CloudflareHandler:r}=await Promise.resolve().then(()=>(pct(),fct));return new r;case"vercel":let{VercelHandler:n}=await Promise.resolve().then(()=>(hct(),mct));return new n;case"netlify":let{NetlifyHandler:s}=await Promise.resolve().then(()=>(yct(),gct));return new s;case"edgeone":let{EdgeoneHandler:i}=await Promise.resolve().then(()=>(xct(),Act));return new i;case"huggingface":let{HuggingfaceHandler:a}=await Promise.resolve().then(()=>(_ct(),bct));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 lce(){return new Response(dct.replace("globals.currentToken",O.currentToken),{headers:{"Content-Type":"text/html; charset=utf-8","Access-Control-Allow-Origin":"*"}})}function rM(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])}),Me({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 Ect(){try{let t=O.deployPlatform;if(E("info",`[system] [Server] Deployment request received for platform: ${t}`),t.toLowerCase()==="node")return E("info","[system] [Server] Node/Docker deployment - no redeployment needed, config changes take effect automatically"),Me({success:!0,message:"Node/Docker deployment - configuration changes take effect automatically"},200);let e=await Ta.getHandler(t);return e?await e.deploy()?(E("info",`[system] [Server] Deployment triggered successfully for platform: ${t}`),Me({success:!0,message:"Deployment triggered successfully"},200)):(E("error",`[system] [Server] Failed to trigger deployment for platform: ${t}`),Me({success:!1,message:"Failed to trigger deployment"},500)):(E("error",`[system] [Server] No handler found for platform: ${t}`),Me({success:!1,message:`No handler found for platform: ${t}`},400))}catch(t){return E("error",`[system] [Server] Deployment error: ${t.message}`),Me({success:!1,message:`Deployment failed: ${t.message}`},500)}}function vct(){let t=O.logBuffer.map(r=>`[${r.timestamp}] ${r.level}: ${q$e(r.message)}`).join(`
`),e=t;return O.currentToken!==O.adminToken&&(e=t.replace(/(client\s+ip:\s*)([^\n\r]*)/gi,(r,n,s)=>{let i=s.replace(/[^.\s\n\r]/g,"*");return n+i})),new Response(e,{headers:{"Content-Type":"text/plain; charset=utf-8"}})}function Sct(){return O.logBuffer=[],Me({success:!0,message:"Logs cleared"},200)}async function Ict(){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{AFe(!0),O.useBangumiData&&LL(O.deployPlatform,!1).catch(t=>{E("warn",`[system] [Server] Bangumi-Data background reload failed: ${t.message}`)})}catch(t){E("error",`[system] [Server] Failed to clear Bangumi-Data cache: ${t.message}`)}E("info","[system] [Server] Memory cache cleared successfully");try{if(O.localCacheValid){let{updateLocalCaches:t}=await Promise.resolve().then(()=>(Un(),cFe));await t(),E("info","[system] [Server] Local cache cleared successfully")}}catch(t){E("warn",`[system] [Server] Local cache may not be available: ${t.message}`)}try{if(O.redisValid){let{updateRedisCaches:t}=await Promise.resolve().then(()=>(bL(),eFe));await t(),E("info","[system] [Server] Redis cache cleared successfully")}}catch(t){E("warn",`[system] [Server] Redis may not be available: ${t.message}`)}try{if(O.localRedisValid){let{updateLocalRedisCaches:t}=await Promise.resolve().then(()=>(ew(),B6));await t(),E("info","[system] [Server] LocalRedis cache cleared successfully")}}catch(t){E("warn",`[system] [Server] LocalRedis may not be available: ${t.message}`)}return E("info","[system] [Server] All caches cleared successfully"),Me({success:!0,message:"Cache cleared successfully",clearedItems:{animes:0,episodeIds:0,episodeNum:10001,lastSelectMap:0,searchCache:0,commentCache:0,requestHistory:0,reqRecords:0,todayReqNum:0}},200)}catch(t){return E("error",`[system] [Server] Cache clear failed: ${t.message}`),Me({success:!1,message:`Cache clear failed: ${t.message}`},500)}}function f1r(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 uce(t){if(t==null)return t;if(Array.isArray(t))return t.map(uce);if(typeof t=="object"){let e={};for(let r of Object.keys(t))e[r]=uce(t[r]);return e}return"***"}function Cct(){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=f1r(n.interface)),n.params!=null&&(n.params=uce(n.params)),n})),Me({records:t,todayReqNum:e},200)}function Tct(){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 Me({success:!0,data:r},200)}catch(t){return E("error",`[system] [Server] Fetch cache animes failed: ${t.message}`),Me({success:!1,message:`\u83B7\u53D6\u7F13\u5B58\u5931\u8D25: ${t.message}`},500)}}fr();Et();kt();async function wct(t){try{let{key:e,value:r}=await t.json();if(!e)return Me({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await Ta.getHandler(n)).setEnv(e,r)?Me({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u6210\u529F`}):Me({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u5931\u8D25`},500)}catch(e){return E("error","[system] [Server] \u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Me({success:!1,message:`\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function Rct(t){try{let{key:e,value:r}=await t.json();if(!e)return Me({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await Ta.getHandler(n)).addEnv(e,r)?Me({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u6210\u529F`}):Me({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u5931\u8D25`},500)}catch(e){return E("error","[system] [Server] \u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Me({success:!1,message:`\u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function Nct(t){try{let{key:e}=await t.json();if(!e)return Me({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let r=O.deployPlatform;return await(await Ta.getHandler(r)).delEnv(e)?Me({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u6210\u529F`}):Me({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u5931\u8D25`},500)}catch(e){return E("error","[system] [Server] \u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Me({success:!1,message:`\u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function Oct(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 Me({success:!1,ok:!1,message:"AI_API_KEY \u672A\u914D\u7F6E"},400);let a=await new kf({baseURL:r,model:n,apiKey:s,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify();return a.ok?Me({success:!0,ok:!0,message:"AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F"}):Me({success:!1,ok:!1,message:`AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25: ${a.error}`},200)}catch(e){return E("error","[system] [Server] AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25:",e),Me({success:!1,ok:!1,message:`AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25: ${e.message}`},500)}}xs();fr();Et();kt();var kct=new Map;function Pct(){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 p1r(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&&c<s+a);if(o.length>0)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 Dct(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 Bct(t,e="saved"){if(!t)return{success:!0,data:{isValid:!1,checked:e,error:"\u672A\u914D\u7F6ECookie"}};let r=await Dct(t);return r.isValid?{success:!0,data:{isValid:!0,checked:e,uname:r.data?.uname||"\u672A\u77E5\u7528\u6237",expiresAt:p1r(t)}}:{success:!0,data:{isValid:!1,checked:e,error:r.error||"Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548"}}}async function Lct(){try{let t=Pct(),e=await Bct(t,"saved");return Me(e)}catch(t){return Me({success:!1,message:t.message},500)}}async function Mct(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?Pct():r,a=await Bct(s,n?"saved":"input");return Me(a)}catch(e){return Me({success:!1,message:e.message},500)}}async function Wct(){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?Me({success:!1,message:e.message||"\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25"},500):(kct.set(e.data.qrcode_key,{createTime:Date.now(),status:"generated"}),Me({success:!0,data:e.data}))}catch(t){return Me({success:!1,message:t.message},500)}}function m1r(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(),m=l.slice(d+1).trim();f&&e.set(f,m)}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 $ct(t){let e=null;try{let r=await t.json();if(e=r.qrcodeKey||r.qrcode_key,!e)return Me({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=m1r(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),Me(a)}catch(r){return Me({success:!1,message:r.message},500)}finally{e&&kct.delete(e)}}async function Uct(t){try{let r=((await t.json()).cookie||"").trim();if(!r)return Me({success:!1,message:"\u7F3A\u5C11cookie\u53C2\u6570"},400);if(!r.includes("SESSDATA")||!r.includes("bili_jct"))return Me({success:!1,message:"Cookie\u683C\u5F0F\u4E0D\u6B63\u786E"},400);let n=await Dct(r);if(!n.isValid)return Me({success:!1,message:"Cookie\u9A8C\u8BC1\u5931\u8D25: "+(n.error||"\u65E0\u6548")},400);let s=O.deployPlatform,i=await Ta.getHandler(s);return i?await i.setEnv("BILIBILI_COOKIE",r)?Me({success:!0,data:{uname:n.data?.uname},message:"Cookie\u4FDD\u5B58\u6210\u529F"}):Me({success:!1,message:"Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u73AF\u5883\u53D8\u91CF\u5199\u5165\u5931\u8D25"},500):Me({success:!1,message:`Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u4E0D\u652F\u6301\u7684\u90E8\u7F72\u5E73\u53F0 ${s||"unknown"}`},400)}catch(e){return Me({success:!1,message:e.message},500)}}var yt;async function qct(t,e,r,n,s){yt=Cg.init(e);let i=new URL(t.url),a=i.pathname,o=t.method,c=a.includes("/search")||a.includes("/match")||a.includes("/danmaku");if(yt.useBangumiData&&await LL(r,c,s),yt.deployPlatform=r,r==="node"){await EJ(a,r);let{judgeLocalRedisValid:h}=await Promise.resolve().then(()=>(ew(),B6));await h(a)}if(await dJ(a),!yt.aiValid&&yt.aiBaseUrl&&yt.aiModel&&yt.aiApiKey&&a!=="/favicon.ico"&&a!=="/robots.txt"&&(await new kf({baseURL:yt.aiBaseUrl,model:yt.aiModel,apiKey:yt.aiApiKey,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify()).ok&&(yt.aiValid=!0),E("info",`[system] [Server] request url: ${JSON.stringify(i)}`),E("info",`[system] [Server] request path: ${a}`),E("info",`[system] [Server] client ip: ${n}`),yt.ipBlacklist?.length&&yt.ipBlacklist.some(y=>h1r(y,n)))return E("warn",`[Utils] [IP Blacklist] Blocked request from IP: ${n}`),Me({errorCode:403,success:!1,errorMessage:"Forbidden"},403);let u=a.split("/").filter(Boolean),l=["api","v1","v2","search","match","bangumi","comment","danmaku"],d=u[0]||"",f=yt.token==="87654321",m=d===yt.token||d===yt.adminToken;if(yt.currentToken=m?d:f&&(d==="87654321"||l.includes(d))?d==="87654321"?d:"87654321":"",r==="node"&&yt.localCacheValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await _J(),yt.redisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await lJ(),r==="node"&&yt.localRedisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"){let{getLocalRedisCaches:h}=await Promise.resolve().then(()=>(ew(),B6));await h()}if(["/api/v2/search/anime","/api/v2/match","/api/v2/search/episodes","/api/v2/fongmi/danmaku","/danmaku","/api/v2/bangumi","/api/v2/comment","/api/v2/segmentcomment"].some(h=>a.includes(h))){let h=yt.reqRecords.length>0?yt.reqRecords[yt.reqRecords.length-1]:null,y=new Date().toDateString();if(h){let S=new Date(h.timestamp).toDateString();E("info",`[system] [Server] currentDate: ${y}`),E("info",`[system] [Server] lastDate: ${S}`),S!==y?yt.todayReqNum=1:yt.todayReqNum++}else yt.todayReqNum=1;let g=t.url,A=g.indexOf("/api/v2");A!==-1&&(g=g.substring(A));let b=null;if(o==="POST"||o==="PUT"||o==="PATCH")try{let S=t.clone();if((S.headers.get("content-type")||"").includes("application/json"))b=await S.json();else{let I=await S.text();I&&(b=JSON.parse(I))}}catch{b=null}let x={interface:g,params:b,timestamp:new Date().toISOString(),method:o,clientIp:n};yt.reqRecords.push(x),yt.reqRecords.length>yt.MAX_RECORDS&&(yt.reqRecords=yt.reqRecords.slice(-yt.MAX_RECORDS))}if(a==="/"&&o==="GET")return lce();if(a==="/favicon.ico"||a==="/robots.txt"||o==="OPTIONS")return new Response(null,{status:204,headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, User-Agent"}});if(yt.token==="87654321"){if(u.length>0){if(u[0]==="87654321"||u[0]===yt.adminToken)a="/"+u.slice(1).join("/");else if(!l.includes(u[0]))return a==="/api/config"&&o==="GET"?rM(!1):(E("error",`[system] [Server] Invalid token in path: ${a}`),Me({errorCode:401,success:!1,errorMessage:"Unauthorized"},401))}}else{if(u.length<1||u[0]!==yt.token&&u[0]!==yt.adminToken)return a==="/api/config"&&o==="GET"?rM(!1):(E("error",`[system] [Server] Invalid or missing token in path: ${a}`),Me({errorCode:401,success:!1,errorMessage:"Unauthorized"},401));a="/"+u.slice(1).join("/")}if(a.endsWith("/danmaku/api/v2/fongmi/danmaku")&&(E("info",`[Path Fix] Collapsed nested danmaku path: "${a}" -> "/danmaku"`),a="/danmaku"),a==="/api/config"&&o==="GET")return rM(!0);if(a==="/api/reqrecords"&&o==="GET")return Cct();if(E("info",`[system] [Server] ${a}`),a!=="/"&&a!=="/danmaku"&&a!=="/api/logs"&&!a.startsWith("/api/env")&&!a.startsWith("/api/deploy")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")){E("info",`[Path Check] Starting path normalization for: "${a}"`);let h=a;for(a=a.replace(/\/+/g,"/");a.startsWith("/api/v2/api/v2/");)E("info","[Path Check] Found redundant /api/v2 prefix. Cleaning..."),a=a.substring(7);a!==h?E("info",`[Path Check] Path after cleanup: "${a}"`):E("info","[Path Check] Path after cleanup: No cleanup needed.");let y=a;!a.startsWith("/api/v2")&&a!=="/"&&!a.startsWith("/api/logs")&&!a.startsWith("/api/env")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")&&(a.startsWith("/v2/")||a==="/v2"?(E("info","[Path Check] Path is missing /api prefix. Adding /api..."),a="/api"+a):a.startsWith("/api/")||a==="/api"?(E("info","[Path Check] Path is missing /v2 prefix. Adding /v2..."),a="/api/v2"+a.substring(4)):(E("info","[Path Check] Path is missing /api/v2 prefix. Adding /api/v2..."),a="/api/v2"+(a.startsWith("/")?a:"/"+a))),a===y&&E("info","[Path Check] Prefix Check: No prefix addition needed."),E("info",`[Path Check] Final normalized path: "${a}"`)}if(a==="/"&&o==="GET")return lce();if(a==="/api/v2/search/anime"&&o==="GET")return G1(i);if(a==="/api/v2/search/episodes"&&o==="GET")return zot(i);if(a==="/api/v2/fongmi/danmaku"&&(o==="GET"||o==="POST"))return nce(i,t);if(a==="/danmaku"&&(o==="GET"||o==="POST"))return nce(i,t);if(a==="/api/v2/match"&&o==="POST")return Kot(i,t,n);if(a.startsWith("/api/v2/bangumi/")&&o==="GET")return Zoe(a);if((a.startsWith("/api/v2/comment")||a.startsWith("/api/v2/extcomment"))&&o==="GET"){let h=i.searchParams.get("format"),y=i.searchParams.get("url"),g=i.searchParams.get("segmentflag"),A=i.searchParams.get("duration"),b=g==="true"||g==="1",x=A==="true"||A==="1";if(y){if(Of(y)!==null)return E("info",`[Utils] [Rate Limit] Cache hit for URL: ${y}, skipping rate limit check`),rce(y,h,b,x);if(yt.rateLimitMaxRequests>0){let R=Date.now(),N=60*1e3;RL(R),yt.requestHistory.has(n)||yt.requestHistory.set(n,[]);let B=yt.requestHistory.get(n).filter(M=>R-M<=N);if(B.length>=yt.rateLimitMaxRequests)return E("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${B.length}/${yt.rateLimitMaxRequests} requests in 1 minute)`),Me({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);B.push(R),yt.requestHistory.set(n,B),E("info",`[Utils] [Rate Limit] IP ${n} request count: ${B.length}/${yt.rateLimitMaxRequests}`)}return rce(y,h,b,x)}if(!a.startsWith("/api/v2/comment/"))return E("error","[system] [Server] Missing commentId or url parameter"),Me({errorCode:400,success:!1,errorMessage:"Missing commentId or url parameter"},400);let S=parseInt(a.split("/").pop()),T=VC(S);if(T&&Of(T)!==null)return E("info",`[Utils] [Rate Limit] Cache hit for URL: ${T}, skipping rate limit check`),tce(a,h,b,n,x);if(yt.rateLimitMaxRequests>0){let I=Date.now(),R=60*1e3;RL(I),yt.requestHistory.has(n)||yt.requestHistory.set(n,[]);let k=yt.requestHistory.get(n).filter(B=>I-B<=R);if(k.length>=yt.rateLimitMaxRequests)return E("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${k.length}/${yt.rateLimitMaxRequests} requests in 1 minute)`),Me({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);k.push(I),yt.requestHistory.set(n,k),E("info",`[Utils] [Rate Limit] IP ${n} request count: ${k.length}/${yt.rateLimitMaxRequests}`)}return tce(a,h,b,n,x)}if(a.startsWith("/api/v2/segmentcomment")&&o==="POST")try{let h=i.searchParams.get("format"),y=await t.json(),g;try{g=Zb.fromJson(y)}catch{return E("error","[system] [Server] Invalid JSON in request body for segment"),Me({errorCode:400,success:!1,errorMessage:"Invalid JSON in request body"},400)}return Yot(g,h)}catch(h){return E("error",`[system] [Server] Error processing segmentcomment request: ${h.message}`),Me({errorCode:500,success:!1,errorMessage:"Internal server error"},500)}return a==="/api/logs"&&o==="GET"?vct():a==="/api/logs/clear"&&o==="POST"?Sct():a==="/api/env/set"&&o==="POST"?wct(t):a==="/api/env/add"&&o==="POST"?Rct(t):a==="/api/env/del"&&o==="POST"?Nct(t):a==="/api/deploy"&&o==="POST"?Ect():a==="/api/cache/animes"&&o==="GET"?Tct():a==="/api/cache/clear"&&o==="POST"?Ict():a==="/api/cookie/status"&&o==="GET"?Lct():a==="/api/cookie/qr/generate"&&o==="POST"?Wct():a==="/api/cookie/qr/check"&&o==="POST"?$ct(t):a==="/api/cookie/verify"&&o==="POST"?Mct(t):a==="/api/cookie/save"&&o==="POST"?Uct(t):a==="/api/ai/verify"&&o==="POST"?Oct(t):Me({message:"Not found"},404)}function h1r(t,e){return!t||!e||e==="unknown"?!1:t.type==="exact"?t.value===e:t.type==="regex"?t.value.test(e):t.type==="cidr"?g1r(e,t.ip,t.prefix):!1}function g1r(t,e,r){if(t.includes(":")||e.includes(":")){let o=Fct(t),c=Fct(e);if(!o||!c||r<0||r>128)return!1;let u=Math.floor(r/8),l=r%8;for(let d=0;d<u;d++)if(o[d]!==c[d])return!1;if(l>0){let d=255<<8-l&255;return(o[u]&d)===(c[u]&d)}return!0}let s=dce(t),i=dce(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 dce(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 Fct(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=dce(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 Fu=null,z1=9321,nM=0,yy=null,jct=!1,K1={...process.env,ADMIN_TOKEN:"douer"},sM=!1,Tw=null,jc=null,Tn={overrides:{},deletedKeys:[]};function Ni(...t){}function ww(...t){}function Vct(){return nM>0}function y1r(){try{let byEval=eval("1 + 1")===2,byFunction=Function("return 2 + 2")()===4;return byEval&&byFunction}catch{return!1}}function pce(){return{overrides:{},deletedKeys:[]}}function Kct(){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 Ace.default.resolve(e,"danmu_env_overrides.json")}function A1r(t){let e=pce();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 x1r(){jc=Kct();try{if(!Rw.default.existsSync(jc)){Tn=pce(),Ni("loadPersistedEnvStore()",{loaded:!1,reason:"store file not found",path:jc});return}let t=Rw.default.readFileSync(jc,"utf8"),e=t?JSON.parse(t):{};Tn=A1r(e),Ni("loadPersistedEnvStore()",{loaded:!0,path:jc,overrides:Object.keys(Tn.overrides).length,deleted:Tn.deletedKeys.length})}catch(t){Tn=pce(),ww("loadPersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:jc})}}function b1r(){try{jc||(jc=Kct());let t=Ace.default.dirname(jc);Rw.default.mkdirSync(t,{recursive:!0});let e={version:1,updatedAt:new Date().toISOString(),overrides:Tn.overrides,deletedKeys:Tn.deletedKeys};return Rw.default.writeFileSync(jc,JSON.stringify(e,null,2),"utf8"),!0}catch(t){return ww("savePersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:jc||""}),!1}}function mce(){let t={...process.env};return Object.entries(Tn.overrides).forEach(([e,r])=>{t[e]=r}),Tn.deletedKeys.forEach(e=>{delete t[e]}),_1r(t)}function _1r(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 E1r(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 v1r(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=E1r(c);u!==null&&u!==""&&(r[s]=u)}),t}function fce(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 b1r()?(K1=mce(),!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],K1=mce(),!1)}var S1r={async setEnv(t,e){return fce(t,e,!1)?(Ni("memoryNodeEnvHandler.setEnv()",{key:String(t||"")}),!0):!1},async addEnv(t,e){return fce(t,e,!1)?(Ni("memoryNodeEnvHandler.addEnv()",{key:String(t||"")}),!0):!1},async delEnv(t){return fce(t,"",!0)?(Ni("memoryNodeEnvHandler.delEnv()",{key:String(t||"")}),!0):!1}};function I1r(){sM||(Tw=Ta.getHandler,Ta.getHandler=async function(e){let r=String(e||"").toLowerCase();return!r||r==="node"?S1r:Tw.call(Ta,e)},sM=!0,Ni("installNodeEnvHotReloadPatch()",{patched:!0}))}function C1r(){!sM||!Tw||(Ta.getHandler=Tw,Tw=null,sM=!1,Ni("uninstallNodeEnvHotReloadPatch()",{patched:!1}))}function T1r(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 w1r(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 R1r(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"?w1r(t):Buffer.from(String(t),"utf8")}var Nw=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]()}},hce=class t{constructor(e,r={}){this.url=String(e||""),this.method=String(r.method||"GET").toUpperCase();let n=globalThis.Headers||Nw;this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this._bodyBuffer=T1r(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)}},gce=class{constructor(e=null,r={}){let n=globalThis.Headers||Nw;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=R1r(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 N1r(){jct||(typeof globalThis.Headers!="function"&&(globalThis.Headers=Nw),typeof globalThis.Response!="function"&&(globalThis.Response=gce),typeof globalThis.Request!="function"&&(globalThis.Request=hce),jct=!0,Ni("installWebApiPolyfills()",{hasFetch:typeof globalThis.fetch=="function",hasRequest:typeof globalThis.Request=="function",hasHeaders:typeof globalThis.Headers=="function",hasResponse:typeof globalThis.Response=="function"}))}async function Qct(t,e={}){let r=await he({url:t,method:e.method||"GET",headers:e.headers||{},data:e.body,signal:e.signal,responseType:"arraybuffer",validateStatus:()=>!0,timeout:1e4}),n=Buffer.from(r.data),s={};return Object.entries(r.headers||{}).forEach(([i,a])=>{s[i]=String(a)}),{ok:r.status>=200&&r.status<300,status:r.status,statusText:r.statusText||"",headers:new Headers(s),url:String(t),async text(){return n.toString("utf8")},async json(){return JSON.parse(n.toString("utf8"))},async arrayBuffer(){return n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}}}function O1r(){Ni("installPatches()",{hasFetch:typeof globalThis.fetch=="function"}),yy=globalThis.fetch,globalThis.fetch=function(e,r){return nM>0?Qct(e,r):typeof yy=="function"?yy(e,r):Qct(e,r)}}function yce(){if(Ni("uninstallPatches()",{hasOriginalFetch:!!yy}),typeof yy=="function")globalThis.fetch=yy;else try{delete globalThis.fetch}catch{globalThis.fetch=void 0}yy=null}function zct(t=9321){if(z1=t,N1r(),I1r(),x1r(),K1=mce(),Ni("loadDanmuEnv()",{source:"process.env + persisted store",adminTokenFallback:K1.ADMIN_TOKEN==="douer",persistedEnvStorePath:jc,persistedOverrides:Object.keys(Tn.overrides).length,persistedDeletedKeys:Tn.deletedKeys.length}),Ni("start()",{port:t,alreadyRunning:!!Fu,node:process.version,platform:`${process.platform}/${process.arch}`,v8:process.versions?.v8,dynamicCode:y1r()}),!Fu){O1r();try{Fu=Gct.default.createServer(async(e,r)=>{nM++;let n=`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,s=Date.now();Ni(`[${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(m=>{let p="";e.on("data",h=>p+=h),e.on("end",()=>m(p))}));let u=new Request(i,{method:e.method,headers:Object.fromEntries(Object.entries(e.headers).map(([m,p])=>[m,String(p)])),body:c||void 0}),l={...K1},d=await qct(u,l,"node",e.socket?.remoteAddress||"unknown");Ni(`[${n}] worker done`,{status:d.status}),r.statusCode=d.status,d.headers.forEach((m,p)=>{let h=p.toLowerCase();h!=="content-encoding"&&h!=="content-length"&&r.setHeader(p,m)});let f;if(o){let m=await d.text();try{let p=JSON.parse(m),h=v1r(p,l);f=Buffer.from(JSON.stringify(h),"utf8")}catch{f=Buffer.from(m||"","utf8")}}else f=Buffer.from(await d.arrayBuffer());r.setHeader("Content-Length",f.length),r.end(f)}catch(i){ww(`[${n}] request failed`,{message:i?.message||String(i),stack:i?.stack||""}),r.statusCode=500,r.end("Internal Server Error")}finally{Ni(`[${n}] complete`,{costMs:Date.now()-s}),nM--}}),Fu.listen(t,"0.0.0.0",()=>{let e=Fu?.address?.();Ni("listen ok",{address:e})}),Fu.on("error",e=>{ww("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}`),yce(),Fu=null})}catch(e){ww("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}`),yce()}}}function Yct(){Ni("stop()",{hasServer:!!Fu,port:z1}),Fu&&(Fu.close(),Fu=null),C1r(),yce()}function QAn(){return z1}function Hct(t){let e=String(t||"").trim().toLowerCase();return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function k1r(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 P1r(t){let e=k1r(t);if(e&&!Hct(e))return e;let r=String(nm()||"").trim();return r&&!Hct(r)?r:"127.0.0.1"}function D1r(t){let e=Number.parseInt(String(t??""),10);return Number.isFinite(e)&&e>0?e:z1}function xce(t,e=z1){let r=P1r(t),n=D1r(e);return`http://${r}:${n}`}function bce(t,e=z1){let r=xce(t,e),n=String(B1r()||"").trim();return n?`${r}/${encodeURIComponent(n)}`:r}function B1r(){return String(K1?.ADMIN_TOKEN||"").trim()||"douer"}function M1r(t){return Ow.default.enc.Utf8.stringify(Ow.default.enc.Base64.parse(t))}function Jct(t){return Ow.default.enc.Base64.stringify(Ow.default.enc.Utf8.parse(t))}function tut(t){return String(t||"").split(",")[0].trim()}function Xct(t){return tut(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function Zct(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 iM(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=Xct(t?.headers?.["x-forwarded-host"])||Xct(t?.headers?.host),s=tut(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http",a=s||String(t?.protocol||"").trim()||i;if(n&&!Zct(n))return`${a}://${n}`;let o=String(nm()||"").trim(),c=Number.parseInt(String(t?.server?.address?.()?.port||""),10);return o&&!Zct(o)?Number.isFinite(c)&&c>0?`${a}://${o}:${c}`:`${a}://${o}`:e}async function W1r(t,e){return{}}async function $1r(t,e){return{class:[{type_id:"setting",type_name:`${iM(t)}/website`}]}}async function U1r(t,e){let r=iM(t),n=r+t.server.prefix+"/proxy",s=bce(r);return{page:1,pagecount:1,limit:1,total:1,list:[{vod_id:"openInternalWebsite",vod_name:"\u901A\u7528\u914D\u7F6E",vod_pic:n+"/"+Jct(`${r}/website`)},{vod_id:"builtinDanmuApiQr",vod_name:"\u5F39\u5E55\u670D\u52A1",vod_pic:n+"/"+Jct(s)}]}}async function F1r(t,e){if(t.body.id==="openInternalWebsite"){let r=iM(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:`${r}/website`}}),{list:[{vod_name:"",vod_content:""}]}}if(t.body.id==="builtinDanmuApiQr"){let r=iM(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:bce(r)}}),{list:[{vod_name:"",vod_content:""}]}}return{list:[{vod_name:"",vod_content:""}]}}async function q1r(t,e){let r=t.params.img,n=M1r(r),s=await eut.default.toBuffer(n,{width:120,height:120,margin:15});e.send(s)}var rut={meta:{key:"baseset",name:"\u300C\u8BBE\u300D\u914D\u7F6E",type:3},api:async t=>{t.post("/init",W1r),t.post("/home",$1r),t.post("/category",U1r),t.post("/detail",F1r),t.get("/proxy/:img",q1r)}};var j1r=["https://666.666291.xyz","https://www.muou.asia","https://www.muou.site"],_ce=async t=>(await t.db.getObjectDefault("/muou",{}))?.urls||t.config.muou?.urls||j1r,Q1r=async(t,e)=>{await t.db.push("/muou/urls",e)},H1r=async t=>{await t.db.delete("/muou/urls")};async function Ece(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await _ce(e.server)})}),t.put("/urls",async(e,r)=>{await Q1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await H1r(e.server),r.send({code:0})})}var vce,aM=t=>{if(!vce){let e=Date.now();vce=new Promise(async r=>{let n=await _ce(t),s=await es(n);console.log("\u6728\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return vce},Y1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function G1r(t){try{if(!Y1.url)return;let e={"Content-Type":"application/json"};Y1.key&&(e.Authorization=`Bearer ${Y1.key}`),await le(Y1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:Y1.sendTimeout||1200,receiveTimeout:Y1.receiveTimeout||1500})}catch{}}async function Sce(t){return(await le.get(t,{headers:{"User-Agent":Gt}})).data}async function V1r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EAA\u5F55"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"25",type_name:"115"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[29]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[25]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function K1r(t,e){let r=await aM(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 Sce(o,Gt),u=De(c),l=u("#main .module-item"),d=[];for(var f of l){let h=u(f).find(".module-item-pic a").attr("href"),y=u(f).find(".module-item-pic img").attr("alt"),g=u(f).find(".module-item-pic img").attr("data-src"),A=u(f).find(".module-item-text").text();d.push({vod_id:h,vod_name:y,vod_pic:g,vod_remarks:A})}let p=u("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:p,limit:72,total:72*p,list:d}}async function z1r(t,e){let r=await aM(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Sce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let m=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let A=o(g).text().trim();return A||null}).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?c.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,m)=>m.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),G1r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function Y1r(t,e){let r=await aM(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Sce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var nut={meta:{key:"muou",name:"\u300C\u76D8\u300D\u6728\u5076",type:3},api:async t=>{t.post("/init",dr),t.post("/home",V1r),t.post("/category",K1r),t.post("/detail",z1r),t.post("/play",er),t.post("/search",Y1r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:aM};var J1r=["http://xiaocgege.shop"],Ice=async t=>(await t.db.getObjectDefault("/labi",{}))?.urls||t.config.labi?.urls||J1r,X1r=async(t,e)=>{await t.db.push("/labi/urls",e)},Z1r=async t=>{await t.db.delete("/labi/urls")};async function Cce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Ice(e.server)})}),t.put("/urls",async(e,r)=>{await X1r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Z1r(e.server),r.send({code:0})})}var Tce,oM=t=>{if(!Tce){let e=Date.now();Tce=new Promise(async r=>{let n=await Ice(t),s=await es(n);console.log("\u8721\u7B14\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Tce},J1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function e_r(t){try{if(!J1.url)return;let e={"Content-Type":"application/json"};J1.key&&(e.Authorization=`Bearer ${J1.key}`),await le(J1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:J1.sendTimeout||1200,receiveTimeout:J1.receiveTimeout||1500})}catch{}}async function wce(t){return(await le.get(t,{headers:{"User-Agent":Gt}})).data}async function t_r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"24",type_name:"4K"},{type_id:"29",type_name:"\u81FB\u5F69"},{type_id:"5",type_name:"\u77ED\u5267"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[24]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD",v:"\u4E2D\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[29]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function r_r(t,e){let r=await oM(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await wce(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var m of d){let y=l(m).find(".module-item-pic a").attr("href"),g=l(m).find(".module-item-pic img").attr("alt"),A=l(m).find(".module-item-pic img").attr("data-src"),b=l(m).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:A,vod_remarks:b})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function n_r(t,e){let r=await oM(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await wce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let m=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let A=o(g).text().trim();return A||null}).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?c.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,m)=>m.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),e_r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function s_r(t,e){let r=await oM(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await wce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var sut={meta:{key:"labi",name:"\u300C\u76D8\u300D\u8721\u7B14",type:3},api:async t=>{t.post("/init",dr),t.post("/home",t_r),t.post("/category",r_r),t.post("/detail",n_r),t.post("/play",er),t.post("/search",s_r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:oM};var i_r=["http://shandian.blog","http://sd.sduc.site"],Rce=async t=>(await t.db.getObjectDefault("/shandian",{}))?.urls||t.config.shandian?.urls||i_r,a_r=async(t,e)=>{await t.db.push("/shandian/urls",e)},o_r=async t=>{await t.db.delete("/shandian/urls")};async function Nce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Rce(e.server)})}),t.put("/urls",async(e,r)=>{await a_r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await o_r(e.server),r.send({code:0})})}var Oce,cM=t=>{if(!Oce){let e=Date.now();Oce=new Promise(async r=>{let n=await Rce(t),s=await es(n);console.log("\u95EA\u7535\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Oce},X1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function c_r(t){try{if(!X1.url)return;let e={"Content-Type":"application/json"};X1.key&&(e.Authorization=`Bearer ${X1.key}`),await le(X1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:X1.sendTimeout||1200,receiveTimeout:X1.receiveTimeout||1500})}catch{}}async function kce(t){return(await le.get(t,{headers:{"User-Agent":Gt}})).data}async function u_r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"30",type_name:"\u77ED\u5267"}],n={};return n[1]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[30]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"by",name:"",init:"",value:[{n:"\u9ED8\u8BA4",v:""},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function l_r(t,e){let r=await cM(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await kce(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var m of d){let y=l(m).find(".module-item-pic a").attr("href"),g=l(m).find(".module-item-pic img").attr("alt"),A=l(m).find(".module-item-pic img").attr("data-src"),b=l(m).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:A,vod_remarks:b})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function d_r(t,e){let r=await cM(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await kce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let m=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let A=o(g).text().trim();return A||null}).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?c.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,m)=>m.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),c_r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function f_r(t,e){let r=await cM(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await kce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var iut={meta:{key:"shandian",name:"\u300C\u76D8\u300D\u95EA\u7535",type:3},api:async t=>{t.post("/init",dr),t.post("/home",u_r),t.post("/category",l_r),t.post("/detail",d_r),t.post("/play",er),t.post("/search",f_r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:cM};var p_r=["https://woog.nxog.eu.org"],Pce=async t=>(await t.db.getObjectDefault("/ouge",{}))?.urls||t.config.ouge?.urls||p_r,m_r=async(t,e)=>{await t.db.push("/ouge/urls",e)},h_r=async t=>{await t.db.delete("/ouge/urls")};async function Dce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Pce(e.server)})}),t.put("/urls",async(e,r)=>{await m_r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await h_r(e.server),r.send({code:0})})}var Bce,uM=t=>{if(!Bce){let e=Date.now();Bce=new Promise(async r=>{let n=await Pce(t),s=await es(n);console.log("\u6B27\u54E5\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Bce},Z1={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function g_r(t){try{if(!Z1.url)return;let e={"Content-Type":"application/json"};Z1.key&&(e.Authorization=`Bearer ${Z1.key}`),await le(Z1.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:Z1.sendTimeout||1200,receiveTimeout:Z1.receiveTimeout||1500})}catch{}}async function Lce(t){return(await le.get(t,{headers:{"User-Agent":Gt}})).data}async function y_r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"21",type_name:"\u7EFC\u5408"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"+\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"+\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7537\u9891",v:"+\u7537\u9891"},{n:"\u5973\u9891",v:"\u5973\u9891"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u751C\u5BA0",v:"\u751C\u5BA0"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u7A7F\u8D8A",v:"\u7A7F\u8D8A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u4EB2\u60C5",v:"\u4EB2\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u840C\u5B9D",v:"\u840C\u5B9D"},{n:"\u91CD\u751F",v:"\u91CD\u751F"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u9006\u88AD",v:"\u9006\u88AD"},{n:"\u8650\u604B",v:"\u8650\u604B"},{n:"\u9274\u5B9D",v:"\u9274\u5B9D"},{n:"\u590D\u4EC7",v:"\u590D\u4EC7"},{n:"\u4FEE\u4ED9",v:"\u4FEE\u4ED9"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u64AD\u62A5",v:"\u64AD\u62A5"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u6E38\u620F\u4E92\u52A8",v:"\u6E38\u620F\u4E92\u52A8"},{n:"\u8D22\u7ECF",v:"\u8D22\u7ECF"},{n:"\u6C42\u804C",v:"\u6C42\u804C"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[21]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function A_r(t,e){let r=await uM(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await Lce(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var m of d){let y=l(m).find(".module-item-pic a").attr("href"),g=l(m).find(".module-item-pic img").attr("alt"),A=l(m).find(".module-item-pic img").attr("data-src"),b=l(m).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:A,vod_remarks:b})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function x_r(t,e){let r=await uM(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Lce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let m=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let A=o(g).text().trim();return A||null}).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?c.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,m)=>m.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),g_r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function b_r(t,e){let r=await uM(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Lce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var aut={meta:{key:"ouge",name:"\u300C\u76D8\u300D\u6B27\u6B4C",type:3},api:async t=>{t.post("/init",dr),t.post("/home",y_r),t.post("/category",A_r),t.post("/detail",x_r),t.post("/play",er),t.post("/search",b_r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:uM};var __r=["https://www.wexwp.cc","https://www.2xiaopan.top"],Mce=async t=>(await t.db.getObjectDefault("/erxiao",{}))?.urls||t.config.erxiao?.urls||__r,E_r=async(t,e)=>{await t.db.push("/erxiao/urls",e)},v_r=async t=>{await t.db.delete("/erxiao/urls")};async function Wce(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Mce(e.server)})}),t.put("/urls",async(e,r)=>{await E_r(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await v_r(e.server),r.send({code:0})})}var $ce,lM=t=>{if(!$ce){let e=Date.now();$ce=new Promise(async r=>{let n=await Mce(t),s=await es(n);console.log("\u4E8C\u5C0F\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return $ce},e_={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function S_r(t){try{if(!e_.url)return;let e={"Content-Type":"application/json"};e_.key&&(e.Authorization=`Bearer ${e_.key}`),await le(e_.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:e_.sendTimeout||1200,receiveTimeout:e_.receiveTimeout||1500})}catch{}}async function Uce(t){return(await le.get(t,{headers:{"User-Agent":Gt}})).data}async function I_r(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"22",type_name:"\u771F\u5F69"},{type_id:"21",type_name:"\u7EFC\u827A"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[22]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[21]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function C_r(t,e){let r=await lM(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await Uce(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var m of d){let y=l(m).find(".module-item-pic a").attr("href"),g=l(m).find(".module-item-pic img").attr("alt"),A=l(m).find(".module-item-pic img").attr("data-src"),b=l(m).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:A,vod_remarks:b})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function T_r(t,e){let r=await lM(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Uce(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let m=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let A=o(g).text().trim();return A||null}).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?c.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,m)=>m.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),S_r({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function w_r(t,e){let r=await lM(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Uce(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var out={meta:{key:"erxiao",name:"\u300C\u76D8\u300D\u4E8C\u5C0F",type:3},api:async t=>{t.post("/init",dr),t.post("/home",I_r),t.post("/category",C_r),t.post("/detail",T_r),t.post("/play",er),t.post("/search",w_r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:lM};var R_r="https://img.icons8.com/fluency/96/folder-invoices--v1.png",N_r="https://img.icons8.com/color/48/video.png",O_r="https://img.icons8.com/color/48/file.png",k_r=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],P_r=[".srt",".ass",".scc",".stl",".ttml"];async function D_r(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function cut(t){return t?.dir===!0||t?.dir===1||t?.type==="dir"||t?.type==="folder"}function uut(t){let e=String(t?.file_name||"").toLowerCase();return t?.obj_category==="video"||k_r.some(r=>e.endsWith(r))}function B_r(t){let e=String(t?.file_name||"").toLowerCase();return P_r.some(r=>e.endsWith(r))}function L_r(t,e){return`folder@@@${t}@@@${e}`}function M_r(t){let e=["own","",t.fid,"",t.subtitle?t.subtitle.fid:"",t.subtitle&&t.subtitle.share_fid_token||""];return`file@@@${t.file_name}@@@${e.join("*")}`}async function W_r(t,e,r=1){let n=[],s=[],i=await x6e(t,e||"0",r);i.forEach(o=>{let c=cut(o),u=o.file===!0||o.file===1||o.type==="file";if(!c){if(u&&uut(o)){if(Number(o.size||0)<1024*1024*5)return;n.push(o);return}u&&B_r(o)&&s.push(o)}}),s.length>0&&n.forEach(o=>{let c=wl({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=cut(o);if(!c&&!uut(o))return;let u=String(o.file_name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=O_r;c?l=R_r:l=N_r,a.push({vod_id:c?L_r(u,o.fid):M_r(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":Zi(Number(o.size||0)),...c?{cate:{id:o.fid,name:u}}:{},ratio:1.33})}),{rawCount:i.length,list:a}}async function $_r(t,e){return await QI(t),{}}async function U_r(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684\u5938\u514B\u7F51\u76D8"}]}}async function F_r(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await W_r(t,r==="0"?"0":r,n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function q_r(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await D_r("quark","\u5938\u514B");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function j_r(t,e){return await iB(t,e)}async function Q_r(t,e){return{page:1,pagecount:1,list:[]}}async function H_r(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var lut={meta:{key:"myquark",name:"\u300C\u76D8\u300D\u5938\u514B",type:3},api:async t=>{t.post("/init",$_r),t.post("/home",U_r),t.post("/category",F_r),t.post("/detail",q_r),t.post("/play",j_r),t.post("/search",Q_r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",sB),t.get("/test",H_r)}};var G_r="https://img.icons8.com/fluency/96/folder-invoices--v1.png",V_r="https://img.icons8.com/color/48/video.png",K_r="https://img.icons8.com/color/48/file.png",z_r=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],Y_r=[".srt",".ass",".scc",".stl",".ttml"];async function J_r(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function X_r(t){return t?.type==="folder"}function dut(t){let e=`.${String(t?.file_extension||"").toLowerCase()}`;return t?.category==="video"||z_r.includes(e)}function Z_r(t,e){return`folder@@@${t}@@@${e}`}function eEr(t){return`file@@@${t.name}@@@own*${t.file_id}*${t.subtitle?t.subtitle.file_id:""}`}async function tEr(t,e){let r=[],n=[],s=[],i="";do{let o=await i6e(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"&&dut(o)){if(Number(o.size||0)<1024*1024*5)return;r.push(o);return}let c=String(o.file_extension||"").toLowerCase();o.type==="file"&&Y_r.some(u=>c.endsWith(u))&&n.push(o)}),n.length>0&&r.forEach(o=>{let c=wl(o,n);c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return s.forEach(o=>{let c=X_r(o);if(!c&&!dut(o))return;let u=String(o.name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=K_r;c?l=G_r:l=V_r,a.push({vod_id:c?Z_r(u,o.file_id):eEr(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":Zi(Number(o.size||0)),...c?{cate:{id:o.file_id,name:u}}:{},ratio:1.33})}),a}async function rEr(t,e){return await jI(t),{}}async function nEr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u963F\u91CC\u7F51\u76D8"}]}}async function sEr(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 tEr(t,r||"root");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function iEr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await J_r("ali","\u963F\u91CC");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function aEr(t,e){return await tB(t,e)}async function oEr(t,e){return{page:1,pagecount:1,list:[]}}async function cEr(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 fut={meta:{key:"myali",name:"\u300C\u76D8\u300D\u963F\u91CC",type:3},api:async t=>{t.post("/init",rEr),t.post("/home",nEr),t.post("/category",sEr),t.post("/detail",iEr),t.post("/play",aEr),t.post("/search",oEr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",eB),t.get("/test",cEr)}};var mut="https://img.icons8.com/fluency/96/folder-invoices--v1.png",uEr="https://img.icons8.com/color/48/video.png",lEr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],dM=100,dEr=5,fEr="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 put(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function pEr(t){if(Number(t?.mediaType)===3)return!0;let e=String(t?.name||t?.fileName||"").toLowerCase();return lEr.some(r=>e.endsWith(r))}function Fce(t){return String(t?.name||t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function qce(t){return String(t?.id||t?.fileId||t?.folderId||t?.fileID||t?.fId||"")}function mEr(t){return Number(t?.size||t?.fileSize||0)}function hEr(t,e){return`folder@@@${t}@@@${e}`}function gEr(t){return`file@@@${Fce(t)}@@@own*${qce(t)}`}function yEr(t){return String(t?.vod_id||"").startsWith("file@@@")}function AEr(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 jce(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 xEr(t){return jce(t,36,10)}async function hut(t,e="-11",r=1){await jb(t);let n=await Sf.listOwnFiles(e,r,dM),s=[];return(n.folderList||[]).forEach(i=>{let a=qce(i);if(!a)return;let o=Fce(i);s.push({vod_id:hEr(o,a),vod_name:o,vod_pic:mut,vod_remarks:"\u76EE\u5F55",cate:{id:a,name:o},ratio:1.33})}),(n.fileList||[]).forEach(i=>{if(!qce(i)||!pEr(i))return;let a=Fce(i);s.push({vod_id:gEr(i),vod_name:a,vod_pic:uEr,vod_remarks:Zi(mEr(i)),ratio:1.33})}),{rawCount:Number(n.count||0),list:s}}async function bEr(t,e){return await jb(t),{}}async function _Er(t,e){return{class:[{type_id:"-11",type_name:"\u6211\u7684\u5929\u7FFC\u4E91\u76D8"}]}}async function EEr(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 hut(t,r||"-11",n);return{page:n,pagecount:s>=dM?n+1:n,limit:dM,total:9999,list:i}}async function vEr(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<=dEr;){let{rawCount:f,list:m}=await hut(t,u,d);if(l.push(...m.filter(yEr)),f<dM)break;d+=1}if(l.length>0){let f=await put("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:c,vod_pic:mut,vod_remarks:`${l.length}\u4E2A\u89C6\u9891`,vod_content:`\u76EE\u5F55: ${c}`,vod_play_from:f,vod_play_url:l.map(AEr).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 put("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 SEr(t,e){await jb(t);let r=Date.now(),n=String(t.body.id||""),s=n.split("*"),i=jce(n,8,6),a=jce(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 Sf.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:xEr(c),costMs:Date.now()-r}),{parse:0,url:["\u539F\u753B",c],header:{"User-Agent":fEr}}):(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 IEr(t,e){return{page:1,pagecount:1,list:[]}}async function CEr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var gut={meta:{key:"mytianyi",name:"\u300C\u76D8\u300D\u5929\u7FFC",type:3},api:async t=>{t.post("/init",bEr),t.post("/home",_Er),t.post("/category",EEr),t.post("/detail",vEr),t.post("/play",SEr),t.post("/search",IEr),t.get("/test",CEr)}};var TEr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",wEr="https://img.icons8.com/color/48/video.png",REr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function NEr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function OEr(t){return encodeURIComponent(String(t||""))}function kEr(t){return Number(t?.isdir)===1||Number(t?.category)===6}function PEr(t){if(Number(t?.category)===1)return!0;let e=String(t?.server_filename||t?.path||"").toLowerCase();return REr.some(r=>e.endsWith(r))}function yut(t){return String(t?.server_filename||t?.path?.split("/").pop()||"\u672A\u77E5").trim()||"\u672A\u77E5"}function DEr(t,e){return`folder@@@${t}@@@${e}`}function BEr(t){let e=yut(t),r=String(t?.fs_id||t?.fsid||""),n=String(t?.path||"");return`file@@@${e}@@@own*${r}*${OEr(n)}`}async function LEr(t,e="/",r=1){let{list:n,rawCount:s}=await h$e(t,e||"/",r);return{rawCount:s,list:n.reduce((i,a)=>{let o=kEr(a);if(!o&&!PEr(a))return i;let c=yut(a);return i.push({vod_id:o?DEr(c,String(a?.path||"/")):BEr(a),vod_name:c,vod_pic:o?TEr:wEr,vod_remarks:o?"\u76EE\u5F55":Zi(Number(a?.size||0)),...o?{cate:{id:String(a?.path||"/"),name:c}}:{},ratio:1.33}),i},[])}}async function MEr(t,e){return await Qb(t),{}}async function WEr(t,e){return{class:[{type_id:"/",type_name:"\u6211\u7684\u767E\u5EA6\u7F51\u76D8"}]}}async function $Er(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 LEr(t,r||"/",n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function UEr(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 NEr("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 FEr(t,e){return await JB(t,e)}async function qEr(t,e){return{page:1,pagecount:1,list:[]}}async function jEr(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 Aut={meta:{key:"mybaidu",name:"\u300C\u76D8\u300D\u767E\u5EA6",type:3},api:async t=>{t.post("/init",MEr),t.post("/home",WEr),t.post("/category",$Er),t.post("/detail",UEr),t.post("/play",FEr),t.post("/search",qEr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",XB),t.get("/test",jEr)}};var QEr="115Drive",xut="https://img.icons8.com/fluency/96/folder-invoices--v1.png",HEr="https://img.icons8.com/color/48/video.png",GEr={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5","X-Requested-With":"XMLHttpRequest",Origin:"https://115.com"};async function VEr(t,e="0",r=1){let n=await rm(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 le.get(o,{headers:{...GEr,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 KEr(t){return encodeURIComponent(String(t||""))}function zEr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function YEr(t,e,r){return`LOCAL###${t}###${KEr(e)}###${r}`}function but(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:zEr(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 JEr(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:YEr(e?"dir":"file",r,n),vod_name:r,vod_pic:e?xut:HEr,vod_remarks:e?"\u76EE\u5F55":Zi(Number(t.s||t.size||0)),...e?{cate:{id:n,name:r}}:{},ratio:1.33}}async function XEr(t,e){return{}}async function ZEr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684115\u7F51\u76D8"}]}}async function evr(t,e){let r=String(t.body.id||"0");r.startsWith("LOCAL###")&&(r=but(r).value||"0");let n=Number.parseInt(t.body.page,10)||1,{list:s,count:i}=await VEr(t.server,r,n);return{page:n,pagecount:Math.max(1,Math.ceil(i/115)),limit:115,total:i,list:s.map(JEr)}}async function tvr(t,e){return{list:(Array.isArray(t.body.id)?t.body.id:[t.body.id]).map(s=>{let i=but(s);return i.isOwn?i.kind==="dir"?{vod_id:i.id,vod_name:i.name||"\u76EE\u5F55",vod_pic:xut,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:QEr,vod_play_url:`OWN$${i.value}`}:{vod_id:i.id,vod_name:"115\u8D44\u6E90"}})}}async function rvr(t,e){let r=String(t.body.id||"").trim(),n=r.startsWith("OWN$")?r.slice(4):r;return n?await zB(t.server,n):{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"}}async function nvr(t,e){return{page:1,pagecount:1,list:[]}}async function svr(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 _ut={meta:{key:"my115",name:"\u300C\u76D8\u300D115",type:3},api:async t=>{t.post("/init",XEr),t.post("/home",ZEr),t.post("/category",evr),t.post("/detail",tvr),t.post("/play",rvr),t.post("/search",nvr),t.get("/test",svr)}};var ivr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",avr="https://img.icons8.com/color/48/video.png",ovr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function cvr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function uvr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function lvr(t){return t?.data??t??{}}function dvr(t){let e=lvr(t);return[e.InfoList,e.infoList,e.list,t?.InfoList,t?.infoList,t?.list].find(n=>Array.isArray(n))||[]}function Hce(t){return String(t?.FileName||t?.file_name||t?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Qce(t){return String(t?.FileId||t?.fileId||t?.file_id||"")}function Eut(t){return Number(t?.Size||t?.size||0)}function fvr(t){return String(t?.S3KeyFlag||t?.s3KeyFlag||"")}function pvr(t){return String(t?.Etag||t?.etag||"")}function mvr(t){return Number(t?.Category)===0||Number(t?.Type)===1||t?.type==="folder"}function hvr(t){let e=Hce(t).toLowerCase();return Number(t?.Category)===2||ovr.some(r=>e.endsWith(r))}function gvr(t,e){return`folder@@@${t}@@@${e}`}function yvr(t){let e=Hce(t),r=["own",Qce(t),fvr(t),String(Eut(t)),pvr(t),encodeURIComponent(e)];return`file@@@${e}@@@${r.join("*")}`}async function Avr(t,e="0"){await tm(t);let r=await oi.getrootmyfile(e||"0"),n=dvr(r),s=[];return n.forEach(i=>{let a=mvr(i);if(!a&&!hvr(i))return;let o=Hce(i);s.push({vod_id:a?gvr(o,Qce(i)):yvr(i),vod_name:o,vod_pic:a?ivr:avr,vod_remarks:a?"\u76EE\u5F55":Zi(Eut(i)),...a?{cate:{id:Qce(i),name:o}}:{},ratio:1.33})}),s}async function xvr(t,e){return await tm(t),{}}async function bvr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684123\u7F51\u76D8"}]}}async function _vr(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 Avr(t,r||"0");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function Evr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await cvr("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 vvr(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 tm(t);try{let n=await oi.getmyDownload(r[1],r[2],r[3],r[4],uvr(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 Svr(t,e){return{page:1,pagecount:1,list:[]}}async function Ivr(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 vut={meta:{key:"my123",name:"\u300C\u76D8\u300D123",type:3},api:async t=>{t.post("/init",xvr),t.post("/home",bvr),t.post("/category",_vr),t.post("/detail",Evr),t.post("/play",vvr),t.post("/search",Svr),t.get("/test",Ivr)}};var Cut="https://pan1.me";function Sut(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function Tut(t){return String(t||"").trim().replace(/\/+$/,"")||Cut}var wut=async(t,e,r)=>{let n=await t.db.getObjectDefault("/123ypzysq",{});if(Sut(n,e))return n[e];let s=t.config?.["123ypzysq"]||{};return Sut(s,e)?s[e]:r},Cvr=async t=>Tut(await wut(t,"url",Cut)),Tvr=async t=>String(await wut(t,"cookie","")||"").trim(),Gce=async t=>({url:await Cvr(t),cookie:await Tvr(t)}),Iut=async(t,e,r)=>{await t.db.push(`/123ypzysq/${e}`,r)},wvr=async t=>{await t.db.delete("/123ypzysq")};async function Vce(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await Gce(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await Iut(e.server,"url",Tut(n.url)),await Iut(e.server,"cookie",String(n.cookie||"").trim()),r.send({code:0})}),t.delete("/config",async(e,r)=>{await wvr(e.server),r.send({code:0})})}var fM="https://pan1.me",Rvr=["CATPAW_123YPZYSQ_COOKIE","PAN1_ME_COOKIE","YPZYSQ_COOKIE"],Nvr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Ovr=/https?:\/\/[A-Za-z0-9._~:/?#[\]@!$&'()*+,;=%-]+/g,kvr=/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/i,kut=[{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"}],Rut=["\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 dp(t){return String(t||"").replace(/\s+/g," ").trim()}async function Kce(t){let e=await Gce(t.server).catch(()=>({url:fM,cookie:""})),r=String(e.url||fM).trim().replace(/\/+$/,""),n=Rvr.map(s=>process.env[s]).find(Boolean);return{baseUrl:r||fM,cookie:String(e.cookie||n||"").trim()}}function Pvr(t,e=!1){let r={"User-Agent":Nvr,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 Put(t,e=fM){let r=String(t||"").trim();return r?new URL(r,e).toString():""}async function kw(t,e,r,n={}){let s=await le.request({url:Put(t,r.baseUrl),method:n.method||"GET",headers:Pvr(r,n.ajax),data:n.data||void 0});return String(s?.data||"")}function Dut(t){let e=String(t||"");return e.match(/thread-(\d+)/)?.[1]||e.match(/^\d+$/)?.[0]||""}function But(t){let e=De(t),r=[];return e("li.media.thread.tap").each((n,s)=>{let i=e(s),a=i.find('a[href*="thread-"]').first(),o=dp(a.text()),c=i.attr("data-tid")||Dut(a.attr("href"));if(!o||!c)return;let u=dp(i.find(".date.text-grey").text()),l=i.find("a.badge.badge-pill.badge-dark").map((d,f)=>dp(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 Lut(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 Dvr(){return Rut[Math.floor(Math.random()*Rut.length)]}async function Bvr(t,e,r){if(r.cookie)try{let n=new URLSearchParams({doctype:"1",return_html:"1",quotepid:"0",message:Dvr()}).toString();await kw(`/?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 Nut(t){return dp(t).match(/(?:æå–ç |è®¿é—®ç |å¯†ç |code)[::\s]*([A-Za-z0-9]{4})/i)?.[1]||""}function Lvr(t){return String(t||"").replace(/&amp;/g,"&").replace(/[)\])】,,。;;\s]+$/g,"").trim()}function Mvr(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 Out(t,e){let r=Lvr(t);return kvr.test(r)?e?Mvr(r,e):r:""}function Wvr(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=Nut(a);i.find("a[href]").each((c,u)=>{let l=t(u).attr("href"),d=Nut(t(u).parent().text())||o,f=Out(l,d);f&&r.add(f)});for(let c of i.html()?.match(Ovr)||[]){let u=Out(c,o);u&&r.add(u)}}),[...r]}function $vr(t,e,r){let n={vod_id:e,vod_name:dp(t(".movie-title").first().text())||dp(t("h1, h2, .title").first().text())||"123\u4E91\u76D8\u8D44\u6E90",vod_pic:Put(t(".movie-poster img").first().attr("src")||"",r),vod_content:dp(t(".plot-content").first().text())};return t(".detail-label").each((s,i)=>{let a=dp(t(i).text()),o=dp(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 Uvr(t,e){return await dr(t,e),{}}async function Fvr(t,e){return{class:kut}}async function qvr(t,e){let r=String(t.body.id||kut[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=await Kce(t),i=await kw(`/?forum-${r}-${n}.htm`,t,s),{$:a,list:o}=But(i);return{page:n,pagecount:Lut(a,n,"forum",r),limit:o.length,total:o.length,list:o}}async function jvr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[],s=await Kce(t);for(let i of r){let a=Dut(i);if(!a)continue;let o=await kw(`/?thread-${a}.htm`,t,s),c=De(o);c(".alert.alert-warning").text().includes("\u8BF7\u56DE\u590D\u540E\u518D\u67E5\u770B")&&(await Bvr(a,t,s),o=await kw(`/?thread-${a}.htm`,t,s),c=De(o));let u=$vr(c,a,s.baseUrl),l=Wvr(c),d=l.length>0?await Xt(l,t):null;d?.froms&&d?.urls&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls,u.vod_links=d.links),!u.vod_content&&l.length>0&&(u.vod_content=`\u5171\u53D1\u73B0${l.length}\u4E2A123\u7F51\u76D8\u94FE\u63A5`),n.push(u)}return{list:n}}async function Qvr(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 Kce(t),a=await kw(`/?search-${s}-${n}.htm`,t,i),{$:o,list:c}=But(a);return{page:n,pagecount:Lut(o,n,"search",s),limit:c.length,total:c.length,list:c}}async function Hvr(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 Mut={meta:{key:"123ypzysq",name:"\u300C\u76D8\u300D123\u793E\u533A",type:3},api:async t=>{t.post("/init",Uvr),t.post("/home",Fvr),t.post("/category",qvr),t.post("/detail",jvr),t.post("/play",er),t.post("/search",Qvr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt),t.get("/test",Hvr)}};var Uut="https://www.xn--rhqp87dfoiv9a830g.com";function Wut(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function Fut(t){return String(t||"").trim().replace(/\/+$/,"")||Uut}var qut=async(t,e,r)=>{let n=await t.db.getObjectDefault("/guanying",{});if(Wut(n,e))return n[e];let s=t.config?.guanying||{};return Wut(s,e)?s[e]:r},Gvr=async t=>Fut(await qut(t,"url",Uut)),Vvr=async t=>String(await qut(t,"cookie","")||"").trim(),zce=async t=>({url:await Gvr(t),cookie:await Vvr(t)}),$ut=async(t,e,r)=>{await t.db.push(`/guanying/${e}`,r)},Kvr=async t=>{await t.db.delete("/guanying")};async function Yce(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await zce(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await $ut(e.server,"url",Fut(n.url)),await $ut(e.server,"cookie",String(n.cookie||"").trim()),r.send({code:0})}),t.delete("/config",async(e,r)=>{await Kvr(e.server),r.send({code:0})})}var pM="https://www.xn--rhqp87dfoiv9a830g.com",zvr="https://s.tutu.pm/img",Yvr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Jvr=["CATPAW_GUANYING_COOKIE","GUANYING_COOKIE"],Xvr=12,Pw=30,Jce=48,Zvr=24e4,jut="guanying_video@@@",Qut="guanying_group@@@",Hut="guanying_link@@@",Gut=new Map,Dw=null,Bw=[{type_id:"mv",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u5267\u96C6"},{type_id:"ac",type_name:"\u52A8\u6F2B"}],eSr=["\u7F8E\u56FD","\u5927\u9646","\u65E5\u672C","\u5267\u60C5","\u79D1\u5E7B","\u52A8\u4F5C","\u559C\u5267","\u7231\u60C5","\u5192\u9669","\u72AF\u7F6A","\u60AC\u7591","\u513F\u7AE5","\u6B4C\u821E","\u97F3\u4E50","\u5947\u5E7B","\u52A8\u753B","\u6050\u6016","\u60CA\u609A","\u4E27\u5C38","\u6218\u4E89","\u4F20\u8BB0","\u7EAA\u5F55","\u897F\u90E8","\u707E\u96BE","\u53E4\u88C5","\u6B66\u4FA0","\u5BB6\u5EAD","\u77ED\u7247","\u6821\u56ED","\u6587\u827A","\u8FD0\u52A8","\u9752\u6625","\u540C\u6027","\u52B1\u5FD7","\u4EBA\u6027","\u7F8E\u98DF","\u5973\u6027","\u6CBB\u6108","\u5386\u53F2","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0","\u840C\u7CFB","\u65E5\u5E38","\u70ED\u8840","\u673A\u6218","\u6E38\u620F","\u60C5\u8272","\u641E\u7B11","\u604B\u7231","\u540E\u5BAB","\u767E\u5408","\u57FA\u8150","\u81F4\u90C1","\u5F02\u4E16\u754C","\u6CE1\u9762","\u6218\u6597","\u52A0\u62FF\u5927","\u9999\u6E2F","\u53F0\u6E7E","\u97E9\u56FD","\u5370\u5EA6","\u5FB7\u56FD","\u6CD5\u56FD","\u82F1\u56FD","\u610F\u5927\u5229","\u5DF4\u897F","\u6CF0\u56FD","\u6FB3\u5927\u5229\u4E9A","\u8377\u5170","\u897F\u73ED\u7259","\u58A8\u897F\u54E5"],tSr=["\u9884\u544A","\u9AD8\u6E05","\u6807\u6E05","\u4F4E\u6E05","\u62A2\u5148\u7248"];function _o(t){return String(t||"").replace(/<[^>]*>/g,"").replace(/\s+/g," ").trim()}function rSr(t){let e=String(t||"").trim();if(!e)return"";let r=e.match(/^app_auth\s+([^;\s]+)$/i);return r?`app_auth=${r[1]}`:e.includes("=")?e:`app_auth=${e}`}function nSr(t){return String(t||"").split(";").map(e=>e.trim()).filter(e=>{let r=e.split("=",1)[0]?.toLowerCase();return e&&r!=="browser_pow"&&r!=="browser_verified"}).join("; ")}function Vut(t){return`${t.baseUrl}|${nSr(t.cookie)}`}function sSr(t){let e=Gut.get(Vut(t));!e||e.expires<=Date.now()||(t.cookie=mM(t.cookie,String(e.cookie||"").split(";")))}async function Mw(t){let e=await zce(t.server).catch(()=>({url:pM,cookie:""})),r=Jvr.map(i=>process.env[i]).find(Boolean),s={baseUrl:String(e.url||pM).trim().replace(/\/+$/,"")||pM,cookie:rSr(e.cookie||r||"")};return sSr(s),s}function Xce(t,e=""){let r={"User-Agent":Yvr,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,application/json,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:e||t.baseUrl};return t.cookie&&(r.Cookie=t.cookie),r}function mM(t,e=[]){let r=new Map;return String(t||"").split(";").forEach(s=>{let i=s.trim(),a=i.indexOf("=");a<=0||r.set(i.slice(0,a),i.slice(a+1))}),(Array.isArray(e)?e:[e]).forEach(s=>{let i=String(s||"").split(";")[0]?.trim(),a=i.indexOf("=");if(a<=0)return;let o=i.slice(0,a),c=i.slice(a+1);c?r.set(o,c):r.delete(o)}),[...r.entries()].map(([s,i])=>`${s}=${i}`).join("; ")}function Zce(t,e=pM){return new URL(String(t||"/"),e).toString()}function iSr(t){return typeof t!="string"?!1:t.includes("\u6D4F\u89C8\u5668\u5B89\u5168\u9A8C\u8BC1")||t.includes("powSolve-")||t.includes("pow.worker-")}function aSr(t){let e=BigInt(`0x${t.N}`),r=BigInt(`0x${t.x}`),n=Number.parseInt(t.t,10)||0;for(let s=0;s<n;s++)r=r*r%e;return r.toString(16)}async function oSr(t,e){t.cookie=mM(t.cookie,e);let r=Vut(t),n=await le.get(Zce("/res/pow",t.baseUrl),{headers:Xce(t)});t.cookie=mM(t.cookie,n?.headers?.["set-cookie"]);let s=n?.data||{};if(!s.N||!s.x||!s.t)throw new Error(s.error||"\u6D4F\u89C8\u5668\u9A8C\u8BC1\u6311\u6218\u83B7\u53D6\u5931\u8D25");let i=Date.now(),a=aSr(s),o=3e3-(Date.now()-i);o>0&&await new Promise(u=>setTimeout(u,o));let c=await le.post(Zce("/res/pow",t.baseUrl),new URLSearchParams({y:a}).toString(),{headers:{...Xce(t),"Content-Type":"application/x-www-form-urlencoded"}});if(t.cookie=mM(t.cookie,c?.headers?.["set-cookie"]),!c?.data?.success)throw new Error(c?.data?.error||"\u6D4F\u89C8\u5668\u9A8C\u8BC1\u5931\u8D25");Gut.set(r,{cookie:t.cookie,expires:Date.now()+Zvr})}async function eue(t,e,r={},n=!1){let s=await le.request({url:Zce(t,e.baseUrl),method:r.method||"GET",headers:Xce(e,r.referer),data:r.data,validateStatus:i=>i>=200&&i<500});return!n&&iSr(s?.data)?(await oSr(e,s?.headers?.["set-cookie"]),eue(t,e,r,!0)):s?.data}async function tue(t,e,r={}){let n=await eue(t,e,r);return typeof n=="string"?n:JSON.stringify(n||"")}async function cSr(t,e,r={}){let n=await eue(t,e,r);if(typeof n=="string"){let s=n.trim();if(!s||s.startsWith("<"))throw new Error("\u672A\u767B\u5F55\u6216 Cookie \u5DF2\u5931\u6548");return JSON.parse(s)}return n||{}}function uSr(t,e){let r=e;for(;/\s/.test(t[r]||"");)r++;let n=t[r];if(!(n==="{"?"}":n==="["?"]":""))return"";let i=[],a=!1,o=!1;for(let c=r;c<t.length;c++){let u=t[c];if(a){o?o=!1:u==="\\"?o=!0:u==='"'&&(a=!1);continue}if(u==='"'){a=!0;continue}if(u==="{"||u==="["){i.push(u);continue}if(u==="}"||u==="]"){let l=i[i.length-1]==="{"?"}":"]";if(u!==l)return"";if(i.pop(),i.length===0)return t.slice(r,c+1)}}return""}function Lw(t,e){let r=`_obj.${e}=`,n=String(t||"").indexOf(r);if(n<0)return null;let s=uSr(t,n+r.length);return s?JSON.parse(s):null}function Kut(t){let e=String(t||"").trim(),r=e.match(/(?:^|\/)(mv|tv|ac)\/([A-Za-z0-9]+)(?:$|[?#])/);if(r)return{dir:r[1],id:r[2]};let n=e.match(/^(mv|tv|ac)[:_/|-]([A-Za-z0-9]+)$/);return n?{dir:n[1],id:n[2]}:{dir:"mv",id:e.replace(/[^A-Za-z0-9]/g,"")}}function rue(t,e,r=256){return`${zvr}/${t}/${e}/${r}.webp`}function lSr(t){return Bw.find(e=>e.type_id===t)?.type_name||""}function dSr(t){return Array.isArray(t)?t.map((e,r)=>r===0?e:eSr[e]||e).filter(e=>e!=null&&e!==""&&e!==0).map(e=>String(e)):[]}function fSr(t,e){if(t==null||t==="")return"";if(Number.isNaN(Number(t)))return String(t);let r=Number(t);return e==="mv"||r===0?tSr[r]||String(t):r<1?`\u66F4\u81F3${Math.abs(r)}\u96C6`:`${r}\u96C6\u5168`}function pSr(t,e){return[t?.b?.[e]?`\u78C1${t.b[e]}`:"",t?.w?.[e]?`\u76D8${t.w[e]}`:"",t?.z?.[e]?`\u64AD${t.z[e]}`:""].filter(Boolean).join(" ")}function mSr(t){return t.filter(Boolean).join(" / ")}function hSr(t){return!t?.i||!Array.isArray(t.i)?[]:t.i.map((e,r)=>{let n=Array.isArray(t.ty)?["mv","tv","ac"][Number(t.ty[r])-1]||"mv":t.ty||"mv",s=dSr(t.a?.[r]),i=fSr(t.g?.[r],n),a=Array.isArray(t.q?.[r])?t.q[r].join(" "):"",o=pSr(t,r),c=mSr(s),u=[a,i,o].filter(Boolean).join(" \xB7 "),l=n==="mv"?c:i;return{vod_id:`${n}/${e}`,vod_name:_o(t.t?.[r]),vod_pic:rue(n,e),vod_year:s[0]||"",vod_remarks:l||c||u,vod_tag:s.slice(1).join("/"),topRightRemarks:a||o||i}}).filter(e=>e.vod_id&&e.vod_name)}function gSr(t){let e=t?.l||{};return Array.isArray(e.i)?e.i.map((r,n)=>{let s=e.d?.[n]||"mv",i=_o(e.title?.[n]),a=e.year?.[n]||"",o=e.pf?.db?.s?.[n]||e.pf?.im?.s?.[n]||"";return{vod_id:`${s}/${r}`,vod_name:i,vod_pic:rue(s,r),vod_year:a,vod_remarks:[lSr(s),a,o?`\u8BC4\u5206 ${o}`:""].filter(Boolean).join(" \xB7 "),vod_content:_o(e.info?.[n])}}).filter(r=>r.vod_id&&r.vod_name):[]}function nue(t,e){return`${t}${Buffer.from(JSON.stringify(e),"utf8").toString("base64url")}`}function sue(t,e){let r=String(e||"").trim();if(!r.startsWith(t))return null;try{return JSON.parse(Buffer.from(r.slice(t.length),"base64url").toString("utf8"))}catch{return null}}function ySr(t){let e=Kut(t?.vod_id);return nue(jut,{dir:t?.dir||e.dir,id:t?.id||e.id,name:t?.vod_name||t?.name||"",pic:t?.vod_pic||t?.pic||"",remarks:t?.vod_remarks||t?.remarks||"",year:t?.vod_year||t?.year||"",tag:t?.vod_tag||t?.tag||""})}function zut(t){return sue(jut,t)}function ASr(t){return{vod_id:`${t?.dir||"mv"}/${t?.id||""}`,vod_name:_o(t?.name),vod_pic:t?.pic||"",vod_year:t?.year||"",vod_remarks:_o(t?.remarks),vod_tag:t?.tag||""}}function Yut(t){let e=ySr(t);return{...t,vod_id:e,vod_tag:"folder",type_id:"guanying_pan_video",type_name:"\u7F51\u76D8\u5206\u7EC4",cate:{id:e,name:t.vod_name||"\u7F51\u76D8\u5206\u7EC4"}}}function xSr(t){return Dw&&Dw.dir===t?.dir&&Dw.id===t?.id?Dw.groups:null}function Jut(t,e){Dw={dir:e?.dir||"",id:e?.id||"",groups:t}}function bSr(t,e){return nue(Qut,{dir:t?.dir||"mv",id:t?.id||"",name:t?.name||t?.vod_name||"",panKey:e})}function Xut(t){return sue(Qut,t)}function _Sr(t){return nue(Hut,{url:t?.url||"",title:t?.title||"",type:t?.type||""})}function ESr(t){return sue(Hut,t)}function vSr(t){return String(t||"").replace(/&amp;/g,"&").replace(/[)\])】,,。;;\s]+$/g,"").trim()}function SSr(t,e,r){let n=["title","name","t","n","text","desc","info","remark","remarks"].map(i=>_o(t?.[i])).find(Boolean);if(n)return n;let s=["title","name","t","n","text","desc","info","remark","remarks","source"];for(let i of s){let a=e?.[i];if(!Array.isArray(a))continue;let o=_o(a[r]);if(o&&!/^https?:\/\//i.test(o))return o}return""}function iue(t){let e=new Set,r=[],n=(a,o,c=null)=>{let u=vSr(a);!/^https?:\/\//i.test(u)||e.has(u)||(e.add(u),r.push({url:u,title:SSr(c,t,o)}))},s=Array.isArray(t?.list)?t.list:[];for(let a=0;a<s.length;a++){let o=s[a]||{};n(o.url||o.u||o.link||o.share_url||o.shareUrl,a,o)}let i=Array.isArray(t?.url)?t.url:[];for(let a=0;a<i.length;a++)n(i[a],a);return r}function Zut(t){let e=String(t||"").trim();return Ii().find(r=>r.key===e)||{key:e,name:e||"\u7F51\u76D8",pic:""}}function aue(t){return Ii().find(e=>{try{return e.validator(t)}catch{return!1}})}function elt(t){let e=new Map;return t.forEach((r,n)=>{let s=typeof r=="string"?r:r?.url,i=aue(s);if(!i?.key)return;e.has(i.key)||e.set(i.key,{panInfo:i,links:[]});let a=n+1;e.get(i.key).links.push({url:s,type:i.key,title:_o(r?.title)||`\u94FE\u63A5${a}`})}),[...e.values()]}async function tlt(t,e){let r=t.map(n=>typeof n=="string"?n:n?.url).filter(n=>aue(n));return r.length===0?null:await Xt(r.slice(0,Xvr),e).catch(n=>(console.warn("[guanying] \u7F51\u76D8\u89E3\u6790\u5931\u8D25:",n?.message||n),null))}function rlt(t,e){e?.froms&&e?.urls&&(t.vod_play_from=e.froms,t.vod_play_url=e.urls),Array.isArray(e?.links)&&e.links.length&&(t.vod_links=e.links)}async function oue(t,e,r){let n=await cSr(`/res/downurl/${t}/${e}`,r,{referer:`${r.baseUrl}/${t}/${e}`});if(n?.code&&n.code!==200)throw new Error(_o(n.msg)||`\u8D44\u6E90\u63A5\u53E3\u8FD4\u56DE ${n.code}`);return n}async function ISr(t,e,r,n,s){let i;try{i=await oue(e,r,s)}catch(o){t.vod_content=[t.vod_content,`\u8D44\u6E90\u52A0\u8F7D\u5931\u8D25\uFF1A${_o(o?.message||o)}`].filter(Boolean).join(`
`);return}let a=iue(i.panlist).filter(o=>aue(o.url));if(a.length){let o=await tlt(a,n);rlt(t,o)}a.length&&(t.vod_content=[t.vod_content,`\u8D44\u6E90\uFF1A\u7F51\u76D8${a.length}\u6761`].filter(Boolean).join(`
`))}async function CSr(t,e){let r=await Mw(t),n=await oue(e.dir,e.id,r),s=elt(iue(n.panlist));return Jut(s,e),{page:1,pagecount:1,limit:Pw,total:s.length,list:s.map(({panInfo:i,links:a})=>{let o=bSr(e,i.key);return{vod_id:o,vod_name:i.name||i.key,vod_pic:i.pic||"",vod_remarks:`${a.length}\u6761\u8D44\u6E90`,vod_tag:"folder",type_id:"guanying_pan_category",type_name:"\u7F51\u76D8\u5206\u7EC4",panType:i.key,cate:{id:o,name:i.name||i.key}}})}}async function TSr(t,e){let r=Number.parseInt(t.body.page,10)||1,n=xSr(e);if(!n){let l=await Mw(t),d=await oue(e.dir,e.id,l);n=elt(iue(d.panlist)),Jut(n,e)}let s=n.find(({panInfo:l})=>l.key===e.panKey),i=s?.links||[],a=Math.max(1,Math.ceil(i.length/Pw)),o=(r-1)*Pw,c=r<=a?i.slice(o,o+Pw):[],u=s?.panInfo||Zut(e.panKey);return{page:r,pagecount:a,limit:Pw,total:i.length,list:c.map((l,d)=>{let f=o+d+1,m=l.title||`${u.name||"\u7F51\u76D8"} \u94FE\u63A5${f}`;return{vod_id:_Sr({...l,title:m}),vod_name:m,vod_pic:u.pic||"",vod_remarks:u.name||"",type_name:u.name||""}})}}async function wSr(t,e){return await dr(t,e),{}}async function RSr(t,e){return{class:Bw}}async function NSr(t,e){let r=String(t.body?.id||t.body?.type_id||t.body?.categoryId||""),n=zut(r);if(n?.dir&&n?.id)return await CSr(t,n);let s=Xut(r);if(s?.dir&&s?.id&&s?.panKey)return await TSr(t,s);let i=String(t.body.id||Bw[0].type_id),a=Bw.some(p=>p.type_id===i)?i:Bw[0].type_id,o=Number.parseInt(t.body.page,10)||1,c=await Mw(t),u=new URLSearchParams;o>1&&u.set("page",String(o));let l=await tue(`/${a}${u.size?`?${u.toString()}`:""}`,c),d=Lw(l,"inlist"),f=Lw(l,"page")||{},m=hSr(d).map(Yut);return{page:o,pagecount:Number(f.pages)||o,limit:Jce,total:m.length,list:m}}async function OSr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=await Mw(t),s=[];for(let i of r){let a=ESr(i);if(a?.url){let p=Zut(a.type),h={vod_id:String(i||""),vod_name:_o(a.title)||p.name||"\u7F51\u76D8\u8D44\u6E90",vod_pic:p.pic||"",vod_remarks:p.name||"",type_name:p.name||""};rlt(h,await tlt([a.url],t)),s.push(h);continue}let o=zut(i);if(o?.dir&&o?.id){s.push(ASr(o));continue}if(Xut(i))continue;let{dir:c,id:u}=Kut(i);if(!u)continue;let l=await tue(`/${c}/${u}`,n),d=Lw(l,"d")||{},f=_o(d.title)||u,m={vod_id:`${c}/${u}`,vod_name:f,vod_pic:rue(c,u,384),vod_year:d.year||"",vod_area:Array.isArray(d.diqu)?d.diqu.join("/"):"",vod_lang:Array.isArray(d.yuyan)?d.yuyan.join("/"):"",vod_type:Array.isArray(d.leixing)?d.leixing.join("/"):"",vod_director:Array.isArray(d.daoyan)?d.daoyan.join("/"):"",vod_actor:Array.isArray(d.zhuyan)?d.zhuyan.join("/"):"",vod_remarks:_o(d.status)||d.times||"",vod_content:_o(d.summary)};await ISr(m,c,u,t,n),s.push(m)}return{list:s}}async function kSr(t,e){return await er(t,e)}async function PSr(t,e){let r=String(t.body.wd||"").trim(),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:1,limit:Jce,total:0,list:[]};let s=await Mw(t),i=new URLSearchParams({q:r,type:"",mode:"1"});n>1&&i.set("page",String(n));let a=await tue(`/search?${i.toString()}`,s),o=Lw(a,"search"),c=Lw(a,"page")||{},u=gSr(o).map(Yut);return{page:n,pagecount:Number(c.pages)||1,limit:Jce,total:u.length,list:u}}async function DSr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/home`);if(n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return s=await t.server.inject().post(`${r}/search`).payload({wd:"\u75F4\u8FF7",page:1}),n.search=s.json(),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var nlt={meta:{key:"guanying",name:"\u300C\u76D8\u300D\u89C2\u5F71",type:3},api:async t=>{t.post("/init",wSr),t.post("/home",RSr),t.post("/category",NSr),t.post("/detail",OSr),t.post("/play",kSr),t.post("/search",PSr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt),t.get("/test",DSr)}};var BSr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",LSr="https://img.icons8.com/color/48/video.png",slt=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function MSr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function WSr(t){return Number(t?.resType||0)===2}function $Sr(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/")||slt.includes(e)||slt.some(s=>n.endsWith(s))}function ilt(t){return String(t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function cue(t){return String(t?.fileId||"")}function USr(t){return Number(t?.fileSize||t?.size||0)}function FSr(t,e){return`folder@@@${t}@@@${e}`}function qSr(t){return`file@@@${ilt(t)}@@@own*${cue(t)}`}async function jSr(t,e=""){let r=await k$e(t,e||""),n=Array.isArray(r?.list)?r.list:[],s=[];return n.forEach(i=>{let a=WSr(i);if(!a&&!$Sr(i))return;let o=ilt(i);s.push({vod_id:a?FSr(o,cue(i)):qSr(i),vod_name:o,vod_pic:a?BSr:String(i?.thumbnail||"").trim()||LSr,vod_remarks:a?"\u76EE\u5F55":Zi(USr(i)),...a?{cate:{id:cue(i),name:o}}:{},ratio:1.33})}),{rawCount:n.length,total:Number(r?.total||n.length),list:s}}async function QSr(t,e){return await _C(t),{}}async function HSr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u5149\u9E2D"}]}}async function GSr(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 jSr(t,r||"");return{page:n,pagecount:1,limit:s,total:Math.max(i,s),list:a}}async function VSr(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 MSr("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 KSr(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 P$e(t,r[1]);return n?.url?{parse:0,url:["\u539F\u753B",n.url]}:{parse:0,url:"",msg:n?.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function zSr(t,e){return{page:1,pagecount:1,list:[]}}async function YSr(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 alt={meta:{key:"myguangyapan",name:"\u300C\u76D8\u300D\u5149\u9E2D",type:3},api:async t=>{t.post("/init",QSr),t.post("/home",HSr),t.post("/category",GSr),t.post("/detail",VSr),t.post("/play",KSr),t.post("/search",zSr),t.get("/test",YSr)}};var JSr=["http://103.217.192.130:16969"],uue=async t=>(await t.db.getObjectDefault("/huban",{}))?.urls||t.config.huban?.urls||JSr,XSr=async(t,e)=>{await t.db.push("/huban/urls",e)},ZSr=async t=>{await t.db.delete("/huban/urls")};async function lue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await uue(e.server)})}),t.put("/urls",async(e,r)=>{await XSr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await ZSr(e.server),r.send({code:0})})}var due,hM=t=>{if(!due){let e=Date.now();due=new Promise(async r=>{let n=await uue(t),s=await es(n);console.log("\u864E\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return due},t_={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function eIr(t){try{if(!t_.url)return;let e={"Content-Type":"application/json"};t_.key&&(e.Authorization=`Bearer ${t_.key}`),await le(t_.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:t_.sendTimeout||1200,receiveTimeout:t_.receiveTimeout||1500})}catch{}}async function fue(t){return(await le.get(t,{headers:{"User-Agent":Gt}})).data}async function tIr(t,e){let r=[{type_id:"1",type_name:"\u98CE"},{type_id:"2",type_name:"\u82B1"},{type_id:"3",type_name:"\u96EA"},{type_id:"4",type_name:"\u6708"},{type_id:"5",type_name:"\u7CBE"},{type_id:"6",type_name:"\u77ED"},{type_id:"30",type_name:"115"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u4F26\u7406",v:"\u4F26\u7406"},{n:"\u707E\u96BE",v:"\u707E\u96BE"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u9B54\u5E7B",v:"\u9B54\u5E7B"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u8BB0\u5F55",v:"\u8BB0\u5F55"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5076\u50CF",v:"\u5076\u50CF"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u8A00\u60C5",v:"\u8A00\u60C5"},{n:"\u519B\u4E8B",v:"\u519B\u4E8B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u795E\u8BDD",v:"\u795E\u8BDD"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u8C0D\u6218",v:"\u8C0D\u6218"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"},{n:"\u9999\u6E2F\u5730\u533A",v:"\u9999\u6E2F\u5730\u533A"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u771F\u4EBA\u79C0",v:"\u771F\u4EBA\u79C0"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u53E3\u79C0",v:"\u53E3\u79C0"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u6E38\u620F",v:"\u6E38\u620F"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u65F6\u5C1A",v:"\u65F6\u5C1A"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u804C\u573A",v:"\u804C\u573A"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u76DB\u4F1A",v:"\u76DB\u4F1A"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[6]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u592E\u89C6\u76F4\u64AD",v:"\u592E\u89C6\u76F4\u64AD"},{n:"\u5730\u65B9\u76F4\u64AD",v:"\u5730\u65B9\u76F4\u64AD"},{n:"\u7EFC\u827A\u8282\u76EE",v:"\u7EFC\u827A\u8282\u76EE"},{n:"\u5A31\u4E50\u8D44\u8BAF",v:"\u5A31\u4E50\u8D44\u8BAF"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[30]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function rIr(t,e){let r=await hM(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await fue(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var m of d){let y=l(m).find(".module-item-pic a").attr("href"),g=l(m).find(".module-item-pic img").attr("alt"),A=l(m).find(".module-item-pic img").attr("data-src"),b=l(m).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:A,vod_remarks:b})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function nIr(t,e){let r=await hM(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await fue(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let m=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let A=o(g).text().trim();return A||null}).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?c.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,m)=>m.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),eIr({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function sIr(t,e){let r=await hM(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await fue(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var olt={meta:{key:"huban",name:"\u300C\u76D8\u300D\u864E\u6591",type:3},api:async t=>{t.post("/init",dr),t.post("/home",tIr),t.post("/category",rIr),t.post("/detail",nIr),t.post("/play",er),t.post("/search",sIr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:hM};var iIr=["http://103.217.192.184:12512"],pue=async t=>(await t.db.getObjectDefault("/xiaoban",{}))?.urls||t.config.xiaoban?.urls||iIr,aIr=async(t,e)=>{await t.db.push("/xiaoban/urls",e)},oIr=async t=>{await t.db.delete("/xiaoban/urls")};async function mue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await pue(e.server)})}),t.put("/urls",async(e,r)=>{await aIr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await oIr(e.server),r.send({code:0})})}var hue,gM=t=>{if(!hue){let e=Date.now();hue=new Promise(async r=>{let n=await pue(t),s=await es(n);console.log("\u5C0F\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return hue},r_={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function cIr(t){try{if(!r_.url)return;let e={"Content-Type":"application/json"};r_.key&&(e.Authorization=`Bearer ${r_.key}`),await le(r_.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:r_.sendTimeout||1200,receiveTimeout:r_.receiveTimeout||1500})}catch{}}async function gue(t){return(await le.get(t,{headers:{"User-Agent":Gt}})).data}async function uIr(t,e){let r=[{type_id:"1",type_name:"\u6885"},{type_id:"2",type_name:"\u5170"},{type_id:"3",type_name:"\u7AF9"},{type_id:"4",type_name:"\u83CA"},{type_id:"6",type_name:"\u77ED"},{type_id:"5",type_name:"\u7CBE"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u4F26\u7406",v:"\u4F26\u7406"},{n:"\u707E\u96BE",v:"\u707E\u96BE"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u9B54\u5E7B",v:"\u9B54\u5E7B"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u8BB0\u5F55",v:"\u8BB0\u5F55"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5076\u50CF",v:"\u5076\u50CF"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u8A00\u60C5",v:"\u8A00\u60C5"},{n:"\u519B\u4E8B",v:"\u519B\u4E8B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u795E\u8BDD",v:"\u795E\u8BDD"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u8C0D\u6218",v:"\u8C0D\u6218"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"},{n:"\u9999\u6E2F\u5730\u533A",v:"\u9999\u6E2F\u5730\u533A"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u771F\u4EBA\u79C0",v:"\u771F\u4EBA\u79C0"},{n:"\u8BBF\u8C08",v:"\u8BBF\u8C08"},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u9009\u79C0",v:"\u9009\u79C0"},{n:"\u65C5\u6E38",v:"\u65C5\u6E38"},{n:"\u7F8E\u98DF",v:"\u7F8E\u98DF"},{n:"\u53E3\u79C0",v:"\u53E3\u79C0"},{n:"\u66F2\u827A",v:"\u66F2\u827A"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u6E38\u620F",v:"\u6E38\u620F"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u751F\u6D3B",v:"\u751F\u6D3B"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u65F6\u5C1A",v:"\u65F6\u5C1A"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u804C\u573A",v:"\u804C\u573A"},{n:"\u5C11\u513F",v:"\u5C11\u513F"},{n:"\u7EAA\u5B9E",v:"\u7EAA\u5B9E"},{n:"\u76DB\u4F1A",v:"\u76DB\u4F1A"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u5176\u5B83",v:"\u5176\u5B83"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[6]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u592E\u89C6\u76F4\u64AD",v:"\u592E\u89C6\u76F4\u64AD"},{n:"\u5730\u65B9\u76F4\u64AD",v:"\u5730\u65B9\u76F4\u64AD"},{n:"\u7EFC\u827A\u8282\u76EE",v:"\u7EFC\u827A\u8282\u76EE"},{n:"\u5A31\u4E50\u8D44\u8BAF",v:"\u5A31\u4E50\u8D44\u8BAF"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function lIr(t,e){let r=await gM(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await gue(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var m of d){let y=l(m).find(".module-item-pic a").attr("href"),g=l(m).find(".module-item-pic img").attr("alt"),A=l(m).find(".module-item-pic img").attr("data-src"),b=l(m).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:A,vod_remarks:b})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function dIr(t,e){let r=await gM(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await gue(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let m=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let A=o(g).text().trim();return A||null}).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?c.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,m)=>m.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),cIr({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function fIr(t,e){let r=await gM(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await gue(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var clt={meta:{key:"xiaoban",name:"\u300C\u76D8\u300D\u5C0F\u6591",type:3},api:async t=>{t.post("/init",dr),t.post("/home",uIr),t.post("/category",lIr),t.post("/detail",dIr),t.post("/play",er),t.post("/search",fIr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:gM};var pIr=["https://wogg.xxooo.cf","https://www.wogg.net"],yue=async t=>(await t.db.getObjectDefault("/wanou",{}))?.urls||t.config.wanou?.urls||pIr,mIr=async(t,e)=>{await t.db.push("/wanou/urls",e)},hIr=async t=>{await t.db.delete("/wanou/urls")};async function Aue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await yue(e.server)})}),t.put("/urls",async(e,r)=>{await mIr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await hIr(e.server),r.send({code:0})})}var xue,xM=t=>{if(!xue){let e=Date.now();xue=new Promise(async r=>{let n=await yue(t),s=await es(n);console.log("\u73A9\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return xue},n_={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function gIr(t){try{if(!n_.url)return;let e={"Content-Type":"application/json"};n_.key&&(e.Authorization=`Bearer ${n_.key}`),await le(n_.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:n_.sendTimeout||1200,receiveTimeout:n_.receiveTimeout||1500})}catch{}}async function yM(t){return(await le.get(t,{headers:{"User-Agent":Gt}})).data}async function yIr(t,e){return await dr(t,e),{}}async function AIr(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 xIr(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 AM(t,e){return xIr(t,e?.attribs?.["data-src"]||e?.attribs?.src||"")}function bIr(t){let e=Array.isArray(t)?t:t.split("-");for(let r=1;r<e.length;r++)if(e[r]!="")return r;return-1}async function _Ir(t,e){let r=await xM(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;if(a==0&&(a=1),n.startsWith("s-")){let o=["","","","","","","","","","",a,"","",""],c=n.split("-");o[parseInt(c[1])]=c[2];let u=await yM(`${r}/index.php/vodsearch/${o.join("-")}.html`),l=De(u),d=l("div.module-items > div.module-search-item").map((f,m)=>{let p=l(m).find("div.video-info-header h3 a")[0];return{vod_id:p.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:p.attribs.title,vod_pic:AM(r,l(m).find("div.module-item-pic img")[0]),vod_remarks:l(m).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 yM(c),l=De(u),d=l("div.module-items > div.module-item").map((f,m)=>{let p=l(m).find("div.video-name a")[0];return{vod_id:p.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:p.attribs.title,vod_pic:AM(r,l(m).find("div.module-item-pic img")[0]),vod_remarks:l(m).find("div.module-item-text").text()}}).get();return{page:a,pagecount:d.length<70?a:a+1,list:d}}}async function EIr(t,e){let r=await xM(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await yM(`${r}/index.php/voddetail/${i}.html`),o=De(a),c=[],u=[],l="";o("div.video-info-items a[href*=/vodsearch/]").each((p,h)=>{let y=h.attribs.href.match(/vodsearch\/(.*).html/)[1].split("-"),g=o(h).text().trim(),A=bIr(y);if(A===5){let b={id:"s-5-"+decodeURIComponent(y[5].toString()),name:g};c.push(`[a=cr:${JSON.stringify(b)}/]${g}[/a]`)}else if(A===1){let b={id:"s-1-"+decodeURIComponent(y[1].toString()),name:g};u.push(`[a=cr:${JSON.stringify(b)}/]${g}[/a]`)}else A===13&&(l=g)});let d={vod_name:o(".page-title")[0].children[0].data,vod_pic:AM(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((p,h)=>h.children[0].data).get(),m=await Xt(f,t);m&&(d.vod_play_from=m.froms,d.vod_play_url=m.urls,d.vod_links=m.links),gIr({detail_url:`${r}/index.php/voddetail/${i}.html`,html:a,parsed:{vod_name:d.vod_name||"",vod_pic:d.vod_pic||"",vod_content:d.vod_content||"",panUrls:Array.isArray(f)?f:[]}}),s.push(d)}return{list:s}}async function vIr(t,e){let r=await xM(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await yM(`${r}/index.php/vodsearch/-------------.html?wd=${s}`),o=De(a),c=o("div.module-items > div.module-search-item").map((u,l)=>{let d=o(l).find("div.video-info-header h3 a")[0];return{vod_id:d.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:d.attribs.title,vod_pic:AM(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 SIr(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<o.length;u++){let l=o[u],d=c[u].split("#");for(let f=0;f<d.length&&f<2;f++)i=await t.server.inject().post(`${n}/play`).payload({flag:l,id:d[f].split("$")[1]}),s.play.push(i.json())}}}return i=await t.server.inject().post(`${n}/search`).payload({wd:"\u7231",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 ult={meta:{key:"wanou",name:"\u300C\u76D8\u300D\u73A9\u5076",type:3},api:async t=>{t.post("/init",yIr),t.post("/home",AIr),t.post("/category",_Ir),t.post("/detail",EIr),t.post("/play",er),t.post("/search",vIr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt),t.get("/test",SIr)},check:xM};var IIr=["http://www.miqk.cc","https://mihdr.top","https://www.mihdr.top","https://zhizhen1.top"],bue=async t=>(await t.db.getObjectDefault("/zhizhen",{}))?.urls||t.config.zhizhen?.urls||IIr,CIr=async(t,e)=>{await t.db.push("/zhizhen/urls",e)},TIr=async t=>{await t.db.delete("/zhizhen/urls")};async function _ue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await bue(e.server)})}),t.put("/urls",async(e,r)=>{await CIr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await TIr(e.server),r.send({code:0})})}var Eue,bM=t=>{if(!Eue){let e=Date.now();Eue=new Promise(async r=>{let n=await bue(t),s=await es(n);console.log("\u81F3\u81FB\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Eue},s_={url:"https://zf.do-u.de5.net/",key:"woleigedouer",sendTimeout:1200,receiveTimeout:1500};async function wIr(t){try{if(!s_.url)return;let e={"Content-Type":"application/json"};s_.key&&(e.Authorization=`Bearer ${s_.key}`),await le(s_.url,{method:"POST",headers:e,data:JSON.stringify(t),sendTimeout:s_.sendTimeout||1200,receiveTimeout:s_.receiveTimeout||1500})}catch{}}async function vue(t){return(await le.get(t,{headers:{"User-Agent":Gt}})).data}async function RIr(t,e){let r=[{type_id:"26",type_name:"\u81FB\u5F69"},{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"}],n={};return n[26]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u4EA7",v:"\u56FD\u4EA7"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[5]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u6E2F\u53F0",v:"\u6E2F\u53F0"},{n:"\u65E5\u97E9",v:"\u65E5\u97E9"},{n:"\u6B27\u7F8E",v:"\u6B27\u7F8E"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function NIr(t,e){let r=await bM(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`);let c=i.by||i.sort;c&&(o+=`/by/${c}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let u=await vue(o,Gt),l=De(u),d=l("#main .module-item"),f=[];for(var m of d){let y=l(m).find(".module-item-pic a").attr("href"),g=l(m).find(".module-item-pic img").attr("alt"),A=l(m).find(".module-item-pic img").attr("data-src"),b=l(m).find(".module-item-text").text();f.push({vod_id:y,vod_name:g,vod_pic:A,vod_remarks:b})}let h=l("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:h,limit:72,total:72*h,list:f}}async function OIr(t,e){let r=await bM(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await vue(r+i),o=De(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let m=o(f).text(),h=o(f).next().find("a").map((y,g)=>{let A=o(g).text().trim();return A||null}).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?c.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,m)=>m.children[0].data).get(),d=await Xt(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),wIr({detail_url:r+i,html:a,parsed:{vod_name:c.vod_name||"",vod_pic:c.vod_pic||"",vod_content:c.vod_content||"",panUrls:Array.isArray(l)?l:[]}}),s.push(c)}return{list:s}}async function kIr(t,e){let r=await bM(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await vue(`${r}/index.php/vod/search/wd/${s}.html`),o=De(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var llt={meta:{key:"zhizhen",name:"\u300C\u76D8\u300D\u81F3\u81FB",type:3},api:async t=>{t.post("/init",dr),t.post("/home",RIr),t.post("/category",NIr),t.post("/detail",OIr),t.post("/play",er),t.post("/search",kIr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:bM};var _M=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),dlt=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),flt=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),mlt="douerpan,zyfb123",PIr={douerpan:"\u8C46\u513F\u76D8",zyfb123:"\u8C46\u513F123"},Sue=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgchannel",{});if(_M(n,e))return n[e];let s=t.config?.tgchannel||{};return _M(s,e)?s[e]:r},plt=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},EM=t=>Sue(t,"url","https://t.me"),Iue=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:""},Cue=t=>Sue(t,"channelUsername",mlt),Tue=t=>Sue(t,"homeChannelUsername",mlt),vM=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},SM=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(_M(e,"channelNameMap"))return plt(e.channelNameMap);let r=t.config?.tgchannel||{};return _M(r,"channelNameMap")?plt(r.channelNameMap):PIr},i_=async(t,e,r)=>{await t.db.push(`/tgchannel/${e}`,r)},DIr=async t=>{await t.db.delete("/tgchannel")};async function wue(t){t.get("/config",async(e,r)=>{let n=await EM(e.server),s=await Iue(e.server),i=await Cue(e.server),a=await Tue(e.server),o=await vM(e.server),c=await SM(e.server),u=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:u,channelUsername:dlt(i),homeChannelUsername:dlt(a),pic:o,channelNameMap:c}})}),t.put("/config",async(e,r)=>{await i_(e.server,"url",e.body.url),await i_(e.server,"count",e.body.count),await i_(e.server,"channelUsername",flt(e.body.channelUsername).join(",")),await i_(e.server,"homeChannelUsername",flt(e.body.homeChannelUsername).join(",")),await i_(e.server,"pic",e.body.pic),await i_(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})}),t.delete("/config",async(e,r)=>{await DIr(e.server),r.send({code:0})})}function BIr(t){let e=t.attr("style"),r=/background-image:url\('([^']+)'\)/.exec(e);if(r&&r.length>1)return r[1]}function ylt(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 LIr={"User-Agent":"MoZhao"};function Rue(t){return Ii().some(e=>e.validator(t))}function Alt(t,e=()=>!0){let r=[];for(let n of t){let s=n.attribs?.href;s&&e(s)&&r.push(s)}return r}function Ww(t){return Alt(t,Rue)}function IM(t){return Alt(t,CM)}function fp(t){return[...new Set((t||[]).filter(Boolean))]}function MIr(t){return String(t||"").trim().replace(/&amp;/g,"&").replace(/[\)\]\}>)】》」』〕〗〉﹞]、。,,;ï¼›!?!?]+$/g,"")}function WIr(t){let e=String(t||"");return fp([/https?:\/\/[^\s"'<>]+/gi,/magnet:\?[^\s"'<>]+/gi,/ed2k:\/\/\|file\|.+?\|\d+\|[a-f0-9]{32}\|\//gi,/ed2k:\/\/[^\s"'<>]+/gi].flatMap(n=>e.match(n)||[]).map(MIr))}function $Ir(t,e){let r=t(e).find(".tgme_widget_message_date").attr("href");if(blt(r))return r;let n=e.attribs?.["data-post"];return n?`https://t.me/${n}`:""}function Nue(t){let e=[],r=WIr(t);for(let n of r)Rue(n)&&e.push(n);return e}function xlt(t){let e=[],r=t.match(/https?:\/\/[^\s]+/gi);if(r)for(let n of r)CM(n)&&e.push(n);return e}var blt=t=>/t.me\/.*\/.*/.test(t),CM=t=>/https?:\/\/(?:telegra\.ph|graph\.org)\//i.test(String(t||"")),_lt=t=>Ii().find(e=>e.validator(t)),Elt=(t,e)=>!e||typeof e!="object"?t:e[t]||t,vlt=t=>String(t||"").split(",").map(e=>e.trim()).filter(Boolean);async function Oue(t){let e=await he.get(t,{timeout:5e3,headers:LIr});return De(e.data)}async function UIr(t){let e=await Oue(t),r=e(".tl_article").text()||e("body").text()||"";return{links:fp([...Nue(r),...Ww(e("a"))])}}async function Slt(t){let e=fp((t||[]).filter(CM));if(!e.length)return[];let r=await Promise.all(e.map(async n=>{try{return(await UIr(n)).links}catch(s){return console.error("[tgchannel] parse telegra failed",n,s?.message||s),[]}}));return fp(r.flat())}async function FIr(t){let e=await Oue(t),r=e(".tgme_widget_message"),n=[];for(let s of r){let i=s.attribs["data-post"],a=BIr(e(s).find(".tgme_widget_message_photo_wrap"));e("br").replaceWith(`
`);let o=e(s).find(".tgme_widget_message_text").text(),c=ylt(o),u=o,l=fp([...Nue(o),...Ww(e(s).find(".tgme_widget_message_text a")),...Ww(e(s).find(".tgme_widget_message_inline_button"))]),d=fp([...IM(e(s).find(".tgme_widget_message_text a")),...IM(e(s).find(".tgme_widget_message_inline_button")),...xlt(o)]),f=[...l],m=f.length?[...f]:d.length?[...d]:[];if(!m.length){let p=$Ir(e,s);p&&m.push(p)}m.length&&n.push({id:m.join("|"),title:c,description:u,cover:a,messageId:Number(i.split("/")[1]),panLinks:f})}return n}async function qIr(t){let e=await Oue(t),r=e('meta[property="og:description"]').attr("content"),n=e('meta[property="og:image"]').attr("content"),s=ylt(r),i=fp([...Nue(r||""),...Ww(e(".tgme_widget_message_text a")),...Ww(e(".tgme_widget_message_inline_button"))]),a=fp([...xlt(r||""),...IM(e(".tgme_widget_message_text a")),...IM(e(".tgme_widget_message_inline_button"))]),o=i.length?[]:await Slt(a),c=fp([...i,...o]);return{title:s,description:r,cover:n,links:c}}async function jIr(t,e){return await dr(t,e),{}}async function QIr(t){let e=await Tue(t.server),r=await SM(t.server);return{class:vlt(e).map(n=>({type_id:n,type_name:Elt(n,r)}))}}var hlt={},glt={},kue={};async function Ilt(t){let e=await EM(t.server),r=await vM(t.server),n=t.body.id,s=t.body.page;s||(s=1);try{let i=await FIr(`${e}/s/${n}${s>1?`?before=${glt[n]}`:""}`);glt[n]=i[0].messageId,s===1&&(hlt[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=_lt(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&&(kue[o.vod_id]=o.vod_name)}),{page:s,pagecount:Math.ceil(hlt[n]/a.length),list:a}}catch(i){return console.error(i),{page:s,pagecount:1,list:[]}}}async function HIr(t,e){let r=await EM(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=kue[i]||"";if(a.length===1&&blt(a[0])){let l=await qIr(i.replace("https://t.me",r));!o&&l.title&&(o=l.title),a=l.links}else!a.some(Rue)&&a.some(CM)&&(a=await Slt(a));let c=await Xt(a,t),u={vod_id:i,vod_name:o};c&&(u.vod_play_from=c.froms,u.vod_play_url=c.urls,u.vod_links=c.links),s.push(u)}return{list:s}}async function GIr(t,e){let r=await Iue(t.server),n=await Cue(t.server),s=await vM(t.server),i=await SM(t.server),a=t.body.wd,o=Number(r),c=Number.isFinite(o)?Math.floor(o):0,u=c>0,l=vlt(n);if(!l.length)return{page:1,pagecount:1,list:[]};let d=await Promise.all(l.map(m=>Ilt({body:{id:`${m}?q=${encodeURIComponent(a)}`},server:t.server}))),f=[];return d.forEach((m,p)=>{let h=m.list.filter(g=>g.rawData.panLinks.length);(u?h.slice(0,c):h).forEach(g=>{let A="",b;g.rawData.panLinks.forEach(x=>{let S=_lt(x);S&&(A+=A?`|${S.name}`:S.name),b||(b=S.pic)}),f.push({vod_id:g.vod_id,vod_name:g.vod_name,vod_pic:s&&g.vod_pic||b,vod_remarks:`${A}:${Elt(l[p],i)}`}),g.vod_name&&g.vod_id&&(kue[g.vod_id]=g.vod_name)})}),{page:1,pagecount:1,list:f}}var Clt={meta:{key:"tgchannel",name:"\u300C\u76D8\u300DTG\u641C",type:3},api:async t=>{t.post("/init",jIr),t.post("/home",QIr),t.post("/category",Ilt),t.post("/detail",HIr),t.post("/play",er),t.post("/search",GIr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var TM=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),VIr=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),KIr=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),wlt=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgsou",{});if(TM(n,e))return n[e];let s=t.config?.tgsou||{};return TM(s,e)?s[e]:r},Tlt=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},Pue=t=>wlt(t,"url","https://tgsou.252035.xyz"),Due=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:""},Bue=t=>wlt(t,"channelUsername",""),Lue=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},Mue=async t=>{let e=await t.db.getObjectDefault("/tgsou",{}),r={};if(TM(e,"channelNameMap"))r=Tlt(e.channelNameMap);else{let n=t.config?.tgsou||{};TM(n,"channelNameMap")&&(r=Tlt(n.channelNameMap))}return r},$w=async(t,e,r)=>{await t.db.push(`/tgsou/${e}`,r)};async function Wue(t){t.get("/config",async(e,r)=>{let n=await Pue(e.server),s=await Due(e.server),i=await Bue(e.server),a=await Lue(e.server),o=await Mue(e.server),c=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:c,channelUsername:VIr(i),pic:a,channelNameMap:o}})}),t.put("/config",async(e,r)=>{await $w(e.server,"url",e.body.url),await $w(e.server,"count",e.body.count),await $w(e.server,"channelUsername",KIr(e.body.channelUsername).join(",")),await $w(e.server,"pic",e.body.pic),await $w(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})})}var Rlt={};async function zIr(t,e){return await dr(t,e),{}}async function YIr(t,e){return{class:[]}}var JIr=(t,e)=>!e||typeof e!="object"?t:e[t]||t;function XIr(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 ZIr(t,e){return{page:1,pagecount:1,list:[]}}async function eCr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.includes("|")?s.split("|"):[s],a=await Xt(i,t),o={};o.vod_name=Rlt[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 tCr(t,e){let r=await Pue(t.server),n=await Due(t.server),s=await Bue(t.server),i=await Lue(t.server),a=await Mue(t.server),o=t.body.wd,c=Number(n),u=Number.isFinite(c)?Math.floor(c):0,l=u>0,d=new URL(r);d.searchParams.set("pic",String(i)),l&&d.searchParams.set("count",String(u)),d.searchParams.set("channelUsername",s),d.searchParams.set("keyword",o||"");let f=await he.get(d.toString()),m=new Map;for(let h of f.data.results){let[y,g]=h.split("$$$");if(!g)continue;let A=g.split("##");for(let b=0;b<A.length&&(!l||b<=u);b++){let[x,S]=A[b].split("$$"),[T,I]=x.split("@"),R=Ii().find(N=>N.validator(T));if(R){let N=XIr(S)||o,k=!!I,B=k?/^https?:\/\//i.test(I)?I:`${r}/down?id=${I}&channelUsername=${y}`:R.pic,M=k?B:T;m.has(M)||m.set(M,{links:[],panInfos:[],pic:B,group:y,title:N});let P=m.get(M),L=T?.replace(/\s+/g,"");P.links.includes(L)||(P.links.push(L),P.panInfos.push(R))}}}let p=[];for(let[h,y]of m.entries()){let g=[...new Set(y.panInfos.map(A=>A.name))].join("/");p.push({vod_id:y.links.join("|"),vod_name:y.title,vod_pic:y.pic,vod_remarks:`${g}:${JIr(y.group,a)}`}),y.title&&y.links.length&&(Rlt[y.links.join("|")]=y.title)}return{page:1,pagecount:1,list:p}}var Nlt={meta:{key:"tgsou",name:"\u300C\u76D8\u300DTG\u641C\xB2",type:3},api:async t=>{t.post("/init",zIr),t.post("/home",YIr),t.post("/category",ZIr),t.post("/detail",eCr),t.post("/play",er),t.post("/search",tCr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var Olt=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),rCr="http://127.0.0.1:8080",Plt=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgfilebot",{});if(Olt(n,e))return n[e];let s=t.config?.tgfilebot||{};return Olt(s,e)?s[e]:r},$ue=t=>Plt(t,"url",rCr),Uue=t=>Plt(t,"password",""),klt=async(t,e,r)=>{await t.db.push(`/tgfilebot/${e}`,r)},nCr=async t=>{await t.db.delete("/tgfilebot")};async function Fue(t){t.get("/config",async(e,r)=>{let n=await $ue(e.server),s=await Uue(e.server);r.send({code:0,data:{url:n,password:s}})}),t.put("/config",async(e,r)=>{await klt(e.server,"url",e.body.url||""),await klt(e.server,"password",e.body.password||""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await nCr(e.server),r.send({code:0})})}var sCr="http://127.0.0.1:8080",Blt="",Uw=20,iCr=30;async function aCr(t,e){return{}}function oCr(t){for(t=String(t||"").trim();t.endsWith("/");)t=t.slice(0,-1);return t}function as(t){return String(t||"").replace(/\s+/g," ").trim()}function Llt(t){return as(t).replace(/[$#]/g," ")}function que(t){return as(t).replace(/^>+\s*/,"").replace(/^\*\*(.*?)\*\*$/,"$1").replace(/^__(.*?)__$/,"$1").replace(/^`(.*?)`$/,"$1").replace(/^\[(.*?)\]\([^)]*\)$/,"$1").replace(/^[-•]\s*/,"").replace(/^\*\s+/,"").trim()}function Mlt(t){let e=String(t||"").replace(/\r\n/g,`
`).split(`
`);for(let r of e){let n=as(r);if(n&&!/^(主演|类型|制片国家|语言|ä¸Šæ˜ æ—¥æœŸ|片长|又名|导演|编剧)\s*[::]/.test(que(n)))return n}return""}function Wlt(t){return String(t||"").replace(/[0-ï¼™]/g,e=>String(e.charCodeAt(0)-65296))}function cCr(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 NM(t){let e=as(t).replace(/\.[a-z0-9]{2,5}$/i,""),r=e.match(/(?:^|[^0-90-ï¼™])(?:第\s*)?([0-90-ï¼™]{1,4})\s*(?:集|話|话|回|期)(?:\D|$)/);return r?"\u7B2C"+Wlt(r[1]).replace(/^0+/,"")+"\u96C6":(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?"\u7B2C"+r[1]+"\u96C6":"")}function Dlt(t){let e=Wlt(as(t)),r=e.match(/第\s*([0-9]{1,4}|[零〇一二三四五六七八九十百千万两]{1,8})\s*(?:集|話|话|回|期)/);return r?cCr(r[1].replace(/^0+/,"")):(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?Number(r[1]):0)}function $lt(t,e){let r=que(Mlt(t));if(!r)return{name:"",remark:""};let n=r.match(/^[【\[]\s*([^】\]]+?)\s*[】\]]/);if(n)return{name:as(n[1]),remark:NM(e)};let s=r.startsWith("#")?r.replace(/^#+\s*/,"").trim():r;if(!s)return{name:"",remark:""};if(!r.startsWith("#"))return{name:as(s),remark:NM(e)};let i=s.match(/^(.*?)\s*(第\s*[0-90-9零〇一二三四五六七八九十百千万两]+\s*(?:集|話|话|回|期))(?:\s|$)/);return i?{name:as(i[1]),remark:as(i[2]).replace(/\s+/g,"")}:{name:as(s),remark:NM(e)}}function Ay(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<t.length;r++)t[r]!==void 0&&t[r]!==null&&e.push(t[r]);return e}return typeof t=="object"?Object.keys(t).filter(e=>/^\d+$/.test(e)).sort((e,r)=>Number(e)-Number(r)).map(e=>t[e]).filter(e=>e!=null):[]}function jue(t){return encodeURIComponent(JSON.stringify(t||{}))}function xy(t){return t?JSON.parse(decodeURIComponent(String(t))):{}}function OM(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<e.length-1;)r/=1024,n++;let s=n===0||r>=100?0:r>=10?1:2;return`${r.toFixed(s)} ${e[n]}`}function uCr(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 wM(t,e){let r=0;for(let n of e)t.indexOf(n)>=0&&r++;return r}function Ult(t){let e=String(t&&t.text||""),r=String(t&&t.name||""),n=(e+`
`+r).toLowerCase();if(!n.trim())return!1;let i=wM(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=wM(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=wM(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=wM(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 lCr(t){let e=process.env.TGFILEBOT_URL||await $ue(t),r=process.env.TGFILEBOT_PASSWORD||process.env.TGFILEBOT_KEY||await Uue(t);return{url:oCr(e)||sCr,password:String(r||"").trim()}}async function Flt(t,e,r={}){let n=await lCr(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 PM(t,e,r={},n=3e4){let s=await Flt(t,e,r),i=await he.get(s,{timeout:n,validateStatus:()=>!0});if(i.status<200||i.status>=300)throw new Error(`TGFileBot ${e} HTTP ${i.status}`);return typeof i.data=="string"?JSON.parse(i.data):i.data||{}}function dCr(t){let e=as(t);return e?e.startsWith("#")?[e]:[e,"#"+e]:[]}function RM(t){return que(t).replace(/^#+\s*/,"").replace(/[\s._\-::,,.。!!??、/\\|()[\]【】()《》<>〈〉"'“”‘’·]/g,"").toLowerCase()}function fCr(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function pCr(t,e){let r=as(e).replace(/^#+\s*/,"");return r?new RegExp("(^|\\s)#"+fCr(r)+"(?=\\s|$|#)").test(String(t||"")):!1}function kM(t){try{return xy(t&&t.vod_id)}catch{return{}}}function mCr(t,e){let r=kM(t),n=RM(as(e).replace(/^#+\s*/,""));if(!n)return 0;let s=RM(r.name||t&&t.vod_name||""),i=RM(Mlt(r.text||"")),a=RM(r.text||"");return s===n?100:i===n?98:pCr(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 hCr(t,e){return t.map((r,n)=>{let s=kM(r);return{video:r,index:n,score:mCr(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 gCr(t,e){let r=new Set(t.map(n=>{let s=kM(n);return`${s.cid||""}:${s.mid||""}`}));for(let n of e){let s=kM(n),i=`${s.cid||""}:${s.mid||""}`;i!==":"&&r.has(i)||(i!==":"&&r.add(i),t.push(n))}return t}function yCr(t,e=""){let r=$lt(t?.text||t?.name,t?.name),n=r.name||as(t?.name)||`Telegram ${t?.mid||""}`.trim(),s=r.remark||as(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:jue(i),vod_name:n,type_name:e||"",vod_pic:t?.pic||t?.cover||t?.thumb||Blt,vod_remarks:i.remark||"",topRightRemarks:OM(t?.size)||""}}function qlt(t){let e=[];for(let r of Ay(t)){let n=r&&r.channel?r.channel:"",s=Ay(r&&r.item);for(let i of s)!i||Ult(i)||e.push(yCr(i,n))}return e.sort((r,n)=>{try{return Number(xy(n.vod_id).date||0)-Number(xy(r.vod_id).date||0)}catch{return 0}}),e}function ACr(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 jlt(t,e){return`${Llt(t)}$${jue(xCr(e))}`}function xCr(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 bCr(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 _Cr(t){let e=bCr(t);try{let r=xy(e.token),n=Dlt(r.remark||"");if(n>0)return n}catch{}return Dlt(e.title)}function ECr(t){return t.map((e,r)=>({item:e,index:r,episode:_Cr(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 Qlt(t,e){let r=Llt(t),n=OM(e);return!n||r.indexOf(n)>=0?r:`${r} ${n}`}function vCr(t){return t&&t.items?Ay(t.items):t&&t.item?[t]:Ay(t)}function SCr(t,e,r){let n=new Set;for(let s of t){let i=String(s).split("$").slice(1).join("$");try{let a=xy(i);n.add(`${a.cid||""}:${a.mid||""}`)}catch{}}for(let s of Ay(r)){let i=Ay(s&&s.item);for(let a of i){if(!a||!a.cid||!a.mid||Ult(a))continue;let o=`${a.cid}:${a.mid}`;if(n.has(o))continue;let c=$lt(a.text||e.text||a.name,a.name),u=c.name||e.name,l=c.remark||NM(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||as(a.name)||e.remark||e.name;n.add(o),t.push(jlt(Qlt(f,a.size),d))}}return t}async function ICr(t,e){try{let r=await PM(t.server,"/channels",{},12e3);return{class:Ay(r.channels).map(s=>{let i=as(s&&s.id);return i?{type_id:i,type_name:as(s.name)||i}:null}).filter(Boolean)}}catch(r){return console.error("[tgfilebot] channels failed",r?.message||r),{class:[]}}}async function CCr(t,e){let r=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1),n=as(t.body?.id||"all")||"all",s=await PM(t.server,"/latest",{channel:n,page:r,limit:Uw}),i=qlt(s.items);return{page:r,pagecount:s.more?r+1:r,limit:Uw,total:s.total||i.length,list:i}}async function TCr(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=xy(s),a=jue(i),o=as(i.name)||`Telegram ${i.mid||""}`.trim(),c=[jlt(Qlt(i.remark||o,i.size),i)];try{let l=i.reply_mid||i.mid;if(i.cid&&l&&ACr(i)){let d=await PM(t.server,"/replies",{cid:i.cid,mid:l,limit:iCr},2e4);SCr(c,i,vCr(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: ${OM(i.size)}`:"",i.date?`Date: ${uCr(i.date)}`:"",as(i.text||"")].filter(Boolean).join(`
`);n.push({vod_id:a,vod_name:o,type_name:i.channel||"",vod_pic:i.pic||Blt,vod_remarks:i.remark||"",topRightRemarks:OM(i.size)||"",vod_content:u,vod_play_from:"TGFileBot",vod_play_url:ECr(c).join("#")})}return{list:n}}async function wCr(t,e){let r=xy(t.body?.id);return!r.cid||!r.mid?{parse:0,url:""}:{parse:0,url:await Flt(t.server,"/stream",{cid:r.cid,mid:r.mid,cate:"user"})}}async function RCr(t,e){let r=as(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 dCr(r))try{let a=await PM(t.server,"/search",{keywords:i,page:n,limit:Uw},2e4);s=gCr(s,qlt(a.items))}catch(a){console.error("[tgfilebot] search variant failed",i,a?.message||a)}return s=hCr(s,r),{page:n,pagecount:s.length>=Uw?n+1:n,limit:Uw,total:s.length,list:s}}var Hlt={meta:{key:"tgfilebot",name:"\u300C\u76F4\u300DTGFileBot",type:3},api:async t=>{t.post("/init",aCr),t.post("/home",ICr),t.post("/category",CCr),t.post("/detail",TCr),t.post("/play",wCr),t.post("/search",RCr)}};var Vlt=Ce(BI(),1),Que=Ce(Zn(),1),by="https://frodo.douban.com",pi={},Glt=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 Klt(t){if(pi.id&&pi.ua)return pi;let e=t.server.prefix+"/device";return pi=await t.server.db.getObjectDefault(e,{}),pi.id?pi.ua||(pi.ua=Glt(pi.id),await t.server.db.push(e,pi)):(pi.id=eg(40).toLowerCase(),pi.ua=Glt(pi.id),await t.server.db.push(e,pi)),pi}function _y(t){t+=`&udid=${pi.id}&uuid=${pi.id}&&rom=android&apikey=0dad551ec0f84ed02907ff5c42e8ec70&s=rexxar_new&channel=Yingyongbao_Market&timezone=Asia/Shanghai&device_id=${pi.id}&os_rom=android&apple=c52fbb99b908be4d026954cc4374f16d&mooncake=0f607264fc6318a92b9e13c65db7cd3c&sugar=0`;let e=new URL(t),r=(0,Vlt.default)().unix().toString(),n=Que.default.HmacSHA1("GET&"+encodeURIComponent(e.pathname)+"&"+r,"bf7dddc7c9cfe6f7"),s=Que.default.enc.Base64.stringify(n);return t+"&_sig="+encodeURIComponent(s)+"&_ts="+r}async function Ey(t,e){return(await le.get(t,{headers:{"User-Agent":e||pi.ua}})).data}async function NCr(t,e){return await Klt(t),{}}async function OCr(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 kCr(t,e){await Klt(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=_y(`${by}/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 Ey(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=_y(`${by}/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 Ey(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,m="movie";d==="\u52A8\u753B"&&(d="\u7535\u89C6\u5267",f||(f="\u52A8\u753B")),(d==="\u7535\u89C6\u5267"||d==="\u7EFC\u827A")&&(m="tv");let p={};f&&(p.\u7C7B\u578B=f),d&&(p.\u5F62\u5F0F=d),c&&(p.\u5730\u533A=c);let h=[];a&&h.push(a),o&&h.push(o),c&&h.push(c),u&&h.push(u);let y=new URLSearchParams({refresh:"0",start:((i-1)*30).toString(),count:"30",selected_categories:JSON.stringify(p),uncollect:"false",score_range:"0,10"});l&&y.append("sort",l),h.length>0&&y.append("tags",h.join(","));let g=`https://m.douban.com/rexxar/api/v2/${m}/recommend?${y.toString()}`,b=(await le.get(g,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://m.douban.com/"}})).data,x=b&&b.items?b.items:[],S=[];for(let T of x)if(T&&(T.type==="movie"||T.type==="tv")){let I="";if(T.rating&&typeof T.rating.value<"u"){let R=T.rating.value;I=typeof R=="number"?R.toFixed(1):R.toString()}S.push({vod_id:T.id||"",vod_name:T.title||"",vod_pic:T.pic&&(T.pic.normal||T.pic.large)||"",vod_remarks:I?"\u8BC4\u5206:"+I:""})}return{page:parseInt(i),pagecount:i<10?i+1:i,list:S}}else if(r=="t3"){let a=_y(`${by}/api/v2/movie/category_ranks?count=30&category=recent_hot`),o=await Ey(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=_y(`${by}/api/v2/tv/category_ranks?count=30&category=recent_hot`),o=await Ey(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=_y(`${by}/api/v2/skynet/new_playlists?subject_type=${s.type||""}&category=${s.cate||"all"}&loc_id=0&start=${(i-1)*30}&count=30`),o=await Ey(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=_y(`${by}/api/v2/subject_collection/${r.substring(3)}/items?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await Ey(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=_y(`${by}/api/v2/doulist/${r.substring(3)}/posts?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await Ey(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 PCr(t,e){return{}}async function DCr(t,e){return{}}async function BCr(t,e){return{}}async function LCr(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<o.length;u++){let l=o[u],d=c[u].split("#");for(let f=0;f<d.length&&f<2;f++)i=await t.server.inject().post(`${n}/play`).payload({flag:l,id:d[f].split("$")[1]}),s.play.push(i.json())}}}return i=await t.server.inject().post(`${n}/search`).payload({wd:"\u7231",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 zlt={meta:{key:"douban",name:"\u300C\u8350\u300D\u8C46\u74E3",type:3,indexs:1},api:async t=>{t.post("/init",NCr),t.post("/home",OCr),t.post("/category",kCr),t.post("/detail",PCr),t.post("/play",DCr),t.post("/search",BCr),t.get("/test",LCr)}};function MCr(t){let e=String(t||"").split("#")[0]||"",r=e.indexOf("$");return r>0?e.slice(0,r).trim():""}async function WCr(t,e){return{}}async function $Cr(t,e){return"true"}async function UCr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i={vod_id:s,vod_content:"",vod_name:s,vod_pic:"https://pic.rmb.bdstatic.com/bjh/1d0b02d0f57f0a42201f92caba5107ed.jpeg"},a=await Xt(s,t);if(a){i.vod_play_from=a.froms,i.vod_play_url=a.urls;let o=MCr(i.vod_play_url);o&&(i.vod_name=o)}n.push(i)}return{list:n}}async function FCr(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 Ylt={meta:{key:"push",name:"\u63A8\u9001",type:4},api:async t=>{t.post("/init",WCr),t.post("/support",$Cr),t.post("/detail",UCr),t.post("/play",er),t.get("/test",FCr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var BM=async(t,e,r)=>(await t.db.getObjectDefault("/pansou",{}))?.[e]||t.config.pansou?.[e]||r,Hue=async t=>BM(t,"url","https://pan.199333.xyz"),Gue=async t=>{let e=await BM(t,"channels","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Vue=async t=>{let e=await BM(t,"plugins","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Kue=async t=>{let e=await BM(t,"cloudTypes","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},DM=async(t,e,r)=>{await t.db.push(`/pansou/${e}`,r)},qCr=async t=>{await t.db.delete("/pansou")};async function zue(t){t.get("/config",async(e,r)=>{let n=await Hue(e.server),s=await Gue(e.server),i=await Vue(e.server),a=await Kue(e.server);r.send({code:0,data:{url:n,channels:s,plugins:i,cloudTypes:a}})}),t.put("/config",async(e,r)=>{await DM(e.server,"url",e.body.url||""),await DM(e.server,"channels",Array.isArray(e.body.channels)?e.body.channels.join(","):""),await DM(e.server,"plugins",Array.isArray(e.body.plugins)?e.body.plugins.join(","):""),await DM(e.server,"cloudTypes",Array.isArray(e.body.cloudTypes)?e.body.cloudTypes.join(","):""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await qCr(e.server),r.send({code:0})})}var Xlt={},Yue="pansou_group@@@",jCr=5*60*1e3,QCr=30,a_=new Map,HCr={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"},GCr={aliyun:"ali",mobile:"yidong",123:"123",115:"115"};function vy(t){let e=String(t||"").trim().toLowerCase();return HCr[e]||e}function Jlt(t){return[...new Set((t||[]).map(vy).filter(Boolean))]}function VCr(t,e,r=""){let n=[t,e,r].map(s=>encodeURIComponent(s||""));return`${Yue}${n.join("@@@")}`}function Zlt(t,e=!1){let r=String(t||"").trim();if(!r)return null;if(r.startsWith(Yue)){let n=r.slice(Yue.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 edt(t){let e=vy(t),r=GCr[e]||e;return Ii().find(n=>n.key===r||vy(n.key)===e)}function tdt(t){return String(t?.url||t?.URL||"").replace(/\s+/g,"")}function rdt(t,e=null){let r=vy(t),n=e||edt(r);return{key:r,name:n?.name||r,pic:n?.pic||""}}async function Jue(t){return{apiUrl:await Hue(t),channels:await Gue(t),plugins:await Vue(t),cloudTypes:await Kue(t)}}function KCr(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=Jlt([r]):e.cloudTypes.length>0&&(n.cloud_types=Jlt(e.cloudTypes)),n}function zCr(){return`${Date.now().toString(36)}${Math.random().toString(36).slice(2,10)}`}function YCr(t){let e=a_.get(t);return e?e.expiresAt<=Date.now()?(a_.delete(t),null):e.mergedByType:null}function JCr(t){if(!t||typeof t!="object")return"";let e=zCr();for(a_.set(e,{mergedByType:t,expiresAt:Date.now()+jCr});a_.size>QCr;){let r=a_.keys().next().value;a_.delete(r)}return e}function XCr(t){return t?t.startsWith("tg:")?t.substring(3):t.startsWith("plugin:")?t.substring(7):t:null}function ZCr(t){return t?t.replace(/^(名称[::])/,"").replace(/\s+/g," ").trim():""}function e2r(t,e,r=""){let n=vy(r),s=new Map;for(let[a,o]of Object.entries(t))if(!(n&&vy(a)!==n)&&Array.isArray(o))for(let c of o){let u=tdt(c);if(!u)continue;let l=Ii().find(y=>y.validator(u));if(!l)continue;let d=rdt(a,l),f=c.images&&Array.isArray(c.images)&&c.images.length>0,m=f?c.images[0]:d.pic,p=f?m:u;s.has(p)||s.set(p,{links:[],panInfos:[],sources:[],pic:m,title:ZCr(c.note||e)});let h=s.get(p);if(!h.links.includes(u)&&(h.links.push(u),h.panInfos.push(d),c.source)){let y=XCr(c.source);y&&!h.sources.includes(y)&&h.sources.push(y)}}let i=[];for(let[,a]of s.entries()){let o=[...new Set(a.panInfos.map(u=>u.name))].join("/"),c=a.sources.length>0?`:${a.sources[0]}`:"";i.push({vod_id:a.links.join("|"),vod_name:a.title,vod_pic:a.pic,vod_remarks:`${o}${c}`})}return i}function t2r(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=vy(a);if(!o)continue;let c=edt(o),u=rdt(o,c);for(let l of i){let d=tdt(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=VCr(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 ndt(t,e,r="",n=null){n=n||await Jue(t);let s=KCr(e,n,r);return he.post(`${n.apiUrl}/api/search`,s)}function r2r(t){t.forEach(e=>{e.vod_name&&e.vod_id&&(Xlt[e.vod_id]=e.vod_name)})}async function n2r(t,e){return await dr(t,e),{}}async function s2r(t,e){return{class:[]}}async function i2r(t,e){let r=Zlt(t.body?.id||t.body?.type_id||t.body?.categoryId,!0);return r?.cloudType&&r?.keyword?o2r(t,r.keyword,r.cloudType,r.searchToken):{page:1,pagecount:1,list:[]}}async function a2r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){if(Zlt(s))continue;let i=s.includes("|")?s.split("|"):[s],a=await Xt(i,t),o={};o.vod_name=Xlt[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 o2r(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 Jue(t.server),o=n?YCr(n):null;if(o||(o=(await ndt(t.server,s,r,a)).data?.data?.merged_by_type),o){let c=e2r(o,s,r);return r2r(c),{page:1,pagecount:1,list:c}}}catch(s){console.error("PanSou category search error:",s)}return{page:1,pagecount:1,list:[]}}async function c2r(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 Jue(t.server),i=await ndt(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=JCr(a);return{page:1,pagecount:1,list:t2r(a,r,o)}}return{page:1,pagecount:1,list:[]}}catch(r){return console.error("PanSou search error:",r),{page:1,pagecount:1,list:[]}}}var sdt={meta:{key:"pansou",name:"\u300C\u76D8\u300DPanSou",type:3},api:async t=>{t.post("/init",n2r),t.post("/home",s2r),t.post("/category",i2r),t.post("/detail",a2r),t.post("/play",er),t.post("/search",c2r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var idt="https://pinglian.lol";function u2r(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function adt(t){return String(t||"").trim().replace(/\/+$/,"")||idt}function odt(t){return String(t||"").trim()}var Zue=async(t,e,r)=>{let n=await t.db.getObjectDefault("/pinglian",{});return u2r(n,e)?n[e]:r},ele=async t=>adt(await Zue(t,"url",idt)),l2r=async t=>odt(await Zue(t,"username","")),d2r=async t=>String(await Zue(t,"password","")||""),tle=async t=>({url:await ele(t),username:await l2r(t),password:await d2r(t)}),Xue=async(t,e,r)=>{await t.db.push(`/pinglian/${e}`,r)},f2r=async t=>{await t.db.delete("/pinglian")};async function rle(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await tle(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await Xue(e.server,"url",adt(n.url)),await Xue(e.server,"username",odt(n.username)),await Xue(e.server,"password",String(n.password||"")),r.send({code:0})}),t.delete("/config",async(e,r)=>{await f2r(e.server),r.send({code:0})})}var nle="https://pinglian.lol",p2r=25*60*1e3,m2r=5*60*1e3,h2r=30,LM=30,gdt="pinglian_video@@@",MM="pinglian_group@@@",sle="pinglian_link@@@",cdt=[{type_id:"1",type_name:"\u7535\u5F71\u7247",children:[{type_id:"1001",type_name:"\u5267\u60C5\u7247"},{type_id:"1002",type_name:"\u559C\u5267\u7247"},{type_id:"1004",type_name:"\u52A8\u4F5C\u7247"},{type_id:"1007",type_name:"\u6050\u6016\u7247"},{type_id:"1008",type_name:"\u7231\u60C5\u7247"},{type_id:"1011",type_name:"\u52A8\u753B\u7535\u5F71"},{type_id:"1014",type_name:"\u79D1\u5E7B\u7247"},{type_id:"1015",type_name:"\u6218\u4E89\u7247"},{type_id:"1027",type_name:"\u52A8\u753B\u7247"},{type_id:"1024",type_name:"\u7535\u5F71"},{type_id:"1028",type_name:"\u5267\u60C5"},{type_id:"1029",type_name:"\u5267\u60C5,\u60AC\u7591,\u60CA\u609A"},{type_id:"1031",type_name:"\u559C\u5267,\u7231\u60C5"},{type_id:"1032",type_name:"\u6050\u6016"},{type_id:"1033",type_name:"\u79D1\u5E7B,\u60AC\u7591,\u60CA\u609A"},{type_id:"1034",type_name:"\u559C\u5267"},{type_id:"1058",type_name:"\u5267\u60C5,\u72AF\u7F6A"},{type_id:"1059",type_name:"\u5267\u60C5,\u7231\u60C5,\u60CA\u609A"},{type_id:"1060",type_name:"\u5267\u60C5,\u60CA\u609A,\u6218\u4E89"},{type_id:"1036",type_name:"\u5267\u60C5,\u5BB6\u5EAD"},{type_id:"1037",type_name:"\u79D1\u5E7B,\u6050\u6016"},{type_id:"1038",type_name:"\u5267\u60C5,\u60CA\u609A,\u707E\u96BE"},{type_id:"1039",type_name:"\u559C\u5267 / \u52A8\u753B"},{type_id:"1040",type_name:"\u52A8\u4F5C / \u5947\u5E7B"},{type_id:"1041",type_name:"\u60AC\u7591,\u60CA\u609A,\u6050\u6016"},{type_id:"1042",type_name:"\u5267\u60C5,\u8FD0\u52A8"},{type_id:"1043",type_name:"\u559C\u5267,\u52A8\u4F5C,\u7231\u60C5"},{type_id:"1044",type_name:"\u52A8\u4F5C,\u79D1\u5E7B,\u5192\u9669"},{type_id:"1045",type_name:"\u52A8\u4F5C,\u60CA\u609A"},{type_id:"1046",type_name:"\u52A8\u4F5C,\u5947\u5E7B,\u5192\u9669"},{type_id:"1047",type_name:"\u52A8\u4F5C,\u6218\u4E89"},{type_id:"1048",type_name:"\u5267\u60C5,\u4F20\u8BB0"},{type_id:"1049",type_name:"\u559C\u5267,\u52A8\u4F5C,\u60CA\u609A"},{type_id:"1050",type_name:"\u5267\u60C5 / \u7231\u60C5"},{type_id:"1051",type_name:"\u60CA\u609A,\u6050\u6016"},{type_id:"1052",type_name:"\u559C\u5267,\u52A8\u4F5C"},{type_id:"1053",type_name:"\u5267\u60C5,\u559C\u5267,\u72AF\u7F6A"},{type_id:"1054",type_name:"\u5267\u60C5,\u60CA\u609A"},{type_id:"1055",type_name:"\u52A8\u6F2B\u7535\u5F71"},{type_id:"1056",type_name:"\u5267\u60C5,\u52A8\u4F5C,\u60CA\u609A"},{type_id:"1057",type_name:"\u5267\u60C5,\u52A8\u4F5C,\u79D1\u5E7B"}]},{type_id:"2",type_name:"\u8FDE\u7EED\u5267",children:[{type_id:"1000",type_name:"\u77ED\u5267"},{type_id:"1003",type_name:"\u56FD\u4EA7\u5267"},{type_id:"1009",type_name:"\u6B27\u7F8E\u5267"},{type_id:"1012",type_name:"\u65E5\u672C\u5267"},{type_id:"1013",type_name:"\u97E9\u56FD\u5267"},{type_id:"1016",type_name:"\u6CF0\u56FD\u5267"},{type_id:"1020",type_name:"\u6D77\u5916\u5267"},{type_id:"1022",type_name:"\u9999\u6E2F\u5267"},{type_id:"1023",type_name:"\u53F0\u6E7E\u5267"}]},{type_id:"3",type_name:"\u7EFC\u827A\u7247",children:[{type_id:"1005",type_name:"\u5927\u9646\u7EFC\u827A"},{type_id:"1018",type_name:"\u65E5\u97E9\u7EFC\u827A"},{type_id:"1019",type_name:"\u6B27\u7F8E\u7EFC\u827A"},{type_id:"1021",type_name:"\u6E2F\u53F0\u7EFC\u827A"},{type_id:"1035",type_name:"\u7EFC\u827A"}]},{type_id:"4",type_name:"\u52A8\u6F2B\u7247",children:[{type_id:"1006",type_name:"\u65E5\u97E9\u52A8\u6F2B"},{type_id:"1010",type_name:"\u56FD\u4EA7\u52A8\u6F2B"},{type_id:"1017",type_name:"\u6B27\u7F8E\u52A8\u6F2B"},{type_id:"1025",type_name:"\u6D77\u5916\u52A8\u6F2B"},{type_id:"1026",type_name:"\u6E2F\u53F0\u52A8\u6F2B"},{type_id:"1030",type_name:"\u52A8\u6F2B"}]}],g2r=[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"},{n:"2009",v:"2009"},{n:"2008",v:"2008"},{n:"2007",v:"2007"},{n:"2006",v:"2006"},{n:"2005",v:"2005"},{n:"2004",v:"2004"},{n:"2003",v:"2003"},{n:"2002",v:"2002"},{n:"2001",v:"2001"},{n:"2000",v:"2000"},{n:"\u66F4\u65E9",v:"older"}],y2r=[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u4FC4\u7F57\u65AF",v:"\u4FC4\u7F57\u65AF"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],A2r=[{n:"\u5168\u90E8",v:""},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u7CA4\u8BED",v:"\u7CA4\u8BED"},{n:"\u95FD\u5357\u8BED",v:"\u95FD\u5357\u8BED"},{n:"\u97E9\u8BED",v:"\u97E9\u8BED"},{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u6CD5\u8BED",v:"\u6CD5\u8BED"},{n:"\u5FB7\u8BED",v:"\u5FB7\u8BED"},{n:"\u4FC4\u8BED",v:"\u4FC4\u8BED"},{n:"\u6CF0\u8BED",v:"\u6CF0\u8BED"},{n:"\u897F\u73ED\u7259\u8BED",v:"\u897F\u73ED\u7259\u8BED"},{n:"\u8461\u8404\u7259\u8BED",v:"\u8461\u8404\u7259\u8BED"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],x2r={ali:"aliyun",aliyun:"aliyun",alipan:"aliyun",a189:"tianyi",189:"tianyi",tianyi:"tianyi",yidong:"mobile",mobile:"mobile",a139:"mobile",cmcc:"mobile",123:"123",pan123:"123","123pan":"123",a115:"115",pan115:"115",115:"115",quark:"quark",uc:"uc",baidu:"baidu",xunlei:"xunlei",thunder:"xunlei",guangya:"guangyapan",guangyapan:"guangyapan"},b2r={aliyun:"ali",mobile:"yidong",tianyi:"tianyi",123:"123",115:"115",quark:"quark",uc:"uc",baidu:"baidu",xunlei:"xunlei",guangyapan:"guangyapan"},ale=new Map,o_=new Map,$M={},WM=0,udt="";function u_(t){let e=String(t||"").trim().toLowerCase();return x2r[e]||e}function UM(t){let e=u_(t);return b2r[e]||e}function ydt(t){let e=UM(t);return Ii().find(r=>r.key===e||u_(r.key)===u_(t))}function _2r(t){return!!ydt(t)}function ole(t){let e=u_(t),r=ydt(e);return{key:e,localKey:r?.key||UM(e),name:r?.name||e,pic:r?.pic||""}}function qw(t){(Array.isArray(t)?t:[t]).filter(Boolean).forEach(r=>{let n=String(r).split(";")[0],s=n.indexOf("=");s<=0||($M[n.slice(0,s)]=n.slice(s+1))})}function jw(){return Object.entries($M).map(([t,e])=>`${t}=${e}`).join("; ")}function c_(t,e,r={}){let n=new URL(e,t||nle);return Object.entries(r).forEach(([s,i])=>{i==null||i===""||n.searchParams.set(s,String(i))}),n.toString()}function cle(t){return typeof t=="string"&&(t.includes("\u9700\u8981\u767B\u5F55 - \u76D8\u94FE")||t.includes("pages/login.php")||t.includes("../api/login.php"))}async function E2r(t){let e=await tle(t).catch(()=>({username:"",password:""})),r=String(e.username||"").trim(),n=String(e.password||"");if(!r||!n)throw new Error("\u8BF7\u5148\u5728 Web \u540E\u53F0\u586B\u5199\u76D8\u94FE\u8D26\u53F7\u548C\u5BC6\u7801");return{url:e.url||nle,username:r,password:n,key:`${e.url||nle}
${r}
${n}`}}function v2r(t){udt!==t&&($M={},WM=0,udt=t)}async function Sy(t,e=!1){let r=await E2r(t);if(v2r(r.key),!e&&WM&&Date.now()-WM<p2r&&jw())return r;$M={};let n=await le.get(c_(r.url,"/pages/login.php"),{headers:{"User-Agent":Gt}});qw(n.headers?.["set-cookie"]);let s=new URLSearchParams({username:r.username,password:r.password,remember:"on"}).toString(),i=await le.post(c_(r.url,"/api/login.php"),s,{headers:{"User-Agent":Gt,Cookie:jw(),Referer:c_(r.url,"/pages/login.php"),"Content-Type":"application/x-www-form-urlencoded"}});if(qw(i.headers?.["set-cookie"]),!i.data?.success)throw new Error(`\u76D8\u94FE\u767B\u5F55\u5931\u8D25: ${i.data?.message||"unknown error"}`);return WM=Date.now(),r}async function ule(t,e,r={},n=!0){let s=await Sy(t.server),i=await le.get(c_(s.url,e,r),{headers:{"User-Agent":Gt,Cookie:jw(),Referer:s.url,"X-Requested-With":"XMLHttpRequest","Cache-Control":"no-cache",Pragma:"no-cache"}});return qw(i.headers?.["set-cookie"]),n&&cle(i.data)?(await Sy(t.server,!0),ule(t,e,r,!1)):i.data}async function Adt(t,e,r={},n=!0){let s=await Sy(t.server),i=await le.get(c_(s.url,e,r),{headers:{"User-Agent":Gt,Cookie:jw(),Referer:s.url}});return qw(i.headers?.["set-cookie"]),n&&cle(i.data)?(await Sy(t.server,!0),Adt(t,e,r,!1)):i.data}async function xdt(t,e,r,n=!0){let s=await Sy(t.server),i=await le.post(c_(s.url,e),JSON.stringify(r),{headers:{"User-Agent":Gt,Cookie:jw(),Referer:s.url,"X-Requested-With":"XMLHttpRequest","Content-Type":"application/json"}});return qw(i.headers?.["set-cookie"]),n&&cle(i.data)?(await Sy(t.server,!0),xdt(t,e,r,!1)):i.data}function cn(t){return String(t||"").replace(/\s+/g," ").trim()}function S2r(t){let e=String(t||"").trim();return e?De(`<div>${e}</div>`)("div").text().replace(/\s+/g," ").trim():""}function bdt(t){return cn(t).replace(/^(名称[::]\s*)/,"").replace(/^🎬\s*/,"").replace(/^🐾\s*/,"").trim()}function I2r(){return`${Date.now().toString(36)}${Math.random().toString(36).slice(2,10)}`}function C2r(t){let e=o_.get(t);return e?e.expiresAt<=Date.now()?(o_.delete(t),null):e.data:null}function ldt(t){if(!t||typeof t!="object"||Array.isArray(t))return"";let e=I2r();for(o_.set(e,{data:t,expiresAt:Date.now()+m2r});o_.size>h2r;){let r=o_.keys().next().value;o_.delete(r)}return e}function _dt(t,e){return`${t}${Buffer.from(JSON.stringify(e),"utf8").toString("base64url")}`}function Edt(t,e){let r=String(e||"").trim();if(!r.startsWith(t))return null;try{return JSON.parse(Buffer.from(r.slice(t.length),"base64url").toString("utf8"))}catch{return null}}function T2r(t){return _dt(gdt,{id:t.vod_id||t.id||"",name:t.vod_name||t.name||"",pic:t.vod_pic||t.pic||"",remarks:t.vod_remarks||t.remarks||"",typeName:t.type_name||t.typeName||"",year:t.vod_year||t.year||"",area:t.vod_area||t.area||""})}function vdt(t){return Edt(gdt,t)}function w2r(t,e,r="",n=""){return _dt(MM,{cloudType:t,keyword:e,searchToken:r,vodId:n})}function Sdt(t){let e=Edt(MM,t);if(e)return e;let r=String(t||"").trim();if(!r.startsWith(MM))return null;let n=r.slice(MM.length).split("@@@");return n.length<2?null:{cloudType:decodeURIComponent(n[0]||""),keyword:decodeURIComponent(n[1]||""),searchToken:decodeURIComponent(n[2]||""),vodId:""}}function R2r(t,e=""){let r={token:t.token||"",url:t.url||"",title:t.title||e,password:t.password||"",type:t.type||"",source:t.source||"",time:t.time||""};return`${sle}${Buffer.from(JSON.stringify(r),"utf8").toString("base64url")}`}function N2r(t){let e=String(t||"").trim();if(!e.startsWith(sle))return null;try{return JSON.parse(Buffer.from(e.slice(sle.length),"base64url").toString("utf8"))}catch{return null}}function Idt(t){let e={vod_id:String(t?.vod_id??t?.local_id??""),vod_name:cn(t?.vod_name),vod_pic:t?.vod_pic||"",vod_remarks:cn(t?.vod_remarks||t?.type_name||""),vod_year:cn(t?.vod_year),vod_area:cn(t?.vod_area),type_name:cn(t?.type_name)};return t?.vod_actor&&(e.vod_actor=cn(t.vod_actor)),t?.vod_director&&(e.vod_director=cn(t.vod_director)),t?.vod_content&&(e.vod_content=S2r(t.vod_content)),ale.set(e.vod_id,{...t,...e}),e}function Cdt(t){let e=T2r(t);return{...t,vod_id:e,vod_tag:"folder",type_id:"pan_video",type_name:"\u7F51\u76D8\u5206\u7EC4",cate:{id:e,name:t.vod_name||"\u7F51\u76D8\u5206\u7EC4"}}}function Tdt(t){return{vod_id:String(t?.id||""),vod_name:cn(t?.name),vod_pic:t?.pic||"",vod_remarks:cn(t?.remarks),vod_year:cn(t?.year),vod_area:cn(t?.area),type_name:cn(t?.typeName)}}function ddt(){return[{key:"year",name:"",init:"",value:g2r},{key:"area",name:"",init:"",value:y2r},{key:"lang",name:"",init:"",value:A2r}]}function O2r(t){return[{n:"\u5168\u90E8",v:""},...t.children.map(e=>({n:e.type_name,v:e.type_id}))]}async function k2r(t,e){return await dr(t,e),await Sy(t.server).catch(r=>console.warn(`\u76D8\u94FE\u521D\u59CB\u5316\u767B\u5F55\u5931\u8D25: ${r.message}`)),{}}async function P2r(t,e){let r=[{type_id:"0",type_name:"\u5168\u90E8"},...cdt.map(s=>({type_id:s.type_id,type_name:s.type_name}))],n={};return n[0]=ddt(),cdt.forEach(s=>{n[s.type_id]=[{key:"class",name:"",init:"",value:O2r(s)},...ddt()]}),{class:r,filters:n}}async function wdt(t,e){let r=await ule(t,"/api/get_videos.php",e);return!r||r.code!==1||!Array.isArray(r.list)?{page:Number(e.pg||1),pagecount:1,total:0,list:[]}:r}async function D2r(t,e){let r=t.body?.id||t.body?.type_id||t.body?.categoryId,n=vdt(r);if(n?.id&&n?.name)return B2r(t,Tdt(n));let s=Sdt(r);if(s?.cloudType&&s?.keyword)return M2r(t,s);let i=String(t.body?.id??"0"),a=Number.parseInt(t.body?.page||"1",10)||1,o=a===0?1:a,c=t.body?.filters||{},u=String(c.class||c.tid||i||"0"),l=await wdt(t,{pg:o,t:u,year:c.year||"",area:c.area||"",lang:c.lang||""}),d=(l.list||[]).map(Idt);return{page:Number(l.page||o),pagecount:Number(l.pagecount||o),limit:30,total:Number(l.total||d.length),list:d.map(Cdt)}}async function ile(t,e,r=""){let n=await ule(t,"/api/search_pan_links.php",{keyword:e,vod_id:r,_t:Date.now()});return!n?.success||!n.data||Array.isArray(n.data)?{}:n.data}function fdt(t){let e=UM(t),r=Array.isArray(globalThis.Pans)?globalThis.Pans.findIndex(s=>s.key===e):-1;if(r>=0)return r;let n=Ii().findIndex(s=>s.key===e);return n>=0?n:999}function Rdt(t,e=""){return(t||[]).map(r=>({...r||{},type:r?.type||e})).filter(r=>_2r(r?.type))}function pdt(t,e,r=""){let n=cn(e?.vod_name||e?.name),s=String(e?.vod_id||e?.id||"");return Object.entries(t||{}).map(([i,a])=>{let o=Rdt(a?.links,i);if(o.length===0)return null;let c=ole(i),u=w2r(c.key||i,n,r,s);return{vod_id:u,vod_name:a?.name||c.name||i,vod_pic:c.pic||"",vod_remarks:`${o.length}\u6761\u8D44\u6E90`,vod_tag:"folder",type_id:"pan_category",type_name:"\u7F51\u76D8\u5206\u7EC4",panType:c.key,cate:{id:u,name:a?.name||c.name||i}}}).filter(Boolean).sort((i,a)=>fdt(i.panType)-fdt(a.panType))}async function B2r(t,e){let r=cn(e?.vod_name),n=String(e?.vod_id||"");if(!r)return{page:1,pagecount:1,list:[]};let s=await ile(t,r,n),i=ldt(s),a=pdt(s,e,i);return a.length===0&&n&&(s=await ile(t,r,""),i=ldt(s),a=pdt(s,{...e,vod_id:""},i)),{page:1,pagecount:1,list:a}}function L2r(t,e){let r=u_(e);return Object.entries(t||{}).find(([n])=>u_(n)===r)?.[1]||null}function Ndt(t){let e=[];t?.source&&e.push(t.source);let r=String(t?.time||"").trim();return r&&!r.startsWith("0001-01-01")&&e.push(r.replace("T"," ").replace(/Z$/,"")),t?.password&&e.push(`\u7801:${t.password}`),e.join(" / ")}async function M2r(t,e){let r=Number.parseInt(t.body?.page||"1",10)||1,n=r===0?1:r,s=cn(e?.keyword),i=e?.cloudType||"",a=e?.searchToken||"",o=e?.vodId||"",u=(a?C2r(a):null)||await ile(t,s,o),l=L2r(u,i),d=Rdt(l?.links||[],i),f=Math.max(1,Math.ceil(d.length/LM)),m=(n-1)*LM,p=n<=f?d.slice(m,m+LM):[],h=ole(i);return{page:n,pagecount:f,limit:LM,total:d.length,list:p.map(y=>({vod_id:R2r({...y,type:y.type||i},s),vod_name:bdt(y.title||s),vod_pic:h.pic||"",vod_remarks:Ndt(y)||h.name,type_name:l?.name||h.name}))}}async function W2r(t,e){let r=cn(t.body?.wd),n=Number.parseInt(t.body?.page||"1",10)||1,s=n===0?1:n;if(!r)return{page:s,pagecount:1,list:[]};let i=await wdt(t,{pg:s,t:0,wd:r}),a=(i.list||[]).map(Idt);return{page:Number(i.page||s),pagecount:Number(i.pagecount||s),total:Number(i.total||a.length),list:a.map(Cdt)}}function $2r(t){if(!t)return"";try{return JSON.parse(`"${t}"`)}catch{return t.replace(/\\\//g,"/").replace(/\\n/g,`
`).replace(/\\r/g,"\r").replace(/\\t/g," ")}}function Fw(t,e){let r=String(t||"").match(new RegExp(`${e}:\\s*"((?:\\\\.|[^"\\\\])*)"`));return r?$2r(r[1]):""}function U2r(t){let e=t("script").map((r,n)=>t(n).html()||"").get().find(r=>r.includes("window.PXZ_VIDEO_DATA"))||"";return{vodName:Fw(e,"vodName"),vodPic:Fw(e,"vodPic"),typeName:Fw(e,"typeName"),vodRemarks:Fw(e,"vodRemarks"),vodScore:Fw(e,"vodScore")}}function mdt(t,e){let r="";return t(".premium-meta-grid .meta-item").each((n,s)=>{cn(t(s).find(".m-label").text())===e&&(r=cn(t(s).find(".m-val").text()))}),r}function F2r(){Array.isArray(globalThis.Pans)||(globalThis.Pans=Ii().map(t=>({key:t.key,name:t.name,pic:t.pic,enable:!0})))}function q2r(t,e,r){let n=String(r||"").trim();if(!t||!n)return t;let s=UM(e);if(s==="tianyi")return`${t} \u8BBF\u95EE\u7801:${n}`;if(!["baidu","123","115"].includes(s))return t;try{let i=new URL(t);if(s==="115")return`${i.origin}${i.pathname}?password=${encodeURIComponent(n)}`;let a="pwd";return i.searchParams.has(a)||i.searchParams.set(a,n),i.toString()}catch{return t}}function Odt(t){return/^(https?:\/\/|magnet:\?|ed2k:\/\/|thunder:\/\/)/i.test(String(t||"").trim())}async function j2r(t,e){let r=cn(t?.url);if(!r&&Odt(t?.token)&&(r=cn(t.token)),!r&&t?.token){let n=await xdt(e,"/api/resolve_token.php",{token:t.token});r=cn(n?.url)}return q2r(r,t?.type,t?.password)}async function hdt(t,e){if(!t||t.length===0)return null;let n=(await Promise.all(t.map(async s=>{try{return await j2r(s,e)}catch(i){return console.warn(`\u76D8\u94FE\u89E3\u6790\u94FE\u63A5\u5931\u8D25: ${i.message}`),""}}))).filter(s=>s&&Ii().some(i=>i.validator(s)));return n.length===0?null:(F2r(),await Xt(n,e))}async function Q2r(t,e){let r=await Adt(t,"/pages/video.php",{id:e}),n=De(r),s=U2r(n),i=n(".premium-title").first().clone().children().remove().end().text().trim(),a=cn(n(".title-year").first().text()).replace(/[()()]/g,""),o={vod_id:String(e),vod_name:i||s.vodName||cn(n("title").text()).replace(/\s*-\s*盘链$/,""),vod_pic:n(".detail-poster img").first().attr("src")||s.vodPic||"",vod_year:a,vod_area:cn(n(".premium-tags-top .p-tag.area").first().text()),type_name:cn(n(".premium-tags-top .p-tag.type").first().text())||s.typeName,vod_remarks:cn(n(".premium-tags-top .p-tag.quality").first().text())||s.vodRemarks,vod_director:mdt(n,"\u5BFC\u6F14"),vod_actor:mdt(n,"\u4E3B\u6F14"),vod_content:cn(n(".premium-plot p").first().text())};return ale.set(o.vod_id,o),o}async function H2r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=String(s||"").trim(),a=N2r(i);if(a){let u=ole(a.type),l={vod_id:i,vod_name:bdt(a.title||u.name),vod_pic:u.pic||"",vod_remarks:Ndt(a),type_name:u.name},d=await hdt([a],t);d?.froms&&d?.urls&&(l.vod_play_from=d.froms,l.vod_play_url=d.urls,l.vod_links=d.links),n.push(l);continue}let o=vdt(i);if(o?.id){n.push(Tdt(o));continue}if(Sdt(i))continue;if(Odt(i)){let u={vod_id:i,vod_name:i,vod_content:""},l=await hdt([{url:i,type:""}],t);l?.froms&&l?.urls&&(u.vod_play_from=l.froms,u.vod_play_url=l.urls,u.vod_links=l.links),n.push(u);continue}let c=ale.get(i);if(c?.vod_play_from&&c?.vod_play_url){n.push(c);continue}n.push(await Q2r(t,i))}return{list:n}}async function G2r(t,e){return await er(t,e)}var kdt={meta:{key:"pinglian",name:"\u300C\u76D8\u300D\u76D8\u94FE",type:3},api:async t=>{t.post("/init",k2r),t.post("/home",P2r),t.post("/category",D2r),t.post("/detail",H2r),t.post("/play",G2r),t.post("/search",W2r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)},check:ele};var d_="https://www.juhebd.com",Pdt="https://res.juhebd.com",lle=24,V2r=/https?:\/\/(?:pan\.quark\.cn|pan\.baidu\.com|pan\.xunlei\.com|www\.aliyundrive\.com|www\.alipan\.com|drive\.uc\.cn|www\.uc\.cn|115\.com|anxia\.com|www\.123pan\.com|www\.123865\.com|www\.123684\.com)[^\s"'<>,。;、))\]}】]+/gi,Ddt=[{type_id:"mv",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u5267\u96C6"},{type_id:"acg",type_name:"\u52A8\u6F2B"}];function l_(t){return String(t||"").replace(/\s+/g," ").trim()}function Bdt(t){let e=l_(t),r=e.match(/《([^》]+)》(.+)?$/);return r?{name:l_(r[1]),remarks:l_(r[2]||"").replace(/^[.。\-_\s]+/,"")}:{name:e,remarks:""}}function Qw(t,e=d_){return t?new URL(t,e).toString():""}function K2r(t){return String(t||"").match(/\/([A-Za-z0-9]+)$/)?.[1]||""||String(t||"").split("/").filter(Boolean).pop()||""}async function Hw(t,e={}){let r;for(let n=0;n<3;n++)try{return(await le.get(t,{headers:{"User-Agent":Gt,Referer:d_,...e.headers}})).data}catch(s){r=s,await new Promise(i=>setTimeout(i,300*(n+1)))}throw r}function Ldt(t){let e=De(t),r=[],n=new Set,s=new Map;return e("a.videopic[href]").each((i,a)=>{let o=e(a),c=o.find("img").first();s.set(Qw(o.attr("href")),Qw(c.attr("data-original")||c.attr("data-src")||c.attr("src")||""))}),e(".list-item a[href]").each((i,a)=>{let o=e(a),c=o.attr("href")||"";if(!/^\/(mv|tv|acg)\/[A-Za-z0-9]+/.test(c))return;let u=Qw(c);if(n.has(u))return;n.add(u);let l=Bdt(o.attr("title")||o.text()),d=o.closest(".list-item");r.push({vod_id:u,vod_name:l.name,vod_pic:s.get(u)||"",vod_remarks:l.remarks||l_(d.find(".list-douban, .time, .pull-right").first().text())})}),{$:e,list:r}}function Mdt(t,e){let r=e;return t("a[href]").each((n,s)=>{let i=t(s).attr("href")||"",a=Number.parseInt(i.match(/-{5}(\d+)/)?.[1]||"",10);Number.isFinite(a)&&(r=Math.max(r,a))}),r}function z2r(t){let e=new Set,r=typeof t=="string"?t:JSON.stringify(t||"");for(let n of r.match(V2r)||[])e.add(n.replace(/&amp;/g,"&"));return[...e]}function Y2r(t){return{vod_play_from:"\u7F51\u76D8\u94FE\u63A5",vod_play_url:t.map((e,r)=>`\u94FE\u63A5${r+1}$${e}`).join("#"),vod_links:t.map((e,r)=>({name:`\u94FE\u63A5${r+1}`,url:e}))}}async function J2r(t,e,r){if(!e.length)return;let n=await Xt(e,r);if(n?.froms&&n?.urls){t.vod_play_from=n.froms,t.vod_play_url=n.urls,t.vod_links=n.links;return}Object.assign(t,Y2r(e))}async function X2r(t,e){return await dr(t,e),{}}async function Z2r(t,e){return{class:Ddt}}async function eTr(t,e){let r=String(t.body.id||Ddt[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=`${d_}/${r}/index-----${n}`,i=await Hw(s),{$:a,list:o}=Ldt(i);return{page:n,pagecount:Mdt(a,n),limit:lle,total:o.length,list:o}}async function tTr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=Qw(s),a=await Hw(i),o=De(a),c=K2r(i),u=Bdt(o("h3").first().clone().children().remove().end().text()||o("title").text().replace(/ - BD影视分享.*/,"")),l={vod_id:i,vod_name:u.name,vod_pic:Qw(o(".film-poster").first().attr("src")||o('meta[property="og:image"]').attr("content")||"",i),vod_content:l_(o('meta[name="description"]').attr("content")||o("#description, .content, body").text()),vod_remarks:u.remarks},f=(await Hw(`${Pdt}/r?${encodeURIComponent(c)}`,{headers:{Referer:i}})).match(/\/api\/rl[^"']*id=([^"'&]+)/)?.[1]||c,m=await Hw(`${d_}/api/rl?id=${encodeURIComponent(f)}`,{headers:{Referer:`${Pdt}/r?${c}`}}),p=typeof m=="string"?JSON.parse(m):m,h=[];p?.data&&(h=JSON.parse(Buffer.from(p.data,"base64").toString("utf8")));let y=z2r(h);await J2r(l,y,t),!l.vod_content&&y.length&&(l.vod_content=`\u5171\u53D1\u73B0${y.length}\u4E2A\u7F51\u76D8\u94FE\u63A5`),n.push(l)}return{list:n}}async function rTr(t,e){return t.body.flag==="\u7F51\u76D8\u94FE\u63A5"?{parse:0,url:t.body.id}:await er(t,e)}async function nTr(t,e){let r=l_(t.body.wd),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:0,limit:lle,total:0,list:[]};let s=n===1?`${d_}/q/?k=${encodeURIComponent(r)}`:`${d_}/q/index-----${n}?k=${encodeURIComponent(r)}`,i=await Hw(s),{$:a,list:o}=Ldt(i);return{page:n,pagecount:Mdt(a,n),limit:lle,total:o.length,list:o}}var Wdt={meta:{key:"bdjuhe",name:"\u300C\u76D8\u300D\u7EFC\u5408",type:3},api:async t=>{t.post("/init",X2r),t.post("/home",Z2r),t.post("/category",eTr),t.post("/detail",tTr),t.post("/play",rTr),t.post("/search",nTr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var qM="https://1.star2.cn",fle=15,dle=/https?:\/\/(?:pan\.quark\.cn|pan\.baidu\.com|pan\.xunlei\.com|www\.aliyundrive\.com|www\.alipan\.com|drive\.uc\.cn|www\.uc\.cn|115\.com|anxia\.com|www\.123pan\.com|www\.123865\.com|www\.123684\.com)[^\s"'<>,。;、))\]}】]+/gi,$dt=[{type_id:"mv",type_name:"\u7535\u5F71"},{type_id:"ju",type_name:"\u56FD\u5267"},{type_id:"dj",type_name:"\u77ED\u5267"},{type_id:"zy",type_name:"\u7EFC\u827A"},{type_id:"rh",type_name:"\u97E9\u65E5"},{type_id:"ym",type_name:"\u82F1\u7F8E"},{type_id:"wj",type_name:"\u5916\u5267"},{type_id:"dm",type_name:"\u52A8\u6F2B"}];function Gw(t){return String(t||"").replace(/\s+/g," ").trim()}function Udt(t){return Gw(t).replace(/^【[^】]+】\s*/,"")}function FM(t,e=qM){return t?new URL(t,e).toString():""}async function ple(t){let e;for(let r=0;r<3;r++)try{return(await le.get(t,{headers:{"User-Agent":Gt,Referer:qM}})).data}catch(n){e=n,await new Promise(s=>setTimeout(s,300*(r+1)))}throw e}function Fdt(t){let e=De(t),r=[],n=new Set;return e(".item").each((s,i)=>{let a=e(i),o=a.find('a.main[href], a[href*=".html"]').first(),c=o.attr("href")||"";if(!/^\/[a-z]+\/\d+\.html$/.test(c))return;let u=FM(c);n.has(u)||(n.add(u),r.push({vod_id:u,vod_name:Udt(o.text()),vod_pic:FM(a.find("img").attr("data-src")||a.find("img").attr("src")||""),vod_remarks:Gw(a.find(".time").text())}))}),{$:e,list:r}}function qdt(t,e){let r=e;return t("a[href]").each((n,s)=>{let i=t(s).attr("href")||"",a=Number.parseInt(i.match(/_([0-9]+)\/$/)?.[1]||"",10);Number.isFinite(a)&&(r=Math.max(r,a))}),r}function sTr(t){let e=new Set;t("a[href]").each((r,n)=>{let s=(t(n).attr("href")||"").replace(/&amp;/g,"&");dle.test(s)&&e.add(s),dle.lastIndex=0});for(let r of t.html().match(dle)||[])e.add(r.replace(/&amp;/g,"&"));return[...e]}function iTr(t){return{vod_play_from:"\u7F51\u76D8\u94FE\u63A5",vod_play_url:t.map((e,r)=>`\u94FE\u63A5${r+1}$${e}`).join("#"),vod_links:t.map((e,r)=>({name:`\u94FE\u63A5${r+1}`,url:e}))}}async function aTr(t,e,r){if(!e.length)return;let n=await Xt(e,r);if(n?.froms&&n?.urls){t.vod_play_from=n.froms,t.vod_play_url=n.urls,t.vod_links=n.links;return}Object.assign(t,iTr(e))}async function oTr(t,e){return await dr(t,e),{}}async function cTr(t,e){return{class:$dt}}async function uTr(t,e){let r=String(t.body.id||$dt[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=await ple(`${qM}/${r}_${n}/`),{$:i,list:a}=Fdt(s);return{page:n,pagecount:qdt(i,n),limit:fle,total:a.length,list:a}}async function lTr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=FM(s),a=await ple(i),o=De(a),c=Udt(o("h1, .article-title, .title").first().text()||o("title").text().replace(/-剧透社.*/,"")),u={vod_id:i,vod_name:c,vod_pic:FM(o('meta[property="og:image"]').attr("content")||o(".content img, article img").first().attr("src")||""),vod_content:Gw(o(".entry-content, .article-content, .content").first().text())||Gw(o('meta[name="description"]').attr("content")||"")},l=sTr(o);await aTr(u,l,t),!u.vod_content&&l.length&&(u.vod_content=`\u5171\u53D1\u73B0${l.length}\u4E2A\u7F51\u76D8\u94FE\u63A5`),n.push(u)}return{list:n}}async function dTr(t,e){return t.body.flag==="\u7F51\u76D8\u94FE\u63A5"?{parse:0,url:t.body.id}:await er(t,e)}async function fTr(t,e){let r=Gw(t.body.wd),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:0,limit:fle,total:0,list:[]};let s=await ple(`${qM}/search.html?keyword=${encodeURIComponent(r)}${n>1?`&page=${n}`:""}`),{$:i,list:a}=Fdt(s);return{page:n,pagecount:qdt(i,n),limit:fle,total:a.length,list:a}}var jdt={meta:{key:"shuangxing",name:"\u300C\u76D8\u300D\u53CC\u661F",type:3},api:async t=>{t.post("/init",oTr),t.post("/home",cTr),t.post("/category",uTr),t.post("/detail",lTr),t.post("/play",dTr),t.post("/search",fTr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var Hdt=Ce(require("node:http"),1),Em=Ce(require("node:crypto"),1),Cy="http://qkys.qukanwh.com",Gdt="2d590b9842d064a1",pTr="09a8dc51639a31801af5f6418caebfabc695eb24",gle="okhttp/4.12.0",ud=40,mTr=30*60*1e3,hTr="MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCoYt0BP77U+DM08BiI/QbSRIfxijXo85BTPqIM1Ow8BNwhLETzRIZ+dEwdWDbydG/PspgBAfRpGaYVdJYtvaC2JnoO8+Ik6qMWojfEJxSFLa0Pb0A892tun4gsxoEMjcreZ+YGyaBxAfqX0BSMfdrOgIYaZQjYrw9TRLlUT31QoQIDAQAB",gTr="MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCquQQ5r6+yJI8CDFkXRp8vUsdD45ov8EP12ooLs56ca2DQXaSNGS9910bAPVA9chkp0mKIvKqjAsHz5Tl9EeNPblarGEeJUIxpxZtiSqNTpvtiD/TjhpzuHYic7RAfQ/h7p/ypE8ymU42pYjsB5t26Mv6XgkLV+jzrSf73HlCuS0iMyLmt6zz3Mw9izM13EpB8iFLtfbbYymycKTx4RAmPQLwhNGex/AlUIYxXP4R2yyaa4W6mEtc6aME2QuzJFxPgP3HJ9NBx/LWVn4skxWjZ7zg+VRQRHnjyVaSLu3Z5gN5ITWCyE32qaHJa6WBahZj5jWhRyAG1bQ+xKJa8lBL5AgMBAAECggEAUwv9SjJ0PSwbhNuM2w23kcWquROWhYtTA91zGY4esehqB/IFgb2mpIh8Gje5OKqwIu/8jpd4SiOlRYdUF8sD0DfUYRZGdj2AkFNX6tBz8tVfo6wvbB6naA1lzzBij1L5JO3qsjS3cJFkb+kg2yP66AC2Z+0tpfk8eRhdtshAZwfcd1DEGt1uAvYL1eaUK9HRvpt9lPeGcHERDl2hBd4uyaF0K1O+zF9y59nYbTySWPxRZq3sFEE85xRMlstD7YZi7W2gKvMFRD4/FKmrZ3m7aKJRITtyKOyyPcYmepNv3Qv7kk59Pg38n2WWQ0Ra/bCH3E48YNCnQvZMpitkTfJhoQKBgQDbnROOYTP8OTJ6f/qhoGjxeO3x1VOaOp8l0x7b0SCfoqNGS0Cyiqj72BmJtPMPqSTjn6MmNzqbg1KOdhXyzNozs+i5ccW1M56j96mr5I/Z0FpE3oyIHNfDDBlf9M8YQqEF9oYxniYYft9oapO7cRQkHER6qpvnHTavwlv4m78CXwKBgQDHAjs2YlpKDdI1lcbZJCc7TwtH+Pd2bUki8YXafWNcPhITQHbOZjr310eK1QJC6GJncjkOqbX7yv3ivvTO35FZTQhuA1xEG1P00FG8bE0tHYPIwQHi9y0eA5cieMdo8E6XYria1mw/3fqSQEsfZyJlR32JQIoGAipM8iO1X2nZpwKBgDkMFIhnt5lNQk+P7wsNIDWZtDWdtJnboHuy29E+Abt2A/O+mI/IdRz2hau/1WO8DFkUnszOi+rZshhPlGP90rCbi1igtTrcrdjp/KkqNjPea5R4OwkgdOu1uOG0NheXNzzVTQaWjk7Opjn5dWa7eP/oV+GFb/oZHJuLYVizHGsBAoGADA7rjZEKDYCm4w5PPSr+oY5ZjaPdQrS+gLqHtMRyN82fBMGcMUdqfUfzEstzVqCEDeaS5HuOBlK3bXzKkppjUTjksN3NQmcxgBz7RuJ9DqXCLXDcb2cwuafYCYOt+YLOEEgwDVm+t2P44dG5e46hO+fICH/7nP+WlpD5buz4GfMCgYB57r3g/6hi9WUDnfc7ZAzWMqR0EhJVYKYy+KFEtdIPzhkkIHq5RASe88E9kzoGoZFdb3tIjvGZWcHerirrqWkMsuQtP/Qi0zjieid5tAPj+r4kbiCVTw0E0jnmPBzGInQi7lpeTTKnG1fbyS5lBS+WmHfIuzpECgCkxhaT+LJJkg==",yTr=Em.default.createPublicKey({key:Buffer.from(hTr,"base64"),format:"der",type:"spki"}),Vdt=Em.default.createPrivateKey({key:Buffer.from(gTr,"base64"),format:"der",type:"pkcs8"}),Qdt=Math.ceil((Vdt.asymmetricKeyDetails?.modulusLength||2048)/8),p_=he.create({timeout:18e3,proxy:!1,httpAgent:new Hdt.default.Agent({keepAlive:!0}),validateStatus:t=>t>=200&&t<500}),ld={userId:"",token:"",tokenAt:0};function ATr(t){return Em.default.createHash("md5").update(String(t)).digest("hex").toUpperCase()}function Kdt(t){return Buffer.from(JSON.stringify(t),"utf8").toString("base64url")}function zdt(t){return JSON.parse(Buffer.from(String(t||""),"base64url").toString("utf8"))}function os(t){return String(t??"").trim()}function Iy(t){return Array.isArray(t)?t:[]}function mle(t){return Em.default.publicEncrypt({key:yTr,padding:Em.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(t),"utf8")).toString("base64")}function xTr(t){let e=0;for(;e<t.length&&t[e]===0;)e++;if(t[e]===2){let r=t.indexOf(0,e+1);if(r>=0)return t.subarray(r+1)}return t}function bTr(t){let e=Buffer.from(String(t||""),"base64"),r=[];for(let n=0;n<e.length;n+=Qdt){let s=Em.default.privateDecrypt({key:Vdt,padding:Em.default.constants.RSA_NO_PADDING},e.subarray(n,n+Qdt));r.push(xTr(s))}return Buffer.concat(r).toString("utf8")}function m_(t={}){return{"User-Agent":gle,Connection:"Keep-Alive","Accept-Encoding":"gzip","Content-Type":"application/json;charset=UTF-8","Cache-Control":"no-cache",token:ld.token||"",deviceId:Gdt,client:"app",deviceType:"Android",...t}}function _Tr({episodeId:t="",episodeIndex:e="",id:r="",playerId:n="",typeId:s="",userId:i=""}){return`episodeId${t}episodeIndex${e}id${r}playerId${n}source0typeId${s}userId${i}`}function ETr(t,e){let r=`SaltLSFBTimestamp${t}Params${e}ClientappDeviceId${Gdt}`;return ATr(Buffer.from(r,"utf8").toString("base64"))}function vTr(t,e){let r=JSON.stringify(t),n=String(Math.floor(Date.now()/1e3));return[{...m_(),snjm:mle("113"),appsign:mle(pTr),timestamp:n,sign:ETr(n,e)},{key:mle(r)}]}async function pp(t=!1){if(!t&&ld.token&&Date.now()-ld.tokenAt<mTr)return;let r=(await p_.get(`${Cy}/api/v1/app/user/visitorInfo`,{headers:m_({token:""})})).data?.data;if(!r?.id||!r?.token)throw new Error("\u5C71\u6942\u5F71\u89C6\u6E38\u5BA2\u767B\u5F55\u5931\u8D25");ld.userId=String(r.id),ld.token=String(r.token),ld.tokenAt=Date.now()}async function f_(t,e=null){await pp();let r=await p_.post(`${Cy}${t}`,e==null?"":JSON.stringify(e),{headers:m_()});return r.status===401||r.status===403||r.data?.code===401?(await pp(!0),(await p_.post(`${Cy}${t}`,e==null?"":JSON.stringify(e),{headers:m_()})).data||{}):r.data||{}}async function STr(t,e={}){await pp();let r=await p_.get(`${Cy}${t}`,{params:e,headers:m_()});return r.status===401||r.status===403||r.data?.code===401?(await pp(!0),(await p_.get(`${Cy}${t}`,{params:e,headers:m_()})).data||{}):r.data||{}}async function yle(t){await pp();let e=_Tr({episodeId:t.episodeId||"",episodeIndex:t.episodeIndex||"",id:String(t.id||""),playerId:t.playerId||"",typeId:t.typeId||"",userId:String(t.userId||"")}),[r,n]=vTr(t,e),s=await p_.post(`${Cy}/api/v1/app/play/movieDetails`,JSON.stringify(n),{headers:r});if(s.status===401||s.status===403||s.data?.code===401)return await pp(!0),yle({...t,userId:ld.userId});if(!s.data?.data)throw new Error(`\u5C71\u6942\u5F71\u89C6\u8BE6\u60C5\u4E3A\u7A7A: ${JSON.stringify(s.data).slice(0,120)}`);return JSON.parse(bTr(s.data.data))}function Ale(t={}){let e=String(t.id||""),r=String(t.typeId||"M16");return{vod_id:Kdt({id:e,typeId:r}),vod_name:os(t.name),vod_pic:os(t.cover),vod_remarks:os(t.remarks||t.area||t.year),vod_year:os(t.year),vod_area:os(t.area),vod_content:os(t.desc)}}function ITr(t){try{let e=zdt(t);return{id:String(e.id||""),typeId:String(e.typeId||"M16")}}catch{return{id:String(t||""),typeId:"M16"}}}async function CTr(){return await pp(!0),{}}async function TTr(){let t=await f_("/api/v1/app/screen/screenType"),e=Iy(t.data).map(n=>({type_id:String(n.id||""),type_name:os(n.name)})).filter(n=>n.type_id&&n.type_name),r=[];try{let n=await f_("/api/v1/app/recommend/recommendList"),s=Iy(n.data).slice(0,5);r=(await Promise.all(s.map(a=>f_("/api/v1/app/recommend/recommendSubList",{condition:a.id,pageNum:1,pageSize:6}).catch(()=>({}))))).flatMap(a=>Iy(a.data?.records).map(Ale)).slice(0,24)}catch{}return{class:e,filters:{},list:r}}async function wTr(t){let e=String(t.body?.id||""),r=Math.max(parseInt(t.body?.page||1)||1,1),i=(await f_("/api/v1/app/screen/screenMovie",{condition:{classify:"",region:"",sreecnTypeEnum:"NEWEST",typeId:e,year:""},pageNum:r,pageSize:ud})).data||{},a=Iy(i.records).map(Ale),o=parseInt(i.total||i.totalRow||0)||r*ud+(a.length>=ud?ud:0);return{list:a,page:r,pagecount:o?Math.ceil(o/ud):r+(a.length>=ud?1:0),limit:ud,total:o}}async function RTr(t){let e=Math.max(parseInt(t.body?.page||t.body?.pg||1)||1,1),r=t.body?.wd||t.body?.key||t.body?.keyword||"",s=(await f_("/api/v1/app/search/searchMovie",{condition:{value:String(r)},pageNum:e,pageSize:ud})).data||{},i=Iy(s.records).map(Ale),a=parseInt(s.total||0)||i.length;return{list:i,page:e,pagecount:a?Math.ceil(a/ud):e,limit:ud,total:a}}function hle(t){return Kdt(t)}async function NTr(t){let e=Array.isArray(t.body?.id)?t.body.id[0]:t.body?.id||t.body?.ids||"",{id:r,typeId:n}=ITr(e);await pp();let s={id:r,source:0,typeId:n,userId:ld.userId,episodeId:"",episodeIndex:"",playerId:""},i=await yle(s),a=String(i.playerId||""),o=Iy(i.moviePlayerList),c=Iy(i.episodeList),u=[],l=[];c.length&&(u.push(os(o.find(m=>String(m.id)===a)?.moviePlayerName||"\u9ED8\u8BA4")),l.push(c.map((m,p)=>`${os(m.episode||m.episodeName||m.name||`\u7B2C${m.episodeIndex||p+1}\u96C6`)}$${hle({vid:r,typeId:n,playerId:a,episodeId:String(m.id||""),mode:"episode"})}`).join("#")));for(let m of o){let p=String(m.id||"");if(!p||p===a)continue;let h=parseInt(m.episodeTotal||m.totalEpisode||0)||parseInt(i.totalEpisode||0)||1;if(!h)continue;u.push(os(m.moviePlayerName||`\u7EBF\u8DEF${u.length+1}`));let y=[];for(let g=0;g<Math.min(h,300);g++)y.push(`\u7B2C${g+1}\u96C6$${hle({vid:r,typeId:n,playerId:p,episodeIndex:String(g),mode:"virtual"})}`);l.push(y.join("#"))}l.length||(u.push("\u9ED8\u8BA4"),l.push(`\u64AD\u653E$${hle({vid:r,typeId:n,playerId:a,episodeId:"",mode:"episode"})}`));let d={};try{d=(await f_("/api/v1/app/play/movieDesc",{id:r,typeId:n})).data||{}}catch{}return{list:[{vod_id:e,vod_name:os(d.name||i.name),vod_pic:os(d.cover||i.cover),vod_content:os(d.introduce||d.desc||i.desc),vod_year:os(d.year||i.year),vod_area:os(d.area||i.area),vod_remarks:os(d.remarks||i.currentEpisode||i.remarks),vod_score:os(d.score),type_name:os(d.classify),vod_director:os(d.director),vod_actor:os(d.star),vod_play_from:u.join("$$$")||"\u9ED8\u8BA4",vod_play_url:l.join("$$$")}]}}function OTr(t){let e=String(t||"").toLowerCase();return!e||/\.(m3u8|mp4|flv|m4v|mov|ts)(\?|#|$)/.test(e)?!1:/https?:\/\/(?:[^/]+\.)?(v\.qq\.com|youku\.com|iqiyi\.com|mgtv\.com|bilibili\.com)\//.test(e)}async function kTr(t){try{let e=zdt(t.body?.id||"");await pp();let r=e.mode==="virtual"?{episodeIndex:String(e.episodeIndex||"0"),id:String(e.vid),playerId:String(e.playerId||""),source:0,typeId:String(e.typeId||"M16"),userId:ld.userId,episodeId:""}:{episodeId:String(e.episodeId||""),id:String(e.vid),playerId:String(e.playerId||""),source:0,typeId:String(e.typeId||"M16"),userId:ld.userId,episodeIndex:""},n=await yle(r),s=os(n.url),i=String(n.playerId||e.playerId||""),a=await STr("/api/v1/app/play/analysisMovieUrl",{playerUrl:s,playerId:i}),o=os(a.data||s),c=OTr(o);return{jx:c?1:0,parse:c?1:0,url:o,playUrl:"",header:{"User-Agent":c?gle:"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"}}}catch(e){return{jx:0,parse:0,url:"",msg:e.message,header:{"User-Agent":gle}}}}var Ydt={meta:{key:"shanzha",name:"\u300C\u76F4\u300D\u5C71\u6942",type:3},api:async t=>{t.post("/init",CTr),t.post("/home",TTr),t.post("/category",wTr),t.post("/detail",NTr),t.post("/play",kTr),t.post("/search",RTr)},check:()=>Cy};var Vw=Ce(require("node:crypto"),1);var Zdt="\u6A58\u6C41",PTr="https://123-1349250429.cos.ap-shanghai.myqcloud.com/app.txt",ble="MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCr8SzZhjYy+rsya1K09t8d2K50pWFoBkgUqMpKOiW+3IEVKd4eTdvg9RSOjQ82kypL6R9BnsmrS1V8s4PVDwjQbUtYhTPPC9Hz16qY7rpD6m0d2vr09/UpWQ5uOy9PR0QTrsioveZ+DIe9jc3C+zBCu/kZSY/R8stwJoiitki3gwIDAQAB",DTr="DGVQRUX5R1LWWDLHTGJSUKG1DJRVPQ==",BTr="OC1A06E197EF10CF3F6058CA7A803B5E",LTr="com.lxf.snzlcgtzxyx",Jdt="3.0.2.1",jM="ed5fdsgucxumegqa",h_="okhttp/3.12.1",g_=21,Xdt="1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",eft=/^(?:https?:)?\/\/.*\.(?:mp4|m3u8|flv|mkv|avi|ts|mov|mpd|m4a|wmv)(?:\?.*)?$/i,Vo={host:"",hostExpireAt:0,runtimePublicKey:"",runtimeKeyExpireAt:0};function y_(t){let e="";for(let r=0;r<t-1;r+=1)e+=Xdt[Math.floor(Math.random()*Xdt.length)];return`${e}=`}function MTr(t,e){return`aes-${Buffer.byteLength(t)*8}-${e.toLowerCase()}`}function QM(t,e,r,n=null){let s=Buffer.from(e),i=Vw.default.createCipheriv(MTr(e,r),s,r==="CBC"?Buffer.from(n):null),a=Buffer.concat([i.update(String(t),"utf8"),i.final()]);return r==="CBC"?a.toString("hex"):a.toString("base64")}function tft(t,e){let r=`-----BEGIN PUBLIC KEY-----
${e}
-----END PUBLIC KEY-----`;return Vw.default.publicEncrypt({key:r,padding:Vw.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(t))).toString("base64")}function rft(){let t=Vw.default.randomUUID().replaceAll("-","").toUpperCase();return{country:"CN",vName:Jdt,cpuId:"MT6893Z%2FCZA",young:0,facturer:"Xiaomi",pkg:LTr,uuid:t,resolution:"1080x2272",mac:"02%3A00%3A00%3A00%3A00%3A00",abid:"397",model:"M2012K10C",plat:"android",udid:t,dpi:"440",net:"1",lang:"zh",brand:"Redmi",density:"2.75",appName:Zdt,cpu:"arm64-v8a",chid:"10000",carrier:"%E8%81%94%E9%80%9A",_vOsCode:30,vOs:"11",v:1,tenantId:"",vApp:Jdt.replaceAll(".",""),device:0,androidID:"7f2b18c0b4a8d93f"}}function WTr(){return JSON.stringify({paramsData:QM(JSON.stringify(rft()),jM,"CBC",jM)})}function $Tr(){let t=rft(),e=Date.now(),r=y_(16),n=Vo.runtimePublicKey||ble,s=tft(`${e}${r}${t.vApp||"3019"}`,n),i=QM(`${e}${r}`,BTr,"ECB");return t.sig=s,t.random_str=r,t.timestamp=e,t.sig2=i.slice(0,8),t.sig3=i.slice(8),JSON.stringify({paramsData:QM(JSON.stringify(t),jM,"CBC",jM)})}function UTr(){return{"User-Agent":h_,Accept:"application/json","Content-Type":"application/json; charset=utf-8",publicParams:WTr()}}function nft(){return{"User-Agent":h_,Accept:"application/x-protobuf","Content-Type":"application/x-protobuf",publicParams:$Tr()}}function _le(t){let e=BigInt(t),r=[];for(;e>=0x80n;)r.push(Number(e&0x7fn|0x80n)),e>>=7n;return r.push(Number(e)),Buffer.from(r)}function sft(t,e){return _le(t<<3|e)}function vm(t,e){let r=Buffer.from(String(e));return Buffer.concat([sft(t,2),_le(r.length),r])}function ift(t,e){return Buffer.concat([sft(t,0),_le(e)])}function aft(t){return Buffer.concat(t.filter(Boolean))}function HM(t){let e=Object.entries(t).filter(([,a])=>a!=null&&String(a)!=="").map(([a,o])=>`${a}=${o}`).join("&"),r=Date.now(),n=y_(8),s=QM(`${e}${r}`,DTr,"ECB"),i=`${n}${s}`;return aft([vm(1,i.slice(0,20)),vm(2,i.slice(20)),vm(3,y_(20)),ift(4,r),vm(5,n)])}function xle(t,e){let r=0n,n=0n;for(;e.pos<t.length;){let s=t[e.pos++];if(n|=BigInt(s&127)<<r,!(s&128))break;r+=7n}return n<=BigInt(Number.MAX_SAFE_INTEGER)?Number(n):n}function mp(t){let e=Buffer.from(t||[]),r=new Map,n={pos:0},s=(i,a)=>{r.has(i)||r.set(i,[]),r.get(i).push(a)};for(;n.pos<e.length;){let i=xle(e,n),a=Number(i>>3),o=Number(i&7);if(o===0)s(a,xle(e,n));else if(o===1)s(a,e.subarray(n.pos,n.pos+8)),n.pos+=8;else if(o===2){let c=xle(e,n);s(a,e.subarray(n.pos,n.pos+c)),n.pos+=c}else if(o===5)s(a,e.subarray(n.pos,n.pos+4)),n.pos+=4;else throw new Error(`unsupported protobuf wire type: ${o}`)}return r}var Ty=(t,e)=>t.get(e)?.[0],gn=(t,e)=>Ty(t,e)?.toString("utf8")||"",wy=(t,e)=>Number(Ty(t,e)||0);function oft(t){let e=mp(t),r=wy(e,1),n=gn(e,2),s=Ty(e,3)||Buffer.alloc(0);if(r&&r!==200){let i=new Error(n||`upstream api code ${r}`);throw i.code=r,i}return s}function FTr(t){let e=mp(t);return[2,3,4,5].map(r=>gn(e,r)).join("")}function cft(t){let e=mp(t);return{path:gn(e,1),thumbnail:gn(e,2)}}function Oi(t){let e=String(t||"");for(let r=0;r<3;r+=1)e=e.replace(/&amp;/g,"&").replace(/&#039;/g,"'").replace(/&quot;/g,'"').replace(/&lt;/g,"<").replace(/&gt;/g,">");return e.trim()}function qTr(t){let e=mp(t),r=Ty(e,2)?cft(Ty(e,2)):{};return{vod_id:String(wy(e,3)),vod_name:Oi(gn(e,5)),vod_pic:r.thumbnail||r.path||"",vod_remarks:Oi(gn(e,13)),vod_area:Oi(gn(e,1)),vod_year:String(wy(e,14)||""),vod_actor:Oi(gn(e,12)),vod_director:Oi(gn(e,7)),vod_class:Oi(gn(e,15)),vod_content:Oi(gn(e,4))}}function uft(t){return(mp(t).get(1)||[]).map(qTr).filter(r=>r.vod_id&&r.vod_name)}function jTr(t){let e=mp(t);return{id:String(wy(e,1)),title:Oi(gn(e,2)),path:gn(e,4),source:gn(e,9),sourceCn:Oi(gn(e,10))}}function QTr(t){let e=mp(t),r=Ty(e,2)?cft(Ty(e,2)):{};return{vod_id:String(wy(e,4)),vod_name:Oi(gn(e,9)),vod_pic:r.path||r.thumbnail||"",type_name:Oi(gn(e,13)),vod_area:Oi(gn(e,1)),vod_year:String(wy(e,18)||""),vod_actor:Oi(gn(e,25)),vod_director:Oi(gn(e,12)),vod_remarks:Oi(gn(e,26)),vod_content:Oi(gn(e,6)||gn(e,7)),videos:(e.get(29)||[]).map(jTr).filter(n=>n.path)}}function HTr(t){let e=mp(t),r={};for(let n of e.get(6)||[]){let s=mp(n),i=gn(s,1);i&&(r[i]=gn(s,2))}return{url:gn(e,1),direct:wy(e,5),headers:r,msg:gn(e,9)}}function GTr(t){return eft.test(t.path)?t.path:Buffer.from(JSON.stringify({vodPlayFrom:t.source,playUrl:t.path})).toString("base64")}function VTr(t){try{return JSON.parse(Buffer.from(String(t||""),"base64").toString("utf8"))}catch{return null}}function KTr(t){if(!t?.converUrl)return[];let e={};try{e=JSON.parse(t.converUrl)}catch{return[]}return["class","area","lang","year","extend_sort"].filter(r=>typeof e[r]=="string"&&e[r].trim()).map(r=>({key:r,name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...e[r].split(",").map(n=>n.trim()).filter(Boolean).map(n=>({n,v:n}))]}))}async function GM(){if(Vo.host&&Date.now()<Vo.hostExpireAt)return Vo.host;let{data:t}=await he.get(PTr,{headers:{"User-Agent":h_},timeout:15e3}),e=String(t?.domain||"").replace(/\/+$/,"");if(!e)throw new Error("\u6A58\u6C41 app.txt \u672A\u8FD4\u56DE domain");return Vo.host=e,Vo.hostExpireAt=Date.now()+10*60*1e3,Vo.host}async function VM(t,e){let r=await GM();await Ele(!1);let n=await he.post(`${r}${t}`,e,{headers:nft(),responseType:"arraybuffer",timeout:2e4});return oft(Buffer.from(n.data))}async function zTr(t){let e=await GM(),{data:r}=await he.get(`${e}${t}`,{headers:UTr(),timeout:2e4});return r}async function Ele(t=!1){if(!t&&Vo.runtimePublicKey&&Date.now()<Vo.runtimeKeyExpireAt)return Vo.runtimePublicKey;let e=await GM(),r=Date.now(),n=y_(16),s=aft([ift(1,r),vm(2,tft(`${r}${n}`,ble)),vm(3,y_(16)),vm(4,n),vm(5,y_(16))]),i=await he.post(`${e}/api/v5/find/app/zone`,s,{headers:nft(),responseType:"arraybuffer",timeout:2e4});return Vo.runtimePublicKey=FTr(oft(Buffer.from(i.data)))||ble,Vo.runtimeKeyExpireAt=Date.now()+30*60*1e3,Vo.runtimePublicKey}async function YTr(){try{await Ele(!0)}catch(t){console.error("[juzhi] init failed:",t.message)}return{}}async function JTr(){await Ele(!1);let t=await zTr("/api/v3/drama/getCategory?orderBy=type_id"),e=Array.isArray(t?.data)?t.data:[],r=[],n={};for(let s of e){let i=Oi(s?.name),a=String(s?.id||"");if(!a||!i||i==="\u516C\u544A")continue;r.push({type_id:a,type_name:i});let o=KTr(s);o.length>0&&(n[a]=o)}return{class:r,filters:n}}async function XTr(t){let e=t.body||{},r=String(e.id||e.tid||"").trim(),n=Number(e.page||e.pg||1)||1,s=e.filters||e.extend||{},i={pagesize:String(g_),typeId1:r,page:String(n),vodOrderBy:String(s.extend_sort||""),vodArea:String(s.area||""),vodLang:String(s.lang||""),vodClass:String(s.class||""),vodYear:String(s.year||"")},a=uft(await VM("/api/proto/v5/drama/category",HM(i)));return{page:n,pagecount:a.length>=g_?n+1:n,limit:g_,total:a.length,list:a}}async function ZTr(t){let e=String(t.body?.id||"").trim();if(!e)return{list:[]};let r=QTr(await VM("/api/proto/v5/drama/getDetail",HM({id:e}))),n=new Map;for(let s of r.videos){let i=s.sourceCn||Zdt;n.has(i)||n.set(i,[]),n.get(i).push(`${s.title||n.get(i).length+1}$${GTr(s)}`)}return delete r.videos,r.vod_play_from=[...n.keys()].join("$$$"),r.vod_play_url=[...n.values()].map(s=>s.join("#")).join("$$$"),{list:[r]}}async function ewr(t){let e=String(t.body?.id||"").trim();if(!e)return{parse:0,jx:0,url:""};if(eft.test(e))return{parse:0,jx:0,url:e,header:{"User-Agent":h_}};let r=VTr(e);if(!r?.playUrl)return{parse:1,jx:1,url:e,header:{"User-Agent":h_}};let n=await VM("/api/proto/v5/videoUsableUrl",HM(r)),s=HTr(n);return{parse:0,jx:0,url:s.url||r.playUrl,playUrl:"",header:Object.keys(s.headers).length>0?s.headers:{"User-Agent":h_},msg:s.msg||void 0}}async function twr(t){let e=String(t.body?.wd||t.body?.keyword||"").trim(),r=Number(t.body?.page||t.body?.pg||1)||1;if(!e)return{page:r,pagecount:r,list:[]};let n={searchKeys:e,page:String(r),pagesize:String(g_)},s=uft(await VM("/api/proto/v5/drama/search",HM(n)));return{page:r,pagecount:s.length>=g_?r+1:r,limit:g_,total:s.length,list:s}}var lft={meta:{key:"juzhi",name:"\u300C\u76F4\u300D\u6A58\u6C41",type:3},api:async t=>{t.post("/init",YTr),t.post("/home",JTr),t.post("/category",XTr),t.post("/detail",ZTr),t.post("/play",ewr),t.post("/search",twr)},check:GM};var yft=Ce(require("node:crypto"),1),Aft=Ce(require("node:https"),1),xft=Ce(require("node:zlib"),1),bft=Ce(require("node:net"),1),fd={default:yft.default},rwr={default:Aft.default},vle={default:xft.default},nwr={default:bft.default},qu=dd;(function(t,e){let r=dd,n=t();for(;;)try{if(parseInt("956778PWeEsu")/1+parseInt("1231204uLzOTc")/2+-parseInt("559032vtjhhw")/3+parseInt("3084580ayhZHK")/4+parseInt("4896820tXoJWk")/5+-parseInt("417378dsKyYK")/6*(-parseInt("119cdsdmh")/7)+parseInt("8kHNAQr")/8*(-parseInt("32206833nUafGT")/9)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(zM,-726893*1+-120*9138+-4*-641008);var swr="====",dft=[104,2601+2537*-1,-6609+-6679*-1,189*-31+-208*-6+4777,3737*-1+3*1271+114,168,-2145+52*44,7964+-132*-55+7547*-2,353*-26+7+324*29,-252*-1+3971+-567*7,1*-9659+-2*3943+17796,217,-1761*-1+3*-241+-2*421,-8145+8179*1,-7750+-2*2213+-11*-1111,1698*-1+487*16+-6034,4*-749+6978+-3953,-3254*-1+6365+-9599,103,-5993*1+1*4171+1927],iwr=[3409+67*37+-5754,7*-271+-4*2468+11952,-9460*1+-1*2978+-1811*-7,-1*-9259+2695+-11759,-400+-1*-6186+-1844*3,-1*-617+-3009*1+2426,-9702+2*-1154+12070,-1*-4376+134*-34+-38*-5,59*-95+-1*7329+-4*-3246,-2*-4663+7777+-16986,-1861+-51*-38],awr=[5283*-1+4528*1+197*5,9615+-8161*-1+-17593,415*1+-1555+1283,-3*3329+1*-914+11064,183],owr=[1286*1+-1406+159*2,-4424+-1*-4607,9219*1+2496+-11543,208+7*137+-1038,-7154+16*463,504+9769*1+-10170,1303+-2*4877+-3*-2857,-5991*-1+-31*-233+1*-13181,-10*898+1729*5+-429*-1,-356*-15+3*1697+519*-20,-768+-1*3305+-1*-4177,-5947+-362*6+8144,2063+-1829*1],cwr=[["4a1a4b2f203179584b",49],-3658+-767*-10+-4*1003,["6a63742f170a3f4ca2bdac",10*-944+10*412+1348*4],1,["7d4a4f150be9c5f5f9f9d1c49180e3",-4414*2+2113+1362*5],4049*-1+-182+-83*-51,["5451a6e9e7f0ccc3fadcd1a6e8ebfa",11*-213+-1*287+-229*-12],868+4*244+-7*263,["afe9",-463*18+1938+-6537*-1]];function uwr(t){let e=qu,r={GRfXs:function(i,a){return i(a)},hBBpD:function(i,a){return i||a},OeaSy:function(i,a){return i%a},XjKNO:function(i,a){return i!==a},uBoKa:"base64"},n=r.GRfXs(String,r.hBBpD(t,"")).replace(/\s+/g,""),s=r.OeaSy(n.length,-7499*-1+-3360+-4135);return r.XjKNO(s,1*7274+250*-30+226)&&(n+=swr.slice(s)),Buffer.from(n,r.uBoKa)}function KM(t){let e=qu,r={NtHRW:function(n,s){return n(s)},NhCHS:function(n,s){return n||s},NmWHw:"hex"};return Buffer.from(r.NtHRW(String,r.NhCHS(t,"")),r.NmWHw)}function fft(t,e){let r=qu;if({ZAxEj:function(s,i){return s===i}}.ZAxEj(t.length,e))return t;let n=Buffer.alloc(e,"0");return t.copy(n,2*3834+4679*1+-12347,1*6857+55*121+1126*-12,Math.min(t.length,e)),n}function lwr(t,e){let r=qu,n={pKMuc:function(s,i){return s&i},KwJJp:function(s,i){return s^i},zVhwT:function(s,i){return s&i},KDrdw:function(s,i){return s+i},Psawy:function(s,i){return s*i}};return n.pKMuc(n.KwJJp(t,n.zVhwT(n.KDrdw(15*219+4027+-7145,n.Psawy(e,33*141+8075+-12709)),-9082+1*2993+2*3172)),6*1546+-5281*-1+1*-14302)}function dwr(t){let e=qu,r={YGwSU:"hex",ikBYv:function(o,c){return o<c},pnDvx:function(o,c){return o^c},qXnqi:function(o,c){return o&c},jCbJV:function(o,c){return o+c},XpZzF:function(o,c){return o*c},ZkLkd:"utf8"},[n,s]=t,i=Buffer.from(n,r.YGwSU),a=Buffer.alloc(i.length);for(let o=7759*-1+-4673*2+3421*5;r.ikBYv(o,i.length);o++)a[o]=r.pnDvx(i[o],r.qXnqi(r.jCbJV(s,r.XpZzF(o,4160+1136*5+9833*-1)),255));return a.toString(r.ZkLkd)}function dd(t,e){let r=zM();return dd=function(n,s){n=n-(197*-39+7*-655+739*17);let i=r[n];if(dd.zSAUtR===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",m="",p="";for(let h=0,y,g,A=0;g=d.charAt(A++);~g&&(y=h%4?y*64+g:g,h++%4)?m+=String.fromCharCode(255&y>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,y=m.length;h<y;h++)p+="%"+("00"+m.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(p)};let l=function(d,f){let m=[],p=0,h,y="";d=a(d);let g;for(g=0;g<256;g++)m[g]=g;for(g=0;g<256;g++)p=(p+m[g]+f.charCodeAt(g%f.length))%256,h=m[g],m[g]=m[p],m[p]=h;g=0,p=0;for(let A=0;A<d.length;A++)g=(g+1)%256,p=(p+m[g])%256,h=m[g],m[g]=m[p],m[p]=h,y+=String.fromCharCode(d.charCodeAt(A)^m[(m[g]+m[p])%256]);return y};dd.pAVUwB=l,t=arguments,dd.zSAUtR=!0}let o=r[0],c=n+o,u=t[c];return u?i=u:(dd.WVODCV===void 0&&(dd.WVODCV=!0),i=dd.pAVUwB(i,s),t[c]=i),i},dd(t,e)}function fwr(t){let e=qu,r={BuqNm:function(s,i){return s%i},IAcTR:function(s,i){return s&i},ARsDC:function(s,i){return s^i},sHMzw:function(s,i){return s&i},vCYwq:function(s,i){return s+i},xfXlN:function(s,i){return s*i}},n=r.BuqNm(t,dft.length);return r.IAcTR(r.ARsDC(r.ARsDC(dft[n],r.sHMzw(r.vCYwq(13003+349*-37,r.xfXlN(n,-2*72+122*29+-69*49)),-327*7+2226+318)),8813+-8*1091),-456*16+-788+8339)}function Cle(t,e){let r=qu,n={xgXBv:function(s,i){return s<i},oxVPu:function(s,i,a){return s(i,a)},AWyhO:function(s,i){return s&i},hKbkW:function(s,i){return s+i},yQIzu:function(s,i){return s&i},SeFjR:function(s,i){return s===i},Capci:function(s,i){return s&i},mtBAD:function(s,i){return s-i},iqnDm:function(s,i){return s(i)},FnfXN:function(s,i){return s&i},rVrfN:function(s,i){return s-i},JCHWv:function(s,i){return s*i},SJeac:function(s,i){return s&i},EsUkn:function(s,i){return s|i},LxhYH:function(s,i){return s<<i},BnaIc:function(s,i){return s>>>i},rvgxf:function(s,i){return s^i},kEVlz:function(s,i){return s|i},XSydQ:function(s,i){return s&i},oJsnV:function(s,i){return s&i},RcKbj:function(s,i){return s&i},CGqkS:function(s,i){return s|i},cqhuY:function(s,i){return s&i},qaGuy:function(s,i){return s&i},zZeWi:function(s,i){return s&i},wRhvB:function(s,i){return s^i},FsKpU:function(s,i){return s-i},eFcAQ:function(s,i){return s-i},MGbKK:function(s,i){return s===i},jxHsB:function(s,i){return s&i},VBTqL:function(s,i){return s%i},tARXP:function(s,i){return s%i},SnDJJ:function(s,i){return s===i},QiNHU:function(s,i){return s===i},ASapl:"number"};for(let s=1291*-4+-5489+10653*1;n.xgXBv(s,t.length);s++)switch(n.oxVPu(lwr,t[s],s)){case 9866+1*-41+-11*892:e.noise=n.AWyhO(n.hKbkW(n.hKbkW(e.noise||-3*1001+-375+-3378*-1,s),e.i||-107*-89+9783+-7*2758),128520+-2674*-7+-81703);break;case-13*-302+-5283+1390:e.r0=n.yQIzu(e.raw[e.i],560*14+-12*484+-1777);break;case-1*-9814+-56*38+-7652:e.r1=n.SeFjR(e.i,-1*2285+-5217+242*31)?-853+6*-302+2774:n.Capci(e.raw[n.mtBAD(e.i,1031*5+-1*8227+-439*-7)],1162+-1*-8609+39*-244);break;case 3422*-1+-64*-67+831*-1:e.r2=n.iqnDm(fwr,e.i);break;case 36:e.r3=n.FnfXN(n.rVrfN(n.hKbkW(e.r0,16686+-16471*1),n.JCHWv(-767*1+14*695+-1119*8,e.i)),-1*-3299+3422+-6466);break;case-50*39+379*-1+26*91:e.r4=n.SJeac(n.EsUkn(n.LxhYH(e.r3,-11162+-11*-1015),n.BnaIc(e.r3,-43*52+-15*262+51*121)),2*2127+4362+-8361);break;case-5*-1019+-35*-173+-11112:e.r5=n.AWyhO(~n.rvgxf(e.r2,e.r1),2580+-2393*2+-23*-107);break;case 2567+1*8931+-1637*7:e.r6=n.kEVlz(n.XSydQ(e.r5,3978+208*32+-10580),n.oJsnV(n.RcKbj(~e.r5,255),82*109+2*-845+-7047)),e.r7=n.CGqkS(n.RcKbj(n.cqhuY(~e.r4,225*32+-37*-179+-13568),6*-228+4806*-1+6228),n.qaGuy(e.r4,9361+9798*-1+29*22));break;case-823*-1+3*41+-906:e.out[e.i]=n.zZeWi(n.wRhvB(e.r6,e.r7),-9918+-2*-3495+1*3183);break;case-1*8075+5083+3057:e.part=e.parts[n.FsKpU(n.eFcAQ(e.parts.length,-3*2309+-1628*-2+-1*-3672),e.i)]||"";break;case 9647+50*9+-10031*1:e.num=n.oxVPu(parseInt,e.part.replace("0x",""),-737+1046*6+-5529);break;case-2209*1+-2632+4908:n.MGbKK(n.jxHsB(e.i,8461+-2*4519+17*34),6914+2*3217+94*-142)?e.num-=11:n.MGbKK(n.VBTqL(e.i,-509+-257*-14+1543*-2),7800+-3*2600)?e.num-=4:n.MGbKK(n.tARXP(e.i,4354+29*96+-7132),1894*2+-2*3622+-48*-72)?e.num-=-7872+-9*-863+114:n.SnDJJ(n.tARXP(e.i,-1873+-1086*1+4*741),-281*23+-1717+8180)?e.num-=3944*1+31*71+6143*-1:e.num-=-1*1033+-4519+5555;break;case 68:e.out+=String.fromCharCode(n.Capci(e.num,-1*7231+1418+6068));break;case 346*-17+-8387*-1+-2408:{let i=cwr[e.i++];e.out+=n.QiNHU(typeof i,n.ASapl)?n.iqnDm(String,e.args[i]??""):n.iqnDm(dwr,i);break}default:throw new Error("bad vm opcode "+t[s]+":"+s)}return e}function pwr(t){let e=qu,r={UYiTH:function(i,a){return i<=a},iwuAz:function(i,a){return i(a)},MzhTW:function(i,a){return i<a},jhpbc:function(i,a,o){return i(a,o)}};if(!t||r.UYiTH(t.length,9309+-3361*1+743*-8))return Buffer.alloc(-1693*1+-4076*-1+-1*2383);let n=r.iwuAz(KM,t.slice(1658*-2+1*-949+4269)),s={raw:n,out:Buffer.alloc(n.length),i:0};for(s.i=-298*-3+-7109+6215*1;r.MzhTW(s.i,n.length);s.i++)r.jhpbc(Cle,iwr,s);return s.out}function mwr(t){let e=qu,r={OVsuP:function(i,a){return i(a)},bcYCI:"utf8",tFSSy:function(i,a){return i<a},qNNJV:function(i,a){return i-a},ZNLiL:function(i,a,o){return i(a,o)}},n=r.OVsuP(uwr,t).toString(r.bcYCI),s={parts:n.split("0x"),out:"",i:0};for(s.i=-3982+-22*-181;r.tFSSy(s.i,r.qNNJV(s.parts.length,-6*409+3737*-1+6192));s.i++)r.ZNLiL(Cle,awr,s);return s.out}function hwr(t){let e=qu,r={LDmDb:function(a,o){return a(o)},Rnqdr:function(a,o){return a||o},TfZEQ:"2423",wNUjB:"2324",IsIxR:function(a,o){return a<o},NzXdf:"Invalid 2423 data: missing 2324 separator",BifcB:function(a,o){return a+o},polBc:function(a,o,c){return a(o,c)},kvJwL:function(a,o,c){return a(o,c)},bACXi:function(a,o){return a(o)}},n=r.LDmDb(String,r.Rnqdr(t,""));if(!n.startsWith(r.TfZEQ))return null;let s=n.split(r.wNUjB);if(r.IsIxR(s.length,-5591*-1+-1670+-3919))throw new Error(r.NzXdf);let i=r.BifcB(s[6049+778*3+-8383].lastIndexOf(r.TfZEQ),4);return{encrypted:r.LDmDb(KM,s[-41*-16+1656+2311*-1].slice(1*739+-7845+11*646,-(-2699+2725*1))),iv:r.polBc(fft,r.LDmDb(KM,n.slice(-(-1491+41*37))),-8663+18*-93+10353),key:r.kvJwL(fft,r.bACXi(KM,s[9*-889+1042+6959].slice(i)),4220+-4204*1)}}function gwr(t,e,r,n){let s=qu,i={lUAcQ:function(o,c,u){return o(c,u)}},a={args:[t,e,r,n],out:"",i:0};return i.lUAcQ(Cle,owr,a),a.out}function zM(){let t=["smowW6dcPZK","h8kchGOO","b8kXd8k0AW","rmkWaKFdHq","oNiuoI4","ymoRW57dNmkaW7/dHrhdQmks","EtyOo8oG","WQj7nv3cHW","k18H","cmkEcSk4DW","WP3cJrJdV8kL","zmkXjW","W4SbW5FcNCoh","r8ooW4JdMCkm","j3eukI4","FH7cGmocWPm","WOhdPCklAbK","jLGtW4jC","eNRcN3NdPG","W4/dHdxcGJldK8o5BmoBgqaD","BZe0pCoy","W5y+WOvP","ttKneSoBWRe","agJdLCkWW60uWO/dUa","tIq1jCoA","m8kjg8kkAW","B8oUW6hcQvK","WOrQWQbPBq","ifJcQSkH","mSo3W6xdKSke","tSoRW5hcPGS","gSoUWQi","W5KTWO0","fwNcU2NdNN8","smoEWOq1nG","W5/dNSkGWRyv","ASoaWOiAbq","WOnzoxhcUmo8","BSoGWQi2jG","WOpcMsS","nCkEo8k0Dq","WOnxdq3dSG","hJVdKxFdSG","k8ofWRu5vW","WP4mW5W","WPNcKCo/W6qj","v2JcGCk9W6eDWOpcQK4M","W4JdHtRcHtddK8kTFSoPcamEW60","y8kEvdT6y2WyWOzY","W5T1W47dNCoN","bmopWOegWPy","W4DyWP3dTLWOW57cMCoq","wCoMWOefjq","ECoxv8kMW4VdTYxcL8k6WRfjsa","W5TDzNFdUmo2oquzWO0","yrPbWOTBELBdUCkuWQq","vmoSW43cHGS","WPmoW44","e3WsW6jj","rSkvtd1IyG","C8osWOmhga01mgyh","WOFcVmkKsCkpfhbcW7ZcIq","af3cNhtdNW","bmk0W6hcNWe","hSo2WQi4WOW","cmkqWOf2pa","fSk3WPpdTW","fKCsW5L4","eM5rrCkzW6elbveuectcVX8","utJcHSkPWQ5bWPVdTvT2","W5bOW48ze8kGbWFdR3G","WPpdRmk3cW","W49iWPhcJG","lCofW4qpqGWKn2vx","qcNcJSoGWQW","WOzPW5KZrvD2c2i","pCk6amoNWPe","WPxdISkZuGNdHW","jGZdQa","bqpdRvldQq","EX0Bmmof","kK/cQ8kRWP5V","jmkGlmoMWRW","WQhcNK7dMMe","nmkRd8ou","kSkikcaA","CcTlBNXeqchdSbZcT8o6","WP4uW5pdGW","W4awWRu6yW","WR8AW63dRwO","WQSRWPBdN8kVmG1zWQ/dNSksWRu","rCksowddGG","uSkxEHHG","W7SCWO0uqW","zCoKW7VdJmkWWObe","ggdcUwhdIq","WP7cKmoUW6ei","amktdGuj","W4OBW7JcOSoR","FYtcHLNcRmojW7XOB8oaamkJ","WPjMWQPEvSo9wWy","s8kwWQvEW68","WPfdbJRdOq","WO9IWRTZuG","WQhdUmk0mCkh","d8oSW7JdOmkB","WPNcV8oL","DmoZW4ZcShK","A8oMW4dcLXe","iwWBW7fB","iq7dSeFdHa","jCktamosWPu","DmkJaCkIuq","dCkBbmkOrW","WQFdKmklxZq","DSobW53cO3W","W4K4wey","WRWQW6ZdGK4","z8ooW5ZcPgC","WOXXWRfzzG","waiUW77cR8kL","agVdKmk5W64uWOJcQuvaDG1HlW","dwBdUHRdJG","WOhdJmkgj8kd","wrRcGmodWO4","iSkWW6fRWO7dU8ooo0hcVq","ggLvqSkyW6fOyvOeaJC","WQlcTmozW4uu","FSk0WRXQW47dSa","W7bRW4i","dCkWWPBdUCooW7Lt","W4mcW6ZcKmo4","W43dQCkvWPGe","uSoNW6qRDcNdQtFdV8ktyKBdKG","W5qPWOGLEa","BCkepCo1","dSkLW4NcVqS","fwrAq8kxW6SiqMCUoXxcKW","WQa2W7uG","WPWVW68nWO4","omkilsWC","bSojWOi2WRC","WONdJSkVqq4","W6b0W5/dGSo8","WPTWeq","hmoOW6NcIINcQ3a","WPv5WPvdua","WQ3dT8kDg8km","W40sW5KDkmoW","lSkdhCoZW47dSq","WO8hWPtcVCoB","W70aW5NcHW","W4dcUSocBX3cGCo8e2mk","BSkbk8kHArqjvwNcTW","dCkGWRP4i2S","W4HbW7ZdL8oc","W5FcRCk2gSkAtwDbW67cHW","yCoWW7tcRWy","wtTUF2y","vsVcJCoK","B8kugSkuza","WObjiW","aeGUW79R","l8oUW4q","jSk9W73cRdK","tIKx","WQ7dISkNnmkH","W4u9WPa8qeD3","WOldQmkqFW8","EmouFhTmaCoPm1iRW6P6xa","lCkKW6hcQqS","lSoPWOqvCW","jmkrma","WRuiW5tdTLe","nCkWoSkyv8kqWRfC","amkngSkOzG","W7GUW4ZcJmo/mX1mWQhdLq","lmoRhfip","gmoYWRG","W6ddNSkiWRSZW4u","rXmHW6VcR8k+W5yYc8kg","y8ksp8kM","mxu0emke","B8kjWOzjm8kErg0yW4y","ySohWQGcoa","aCkyWPtdTI3dJc/cUgtcV09ZWPC","qCoMW77cK2W","WOlcMti","pmoJW5/dRCks","DCkstqHQlCo1gSoEtmkLWP/dLW","cwlcKxJdKG","y8kmnmk6qW"];return zM=function(){return t},zM()}var ywr="http://itv666.cc/aowu/config.webp",Awr="AppV6Dxs",xwr="xgsecretcustompasswordsymbol",pft=Buffer.from(xwr,"utf8").toString("base64"),mft="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",_ft="okhttp/5.2.1",zw="",x_="",Yw="",Eft="",vft="",Sft="",Ift="",Ry={},Sle=null,Cft=0;function YM(){return Math.floor(Date.now()+Cft).toString()}function Tft(t={}){let e=t.date||t.Date;if(!e)return;let r=Date.parse(e);Number.isFinite(r)&&(Cft=r-Date.now())}function Ny(t){return encodeURIComponent(String(t??"")).replace(/%20/g,"+")}function A_(t,e){let r=e.toLowerCase();return Object.keys(t||{}).some(n=>n.toLowerCase()===r)}function hft(t){let e=String(t||"").replace(/\s+/g,""),r=e.length%4;return r!==0&&(e+="====".slice(r)),Buffer.from(e,"base64")}function bwr(t){return Buffer.from(String(t||""),"hex")}function Ile(t,e,r){let n=fd.default.createDecipheriv("aes-128-cbc",Buffer.from(e),Buffer.from(r));return Buffer.concat([n.update(t),n.final()]).toString("utf8")}function _wr(t,e){let r=fd.default.createDecipheriv("aes-128-ecb",Buffer.from(e),null);return Buffer.concat([r.update(t),r.final()]).toString("utf8")}function Ewr(t){let e=String(t||"").replace(/\n/g,"").match(/[A-Za-z0-9]{8}\*\*(.*)/s);return e?Buffer.from(e[1].trim(),"base64").toString("utf8"):t}function vwr(t){let e=hwr(t);return e?Ile(e.encrypted,e.key,e.iv):t}function Swr(t){let e=String(t||"").replace(/(\s|^)\/\/.*$/gm,""),r=e.trim();try{if(r.startsWith("{")||r.startsWith("["))return JSON.stringify(JSON.parse(r))}catch{}return e}function wft(t,e){let r=String(e||"").toLowerCase();return r.includes("gzip")?vle.default.gunzipSync(t):r.includes("deflate")?vle.default.inflateSync(t):r.includes("br")?vle.default.brotliDecompressSync(t):t}function Rft(t){let e=Buffer.from(`\r
\r
`),r=t.indexOf(e);return r<0?null:{head:t.subarray(0,r).toString("latin1"),body:t.subarray(r+e.length)}}function Iwr(t){let e=0,r=[];for(;e<t.length;){let n=t.indexOf(`\r
`,e,"latin1");if(n<0)break;let s=t.subarray(e,n).toString("latin1").split(";")[0].trim(),i=parseInt(s,16);if(!Number.isFinite(i)||(e=n+2,i===0))break;r.push(t.subarray(e,e+i)),e+=i+2}return Buffer.concat(r)}function Cwr(t){let e=Rft(t);if(!e)throw new Error("bad HTTP response");let r=e.head.split(`\r
`),n=parseInt((r[0].match(/\s(\d{3})\s/)||[])[1]||"0",10),s={};for(let a of r.slice(1)){let o=a.indexOf(":");if(o<=0)continue;let c=a.slice(0,o).trim().toLowerCase(),u=a.slice(o+1).trim();s[c]=s[c]?`${s[c]}, ${u}`:u}let i=/chunked/i.test(s["transfer-encoding"]||"")?Iwr(e.body):e.body;return{status:n,headers:s,body:i}}function Twr(t,e={},r="utf8",n=0){return new Promise((s,i)=>{let a=new URL(t),o=Number(a.port||80),c=nwr.default.createConnection({host:a.hostname,port:o}),u=[],l=!1;function d(m){let p=Rft(m);if(!p)return!1;let h=p.head.toLowerCase(),y=h.match(/\r\ncontent-length:\s*(\d+)/i);return y?p.body.length>=parseInt(y[1],10):/\r\ntransfer-encoding:\s*chunked/i.test(h)?p.body.includes(Buffer.from(`0\r
\r
`)):!1}function f(){if(l)return;let m=Buffer.concat(u);if(d(m)){l=!0,c.destroy();try{let p=Cwr(m);if(Tft(p.headers||{}),p.status>=300&&p.status<400&&p.headers.location&&n<5){let h=new URL(p.headers.location,t).toString();Tle(h,e,r,n+1).then(s,i);return}s(wft(p.body,p.headers["content-encoding"]).toString(r))}catch(p){i(p)}}}c.setTimeout(15e3),c.on("connect",()=>{let m={...e},p=[`GET ${a.pathname}${a.search} HTTP/1.1`],h=A_(m,"User-Agent");for(let[y,g]of Object.entries(m))p.push(`${y}: ${g}`);p.push(`Host: ${a.host}`),A_(m,"Connection")||p.push("Connection: Keep-Alive"),A_(m,"Accept-Encoding")||p.push("Accept-Encoding: gzip"),h||p.push(`User-Agent: ${_ft}`),c.write(p.join(`\r
`)+`\r
\r
`)}),c.on("data",m=>{u.push(m),f()}),c.on("timeout",()=>c.destroy(new Error(`timeout GET ${t}`))),c.on("error",m=>{l||i(m)}),c.on("end",f)})}function Tle(t,e={},r="utf8",n=0){return new Promise((s,i)=>{let a=new URL(t);if(a.protocol==="http:"){Twr(t,e,r,n).then(s,i);return}let o=rwr.default,c={...e};A_(c,"Accept-Encoding")||(c["Accept-Encoding"]="gzip"),A_(c,"Connection")||(c.Connection="Keep-Alive"),A_(c,"User-Agent")||(c["User-Agent"]=_ft);let u=o.request({protocol:a.protocol,hostname:a.hostname,port:a.port||void 0,method:"GET",path:`${a.pathname}${a.search}`,headers:c,timeout:15e3,rejectUnauthorized:!1},l=>{let d=l.headers.location;if(l.statusCode>=300&&l.statusCode<400&&d&&n<5){l.resume();let m=new URL(d,t).toString();Tle(m,e,r,n+1).then(s,i);return}let f=[];l.on("data",m=>f.push(m)),l.on("end",()=>{try{Tft(l.headers||{});let m=Buffer.concat(f),p=wft(m,l.headers["content-encoding"]);s(p.toString(r))}catch(m){i(m)}})});u.on("timeout",()=>u.destroy(new Error(`timeout GET ${t}`))),u.on("error",i),u.end()})}function b_(t,e={},r="utf8"){return Tle(t,e,r)}async function wwr(t,e){let r,n=e.trim();return t.includes("xpgtv.net")?r=Ile(Buffer.from(n,"base64"),"XXPGXXPGXXPGXXPG","GPXXGPXXGPXXGPXX"):t.includes("162.14.115.43")?r=Ile(bwr(n),"y1u21fuSl329o4Xr","9Amg1OE5L5zYJY01"):t.includes("lotics")?r=_wr(Buffer.from(n,"base64"),"loamen.commmmmmm"):r=vwr(Ewr(e).trim()),Swr(r)}function Rwr(t,e){let r=JSON.parse(t),n=(Array.isArray(r.sites)?r.sites:[]).find(s=>s&&s.key===e);return!n||n.ext==null?null:typeof n.ext=="string"?n.ext:JSON.stringify(n.ext)}async function Nwr(t,e){let r=await b_(t,{"User-Agent":"okhttp/3.12.11",Accept:"*/*","Accept-Encoding":"identity",Connection:"close"},"latin1"),n=await wwr(t,r);return Rwr(n,e)}function Owr(t){return pwr(t)}function kwr(t){let e=String(t||"").replace(/\\n/g,`
`).trim();if(e.includes("-----BEGIN"))return fd.default.createPublicKey(e);let r=e.replace("-----BEGIN PUBLIC KEY-----","").replace("-----END PUBLIC KEY-----","").replace(/\s+/g,"");return fd.default.createPublicKey({key:Buffer.from(r,"base64"),format:"der",type:"spki"})}function Pwr(t){let e=String(t||"").replace(/\\n/g,`
`).trim();if(e.includes("-----BEGIN"))return fd.default.createPrivateKey(e);let r=e.replace("-----BEGIN PRIVATE KEY-----","").replace("-----END PRIVATE KEY-----","").replace("-----BEGIN RSA PRIVATE KEY-----","").replace("-----END RSA PRIVATE KEY-----","").replace(/\s+/g,"");return fd.default.createPrivateKey({key:Buffer.from(r,"base64"),format:"der",type:"pkcs8"})}function Kw(t,e){let r=kwr(e),n=Buffer.from(String(t),"utf8"),s=Math.ceil((r.asymmetricKeyDetails?.modulusLength||1024)/8)-11,i=[];for(let a=0;a<n.length;a+=s){let o=n.subarray(a,Math.min(a+s,n.length));i.push(fd.default.publicEncrypt({key:r,padding:fd.default.constants.RSA_PKCS1_PADDING},o).toString("base64"))}return i.join("").replace(/\s+/g,"")}function Dwr(t){return mwr(t)}function JM(t,e){if(t=String(t??"").trim(),t.startsWith("{")||t.startsWith("["))return t;let r,n=t.indexOf(pft);if(n>=0){let o=t.slice(0,n),c=hft(t.slice(n+pft.length)).toString("utf8").trim(),u=parseInt(c,10);if(u<0||u>o.length)throw new Error(`bad cutLen=${u}, leftLen=${o.length}`);let l=o.slice(0,u),d=o.slice(u);r=Dwr(l)+d}else r=t;let s=hft(r);if(s.length%128!==0)throw new Error(`RSA cipher length is not multiple of 128: ${s.length}`);let i=Pwr(e),a=[];for(let o=0;o<s.length;o+=128)a.push(fd.default.privateDecrypt({key:i,padding:fd.default.constants.RSA_PKCS1_PADDING},s.subarray(o,o+128)));return Buffer.concat(a).toString("utf8")}function Bwr(t){let e={};try{let r=typeof t=="string"?JSON.parse(t):t||{},n=r.headers&&typeof r.headers=="object"?r.headers:null;if(!n)return e;for(let s of Object.keys(n)){let i=n[s];e[s]=String(i)}e["content-type"]="application/json; charset=utf-8"}catch(r){console.error("getHeader failed:",r.message||r)}return e}function gft(t){return{"User-Agent":t}}function Lwr(t){let e=typeof t=="string"?JSON.parse(t):t||{};return e.headers&&typeof e.headers=="object"?{...e.headers,...e}:e}function Mwr(t){return String(t||"").split(",").map(e=>e.trim()).filter(Boolean)}function Wwr(t,e,r){let n=[],s=new Set;for(let i of r){let a=String(i||"").trim();if(!a)continue;let o=a==="\u5168\u90E8"||a.startsWith("\u5168\u90E8")?{n:"\u5168\u90E8",v:""}:{n:a,v:a},c=o.v===""?"__all__":`${o.n}|${o.v}`;s.has(c)||(s.add(c),n.push(o))}return n.length&&!n.some(i=>i.v==="")&&n.unshift({n:"\u5168\u90E8",v:""}),{key:t,name:"",init:"",value:n}}function $wr(t){return""}function Uwr(t){if(!t||!t.trim())return{class:[],filters:{}};let e;try{e=JSON.parse(t)}catch{return{class:[],filters:{}}}let r=Array.isArray(e.data)?e.data:[],n=[],s={};for(let i of r){let a=String(i?.type_id??"").trim(),o=String(i?.type_name??"").trim();if(!a||!o||a==="58")continue;n.push({type_id:a,type_name:o});let c=[],u=i.type_extend&&typeof i.type_extend=="object"?i.type_extend:null;if(!u){s[a]=c;continue}for(let l of["class","area","lang","year"]){let d=Mwr(u[l]);d.length&&c.push(Wwr(l,$wr(l),d))}c.length&&(s[a]=c)}return{class:n,filters:s}}function Nft(t){let e=JSON.parse(t),r=Array.isArray(e.data)?e.data:[],n=[];for(let s of r)n.push({vod_id:String(s.vod_id??""),vod_pic:String(s.vod_pic??""),vod_name:String(s.vod_name??""),vod_remarks:String(s.vod_remarks??"")});return n}function Fwr(t,e){return!Array.isArray(t)||!e?null:t.find(r=>r&&r.name===e)||null}async function qwr(t,e){try{let r=await Nwr(ywr,Awr),n=Owr(r).toString("utf8"),s=JSON.parse(n),i=Lwr(s.headers);zw=s.host,x_=s.ek,Yw=s.dk,Eft=s.rsaM5,Sft=s.apkLength,Ift=s.pkid,Ry=Bwr(s.headers),vft=i["build-time"]||i.headers?.["build-time"]||""}catch(r){console.error("WexV6DaShiXiong init failed:",r.message||r)}return{}}async function jwr(t,e){try{let r=YM(),n=Kw(r,x_),s=await b_(`${zw}/v6/nav?csrf=${Ny(n)}&token=`,Ry);return Uwr(s)}catch(r){return console.error("WexV6DaShiXiong home failed:",r.message||r),{class:[],filters:{}}}}async function Qwr(t,e){try{let r=t.body.filters||{},n=t.body.id||"",s=t.body.page||"1",i=r.cateId==null?n:r.cateId,a=r.area==null?"":r.area,o=r.year==null?"":r.year,c=r.class==null?"":r.class,u=r.lang==null?"":r.lang,l=YM(),d=Ny(Kw(l,x_)),f=`/v6/video?area=${a}&year=${o}&pg=${s}&csrf=${d}&lang=${u}&class=${Ny(c)}&tid=${i}&order=time&token=`,m=await b_(zw+f,Ry);return m=JM(m,Yw),{page:parseInt(s,10)||1,pagecount:9999,limit:12,total:999999,list:Nft(m)}}catch(r){return console.error("WexV6DaShiXiong category failed:",r.message||r),{page:1,pagecount:1,limit:12,total:0,list:[]}}}async function Hwr(t,e){let r="",n="",s="";try{Sle=null;let i=t.body.id,a=String(Array.isArray(i)?i[0]:i),o=YM(),c=Ny(Kw(o,x_)),u=gwr(o,Eft,Sft,vft);r=u;let l=Kw(u,x_),d=Ny(l),f=`${zw}/v6/video_detail?pkid=${Ift}&ck=${d}&csrf=${c}&id=${a}&token=`,m=await b_(f,Ry);n=m,m=JM(m,Yw),s=m;let p=JSON.parse(m);if(!p.data||!p.data.vod_info)throw new Error(`unexpected detail response: ${m.slice(0,500)}`);let h=p.data.vod_info,y={vod_id:String(a),vod_name:h.vod_name||"",vod_year:h.vod_year||"",vod_content:h.vod_content||"",vod_actor:h.vod_actor||"",vod_director:h.vod_director||"",vod_play_from:"",vod_play_url:""},g=Array.isArray(h.vod_url_with_player)?h.vod_url_with_player:[];Sle=g;let A=[],b=[];for(let x of g)A.push(String(x.name??"")),b.push(String(x.url??""));return A.length&&(y.vod_play_from=A.join("$$$"),y.vod_play_url=b.join("$$$")),{list:[y]}}catch(i){return console.error("WexV6DaShiXiong detail failed:",i.message||i,"ckdata=",r,"plain=",s.slice(0,500),"raw=",n.slice(0,300),"Header=",Ry),{list:[]}}}async function Gwr(t,e){try{let r=t.body.flag||"",n=String(t.body.id||""),s=Fwr(Sle,r)||{},i=mft;Object.prototype.hasOwnProperty.call(s,"user_agent")&&(i=s.user_agent||mft);let a=s.parse_api||"";if(!a||n.includes("http"))return{url:n,header:gft(i),parse:0};let o=await b_(a+n,Ry);return o=JM(o,Yw),{url:JSON.parse(o).url||"",header:gft(i),parse:0}}catch(r){return console.error("WexV6DaShiXiong play failed:",r.message||r),{url:"",header:{},parse:0}}}async function Vwr(t,e){try{let r=t.body.wd||"",n=t.body.page||"1",s=YM(),i=Ny(Kw(s,x_)),a=`${zw}/v6/search?pg=${n}&csrf=${i}&text=${Ny(r)}&tid=0&token=`,o=await b_(a,Ry);return o=JM(o,Yw),{page:parseInt(n,10)||1,pagecount:9999,list:Nft(o)}}catch(r){return console.error("WexV6DaShiXiong search failed:",r.message||r),{page:1,pagecount:1,list:[]}}}var Oft={meta:{key:"dashixiong",name:"\u300C\u76F4\u300D\u5927\u5E08\u5144",type:3},api:async t=>{t.post("/init",qwr),t.post("/home",jwr),t.post("/category",Qwr),t.post("/detail",Hwr),t.post("/play",Gwr),t.post("/search",Vwr)}};var ky=Ce(require("node:crypto"),1);var Oy="https://yoapp.bytegooty.com/yoapp.php",Kwr="https://yoapp.bytegooty.com",Py="yoapp_45a4b99f474dbd78bec9760023749d6524efa4f9",zwr="649ff43aec4f7c9b26d4cd8454c7327f",Ywr="1F83BDCA0957AADDCD3CE53088D60FD228ADC463EBA105495E4EBAE6962B54D6",Jwr="0ef76bb9504ed221a7943892fad460e46f46baff6be593d124836282206c3f02",Xwr="49f48cf4f713d712eb4c7631d8927477",Pft="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Safari/537.36 Edg/148.0.0.0",ZM=12,wle="",__="",Jw="",XM=null;function Rle(t){return ky.default.createHash("sha256").update(String(t??""),"utf8").digest("hex")}function Zwr(t,e){return ky.default.createHmac("sha256",Buffer.from(String(t??""),"utf8")).update(String(e??""),"utf8").digest("hex")}function Nle(t,e){return ky.default.createHmac("sha256",Buffer.from(String(t??""),"utf8")).update(String(e??""),"utf8").digest("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"").replace(/[\r\n]/g,"").trim()}function Ole(){return ky.default.randomBytes(16).toString("hex")}function eRr(){let t=ky.default.randomUUID().replace(/-/g,"").toLowerCase(),e="0123456789abcdefghijklmnopqrstuvwxyz",r=[3,5,7,11,13,17,19,23],n=0;for(let i=0;i<t.length;i++)i!==1&&(n+=parseInt(t[i],16)*r[i%r.length]);let s=t.slice(0,1)+e[n%e.length]+t.slice(2);return`${s.slice(0,8)}-${s.slice(8,12)}-${s.slice(12,16)}-${s.slice(16,20)}-${s.slice(20)}`}function Dft(){let t={"User-Agent":Pft};return wle&&(t.Cookie=wle),t}function kle(t,e,r){return{...Dft(),"X-Yoapp-Timestamp":String(t||""),"X-Yoapp-Device-Id":String(__||""),"X-API-TOKEN":Py,"X-Yoapp-Nonce":String(e||""),"X-Yoapp-Sign":String(r||"")}}function Bft(){return Rle(Py.trim()+__.trim().toLowerCase()+zwr)}function tRr(){let t=Jw?Jw.trim():Bft();return Zwr(t,Ywr.trim().replace(/[:\-\s]/g,""))}function rRr(t){try{return new URL(t).searchParams.get("action")||""}catch{return""}}function nRr(t){try{let e=new URL(t).search?new URL(t).search.slice(1):"";if(!e)return"";let r=[];for(let n of e.split("&")){let s=n.indexOf("="),i=s>0?n.slice(0,s):n,a=s>=0?n.slice(s+1):"",o=i.toLowerCase();o==="token"||o==="sign"||r.push([i,a])}return r.sort((n,s)=>n[0].localeCompare(s[0])).map(([n,s])=>`${n}=${s}`).join("&")}catch{return""}}function Ple(t,e,r,n,s=""){let i=new URL(r);return[t,i.pathname,rRr(r),__,e,n,Rle(nRr(r)),Rle(s)].join(`
`)}function Xw(t){let e=ky.default.createDecipheriv("aes-256-cbc",Buffer.from(Jwr,"hex"),Buffer.from(Xwr,"hex"));return Buffer.concat([e.update(Buffer.from(String(t||""),"base64")),e.final()]).toString("utf8")}function pd(t,e={}){if(t&&typeof t=="object")return t;try{return JSON.parse(String(t||""))}catch{return e}}async function sRr(){let e=(await le.get(Kwr,{headers:{"User-Agent":Pft}})).headers?.["set-cookie"]||[];return(Array.isArray(e)?e:[e]).filter(Boolean).map(r=>String(r).split(";")[0].trim()).filter(Boolean).join("; ")}async function Zw(t,e=tRr()){let r=Date.now().toString(),n=Ole(),s=Nle(e,Ple("GET",r,t,n,""));return le.get(t,{headers:kle(r,n,s)})}async function iRr(t,e,r,n=Date.now().toString(),s=Ole()){let i=Nle(e,Ple("POST",n,t,s,r));return le.post(t,r,{headers:kle(n,s,i)})}async function Lft(t,e){try{__=eRr(),Jw="",wle=await sRr();let r=Bft(),n=Date.now().toString(),s=Ole(),i=`${Oy}?action=app_config`,a=Nle(r,Ple("GET",n,i,s,""));await le.get(i,{headers:kle(n,s,a)});let o=JSON.stringify({device_id:__,ip:""}),c=await iRr(`${Oy}?action=device_secret`,r,o,n,s),u=pd(c.data),l=pd(Xw(u.data));Jw=String(l.device_secret||"")}catch(r){console.error("AnimeFanShu init failed:",r.message||r)}return{}}async function eR(){__&&Jw||(XM||(XM=Lft().finally(()=>{XM=null})),await XM)}function kft(t){let e=[],r=new Set;for(let n of Array.isArray(t)?t:[]){let s=String(n??"").trim();if(!s||s==="\u6392\u5E8F"||s==="\u93BA\u6391\u7C2D")continue;let i=s==="\u5168\u90E8"||s.startsWith("\u5168\u90E8")||s==="\u934F\u3129\u5134"?{n:"\u5168\u90E8",v:""}:{n:s,v:s},a=i.v===""?"__all__":`${i.n}\0${i.v}`;r.has(a)||(r.add(a),e.push(i))}return e.length?(e.some(n=>n.v==="")||e.unshift({n:"\u5168\u90E8",v:""}),e):[]}function aRr(t){let e=pd(t),r=Array.isArray(e.sections)?e.sections:[],n=[],s={};for(let i of r){let a=String(i.type_id??"").trim(),o=String(i.type_name??"").trim();if(!a||!o)continue;n.push({type_id:a,type_name:o});let c=[],u=kft(i.extend_class_items),l=kft(i.extend_year_items);u.length&&c.push({key:"class",name:"",init:"",value:u}),l.length&&c.push({key:"year",name:"",init:"",value:l}),c.length&&(s[a]=c)}return{class:n,filters:s}}function Mft(t){let e=pd(t),r=[];for(let n of Object.keys(e||{})){if(n==="system_verify")continue;let s=e[n]||{};r.push({vod_id:String(s.vod_id??""),vod_name:String(s.vod_name??""),vod_pic:String(s.vod_pic??""),vod_remarks:String(s.vod_remarks??"")})}return r.filter(n=>n.vod_id&&n.vod_name)}async function oRr(t,e){await eR();try{let r=`${Oy}?action=home_sections&token=${Py}&limit=16`,n=await Zw(r);return aRr(typeof n.data=="string"?n.data:JSON.stringify(n.data||{}))}catch(r){return console.error("AnimeFanShu home failed:",r.message||r),{class:[],filters:{}}}}async function cRr(t,e){await eR();try{let r=t.body?.filters||t.body?.extend||{},n=r.cateId==null?t.body?.id||"":r.cateId,s=String(t.body?.page||"1"),i=r.year==null?"":r.year,a=r.class==null?r.type||"":r.class,o=`${Oy}?action=category_videos&token=${Py}&type_id=${n}&page=${s}&page_size=${ZM}&year=${i}&class=${encodeURIComponent(a)}&sort=time`,c=await Zw(o),u=Xw(pd(c.data).data);return{page:parseInt(s,10)||1,pagecount:9999,limit:ZM,total:999999,list:Mft(u)}}catch(r){return console.error("AnimeFanShu category failed:",r.message||r),{page:1,pagecount:1,limit:ZM,total:0,list:[]}}}async function uRr(t,e){await eR();try{let r=Array.isArray(t.body?.id)?t.body.id[0]:t.body?.id,n=String(r||""),s=`${Oy}?action=video_detail&token=${Py}&vod_id=${n}`,i=await Zw(s),a=pd(Xw(pd(i.data).data)),o={vod_id:n,vod_name:a.vod_name||"",vod_year:a.vod_year||"",vod_content:a.vod_content||"",vod_actor:a.vod_actor||"",vod_director:a.vod_director||"",vod_play_from:"",vod_play_url:""},c=[],u=[];for(let l of a.play_sources||[]){let d=l.player_name||l.from||"\u9ED8\u8BA4\u7EBF\u8DEF",f=l.from||"",p=(Array.isArray(l.episodes)?l.episodes:[]).map((h,y)=>{let g=h.name||`\u7B2C${y+1}\u96C6`,A=h.episode_id||"";return A?`${g}$${A}|||${f}|||${n}`:""}).filter(Boolean).join("#");p&&(c.push(d),u.push(p))}return o.vod_play_from=c.join("$$$"),o.vod_play_url=u.join("$$$"),{list:[o]}}catch(r){return console.error("AnimeFanShu detail failed:",r.message||r),{list:[]}}}async function lRr(t,e){await eR();try{let[r,n,s]=String(t.body?.id||"").split("|||"),i=`${Oy}?action=video_play&token=${Py}&vod_id=${s}&source=${n}&episode_index=${r}&episode_id=${r}`,a=await Zw(i);return{url:pd(Xw(pd(a.data).data)).play_url||"",header:Dft(),parse:0}}catch(r){return console.error("AnimeFanShu play failed:",r.message||r),{url:"",header:{},parse:0}}}async function dRr(t,e){await eR();try{let r=t.body?.wd||"",n=String(t.body?.page||"1"),s=`${Oy}?action=search_videos&token=${Py}&keyword=${encodeURIComponent(r)}&page=${n}&page_size=${ZM}`,i=await Zw(s),a=Xw(pd(i.data).data);return{page:parseInt(n,10)||1,pagecount:9999,list:Mft(a)}}catch(r){return console.error("AnimeFanShu search failed:",r.message||r),{page:1,pagecount:1,list:[]}}}var Wft={meta:{key:"fanshu",name:"\u300C\u76F4\u300D\u756A\u85AF",type:3},api:async t=>{t.post("/init",Lft),t.post("/home",oRr),t.post("/category",cRr),t.post("/detail",uRr),t.post("/play",lRr),t.post("/search",dRr)}};var Ble=Ce(require("node:crypto"),1);var $ft="https://app.whjzjx.cn",fRr="https://u.shytkjgs.com/user/v3/account/login",pRr="B@ecf920Od8A4df7",mRr="okhttp/4.10.0",Dle=24,t5="",e5=null;function hRr(t){return Ble.default.createHash("md5").update(String(t??"")).digest("hex")}function gRr(t){let e=Ble.default.createCipheriv("aes-128-ecb",Buffer.from(pRr,"utf8"),null);return Buffer.concat([e.update(String(t),"utf8"),e.final()]).toString("base64")}function n5(t={}){let e={"User-Agent":mRr,platform:"1",version_name:"3.9.2"};return t5&&(e.Authorization=t5),{...e,...t}}async function Uft(t,e){try{let r=Date.now(),n={first_install_time:r,last_update_time:r,install_first_open:!0,package_name:"com.jz.xydj",device:hRr(String(r)),timestamp:r},s=gRr(JSON.stringify(n)),i=await le.post(fRr,s,{headers:n5({"Content-Type":"application/json; charset=utf-8"}),transformRequest:[a=>a]});t5=String(i.data?.data?.token||"")}catch(r){console.error("XingYa init failed:",r.message||r)}return{}}async function Fft(){t5||(e5||(e5=Uft().finally(()=>{e5=null})),await e5)}function Ko(t){return String(t??"").replace(/\s+/g," ").trim()}function hp(t){return Array.isArray(t)?t:[]}function qft(t={}){return{vod_id:String(t.id??""),vod_name:Ko(t.title),vod_pic:Ko(t.cover_url),vod_remarks:t.total?`${t.total}\u96C6`:Ko(t.score_str)}}function yRr(t){let e={};for(let r of hp(t?.list)){let n=String(r.id??"").trim();if(!n)continue;let s=[],i=hp(r.alg_class).map(o=>{let c=Ko(o.class_name),u=String(o.id??"").trim();return c==="\u5168\u90E8"||u==="0"?{n:"\u5168\u90E8",v:""}:{n:c,v:u}}).filter(o=>o.n),a=hp(r.first_level_ranking).map(o=>({n:Ko(o.name),v:String(o.id??"")})).filter(o=>o.n&&o.v);i.length&&s.push({key:"class",name:"",init:"",value:i}),a.length&&s.push({key:"rank",name:"",init:"1",value:a}),s.length&&(e[n]=s)}return e}async function r5(t,e={}){return await Fft(),(await le.get(`${$ft}${t}`,{headers:n5(),...e})).data||{}}async function ARr(t,e={}){return await Fft(),(await le.post(`${$ft}${t}`,e,{headers:n5()})).data||{}}async function xRr(t,e){try{let n=(await r5("/cloud/v2/theater/classes")).data||{};return{class:hp(n.list).filter(i=>!String(i.show_type||"").includes("Bookstore")).map(i=>({type_id:String(i.id??""),type_name:Ko(i.class_name)})).filter(i=>i.type_id&&i.type_name),filters:yRr(n)}}catch(r){return console.error("XingYa home failed:",r.message||r),{class:[],filters:{}}}}async function bRr(t,e){try{let r=String(t.body?.id||""),n=Math.max(parseInt(t.body?.page||1,10)||1,1),s=t.body?.filters||t.body?.extend||{},i=[];if(r==="9"){if(n>1)return{page:n,pagecount:1,limit:0,total:0,list:[]};let o=s.rank||"1",c=await r5(`/cloud/v1/first_level_ranking/detail?id=${encodeURIComponent(o)}`);i=hp(c.data?.list)}else{let o=s.class||"0",c=await r5("/cloud/v2/theater/home_page",{params:{theater_class_id:r,class2_ids:o,type:1,page_num:n,page_size:Dle}});i=hp(c.data?.list).map(u=>u.theater||u)}let a=i.map(qft).filter(o=>o.vod_id&&o.vod_name);return{page:n,pagecount:a.length>=Dle?n+1:n,limit:r==="9"?a.length:Dle,total:a.length,list:a}}catch(r){return console.error("XingYa category failed:",r.message||r),{page:1,pagecount:1,limit:0,total:0,list:[]}}}async function _Rr(t,e){try{let r=Array.isArray(t.body?.id)?t.body.id[0]:t.body?.id,n=String(r||"");if(!n)return{list:[]};let i=(await r5("/v2/theater_parent/detail",{params:{theater_parent_id:n}})).data||{},a={vod_id:n,vod_name:Ko(i.title),vod_pic:Ko(i.cover_url),type_name:hp(i.desc_tags).map(Ko).filter(Boolean).join(","),vod_content:Ko(i.introduction),vod_play_from:"",vod_play_url:""},o=hp(i.theaters).map((c,u)=>{let l=c.num||`\u7B2C${u+1}\u96C6`,d=Ko(c.son_video_url);return d?`${l}$${d}`:""}).filter(Boolean).join("#");return o&&(a.vod_play_from="\u661F\u82BD",a.vod_play_url=o),{list:[a]}}catch(r){return console.error("XingYa detail failed:",r.message||r),{list:[]}}}async function ERr(t,e){return{url:Ko(t.body?.id),header:n5(),parse:0}}async function vRr(t,e){try{let r=Ko(t.body?.wd),n=Math.max(parseInt(t.body?.page||1,10)||1,1);if(!r)return{page:n,pagecount:1,list:[]};let s=await ARr("/v3/search",{text:r}),i=hp(s.data?.theater?.search_data).map(qft).filter(a=>a.vod_id&&a.vod_name);return{page:n,pagecount:1,list:i}}catch(r){return console.error("XingYa search failed:",r.message||r),{page:1,pagecount:1,list:[]}}}var jft={meta:{key:"xingya",name:"\u300C\u76F4\u300D\u661F\u82BD",type:3},api:async t=>{t.post("/init",Uft),t.post("/home",xRr),t.post("/category",bRr),t.post("/detail",_Rr),t.post("/play",ERr),t.post("/search",vRr)}};var E_=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"}},Lle=async(t,e)=>{await t.db.push("/live2vod",e)},SRr=async t=>{await t.db.delete("/live2vod")};async function Mle(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await E_(e.server)})}),t.put("/config",async(e,r)=>{await Lle(e.server,e.body),r.send({code:0})}),t.delete("/config",async(e,r)=>{await SRr(e.server),r.send({code:0})}),t.get("/sources",async(e,r)=>{let n=await E_(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 E_(e.server);a.sources=a.sources||[],a.sources.push({name:n,url:s,img:i||""}),await Lle(e.server,a),r.send({code:0})}),t.delete("/sources/:index",async(e,r)=>{let n=parseInt(e.params.index),s=await E_(e.server);s.sources&&n>=0&&n<s.sources.length?(s.sources.splice(n,1),await Lle(e.server,s),r.send({code:0})):r.code(404).send({code:1,msg:"\u7D22\u5F15\u65E0\u6548"})})}var zo={sources:[],def_pic:"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg"},tR={},s5={};async function IRr(t){return(await le(t,{method:"get",headers:{"User-Agent":"okhttp/3.14.9"},timeout:1e4})).data}function CRr(t){let e=t.split(`
`),r={},n=[],s=null;return e.forEach(i=>{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 TRr(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 i5(t){if(tR[t])return tR[t];let e=await IRr(t),r;/#EXTM3U/.test(e)?r=CRr(e):r=TRr(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 tR[t]=r,r}async function wRr(t,e){let r=await E_(t.server);zo.sources=r.sources||[],zo.def_pic=r.def_pic||zo.def_pic,Object.keys(tR).forEach(s=>delete tR[s]),s5={};let n=zo.sources.map(async s=>{try{let i=await i5(s.url),a=[{n:"\u5168\u90E8",v:""}];i.groupNames.forEach(o=>{a.push({n:o,v:o})}),s5[s.url]=[{key:"group",name:"",init:"",value:a}]}catch(i){console.error(`\u9884\u52A0\u8F7D\u76F4\u64AD\u6E90 ${s.name} \u5931\u8D25: ${i.message}`),s5[s.url]=[]}});return await Promise.all(n),{}}async function RRr(t,e){return{class:zo.sources.map(n=>({type_id:n.url,type_name:n.name})),filters:s5}}async function NRr(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=zo.sources.find(c=>c.url===r)?.img||"";try{let c=await i5(r),u=[],l=i?[i]:c.groupNames;for(let d of l){let f=c.groups[d];f&&f.forEach(m=>{u.push({vod_id:r+"$"+d+"$"+m.name,vod_name:m.name,vod_pic:m.logo||o||zo.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 ORr(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=zo.sources.find(f=>f.url===a),l=u?.img||"",d=u?.name||"\u76F4\u64AD\u6E90";try{let p=(await i5(a)).groups[o]?.find(g=>g.name===c);if(!p){n.push({vod_id:s,vod_name:c,vod_pic:l||zo.def_pic,vod_content:"\u672A\u627E\u5230\u9891\u9053",vod_play_from:d,vod_play_url:""});continue}let y=(p.urls||[p.url]).map((g,A)=>`\u7EBF\u8DEF${A+1}$${g}`);n.push({vod_id:s,vod_name:c,type_name:o,vod_pic:p.logo||l||zo.def_pic,vod_content:`\u9891\u9053: ${c}
\u5206\u7EC4: ${o}
\u6765\u6E90: ${d}`,vod_play_from:d,vod_play_url:y.join("#"),vod_remarks:o})}catch(f){console.error(`\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25: ${f.message}`),n.push({vod_id:s,vod_name:c,vod_pic:l||zo.def_pic,vod_content:`\u83B7\u53D6\u5931\u8D25: ${f.message}`,vod_play_from:d,vod_play_url:""})}}return{list:n}}async function kRr(t,e){return{parse:0,url:t.body.id}}async function PRr(t,e){let r=t.body.wd,n=[];for(let s of zo.sources)try{let i=await i5(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||zo.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 DRr(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 Qft={meta:{key:"live2vod",name:"\u300C\u76F4\u300D\u76F4\u64AD",type:3},api:async t=>{t.post("/init",wRr),t.post("/home",RRr),t.post("/category",NRr),t.post("/detail",ORr),t.post("/play",kRr),t.post("/search",PRr),t.get("/test",DRr)}};var Wle=Ce(Zn(),1);var Gft=process.env.JINPAI_HOST||"https://m.jiabaide.cn",a5="Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36",BRr=process.env.JINPAI_APP_KEY||"cb808529bae6b6be45ecfab29a4889bc",LRr={"User-Agent":a5,Referer:`${Gft}/`},MRr={typeList:["type",""],plotList:["class",""],districtList:["area",""],languageList:["lang",""],yearList:["year",""],serialList:["by",""]},WRr=[{n:"\u65F6\u95F4",v:"2"},{n:"\u4EBA\u6C14",v:"3"},{n:"\u8BC4\u5206",v:"4"}];function At(t){return String(t??"").trim()}function $Rr(t){return At(t).replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim()}function Vft(t={}){return Object.entries(t).filter(([,e])=>e!=null&&e!=="").map(([e,r])=>`${e}=${r}`).join("&")}function URr(t={}){let e=String(Date.now()),r={...t,key:BRr,t:e},n=Wle.default.SHA1(Wle.default.MD5(Vft(r)).toString()).toString();return{...LRr,t:e,sign:n}}async function v_(t,e={}){let r=Vft(e),n=`${Gft}${t}${r?`?${r}`:""}`,s=await le.get(n,{headers:URr(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 Kft(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 FRr({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 qRr(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 jRr(...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 QRr(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 zft(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 HRr(t=""){let e=At(t);return!e||/^\d{3,4}\s*p?$/i.test(e)?!1:/[a-z\u4e00-\u9fa5]/i.test(e)}function GRr(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 VRr(t={}){let e=[t.name,t.title,t.resolution].map(At).filter(Boolean),r=e.find(HRr);if(r)return r;let n=e.find(s=>/^\d{3,4}\s*p?$/i.test(s));return GRr(n)||n||"\u64AD\u653E"}function Hft(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=VRr(t);return{name:n,qualityLabel:r,url:e,headers:{"User-Agent":a5},priority:Yft({...t,name:n,qualityLabel:r})||1}}function Yft(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 KRr(t=[]){return t.map((e,r)=>({item:e,index:r,score:Yft(e)})).sort((e,r)=>r.score-e.score||e.index-r.index).map(({item:e})=>e)}async function zRr(){let t=[],e={},r=await v_("/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 v_("/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(MRr)){let d=c==="serialList"?[...WRr]:[{n:"\u5168\u90E8",v:""}];if(c!=="serialList"){let f=i?.[o]?.[c]||[];for(let m of f){let p=At(m.itemText);p&&d.push({n:p,v:c==="typeList"?At(m.itemValue):p})}}d.length>1&&e[o].push({key:u,name:l,init:c==="serialList"?"2":"",value:d})}}return{classes:t,filters:e}}async function YRr(t,e){return{}}async function JRr(t,e){try{let{classes:r,filters:n}=await zRr();return{class:r,filters:n}}catch(r){return console.error("jinpai home failed:",r.message),{class:[],filters:{}}}}async function XRr(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 v_("/api/mw-movie/anonymous/video/list",a))?.data?.list||[]).map(Kft).filter(u=>u.vod_id&&u.vod_name);return zft(n,i,c)}catch(a){return console.error("jinpai category failed:",a.message),{page:n,pagecount:n,limit:i,total:0,list:[]}}}async function ZRr(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 v_("/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,m)=>{let p=At(f.nid||f.episodeId||f.id);if(!p)return"";let h=jRr(f.episodeNumber,f.name,m+1),y=QRr(f.name||`\u7B2C${h||m+1}\u96C6`,h),g=FRr({vodId:c,nid:p,episodeName:y,sourceName:u,title:o.vodName});return`${y}$${g}`}).filter(Boolean);n.push({vod_id:c,vod_name:At(o.vodName),vod_pic:At(o.vodPic),type_name:At(o.vodClass||o.typeName),vod_remarks:At(o.vodRemarks),vod_year:At(o.vodYear||At(o.vodPubdate).slice(0,4)),vod_area:At(o.vodArea),vod_lang:At(o.vodLang),vod_director:At(o.vodDirector),vod_actor:At(o.vodActor),vod_content:$Rr(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 eNr(t,e){let r=At(t.body?.id),n=qRr(r);if(!n?.vodId||!n?.nid)return{parse:0,url:"",header:{}};try{let s={clientType:"3",id:n.vodId,nid:n.nid},a=(await v_("/api/mw-movie/anonymous/v2/video/episode/url",s))?.data||{},o=Array.isArray(a.list)?a.list:[],c=KRr(o.map(Hft).filter(Boolean)),u={"User-Agent":a5};if(!c.length){let l=Hft(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":a5}}}}async function tNr(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 v_("/api/mw-movie/anonymous/video/searchByWordPageable",i))?.data?.list||[]).map(Kft).filter(c=>c.vod_id&&c.vod_name);return zft(n,s,o)}catch(i){return console.error("jinpai search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}var Jft={meta:{key:"jinpai",name:"\u300C\u76F4\u300D\u91D1\u724C",type:3},api:async t=>{t.post("/init",YRr),t.post("/home",JRr),t.post("/category",XRr),t.post("/detail",ZRr),t.post("/play",eNr),t.post("/search",tNr)}};var Sm={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 rNr(){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 $le(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:`${Sm.imgHost}${e.startsWith("/")?e:`/${e}`}`:""}async function nNr(t,e){return{}}async function sNr(t,e){return{class:rNr()}}async function iNr(t,e){let r=t.body.id,s=t.body.page||1;s==0&&(s=1);try{let i=`${Sm.host}/api/crumb/list?fcate_pid=${r}&category_id=&area=&year=&type=&sort=&page=${s}`,o=(await le.get(i,{headers:Sm.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(y=>({vod_id:String(y.id),vod_name:y.title||"",vod_pic:$le(y.path||""),vod_remarks:y.mask||""})).filter(y=>y.vod_id&&y.vod_name),l=parseInt(s,10)||1,d=u.length>0,f=d?l+1:l,m=Number(o?.per_page||0)||u.length||20,p=Number(o?.total||0),h=(l-1)*m+u.length+(d?1:0);return{page:l,pagecount:f,limit:m,total:p>0?p:h,list:u}}catch{return{list:[],page:parseInt(s,10)||1,pagecount:1,limit:20,total:0}}}async function aNr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r)try{let i=`${Sm.host}/api/video/detailv2?id=${s}`,o=(await le.get(i,{headers:Sm.headers})).data.data,c={vod_id:String(o.id||s),vod_name:o.title||"",vod_pic:$le(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,m)=>{let p=f.name||f.source_name||`\u7EBF\u8DEF${m+1}`;if(p==="\u5E38\u89C4\u7EBF\u8DEF")return;let h=Array.isArray(f.source_list)?f.source_list:[],y=[];h.forEach((g,A)=>{let b=g.source_name||g.name||`\u7B2C${A+1}\u96C6`,x=g.url||g.play_url||"";x&&y.push(`${b}$${x}`)}),y.length>0&&(l.push(p),d.push(y.join("#")))}),c.vod_play_from=l.join("$$$"),c.vod_play_url=d.join("$$$"),n.push(c)}catch{}return{list:n}}async function oNr(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:Sm.headers}:{parse:1,url:n}}async function cNr(t,e){let r=t.body.page,n=t.body.wd,s=r||1;s==0&&(s=1);try{let i=`${Sm.host}/api/v2/search/videoV2?key=${encodeURIComponent(n)}&category_id=88&page=${s}&pageSize=20`,o=(await le.get(i,{headers:Sm.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(d=>({vod_id:String(d.id),vod_name:d.title||"",vod_pic:$le(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 uNr(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<a.length;c++){let u=a[c],l=o[c].split("#");for(let d=0;d<l.length&&d<2;d++)s=await t.server.inject().post(`${r}/play`).payload({flag:u,id:l[d].split("$")[1]}),n.play.push(s.json())}}}return s=await t.server.inject().post(`${r}/search`).payload({wd:"\u7231",page:1}),n.search=s.json(),n}catch(r){return e.code(500),{err:r.message,tip:"check debug console output"}}}var Xft={meta:{key:"jianpian",name:"\u300C\u76F4\u300D\u8350\u7247",type:3},api:async t=>{t.post("/init",nNr),t.post("/home",sNr),t.post("/category",iNr),t.post("/detail",aNr),t.post("/play",oNr),t.post("/search",cNr),t.get("/test",uNr)}};var md=Ce(require("node:crypto"),1);var Zft={host:"https://apinew.uozvr.com",headers:{"User-Agent":"Lavf/57.83.100",code:"GZ0369",lang:"zh_cn","Cache-Control":"no-cache","Content-Type":"application/x-www-form-urlencoded",Version:"2604028",PackageName:"com.ae06aebdbb.y286327f5a.ofe849883320260517",Ver:"3.0.3.2","api-ver":"3.0.3.2"}},o5={"User-Agent":"Lavf/57.83.100",Referer:"http://WJiZxLXA2.com/"},lNr=`-----BEGIN RSA PRIVATE KEY-----
MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1
ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU
1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcK
ZT3wj/cCI1vsCm3gj2R5SqkA9Y0CAwEAAQKBgAJH+4CxV0/zBVcLiBCHvSANm0l7
HetybTh/j2p0Y1sTXro4ALwAaCTUeqdBjWiLSo9lNwDHFyq8zX90+gNxa7c5EqcW
V9FmlVXr8VhfBzcZo1nXeNdXFT7tQ2yah/odtdcx+vRMSGJd1t/5k5bDd9wAvYdI
DblMAg+wiKKZ5KcdAkEA1cCakEN4NexkF5tHPRrR6XOY/XHfkqXxEhMqmNbB9U34
saTJnLWIHC8IXys6Qmzz30TtzCjuOqKRRy+FMM4TdwJBAJQZFPjsGC+RqcG5UvVM
iMPhnwe/bXEehShK86yJK/g/UiKrO87h3aEu5gcJqBygTq3BBBoH2md3pr/W+hUM
WBsCQQChfhTIrdDinKi6lRxrdBnn0Ohjg2cwuqK5zzU9p/N+S9x7Ck8wUI53DKm8
jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZ
K7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1b
L3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+1LrG8oa
t5lYKfpe8k83ZA==
-----END RSA PRIVATE KEY-----`,dNr=`-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDUM5+/y8sPsWkd1/RQS64X259E
UwxFXFE5HlA65MqrxnPs0JqoSRojSDy5QhwvROlaD6TwRQHKMY2OAZ6SnQeUJsCh
TEFIR9qUkwrs3/MVUMxjsv6JS6Oe/juclyJGTgVmDhB55EafXsD0SQYVj/QXXsxR
6ewR5E2kL52yAAD4yQIDAQAB
-----END PUBLIC KEY-----`,tpt="OITxa5OqAYjhswxx",rpt="rCMNwZASNBKZ8mXV",fNr="aLFBMWpxBrIDAD1Si/KVvm41",npt="/guazi/auth",pNr=1800,Kn={},rR=null,Im={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",SIGN_UP:"/App/Authentication/Device/signUp",SIGN_IN:"/App/Authentication/Device/signIn",REFRESH:"/App/Authentication/Authenticator/refresh"},mNr=[{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"}],hNr={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"}]}]},nR=new Map,gNr={category:3e5,detail:3e5,play:3e5,search:6e4};function spt(t){return md.default.createHash("md5").update(t).digest("hex")}function yNr(t){let e=Buffer.from(tpt,"utf8"),r=Buffer.from(rpt,"utf8"),n=md.default.createCipheriv("aes-128-cbc",e,r);return Buffer.concat([n.update(t,"utf8"),n.final()]).toString("hex").toUpperCase()}function ANr(t,e,r){let n=Buffer.from(e,"utf8"),s=Buffer.from(r,"utf8"),i=md.default.createDecipheriv("aes-128-cbc",n,s),a=/^[0-9a-f]+$/i.test(t)&&t.length%2===0?"hex":"base64";return Buffer.concat([i.update(Buffer.from(t,a)),i.final()]).toString("utf8")}function xNr(t){let e=Buffer.from(t,"base64"),r=128,n=[];for(let s=0;s<e.length;s+=r){let i=e.slice(s,s+r),a=md.default.privateDecrypt({key:lNr,padding:md.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 bNr(t,e,r){let n=`token_id=,token=${Kn.token||""},phone_type=1,request_key=${t},app_id=1,time=${e},keys=${r}*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br`;return spt(n).toUpperCase()}function _Nr(){let t="";for(let e=0;e<20;e+=1)t+=md.default.randomInt(10);return spt(t)}function ENr(){return md.default.publicEncrypt({key:dNr,padding:md.default.constants.RSA_PKCS1_PADDING},Buffer.from(JSON.stringify({key:tpt,iv:rpt}),"utf8")).toString("base64")}function vNr(t){let e=nR.get(t);return e?Date.now()>e.expire?(nR.delete(t),null):e.data:null}function SNr(t,e,r){nR.set(t,{data:e,expire:Date.now()+(gNr[r]||6e4)}),nR.size>200&&nR.clear()}async function sR(t,e,r="category"){let n=`${e}|${JSON.stringify(t)}`;if(r!=="none"){let p=vNr(n);if(p)return p}let s=Math.floor((Date.now()-1e3)/1e3).toString(),i=yNr(JSON.stringify(t)),a=ENr(),o=bNr(i,s,a),c=new URLSearchParams({token:Kn.token||"",token_id:"",phone_type:"1",time:s,phone_model:"xiaomi-25031",keys:a,request_key:i,signature:o,app_id:"1",ad_version:"1"}).toString(),u;try{u=await le.post(`${Zft.host}${e}`,c,{headers:{...Zft.headers,deviceId:Kn.device_id||""}})}catch{return null}if(u.status!==200||!u.data?.data?.keys||!u.data?.data?.response_key)return null;let l=xNr(u.data.data.keys);if(!l)return null;let d=JSON.parse(l),f=ANr(u.data.data.response_key,d.key,d.iv);if(!f)return null;let m=JSON.parse(f);return r!=="none"&&m&&SNr(n,m,r),m}function Ule(t){return t?.token?(Kn={...Kn,...t,token:String(t.token),token_id:String(t.app_user_id||Kn.token_id||""),registered:!0,token_refreshed_at:Math.floor(Date.now()/1e3)},!0):!1}async function INr(t){t?.server?.db&&await t.server.db.push(npt,Kn)}async function CNr(t,e=!1){!Kn.device_key&&t?.server?.db&&(Kn=await t.server.db.getObjectDefault(npt,{})),Kn={token:"",token_id:"",registered:!1,token_refreshed_at:0,...Kn,device_id:Kn.device_id||`864150060000000${md.default.randomInt(1e3,1e4)}`,device_key:Kn.device_key||_Nr()};let r=Math.floor(Date.now()/1e3);if(!e&&Kn.token&&r-Number(Kn.token_refreshed_at||0)<pNr)return!0;let n=null;Kn.registered&&Kn.token&&(n=await sR({},Im.REFRESH,"none"));let s=Ule(n);if(!s){let i={new_key:Kn.device_key,old_key:fNr};Kn.registered||(n=await sR({...i,phone_type:1,code:""},Im.SIGN_UP,"none")),s=Ule(n),s||(n=await sR(i,Im.SIGN_IN,"none"),s=Ule(n))}return s?(await INr(t),!0):!1}async function Fle(t,e=!1){if(rR)return rR;rR=CNr(t,e);try{return await rR}finally{rR=null}}function ept(t){let e={...t};return Object.prototype.hasOwnProperty.call(e,"token")&&(e.token=Kn.token||""),Object.prototype.hasOwnProperty.call(e,"token_id")&&(e.token_id=Kn.token_id||""),e}async function iR(t,e,r,n="category"){if(!await Fle(t))return null;let s=await sR(ept(e),r,n);return s&&(typeof s!="object"||Object.keys(s).length>0)||!await Fle(t,!0)||(s=await sR(ept(e),r,"none")),s}function ipt(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 TNr(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 c5(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 wNr(t,e){return await Fle(t),{}}async function RNr(t,e){return{class:mNr,filters:hNr}}async function NNr(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 iR(t,{area:s.area||"0",year:s.year||"0",pageSize:"20",sort:s.sort||"d_id",page:n,tid:String(r)},Im.INDEX_LIST,"category"),a=Array.isArray(i?.list)?i.list.map(u=>ipt(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 ONr(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 iR(t,{keywords:r,order_val:"1",page:n},Im.FIND_MORE,"search"),a=(Array.isArray(s?.list)?s.list:[]).filter(u=>String(u?.vod_name||"").toLowerCase().includes(r.toLowerCase())).map(u=>ipt(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 kNr(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=TNr(i);if(!a)continue;let[o,c]=await Promise.all([iR(t,{token_id:Kn.token_id||"",vod_id:a,mobile_time:Math.floor((Date.now()-1e3)/1e3).toString(),token:Kn.token||""},Im.PLAY_INFO,"detail"),iR(t,{vurl_cloud_id:"2",vod_d_id:a},Im.VURL_SHOW,"detail")]),u=o?.vodInfo;if(!u)continue;let l=[],d=Array.isArray(c?.list)?c.list:[];d.forEach((f,m)=>{let p=f?.play;if(!p||typeof p!="object")return;let h=[],y=[];if(Object.entries(p).forEach(([b,x])=>{x?.param&&(h.push(String(x.param)),y.push(String(b)))}),!h.length)return;y.sort((b,x)=>c5(x)-c5(b));let g=d.length===1?String(u.vod_name||"\u6B63\u7247"):String(f?.name||m+1),A=`${h[0]}||${y.join("@")}`;l.push(`${g}$${A}`)}),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 PNr(t,e){let r=String(t.body.id||"").trim();if(!r)return{parse:0,url:"",header:o5};let n=r.split("||");if(n.length<2)return{parse:0,url:r,header:o5};let s=Object.fromEntries(new URLSearchParams(n[0])),i=n[1].split("@").filter(Boolean);if(i.length>0&&(i.sort((c,u)=>c5(u)-c5(c)),s.resolution=i[0]),!s.vod_d_id||!s.vurl_id)return{parse:0,url:"",header:o5};s.vod_id=s.vod_d_id,delete s.vod_d_id,s.type="play";let a=await iR(t,s,Im.VURL_DETAIL,"none"),o=String(a?.url||a?.play_url||a?.m3u8_url||"").trim();return{parse:0,url:/^https?:\/\//i.test(o)?o:"",header:o5}}var apt={meta:{key:"guazi",name:"\u300C\u76F4\u300D\u74DC\u5B50",type:3},api:async t=>{t.post("/init",wNr),t.post("/home",RNr),t.post("/category",NNr),t.post("/detail",kNr),t.post("/play",PNr),t.post("/search",ONr)}};var gp=String(process.env.PPNIX_HOST||"https://www.ppnix.com").trim(),DNr=String(process.env.PPNIX_LANG_PATH||"/cn").trim(),cpt=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(),upt=24,BNr=10*60*1e3,LNr=[{type_id:"movie",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u7535\u89C6\u5267"}],MNr={time:"newstime",hits:"onclick",score:"rating",newstime:"newstime",onclick:"onclick",rating:"rating"},hd={expiresAt:0,filters:{},filterDef:{movie:{class:"",area:"",year:"",by:"newstime"},tv:{class:"",area:"",year:"",by:"newstime"}}};function yn(t){return t==null?"":String(t).trim()}function WNr(t=""){let e=yn(t);return e?e.startsWith("/")?e.replace(/\/+$/,""):`/${e.replace(/\/+$/,"")}`:"/cn"}var By=WNr(DNr);function lpt(t=""){let e=yn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?`${gp}${e}`:`${gp}/${e}`:`${gp}${By}/`}function Dy(t){return yn(t).replace(/<br\s*\/?>/gi," ").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/&#160;/gi," ").replace(/&amp;/gi,"&").replace(/&quot;/gi,'"').replace(/&#39;/gi,"'").replace(/&lt;/gi,"<").replace(/&gt;/gi,">").replace(/\s+/g," ").trim()}function dpt(t){let e=yn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${gp}${e}`:`${gp}/${e}`:""}function $Nr(t){let e=[],r=new Set;for(let n of Array.isArray(t)?t:[]){let s=yn(n?.vod_id||n?.vod_name);!s||r.has(s)||(r.add(s),e.push(n))}return e}function fpt(t){let e=yn(t);return e?/^https?:\/\//i.test(e)||e.startsWith("/")?e:e.startsWith("movie/")||e.startsWith("tv/")?`${By}/${e}`:`${By}/${e.replace(/^\/+/,"")}`:""}async function aR(t,e={}){let r=lpt(t),n={"User-Agent":cpt,"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||`${gp}${By}/`,...e.headers||{}},s=await le({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 ppt(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=yn(o.attr("href")||a.find("h2 a").attr("href")||""),u=fpt(c),l=Dy(a.find("img.thumb").attr("alt")||a.find("h2 a").text()||o.text()),d=dpt(a.find("img.thumb").attr("src")||a.find("img.thumb").attr("data-src")||""),f=Dy(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":""})}),$Nr(n)}function UNr(t=""){let e=(t.match(/infoid\s*=\s*(\d+)/)||[])[1]||"",r=t.match(/m3u8\s*=\s*\[(.*?)\]/s);if(!r)return{infoId:e,items:[]};let n=[],s=/'([^']*)'|"([^"]*)"/g,i;for(;(i=s.exec(r[1]))!==null;){let a=yn(i[1]||i[2]||"");a&&n.push(a)}return{infoId:e,items:[...new Set(n)]}}function FNr(t){let e=yn(t.infoId||""),r=encodeURIComponent(yn(t.param||"")),n=encodeURIComponent(yn(t.referer||"")),s=encodeURIComponent(yn(t.episodeName||""));return`${e}|${r}|${n}|${s}`}function qNr(t){try{let e=String(t||"").split("|");return{infoId:yn(e[0]||""),param:decodeURIComponent(e[1]||""),referer:decodeURIComponent(e[2]||""),episodeName:decodeURIComponent(e[3]||"")}}catch{return{}}}function jNr(t={}){let e=t&&typeof t=="object"?t:{};return{class:yn(e.class||e.type||e.cate||""),area:yn(e.area||""),year:yn(e.year||""),by:yn(e.by||e.sort||"newstime")||"newstime"}}function jle(t,e=1,r={}){let n=jNr(r),s=n.class,i=n.area,a=n.year,o=MNr[n.by]||"newstime",c=Number(e)<=1?"":`${Number(e)-1}`;return`${By}/${t}/${s}-${i}-${a}-${c}-${o}.html`}function QNr(t=[]){return[...new Set((t||[]).map(e=>yn(e)).filter(Boolean))]}function qle(t,e,r=""){let n=[];return t(e).find("a").each((s,i)=>{let a=yn(t(i).text());!a||a===r||n.push(a)}),QNr(n)}function opt(t){let e=[],r=t(".lists-content.filter dl");if(!r.length)return e;let n=qle(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=qle(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=qle(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 HNr(t=!1){if(!t&&hd.expiresAt>Date.now()&&Object.keys(hd.filters).length>0)return{filters:hd.filters,filter_def:hd.filterDef};try{let[e,r]=await Promise.all([aR(jle("movie",1,{})),aR(jle("tv",1,{}))]);hd.filters={movie:opt(De(e)),tv:opt(De(r))},hd.expiresAt=Date.now()+BNr}catch{if(!Object.keys(hd.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"}]}];hd.filters={movie:e,tv:e}}}return{filters:hd.filters,filter_def:hd.filterDef}}async function GNr(t,e){return{}}async function VNr(t,e){let{filters:r}=await HNr();return{class:LNr,filters:r}}async function KNr(t,e){try{let r=yn(t.body?.id||"movie"),n=Math.max(1,Number(t.body?.page||1)||1),s=t.body?.filters||{},i=await aR(jle(r,n,s)),a=De(i),o=ppt(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>=upt&&(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 zNr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)try{let i=fpt(s);if(!i)continue;let a=await aR(i),o=De(a),c=Dy(o("h1.product-title").text()),u=Dy(o("title").text()).replace(/\s*\([^)]*\).*/,""),l=c.replace(/\s*\([^)]*\)\s*$/,"").trim()||u,d=dpt(o("header.product-header img.thumb").attr("src")||""),f=Dy(o(".product-excerpt").filter((S,T)=>o(T).text().includes("\u7B80\u4ECB\uFF1A")).text()).replace(/^简介:/,"").trim(),m=Dy(o(".product-excerpt").filter((S,T)=>o(T).text().includes("\u5BFC\u6F14\uFF1A")).find("span").text()),p=Dy(o(".product-excerpt").filter((S,T)=>o(T).text().includes("\u4E3B\u6F14\uFF1A")).find("span").text()).replace(/\s*\/\s*/g,","),h=(c.match(/\((\d{4})\)/)||[])[1]||"",y=i.includes("/movie/")?"\u7535\u5F71":i.includes("/tv/")?"\u7535\u89C6\u5267":"",{infoId:g,items:A}=UNr(a),b=(i.match(/(\d+)\.html/)||[])[1]||"",x=A.map((S,T)=>{let I=A.length>1?`\u7B2C${T+1}\u96C6`:yn(S)||"\u6B63\u7247",R=FNr({infoId:g||b,param:S,referer:lpt(i),episodeName:I});return`${I}$${R}`});n.push({vod_id:i,vod_name:l,vod_pic:d,type_name:y,vod_year:h,vod_director:m,vod_actor:p,vod_content:f,vod_play_from:x.length?"PPnix":"",vod_play_url:x.join("#")})}catch{continue}return{list:n}}async function YNr(t,e){try{let r=qNr(t.body?.id||""),n=yn(r.infoId),s=yn(r.param);if(!n||!s)return{parse:0,url:yn(t.body?.id||"")};let i=yn(r.referer||`${gp}${By}/`);return{parse:0,url:`${gp}/info/m3u8/${n}/${encodeURIComponent(s)}.m3u8`,header:{Referer:i,Origin:gp,"User-Agent":cpt}}}catch{return{parse:1,url:yn(t.body?.id||""),header:{}}}}async function JNr(t,e){try{let r=yn(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 aR(`${By}/search/${s}--.html${i}`),o=De(a),c=ppt(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>=upt?n+1:n,list:c}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}var mpt={meta:{key:"ppnix",name:"\u300C\u76F4\u300DPPnix",type:3},api:async t=>{t.post("/init",GNr),t.post("/home",VNr),t.post("/category",KNr),t.post("/detail",zNr),t.post("/play",YNr),t.post("/search",JNr)}};var jn={key:"anime1",name:"Anime1\u52D5\u756B",host:"https://anime1.me",listUrl:"https://d1zquzjgwo9yb.cloudfront.net/",playApi:"https://v.anime1.me/api",pic:"https://sta.anicdn.com/playerImg/8.jpg",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",timeout:15e3},oR=48,XNr=5*60*1e3,ZNr=60,hpt=(()=>{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"}]})(),l5={expireAt:0,list:[]},u5=null;function Ly(t){return De(`<div>${String(t||"")}</div>`).text().replace(/\s+/g," ").trim()}function Gle(t=jn.host){return{"User-Agent":jn.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}function cR(t,e=jn.host){let r=String(t||"").trim();if(!r)return"";try{return new URL(r,e).href}catch{return""}}function Vle(t){let e=String(t||"").trim();if(!e)return"";try{let n=new URL(e,jn.host).searchParams.get("cat");if(n)return n}catch{}return e.replace(/^\/?\?cat=/,"")}function eOr(t){let e=String(t||"").trim();if(/^https?:\/\//i.test(e))return e;if(e.startsWith("/"))return cR(e);let r=Vle(e);return r?`${jn.host}/?cat=${encodeURIComponent(r)}`:jn.host}function tOr(t){let e=String(t||"").trim();return e?e.startsWith("//")?`https:${e}`:cR(e,jn.host):""}function rOr(t){if(!Array.isArray(t))return null;let e=String(t[0]??"").trim(),r=Ly(t[1]);return!e||!r?null:{id:e,vod_id:e,vod_name:r,vod_pic:jn.pic,vod_remarks:Ly(t[2]),vod_year:String(t[3]??"").trim(),type_name:Ly(t[4]),vod_actor:Ly(t[5])}}async function Hle(t,e={}){let r=cR(t,e.base||jn.host),n=await le({url:r,method:"get",timeout:e.timeout||jn.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...Gle(e.referer||jn.host),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function nOr(){let t=await le({url:`${jn.listUrl}?_=${Date.now()}`,method:"get",timeout:jn.timeout,responseType:"text",transformResponse:[n=>n],validateStatus:()=>!0,headers:Gle(jn.host)});if(t.status<200||t.status>=300)throw new Error(`HTTP ${t.status}`);let e=JSON.parse(String(t.data||"{}")),r=Object.values(e).map(rOr).filter(Boolean);return l5={expireAt:Date.now()+XNr,list:r},r}async function d5(){return l5.expireAt>Date.now()&&l5.list.length>0?l5.list:(u5||(u5=nOr().finally(()=>{u5=null})),u5)}function gpt(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 ypt(t,e,r=oR){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 sOr(t,e){let r=Vle(e);return t.find(n=>n.id===r||n.vod_id===r)}function iOr(t){return Ly(t).replace(/[$#]/g," ").trim()}function aOr(t,e){let r=Ly(t),n=r.match(/\[(.*)\]/);return iOr(n?.[1]||r||`\u7B2C${e+1}\u96C6`)}function oOr(t){return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}function cOr(t){try{let e=JSON.parse(Buffer.from(String(t||""),"base64").toString("utf8"));return e&&typeof e=="object"?e:{}}catch{return{}}}function uOr(t,e,r){let n=De(t||"");n(".site-main article").each((s,i)=>{let a=String(n(i).find("[data-apireq]").first().attr("data-apireq")||"").trim();if(!a||r.has(a))return;let o=n(i).find(".entry-title").first().text();r.add(a),e.push({name:aOr(o,e.length),apiReq:a})})}async function lOr(t,e){let r=[],n=new Set,s=new Set,i=t,a=e;for(let o=0;o<ZNr&&i;o+=1){n.add(a),uOr(i,r,s);let c=De(i||"");if(o===0&&r.length===0){let l=cR(c(".cat-links a").first().attr("href"),a);if(l&&!n.has(l)){a=l,i=await Hle(a,{referer:e});continue}}let u=cR(c(".nav-previous a").first().attr("href"),a);if(!u||n.has(u))break;a=u,i=await Hle(a,{referer:e})}return r.reverse()}function dOr(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 Qle(t,e=jn.host){let r={"User-Agent":jn.ua,Referer:e||jn.host};return t&&(r.Cookie=t),r}async function fOr(t,e){let r=await le({url:jn.playApi,method:"post",data:`d=${t}`,timeout:jn.timeout,responseType:"text",transformResponse:[i=>i],validateStatus:()=>!0,headers:{...Gle(jn.host),"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);let n=JSON.parse(String(r.data||"{}")),s=tOr(n?.s?.[0]?.src);if(!s)throw new Error("empty play url");return{url:s,cookie:dOr(r.headers?.["set-cookie"])}}async function pOr(t,e){return{}}async function mOr(t,e){try{let r=gpt(await d5(),"\u9023\u8F09\u4E2D").slice(0,oR);return{class:hpt,filters:{},list:r}}catch(r){return console.error("anime1 home failed:",r.message),{class:hpt,filters:{},list:[]}}}async function hOr(t,e){let r=t.body?.id||t.body?.tid||"\u9023\u8F09\u4E2D",n=t.body?.page||1;try{return ypt(gpt(await d5(),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:oR,total:0}}}async function gOr(t,e){let r=String(t.body?.wd||"").trim(),n=t.body?.page||1;if(!r)return{list:[],page:1,pagecount:1,limit:oR,total:0};try{let s=r.toLowerCase(),i=(await d5()).filter(a=>a.vod_name.toLowerCase().includes(s));return ypt(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:oR,total:0}}}async function yOr(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 d5().catch(()=>[]);for(let a of n){let o=Vle(a),c=eOr(a);try{let u=await Hle(c),l=De(u||""),d=sOr(i,a),f=Ly(l(".page-title, h1").first().text()),p=(await lOr(u,c)).map(h=>`${h.name}$${oOr({apiReq:h.apiReq,referer:c})}`).join("#");s.push({vod_id:o||a,vod_name:d?.vod_name||f||o||a,vod_pic:d?.vod_pic||jn.pic,vod_remarks:d?.vod_remarks||"",vod_year:d?.vod_year||"",type_name:d?.type_name||"",vod_actor:d?.vod_actor||"",vod_content:d?.vod_remarks||"",vod_play_from:"Anime1",vod_play_url:p})}catch(u){console.error("anime1 detail failed:",a,u.message)}}return{list:s}}async function AOr(t,e){let r=String(t.body?.id||"").trim(),n=cOr(r),s=String(n.apiReq||r).trim(),i=n.referer||jn.host;if(!s)return{parse:0,jx:0,url:"",header:Qle("",i)};try{let a=await fOr(s,i);return{parse:0,jx:0,url:a.url,playId:a.url,header:Qle(a.cookie,jn.host)}}catch(a){return console.error("anime1 play failed:",a.message),{parse:0,jx:0,url:"",header:Qle("",i)}}}var Apt={meta:{key:jn.key,name:"\u300C\u76F4\u300DAnime1",type:3},api:async t=>{t.post("/init",pOr),t.post("/home",mOr),t.post("/category",hOr),t.post("/detail",yOr),t.post("/play",AOr),t.post("/search",gOr)}};var My="https://gimy01.tv",_pt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",xOr=[{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"}],xpt={\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 Wy(t){return String(t||"").replace(/\/+$/,"")}function Ept(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/&amp;/gi,"&").replace(/&quot;/gi,'"').replace(/&#39;/g,"'").replace(/\s+/g," ").trim()}function Jo(t){let e=Ept(t);return Object.keys(xpt).forEach(r=>{e=e.replace(new RegExp(r,"g"),xpt[r])}),e}function bOr(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function $y(t){let e=String(t||"").trim().replace(/^["']|["']$/g,"");return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?"https:"+e:e.startsWith("/")?Wy(My)+e:Wy(My)+"/"+e.replace(/^\.\//,""):""}function f5(t){return{"User-Agent":_pt,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t||Wy(My)+"/"}}function _Or(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 EOr(t){return new Promise(e=>setTimeout(e,t))}function vOr(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 uR(t,e={}){let r=Number.isInteger(e.retries)?e.retries:2,n;for(let s=0;s<=r;s+=1)try{let i=await le(t,{method:e.method||"get",headers:{...f5(e.referer),...e.headers||{}},data:e.data,timeout:e.timeout||2e4,responseType:"text",transformResponse:[a=>a]});return _Or(i.data)}catch(i){if(n=i,s>=r||!vOr(i))throw i;await EOr(300*(s+1))}throw n}function SOr(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 IOr(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 vpt(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 Spt(t){return/^https?:\/\//i.test(t)&&/(?:\.m3u8|\.mp4|\.flv|\.m4v|\.m4s)(?:[?#]|$)/i.test(t)}function Ipt(t){let e=String(t||"").trim();if(!e)return"";if(Spt(e))return e;let r=vpt(e);if(r&&typeof r=="object"){let s=Ipt(r.url||r.video||r.playurl);if(s)return s}let n=e.match(/https?:\/\/[^"'<>\s]+(?:\.m3u8|\.mp4|\.flv|\.m4v)(?:[^"'<>\s]*)?/i);return n?n[0]:""}function Cpt(t,e){let r=String(t||""),n=String(e||"");if(/^JDQM-/i.test(r)||/^JDQM$/i.test(n))return"JDQM";if(/^JDHG-/i.test(r)||/^JDHG$/i.test(n))return"JDHG";if(/^JD-/i.test(r)||/^(?:JD4K|JD2K)$/i.test(n)&&/^JD/i.test(r))return"JD2K";if(/^JK2-/i.test(r)||/^JK2$/i.test(n))return"JK2";if(/^NSYS-/i.test(r)||/^NSYS$/i.test(n))return"NSYS";if(/^NBY-/i.test(r)||/^NBY$/i.test(n))return"NBY";if(/^JinLiDj-/i.test(r)||/^djplayer$/i.test(n))return"djplayer";if(/^(?:znjson|znkan)-/i.test(r)||/^znjson$/i.test(n))return"znjson";let s=r.match(/^(JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)-/i);return s?s[1].toUpperCase():/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(n)?n.toUpperCase():/(?:iqiyi\.com|bilibili\.com|v\.qq\.com|sohu\.com|pptv\.com|letv\.com|xigua\.com|mgtv\.com)/i.test(r)?"etcjc":/v\.youku\.com/i.test(r)?"kmjc":"normal"}function COr(t,e){let r=Cpt(t,e);return/^(?:JD4K|JD2K|JDQM|JDHG)$/i.test(r)?"d":/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(r)?"j":r==="normal"?"o":"v"}function TOr(t,e,r,n){let s="https://player.gimy.bot/"+COr(t,e)+"/",i=Cpt(t,e),a=n||r,o=s+"?url="+encodeURIComponent(t);return o+="&jctype="+encodeURIComponent(i),a&&(o+="&next="+encodeURIComponent("//"+a.replace(/^https?:\/\//i,""))),{parseBase:s,referer:o}}function bpt(t,e=Wy(My)){return{"User-Agent":_pt,Referer:t||Wy(My)+"/",Origin:e}}function wOr(t){return{vod_id:t.vod_id||"",vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||""}}function Tpt(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=$y(c);if(!/(?:\/detail\/|\/vod\/)\d+\.html/i.test(u)||n[u])return;let l=Jo(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=$y(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")||""),m=d.html()||o.parent().html()||"",p=String(m).match(/(?:更新至第?\d+集|更新第?\d+集|\(?\d+全\)?|全\d+集|已完結|已完结|HD中字|HD|TC|HC|搶先版|抢先版)/i);n[u]=!0,r.push(wOr({vod_id:u,vod_name:l,vod_pic:f,vod_remarks:p?Jo(p[0]):""}))}),r}function Yo(t,e){let r=new RegExp("<span[^>]*>\\s*"+bOr(e)+"\\s*[\uFF1A:]\\s*<\\/span>([\\s\\S]*?)<\\/(?:li|div)>","i"),n=String(t||"").match(r);return n?Jo(n[1]):""}function ROr(t){let e=[],r=[],n=new Set,s=(c,u)=>(Jo(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 m=t(f),p=m.attr("href")||"",h=$y(p);if(!h||l.has(h))return;l.add(h);let y=s(m.attr("title")||m.text(),"\u7B2C"+(u.length+1)+"\u96C6");u.push(y+"$"+h)}),u},a=(c,u,l)=>{if(!u.length)return;let d=Jo(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 m=Jo(l.attr("data-line-name")||f.text()||l.text());d&&m&&o.set(d,m)}),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=Jo(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=Jo(l.prevAll("li").first().text())||d;d&&!e.some(m=>m.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 NOr(t,e){return{}}async function OOr(t,e){return{class:xOr}}async function kOr(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 uR(Wy(My)+"/type/"+r+(n>1?"-"+n:"")+".html"),i=De(s),a=Tpt(i);return{page:n,pagecount:a.length>0?n+1:n,list:a}}async function POr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=/^https?:\/\//i.test(i)?i:$y(i),o=await uR(a),c=De(o),u=ROr(c),l=c("h1.text-overflow, h1").first().text()||c("title").text(),d=Yo(o,"\u985E\u5225")||Yo(o,"\u7C7B\u522B"),f=d.match(/\b(?:19|20)\d{2}\b/)?.[0]||"";n.push({vod_id:a,vod_name:Jo(l.replace(/(?:線上看|线上看)[\s\S]*$/i,"")),vod_pic:$y(c("meta[property='og:image']").attr("content")||(c(".details-pic .video-pic").attr("style")||"").match(/url\(([^)]+)\)/)?.[1]||c("img").first().attr("src")||""),vod_content:Jo(c(".switch-box .text, .details-content .text, .details-content, .detail-sketch").first().text()||c("meta[name='description']").attr("content")||""),vod_remarks:Yo(o,"\u72C0\u614B")||Yo(o,"\u72B6\u6001"),type_name:Jo(d.replace(/\s*[·.]\s*(?:19|20)\d{2}\b.*$/,"")),vod_year:Yo(o,"\u5E74\u4EE3")||Yo(o,"\u5E74\u4EFD")||f,vod_area:Yo(o,"\u570B\u5BB6/\u5730\u5340")||Yo(o,"\u56FD\u5BB6/\u5730\u533A")||Yo(o,"\u5730\u5340")||Yo(o,"\u5730\u533A"),vod_actor:Yo(o,"\u4E3B\u6F14")||Jo(c("li:contains('\u4E3B\u6F14') a, .detail__meta div:contains('\u4E3B\u6F14') a").map((m,p)=>c(p).text()).get().join(" / ")),vod_director:Yo(o,"\u5C0E\u6F14")||Yo(o,"\u5BFC\u6F14")||Jo(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((m,p)=>c(p).text()).get().join(" / ")),vod_play_from:u.playFrom,vod_play_url:u.playUrl})}return{list:n}}async function DOr(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,url:""};let n=/^https?:\/\//i.test(r)?r:$y(r);try{let s=await uR(n,{referer:n}),i=SOr(s),a=IOr(i),o=String(i?.from||t.body?.flag||"").trim();if(!a)return{parse:1,url:n,header:f5(n)};if(Spt(a))return{parse:0,url:a,header:bpt(n)};let c=i?.link_next?$y(i.link_next):"",u=TOr(a,o,n,c),l=await uR(u.parseBase+"parse.php?url="+encodeURIComponent(a)+"&_t="+Date.now(),{referer:u.referer,headers:{Accept:"application/json, text/plain, */*"}}),d=vpt(l),f=Ipt(d?.url||d?.video||d?.playurl);return f?{parse:0,url:f,header:bpt(u.referer,"https://player.gimy.bot")}:{parse:1,url:a,header:f5(n)}}catch(s){return console.error("gimy play failed:",s.message),{parse:1,url:n,header:f5(n)}}}async function BOr(t,e){let r=Ept(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=Wy(My)+"/search/-------------.html?wd="+encodeURIComponent(r)+"&page="+n,i=await uR(s),a=De(i),o=Tpt(a,a(".box-main-content").first());return{page:n,pagecount:o.length>0?n+1:n,list:o}}var wpt={meta:{key:"gimy",name:"\u300C\u76F4\u300D\u5267\u8FF7",type:3},api:async t=>{t.post("/init",NOr),t.post("/home",OOr),t.post("/category",kOr),t.post("/detail",POr),t.post("/play",DOr),t.post("/search",BOr)}};var S_="https://www.dbku.tv",LOr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36",MOr=2e4,Rpt=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u8FDE\u7EED\u5267"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"}],WOr={\u7C7B\u578B:"tid",\u5267\u60C5:"class",\u5730\u533A:"area",\u5E74\u4EFD:"year",\u8BED\u8A00:"lang",\u5B57\u6BCD:"letter",\u6392\u5E8F:"by"},$Or={area:1,by:2,class:3,lang:4,letter:5,year:11},p5={expireAt:0,value:null};function I_(t){return String(t||"").replace(/\/+$/,"")}function mi(t=""){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/&amp;/gi,"&").replace(/&quot;/gi,'"').replace(/&#39;/g,"'").replace(/\s+/g," ").trim()}function Cm(t=""){let e=String(t||"").trim().replace(/^["']|["']$/g,"");return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?"https:"+e:e.startsWith("/")?I_(S_)+e:I_(S_)+"/"+e.replace(/^\.\//,""):""}function m5(t){return{"User-Agent":LOr,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t||I_(S_)+"/"}}async function dR(t,e={}){let r=/^https?:\/\//i.test(t)?t:Cm(t),n=await le(r,{method:e.method||"get",headers:{...m5(e.referer),...e.headers||{}},data:e.data,timeout:e.timeout||MOr,responseType:"text",transformResponse:[s=>s]});return String(n.data||"")}function UOr(t){let e=String(t?.url||"").trim(),r=String(t?.encrypt||"").trim();if(!e)return"";if(r==="1")try{return decodeURIComponent(e)}catch{return e}if(r==="2")try{return decodeURIComponent(Buffer.from(e,"base64").toString("utf8"))}catch{try{return Buffer.from(e,"base64").toString("utf8")}catch{return e}}return e}function FOr(t){let e=String(t||"").match(/var\s+player_data\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i)||String(t||"").match(/player_data\s*=\s*(\{[\s\S]*?\})\s*;/i);if(!e)return null;try{return JSON.parse(e[1])}catch{return null}}function qOr(t){return/^https?:\/\//i.test(t)&&/(?:\.m3u8|\.mp4|\.flv|\.m4v|\.m4s)(?:[?#]|$)/i.test(t)}function jOr(t,e=1,r={}){let n=new Array(12).fill("");n[0]=String(r.tid||t||"1").trim(),n[1]=String(r.area||"").trim(),n[2]=String(r.by||r.sort||"").trim(),n[3]=String(r.class||"").trim(),n[4]=String(r.lang||"").trim(),n[5]=String(r.letter||"").trim(),n[8]=String(e||1).trim(),n[11]=String(r.year||"").trim();let s=n.map(i=>encodeURIComponent(i)).join("-");return`${I_(S_)}/vodshow/${s}.html`}function QOr(t,e){let r=String(t||"").match(/\/vodshow\/([^/?#]+)\.html/i);if(!r)return"";let n=decodeURIComponent(r[1]).split("-");if(e==="tid")return n[0]||"";let s=$Or[e];return s===void 0?"":n[s]||""}function HOr(t){let e={};return t(".myui-screen__list").each((r,n)=>{let s=mi(t(n).find("li:first a").text()),i=WOr[s];if(!i)return;let a=[];t(n).find("li a").slice(1).each((o,c)=>{let u=mi(t(c).text());if(!u)return;let l=t(c).attr("href")||"",d=o===0?"":QOr(l,i);a.push({n:u,v:d})}),a.length>1&&(e[i]={key:i,name:"",init:"",value:a})}),Object.values(e)}async function GOr(){if(p5.value&&p5.expireAt>Date.now())return p5.value;let t={};return await Promise.all(Rpt.map(async e=>{try{let r=await dR(`${I_(S_)}/vodshow/${e.type_id}-----------.html`),n=De(r),s=HOr(n);s.length&&(t[e.type_id]=s)}catch(r){console.error(`dbku filter fetch failed ${e.type_id}:`,r.message)}})),p5={expireAt:Date.now()+6*60*60*1e3,value:t},t}function Npt(t,e){let r=e&&e.length?e:t.root(),n=[],s=new Set;return r.find(".myui-vodlist__box").each((i,a)=>{let o=t(a),c=o.find('a.myui-vodlist__thumb[href*="/voddetail/"]').first(),u=c.attr("href")||"",l=u.match(/\/voddetail\/\d+\.html/i)?u:"",d=mi(c.attr("title")||o.find(".title a").first().text());!l||!d||s.has(l)||(s.add(l),n.push({vod_id:l,vod_name:d,vod_pic:Cm(c.attr("data-original")||c.find("img").attr("data-original")||c.find("img").attr("src")||""),vod_remarks:mi(c.find(".pic-text").text())}))}),n.length||r.find(".myui-vodlist__media li").each((i,a)=>{let o=t(a),c=o.find('a[href*="/voddetail/"]').first(),u=c.attr("href")||"",l=u.match(/\/voddetail\/\d+\.html/i)?u:"",d=mi(c.attr("title")||o.find(".title a").first().text());!l||!d||s.has(l)||(s.add(l),n.push({vod_id:l,vod_name:d,vod_pic:Cm(o.find("[data-original]").first().attr("data-original")||o.find("img").first().attr("src")||""),vod_remarks:mi(o.find(".pic-text, .pic-tag").first().text())}))}),n}function lR(t,e){let r=t(".myui-content__detail p.data").filter((s,i)=>mi(t(i).text()).includes(`${e}\uFF1A`)).first();if(!r.length)return"";let n=r.clone();return n.find(".text-muted, .split-line").remove(),mi(n.text().replace(new RegExp(`^${e}[\uFF1A:]?`),""))}function VOr(t){let e=[],r=[];if(t('.tab-content [id^="playlist"]').each((n,s)=>{let i=[];t(s).find('a[href*="/vodplay/"]').each((a,o)=>{let c=mi(t(o).text()),u=t(o).attr("href")||"";!c||!u||i.push(`${c}$${Cm(u)}`)}),i.length&&(e.push(n===0?"\u72EC\u64AD\u5E93":`\u72EC\u64AD\u5E93${n+1}`),r.push(i.join("#")))}),!r.length){let n=[];t('a[href*="/vodplay/"]').each((s,i)=>{let a=mi(t(i).text()),o=t(i).attr("href")||"";!a||!o||!/第|正片|HD|全集|期|集/i.test(a)||n.push(`${a}$${Cm(o)}`)}),n.length&&(e.push("\u72EC\u64AD\u5E93"),r.push([...new Set(n)].join("#")))}return{playFrom:e.join("$$$"),playUrl:r.join("$$$")}}async function KOr(t,e){return{}}async function zOr(t,e){return{class:Rpt,filters:await GOr()}}async function YOr(t,e){let r=String(t.body?.id||"1").trim(),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=t.body?.filters||{},i=jOr(r,n,s),a=await dR(i),o=De(a),c=Npt(o,o("#content-container").first()),u=mi(o(".myui-page").first().text()),l=Number.parseInt(u.match(/\d+\s*\/\s*(\d+)/)?.[1]||"",10),d=o(".myui-page a").filter((f,m)=>mi(o(m).text())==="\u4E0B\u4E00\u9875").length>0;return{page:n,pagecount:l||(d?n+1:n),limit:48,total:(l||(d?n+1:n))*48,list:c}}async function JOr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=Cm(s);if(!i)continue;let a=await dR(i),o=De(a),c=VOr(o);n.push({vod_id:String(s||""),vod_name:mi(o(".myui-content__detail h1.title").first().text()||o("title").text().replace(/线上看[\s\S]*$/i,"")),vod_pic:Cm(o(".myui-content__thumb img").first().attr("data-original")||o("meta[property='og:image']").attr("content")||""),type_name:lR(o,"\u5206\u7C7B"),vod_year:lR(o,"\u5E74\u4EFD"),vod_area:lR(o,"\u5730\u533A"),vod_remarks:mi(o('.myui-content__detail .data:contains("\u66F4\u65B0") .text-red').first().text()),vod_actor:lR(o,"\u4E3B\u6F14"),vod_director:lR(o,"\u5BFC\u6F14"),vod_content:mi(o("#desc .data p").first().text()||o("#desc .sketch").first().text()),vod_play_from:c.playFrom,vod_play_url:c.playUrl})}return{list:n}}async function XOr(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,url:""};let n=Cm(r);try{let s=await dR(n,{referer:n}),i=FOr(s),a=UOr(i);return qOr(a)?{parse:0,url:a,header:m5(n)}:{parse:1,url:a||n,header:m5(n)}}catch(s){return console.error("dbku play failed:",s.message),{parse:1,url:n,header:m5(n)}}}async function ZOr(t,e){let r=mi(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_(S_)}/vodsearch/-------------.html?wd=${encodeURIComponent(r)}&page=${n}`,i=await dR(s),a=De(i),o=Npt(a,a("#content-container").first()),c=mi(a(".myui-page").first().text()),u=Number.parseInt(c.match(/\d+\s*\/\s*(\d+)/)?.[1]||"",10),l=a(".myui-page a").filter((d,f)=>mi(a(f).text())==="\u4E0B\u4E00\u9875").length>0;return{page:n,pagecount:u||(l?n+1:n),list:o}}var Opt={meta:{key:"dbku",name:"\u300C\u76F4\u300D\u72EC\u64AD\u5E93",type:3},api:async t=>{t.post("/init",KOr),t.post("/home",zOr),t.post("/category",YOr),t.post("/detail",JOr),t.post("/play",XOr),t.post("/search",ZOr)}};var Kle="https://hanxiaoquan.hanju.workers.dev",ekr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",tkr=[{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 zle(t){return String(t||"").replace(/\/+$/,"")}function gd(t){return String(t||"").replace(/\s+/g," ").trim()}function rkr(t){let e=String(t||"").trim();return e?e.startsWith("//")?"https:"+e:/^https?:\/\//i.test(e)?e:zle(Kle)+(e.startsWith("/")?e:"/"+e):""}function kpt(){let t=zle(Kle);return{"User-Agent":ekr,Accept:"application/json, text/plain, */*","Content-Type":"application/json",Origin:t,Referer:t+"/"}}async function Yle(t,e,r=3e4){let n=await le(zle(Kle)+t,{method:"post",headers:kpt(),data:e||{},timeout:r,responseType:"json"});return typeof n.data=="string"?JSON.parse(n.data):n.data||{}}function Jle(t){return{vod_id:String(t?.vod_id||""),vod_name:gd(t?.vod_name),vod_pic:rkr(t?.vod_pic),vod_remarks:gd(t?.vod_remarks||t?.vod_class),vod_year:gd(t?.vod_year),vod_director:gd(t?.vod_director),vod_actor:gd(t?.vod_actor),vod_content:gd(t?.vod_content)}}function C_(t){return String(t||"").toLowerCase().replace(/\s+/g,"").replace(/[·•・\-—_::,,.。'"“”‘’!?!?()()\[\]【】]/g,"")}function nkr(t,e){let r=C_(e),n=C_(t?.vod_name),s=C_(t?.vod_remarks),i=C_(t?.vod_actor),a=C_(t?.vod_director),o=C_(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 skr(t,e,r){let n=[],s=Array.isArray(t)?t:[];for(let i of s){let a=Jle(i);if(!a.vod_id||!a.vod_name||r[a.vod_id])continue;let o=nkr(a,e);o<=0||(r[a.vod_id]=!0,a._searchScore=o,n.push(a))}return n}function ikr(t){let e=Jle(t);e.type_name=gd(t?.vod_class),e.vod_area=gd(t?.vod_area)||"\u97E9\u56FD";let n=(Array.isArray(t?.vod_play_url)?t.vod_play_url:[]).map((s,i)=>{let a=gd(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 akr(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 okr(t,e){return{}}async function ckr(t,e){return{class:tkr}}async function ukr(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 Yle("/api/list",{c_id:r,page:String(n)}),i=(Array.isArray(s?.data)?s.data:[]).map(Jle).filter(a=>a.vod_id&&a.vod_name);return{page:n,pagecount:akr(s,n,i),total:s?.total||i.length,list:i}}async function lkr(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 Yle("/api/detail",{b_id:i});a?.data&&n.push(ikr(a.data))}return{list:n}}async function dkr(t,e){let r=String(t.body?.id||"").trim();return r?{parse:0,url:r,header:kpt()}:{parse:1,url:""}}async function fkr(t,e){let r=gd(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 Yle("/api/search",{keyword:r,page:String(o)},6e4),u=skr(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 Ppt={meta:{key:"hanxiaoquan",name:"\u300C\u76F4\u300D\u97E9\u5C0F\u5708",type:3},api:async t=>{t.post("/init",okr),t.post("/home",ckr),t.post("/category",ukr),t.post("/detail",lkr),t.post("/play",dkr),t.post("/search",fkr)}};var Zle=Ce(require("node:vm"),1),Eo=Ce(Zn(),1);var wa={key:"wbbb",name:"\u6B6A\u6BD4\u5DF4\u535C",host:"https://wbbb1.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36",timeout:2e4},Dpt=[{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"}],pkr=/^(?:lzm3u8|bfzym3u8)$/i;function Bpt(t){return String(t||"").replace(/\/+$/,"")}function $s(t,e,r=1,n=""){let s=String(t||"").match(e);return s&&s[r]||n}function Os(t=""){return String(t).replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/&amp;/gi,"&").replace(/&quot;/gi,'"').replace(/&#39;/g,"'").replace(/\s+/g," ").trim()}function Xle(t=""){return Os(t).replace(/\s*\/\s*/g,"/").replace(/^\/+|\/+$/g,"").trim()}function Lpt(t=""){return String(t).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function vo(t=""){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?Bpt(wa.host)+e:Bpt(wa.host)+"/"+e.replace(/^\.\//,""):""}function mkr(t=""){let e=String(t||"").trim();if(!e)return"";if(e.startsWith("//"))return e;if(/^https?:\/\//i.test(e))try{let r=new URL(e);return`//${r.host}${r.pathname}${r.search}${r.hash}`}catch{}if(e.startsWith("/"))try{return`//${new URL(wa.host).host}${e}`}catch{}return e}function hkr(t){return(Array.isArray(t)?t:[]).map(e=>String(e||"").split(";")[0].trim()).filter(Boolean).join("; ")}function Upt(t=`${wa.host}/`){return{"User-Agent":wa.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}async function w_(t,e={}){let r=/^https?:\/\//i.test(t)?t:vo(t),n=await le({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||wa.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...Upt(e.referer),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function gkr(t,e={}){let r=await le({url:t,method:e.method||"get",data:e.data,timeout:e.timeout||wa.timeout,validateStatus:()=>!0,headers:e.headers||{}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);return typeof r.data=="string"?JSON.parse(r.data):r.data}function ede(t=""){let e=Os(String(t||"")).replace(/\s+/g,"").trim();return!e||/^(?:排序|选择播放源|切换播放源|更多|展开|收起)$/i.test(e)}function ykr(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 Akr(t=""){if(t&&typeof t=="object"&&!Array.isArray(t)){let i=vo(t.playUrl||t.playId||t.url||t.id||""),a=Os(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=vo(e.slice(r+1).trim());return!n||!s?null:{name:n,id:s,playId:s,playUrl:s,url:s}}function Mpt(t,e,r=0){if(ede(t))return null;let n=Os(String(t||"")).replace(/\s+/g," ").trim()||`\u7EBF\u8DEF${r+1}`,s=new Set,i=[];for(let a of Array.isArray(e)?e:[]){let o=Akr(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 xkr(t){let e=$s(t,/href=["']\/detail\/(\d+)\.html["']/i,1,""),r=Os($s(t,/<div class=["']module-(?:poster-item-title|card-item-title)["']>([\s\S]*?)<\/div>/i,1,""))||$s(t,/alt=["']([^"']+)["']/i,1,""),n=vo($s(t,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),s=Os($s(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 rde(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:Os(s[2]),vod_pic:vo($s(a,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),vod_remarks:Os($s(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=xkr(s[1]);a.vod_id&&a.vod_name&&r.push(a)}return r}function bkr(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=$s(s,/data-dropdown-value\s*=\s*['"]([^'"]+)['"]/i,1,"").trim();if(i){ede(i)||e.push(i);continue}let a=Os(n[1]||"").trim();a&&!ede(a)&&e.push(a)}return e}function _kr(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=vo(c[1]),l=Os(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=>`${Os(i[2]).trim()||"\u64AD\u653E"}$${vo(i[1])}`)]:e}function Ekr(t="",e=""){let r=Os($s(t,/<a[^>]+module-play-list-link[^"']*active[^"']*[^>]*>([\s\S]*?)<\/a>/i,1,"")),n=Os($s(t,/(?:正在播放|当前播放)[^::]*[::]\s*([\s\S]*?)(?:<|$)/i,1,"")),s=r||n;return e&&s&&(s=s.replace(new RegExp(`^${Lpt(e)}\\s*`),"").trim(),s=s.replace(new RegExp(`^\u300A?${Lpt(e)}\u300B?\\s*`),"").trim()),s.trim()}function vkr(t="",e={}){let r=String(e?.vod_data?.vod_name||"").trim(),n=Ekr(t,r);return`\u5728\u7EBF\u64AD\u653E${r}${n?` ${n}`:""}`.trim()||r||"\u5728\u7EBF\u64AD\u653E"}function Skr(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 Ikr(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 vo(r)}function tde(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)||pkr.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 Wpt(t=""){let e=String(t||"").trim();if(/^[A-Za-z0-9+/]+={0,2}$/.test(e)&&e.length%4===0)try{return Eo.default.enc.Base64.parse(e)}catch{}return Eo.default.enc.Utf8.parse(e)}function Ckr(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:Eo.default,URL,URLSearchParams,Buffer,atob:i=>Buffer.from(i,"base64").toString("binary"),btoa:i=>Buffer.from(i,"binary").toString("base64"),setTimeout:e,setInterval:()=>0,clearTimeout:e,clearInterval:e,fetch:async()=>({ok:!0,status:200,headers:new Map,text:async()=>"",json:async()=>({})}),localStorage:{getItem:()=>null,setItem:e,removeItem:e},sessionStorage:{getItem:()=>null,setItem:e,removeItem:e},navigator:{userAgent:wa.ua,clipboard:{writeText:async()=>{}}},document:{title:"wbbb-parser",body:{},addEventListener:e,querySelector:()=>null,createElement:()=>({style:{},click:e}),getElementById:()=>({style:{},addEventListener:e,play:async()=>{},pause:e})},location:{origin:n.origin,pathname:n.pathname,search:n.search,href:n.toString(),host:n.host},window:null,top:null,parent:null,self:null,$:r,jQuery:r,Artplayer(){return{on:e,once:e,emit:e,destroy:e,template:{},plugins:{},setting:{show:e},controls:{add:e},layers:{add:e},events:{proxy:e},notice:{show:e},storage:{get:()=>null,set:e}}},animation:{}};return s.window=s,s.top=s,s.parent=s,s.self=s,s}async function Tkr(t,e){let r=$s(e,/<script[^>]+src=["']([^"']*setting\.js[^"']*)["']/i,1,"");if(!r)throw new Error("setting.js missing");let n=new URL(r,t).toString(),i=`${await w_(n,{referer:t})}
;globalThis.__wbbbResolveRuntime={ urlValueurl, keyValue, vkeyValue, ckeyValue, nextParam, titleParam };`,a=Ckr(t);Zle.default.createContext(a),Zle.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 wkr(t,e,r){let n=mkr(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 le.get(i,{timeout:wa.timeout,responseType:"text",transformResponse:[y=>y],validateStatus:()=>!0,headers:Upt(`${wa.host}/`)});if(a.status<200||a.status>=300)throw new Error(`HTTP ${a.status}`);let o=String(a.data||""),c=hkr(a.headers?.["set-cookie"]),u=await Tkr(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(),m=await gkr(d,{method:"post",data:f,headers:{"User-Agent":wa.ua,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Referer:i,Origin:"https://xn--qvr2v.850088.xyz",...c?{Cookie:c}:{}}});if(!m||Number(m.code)!==200||!m.url)throw new Error(m?.msg||"parse api failed");let p=String(m.url||"").trim(),h="";if(p&&u&&typeof u.decrypt=="function")try{h=(u.decrypt(p)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}if(!h&&p&&u&&typeof u.deplay=="function")try{let y=String(u.deplay(m.aes_key||"")||"").trim(),g=String(u.deplay(m.aes_iv||"")||"").trim();if(y&&g){h=(Eo.default.AES.decrypt(p,Eo.default.enc.Utf8.parse(y),{iv:Eo.default.enc.Utf8.parse(g),mode:Eo.default.mode.CBC,padding:Eo.default.pad.Pkcs7}).toString(Eo.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}}catch{}if(!h){let y=Wpt(m.aes_key||""),g=Wpt(m.aes_iv||"");if(p&&y&&g)try{h=(Eo.default.AES.decrypt(p,y,{iv:g,mode:Eo.default.mode.CBC,padding:Eo.default.pad.Pkcs7}).toString(Eo.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}}if(!h&&/^https?:\/\//i.test(p)&&(h=p),!h)try{h=decodeURIComponent(p)}catch{h=p}return h=vo(h),tde(h,m.type||"")||(h=i),{url:h,type:m.type||"",parsePageUrl:i}}function T_(t={}){return{"User-Agent":wa.ua,Referer:`${wa.host}/`,Origin:wa.host,...t}}function $pt(t,e={}){return{parse:1,jx:1,url:t,playId:t,urls:[{name:"\u55C5\u63A2\u7EBF\u8DEF",url:t,playId:t}],header:T_(e)}}async function Rkr(t,e){return{}}async function Nkr(t,e){try{let r=await w_("/");return{class:Dpt,filters:{},list:rde(r).slice(0,40)}}catch(r){return console.error("wbbb home failed:",r.message),{class:Dpt,filters:{},list:[]}}}async function Okr(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 w_(s),a=rde(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 kkr(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=ykr(i),o=/^https?:\/\//i.test(a)?a:`/detail/${a}.html`,c=await w_(o),u=[...c.matchAll(/<div class=["']module-info-tag-link["']>([\s\S]*?)<\/div>/gi)].map(h=>h[1]),l=bkr(c),d=_kr(c),f=[];if(d.forEach((h,y)=>{let g=Mpt(l[y]||`\u7EBF\u8DEF${y+1}`,h,y);g&&f.push(g)}),f.length===0){let h=new Set,y=[...c.matchAll(/<a[^>]+href=["']([^"']*\/(?:vplay|play)\/[^"']+\.html)["'][^>]*>([\s\S]*?)<\/a>/gi)].map((A,b)=>{let x=vo(A[1]),S=Os(A[2]).trim()||`\u7B2C${b+1}\u96C6`;return!x||h.has(x)?"":(h.add(x),`${S}$${x}`)}).filter(Boolean),g=Mpt(l[0]||"\u64AD\u653E\u7EBF\u8DEF",y,0);g&&(f=[g])}let m=f.map(h=>h.name),p=f.map(h=>h.url);s.push({vod_id:a,vod_name:Os($s(c,/<h1[^>]*>([\s\S]*?)<\/h1>/i,1,"")),vod_pic:vo($s(c,/<div class=["']module-item-pic["']>[\s\S]*?<img[^>]+data-original=["']([^"']+)["']/i,1,""))||vo($s(c,/<div class=["']module-item-pic["']>[\s\S]*?<img[^>]+(?:data-src|src)=["']([^"']+)["']/i,1,"")),type_name:Xle(u[2]||""),vod_year:Os(u[0]||""),vod_area:Os(u[1]||""),vod_remarks:Os($s(c,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""))||Os($s(c,/\u66f4\u65b0\u81f3[^<\s]+/,0,"")),vod_actor:Xle($s(c,/\u4e3b\u6f14:[\s\S]*?<div[^>]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_director:Xle($s(c,/\u5bfc\u6f14:[\s\S]*?<div[^>]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_content:Os($s(c,/<div class=["']module-info-introduction-content[^"']*["'][^>]*>([\s\S]*?)<\/div>/i,1,"")),vod_play_from:m.join("$$$"),vod_play_url:p.join("$$$")})}catch(a){console.error("wbbb detail failed:",i,a.message)}return{list:s}}async function Pkr(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 w_(s),a=rde(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 Dkr(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:vo(r);try{let s=await w_(n,{referer:n}),i=Skr(s);if(!i)return{parse:0,jx:0,url:n,playId:n,header:T_()};let a=String(i.from||t.body?.flag||"").trim(),o=Ikr(i.url,i.encrypt);if(tde(o,a))return{parse:0,jx:0,url:o,playId:o,header:T_({Referer:n})};let c=String(i.parse||i.jx||"").trim();if(c){let u=/^https?:\/\//i.test(c)?`${c}${encodeURIComponent(o)}`:vo(`${c}${encodeURIComponent(o)}`);return{parse:0,jx:0,url:u,playId:u,header:T_({Referer:n})}}try{let u=await wkr(String(i.url||""),n,vkr(s,i));if(u?.url){let l=T_({Referer:u.parsePageUrl||n});return tde(u.url,u.type||"")?{parse:0,jx:0,url:u.url,playId:u.url,header:l}:$pt(u.url,l)}}catch(u){console.warn("wbbb resolve failed:",u.message)}return $pt(o||n,{Referer:n})}catch(s){return console.error("wbbb play failed:",s.message),{parse:1,jx:1,url:n,playId:n,header:T_({Referer:n})}}}var Fpt={meta:{key:wa.key,name:"\u300C\u76F4\u300D\u6B6A\u6BD4",type:3},api:async t=>{t.post("/init",Rkr),t.post("/home",Nkr),t.post("/category",Okr),t.post("/detail",kkr),t.post("/play",Dkr),t.post("/search",Pkr)}};var pR={key:"girigiri",name:"girigiri\u7231\u52A8\u6F2B",host:"https://ani.girigirilove.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",timeout:15e3},Ra=pR.host,nde=pR.ua,fR=48;function ju(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/&amp;/gi,"&").replace(/&quot;/gi,'"').replace(/&#39;/g,"'").replace(/\s+/g," ").trim()}function yd(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Ra+e:Ra+"/"+e:""}function qpt(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function Bkr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function Lkr(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 Mkr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}async function g5(t,e={}){let r=/^https?:\/\//i.test(t)?t:yd(t),n=await le({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||pR.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":nde,Referer:e.referer||Ra+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function Wkr(t,e={}){let r=/^https?:\/\//i.test(t)?t:yd(t),n=await le.get(r,{timeout:e.timeout||pR.timeout,validateStatus:()=>!0,headers:{"User-Agent":nde,Referer:e.referer||Ra+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function Gpt(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:ju(i),vod_pic:yd(a),vod_remarks:ju(o)})}return e}function $kr(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:ju(n[4]),vod_pic:yd(n[2]),vod_remarks:ju(n[3]),vod_content:ju(n[5])});return e}function h5(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?Gpt(n[1]):[]}var jpt=[{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"}],So={n:"\u5168\u90E8",v:""},R_={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},N_={key:"month",name:"",init:"",value:[So,{n:"\u4E00\u6708",v:"\u4E00\u6708"},{n:"\u56DB\u6708",v:"\u56DB\u6708"},{n:"\u4E03\u6708",v:"\u4E03\u6708"},{n:"\u5341\u6708",v:"\u5341\u6708"}]},O_={key:"year",name:"",init:"",value:(()=>{let t=[So];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})()},Qpt={2:[{key:"class",name:"",init:"",value:[So,...["\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}))]},N_,O_,{key:"lang",name:"",init:"",value:[So,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"}]},{key:"version",name:"",init:"",value:[So,{n:"TV\u756A",v:"TV\u756A"},{n:"\u6CE1\u9762\u756A",v:"\u6CE1\u9762\u756A"},{n:"OVA",v:"OVA"}]},{key:"state",name:"",init:"",value:[So,{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"}]},R_],3:[{key:"class",name:"",init:"",value:[So,...["\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}))]},N_,O_,{key:"lang",name:"",init:"",value:[So,{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},R_],21:[{key:"class",name:"",init:"",value:[So,...["\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}))]},N_,O_,{key:"lang",name:"",init:"",value:[So,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u4E2D\u6587",v:"\u4E2D\u6587"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},R_],20:[{key:"class",name:"",init:"",value:[So,...["\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}))]},N_,O_,{key:"lang",name:"",init:"",value:[So,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u6CF0\u8BED",v:"\u6CF0\u8BED"}]},R_],24:[{key:"class",name:"",init:"",value:[So,...["\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}))]},N_,O_,R_],26:[{key:"class",name:"",init:"",value:[So,{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u5468\u8FB9\u6D3B\u52A8",v:"\u5468\u8FB9\u6D3B\u52A8"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},N_,O_,R_]};function Ukr(t,e,r={}){let n=t||"2",s=p=>encodeURIComponent(p||""),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):"",m=`/show/${n}-${s(o)}-${s(i)}-${s(a)}-${s(d)}----${f}-${s(l)}--${s(c)}/`;return u&&(m+=`version/${s(u)}/`),Ra+m}function Hpt(t,e={}){return{"User-Agent":nde,Referer:t||Ra+"/",Origin:Ra,...e}}async function Fkr(t,e){return{}}async function qkr(t,e){try{let r=await g5(Ra+"/"),n=Lkr([...$kr(r),...h5(r,"\u6700\u8FD1\u5927\u5BB6\u5728\u770B"),...h5(r,"\u6216\u8BB8\u4F60\u611F\u5174\u8DA3\uFF1F"),...h5(r,"\u65E5\u756A"),...h5(r,"\u5267\u573A\u7248")]).slice(0,40);return{class:jpt,filters:Qpt,list:n}}catch(r){return console.error("girigiri home failed:",r.message),{class:jpt,filters:Qpt,list:[]}}}async function jkr(t,e){let r=String(t.body?.id||t.body?.tid||"2"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=Ukr(r,n,s);try{let a=await g5(i),o=Gpt(a);if(!o.length)return{list:[],page:n,pagecount:n,limit:fR,total:0};let u=[`--------${n+1}---/`,`-${n+1}---/`].some(l=>a.includes(l));return{list:o,page:n,pagecount:u?n+1:n,limit:fR,total:n*fR+(u?fR:o.length)}}catch(a){return console.error("girigiri category failed:",a.message),{list:[],page:n,pagecount:n,limit:fR,total:0}}}async function Qkr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=`${Ra}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`;return{list:((await Wkr(n,{headers:{"X-Requested-With":"XMLHttpRequest",Referer:`${Ra}/search/-------------/`}}))?.list||[]).map(i=>({vod_id:`/GV${i.id}/`,vod_name:i.name||"",vod_pic:yd(i.pic||""),vod_remarks:""}))}}catch(n){return console.error("girigiri search failed:",n.message),{list:[]}}}async function Hkr(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=yd(i);if(a)try{let o=await g5(a),c=ju((o.match(/<title>(.*?)<\//i)||[])[1]||"").replace(/_.*$/,""),u=yd((o.match(/<img[^>]+data-src="([^"]+\.webp)"/)||[])[1]||""),l=ju((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/)||[])[1]||""),d=ju((o.match(/<p>([^<]*?(?:更新|點|支持杜比)[^<]*?)<\/p>/)||[])[1]||""),f=(o.match(/20\d{2}/)||[])[0]||"",m=[],p=/<a class="swiper-slide"[^>]*>[\s\S]*?&nbsp;([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,h;for(;(h=p.exec(o))!==null;)m.push({name:ju(h[1]),count:Number(h[2]||0)});let y=o.match(/<div class="anthology wow[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),g=y?y[0]:"",A=[],b=/<div class="anthology-list-box[^>]*>([\s\S]*?)<\/div><\/div>/g,x;for(;(x=b.exec(g))!==null;){let I=[],R=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=R.exec(x[1]))!==null;){let k=ju(N[2]),B=N[1];B.includes("/play")&&I.push({name:k,playId:qpt({playUrl:B,epName:k,vodName:c,referer:i})})}I.length&&A.push(I)}if(!A.length){let I=[],R=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=R.exec(g||o))!==null;){let k=N[1];if(!k.includes("/play"))continue;let B=ju(N[2]);I.push({name:B,playId:qpt({playUrl:k,epName:B,vodName:c,referer:i})})}I.length&&A.push(I)}let S=[],T=[];for(let I=0;I<A.length;I+=1){let R=m[I]?.name||`\u7EBF\u8DEF${I+1}`,N=A[I].map(k=>`${k.name}$${k.playId}`);S.push(R),T.push(N.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:d,vod_content:l,vod_director:"",vod_actor:"",vod_year:f,vod_play_from:S.join("$$$"),vod_play_url:T.join("$$$")})}catch(o){console.error("girigiri detail failed:",i,o.message)}}return{list:s}}async function Gkr(t,e){let r=String(t.body?.id||"").trim(),n=Bkr(r),s=n.playUrl||r||"",i=yd(n.referer||"/"),a=yd(s);try{let c=(await g5(a,{referer:i||Ra+"/",headers:{Origin:Ra,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=u.url||"";u.encrypt===2?l=Mkr(l):u.encrypt===1&&(l=decodeURIComponent(l));let d=l;/^https?:\/\//i.test(d)||(d=yd(d));let f=new URL(d).origin,m=f===Ra?i||Ra+"/":f+"/";return{parse:0,url:d,header:Hpt(m)}}catch(o){return console.error("girigiri play failed:",o.message),{parse:0,url:a,header:Hpt(Ra+"/")}}}var Vpt={meta:{key:pR.key,name:"\u300C\u76F4\u300D\u7231\u52A8\u6F2B",type:3},api:async t=>{t.post("/init",Fkr),t.post("/home",qkr),t.post("/category",jkr),t.post("/detail",Hkr),t.post("/play",Gkr),t.post("/search",Qkr)}};var Tm=Ce(Zn(),1),yp="https://www.cycani.org",zpt="https://player.cycanime.com",Ypt="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",Vkr="YLwJVbXw77pk2eOrAnFdBo2c3mWkLtodMni2wk81GCnP94ZltW",mR=48,Uy=[{type_id:"20",type_name:"TV\u756A\u7EC4"},{type_id:"21",type_name:"\u5267\u573A\u756A\u7EC4"}],Kkr={\u7C7B\u578B:"class",\u5E74\u4EFD:"year",\u5B57\u6BCD:"letter"},zkr={class:"\u7C7B\u578B",year:"\u5E74\u4EFD",letter:"\u5B57\u6BCD",by:"\u6392\u5E8F"},Ykr={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"}]},sde=new Map;function sa(t){return String(t||"").replace(/&nbsp;/gi," ").replace(/<br\s*\/?>/gi," ").replace(/<[^>]+>/g," ").replace(/\s+/g," ").trim()}function Jpt(t){let e=Number.parseInt(t,10);return Number.isFinite(e)&&e>0?e:1}function hR(t,e=yp){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:r.startsWith("//")?`https:${r}`:new URL(r,e).toString():""}function Xpt(t=`${yp}/`,e="text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8"){return{"User-Agent":Ypt,Accept:e,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t}}async function Fy(t,e=`${yp}/`,r){let n=hR(t),s=await le.get(n,{headers:Xpt(e,r),timeout:15e3,maxContentLength:3*1024*1024});return typeof s.data=="string"?s.data:String(s.data||"")}async function Jkr(t,e=`${yp}/`){let r=hR(t),n=await le.get(r,{headers:{...Xpt(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 y5(t){return encodeURIComponent(String(t||"").trim())}function Zpt(t,e=1,r={}){let n=String(t||Uy[0].type_id).trim()||Uy[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",y5(i)),a&&s.push("class",y5(a)),o&&s.push("letter",y5(o)),c&&s.push("year",y5(c)),e>1&&s.push("page",String(e)),`/show/${n}${s.length?`/${s.join("/")}`:""}.html`}function e0t(t){return(String(t||"").match(/\/bangumi\/(\d+)\.html/i)||[])[1]||""}function Xkr(t){let e=String(t||"").match(/\/watch\/(\d+)\/(\d+)\/(\d+)\.html/i);return e?`${e[1]}/${e[2]}/${e[3]}`:""}function Zkr(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 Kpt(t,e){let r=t(e),n=r.find('a[href*="/bangumi/"]').first(),s=n.attr("href")||"",i=e0t(s);if(!i)return null;let a=r.find("img").first(),o=sa(n.attr("title")||a.attr("alt")||n.text());if(!o)return null;let c=a.attr("data-src")||a.attr("data-original")||a.attr("src")||"",u=sa(r.find(".public-list-subtitle,.public-list-prb,.slide-info-remarks").first().text());return{vod_id:i,vod_name:o,vod_pic:hR(c),vod_remarks:u}}function ide(t){let e=De(t||""),r=[],n=new Set;return e(".public-list-box,.swiper-slide").each((s,i)=>{let a=Kpt(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=Kpt(e,e(i).closest("li,div").first());!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r}function t0t(t){let e=De(t||""),r=[],n=new Set;return e(".ec-casc-list .nav-swiper").each((s,i)=>{let a=e(i),o=sa(a.find(".filter-text span").first().text()),c=a.find(".vod-ajax-select[data-type]").first().attr("data-type")||Kkr[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),m=sa(f.find("a").first().text()||f.text()),p=String(f.attr("data-val")||"").trim();!m||m==="\u5206\u7C7B\u8D44\u6E90\u4E0D\u4EE3\u8868\u5168\u90E8\u8D44\u6E90"||!p&&m!=="\u5168\u90E8"||u.some(h=>h.v===p)||u.push({n:m,v:p})}),u.length>0&&(n.add(c),r.push({key:c,name:zkr[c]||o||c,init:"",value:u}))}),r.push(Ykr),r}async function ePr(t){let e=String(t||Uy[0].type_id);if(sde.has(e))return sde.get(e);let r=await Fy(Zpt(e,1),`${yp}/`),n=t0t(r);return sde.set(e,n),n}function tPr(t,e,r){let s=sa(De(t||"")(".page-tip").first().text()).match(/当前\s*(\d+)\s*\/\s*(\d+)\s*页/);return s?Number.parseInt(s[2],10)||e:r>=mR?e+1:e}async function rPr(){let t={};await Promise.all(Uy.map(async r=>{t[r.type_id]=await ePr(r.type_id).catch(()=>[])}));let e=await Fy("/");return{class:Uy,filters:t,list:ide(e).slice(0,mR)}}async function nPr(t){let e=t.body||{},r=String(e.id||Uy[0].type_id).trim()||Uy[0].type_id,n=Jpt(e.page),s=e.filters||e.extend||e.ext||{},i=Zpt(r,n,s),a=await Fy(i,`${yp}/show/${r}.html`),o=ide(a),c=tPr(a,n,o.length);return{page:n,pagecount:c,limit:mR,total:c*mR,list:o,filter:t0t(a)}}function sPr(t,e){let r=De(t||""),n=e||e0t(r('link[rel="canonical"]').attr("href")||""),s=sa(r(".slide-info-title").first().text())||sa(r("h1,h2,h3").first().text())||sa(r("title").text().replace(/[_-].*$/,"")),i=hR(r(".detail-pic img,.player-vod-no1 img").map((m,p)=>r(p).attr("data-src")||r(p).attr("data-original")||r(p).attr("src")).get().find(m=>m&&!String(m).startsWith("data:image"))),a=sa(r(".slide-info-remarks").first().text()),o=sa(r("#height_limit,.small-text,.vod-content,.text").first().text()),c=r(".partition").filter((m,p)=>/演员/.test(r(p).text())).find("a").map((m,p)=>sa(r(p).text())).get().filter(Boolean).join(","),u=r(".partition").filter((m,p)=>/导演/.test(r(p).text())).find("a").map((m,p)=>sa(r(p).text())).get().filter(Boolean).join(","),l=r(".partition").filter((m,p)=>/类型/.test(r(p).text())).find("a").map((m,p)=>sa(r(p).text())).get().filter(Boolean).join(","),d=[],f=[];return r(".anthology-list-box").each((m,p)=>{let h=sa(r(".anthology-tab a").eq(m).clone().children().remove().end().text())||`CYC_${m+1}`,y=[];r(p).find('a[href*="/watch/"]').each((g,A)=>{let b=Xkr(r(A).attr("href"));if(!b)return;let x=sa(r(A).text())||`\u7B2C${y.length+1}\u96C6`;y.push(`${x}$${b}`)}),y.length>0&&(d.push(h),f.push(y.join("#")))}),{vod_id:n,vod_name:s,vod_pic:i,vod_remarks:a,type_name:l,vod_actor:c,vod_director:u,vod_content:o,vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")}}async function iPr(t){let e=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],r=[];for(let n of e.filter(Boolean)){let s=Zkr(n);if(!s)continue;let i=await Fy(`/bangumi/${s}.html`,`${yp}/`);r.push(sPr(i,s))}return{list:r}}function aPr(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 oPr(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 cPr(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 uPr(t){let e=De(t||""),r=String(e('meta[name="viewport"]').attr("id")||"").replace(/^now_/,""),n=String(e('meta[charset="UTF-8"]').attr("id")||e("meta[charset]").attr("id")||"").replace(/^now_/,"");return!r||!n||r.length!==n.length?"":n.split("").map((s,i)=>({id:Number(s),text:r[i]||""})).sort((s,i)=>s.id-i.id).map(s=>s.text).join("")}function lPr(t,e){let r=uPr(e);if(!r)return"";let n=Tm.default.MD5(r+Vkr).toString(),s=Tm.default.enc.Utf8.parse(n.substring(16)),i=Tm.default.enc.Utf8.parse(n.substring(0,16));return Tm.default.AES.decrypt(t,s,{iv:i,mode:Tm.default.mode.CBC,padding:Tm.default.pad.Pkcs7}).toString(Tm.default.enc.Utf8)}async function dPr(t,e){if(/^https?:\/\//i.test(t))return t;let r=`${zpt}/?url=${encodeURIComponent(t)}`,n=await Fy(r,`${yp}${e}`),s=cPr(n);return lPr(s.url||"",n)||""}async function fPr(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 Fy(n,`${yp}/bangumi/${r[1]}.html`),i=oPr(s);if(!i)return{parse:0,url:"",header:{}};let a=aPr(i);return{parse:0,jx:0,url:await dPr(a,n),header:{"User-Agent":Ypt,Referer:`${zpt}/`}}}async function pPr(t){let e=String(t.body?.wd||"").trim(),r=Jpt(t.body?.page);if(!e)return{page:r,pagecount:1,limit:20,total:0,list:[]};let n=await Jkr(`/index.php/ajax/suggest?mid=1&limit=20&page=${r}&wd=${encodeURIComponent(e)}`),i=(Array.isArray(n?.list)?n.list:[]).map(a=>({vod_id:String(a.id||""),vod_name:sa(a.name),vod_pic:hR(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 mPr(t,e){return{}}async function hPr(){let t=await Fy("/");return{list:ide(t).slice(0,mR)}}var r0t={meta:{key:"ciyuancheng",name:"\u300C\u76F4\u300D\u6B21\u5143\u57CE",type:3},api:async t=>{t.post("/init",mPr),t.post("/home",rPr),t.post("/homeVod",hPr),t.post("/category",nPr),t.post("/detail",iPr),t.post("/play",fPr),t.post("/search",pPr)}};var k_={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},ki=k_.host,yR=k_.ua,n0t=40;function Na(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/&amp;/gi,"&").replace(/&#39;/g,"'").replace(/&quot;/g,'"').replace(/\s+/g," ").trim()}function gPr(t){return Na(t).replace(/\s*[_-]\s*(?:连载新番|完结旧番|剧场版|美漫).*$/i,"").replace(/\s*-\s*稀饭动漫.*$/i,"").replace(/\s*-\s*免费高清动漫分享.*$/i,"").trim()}function Qc(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?ki+e:ki+"/"+e:""}function s0t(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function yPr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function APr(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 xPr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}function bPr(t){try{let e=new URL(t);return e.hostname.endsWith("pan.wo.cn")||e.hostname.endsWith("moedot.net")}catch{return!1}}function _Pr(t,e){let r={"User-Agent":yR};if(bPr(t))return r;let n=new URL(t).origin;return r.Referer=n===ki?e||ki+"/":n+"/",r.Origin=ki,r}async function ade(t,e={}){let r=/^https?:\/\//i.test(t)?t:Qc(t),n=await le({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||k_.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":yR,Referer:e.referer||ki+"/","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 EPr(t,e,r={}){let n=/^https?:\/\//i.test(t)?t:Qc(t),s=await le({url:n,method:"post",data:e,timeout:r.timeout||k_.timeout,validateStatus:()=>!0,headers:{"User-Agent":yR,Referer:r.referer||ki+"/","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 vPr(t,e={}){let r=/^https?:\/\//i.test(t)?t:Qc(t),n=await le.get(r,{timeout:e.timeout||k_.timeout,validateStatus:()=>!0,headers:{"User-Agent":yR,Referer:e.referer||ki+"/","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 SPr(t){let e=[],r=String(t||"").match(/<div class="public-list-box[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="(?:public-list-exp|time-title)[^"]*"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||Na((n.match(/class="time-title[^"]*"[^>]*>([\s\S]*?)<\/a>/)||[])[1]||""),a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/<span class="public-list-prb[^>]*>([\s\S]*?)<\/span>/)||[])[1]||"";!s||!i||e.push({vod_id:s,vod_name:Na(i),vod_pic:Qc(a),vod_remarks:Na(o)})}return e}function IPr(t){let e=[],r=/<div class="swiper-slide">[\s\S]*?<div class="swiper-lazy[^"]*" data-background="([^"]+)"[\s\S]*?<a class="lank" href="([^"]+)"[\s\S]*?<h3 class="slide-info-title hide">([\s\S]*?)<\/h3>[\s\S]*?<li>([^<]*)<\/li>/g,n;for(;(n=r.exec(String(t||"")))!==null;)e.push({vod_id:n[2],vod_name:Na(n[3]),vod_pic:Qc(n[1]),vod_remarks:Na(n[4])});return e}var i0t=[{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"}],gR={n:"\u5168\u90E8",v:""},A5={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},a0t={key:"year",name:"",init:"",value:(()=>{let t=[gR];for(let e=2026;e>=2005;e--)t.push({n:String(e),v:String(e)});return t})()},o0t={key:"class",name:"",init:"",value:[gR,...["\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}))]},c0t={1:[o0t,{key:"area",name:"",init:"",value:[gR,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},a0t,A5],2:[o0t,a0t,A5],3:[{key:"area",name:"",init:"",value:[gR,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},{key:"year",name:"",init:"",value:(()=>{let t=[gR];for(let e=2026;e>=2004;e--)t.push({n:String(e),v:String(e)});return t})()},A5],21:[A5]};async function CPr(t,e){return{}}async function TPr(t,e){try{let r=await ade(ki+"/"),n=APr([...IPr(r),...SPr(r)]).slice(0,40);return{class:i0t,filters:c0t,list:n}}catch(r){return console.error("xifan home failed:",r.message),{class:i0t,filters:c0t,list:[]}}}async function wPr(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 EPr(`${ki}/index.php/ds_api/vod`,i.toString(),{referer:`${ki}/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:Qc(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||n0t),total:Number(o.total||c.length)}}catch(a){return console.error("xifan category failed:",a.message),{list:[],page:n,pagecount:n,limit:n0t,total:0}}}async function RPr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{return{list:((await vPr(`${ki}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`,{referer:`${ki}/search/wd/${encodeURIComponent(r)}.html`}))?.list||[]).map(s=>({vod_id:`/bangumi/${s.id}.html`,vod_name:s.name||"",vod_pic:Qc(s.pic||""),vod_remarks:""}))}}catch(n){return console.error("xifan search failed:",n.message),{list:[]}}}async function NPr(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=Qc(i);if(a)try{let o=await ade(a),c=gPr((o.match(/<h3[^>]*>([\s\S]*?)<\/h3>/i)||[])[1]||(o.match(/<title>(.*?)<\/title>/i)||[])[1]||""),u=Qc((o.match(/<div class="detail-pic">[\s\S]*?<img[^>]+(?:data-src|src)="([^"]+)"/i)||[])[1]||""),l=Na((o.match(/<span class="slide-info-remarks cor5">([\s\S]*?)<\/span>/i)||[])[1]||""),d=Na((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/year\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),f=Na((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/area\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),m=Na((o.match(/导演\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),p=Na((o.match(/演员\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),h=Na((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/i)||[])[1]||""),y=[],g=/<a class="swiper-slide">[\s\S]*?&nbsp;([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,A;for(;(A=g.exec(o))!==null;)y.push({name:Na(A[1]),count:Number(A[2]||0)});let b=o.match(/<div class="anthology-list[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),x=b?b[0]:o,S=[],T=/<div class="anthology-list-box[^>]*>[\s\S]*?<ul class="anthology-list-play size">([\s\S]*?)<\/ul>[\s\S]*?<\/div>\s*<\/div>/g,I;for(;(I=T.exec(x))!==null;){let k=[],B=/<a class="[^"]*" href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=B.exec(I[1]))!==null;){let P=M[1];P.includes("/watch/")&&k.push({name:Na(M[2]),playId:s0t({playUrl:P,vodName:c,referer:i})})}k.length&&S.push(k)}if(!S.length){let k=[],B=/href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=B.exec(o))!==null;){let P=M[1];P.includes("/watch/")&&k.push({name:Na(M[2]),playId:s0t({playUrl:P,vodName:c,referer:i})})}k.length&&S.push(k)}let R=[],N=[];for(let k=0;k<S.length;k+=1){let B=y[k]?.name||`\u7EBF\u8DEF${k+1}`,M=S[k].map(P=>`${P.name}$${P.playId}`);R.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:m,vod_actor:p,vod_year:d,vod_area:f,vod_play_from:R.join("$$$"),vod_play_url:N.join("$$$")})}catch(o){console.error("xifan detail failed:",i,o.message)}}return{list:s}}async function OPr(t,e){let r=String(t.body?.id||"").trim(),n=yPr(r),s=n.playUrl||r||"",i=Qc(n.referer||"/"),a=Qc(s);try{let c=(await ade(a,{referer:i||ki+"/",headers:{Origin:ki}})).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=xPr(l):Number(u.encrypt)===1&&(l=decodeURIComponent(l));let d=l;return/^https?:\/\//i.test(d)||(d=Qc(d)),{parse:0,url:d,header:_Pr(d,i)}}catch(o){return console.error("xifan play failed:",o.message),{parse:0,url:a,header:{"User-Agent":yR,Referer:ki+"/",Origin:ki}}}}var u0t={meta:{key:k_.key,name:"\u300C\u76F4\u300D\u7A00\u996D",type:3},api:async t=>{t.post("/init",CPr),t.post("/home",TPr),t.post("/category",wPr),t.post("/detail",NPr),t.post("/play",OPr),t.post("/search",RPr)}};var Oa={key:"xifannext",name:"\u7A00\u996D\u52A8\u6F2B Next",host:"https://next.xifanacg.com",supabase:"https://rzmsnqblptbceicadbyd.supabase.co",anonKey:"sb_publishable_aCb7uwyLN6H-sMjze4dRGA_2MDuROLF",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},Ad=Oa.host,wm=24,bR={n:"\u5168\u90E8",v:""},l0t=[{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"}],kPr={key:"format",name:"",init:"",value:[bR,{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"}]},PPr={key:"finished",name:"",init:"",value:[bR,{n:"\u8FDE\u8F7D\u4E2D",v:"0"},{n:"\u5B8C\u7ED3",v:"1"}]},DPr={key:"year",name:"",init:"",value:(()=>{let t=[bR];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})()},BPr={key:"tag",name:"",init:"",value:[bR,...["\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}))]},LPr={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"}]},MPr={key:"days",name:"",init:"7",value:[{n:"7 \u5929",v:"7"},{n:"14 \u5929",v:"14"}]},WPr={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"}]},$Pr={key:"section",name:"",init:"all",value:[{n:"\u603B\u699C",v:"all"},{n:"\u65B0\u756A",v:"ongoing"},{n:"\u5B8C\u7ED3",v:"finished"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"\u7F8E\u6F2B",v:"western"}]},UPr={key:"weekday",name:"",init:"",value:[bR,{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"}]},d0t={all:[kPr,PPr,DPr,BPr,LPr],recent:[MPr],ranking:[WPr,$Pr],schedule:[UPr]};function Ap(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/&amp;/gi,"&").replace(/&#39;/g,"'").replace(/&quot;/g,'"').replace(/\s+/g," ").trim()}function p0t(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Ad+e:`${Ad}/${e}`:""}function m0t(t){let e=p0t(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 FPr(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function qPr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function h0t(t){return Ap(t).replace(/[$#]/g," ").trim()}function g0t(t){let e=String(t||"").trim();return e&&e.match(/(?:\/anime\/|^)(\d+)/)?.[1]||""}function Qu(...t){return t.find(e=>e!=null&&e!=="")}function jPr(t={}){return{...t.extend||{},...t.filter||{},...t.filters||{}}}function QPr(t={}){let e=Number(Qu(t.current_episodes,t.currentEpisodes,0)),r=Number(Qu(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=Qu(t.release_year,t.releaseYear,t.datePublished);if(n)return String(n);let s=Qu(t.bangumi_score,t.bangumiScore);return s!==void 0?String(s):""}function AR(t={}){let e=g0t(Qu(t.id,t.url,t["@id"]));return{vod_id:e?`/anime/${e}`:"",vod_name:Ap(t.title||t.name||""),vod_pic:m0t(Qu(t.cover_url,t.coverUrl,t.image,t.pic,"")),vod_remarks:QPr(t)}}function HPr(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 cde(t={}){return String(t.year||"").trim()==="older"||String(t.older||"").trim()==="1"}function ude({tid:t="all",page:e=1,extend:r={},searchTerm:n=""}={}){let{sortBy:s,sortOrder:i}=HPr(t,Qu(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:wm,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:!cde(r)&&Number.isFinite(a)?a:null,filter_only_published:!0}}function GPr(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)),cde(e)?r.set("older","1"):e.year&&r.set("year",String(e.year)),e.tag&&r.set("tag",String(e.tag));let n=String(Qu(e.sort,e.by,"")).trim();n&&n!=="title"&&r.set("sort",n);let s=r.toString();return`/browse${s?`?${s}`:""}`}function ode(t){let e={"User-Agent":Oa.ua};try{let r=new URL(t).hostname;if(r.endsWith("pan.wo.cn")||r.endsWith("moedot.net"))return e}catch{return e}return e.Referer=`${Ad}/`,e.Origin=Ad,e}async function _R(t,e={}){let r=/^https?:\/\//i.test(t)?t:p0t(t),n=await le({url:r,method:"get",timeout:e.timeout||Oa.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":Oa.ua,Referer:e.referer||`${Ad}/`,"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 xR(t,e){let r=await le({url:`${Oa.supabase}/rest/v1/rpc/${t}`,method:"post",data:e,timeout:Oa.timeout,validateStatus:()=>!0,headers:{apikey:Oa.anonKey,Authorization:`Bearer ${Oa.anonKey}`,"Content-Type":"application/json",Origin:Ad,Referer:`${Ad}/`,"User-Agent":Oa.ua,"X-Client-Info":"supabase-js-web/2.49.1"}});if(r.status<200||r.status>=300)throw new Error(`RPC ${t} HTTP ${r.status}`);return r.data}async function VPr(t,e){let r=await le({url:`${Oa.supabase}/functions/v1/${t}`,method:"post",data:e,timeout:Oa.timeout,validateStatus:()=>!0,headers:{apikey:Oa.anonKey,Authorization:`Bearer ${Oa.anonKey}`,"Content-Type":"application/json",Origin:Ad,Referer:`${Ad}/`,"User-Agent":Oa.ua}});if(r.status<200||r.status>=300)throw new Error(`Function ${t} HTTP ${r.status}`);return r.data}function y0t(t){let e=De(t||""),r=[];return e('script[type="application/ld+json"]').each((n,s)=>{try{let i=JSON.parse(e(s).text()||"{}");Array.isArray(i?.["@graph"])?r.push(...i["@graph"]):r.push(i)}catch{}}),r}function KPr(t,e){return y0t(t).find(r=>{let n=r?.["@type"],s=String(r?.url||r?.["@id"]||"");return(n==="TVSeries"||n==="Movie")&&s.includes(`/anime/${e}`)})||{}}function f0t(t,e){let r="";return t("dt").each((n,s)=>{if(Ap(t(s).text())===e)return r=Ap(t(s).next("dd").text()),!1}),r}function zPr(t,e){let r=0;for(let n=e-1;n>=0&&t[n]==="\\";n-=1)r+=1;return r}function YPr(t){return JSON.parse(String(t||"").replace(/\\"/g,'"').replace(/\\\\/g,"\\"))}function b5(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==='"'&&zPr(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 m=r.slice(o,d+1);try{return a?YPr(m):JSON.parse(m)}catch{return[]}}}}return[]}function JPr(t){let e=y0t(t).find(n=>n?.["@type"]==="ItemList")||{};return(Array.isArray(e.itemListElement)?e.itemListElement:[]).map(n=>AR(n?.item||n)).filter(n=>n.vod_id&&n.vod_name)}function XPr(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 ZPr(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 e3r(t,e){let r=De(t||""),n=[];return r(`a[href*="/anime/${e}/play/"]`).each((s,i)=>{let o=(r(i).attr("href")||"").match(/\/play\/(\d+)(?:\?source=([^&#]+))?/);if(!o)return;let c=Number(o[1]),u=h0t(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 t3r(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=h0t(t?.title||"");return s?`\u7B2C ${n} \u96C6 ${s}`:`\u7B2C ${n} \u96C6`}function r3r(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=FPr({animeId:Number(e),episodeId:d,sourceCode:a.code||"",sourceName:a.name||"",vodName:r,referer:n});return`${t3r(u,l)}$${f}`}).filter(Boolean);c.length&&(s.push(Ap(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 n3r(t,e){return{}}async function s3r(t,e){try{let r=await xR("search_animes",ude({tid:"recent",page:1,extend:{by:"release_date"}}));return{class:l0t,filters:d0t,list:(Array.isArray(r)?r:[]).map(AR).filter(n=>n.vod_id&&n.vod_name)}}catch(r){return console.error("xifannext home failed:",r.message),{class:l0t,filters:d0t,list:[]}}}function x5(t){return(Array.isArray(t)?t:[]).map(AR).filter(e=>e.vod_id&&e.vod_name)}function i3r(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 A0t(t,e){let r=x5(t);return{list:e>1?[]:r,page:e,pagecount:1,limit:wm,total:r.length}}async function a3r(t,e){if(cde(e)){let a=await _R(GPr(t,e)),o=JPr(a),c=XPr(a,o.length),u=ZPr(a,Math.ceil(c/wm)||t);return{list:o,page:t,pagecount:u,limit:wm,total:c}}let r=await xR("search_animes",ude({tid:"all",page:t,extend:e})),n=Array.isArray(r)?r:[],s=x5(n),i=Number(n[0]?.total_count||s.length);return{list:s,page:t,pagecount:Math.max(1,Math.ceil(i/wm)),limit:wm,total:i}}async function o3r(t,e){let r=await _R("/recent"),n=Number(Qu(e.days,7)),s=b5(r,"windows"),i=s.find(a=>Number(a?.days)===n)||s[0]||{};return A0t(i.items||[],t)}async function c3r(t,e){let r=String(Qu(e.kind,"trending_week")).trim()||"trending_week",n=String(Qu(e.section,"all")).trim()||"all",s=await _R(`/rankings?kind=${encodeURIComponent(r)}`),i=b5(s,"sections"),a=i.find(o=>String(o?.key||"")===n)||i[0]||{};return A0t(a.items||[],t)}async function u3r(t,e){let r=await _R("/schedule"),n=String(e.weekday??"").trim(),s=b5(r,"schedule"),i=n===""?i3r(s.flatMap(a=>x5(a?.animes||[]))):x5((s.find(a=>String(a?.weekday)===n)||{}).animes||[]);return{list:t>1?[]:i,page:t,pagecount:1,limit:wm,total:i.length}}async function l3r(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=jPr(t.body||{});try{return r==="recent"?await o3r(n,s):r==="ranking"?await c3r(n,s):r==="schedule"?await u3r(n,s):await a3r(n,s)}catch(i){return console.error("xifannext category failed:",i.message),{list:[],page:n,pagecount:n,limit:wm,total:0}}}async function d3r(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=await xR("suggest_animes",{q:r,lim:20}),s=(Array.isArray(n)?n:[]).map(AR).filter(i=>i.vod_id&&i.vod_name);if(!s.length){let i=await xR("search_animes",ude({page:1,searchTerm:r}));s=(Array.isArray(i)?i:[]).map(AR).filter(a=>a.vod_id&&a.vod_name)}return{list:s}}catch(n){return console.error("xifannext search failed:",n.message),{list:[]}}}async function f3r(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(g0t).filter(Boolean),s=[];for(let i of n){let a=`/anime/${i}`;try{let o=await _R(a),c=De(o),u=KPr(o,i),l=Ap(u.name||c("h1").first().text()),d=b5(o,"sources"),f=d.length?d:e3r(o,i),m=r3r(f,i,l,a);s.push({vod_id:a,vod_name:l,vod_pic:m0t(u.image||c("img[alt]").first().attr("src")||""),vod_remarks:u.numberOfEpisodes?`\u5168 ${u.numberOfEpisodes} \u96C6`:"",vod_content:Ap(u.description||""),vod_director:f0t(c,"\u5BFC\u6F14"),vod_actor:f0t(c,"\u58F0\u4F18"),vod_year:String(u.datePublished||"").slice(0,4),vod_area:Ap(u.countryOfOrigin||""),vod_class:Array.isArray(u.genre)?u.genre.join(","):Ap(u.genre||""),...m})}catch(o){console.error("xifannext detail failed:",i,o.message)}}return{list:s}}async function p3r(t,e){let r=String(t.body?.id||"").trim(),n=qPr(r),s=Number(n.episodeId||(r.match(/\/play\/(\d+)/)||[])[1]||0),i=String(n.sourceCode||(()=>{try{return new URL(r,Ad).searchParams.get("source")||""}catch{return""}})()).trim();if(!s)return{parse:0,url:r,header:ode(r)};try{let a=await xR("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 VPr("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:ode(u)}}catch(a){return console.error("xifannext play failed:",s,a.message),{parse:0,url:r,header:ode(r)}}}var x0t={meta:{key:Oa.key,name:"\u300C\u76F4\u300D\u7A00\u996D\xB2",type:3},api:async t=>{t.post("/init",n3r),t.post("/home",s3r),t.post("/category",l3r),t.post("/detail",f3r),t.post("/play",p3r),t.post("/search",d3r)}};var lde="https://4kzn.cc";function b0t(t){try{let e=new URL(String(t||"").trim());return["http:","https:"].includes(e.protocol)&&e.hostname?e.origin:lde}catch{return lde}}var ER=async t=>{let e=await t.db.getObjectDefault("/4kzn",{});return b0t(e?.url||t.config["4kzn"]?.url||lde)};async function dde(t){t.get("/config",async(e,r)=>{r.send({code:0,data:{url:await ER(e.server)}})}),t.put("/config",async(e,r)=>{await e.server.db.push("/4kzn/url",b0t(e.body?.url)),r.send({code:0})}),t.delete("/config",async(e,r)=>{await e.server.db.delete("/4kzn/url"),r.send({code:0})})}var m3r={"User-Agent":Gt,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"};function h3r(t){return{...m3r,Referer:`${t}/`}}var fde={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"}]},_0t=[{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"}],_5={};for(let t of _0t)_5[t.type_id]=[fde];_5["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"}]},fde];_5["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"}]},fde];async function pde(t,e){return(await le.get(t,{headers:h3r(e)})).data}function qy(t,e){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:r.startsWith("//")?`https:${r}`:r.startsWith("/")?`${e}${r}`:`${e}/${r.replace(/^\/+/,"")}`:""}function P_(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/\s+/g," ").trim()}function E0t(t,e){let r=De(t),n=[],s=new Set;return r("article.posts-item").each((i,a)=>{let o=r(a).find('a.item-image, h3.item-title a, a[target="_blank"]').first(),c=qy(o.attr("href")||"",e),u=P_(r(a).find(".item-title a").first().text()||o.text()||r(a).attr("data-title")||"");if(!c||!u||s.has(c))return;s.add(c);let l=qy(r(a).find("img").first().attr("data-src")||r(a).find("img").first().attr("src")||"",e),d=P_(r(a).find(".line1.text-muted.text-xs, .book-info, .item-desc, .sub-title").first().text());n.push({vod_id:c,vod_name:u,vod_pic:l,vod_remarks:d})}),n}function g3r(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 y3r(t,e){return{class:_0t,filters:_5}}async function A3r(t,e){try{let r=await ER(t.server),n=String(t.body.id||"books/zuixin").replace(/^\/+/,""),s=t.body.page,i=t.body.filters||{},a=parseInt(s,10);(!a||a<1)&&(a=1);let o=n;i.class&&(o=`books/${encodeURIComponent(i.class)}`);let c=a>1?`${r}/${o}/page/${a}`:`${r}/${o}`;i.by&&(c+=`?orderby=${i.by}`);let u=await pde(c,r),l=E0t(u,r),{pagecount:d}=g3r(u);return{page:a,pagecount:d,limit:72,total:d*Math.max(l.length,1),list:l}}catch(r){return console.error("[4kzn][category]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}async function x3r(t,e){try{let r=await ER(t.server),n=String(t.body.id||"").trim();if(!n)return{list:[]};let s=/^https?:\/\//i.test(n)?n:qy(n,r),i=await pde(s,r),a=De(i),o=P_(a("h1, h2, .book-title").first().text())||P_(a("meta[property='og:title']").attr("content")||""),c=qy(a('.book-cover img, meta[property="og:image"]').first().attr("data-src")||a('.book-cover img, meta[property="og:image"]').first().attr("content")||a(".book-cover img").first().attr("src")||"",r),u=P_(a("meta[name='description']").attr("content")||a(".panel-body.single").text()),l=[],d=new Set,f=[".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(a(f).each((p,h)=>{let y=qy(a(h).attr("href")||"",r);!y||d.has(y)||(d.add(y),l.push(y))}),!l.length){let p=a("a.external[href*='pan.quark.cn'], a[href*='pan.quark.cn'], a[href*='quark.cn']").first(),h=qy(p.attr("href")||"",r);h&&l.push(h)}let m={vod_id:s,vod_name:o,vod_pic:c,vod_content:u};if(l.length){let p=await Xt(l,t);p?.froms&&p?.urls&&(m.vod_play_from=p.froms,m.vod_play_url=p.urls,m.vod_links=p.links)}return{list:[m]}}catch(r){return console.error("[4kzn][detail]",r.message),{list:[]}}}async function b3r(t,e){try{let r=await ER(t.server),n=t.body.wd,s=t.body.page,i=parseInt(s,10);if((!i||i<1)&&(i=1),!n)return{page:i,pagecount:0,limit:72,total:0,list:[]};let a=`${r}/?s=${encodeURIComponent(n)}`,o=await pde(a,r),c=E0t(o,r);if(!c.length){let u=De(o);c=[],u("a[href*='/book/'], a[href*='/sites/']").each((l,d)=>{let f=u(d),m=qy(f.attr("href")||"",r),p=P_(f.text());!m||!p||p.includes(n)&&c.push({vod_id:m,vod_name:p,vod_pic:"",vod_remarks:""})})}return{page:i,pagecount:1,limit:72,total:c.length,list:c}}catch(r){return console.error("[4kzn][search]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}var v0t={meta:{key:"4kzn",name:"\u300C\u76D8\u300D\u6307\u5357",type:3},api:async t=>{t.post("/init",dr),t.post("/home",y3r),t.post("/category",A3r),t.post("/detail",x3r),t.post("/play",er),t.post("/search",b3r),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Zt)}};var vR="https://kafeizhibo.com",_3r=`${vR}/api/v1`,N0t="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",E3r={"User-Agent":N0t,Accept:"application/json, text/plain, */*",Referer:`${vR}/pc/replay`},mde="live:",E5="schedule:",v3r=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,S0t=[{type_id:"schedule",type_name:"\u8D5B\u7A0B"},{type_id:"live",type_name:"\u76F4\u64AD"},{type_id:"replay",type_name:"\u5F55\u64AD"}],S3r=[{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"}],I3r=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"NBA",v:"nba"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"}],C3r=[{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"}],I0t={live:[{key:"type",name:"",init:"all",value:S3r}],replay:[{key:"type",name:"",init:"all",value:I3r}],schedule:[{key:"type",name:"",init:"all",value:C3r}]},O0t=new Map;function xt(t){return String(t??"").trim()}function C0t(t){return t!=null&&xt(t)!==""}function D_(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,vR).toString()}catch{return e}}function k0t(t=""){let e=xt(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?D_(e):/^[\w.-]+\.[a-z]{2,}(?:[/:?#]|$)/i.test(e)?`https://${e}`:e:""}function T3r(t=""){return/^https?:\/\//i.test(xt(t))}function w3r(t=""){return v3r.test(xt(t))}function v5(t={}){let e=D_(t.cover_image);return e&&!e.includes("default_cover")?e:D_(t.home_team_logo)||D_(t.away_team_logo)||e}function hde(t={}){return D_(t.screenshot)||v5(t.match_info||t)||D_(t.avatar)||v5(t)}function xd(t={}){return!C0t(t.home_score)||!C0t(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 gde(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 R3r(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 B_(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 T0t(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 w0t(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 SR(t,e={}){let r=t.startsWith("http")?t:`${_3r}${t}`,n=await le.get(r,{params:e,headers:E3r,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 P0t(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),SR("/recordings",s)}async function D0t(t="all"){return SR("/archor",{type:t||"all",_t:Date.now()})}async function N3r(t){return SR(`/room/${encodeURIComponent(t)}`)}async function B0t(t="hot",e=1,r=30){return SR("/schedule",{type:t||"hot",page:e,size:r,platform:"pc",_t:Date.now()})}function L0t(t={}){let e=xt(t.match_id??t.id),r=xt(t.recording_count),n=[xd(t),xt(t.start_time),r?`${r}\u4E2A\u5F55\u50CF`:""].filter(Boolean);return{vod_id:e,vod_name:Rm(t),vod_pic:v5(t),vod_remarks:n.join(" | "),type_name:xt(t.league_name)}}function M0t(t={}){let e=t.match_info||t,r=xt(t.room_id||t.archor?.room_id||t.match_id),n=gde(t.status||e.status),s=xt(t.heat),i=[n,xd(t)||xd(e),s?`\u70ED\u5EA6 ${s}`:""].filter(Boolean);return{vod_id:r?`${mde}${r}`:"",vod_name:xt(t.title)||Rm(e),vod_pic:hde(t),vod_remarks:i.join(" | "),type_name:xt(t.league_name||e.league_name)}}function W0t(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 $0t(t={}){let e=W0t(t),r=xt(t.match_id??t.id),n=e&&r?`${E5}${r}:${e}`:"",s=R3r(t.start_time),i=[s.time||gde(t.status),s.date,xd(t),t.is_hot?"\u70ED\u95E8":""].filter(Boolean);return n&&O0t.set(n,t),{vod_id:n,vod_name:xt(t.title)||Rm(t),vod_pic:hde(t),vod_remarks:i.join(" | "),type_name:xt(t.league_name)}}function U0t(t,e){return(xt(t)||e).replace(/[$#]/g," ").replace(/\s+/g," ").trim()||e}function R0t(t=[],e="\u64AD\u653E"){return t.map((r,n)=>{let s=k0t(r.video_url||r.stream_url||r.url||r.play_url);return s?`${U0t(r.title||r.name,`${e}${n+1}`)}$${encodeURIComponent(s)}`:""}).filter(Boolean).join("#")}function O3r(t=""){let e=xt(t);if(!e)return"";try{return decodeURIComponent(e)}catch{return e}}function k3r(t=""){let e=xt(t);return e==="live"?"all":e.startsWith("live_")?e.slice(5)||"all":null}function P3r(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 D3r(t={}){return{match_id:t.match_id||t.id,room_id:W0t(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 B3r(t={}){let e=[],r=new Set,n=(s={},i="\u7EBF\u8DEF")=>{let a=k0t(s.stream_url||s.url||s.play_url);!a||r.has(a)||(r.add(a),e.push({name:U0t(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 L3r(t,e){return{}}async function M3r(t,e){try{let r=await B0t("all",1,30),n=B_(r).map($0t).filter(s=>s.vod_id&&s.vod_name);return{class:S0t,filters:I0t,list:n}}catch(r){return console.error("kafei home failed:",r.message),{class:S0t,filters:I0t,list:[]}}}async function W3r(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 B0t(u,n,l),f=B_(d).map($0t).filter(m=>m.vod_id&&m.vod_name);return w0t(n,l,f,T0t(d))}catch(d){return console.error("kafei schedule category failed:",u,d.message),{page:n,pagecount:n,limit:l,total:0,list:[]}}}let i=k3r(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 D0t(u),d=B_(l).map(M0t).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 P0t(n,c,{league:o==="nba"?"NBA":"",type:o==="all"?"":a}),l=B_(u).map(L0t).filter(d=>d.vod_id&&d.vod_name);return w0t(n,c,l,T0t(u))}catch(u){return console.error("kafei category failed:",r,u.message),{page:n,pagecount:n,limit:c,total:0,list:[]}}}async function $3r(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(mde)||i.startsWith(E5)){let h=i.startsWith(E5),y=h?i.slice(E5.length).split(":").pop():i.slice(mde.length),g=h?O0t.get(i):null,A=g?null:await N3r(y),b=g||A?.data||{},x=g?D3r(b):P3r(b),T=B3r(b).map(I=>`${I.name}$${encodeURIComponent(I.url)}`).join("#");n.push({vod_id:i,vod_name:xt(x.title)||Rm(x),vod_pic:hde(x),type_name:xt(x.league_name),vod_remarks:[gde(x.status),xd(x)].filter(Boolean).join(" | "),vod_content:[xt(x.league_name),xt(x.title)||Rm(x),xd(x)?`\u6BD4\u5206 ${xd(x)}`:"",xt(x.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${xt(x.start_time)}`:"",xt(x.notice)].filter(Boolean).join("\uFF0C"),vod_play_from:T?"\u76F4\u64AD":"",vod_play_url:T});continue}let o=(await SR(`/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=[],m=R0t(u,"\u5F55\u50CF");m&&(d.push("\u5F55\u50CF"),f.push(m));let p=R0t(l,"\u96C6\u9526");p&&(d.push("\u96C6\u9526"),f.push(p)),n.push({vod_id:i,vod_name:Rm(c),vod_pic:v5(c),type_name:xt(c.league_name),vod_remarks:xd(c),vod_content:[xt(c.league_name),xt(c.match_round),Rm(c),xd(c)?`\u6BD4\u5206 ${xd(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 U3r(t,e){let r=O3r(t.body?.id);return r?{parse:T3r(r)&&!w3r(r)?1:0,url:r,header:{"User-Agent":N0t,Referer:vR,Origin:vR}}:{parse:0,url:"",header:{}}}async function F3r(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([D0t("all"),P0t(1,n)]),a=s.status==="fulfilled"?B_(s.value):[],o=i.status==="fulfilled"?B_(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(M0t),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(L0t),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 F0t={meta:{key:"kafei",name:"\u300C\u76F4\u300D\u5496\u5561",type:3},api:async t=>{t.post("/init",L3r),t.post("/home",M3r),t.post("/category",W3r),t.post("/detail",$3r),t.post("/play",U3r),t.post("/search",F3r)}};var j0t=require("crypto");var yde="/embySpider",bd={clientName:"SenPlayer",clientVersion:"6.0.5",deviceName:"iPhone",language:"zh-cn",userAgent:"SenPlayer/6.0.5"};function q3r(){return(0,j0t.randomUUID)().toUpperCase()}function Q0t(t,e=!1){return Xo(t)||(e?q3r():"")}function L_({token:t="",contentType:e=!1,deviceId:r="",userId:n=""}={}){let s=Q0t(r),i=Xo(t),a=Xo(n),o={"X-Emby-Authorization":[`MediaBrowser Token="${i}"`,`UserId="${a}"`,`Client="${bd.clientName}"`,`Device="${bd.deviceName}"`,`DeviceId="${s}"`,`Version="${bd.clientVersion}"`].join(", "),"X-Emby-Client":bd.clientName,"X-Emby-Device-Name":bd.deviceName,"X-Emby-Device-Id":s,"X-Emby-Client-Version":bd.clientVersion,"X-Emby-Language":bd.language,"User-Agent":bd.userAgent};return e&&(o["Content-Type"]="application/json"),i&&(o["X-Emby-Token"]=i),o}function H0t(t){return String(t||"").trim().replace(/\/+$/,"")}function Xo(t){return String(t||"").trim()}function j3r(t){return String(t||"").trim()}function G0t(t){return Xo(t).toLowerCase().replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,40)}function Q3r(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||FV().slice(0,8);for(;e.has(s);)s=`${(n||"emby").slice(0,24)}-${FV().slice(0,4)}`;return e.add(s),s}function H3r(t,e,r={}){let n=H0t(t?.host),s=Xo(t?.username),i=Xo(t?.name),a=G0t(t?.id),o=a&&!e.has(a)?a:Q3r({name:i,host:n,username:s},e);return e.add(o),{id:o,name:i,host:n,username:s,password:String(t?.password||""),deviceId:Q0t(t?.deviceId,r.ensureDeviceId),logo:j3r(t?.logo),libraries:Ade(t?.libraries),libraryStats:V0t(t?.libraryStats)}}function V0t(t={}){return{movieCount:Math.max(0,Number(t?.movieCount||0)||0),seriesCount:Math.max(0,Number(t?.seriesCount||0)||0)}}function Ade(t=[]){return Array.isArray(t)?t.map(e=>({id:Xo(e?.id||e?.Id),name:Xo(e?.name||e?.Name),collectionType:Xo(e?.collectionType||e?.CollectionType)})).filter(e=>e.id).map(e=>({...e,name:e.name||e.id})):[]}function G3r(t=[]){return Ade(t.map(e=>({id:e?.Id,name:e?.Name,collectionType:e?.CollectionType})))}function S5(t={},e={}){let r=new Set;return{servers:(Array.isArray(t?.servers)?t.servers:[]).filter(i=>i&&typeof i=="object").filter(i=>Xo(i?.id)||Xo(i?.name)||H0t(i?.host)||Xo(i?.username)||String(i?.password||"")).map(i=>H3r(i,r,e)).filter(i=>i.host||i.username)}}function V3r(t){return{servers:t.servers}}var xde=async t=>{let e=await t.db.getObjectDefault(yde,{});return S5(e)},IR=async t=>(await xde(t)).servers,M_=async(t,e="")=>{let r=await xde(t),n=G0t(e);return n&&r.servers.find(s=>s.id===n)||null},K3r=async(t,e)=>{let r=S5(e,{ensureDeviceId:!0});return await t.db.push(yde,V3r(r)),r},z3r=async t=>{await t.db.delete(yde)};async function Y3r(t){let{host:e,username:r,password:n,deviceId:s}=t,i=`${e}/emby/Users/authenticatebyname`,o=(await le.post(i,{Username:r,Pw:n||"",Password:n||""},{headers:L_({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 J3r(t="",e="",r=""){return L_({token:t,contentType:!0,deviceId:e,userId:r})}async function I5(t,e="",r="",n=""){return(await le.get(t,{headers:e?J3r(e,r,n):L_({deviceId:r}),timeout:1e4})).data}async function X3r(t,e="",r=""){try{return await I5(`${t.host}/emby/System/Info/Public`,e,t.deviceId,r)}catch{try{return await I5(`${t.host}/emby/System/Info`,e,t.deviceId,r)}catch{return{}}}}async function Z3r(t,e,r){try{let n=await I5(`${t.host}/emby/Users/${encodeURIComponent(e)}/Views`,r,t.deviceId,e);return Array.isArray(n?.Items)?n.Items:[]}catch{return[]}}async function q0t(t,e,r,n,s){let i=new URLSearchParams({ParentId:String(n||""),Recursive:"true",IncludeItemTypes:s,StartIndex:"0",Limit:"1"});try{let a=await I5(`${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 eDr(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(q0t(t,e,r,o,"Movie").then(u=>{s.movieCount+=u})),(!c||c==="tvshows")&&i.push(q0t(t,e,r,o,"Series").then(u=>{s.seriesCount+=u}))}return await Promise.allSettled(i),s}async function tDr(t){let e=await Y3r(t),r=e.AccessToken,n=e.User.Id,[s,i]=await Promise.all([X3r(t,r,n),Z3r(t,n,r)]),a=await eDr(t,n,r,i);return{serverName:Xo(s?.ServerName),libraries:G3r(i),libraryStats:a}}function rDr(t,e={}){return{...t,name:t.name||e.serverName||"Emby",libraries:Ade(e.libraries||t.libraries),libraryStats:V0t(e.libraryStats||t.libraryStats)}}function nDr(t){return t?.response?.status===401?"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF":`\u8FDE\u63A5\u5931\u8D25: ${t.message}`}async function bde(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await xde(e.server)})}),t.post("/verify",async(e,r)=>{let s=S5({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 tDr(s);r.send({code:0,data:rDr(s,i)})}catch(i){r.send({code:-1,message:nDr(i)})}}),t.put("/setting",async(e,r)=>{let n=S5(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 K3r(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await z3r(e.server),r.send({code:0})})}var Sde="::",X0t=["PrimaryImageAspectRatio","BasicSyncInfo","ProductionYear","RecursiveItemCount","ChildCount"].join(","),_de=new Map;function sDr(){return{baseUrl:"",username:"",password:"",deviceId:"",accessToken:"",userId:""}}function iDr(t){let e=t||"default";return _de.has(e)||_de.set(e,sDr()),_de.get(e)}async function aDr(t,e=""){let r=await M_(t,e),n=String(r?.host||"").replace(/\/$/,""),s=r?.username||"",i=r?.password||"",a=r?.deviceId||"",o=iDr(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 Cde(t){let e=`${t.baseUrl}/emby/Users/authenticatebyname`,n=(await le.post(e,{Username:t.username,Pw:t.password||"",Password:t.password||""},{headers:L_({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 aDr(t,e);return(!r.accessToken||!r.userId)&&await Cde(r),r}function C5(t){return L_({token:t.accessToken,deviceId:t.deviceId,userId:t.userId})}function W_(t,e){let r=String(t||""),n=String(e||"");return!r||!n?"":`${encodeURIComponent(r)}${Sde}${n}`}function Z0t(t){let e=String(t||""),r=e.indexOf(Sde);if(r<0)return{serverId:"",itemId:""};let n=e.slice(0,r);return{serverId:decodeURIComponent(n),itemId:e.slice(r+Sde.length)}}function oDr(t){return String(t.body?.id||"").trim()}function K0t(t){return String(t||"").split(",")[0].trim()}function cDr(t){let r=K0t(t?.headers?.["x-forwarded-proto"])||t?.protocol||"http",s=K0t(t?.headers?.["x-forwarded-host"])||t?.headers?.host||"";return s?`${r}://${s}`:""}function uDr(t=""){let e=String(t||"").toLowerCase();return e==="movies"?"Movie":e==="tvshows"?"Series":"Movie,Series"}function Ede(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.floor(e):0}function lDr(t={}){return String(t?.Type||"").toLowerCase()!=="series"?0:Ede(t.RecursiveItemCount)||Ede(t.EpisodeCount)||Ede(t.ChildCount)}function dDr(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 emt(t,e){let r=await Nm(t,e),n=await jy(`/emby/Users/${r.userId}/Views`,t,e);return Array.isArray(n?.Items)?n.Items:[]}function Ide(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 vde(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 jy(t,e,r="",n={}){let s=await Nm(e,r),i=`${s.baseUrl}${t}`;try{return(await le({method:n.method||"GET",url:i,headers:C5(s),data:n.data,timeout:15e3})).data}catch(a){if(a?.response?.status===401)return s.accessToken="",await Cde(s),(await le({method:n.method||"GET",url:i,headers:C5(s),data:n.data,timeout:15e3})).data;throw a}}function fDr(t=""){let e=String(t||"").trim();return/^[A-Za-z]+$/.test(e)?e:"Primary"}function pDr(t,e=300){let r=parseInt(t||e,10);return!Number.isFinite(r)||r<=0?e:Math.min(r,1200)}function tmt(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=cDr(r);return i?`${i}${s}`:s}return""}function rmt(t,e="",r=null){let n=lDr(t);return{vod_id:W_(e,t.Id),vod_name:t.Name||"",vod_pic:tmt(t,e,r),vod_remarks:n>0?String(n):"",vod_year:t.ProductionYear?String(t.ProductionYear):""}}async function z0t(t,e){return{}}async function mDr(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=fDr(r.type||"Primary"),o=new URLSearchParams({maxHeight:String(pDr(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 le.get(u,{responseType:"stream",headers:C5(i),timeout:15e3})}catch(d){if(d?.response?.status!==401)throw d;i.accessToken="",await Cde(i),l=await le.get(u,{responseType:"stream",headers:C5(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 hDr(t,e){try{let n=(await IR(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]=Ide(a.libraries)}return{class:s,filters:i}}catch(r){return console.error("emby home failed:",r.message),{class:[],filters:{}}}}async function gDr(t,e){let r=String(t.params?.serverId||"").trim();if(!r)return{class:[],filters:{}};try{let n=await M_(t.server,r),s=vde(n?.libraries);if(s.length===0){let i=await emt(t.server,r);s=vde(i)}return{class:s,filters:{}}}catch(n){console.error("emby server home failed:",n.message);let s=await M_(t.server,r).catch(()=>null);return{class:vde(s?.libraries),filters:{}}}}async function nmt(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 emt(t.server,e),l=Ide(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 b=await jy(`/emby/Users/${c.userId}/Items/${d}`,t.server,e);f=uDr(b?.CollectionType)}let m=new URLSearchParams({StartIndex:String(o),Limit:String(a),Recursive:"true",Fields:X0t,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:f,SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"});d&&m.set("ParentId",d);let p=await jy(`/emby/Users/${c.userId}/Items?${m.toString()}`,t.server,e),h=p?.Items||[],y=p?.TotalRecordCount||h.length,g=h.map(b=>rmt(b,e,t)),A={page:i,pagecount:Math.max(i,Math.ceil(y/a)),limit:a,total:y,list:g};return n.filterKey&&(A.filters={[n.filterKey]:l}),A}catch(c){console.error("emby category failed:",c.message);let u=await M_(t.server,e).catch(()=>null),l={page:i,pagecount:i,limit:a,total:0,list:[]};return n.filterKey&&(l.filters={[n.filterKey]:Ide(u?.libraries)}),l}}async function yDr(t,e){let r=oDr(t);return nmt(t,r,"",{filterKey:r,useFilterLibrary:!0})}async function ADr(t,e){let r=String(t.params?.serverId||"").trim(),n=String(t.body?.id||"").trim();return nmt(t,r,n,{useFilterLibrary:!1})}async function Y0t(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}=Z0t(s);if(!i||!a)continue;let o=await Nm(t.server,i),c=await jy(`/emby/Users/${o.userId}/Items/${a}`,t.server,i);if(!c)continue;let u={vod_id:W_(i,c.Id),vod_name:c.Name||"",vod_pic:tmt(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}$${W_(i,c.Id)}`;else if(c.Type==="Series"){let d=(await jy(`/emby/Shows/${c.Id}/Episodes?userId=${o.userId}&Fields=BasicSyncInfo`,t.server,i))?.Items||[];if(d.length>0){let f={};for(let h of d){let y=h.SeasonName||`\u7B2C${h.ParentIndexNumber||1}\u5B63`;f[y]||(f[y]=[]);let g=h.Name===`\u7B2C ${h.IndexNumber} \u96C6`?h.Name:`${h.IndexNumber}.${h.Name}`;f[y].push(`${g}$${W_(i,h.Id)}`)}let m=[],p=[];for(let[h,y]of Object.entries(f))m.push(h),p.push(y.join("#"));u.vod_play_from=m.join("$$$"),u.vod_play_url=p.join("$$$")}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${W_(i,c.Id)}`}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${W_(i,c.Id)}`;n.push(u)}catch(i){console.error("emby detail failed:",s,i.message)}return{list:n}}async function xDr(t,e,r){let n=await Nm(t,e),s=encodeURIComponent(r),i=await jy(`/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 J0t(t,e){let{serverId:r,itemId:n}=Z0t(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 xDr(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":bd.userAgent}}}catch(s){return console.error("emby play failed:",s.message),{parse:0,url:"",header:{}}}}async function smt(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,m=await Nm(t.server,f),p=new URLSearchParams({SearchTerm:r,StartIndex:"0",Limit:String(a),Recursive:"true",Fields:X0t,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:"Movie,Series",SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"}),h=await jy(`/emby/Users/${m.userId}/Items?${p.toString()}`,t.server,f),y=h?.Items||[];return{total:Math.max(0,Number(h?.TotalRecordCount||y.length)||0),list:y.map(g=>rmt(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=dDr(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 bDr(t,e){let r=await IR(t.server);return smt(t,r.filter(n=>n?.host&&n?.username))}async function _Dr(t,e){let r=String(t.params?.serverId||"").trim(),n=await M_(t.server,r).catch(()=>null);return smt(t,n?.host&&n?.username?[n]:[])}var imt={meta:{key:"emby",name:"Emby",type:3,hidden:!0},api:async t=>{t.post("/init",z0t),t.get("/image",mDr),t.post("/home",hDr),t.post("/category",yDr),t.post("/detail",Y0t),t.post("/play",J0t),t.post("/search",bDr),t.post("/server/:serverId/init",z0t),t.post("/server/:serverId/home",gDr),t.post("/server/:serverId/category",ADr),t.post("/server/:serverId/detail",Y0t),t.post("/server/:serverId/play",J0t),t.post("/server/:serverId/search",_Dr)}};var Tde="/alistVideo",omt={servers:[{id:"alist_default",name:"\u4EBF\u82EF\u6B63\u7ECF\u7684Alist\u5E93",server:"https://pan.lm379.cn"}]};function EDr(t,e="server"){return`alist_${String(t||e).trim().toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||e}`}function wde(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 Rde(t={}){let e=Array.isArray(t?.servers)?t.servers:[],r=new Set;return{servers:e.map((n,s)=>{let i={...wde(n),otpCode:""};if(!i.server)return null;i.id||(i.id=EDr(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 vDr(t={}){return`catpaw_${String(t.id||t.server||t.name||"default").trim().replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,96)||"alist"}`}function $_(t={},e=""){let r=String(e||t.token||"").trim(),n={"Content-Type":"application/json","Client-Id":vDr(t)};return r&&(n.Authorization=r),n}function Nde(t,e={}){return t?.status===401||t?.status===403||e?.code===401||e?.code===403}async function T5(t={},e={}){let r=wde(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 le.post(r.server+"/api/auth/login",n,{headers:$_(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 amt(t,e=""){let r=await le.post(t.server+"/api/fs/list",{path:"/",page:1,per_page:1},{headers:$_(t,e),timeout:1e4});return{resp:r,json:r.data||{}}}var cmt=async t=>{let e=await t.db.getObjectDefault(Tde,omt);return Rde(e)},SDr=async(t,e)=>{let r=Rde(e);return await t.db.push(Tde,r),r},IDr=async t=>{await t.db.delete(Tde)},CR=async t=>(await cmt(t)).servers;async function Ode(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await cmt(e.server)})}),t.put("/setting",async(e,r)=>{let n=Rde(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 SDr(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await IDr(e.server),r.send({code:0,data:omt})}),t.post("/verify",async(e,r)=>{let n=wde(e.body||{});if(!n.server){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let s=await T5(n),{resp:i,json:a}=await amt(n,s);if(Nde(i,a)&&n.username&&(s=await T5({...n,token:""}),{resp:i,json:a}=await amt(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 CDr=new Set([".mp4",".mkv",".avi",".wmv",".flv",".mov",".webm",".ts",".m4v",".rmvb",".rm",".3gp",".mpg",".mpeg",".vob",".iso"]),TDr=new Set([".srt",".ass",".ssa",".sub",".scc",".stl",".ttml",".vtt"]),mmt="https://img.icons8.com/fluency/96/folder-invoices--v1.png",hmt="https://img.icons8.com/color/48/video.png",wDr=new Set(["AliyundriveOpen","AliyunShare","BaiduNetdisk","BaiduShare2","Quark","QuarkShare","UC","UCShare","UCTV","115 Cloud","115 Share"]),gmt="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",Hu={},U_={},kde="alist:";function N5(t){let e=t.lastIndexOf(".");return e<0?!1:CDr.has(t.slice(e).toLowerCase())}function ymt(t){let e=t.lastIndexOf(".");return e<0?!1:TDr.has(t.slice(e).toLowerCase())}function Pde(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 Om(t,e,r=""){let n=String(r||"").trim();return n?kde+Buffer.from(JSON.stringify({serverId:n,name:t,path:e||"/"}),"utf8").toString("base64url"):`${t}||${e}`}function O5(t){let e=String(t||"");if(e.startsWith(kde))try{let n=JSON.parse(Buffer.from(e.slice(kde.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 RDr(t,e=""){let r=String(e||"").trim();if(r&&Hu[r])return Hu[r];let n=String(t||"").trim();return n&&Hu[n]?Hu[n]:Object.values(Hu).find(s=>r&&s?.id===r||n&&s?.name===n)}function Amt(t){return String(t||"").split(",")[0].trim()}function umt(t){return Amt(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function NDr(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=umt(t?.headers?.["x-forwarded-host"])||umt(t?.headers?.host);if(!n)return e;let s=Amt(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function ODr(t,e,r=""){return Buffer.from(JSON.stringify({serverId:r,name:t,path:e}),"utf8").toString("base64url")}function kDr(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 PDr(t){return String(t||"").toLowerCase().includes("115")}function DDr(t){let e=String(t?.provider||""),r=String(t?.raw_url||"");return wDr.has(e)||PDr(e)||r.includes("115cdn.net")}function BDr(t){return String(t||"/").replace(/^\/?/,"/").split("/").map((r,n)=>n===0?"":encodeURIComponent(r)).join("/")}function LDr(t,e,r){let n=new URL("/d"+BDr(e),t.server);return r&&n.searchParams.set("sign",r),n.toString()}function lmt(t,e,r,n=""){let s=r.split("/").filter(Boolean).pop()||"video.bin",i=String(t?.server?.prefix||"").replace(/\/$/,"");return`${NDr(t)}${i}/proxy/${ODr(e,r,n)}/${encodeURIComponent(s)}`}function MDr(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 WDr(t,e,r){return{...MDr(r),...$_(t,e),"User-Agent":gmt,Referer:"https://www.alipan.com/"}}function $Dr(){return{"User-Agent":gmt,Referer:"https://www.alipan.com/"}}function xmt(t){return t.id||t.server||t.name}async function w5(t,e=!1){let r=xmt(t);if(!e){if(U_[r])return U_[r];if(t.token)return t.token}let n=await T5({...t,token:e?"":t.token});return n&&(U_[r]=n),n}async function k5(t,e,r={},n=!0){let s=await w5(t),i=$_(t,s),a=await le.post(t.server+e,r,{headers:i,timeout:15e3}).catch(c=>c.response||{status:500,data:{}}),o=a.data||{};if(n&&Nde(a,o)&&t.username){let c=xmt(t);delete U_[c];let u=await w5(t,!0),d=(await le.post(t.server+e,r,{headers:$_(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 bmt(t,e,r=1){return k5(t,"/api/fs/list",{path:e,page:r,per_page:0,refresh:!1})}async function R5(t,e){return k5(t,"/api/fs/get",{path:e})}async function UDr(t,e,r,n={}){return le.request({url:t,method:r,headers:e,responseType:r==="HEAD"?"text":"stream",timeout:3e4,maxRedirects:n.maxRedirects??5,validateStatus:()=>!0})}async function _mt(t,e,r,n,s){let i=LDr(t,e,r),a=await UDr(i,WDr(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 FDr(t,e){await TR(t.server);let r;try{r=kDr(t.params?.id)}catch{return e.code(400),"bad proxy id"}let n=await P5(t.server,r);if(!n)return e.code(404),"drive not found";try{let s=await R5(n,r.path);if(!s?.raw_url)return e.code(404),"raw_url empty";if(s.sign){let i=await w5(n),a=await _mt(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 qDr(t,e,r="/"){return k5(t,"/api/fs/search",{parent:r,keywords:e,scope:0,page:1,per_page:100})}function jDr(t){let e=t.replace(/^\//,"").split("/");return e.length>1?"/"+e.slice(1).join("/"):"/"}function QDr(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 Emt(t={}){let e=String(t.server||"").replace(/\/$/,"");if(!e)return null;let r=QDr({...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 vmt(t){if(!t)return null;let e=t.id||t.name;return e?(Hu[e]=t,t):null}async function Dde(t){let e=await CR(t);for(let r of Object.keys(Hu))delete Hu[r];for(let r of Object.keys(U_))delete U_[r];for(let r of e)vmt(Emt(r));return e}async function TR(t){Object.keys(Hu).length===0&&await Dde(t)}async function wR(t,e){let r=String(e||"").trim();if(!r)return null;let n=await CR(t),s=Emt(n.find(i=>i?.id===r));return vmt(s)}async function P5(t,e={}){let r=RDr(e.name,e.serverId);return r||(e.serverId?wR(t,e.serverId):null)}async function HDr(t,e){return await Dde(t.server),{}}async function GDr(t,e){if((await Dde(t.server)).length===0)return{class:[],filters:{}};let n=[];for(let s of Object.values(Hu))n.push({type_id:Om(s.name,"/",s.id),type_name:s.name});return{class:n,filters:{}}}async function VDr(t,e){let r=await wR(t.server,t.params?.serverId);return r?{class:[{type_id:Om(r.name,"/",r.id),type_name:r.name}],filters:{}}:{class:[],filters:{}}}async function Smt(t,e){await TR(t.server);let r=t.body.id,n=Math.max(1,parseInt(t.body.page||1,10)),{serverId:s,name:i,path:a}=O5(r),o=await P5(t.server,{name:i,serverId:s});if(!o)return{page:n,pagecount:n,list:[]};let c=o.id||s;try{let u=await bmt(o,a,n),l=u.content||[],d=[];for(let h of l){let y=a.replace(/\/?$/,"/")+h.name;if(h.is_dir){let g=Om(o.name,y,c);d.push({vod_id:g,vod_name:h.name,vod_pic:h.thumb||mmt,vod_remarks:"",vod_tag:"folder",cate:{id:g,name:h.name}})}else N5(h.name)&&d.push({vod_id:Om(o.name,y,c),vod_name:h.name,vod_pic:h.thumb||hmt,vod_remarks:Pde(h.size),vod_tag:"file"})}let f=u.total||d.length,m=u.per_page||f,p=m>0?Math.ceil(f/m):1;return{page:n,pagecount:p,list:d}}catch(u){return console.error("[alist-video] category failed:",u.message),{page:n,pagecount:n,list:[]}}}async function KDr(t,e){let r=String(t.params?.serverId||"").trim(),n=await wR(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?O5(s):{path:"/"};return t.body={...t.body||{},id:Om(n.name,i.path||"/",n.id)},Smt(t,e)}async function dmt(t,e,r=3,n=0){if(n>=r)return[];try{let i=(await k5(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}):N5(u.name)?a.push({name:u.name,path:l,size:u.size}):ymt(u.name)&&o.push({name:u.name,path:l})}return{videos:a,subtitles:o,subfolders:c}}catch{return{videos:[],subtitles:[],subfolders:[]}}}async function fmt(t,e){await TR(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}=O5(s),c=await P5(t.server,{name:a,serverId:i});if(!c)continue;let u=c.id||i;try{let l=await R5(c,o),d=l.is_dir;if(!d&&N5(l.name)){n.push({vod_id:s,vod_name:l.name,vod_pic:l.thumb||"",vod_content:`\u5927\u5C0F: ${Pde(l.size)}`,vod_play_from:"Alist",vod_play_url:`${l.name}$${s}`});continue}if(d){let f=await dmt(c,o),m=[],p=[];f.videos.length>0&&(m.push("\u5F53\u524D\u76EE\u5F55"),p.push(f.videos.map(h=>`${h.name}$${Om(c.name,h.path,u)}`).join("#")));for(let h of f.subfolders){let y=await dmt(c,h.path);y.videos.length>0&&(m.push(h.name),p.push(y.videos.map(g=>`${g.name}$${Om(c.name,g.path,u)}`).join("#")))}m.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 ${m.reduce((h,y,g)=>h+p[g].split("#").length,0)} \u4E2A\u89C6\u9891`,vod_play_from:m.join("$$$"),vod_play_url:p.join("$$$")})}}catch(l){console.error("[alist-video] detail failed:",s,l.message)}}return{list:n}}async function pmt(t,e){await TR(t.server);let r=t.body?.id||"",{serverId:n,name:s,path:i}=O5(r),a=await P5(t.server,{name:s,serverId:n});if(!a)return{parse:0,url:"",header:{}};let o=a.id||n;try{let c=await R5(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(DDr(c))if(l.header=$Dr(),c.sign){let p=await w5(a),h=await _mt(a,i,c.sign,p,t);h?l.url=h:l.url=lmt(t,a.name,i,o)}else l.url=lmt(t,a.name,i,o);let d=i.substring(0,i.lastIndexOf("/")+1),f=i.substring(i.lastIndexOf("/")+1),m=f.substring(0,f.lastIndexOf("."));try{let h=((await bmt(a,d)).content||[]).filter(y=>ymt(y.name)&&y.name.includes(m)).slice(0,3);if(h.length>0){let y=[];for(let g of h)try{let A=await R5(a,d+g.name);A.raw_url&&y.push(A.raw_url)}catch{}y.length>0&&(l.subt=y[0])}}catch{}return l}catch(c){return console.error("[alist-video] play failed:",c.message),{parse:0,url:"",header:{}}}}async function Imt(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 qDr(i,r)).content||[];for(let c of o)if(c.is_dir||N5(c.name)){let l=jDr(String(c.parent||"/")).replace(/\/?$/,"/")+c.name,d=Om(i.name,l,i.id);s.push({vod_id:d,vod_name:c.name,vod_pic:c.thumb||(c.is_dir?mmt:hmt),vod_remarks:c.is_dir?"":Pde(c.size),...c.is_dir?{cate:{id:d,name:c.name}}:{}})}}catch{}return{page:n,pagecount:n,list:s}}async function zDr(t,e){return await TR(t.server),Imt(t,Object.values(Hu))}async function YDr(t,e){return await wR(t.server,t.params?.serverId),{}}async function JDr(t,e){let r=await wR(t.server,t.params?.serverId);return Imt(t,r?[r]:[])}var Cmt={meta:{key:"alist-video",name:"Alist",type:3,hidden:!0},api:async t=>{t.post("/init",HDr),t.post("/home",GDr),t.post("/category",Smt),t.post("/detail",fmt),t.post("/search",zDr),t.post("/play",pmt),t.get("/proxy/:id/:file",FDr),t.post("/server/:serverId/init",YDr),t.post("/server/:serverId/home",VDr),t.post("/server/:serverId/category",KDr),t.post("/server/:serverId/detail",fmt),t.post("/server/:serverId/search",JDr),t.post("/server/:serverId/play",pmt)}};var RR=async t=>(await t.db.getObjectDefault("/sites",{}))?.list||t.config.sites.list,XDr=async(t,e)=>{await t.db.push("/sites/list",e)},ZDr=async t=>{await t.db.delete("/sites/list")};async function Bde(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await RR(e.server)})}),t.put("/list",async(e,r)=>{await XDr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await ZDr(e.server),r.send({code:0})})}var Tmt="\u5185\u7F6E\u5F39\u5E55",e4r=9321;function Nmt(t){return String(t||"").split(",")[0].trim()}function wmt(t){return Nmt(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function Rmt(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 t4r(t,e=null){let r=String(t?.address?.()?.url||"").trim(),s=wmt(e?.headers?.["x-forwarded-host"])||wmt(e?.headers?.host),i=Nmt(e?.headers?.["x-forwarded-proto"]),a=r.startsWith("https://")?"https":"http",o=i||String(e?.protocol||"").trim()||a;if(s&&!Rmt(s))return`${o}://${s}`;let c=String(nm()||"").trim(),u=Number.parseInt(String(t?.address?.()?.port||""),10);return c&&!Rmt(c)?Number.isFinite(u)&&u>0?`${o}://${c}:${u}`:`${o}://${c}`:r}function Omt(t,e,r=null){if(!e||typeof e!="object"||!Array.isArray(e.urls))return e;let n=t4r(t,r),s=xce(n,e4r),i=e.urls.map(a=>{if(!a||typeof a!="object")return a;let o=String(a.name||"").trim();return a.builtin===!0||o===Tmt?{...a,builtin:!0,name:o||Tmt,address:s}:a});return{...e,urls:i}}var D5=async(t,e=null)=>{let n=await t.db.getObjectDefault("/danmu")||t.config.danmu;return Omt(t,n,e)},r4r=async(t,e,r=null)=>{await t.db.push("/danmu",Omt(t,e,r))},n4r=async t=>{await t.db.delete("/danmu")},s4r=3,Lde=(t,e=s4r)=>{messageToDart({action:"toast",opt:{message:t,duration:e}})},i4r=t=>{try{let e=new URL(t);return e.searchParams.set("format","json"),e.toString()}catch{return null}},a4r=t=>Array.isArray(t?.comments)?t.comments.length:Array.isArray(t)?t.length:0;async function Mde(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await D5(e.server,e)})}),t.put("/setting",async(e,r)=>{await r4r(e.server,e.body,e),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await n4r(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||i4r(s);if(!s){r.code(400).send({code:1,message:"Missing push url"});return}a&&(async()=>{try{let o=await he.get(a,{timeout:1e4}),c=a4r(o.data);c>0?Lde(`\u901A\u8FC7 ${i} - \u89E3\u6790\u5230 ${c} \u6761\u5F39\u5E55`):Lde("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}catch(o){console.error("Manual danmu preview failed:",o),Lde("\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>
<meta charset="utf-8">
<title>\u5F39\u5E55\u641C\u7D22</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="https://lib.baomitu.com/antd/5.25.0/reset.min.css"> </head>
<body>
<div id="app"></div>
<script crossorigin src="https://lib.baomitu.com/react/18.2.0/umd/react.production.min.js"></script>
<script crossorigin src="https://lib.baomitu.com/react-dom/18.2.0/umd/react-dom.production.min.js"></script>
<script crossorigin src="https://lib.baomitu.com/axios/0.26.0/axios.min.js"></script>
<script crossorigin src="https://lib.baomitu.com/dayjs/1.10.8/dayjs.min.js"></script>
<script crossorigin src="https://lib.baomitu.com/antd/5.25.0/antd.min.js"></script>
<script>${globalThis.danmuBundle}</script>
</body>
</html>
`)})}var nht=Ce(Zn(),1),sht=Ce(BI(),1),ofe=Ce(pC(),1);var Wde=["\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"],o4r=["\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"],c4r=[...Wde,...o4r],kmt=new RegExp(c4r.join("|"),"ig"),u4r=new RegExp(Wde.join("|"),"ig");function Qy(t){if(!t||!t.trim())return"";let e=t.trim();e=e.replace(/丨/g,""),e=e.replace(/-/g," "),e=e.replace(u4r,""),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((?!${Wde.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,""],[kmt,""],[/豆瓣\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(kmt,"").replace(/\d+/g,"").replace(/\s+/g," ").trim())}return e.trim()}function $de(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?xp(r[1]).padStart(2,"0"):""}var Pmt={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},Dmt={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4,\u4EBF:1e8};function Bmt(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(Pmt.hasOwnProperty(a))n=Pmt[a];else if(Dmt.hasOwnProperty(a)){let o=Dmt[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 xp(t){return t&&t.replace(/([零一二三四五六七八九十百千万亿]+)|(\d+)/g,(e,r,n)=>{if(r){let s=Bmt(r);return s!==-1?String(s):e}else if(n)return String(parseInt(n,10));return e})}function l4r(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 d4r(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 xp(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 xp(n)}return"-1"}function f4r(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=xp(c),o+c+u}let a=Array.from(t.matchAll(/(?:s\d+.*?e|e)(\d{1,8})(?!\d)/gi));if(a.length>0)return xp(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=Bmt(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)?xp(i[1]):"-1"}function p4r(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 xp(s)}return"-1"}function NR(t){if(!t)return"-1";let e=t,r=e.lastIndexOf(".");r>0&&(e=e.substring(0,r));let n=l4r(e),s=f4r(n);if(s!=="-1")return s;let i=d4r(e);return i!=="-1"?i:p4r(n)}var Ude=async t=>(await t.db.getObjectDefault("/t4",{}))?.list||t.config.t4?.list||[],m4r=async(t,e)=>{await t.db.push("/t4/list",e)},h4r=async t=>{await t.db.delete("/t4/list")};async function Fde(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Ude(e.server)})}),t.put("/list",async(e,r)=>{await m4r(e.server,e.body),r.send({code:0})}),t.delete("/list",async(e,r)=>{await h4r(e.server),r.send({code:0})})}function qde(t,e){let r=he.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{filter:!0}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){try{let{data:l}=await r.get("",{params:{play:u.body.id,flag:u.body.flag}});return!l.url&&!l.urls&&u.body.id.startsWith("http")?{url:u.body.id}:l}catch(l){console.warn(l)}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,t4:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var g4r=["/api.php/provide/vod/","/api.php/provide/vod","/api.php/app/","/api.php/app"],B5="\u300C\u91C7\u300D",y4r=[{name:`${B5}\u7535\u5F71\u5929\u5802`,address:"http://dyttzyw.com/api.php/provide/vod/"}];function Qde(t,e="https"){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:`${e}://${r}`:""}function Hde(t){try{return new URL(t)}catch{return null}}function A4r(t=""){let e=String(t||"").toLowerCase();return e==="localhost"||e.includes(".")||e.includes(":")||/^\d{1,3}(?:\.\d{1,3}){3}$/.test(e)}function x4r(t){for(let e of["ac","wd","t","pg","ids","quick"])t.searchParams.delete(e);return t.hash="",t}function Mmt(t){let e=String(t||"").trim(),r=/^https?:\/\//i.test(e),n=Hde(Qde(e));return!n||!["http:","https:"].includes(n.protocol)||!r&&!A4r(n.hostname)?"":(x4r(n),n.toString())}function b4r(t={},e=""){let r=String(t.name||t.title||e||"").trim();return r||Hde(Qde(t.address||t.api||t.url||""))?.hostname||"CMS"}function _4r(t){let e=String(t||"").trim();return e?e.startsWith(B5)?e:`${B5}${e}`:`${B5}CMS`}function Gde(t,e=""){if(!t||typeof t!="object")return null;let r=String(t.address||t.api||t.url||"").trim(),n=Mmt(r);return n?{name:_4r(b4r({...t,address:n},e)),address:n}:null}function Wmt(t){if(typeof t=="string")try{return Wmt(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 E4r(t){let e=new Set;return Wmt(t).map(r=>Gde(r,r?.key)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}function v4r(t){let e=String(t||"").trim(),r=[],n=s=>{let i=Mmt(s);i&&!r.includes(i)&&r.push(i)};for(let s of["https","http"]){let i=Hde(Qde(e,s));if(!i)continue;if(n(i.toString()),!i.pathname||i.pathname==="/")for(let o of g4r)n(`${i.origin}${o}`)}return r}async function Lmt(t,e=void 0){let r=await le.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 S4r(t){return!!t&&typeof t=="object"&&Array.isArray(t.class)}async function I4r(t,e=""){let r=String(t||"").trim();if(!r)throw new Error("\u8BF7\u8F93\u5165 CMS \u5730\u5740");let n=v4r(r);for(let s of n)try{let i=await Lmt(s),a=E4r(i);if(a.length>0)return{type:"config",sources:a}}catch{}for(let s of n)try{let i=await Lmt(s,{ac:"class"});if(S4r(i))return{type:"cms",sources:[Gde({name:e,address:s})].filter(Boolean)}}catch{}throw new Error("\u672A\u8BC6\u522B\u5230\u53EF\u7528\u7684 CMS \u6E90")}function jde(t=[]){let e=new Set;return(Array.isArray(t)?t:[]).map(r=>Gde(r)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}var Vde=async t=>{let e=await t.db.getObjectDefault("/cms",{});if(e&&Object.prototype.hasOwnProperty.call(e,"list"))return jde(e.list);let r=Array.isArray(t.config.cms?.list)?t.config.cms.list:[];return jde(r.length>0?r:y4r)},C4r=async(t,e)=>{await t.db.push("/cms/list",jde(e))},T4r=async t=>{await t.db.delete("/cms/list")};async function Kde(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Vde(e.server)})}),t.put("/list",async(e,r)=>{await C4r(e.server,e.body),r.send({code:0})}),t.post("/resolve",async(e,r)=>{try{r.send({code:0,data:await I4r(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 T4r(e.server),r.send({code:0})})}var w4r=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,zde="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0 Safari/537.36";function R4r(t=""){return/^https?:\/\//i.test(String(t||"").trim())}function N4r(t=""){return w4r.test(String(t||"").trim())}function O4r(t="",e=""){try{return new URL(String(t||"").trim(),e).toString()}catch{return String(t||"").trim()}}function k4r(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 Yde(t,e){let r=le.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(!R4r(l)||N4r(l))return{parse:0,url:l};try{let{data:d}=await le.get(l,{timeout:1e4,headers:{"User-Agent":zde,Referer:l}}),f=k4r(d);if(f)return{parse:0,url:O4r(f,l),header:{Referer:l,"User-Agent":zde}}}catch(d){console.warn(d)}return{parse:1,url:l,header:{Referer:l,"User-Agent":zde}}}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 Hy={HOME:0,CATEGORY:0,SEARCH:0,DETAIL:12e4,PLAY:3e4,SPIDERS:0},Jde=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 L5(t={}){return new Jde(t.max||800)}async function bp(t,e,r,n){return!t||typeof t.wrap!="function"||Number(r)<=0?n():t.wrap(e,r,n)}function km(t=[]){return t.map(e=>String(e)).join(":")}function P4r(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 Xde(t){return String(t||"").split(",")[0].trim()}function M5(t=null){let r=Xde(t?.headers?.["x-forwarded-host"])||Xde(t?.headers?.host);if(!r)return{headers:void 0,cacheVary:"-"};let s=Xde(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 D4r(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 _d(t){let e=t.embyContext?.cache;return bp(e,"emby:enabled-video-spiders:v2",Hy.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 RR(t).catch(()=>[]),a=D4r(s,i),o={},c=[];return a.forEach(u=>{let l=P4r(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 Gy(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 Vy(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||""),m=String(d?.vod_play_url||""),p=f?f.split("$$$").filter(Boolean).length:0,h=m?m.split("$$$").map(y=>String(y||"").split("#").filter(Boolean).length):[];console.log("[Emby Spider] detail:",JSON.stringify({spiderKey:e,spiderType:r,request:{id:String(s?.id||"")},response:{listCount:Array.isArray(l?.list)?l.list.length:0,vodId:String(d?.vod_id||""),vodName:String(d?.vod_name||""),vodRemarks:String(d?.vod_remarks||""),lineCount:p,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 OR(t,e,r=null){let n=t.embyContext?.cache,s=M5(r),i=km(["emby","home",e.spiderKey,e.spiderType,e.apiBase||"",s.cacheVary]);return bp(n,i,Hy.HOME,()=>Vy(t,e.spiderKey,e.spiderType,"home",{},{headers:s.headers,apiBase:e.apiBase}))}async function F_(t,e,r,n=1,s={},i=null){let a=t.embyContext?.cache,o=M5(i),c=km(["emby","category",e.spiderKey,e.spiderType,e.apiBase||"",r,n,JSON.stringify(s||{}),o.cacheVary]);return bp(a,c,Hy.CATEGORY,()=>Vy(t,e.spiderKey,e.spiderType,"category",{id:r,page:n,filter:!0,filters:s||{}},{headers:o.headers,apiBase:e.apiBase}))}async function Hc(t,e,r,n=null){let s=t.embyContext?.cache,i=M5(n),a=km(["emby","detail",e.spiderKey,e.spiderType,e.apiBase||"",r,i.cacheVary]);return bp(s,a,Hy.DETAIL,()=>Vy(t,e.spiderKey,e.spiderType,"detail",{id:r},{headers:i.headers,apiBase:e.apiBase}))}async function $mt(t,e,r,n=1){let s=t.embyContext?.cache,i=km(["emby","search",e.spiderKey,e.spiderType,e.apiBase||"",r,n]);return bp(s,i,Hy.SEARCH,()=>Vy(t,e.spiderKey,e.spiderType,"search",{wd:r,page:n},{apiBase:e.apiBase}))}async function Pm(t,e,r,n,s=null){let i=t.embyContext?.cache,a=M5(s),o=km(["emby","play",e.spiderKey,e.spiderType,e.apiBase||"",r,n,a.cacheVary]);return bp(i,o,Hy.PLAY,()=>Vy(t,e.spiderKey,e.spiderType,"play",{flag:r,id:n},{headers:a.headers,apiBase:e.apiBase}))}function Gc(t){return!t||!Array.isArray(t.list)||!t.list.length?null:t.list[0]}function Ed(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}var Zde=Ce(require("node:fs"),1),kR=Ce(require("node:path"),1),B4r=()=>{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
* \u5982\u679C\u4E0D\u60F3\u88AB\u6539\u53D8 \u8BF7\u81EA\u5B9A\u4E49\u4E00\u4E2A\u53D8\u91CF\r
*/\r
get webSite() {\r
return this._webSite\r
},\r
set webSite(value) {\r
this._webSite = value\r
},\r
\r
_uzTag: '',\r
/**\r
* \u6269\u5C55\u6807\u8BC6\uFF0C\u521D\u6B21\u52A0\u8F7D\u65F6\uFF0Cuz \u4F1A\u81EA\u52A8\u8D4B\u503C\uFF0C\u8BF7\u52FF\u4FEE\u6539\r
* \u7528\u4E8E\u8BFB\u53D6\u73AF\u5883\u53D8\u91CF\r
*/\r
get uzTag() {\r
return this._uzTag\r
},\r
set uzTag(value) {\r
this._uzTag = value\r
},\r
}\r
\r
// \u7F13\u5B58\u7B5B\u9009\u6570\u636E\r
let cachedFilters = {}\r
// \u7F13\u5B58\u63A8\u8350\u5217\u8868\r
let cachedHomeList = []\r
\r
const encodeBase64Utf8 = (text) => {\r
if (typeof Buffer !== 'undefined') {\r
return Buffer.from(text, 'utf-8').toString('base64')\r
}\r
\r
if (typeof btoa !== 'undefined') {\r
const binary = encodeURIComponent(text).replace(/%([0-9A-F]{2})/g, (_match, hex) => {\r
return String.fromCharCode(parseInt(hex, 16))\r
})\r
return btoa(binary)\r
}\r
\r
return text\r
}\r
\r
const isDoubanSource = () => {\r
const webSite = String(appConfig.webSite || '').toLowerCase()\r
return webSite.indexOf('/video/douban') !== -1 || webSite.indexOf('/api/douban') !== -1\r
}\r
\r
/**\r
* \u8F6C\u6362\u56FE\u7247URL\u683C\u5F0F\r
* \u4ECE @Referer=...@User-Agent=... \u683C\u5F0F\u8F6C\u6362\u4E3A #headers#{...} JSON\u683C\u5F0F\r
* @param {string} url - \u539F\u59CB\u56FE\u7247URL\r
* @returns {string} - \u8F6C\u6362\u540E\u7684URL\r
*/\r
const convertImageUrl = (url) => {\r
if (!url || typeof url !== 'string') return url\r
\r
// \u5DF2\u7ECF\u662F\u6B63\u786E\u683C\u5F0F\uFF0C\u76F4\u63A5\u8FD4\u56DE\r
if (url.indexOf('#headers#') !== -1) {\r
return url\r
}\r
\r
// \u5904\u7406\u8C46\u74E3\u56FE\u7247\r
if (url.indexOf('doubanio.com') !== -1) {\r
// \u5148\u53BB\u9664\u65E7\u7684 @Referer=...@User-Agent=... \u683C\u5F0F\r
const baseUrl = url.split('@')[0].replace(/^http:/, 'https:')\r
const headers = {\r
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36',\r
'Referer': 'https://movie.douban.com/'\r
}\r
return baseUrl + '#headers#' + JSON.stringify(headers)\r
}\r
\r
// \u68C0\u67E5\u662F\u5426\u5305\u542B @Referer= \u548C @User-Agent=\r
if (url.indexOf('@Referer=') === -1 && url.indexOf('@User-Agent=') === -1) {\r
return url\r
}\r
\r
try {\r
// \u5206\u5272URL\u548Cheaders\u90E8\u5206\r
const parts = url.split('@')\r
const baseUrl = parts[0]\r
const headers = {}\r
\r
// \u89E3\u6790headers\r
for (let i = 1; i < parts.length; i++) {\r
const part = parts[i]\r
const equalIndex = part.indexOf('=')\r
if (equalIndex !== -1) {\r
const key = part.substring(0, equalIndex)\r
const value = part.substring(equalIndex + 1)\r
headers[key] = value\r
}\r
}\r
\r
// \u5982\u679C\u6709headers\uFF0C\u8F6C\u6362\u4E3AJSON\u683C\u5F0F\r
if (Object.keys(headers).length > 0) {\r
return baseUrl + '#headers#' + JSON.stringify(headers)\r
}\r
\r
return baseUrl\r
} catch (error) {\r
// \u5982\u679C\u89E3\u6790\u5931\u8D25\uFF0C\u8FD4\u56DE\u539F\u59CBURL\r
return url\r
}\r
}\r
\r
/**\r
* \u5904\u7406\u89C6\u9891\u6570\u636E\uFF0C\u8F6C\u6362\u56FE\u7247URL\u683C\u5F0F\r
* @param {Array|Object} data - \u89C6\u9891\u6570\u636E\r
* @returns {Array|Object} - \u5904\u7406\u540E\u7684\u6570\u636E\r
*/\r
const processVideoData = (data) => {\r
if (!data) return data\r
\r
if (Array.isArray(data)) {\r
return data.map(item => processVideoData(item))\r
}\r
\r
if (typeof data === 'object') {\r
const processed = { ...data }\r
if (processed.vod_pic) {\r
processed.vod_pic = convertImageUrl(processed.vod_pic)\r
}\r
// \u8C46\u74E3\u6E90\u8DF3\u8F6C\u641C\u7D22\u800C\u4E0D\u662F\u8FDB\u5165\u8BE6\u60C5\r
if (isDoubanSource()) {\r
processed.goSearch = true\r
}\r
return processed\r
}\r
\r
return data\r
}\r
\r
const fetch = async (params) => {\r
let p = ''\r
if (params) {\r
const tmp = []\r
for (let key in params) {\r
tmp.push(\`\${key}=\${encodeURIComponent(params[key])}\`)\r
}\r
p = \`&\${tmp.join('&')}\`\r
}\r
const res = await req(\`\${appConfig.webSite}\${p}\`)\r
return res.data\r
}\r
\r
/**\r
* \u5F02\u6B65\u83B7\u53D6\u5206\u7C7B\u5217\u8868\u7684\u65B9\u6CD5\u3002\r
* @param {UZArgs} args\r
* @returns {@Promise<JSON.stringify(new RepVideoClassList())>}\r
*/\r
async function getClassList(args) {\r
var backData = new RepVideoClassList()\r
try {\r
const ret = await fetch()\r
\r
// \u7F13\u5B58\u7B5B\u9009\u6570\u636E\r
if (ret.filters) {\r
cachedFilters = ret.filters\r
}\r
\r
// \u7F13\u5B58\u63A8\u8350\u5217\u8868\r
if (ret.list && Array.isArray(ret.list)) {\r
cachedHomeList = ret.list\r
}\r
\r
// \u5904\u7406\u5206\u7C7B\u5217\u8868\uFF0C\u6807\u8BB0\u54EA\u4E9B\u6709\u7B5B\u9009\r
if (ret.class && Array.isArray(ret.class)) {\r
const classList = ret.class.map(item => {\r
const hasFilter = ret.filters && ret.filters[item.type_id] && ret.filters[item.type_id].length > 0\r
return {\r
type_id: item.type_id,\r
type_name: item.type_name,\r
hasSubclass: hasFilter\r
}\r
})\r
// \u5728\u524D\u9762\u6DFB\u52A0\u63A8\u8350\u5206\u7C7B\r
if (cachedHomeList.length > 0) {\r
classList.unshift({\r
type_id: 'home_recommend',\r
type_name: '\u63A8\u8350',\r
hasSubclass: false\r
})\r
}\r
backData.data = classList\r
} else {\r
backData.data = ret.class\r
}\r
} catch (error) {\r
backData.error = error.toString()\r
}\r
return JSON.stringify(backData)\r
}\r
\r
/**\r
* \u83B7\u53D6\u4E8C\u7EA7\u5206\u7C7B\u5217\u8868\u7B5B\u9009\u5217\u8868\u7684\u65B9\u6CD5\u3002\r
* @param {UZArgs} args\r
* @returns {@Promise<JSON.stringify(new RepVideoSubclassList())>}\r
*/\r
async function getSubclassList(args) {\r
var backData = new RepVideoSubclassList()\r
try {\r
const typeId = args.url\r
\r
// \u4ECE\u7F13\u5B58\u4E2D\u83B7\u53D6\u8BE5\u5206\u7C7B\u7684\u7B5B\u9009\u6570\u636E\r
if (cachedFilters && cachedFilters[typeId]) {\r
const filters = cachedFilters[typeId]\r
\r
// \u8F6C\u6362\u7B5B\u9009\u6570\u636E\u683C\u5F0F\r
// API\u683C\u5F0F: {key: 'year', name: '\u5E74\u4EFD', value: [{n: '\u5168\u90E8', v: 0}, ...]}\r
// uz\u683C\u5F0F: {name: '\u5E74\u4EFD', list: [{name: '\u5168\u90E8', id: '0', key: 'year'}, ...]}\r
backData.data.filter = filters.map(filterGroup => {\r
return {\r
name: filterGroup.name,\r
list: filterGroup.value.map(item => {\r
return {\r
name: item.n,\r
id: String(item.v),\r
key: filterGroup.key\r
}\r
})\r
}\r
})\r
}\r
} catch (error) {\r
backData.error = error.toString()\r
}\r
return JSON.stringify(backData)\r
}\r
\r
/**\r
* \u83B7\u53D6\u5206\u7C7B\u89C6\u9891\u5217\u8868\r
* @param {UZArgs} args\r
* @returns {@Promise<JSON.stringify(new RepVideoList())>}\r
*/\r
async function getVideoList(args) {\r
var backData = new RepVideoList()\r
try {\r
// \u5982\u679C\u662F\u63A8\u8350\u5206\u7C7B\uFF0C\u8FD4\u56DE\u7F13\u5B58\u7684\u63A8\u8350\u5217\u8868\r
if (args.url === 'home_recommend') {\r
// \u63A8\u8350\u53EA\u6709\u7B2C\u4E00\u9875\uFF0C\u907F\u514D\u91CD\u590D\u52A0\u8F7D\r
if (args.page > 1) {\r
backData.data = []\r
} else {\r
backData.data = processVideoData(cachedHomeList)\r
}\r
return JSON.stringify(backData)\r
}\r
\r
const ret = await fetch({\r
ac: 'detail',\r
t: args.url,\r
pg: args.page,\r
})\r
backData.data = processVideoData(ret.list)\r
} catch (error) {\r
backData.error = error.toString()\r
}\r
return JSON.stringify(backData)\r
}\r
\r
/**\r
* \u83B7\u53D6\u4E8C\u7EA7\u5206\u7C7B\u89C6\u9891\u5217\u8868 \u6216 \u7B5B\u9009\u89C6\u9891\u5217\u8868\r
* @param {UZSubclassVideoListArgs} args\r
* @returns {@Promise<JSON.stringify(new RepVideoList())>}\r
*/\r
async function getSubclassVideoList(args) {\r
var backData = new RepVideoList()\r
try {\r
// \u6784\u5EFA\u57FA\u7840\u8BF7\u6C42\u53C2\u6570\r
const params = {\r
ac: 'detail',\r
t: args.mainClassId,\r
pg: args.page || 1,\r
}\r
\r
// \u5904\u7406\u7B5B\u9009\u53C2\u6570 - \u53C2\u8003\u74DC\u5B50APP.js\u7684\u5B9E\u73B0\r
if (args.filter && Array.isArray(args.filter) && args.filter.length > 0) {\r
// \u6784\u5EFA\u7B5B\u9009\u53C2\u6570\u5BF9\u8C61\r
const filterObj = {}\r
args.filter.forEach(filterItem => {\r
// filterItem \u5305\u542B: {name, id, key}\r
// key \u662F\u7B5B\u9009\u7C7B\u578B\uFF08\u5982 'year', 'area', 'sort'\uFF09\r
// id \u662F\u9009\u4E2D\u7684\u503C\r
if (filterItem.key && filterItem.id) {\r
filterObj[filterItem.key] = filterItem.id\r
}\r
})\r
\r
// \u5C06\u7B5B\u9009\u53C2\u6570\u8F6C\u6362\u4E3A base64 \u7F16\u7801\u7684 JSON \u5B57\u7B26\u4E32\r
// \u4F7F\u7528 UZUtils \u6216\u8005\u539F\u751F\u65B9\u6CD5\u8FDB\u884C base64 \u7F16\u7801\r
try {\r
const filterJson = JSON.stringify(filterObj)\r
params.ext = encodeBase64Utf8(filterJson)\r
} catch (e) {\r
// \u7F16\u7801\u5931\u8D25\uFF0C\u5FFD\u7565\u7B5B\u9009\u53C2\u6570\r
console.error('\u7B5B\u9009\u53C2\u6570\u7F16\u7801\u5931\u8D25:', e)\r
}\r
}\r
\r
// \u53D1\u8D77\u8BF7\u6C42\r
const ret = await fetch(params)\r
backData.data = processVideoData(ret.list)\r
} catch (error) {\r
backData.error = error.toString()\r
}\r
return JSON.stringify(backData)\r
}\r
\r
/**\r
* \u83B7\u53D6\u89C6\u9891\u8BE6\u60C5\r
* @param {UZArgs} args\r
* @returns {@Promise<JSON.stringify(new RepVideoDetail())>}\r
*/\r
async function getVideoDetail(args) {\r
var backData = new RepVideoDetail()\r
try {\r
const ret = await fetch({\r
ac: 'detail',\r
ids: args.url,\r
})\r
if (ret.list && ret.list.length > 0) {\r
backData.data = processVideoData(ret.list[0])\r
}\r
} catch (error) {\r
backData.error = error.toString()\r
}\r
return JSON.stringify(backData)\r
}\r
\r
/**\r
* \u83B7\u53D6\u89C6\u9891\u7684\u64AD\u653E\u5730\u5740\r
* @param {UZArgs} args\r
* @returns {@Promise<JSON.stringify(new RepVideoPlayUrl())>}\r
*/\r
async function getVideoPlayUrl(args) {\r
var backData = new RepVideoPlayUrl()\r
try {\r
const ret = await fetch({\r
flag: args.flag,\r
play: args.url,\r
})\r
const flag = args.flag\r
\r
if (ret.jx === 1 || ret.parse === 1) {\r
// \u5F53\u9700\u8981\u89E3\u6790\u65F6\uFF0C\u4F7F\u7528\u55C5\u63A2\u6A21\u5F0F\r
backData.sniffer = {\r
url: ret.url || args.url,\r
ua: ret.header?.['User-Agent'] || 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36',\r
}\r
// \u5982\u679C\u6709header\u4FE1\u606F\uFF0C\u4F20\u9012\u7ED9\u64AD\u653E\u5668\r
if (ret.header) {\r
backData.headers = ret.header\r
}\r
} else {\r
// \u83B7\u53D6\u97F3\u9891URL\uFF08\u5982\u679C\u5B58\u5728\uFF09\r
const audioUrl = ret.extra && ret.extra.audio ? ret.extra.audio : null\r
\r
if (Array.isArray(ret.url)) {\r
const nameMap = {\r
RAW: {\r
name: '\u539F\u753B',\r
priority: flag == 'quark' ? 0 : 9999,\r
},\r
'4k': {\r
name: '4k',\r
priority: 3000,\r
},\r
super: {\r
name: '\u8D85\u6E05',\r
priority: 2000,\r
},\r
high: {\r
name: '\u9AD8\u6E05',\r
priority: 1000,\r
},\r
low: {\r
name: '\u6D41\u7545',\r
priority: 100,\r
},\r
//\r
QHD: { name: '\u8D85\u6E05', priority: 4000 },\r
FHD: { name: '\u9AD8\u6E05', priority: 3000 },\r
HD: { name: '\u6807\u6E05', priority: 2000 },\r
SD: { name: '\u666E\u753B', priority: 1000 },\r
LD: { name: '\u6781\u901F', priority: 100 },\r
//\r
FOUR_K: { name: '4K', priority: 4000 },\r
SUPER: { name: '\u8D85\u6E05', priority: 3000 },\r
HIGH: { name: '\u9AD8\u6E05', priority: 2000 },\r
NORMAL: { name: '\u6D41\u7545', priority: 1000 },\r
}\r
let urls = ret.url.reduce((acc, curr, index, array) => {\r
if (index % 2 === 0) {\r
if (curr.startsWith('\u4EE3\u7406')) {\r
return acc\r
}\r
const urlItem = {\r
name: nameMap[curr]?.name ?? curr,\r
url: array[index + 1],\r
header: ret.header,\r
priority: nameMap[curr]?.priority ?? 0,\r
}\r
// \u5982\u679C\u6709\u97F3\u9891URL\uFF0C\u6DFB\u52A0\u5230\u6BCF\u4E2A\u753B\u8D28\u9009\u9879\u4E2D\r
if (audioUrl) {\r
urlItem.audioUrl = audioUrl\r
}\r
acc.push(urlItem)\r
}\r
return acc\r
}, [])\r
backData.urls = urls\r
backData.data = urls[0]?.url || ''\r
} else {\r
// \u5355\u4E2AURL\u7684\u60C5\u51B5\uFF0C\u4E5F\u6784\u5EFAurls\u6570\u7EC4\r
const urlItem = {\r
name: '\u9ED8\u8BA4',\r
url: ret.url,\r
header: ret.header,\r
priority: 0,\r
}\r
// \u5982\u679C\u6709\u97F3\u9891URL\uFF0C\u6DFB\u52A0\u5230urlItem\u4E2D\r
if (audioUrl) {\r
urlItem.audioUrl = audioUrl\r
}\r
backData.urls = [urlItem]\r
backData.data = ret.url || ''\r
}\r
if (ret.header) backData.headers = ret.header\r
\r
// \u540C\u65F6\u5728\u9876\u5C42\u4E5F\u6DFB\u52A0audioUrl\uFF08\u517C\u5BB9\u6027\uFF09\r
if (audioUrl) {\r
backData.audioUrl = audioUrl\r
}\r
}\r
} catch (error) {\r
backData.error = error.toString()\r
}\r
return JSON.stringify(backData)\r
}\r
\r
/**\r
* \u641C\u7D22\u89C6\u9891\r
* @param {UZArgs} args\r
* @returns {@Promise<JSON.stringify(new RepVideoList())>}\r
*/\r
async function searchVideo(args) {\r
var backData = new RepVideoList()\r
try {\r
const ret = await fetch({\r
wd: args.searchWord,\r
pg: args.page,\r
})\r
backData.data = processVideoData(ret.list)\r
} catch (error) {\r
backData.error = error.toString()\r
}\r
return JSON.stringify(backData)\r
}\r
`}catch{return""}},Umt=t=>{let e=String(t||"").trim();return e.toLowerCase().endsWith(".js")?e.slice(0,-3):e},Fmt=(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},qmt=(t,e,r={})=>Fmt(`${t}/api/${encodeURIComponent(e)}`,{filter:!0,...r}),jmt=(t,e,r={})=>Fmt(`${t}/uz.js`,{...r,key:e}),L4r=()=>{let t=[kR.default.resolve(process.cwd(),"src/assets/uz.js"),kR.default.resolve(process.cwd(),"nodejs/src/assets/uz.js"),kR.default.resolve(process.cwd(),"dist/assets/uz.js"),kR.default.resolve(process.cwd(),"nodejs/dist/assets/uz.js")],e=t.find(r=>Zde.default.existsSync(r));if(!e)throw new Error(`uz.js asset not found: ${t.join(", ")}`);return e},Qmt=()=>B4r()||Zde.default.readFileSync(L4r(),"utf8"),Hmt=t=>({vod:t.map(e=>({key:e.module,name:e.name,api:e.scriptUrl,webSite:e.t4ApiUrl,version:1,type:101}))});var M4r=new Set(["0","false","no","off"]),W5=()=>({username:process.env.CATPAW_DIST_AUTH_USER||"CatPawPlay",password:process.env.CATPAW_DIST_AUTH_PASS||"CatPawPlay"}),$5=()=>{let t=String(process.env.CATPAW_DIST_AUTH||"").trim().toLowerCase();return!M4r.has(t)},PR=(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||""},U5=(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 j_="/spider",W4r=new Set([".cjs",".mjs",".js"]),iht=/^[a-z0-9_-]{2,32}$/,aht=new Set(["http:","https:"]),MR="nodejs_",oht="__catpawProfile",$4r=new Set([oht,"server","embyPlayback"]),U4r=[{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"}],DR={key:"",expireAt:0,spiders:[]},Dm={key:"",promise:null},Gmt=new Map,F4r=t=>({...t.query&&typeof t.query=="object"?t.query:{},...t.body&&typeof t.body=="object"?t.body:{}}),efe=(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},q4r=(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}}},j4r=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},Q4r=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},H4r=t=>{let e=String(t||"").trim();return e.toLowerCase().startsWith(MR)?e.slice(MR.length):e},cht=(t,e,r)=>{!r||Number(r.spiderType)!==3||e.map(n=>String(n||"").trim()).filter(Boolean).forEach(n=>{t.set(n.toLowerCase(),r)})},G4r=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:`${j_}/${encodeURIComponent(n)}/${s}`};cht(e,[n,`${MR}${n}`],i)}),e},Vmt=(t,e)=>{let r=String(e||"").trim();if(!r)return null;let n=r.toLowerCase(),s=n.startsWith(MR)?n.slice(MR.length):n;return t.get(n)||t.get(s)||null},V4r=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)}},K4r=(t,e)=>{let r=V4r(t.headers?.authorization),n=W5();return r?.username===n.username&&r?.password===n.password?!0:(e.code(401).header("WWW-Authenticate",'Basic realm="CatPaw dist"').send("Authentication required"),!1)},z4r=t=>Us.default.resolve(process.cwd(),"dist",t),uht=t=>Object.prototype.toString.call(t)==="[object Object]",ife=(t,e={})=>{try{return JSON.parse(JSON.stringify(t??e))}catch{return e}},Y4r=t=>JSON.stringify(t,null,2).replace(/^(\s*)"([A-Za-z_$][\w$]*)":/gm,"$1$2:"),J4r=async t=>{try{let e=await t.getData("/");return uht(e)?e:{}}catch{return{}}},X4r=t=>{let e={};return Object.entries(uht(t)?t:{}).forEach(([r,n])=>{$4r.has(r)||(e[r]=ife(n,n))}),e},Z4r=async({db:t,config:e})=>{let r=await J4r(t),n=X4r(r),s={...ife(e,{}),...ife(n,{})};return delete s.server,Object.keys(n).length>0&&(s[oht]=n),["var index_config = {"," server: {}, //\u8FD9\u91CC\u4E0D\u8981\u52A8\uFF0C\u52A0\u7A7A\u683C\u90FD\u4E0D\u884C\uFF0C\u540E\u53F0\u81EA\u52A8\u751F\u6210",Y4r(s).replace(/^\{\n?/,"").replace(/\n?\}$/,""),"};",'if (typeof module !== "undefined" && module.exports) module.exports = index_config;',""].join(`
`)},eBr=async(t,e,r)=>(t.md5Source||t.fileName)!=="index.config.js"?e:Buffer.from(await Z4r(r),"utf8"),tBr=async(t,e,r,n)=>{if(K4r(e,r))try{let s=t.md5Source||t.fileName,i=await q_.default.readFile(z4r(s)),a=await eBr(t,i,n),o=t.md5Source?(0,Q5.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}},tfe=(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},rfe=(t,e=0)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?r:e},rBr=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return aht.has(r.protocol)?(r.hash="",r.href):""}catch{return""}},Kmt=t=>{let r=(Array.isArray(t)?t:typeof t=="string"?t.split(/[\r\n,;]/):[]).map(n=>rBr(n)).filter(Boolean);return[...new Set(r)]},nfe=(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))},nBr=async t=>{try{let e=await q_.default.stat(t);return`${e.mtimeMs}-${e.size}`}catch{return"0"}},lht=(t={})=>{let e=t.customSpiders||{},r=process.env.NODE_PATH||"/data",n=typeof e.dir=="string"?e.dir.trim():"",s=Kmt(process.env.CATPAW_CUSTOM_SPIDER_URLS),i=Kmt(e.urls),a=s.length>0?s:i,o=process.env.CATPAW_CUSTOM_SPIDER_DIR||n||Us.default.join(r,"custom-spiders");return{enabled:tfe(process.env.CATPAW_CUSTOM_SPIDER_ENABLED,e.enabled??!0),strict:tfe(process.env.CATPAW_CUSTOM_SPIDER_STRICT,e.strict??!1),allowOverride:tfe(process.env.CATPAW_CUSTOM_SPIDER_ALLOW_OVERRIDE,e.allowOverride??!1),cacheTtlMs:Math.max(0,rfe(process.env.CATPAW_CUSTOM_SPIDER_CACHE_TTL_MS,e.cacheTtlMs??5e3)),factoryTimeoutMs:Math.max(0,rfe(process.env.CATPAW_CUSTOM_SPIDER_FACTORY_TIMEOUT_MS,e.factoryTimeoutMs??1e4)),urlTimeoutMs:Math.max(1e3,rfe(process.env.CATPAW_CUSTOM_SPIDER_URL_TIMEOUT_MS,e.urlTimeoutMs??1e4)),dir:Us.default.resolve(o),urls:a}},zmt=(t,e)=>{let n=`[custom-spider:${Us.default.basename(e)}]`,s=Object.freeze({info:(...i)=>console.log(n,...i),warn:(...i)=>console.warn(n,...i),error:(...i)=>console.error(n,...i),debug:(...i)=>console.debug(n,...i)});return Object.freeze({http:Object.freeze({axios:he,req:le,create:(i={})=>he.create(i)}),cheerio:Object.freeze({load:De}),utils:Object.freeze({extractTitle:Qy,findEpisodeNumber:NR,firstSuccessfulUrl:es}),logger:s,app:Object.freeze({spiderPrefix:j_,nodePath:process.env.NODE_PATH||"."})})},sBr=async t=>{try{return(await q_.default.readdir(t,{withFileTypes:!0})).filter(r=>r.isFile()).map(r=>Us.default.join(t,r.name)).filter(r=>W4r.has(Us.default.extname(r).toLowerCase())).sort((r,n)=>r.localeCompare(n))}catch(e){if(e?.code==="ENOENT")return[];throw e}},q5=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)}},j5=new Map,cfe=t=>String(t||"").trim(),iBr=t=>{let e=q5(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""},dht=(t,e)=>{let r=cfe(t);if(!r)return"";let n=iBr(e);return n?(j5.set(r,n),n):(j5.delete(r),"")},fht=t=>{let e=cfe(t);return e?String(j5.get(e)||"").trim():""},Ymt={axios:he,cheerio:o4,"crypto-js":nht.default,dayjs:sht.default,qs:ofe.default},aBr=(t,e)=>{let r=n=>n==="omnibox_sdk"?{request:async(s,i={})=>{let a=String(i.method||"GET").toUpperCase(),o=i.headers||{},c=i.body;c&&typeof c=="object"&&!Buffer.isBuffer(c)&&String(o["Content-Type"]||o["content-type"]||"").toLowerCase().includes("application/json")&&(c=JSON.stringify(c));let u=await he.request({url:s,method:a,headers:o,data:c,timeout:i.timeout,validateStatus:()=>!0});return{statusCode:u.status,body:q5(u.data)}},log:(s,...i)=>{let a=i.map(o=>typeof o=="string"?o:q5(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 Gmt.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 Gmt.get(i)||null}}:n==="spider_runner"?{run:()=>{}}:Ymt[n]?Ymt[n]:t(n);return r.resolve=t.resolve?.bind(t),r.main={filename:e},r},pht=(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},mht=(t,e,r="")=>{let n={exports:{}},s=r||(0,afe.pathToFileURL)(Us.default.resolve(process.cwd(),".custom-spider-runtime.cjs")).href,i=(0,rht.createRequire)(s),a=aBr(i,e);return new Function("require","module","exports","__filename","__dirname",t)(a,n,n.exports,e,Us.default.dirname(e)),{default:n.exports}},oBr=async(t,e)=>{let r=await he.get(t,{responseType:"text",timeout:e,transformResponse:[a=>a],validateStatus:()=>!0});if(r.status>=400)throw new Error(`[custom-spider] \u8FDC\u7A0B\u63D2\u4EF6\u62C9\u53D6\u5931\u8D25(${r.status}): ${t}`);let n=q5(r.data);dht(t,n);let s=(0,Q5.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(!pht(a,n))throw a;let o;try{let c=new URL(t),u=Us.default.basename(c.pathname)||`remote-${s}.js`;o=Us.default.resolve(process.cwd(),".remote-custom-spiders",u)}catch{o=Us.default.resolve(process.cwd(),".remote-custom-spiders",`remote-${s}.js`)}return mht(n,o)}},cBr=async t=>{let e=cfe(t),r="",n=!1;try{r=await q_.default.readFile(t,"utf8"),n=!0,dht(e,r)}catch{j5.delete(e)}let s=(0,afe.pathToFileURL)(t);s.searchParams.set("v",await nBr(t));try{return await import(s.href)}catch(i){if(Us.default.extname(t).toLowerCase()!==".js")throw i;let o=n?r:await q_.default.readFile(t,"utf8");if(!pht(i,o))throw i;return mht(o,t,s.href)}},Jmt=t=>!!t&&typeof t=="object"&&typeof t.api=="function",Xmt=t=>!t||typeof t!="object"||typeof t.api=="function"?!1:["home","category","detail","search","play"].some(r=>typeof t[r]=="function"),uBr=t=>{let e=String(t||"");if(!e.includes("%"))return e;try{return decodeURIComponent(e)}catch{return e}},H5=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);if(aht.has(r.protocol)){let n=Us.default.parse(Us.default.basename(r.pathname||"")).name;return uBr(n)}}catch{}return Us.default.parse(e).name},lBr=t=>{let e=H5(t),r=String(e).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");return iht.test(r)?r:`omni_${(0,Q5.createHash)("sha1").update(t).digest("hex").slice(0,10)}`},dBr=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("$$$")}},F5=t=>t&&typeof t=="object"?t:{list:[]},Zmt=t=>{let e=F5(t),r=Array.isArray(e.list)?e.list:[];return{...e,list:r.map(n=>dBr(n))}},fBr=(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||"")}},pBr=(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()||lBr(e),a=fht(e),o=String(r.name||"").trim()||a||H5(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 F5(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 F5(f)}),u.post("/detail",async l=>{let d=l.body?.id;if(Array.isArray(d)){let m=[];for(let p of d){let h=await c(t.detail,{videoId:p,id:p}),y=Zmt(h);Array.isArray(y.list)&&m.push(...y.list)}return{list:m}}let f=await c(t.detail,{videoId:d,id:d});return Zmt(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 F5(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 fBr(f,d)})}}},mBr=(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=Jmt(t?.default)&&t.default||Jmt(t)&&t;if(n)return{mode:"spider",value:n};let s=Xmt(t?.default)&&t.default||Xmt(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`)},hBr=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},gBr=(t,e)=>{let r=String(t?.meta?.key||"").trim(),n=String(t?.meta?.api||"").trim(),s=H5(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(iht.test(c))return{key:c,from:o}}return null},yBr=t=>{if(!t||typeof t!="object"||Object.keys(t).length===0)return"";try{return Buffer.from(JSON.stringify(t),"utf8").toString("base64")}catch{return""}},BR=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},ABr=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: ${Us.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=>BR(u.handler,d.server,{filter:d.body?.filter??!1})),l.post("/category",async d=>{let f=d.body||{},m={ac:"detail",t:f.id,pg:f.page??1,filter:f.filter??!1},p=yBr(f.filters);return p&&(m.ext=p),BR(u.handler,d.server,m)}),l.post("/detail",async d=>{let f=d.body?.id,m=Array.isArray(f)?f.join(","):f;return BR(u.handler,d.server,{ac:"detail",ids:m})}),l.post("/search",async d=>BR(u.handler,d.server,{wd:d.body?.wd??"",pg:d.body?.page??1,quick:d.body?.quick??!1})),l.post("/play",async d=>BR(u.handler,d.server,{play:d.body?.id??"",flag:d.body?.flag??"",parser:d.body?.parser??""}))}}},LR=(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=gBr(t,e);if(!r)throw new Error(`${e} meta.key \u4E0D\u5408\u6CD5`);let n=r.key,s=fht(e),i=String(t.meta?.name||"").trim()||s||H5(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}}},xBr=(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},bBr=async t=>{let e=lht(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&&DR.key===r&&DR.expireAt>n)return DR.spiders;if(Dm.promise&&Dm.key===r)return Dm.promise;Dm.key=r,Dm.promise=(async()=>{let s=await sBr(e.dir),i=e.urls;if(s.length===0&&i.length===0)return DR={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=>Us.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:Us.default.basename(l),load:()=>cBr(l)})),...i.map(l=>({id:l,display:l,load:()=>oBr(l,e.urlTimeoutMs)}))],o=await Promise.allSettled(a.map(async l=>{let d=await l.load(),f=mBr(d,l.id);if(f.mode==="spider")return console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy spider export)`),LR(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=pBr(f.value,l.id);return LR(h,l.id)}if(f.mode==="callable"){let h=zmt(t,l.id);try{let y=await nfe(Promise.resolve(f.value(h)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return LR(y,l.id)}catch(y){if(!hBr(y))throw y;console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy register export)`);let g=await nfe(ABr(f.value,l.id),e.factoryTimeoutMs,`[custom-spider] legacy register \u9002\u914D\u8D85\u65F6: ${l.id}`);return LR(g,l.id)}}let m=zmt(t,l.id),p=await nfe(Promise.resolve(f.value(m)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return LR(p,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`),DR={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:c},c})();try{return await Dm.promise}finally{Dm.key===r&&(Dm={key:"",promise:null})}},eht=async t=>{let e=[F0t,Qft,Ylt],r=[zlt,rut,ult,nut,sut,iut,llt,$$e,aut,out,olt,clt,v0t,kdt,nlt,Wdt,jdt,Clt,Nlt,sdt,Mut,lut,fut,gut,Aut,alt,_ut,vut,Cmt,imt,Ydt,lft,wpt,Fpt,apt,Jft,Xft,jft,Wft,u0t,x0t,mpt,Opt,Oft,Ppt,Vpt,r0t,Apt,Hlt];(await Ude(t)).forEach(o=>{r.push(qde(o.name,o.address))}),(await Vde(t)).forEach(o=>{r.push(Yde(o.name,o.address))});let i=await bBr(t);r.push(...i),r.push(...e);let{allowOverride:a}=lht(t.config);return xBr(r,a)},tht=(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)},_Br=async(t,e)=>{(await IR(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:`${j_}/emby/3/server/${encodeURIComponent(n.id)}`})})},EBr=async(t,e)=>{(await CR(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:`${j_}/alist-video/3/server/${encodeURIComponent(n.id)}`})})},sfe={};async function ufe(t,{db:e,config:r}){t.hasContentTypeParser("application/x-www-form-urlencoded")||t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(m,p,h)=>{h(null,ofe.default.parse(String(p||"")))});let n=await eht({db:e,config:r}),s=G4r(n),i=new Map(s),a=async()=>null;n.forEach(m=>{let p=j_+"/"+m.meta.key+"/"+m.meta.type;t.register(m.api,{prefix:p});try{let h=m.check?.(t);h&&typeof h.then=="function"&&h.catch(y=>console.error(`[spider-check] ${m.meta.key} failed:`,y))}catch(h){console.error(`[spider-check] ${m.meta.key} failed:`,h)}console.log("Register spider: "+p)});let o=(m,p,h,y={})=>Vy(t,p.spiderKey,p.spiderType,h,y,{apiBase:p.apiBase,headers:j4r(m)}),c=async(m,p)=>{let h=Umt(p),y=Vmt(i,h);return y||(await a(m),y=Vmt(i,h)),{module:h,spider:y}},u=m=>{let p=m.query?.token;return p==null||p===""?{}:{token:p}},l=async(m,p)=>{p.type("application/javascript; charset=utf-8").send(Qmt())},d=async(m,p)=>{let{module:h,spider:y}=await c(m,m.params?.module);if(!y){p.code(404).send({error:"module not found"});return}return l(m,p)},f=async(m,p)=>{let{spider:h}=await c(m,m.params?.module);if(!h){p.code(404).send({error:"module not found"});return}let y=F4r(m);try{if(y.refresh!==void 0){p.send(await o(m,h,"init",{ext:y.extend||y.ext||"",extend:y.extend}));return}if(y.play!==void 0){p.send(await o(m,h,"play",{id:y.play,flag:y.flag,extend:y.extend}));return}if(y.ac==="action"&&y.action!==void 0){p.send(await o(m,h,"action",{action:y.action,value:y.value,extend:y.extend}));return}if(y.ac==="detail"&&y.ids!==void 0){p.send(await o(m,h,"detail",{id:y.ids,extend:y.extend}));return}if(y.t!==void 0){p.send(await o(m,h,"category",{id:y.t,page:y.pg||y.page||1,filter:efe(y.filter,!0),filters:q4r(y.ext||y.f,{}),extend:y.extend}));return}if(y.wd!==void 0){p.send(await o(m,h,"search",{wd:y.wd,page:y.pg||y.page||1,quick:efe(y.quick,!1),extend:y.extend}));return}p.send(await o(m,h,"home",{filter:efe(y.filter,!0),extend:y.extend}))}catch(g){m.log?.error?.(g);let A=g?.message||"internal error",b=Number(A.match(/\s(\d{3})$/)?.[1]||500);p.code(b>=400&&b<600?b:500).send({error:A})}};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}),$5()&&U4r.forEach(m=>{t.get(m.url,async(p,h)=>tBr(m,p,h,{db:e,config:r}))}),t.register(async m=>{m.get("/check",async function(x,S){S.send({run:!m.stop})});let p=async()=>{let x={video:{sites:[]},read:{sites:[]},comic:{sites:[]},music:{sites:[]},pan:{sites:[]},color:m.config.color||[]},S=await eht({db:e,config:r}),T=!1,I=!1,R=[];for(let N of S){let k=Object.assign({},N.meta);if(k.hidden){k.key==="emby"?T=!0:k.key==="alist-video"&&(I=!0);continue}k.api=j_+"/"+k.key+"/"+k.type,k.key="nodejs_"+k.key;let B=N.meta.type;if(k.cms){R.push({meta:k,stype:B});continue}tht(x,k,B)}return T&&await _Br(x,{db:e,config:r}),I&&await EBr(x,{db:e,config:r}),R.forEach(({meta:N,stype:k})=>tht(x,N,k)),x},h=async(x,S)=>{let T=await RR(x.server),I=S.video.sites,R={},N={};I.forEach(B=>{N[B.key]=B});let k=[];return T.forEach(B=>{R[B.key]=!0;let M=N[B.key];if(M&&B.enable){let P=typeof B.name=="string"?B.name.trim():"";k.push({...M,name:P||M.name})}}),I.forEach(B=>{R[B.key]||k.push(B)}),S.video.sites=k,S},y=async x=>{let S=await p();return await h(x,S),S},g=x=>{let S=Q4r(x.api);if(!S||Number(S.spiderType)!==3)return null;let T=H4r(x.key);return cht(i,[x.key,T],S),{module:T,ref:S}};a=async x=>{(await y(x)).video.sites.forEach(g)};let A=async x=>{let S=await y(x),T=PR(x).replace(/\/$/,""),I=S.video.sites.map(R=>{let N=g(R);if(!N)return null;let k=N.module,B={key:`t4_${k}`,name:R.name,type:4,api:`${T}/api/${encodeURIComponent(k)}`,searchable:R.searchable??1,quickSearch:R.quickSearch??0,filterable:R.filterable??1};return R.ext!==void 0&&R.ext!==null&&R.ext!==""&&(B.ext=R.ext),B}).filter(Boolean);return{sites_count:I.length,sites:I,color:S.color||[]}},b=async(x,S)=>{let T=await y(x),I=PR(x).replace(/\/$/,""),R=u(x),N=T.video.sites.map(k=>{let B=g(k);if(!B)return null;let M=B.module;return{module:M,name:k.name,scriptUrl:jmt(I,M,R),t4ApiUrl:qmt(I,M,R)}}).filter(Boolean);S.send(Hmt(N))};m.get("/config",async function(x,S){let T=await y(x);T.video.danmuSearchUrl=`http://127.0.0.1:${x.server.address().port}/website/danmu/fe`,S.send(T)}),m.get("/t4",A),m.get("/uz",b),m.get("/full-config",p)}),t.get("/danmu-proxy",async(m,p)=>{try{let y=String(m.query?.format||"").toLowerCase()==="json",g=(J=200)=>{if(y){p.code(J).send({success:!1,comments:[],count:0,match:null});return}p.code(J).header("Content-Type","application/xml"),p.send('<?xml version="1.0" encoding="UTF-8"?><i/>')},A=await D5(m.server);if(!A?.autoPush){g();return}let{name:b,episodeNumber:x,originalName:S}=m.query,T=String(S||"").trim(),I=String(b||"").trim()||Qy(T)||T,R=A.debug||!1;R&&(console.log("=== \u5F39\u5E55\u5339\u914D\u8C03\u8BD5\u4FE1\u606F ==="),console.log("\u4F20\u5165\u53C2\u6570:"),console.log(" - \u89C6\u9891\u540D\u79F0:",I||"(\u672A\u63D0\u4F9B)"),console.log(" - \u539F\u59CB\u540D\u79F0:",T||"(\u672A\u63D0\u4F9B)"),console.log(" - \u96C6\u6570:",x),console.log("\u914D\u7F6E\u7684\u5F39\u5E55\u6E90\u6570\u91CF:",A.urls.length));let N=1,B=(T||I).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,R&&console.log("\u68C0\u6D4B\u5230\u5B63\u6570\u4FE1\u606F:",`\u7B2C${N}\u5B63`)}let M=`S${N}`,P=!x||x==="0",L=I;!P&&x&&(L=`${I} ${M}E${x}`),R&&console.log("\u6784\u9020\u7684\u6587\u4EF6\u540D:",L);let Z=async(J,se,oe)=>{R&&(console.log(`
\u6B63\u5728\u8BF7\u6C42\u5F39\u5E55\u6E90: ${J.name||J.address}`),console.log(`\u8BF7\u6C42URL: ${J.address}/api/v2/match`),console.log(`\u8BF7\u6C42\u9636\u6BB5: ${oe}`),console.log(`\u8BF7\u6C42\u6570\u636E: { fileName: "${se}" }`));let ue=await he.post(`${J.address}/api/v2/match`,{fileName:se},{headers:{"Content-Type":"application/json"},timeout:1e4});if(R&&(console.log(`
${J.name||J.address} \u8FD4\u56DE\u7ED3\u679C:`),console.log(" - \u5339\u914D\u6210\u529F:",ue.data?.success),console.log(" - \u662F\u5426\u5339\u914D:",ue.data?.isMatched),console.log(" - \u5339\u914D\u6761\u6570:",ue.data?.matches?.length||0)),ue.data?.success&&ue.data?.isMatched&&ue.data?.matches?.length>0){let Te=ue.data.matches[0];return R&&(console.log(" - \u5339\u914D\u7ED3\u679C:"),console.log(" * \u96C6\u6570ID:",Te.episodeId),console.log(" * \u96C6\u6570\u6807\u9898:",Te.episodeTitle),console.log(" * \u52A8\u753B\u6807\u9898:",Te.animeTitle)),{url:J,match:Te,score:100}}return null},W=A.urls.map(async J=>{try{let se=await Z(J,L,"episode-aware");return!se&&!P&&x&&(R&&console.log(` - \u5206\u96C6\u5339\u914D\u5931\u8D25\uFF0C\u964D\u7EA7\u4EC5\u6807\u9898\u91CD\u8BD5: ${I}`),se=await Z(J,I,"title-only-fallback")),!se&&R&&console.log(" - \u672A\u627E\u5230\u7CBE\u786E\u5339\u914D"),se}catch(se){return R&&(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);R&&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];R&&(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 R&&console.log(`
\u6240\u6709\u5F39\u5E55\u6E90\u5747\u672A\u5339\u914D\u6210\u529F`);if(j){R&&(console.log(`
=== \u8BF7\u6C42\u5F39\u5E55\u6570\u636E ===`),console.log("\u5F39\u5E55URL:",j.url));let J=await he.get(j.url,{timeout:1e4});R&&(console.log("\u5F39\u5E55\u54CD\u5E94\u72B6\u6001:",J.status),console.log("\u5F39\u5E55\u6570\u636E:",J.data?.comments?.length||0,"\u6761"));let se=Array.isArray(J.data?.comments)?J.data.comments.filter(Te=>Te?.p&&String(Te?.m||"").trim()!==""):[],oe=se.length;if(messageToDart({action:"toast",opt:{message:`\u901A\u8FC7 ${j.sourceName} - \u89E3\u6790\u5230 ${oe} \u6761\u5F39\u5E55`,duration:3}}),y){p.send({success:oe>0,comments:se,count:oe,match:j.match});return}let ue=`<?xml version="1.0" encoding="UTF-8"?>
<i>
`;for(let Te of se){let Ne=String(Te.m).trim();if(Ne){let je=Ne.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;");ue+=` <d p="${Te.p}">${je}</d>
`}}ue+="</i>",R&&(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 ===
`)),p.header("Content-Type","application/xml"),p.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(m.query?.format||"").toLowerCase()==="json"?p.code(500).send({success:!1,error:"Failed to fetch danmu content",comments:[],count:0,match:null}):p.code(500).send({error:"Failed to fetch danmu content"})}}),t.addHook("onSend",(m,p,h,y)=>{if(p.sent||p.raw?.headersSent||!m.url.endsWith("/detail")&&!m.url.endsWith("/play"))return y(null,h);let g=typeof h=="string"?h:Buffer.isBuffer(h)?h.toString():null;if(!g)return y(null,h);D5(m.server).then(A=>{if(!A?.autoPush)return y(null,h);try{if(m.url.endsWith("/detail")){let b=JSON.parse(g),x=Array.isArray(b?.list)?b.list[0]:null;if(!x||typeof x!="object")return y(null,h);let S=String(x.vod_play_from||""),T=String(x.vod_play_url||"");if(!S||!T)return y(null,h);let I=String(x.vod_name||"").trim(),N=String(Qy(I)||"").trim()||I;sfe={};let k=S.split("$$$").filter(Boolean);return T.split("$$$").filter(Boolean).forEach((B,M)=>{B.split("#").forEach(P=>{let[L,Z]=P.split("$");if(!Z)return;let W=k[M]||`\u7EBF\u8DEF${M+1}`;sfe[`${W}_${Z}`]={name:N,originalName:I,episodeNumber:NR(L)}})}),y(null,h)}if(m.url.endsWith("/play")){let b=JSON.parse(g);if((b.url||b.url?.length||b.urls?.length)&&!b?.extra?.danmaku){let x=m.body||{},S=`${x.flag||""}_${x.id||""}`,T=sfe[S];if(T){b.extra||(b.extra={});let I=new URL(`http://127.0.0.1:${m.server.address().port}/danmu-proxy`);return I.searchParams.set("name",T.name),I.searchParams.set("episodeNumber",T.episodeNumber),T.originalName&&I.searchParams.set("originalName",T.originalName),b.extra.danmaku=I.toString(),y(null,JSON.stringify(b))}}}}catch(b){console.error(b)}return y(null,h)}).catch(A=>(console.error(A),y(null,h)))})}var _W=Ce(Oht(),1);var Pht=Ce(V0(),1),$R=Ce(Zn(),1);var X5="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",V_={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},kht={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}}},WBr=async t=>{let e=$R.default.enc.Hex.stringify($R.default.MD5(t.config.quark.cookie)).toString();return(await t.db.getObjectDefault("/quark",{}))[e]??""},$Br=async(t,e)=>{let r=$R.default.enc.Hex.stringify($R.default.MD5(t.config.quark.cookie)).toString();await t.db.push(`/quark/${r}`,e)};async function Tfe(t){t.get("/qrcode",async(r,n)=>{try{let s=await he.get("https://uop.quark.cn/cas/ajax/getTokenForQrcodeLogin?client_id=532&v=1.2",{headers:{"User-Agent":X5}}),i=s.data.data.members.token,a=Nl(s.headers["set-cookie"]),o=kht.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 Pht.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=kht.decode(s);if(!i)return n.send({code:0,data:{status:V_.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await he.get(`https://uop.quark.cn/cas/ajax/getServiceTicketByQrcodeToken?client_id=532&v=1.2&token=${a}`,{headers:{"User-Agent":X5}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:V_.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:V_.EXPIRED}}):c.data.status===50004001?n.send({code:0,data:{status:V_.NEW}}):n.send({code:0,data:{status:V_.NEW}})}catch(c){console.error("\u5938\u514B\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:V_.NEW}})}});async function e(r,n){let s=[...n],i=await he.get(`https://pan.quark.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":X5,Cookie:s.join("")}});i.headers["set-cookie"]&&(s=s.concat(Nl(i.headers["set-cookie"])));let a=await he.get("https://drive-pc.quark.cn/1/clouddrive/share/sharepage/dir?pr=ucpro&fr=pc&uc_param_str=&aver=1",{headers:{"User-Agent":X5,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(Nl(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 WBr(r.server)})}),t.put("/cookie",async(r,n)=>{await $Br(r.server,r.body?.cookie??""),n.send({code:0})})}var UR=Ce(Zn(),1);var zy={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},Dht={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}}},UBr=async t=>{let e=UR.default.enc.Hex.stringify(UR.default.MD5(t.config.uc.token)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},FBr=async(t,e)=>{let r=UR.default.enc.Hex.stringify(UR.default.MD5(t.config.uc.token)).toString(),n=gg(e),s=n?.refresh_token||n?.expires_at?SB(n):String(e||"");await t.db.push(`/uc/${r}`,s)};async function wfe(t){t.get("/qrcode",async(e,r)=>{try{let n="/oauth/authorize",s=Math.floor(Date.now()/1e3).toString()+"000",i=lo.DeviceID,a=Mb(i,s),o=vB("GET",n,s,Wn.signKey),c={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":s,"x-pan-token":o,"x-pan-client-id":Wn.clientID,...lo.AccessToken?{Authorization:`Bearer ${lo.AccessToken}`}:{}},u=await he.get(`${Wn.api}${n}`,{params:{req_id:a,access_token:lo.AccessToken,app_ver:Wn.appVer,device_id:i,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Wn.channel,auth_type:"code",client_id:Wn.clientID,scope:"netdisk",qrcode:"1",qr_width:"460",qr_height:"460"},headers:c}),l=Dht.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=Dht.decode(n);if(!s)return r.send({code:0,data:{status:zy.EXPIRED}});let{query_token:i}=s;try{let a="/oauth/code",o=Math.floor(Date.now()/1e3).toString()+"000",c=lo.DeviceID,u=Mb(c,o),l=vB("GET",a,o,Wn.signKey),d={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":o,"x-pan-token":l,"x-pan-client-id":Wn.clientID,...lo.AccessToken?{Authorization:`Bearer ${lo.AccessToken}`}:{}},f=await he.get(`${Wn.api}${a}`,{params:{req_id:u,access_token:lo.AccessToken,app_ver:Wn.appVer,device_id:c,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Wn.channel,client_id:Wn.clientID,scope:"netdisk",query_token:i},headers:d,validateStatus:m=>m<500});if(f.data.status===0){let m="/token",p=Math.floor(Date.now()/1e3).toString()+"000",h=Mb(lo.DeviceID,p),y=JSON.stringify({req_id:h,app_ver:Wn.appVer,device_id:lo.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Wn.channel,code:f.data.code}),g=await he.post(`${Wn.codeApi}${m}`,y,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"}}),A=gg(g.data.data);g.data.code===200&&A?.access_token?r.send({code:0,data:{status:zy.CONFIRMED,cookie:SB(A)}}):r.send({code:0,data:{status:zy.NEW}})}else f.data.errno===11003?r.send({code:0,data:{status:zy.NEW}}):f.data.status===-1||f.data.errno===11001?r.send({code:0,data:{status:zy.EXPIRED}}):r.send({code:0,data:{status:zy.NEW}})}catch(a){console.error("UC-TV\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",a),r.send({code:0,data:{status:zy.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 UBr(e.server)})}),t.put("/token",async(e,r)=>{await FBr(e.server,e.body?.cookie??""),r.send({code:0})})}var Bht=async(t,e)=>(await t.db.getObjectDefault("/tyi",{}))?.[e]||"",Lht=async(t,e,r)=>{await t.db.push(`/tyi/${e}`,r)};async function Rfe(t){t.get("/account",async(e,r)=>{let n=await Bht(e.server,"cloud_account"),s=await Bht(e.server,"cloud_password");r.send({code:0,data:{username:n,password:s}})}),t.put("/account",async(e,r)=>{await Lht(e.server,"cloud_account",e.body.username),await Lht(e.server,"cloud_password",e.body.password),r.send({code:0})})}var qBr=["https://www.leijing1.com"],jBr=async t=>(await t.db.getObjectDefault("/leijing",{}))?.urls||t.config.leijing?.urls||qBr,QBr=async(t,e)=>{await t.db.push("/leijing/urls",e)},HBr=async t=>{await t.db.delete("/leijing/urls")};async function Nfe(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await jBr(e.server)})}),t.put("/urls",async(e,r)=>{await QBr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await HBr(e.server),r.send({code:0})})}var Uht="https://api.oplist.org.cn",FR="https://oauth.litepan.top",GBr=5*60*1e3,Ofe=new Map,ks=async(t,e)=>{let r=await t.db.getObjectDefault("/pan123",{});return Object.prototype.hasOwnProperty.call(r||{},e)?r[e]:""},Vc=async(t,e,r)=>{await t.db.push(`/pan123/${e}`,r)},hi=t=>String(t||"").trim(),Fht=t=>new Promise(e=>setTimeout(e,t));function VBr(t,e=!1){if(typeof t=="boolean")return t;if(typeof t=="string"){let r=t.trim().toLowerCase();if(["1","true","yes","on"].includes(r))return!0;if(["0","false","no","off"].includes(r))return!1}return e}function Pfe(t){let e=t?.data?.token_data||t?.token_data||t?.data||t||{};return{accessToken:hi(e.access_token||e.accessToken||e.accessTokenStr),refreshToken:hi(e.refresh_token||e.refreshToken),expiresIn:e.expires_in||e.expiresIn||""}}function _p(t,e){return t?.message||t?.detail||t?.error_description||t?.error||t?.text||e}function qht(t){return String(t||"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function Mht(t){let e=hi(t),r=qht(e),n=JSON.stringify(e);return`<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
<meta http-equiv="refresh" content="1;url=${r}">
<title>\u6B63\u5728\u8FDE\u63A5\u6388\u6743\u670D\u52A1</title>
<style>
html, body { margin: 0; min-height: 100vh; background: #f5f7fc; color: #111827; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
@supports (min-height: 100dvh) { html, body { min-height: 100dvh; } }
body { display: flex; align-items: center; justify-content: center; padding: 24px; box-sizing: border-box; }
.panel { width: min(520px, 100%); background: #fff; border-radius: 16px; box-shadow: 0 18px 50px rgba(15, 23, 42, .10); padding: 34px 24px; text-align: center; }
h1 { margin: 0 0 14px; font-size: 24px; line-height: 1.35; font-weight: 700; }
p { margin: 0; color: #4b5563; font-size: 16px; line-height: 1.7; }
a { color: #2563eb; text-decoration: none; }
</style>
</head>
<body>
<main class="panel">
<h1>\u6B63\u5728\u8FDE\u63A5\u6388\u6743\u670D\u52A1</h1>
<p>\u8BF7\u7A0D\u5019\uFF0C\u9875\u9762\u5C06\u81EA\u52A8\u8DF3\u8F6C\u5230 OAuth \u6388\u6743\u9875\u3002</p>
<p><a href="${r}" rel="noreferrer">\u5982\u679C\u6CA1\u6709\u8DF3\u8F6C\uFF0C\u8BF7\u70B9\u8FD9\u91CC\u7EE7\u7EED</a></p>
</main>
<script>
window.setTimeout(function () {
window.location.replace(${n});
}, 120);
</script>
</body>
</html>`}function Wht(t){return`<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
<title>\u6388\u6743\u542F\u52A8\u5931\u8D25</title>
<style>
html, body { margin: 0; min-height: 100vh; background: #f5f7fc; color: #111827; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
@supports (min-height: 100dvh) { html, body { min-height: 100dvh; } }
body { display: flex; align-items: center; justify-content: center; padding: 24px; box-sizing: border-box; }
.panel { width: min(520px, 100%); background: #fff; border-radius: 16px; box-shadow: 0 18px 50px rgba(15, 23, 42, .10); padding: 34px 24px; text-align: center; }
h1 { margin: 0 0 14px; font-size: 24px; line-height: 1.35; font-weight: 700; }
p { margin: 0; color: #4b5563; font-size: 16px; line-height: 1.7; word-break: break-word; }
</style>
</head>
<body>
<main class="panel">
<h1>\u6388\u6743\u542F\u52A8\u5931\u8D25</h1>
<p>${qht(t||"OAuth \u542F\u52A8\u5931\u8D25")}</p>
</main>
</body>
</html>`}function KBr(t){try{let e=new URL(t);return e.hostname==="www.123pan.com"&&e.pathname==="/auth"&&(e.hostname="yun.123pan.com"),e.toString()}catch{return t}}async function kfe(t,e={}){let r=hi(e.accessToken||e.access_token),n=hi(e.refreshToken||e.refresh_token);return r&&await Vc(t,"open_access_token",r),n&&await Vc(t,"open_refresh_token",n),(e.expiresIn||e.expires_in)&&await Vc(t,"open_expires_in",Number(e.expiresIn||e.expires_in)||""),{accessToken:r,refreshToken:n}}async function zBr(){let t=await he.get(`${Uht}/123cloud/requests`,{params:{server_use:"true"},timeout:15e3,validateStatus:null,headers:{Accept:"application/json"}});if(t.status>=400)throw new Error(_p(t.data,`OpenList \u6388\u6743\u8BF7\u6C42\u5931\u8D25: ${t.status}`));let e=hi(t.data?.text||t.data?.data?.oauth_url||t.data?.oauth_url);if(!e)throw new Error(_p(t.data,"OpenList \u672A\u8FD4\u56DE\u6388\u6743\u5730\u5740"));return KBr(e)}async function YBr(t){let e=await he.get(`${Uht}/123cloud/renewapi`,{params:{apps_types:"123cloud_oa",refresh_ui:t,server_use:"true"},timeout:15e3,validateStatus:null,headers:{Accept:"application/json"}});if(e.status>=400)throw new Error(_p(e.data,`OpenList \u5237\u65B0 Token \u5931\u8D25: ${e.status}`));let r=Pfe(e.data);if(!r.accessToken)throw new Error(_p(e.data,"OpenList \u672A\u8FD4\u56DE access_token"));return r}async function JBr(){let t=await he.post(`${FR}/api/oauth/start`,{driver_type:"123\u4E91\u76D8Open",server_use:!0,callback_url:`${FR}/callback-popup`},{timeout:15e3,validateStatus:null,headers:{"Content-Type":"application/json",Accept:"application/json"}});if(t.status>=400||t.data?.success===!1)throw new Error(_p(t.data,`LitePan OAuth \u542F\u52A8\u5931\u8D25: ${t.status}`));let e=t.data?.data||{},r=hi(e.session_id||e.sessionId),n=hi(e.oauth_url||e.oauthUrl);if(!r||!n)throw new Error("LitePan OAuth \u672A\u8FD4\u56DE session_id \u6216 oauth_url");return{sessionId:r,oauthUrl:n,expiresIn:e.expires_in||e.expiresIn||""}}async function XBr(t){let e=await he.get(`${FR}/api/oauth/status/${encodeURIComponent(t)}`,{timeout:1e4,validateStatus:null,headers:{Accept:"application/json"}});if(e.status>=400||e.data?.success===!1)throw new Error(_p(e.data,`LitePan OAuth \u72B6\u6001\u67E5\u8BE2\u5931\u8D25: ${e.status}`));return e.data?.data||{}}async function ZBr(t){let e=await he.post(`${FR}/api/oauth/confirm-received/${encodeURIComponent(t)}`,null,{timeout:8e3,validateStatus:null,headers:{Accept:"application/json"}});if(e.status>=400||e.data?.success===!1)throw new Error(_p(e.data,`LitePan Token \u63A5\u6536\u786E\u8BA4\u5931\u8D25: ${e.status}`));return e.data}async function eLr(t){let e=null;for(let r=0;r<3;r+=1)try{return await ZBr(t)}catch(n){e=n,r<2&&await Fht((r+1)*1e3)}throw e}async function tLr(t,e={}){let r=hi(e.sessionId||e.session_id);return r?(await Vc(t,"litepan_oauth_session_id",r),await Vc(t,"litepan_oauth_completed_at",""),r):""}async function $ht(t){let e=Number(await ks(t,"litepan_oauth_completed_at"))||0;return!e||Date.now()-e>GBr||!hi(await ks(t,"open_access_token"))?null:{status:"success",hasAccessToken:!0,hasRefreshToken:!!hi(await ks(t,"open_refresh_token")),expiresIn:await ks(t,"open_expires_in")||""}}async function jht(t,e){let r=hi(e);if(!r)return await $ht(t)||{status:"idle",error:""};let n=await XBr(r);if(n.status!=="success")return{status:n.status||"pending",error:n.error||n.message||""};let s=Pfe(n);if(!s.accessToken)throw new Error("LitePan OAuth \u6210\u529F\u4F46\u672A\u8FD4\u56DE access_token");let i=await kfe(t,s);try{await eLr(r)}catch(a){let o=await $ht(t);return o||{status:"pending",error:`\u7B49\u5F85 LitePan \u786E\u8BA4\u63A5\u6536 Token\uFF1A${a?.message||a}`,hasAccessToken:!!(i.accessToken||await ks(t,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await ks(t,"open_refresh_token")),expiresIn:s.expiresIn||""}}return await Vc(t,"litepan_oauth_session_id",""),await Vc(t,"litepan_oauth_completed_at",Date.now()),{status:"success",hasAccessToken:!!(i.accessToken||await ks(t,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await ks(t,"open_refresh_token")),expiresIn:s.expiresIn||""}}function rLr(t,e){let r=hi(e);if(!r||Ofe.has(r))return;let n=(async()=>{for(let s=0;s<45;s+=1){let i=await jht(t,r);if(i.status==="success"||i.status==="error")return;await Fht(s<3?2e3:s<10?3e3:4e3)}})().catch(s=>{t.log?.warn?.(`LitePan OAuth background poll failed: ${s?.message||s}`)}).finally(()=>{Ofe.delete(r)});Ofe.set(r,n)}async function nLr(t){let e=await he.post(`${FR}/api/oauth/refresh`,{driver_type:"123\u4E91\u76D8Open",refresh_token:t},{timeout:15e3,validateStatus:null,headers:{"Content-Type":"application/json",Accept:"application/json"}});if(e.status>=400||e.data?.success===!1)throw new Error(_p(e.data,`LitePan \u5237\u65B0 Token \u5931\u8D25: ${e.status}`));let r=Pfe(e.data);if(!r.accessToken)throw new Error(_p(e.data,"LitePan \u672A\u8FD4\u56DE access_token"));return r}async function Dfe(t){t.get("/account",async(e,r)=>{let n=await ks(e.server,"pan_passport"),s=await ks(e.server,"pan_password"),i=await ks(e.server,"use_direct_download"),a=await ks(e.server,"open_access_token"),o=await ks(e.server,"open_refresh_token");r.send({code:0,data:{username:n,password:s,useDirectDownload:VBr(i,!0),accessToken:a,refreshToken:o}})}),t.put("/account",async(e,r)=>{await Vc(e.server,"pan_passport",e.body.username),await Vc(e.server,"pan_password",e.body.password),await Vc(e.server,"use_direct_download",e.body.useDirectDownload===!0),await Vc(e.server,"open_access_token",hi(e.body.accessToken)),await Vc(e.server,"open_refresh_token",hi(e.body.refreshToken)),r.send({code:0})}),t.get("/oauth/openlist/redirect",async(e,r)=>{try{let n=await zBr();r.type("text/html; charset=utf-8").send(Mht(n))}catch(n){r.code(500).type("text/html; charset=utf-8").send(Wht(n?.message||String(n)))}}),t.post("/oauth/openlist/refresh",async(e,r)=>{try{let n=hi(await ks(e.server,"open_refresh_token"));if(!n){r.send({code:1,message:"\u8BF7\u5148\u586B\u5199\u6216\u83B7\u53D6 123 Open refresh_token"});return}let s=await YBr(n),i=await kfe(e.server,s);r.send({code:0,data:{hasAccessToken:!!(i.accessToken||await ks(e.server,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await ks(e.server,"open_refresh_token")),expiresIn:s.expiresIn||""}})}catch(n){r.send({code:1,message:n?.message||String(n)})}}),t.get("/oauth/litepan/redirect",async(e,r)=>{try{let n=await JBr();if(!n?.sessionId||!n?.oauthUrl)throw new Error("LitePan OAuth \u672A\u8FD4\u56DE\u6388\u6743\u4F1A\u8BDD");await tLr(e.server,n),rLr(e.server,n.sessionId),r.type("text/html; charset=utf-8").send(Mht(n.oauthUrl))}catch(n){r.code(500).type("text/html; charset=utf-8").send(Wht(n?.message||String(n)))}}),t.get("/oauth/litepan/status/latest",async(e,r)=>{try{let n=hi(await ks(e.server,"litepan_oauth_session_id"));r.send({code:0,data:await jht(e.server,n)})}catch(n){r.send({code:1,message:n?.message||String(n)})}}),t.post("/oauth/litepan/refresh",async(e,r)=>{try{let n=hi(await ks(e.server,"open_refresh_token"));if(!n){r.send({code:1,message:"\u8BF7\u5148\u586B\u5199\u6216\u83B7\u53D6 123 Open refresh_token"});return}let s=await nLr(n),i=await kfe(e.server,s);r.send({code:0,data:{hasAccessToken:!!(i.accessToken||await ks(e.server,"open_access_token")),hasRefreshToken:!!(i.refreshToken||await ks(e.server,"open_refresh_token")),expiresIn:s.expiresIn||""}})}catch(n){r.send({code:1,message:n?.message||String(n)})}})}var Yy=async(t,e)=>(await t.db.getObjectDefault("/xun",{}))?.[e]||"",vd=async(t,e,r)=>{await t.db.push(`/xun/${e}`,r)},Bfe=(t="")=>String(t||"").trim();async function Lfe(t){t.get("/account",async(e,r)=>{let n=await Yy(e.server,"xun_username"),s=await Yy(e.server,"xun_password"),i=!!await Yy(e.server,"xun_auth");r.send({code:0,data:{username:n,password:s,hasAuth:i}})}),t.put("/account",async(e,r)=>{await vd(e.server,"xun_username",e.body.username||""),await vd(e.server,"xun_password",e.body.password||""),await vd(e.server,"xun_auth",""),await vd(e.server,"xun_refresh_token",""),await vd(e.server,"xun_user_id",""),r.send({code:0})}),t.get("/auth-status",async(e,r)=>{let n=!!await Yy(e.server,"xun_auth");r.send({code:0,data:{hasAuth:n}})}),t.post("/login",async(e,r)=>{try{let n=Bfe(e.body?.username),s=Bfe(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 vd(e.server,"xun_username",n),await vd(e.server,"xun_password",s),await vd(e.server,"xun_auth",""),await vd(e.server,"xun_refresh_token",""),await vd(e.server,"xun_user_id",""),await Hb(e),await Sg.getDownload_auth();let i=!!await Yy(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:!!Bfe(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 Hb(e),!await Yy(e.server,"xun_username")){r.send({code:1,message:"\u8BF7\u5148\u4FDD\u5B58\u8FC5\u96F7\u8D26\u53F7"});return}await Sg.getVerifyCode(),r.send({code:0,data:{sent:!0}})}),t.post("/verify-code",async(e,r)=>{await Hb(e);let n=String(e.body?.code||"").trim();if(!n){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}await Sg.getVerify(n);let s=!!await Yy(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 Ght=Ce(V0(),1),Mfe=Ce(Zn(),1),Vht=Ce(pC(),1),Kht="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Pa={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},Qht={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}}},Hht=null;function zht(t){return Mfe.default.enc.Hex.stringify(Mfe.default.MD5(t.config.ali.token)).toString()}var sLr=async t=>{let e=await t.db.getObjectDefault("/ali",{});return String(e.token||e[zht(t)]||"").trim()},iLr=async(t,e)=>{let r=String(e||"").trim();await t.db.push("/ali/token",r),await t.db.push(`/ali/${zht(t)}`,r)};function aLr(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 oLr(t){let e=String(t||"").toUpperCase();return e===Pa.CONFIRMED?Pa.CONFIRMED:e===Pa.SCANNED||e==="SCANED"?Pa.SCANNED:e===Pa.CANCELED||e==="CANCELLED"?Pa.CANCELED:e===Pa.NEW?Pa.NEW:Pa.EXPIRED}async function cLr(){return(await he.get("https://passport.aliyundrive.com/newlogin/qrcode/generate.do?appName=aliyun_drive&fromSite=52&appName=aliyun_drive&appEntrance=web&isMobile=false&lang=zh_CN&returnUrl=&bizParams=&_bx-v=2.2.3",{headers:{"User-Agent":Kht}})).data?.content?.data}async function uLr(t){return(await he.post("https://passport.aliyundrive.com/newlogin/qrcode/query.do?appName=aliyun_drive&fromSite=52&_bx-v=2.2.3",Vht.default.stringify(aLr(t)),{headers:{"content-type":"application/x-www-form-urlencoded","User-Agent":Kht,referer:"https://www.aliyundrive.com/"}})).data?.content?.data||null}function lLr(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 dLr(t){let e=await uLr(t);if(!e)return{status:Pa.EXPIRED};let r=oLr(e.qrCodeStatus);if(r!==Pa.CONFIRMED)return{status:r};let n=lLr(e);return n?{status:Pa.CONFIRMED,cookie:n}:{status:Pa.EXPIRED}}async function Wfe(t){t.get("/qrcode",async(e,r)=>{try{let n=await cLr();if(!n?.ck||!n?.t||!n?.codeContent)throw new Error("\u4E8C\u7EF4\u7801\u5185\u5BB9\u7F3A\u5931");Hht={ck:n.ck,t:n.t};let s=Qht.encode(Hht),i=await Ght.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=Qht.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:Pa.EXPIRED}});try{let s=await dLr(n);r.send({code:0,data:s})}catch(s){console.error("\u963F\u91CC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:Pa.EXPIRED}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await sLr(e.server)})}),t.put("/token",async(e,r)=>{let n=e.body?.cookie??e.body?.data?.token??"";await iLr(e.server,n),r.send({code:0})})}var aSn=Ce(V0(),1),cSn=Ce(Zn(),1);var K_="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Jy={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},Yht={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}}},fLr=async t=>(await t.db.getObjectDefault("/baidu",{}))["baidu_cookie"]??"",$fe=async(t,e)=>{await t.db.push("/baidu/baidu_cookie",e)};function pLr(){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 Ufe(t){t.get("/qrcode",async(r,n)=>{try{let s=pLr(),i=new Date().getTime().toString(),a=Math.floor(new Date().getTime()/1e3).toString(),o=`tangram_guid_${i}`,u=(await le.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":K_,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=Yht.encode({sign:l.sign,channel_id:l.channel_id}),f="https://"+l.imgurl,m=await le.get(f,{responseType:"arraybuffer",headers:{"User-Agent":K_}});n.header("X-Session-Key",d),n.send(m.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=Yht.decode(s);if(!i)return n.send({code:0,data:{status:Jy.EXPIRED}});let{sign:a}=i;try{let o=new Date().getTime().toString(),c=`tangram_guid_${o}`,l=(await le.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":K_,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:Jy.SCANNED}});if(f.status===0&&f.v){let m=await e(f.v,r.server);return n.send({code:0,data:{status:Jy.CONFIRMED,cookie:m}})}}else{if(d.errno===1)return n.send({code:0,data:{status:Jy.NEW}});if(d.errno===2)return n.send({code:0,data:{status:Jy.EXPIRED}})}}n.send({code:0,data:{status:Jy.NEW}})}catch(o){console.error("\u767E\u5EA6\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",o),n.send({code:0,data:{status:Jy.NEW}})}});async function e(r,n){let s=new Date().getTime().toString(),i=Math.floor(new Date().getTime()/1e3).toString(),o=(await le.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":K_,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],m=u[1],p=l[1],h=encodeURIComponent(d[1]),g=Object.entries({newlogin:"1",UBI:h,STOKEN:m,BDUSS:f,PTOKEN:p,BDUSS_BFESS:f,STOKEN_BFESS:m,PTOKEN_BFESS:p,UBI_BFESS:h}).map(([x,S])=>`${x}=${S}`).join("; "),b=(await le.get("https://passport.baidu.com/v3/login/api/auth/?return_type=5&tpl=netdisk&u=https://pan.baidu.com/disk/home",{headers:{"User-Agent":K_,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:x=>x===302||x===200})).headers.location;if(b){let S=(await le.get(b,{headers:{"User-Agent":K_,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:R=>R===302||R===200})).headers["set-cookie"],T="";if(S){let R=S.find(N=>N.toLowerCase().includes("stoken"));R&&(T=R.split(";")[0])}let I=T?`BDUSS=${f};${T};`:`BDUSS=${f};STOKEN=${m};`;return await $fe(n,I),I}else{let x=`BDUSS=${f};STOKEN=${m};`;return await $fe(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 fLr(r.server)})}),t.put("/cookie",async(r,n)=>{await $fe(r.server,r.body?.cookie??""),n.send({code:0})})}var egt=require("crypto");var tgt=Ce(V0(),1),rgt="https://account.guangyapan.com",Ffe="aMe-8VSlkrbQXpUR",Jht="0123456789abcdef0123456789abcdef",Ep={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},mLr="urn:ietf:params:oauth:grant-type:device_code",Xht={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}}},Z5=async(t,e)=>(await t.db.getObjectDefault("/guangyapan",{}))?.[e]||"",qR=async(t,e,r)=>{await t.db.push(`/guangyapan/${e}`,r)};function ngt(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{message:t}}return t}function oa(t){return String(t||"").trim()}function hLr(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 gLr(t){let e=hLr(await Z5(t,"device_id"));if(e)return e;let r=Jht;try{r=(0,egt.randomBytes)(16).toString("hex")}catch{r=Jht}return await qR(t,"device_id",r),r}function sgt(t){return{Accept:"application/json, text/plain, */*","Content-Type":"application/json","X-Client-Id":Ffe,"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 yLr(t){let e=oa(t?.access_token||t?.accessToken),r=oa(t?.refresh_token||t?.refreshToken);return{accessToken:e,refreshToken:r}}function ALr(t,e){let{accessToken:r,refreshToken:n}=yLr(e);if(t>=200&&t<300&&(n||r))return{status:Ep.CONFIRMED,accessToken:r,refreshToken:n};let s=oa(e?.error).toLowerCase();return s==="authorization_pending"||s==="slow_down"?{status:Ep.NEW}:s==="access_denied"?{status:Ep.CANCELED}:s.includes("expired")||s==="invalid_grant"?{status:Ep.EXPIRED}:{status:Ep.NEW}}function xLr(t){let e=oa(t?.refreshToken);return e||oa(t?.accessToken)}async function bLr(t){let e=await he.post(`${rgt}/v1/auth/device/code`,{scope:"user",client_id:Ffe},{headers:sgt(t),validateStatus:()=>!0}),r=ngt(e.data),n=oa(r?.device_code),s=oa(r?.verification_uri_complete||r?.verification_url),i=Number(r?.expires_in||120);if(e.status<200||e.status>=300||!n||!s)throw new Error(r?.error_description||r?.message||`status=${e.status}`);return{deviceCode:n,verifyUrl:s,expiresIn:i}}async function _Lr(t){let e=await he.post(`${rgt}/v1/auth/token`,{grant_type:mLr,device_code:t.deviceCode,client_id:Ffe},{headers:sgt(t.deviceId),validateStatus:()=>!0});return ALr(e.status,ngt(e.data))}async function Zht(t,e){let r=oa(e?.accessToken),n=oa(e?.refreshToken);n&&await qR(t,"refresh_token",n),r&&await qR(t,"access_token",r)}function ELr(t){let e=oa(t?.cookie),r=oa(t?.accessToken||t?.data?.accessToken),n=oa(t?.refreshToken||t?.data?.refreshToken),s=!1;if(!r&&!n&&e)try{let i=JSON.parse(e);s=!0,r=oa(i?.accessToken||i?.access_token),n=oa(i?.refreshToken||i?.refresh_token)}catch{n=e}return!s&&!n&&e&&(n=e),{accessToken:r,refreshToken:n}}async function qfe(t){t.get("/qrcode",async(e,r)=>{try{let n=await gLr(e.server),s=await bLr(n),i=Xht.encode({deviceCode:s.deviceCode,deviceId:n},Math.max(1e3,s.expiresIn*1e3)),a=await tgt.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=Xht.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:Ep.EXPIRED}});try{let s=await _Lr(n);if(s.status===Ep.CONFIRMED)return await Zht(e.server,s),r.send({code:0,data:{status:Ep.CONFIRMED,cookie:xLr(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:Ep.NEW}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await Z5(e.server,"refresh_token")})}),t.put("/token",async(e,r)=>{await Zht(e.server,ELr(e.body||{})),r.send({code:0})}),t.get("/account",async(e,r)=>{r.send({code:0,data:{accessToken:await Z5(e.server,"access_token"),refreshToken:await Z5(e.server,"refresh_token")}})}),t.put("/account",async(e,r)=>{await qR(e.server,"access_token",oa(e.body?.accessToken)),await qR(e.server,"refresh_token",oa(e.body?.refreshToken)),r.send({code:0})})}var eW=Ce(require("crypto"),1),Io=Ce(Zn(),1),cgt="https://user-njs.yun.139.com/user",Hfe="7.17.4",vLr="mCloud_4.3.0_536",jfe=670,SLr=292,ugt=Io.default.enc.Utf8.parse("h7DLzCTAjn+altjy2a9E9FSt7AC6pmx1"),igt=`||9|${Hfe}|chrome||0||windows 10||zh-CN|||`,Gfe=(t="")=>String(t||"").replace(/^Basic\s+/i,"").trim(),Da=(t="")=>String(t||"").trim(),Qfe=(t="")=>eW.default.createHash("md5").update(String(t)).digest("hex"),ILr=(t="")=>eW.default.createHash("sha1").update(String(t)).digest("hex"),CLr=t=>{try{return JSON.stringify(t)}catch{return String(t)}},TLr=t=>{try{return JSON.parse(t)}catch{return null}},agt=(t="",e=160)=>String(t).replace(/\s+/g," ").slice(0,e),wLr=(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||CLr(t):t==null?e:String(t),z_=(t="")=>{let e=Da(t);return e.length<7?e?"***":"":`${e.slice(0,3)}****${e.slice(-4)}`},Vfe=(t={},e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>{let r=String(t.code??t.status??t.resultCode??t.resultcode??""),n=wLr(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},RLr=t=>{let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r="";for(let n=0;n<t;n+=1)r+=e[Math.floor(Math.random()*e.length)];return r},NLr=(t={})=>encodeURIComponent(JSON.stringify({...t})).split("").sort().join(""),OLr=(t={})=>{let e=String(Date.now()),r=RLr(16),n=Qfe(Buffer.from(NLr(t)).toString("base64")),s=Qfe(`${e}:${r}`);return`${e},${r},${Qfe(n+s).toUpperCase()}`},kLr=(t={},e={})=>({caller:"web","Content-Type":"application/json;charset=UTF-8","CMS-DEVICE":"default","X-Deviceinfo":`||9|${Hfe}|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":Hfe,"mcloud-channel":"1000101","mcloud-client":"10701","mcloud-sign":OLr(t),"mcloud-skey":"","INNER-HCY-ROUTER-HTTPS":"1",...e}),lgt=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 Vfe(e);return e},PLr=(t={})=>{let e=Io.default.lib.WordArray.random(16),r=Io.default.enc.Utf8.parse(typeof t=="string"?t:JSON.stringify(t)),n=Io.default.AES.encrypt(r,ugt,{iv:e,mode:Io.default.mode.CBC,padding:Io.default.pad.Pkcs7});return Io.default.enc.Base64.stringify(e.concat(n.ciphertext))},DLr=(t="")=>{let e=Io.default.enc.Base64.parse(String(t)),r=e.clone(),n=r.words.splice(4);r.init(r.words),e.init(n);let s=Io.default.AES.decrypt(Io.default.enc.Base64.stringify(e),ugt,{iv:r,mode:Io.default.mode.CBC,padding:Io.default.pad.Pkcs7}).toString(Io.default.enc.Utf8);return JSON.parse(s)},dgt=(t="")=>{if(typeof t!="string")return t;try{return DLr(t)}catch(e){let r=TLr(t);return r&&typeof r=="object"?r:(console.warn("[yidong] cool response decrypt failed",{dataLength:String(t).length,dataPreview:agt(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${agt(t)||e?.message||String(e)}`})}},BLr=t=>{let e=dgt(t?.data);return lgt({data:e})},LLr=t=>{let e=eW.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")},MLr=t=>{if(typeof t!="string")return t||{};try{return JSON.parse(LLr(t))}catch{try{return JSON.parse(t)}catch{throw new Error("\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u7ED3\u679C\u89E3\u6790\u5931\u8D25")}}},WLr=(t,e)=>!t||!e?"":Buffer.from(`pc:${t}:${e}`,"utf8").toString("base64"),ogt=async(t,e,r={})=>{try{let n=await he.post(`${cgt}${t}`,e,{timeout:3e4,headers:kLr(e,r)});return lgt(n)}catch(n){if(n?.response?.data){let s=n.response.data;throw Vfe(s,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw n}},$Lr=async(t,e,r={})=>{let{clientInfo:n,...s}=r;try{let i=await he.post(`${cgt}${t}`,PLr(e),{timeout:3e4,headers:{"Content-Type":"application/json;charset=UTF-8","hcy-cool-flag":"1","x-Nationcode":e.nationCode||"+86","x-deviceinfo":n||igt,"x-yun-client-info":n||igt,"x-yun-app-channel":"10000034",...s}});return BLr(i)}catch(i){if(i?.response?.data){let a=dgt(i.response.data);throw Vfe(a,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw i}},jR=async(t,e)=>(await t.db.getObjectDefault("/yidong",{}))?.[e]||"",Sd=async(t,e,r)=>{let n=e==="authorization"?Gfe(r):Da(r);await t.db.push(`/yidong/${e}`,n),e==="authorization"&&(globalThis.YidongAuthorization=n)},fgt=async t=>{globalThis.YidongAuthorization=Gfe(await jR(t,"authorization"))};async function Kfe(t){t.get("/authorization",async(e,r)=>{let n=Gfe(await jR(e.server,"authorization")),s=Da(await jR(e.server,"phone"));globalThis.YidongAuthorization=n,r.send({code:0,data:{authorization:n,phone:s,hasAuth:!!n}})}),t.put("/authorization",async(e,r)=>{await Sd(e.server,"authorization",e.body.authorization),r.send({code:0})}),t.post("/send-code",async(e,r)=>{let n=Da(e.body?.phone),s=Math.random();try{if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}let i={phoneNumber:n,reqType:3,random:s,nationCode:"+86",clientType:jfe},a=await ogt("/sms/getSmsCode",i,{"x-NationCode":"+86"}),o=Da(a?.data?.random||a?.random||s);await Sd(e.server,"phone",n),await Sd(e.server,"smsRandom",o),await Sd(e.server,"smsLoginRandom",s),console.info("[yidong] sms code sent",{phone:z_(n),reqType:i.reqType,randomLength:o.length}),r.send({code:0,data:{sent:!0}})}catch(i){if(console.warn("[yidong] send code failed",{phone:z_(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 Sd(e.server,"phone",n),await Sd(e.server,"smsLoginRandom",s),console.info("[yidong] sms code requires captcha",{phone:z_(n),captchaType:a}),r.send({code:0,data:{captchaRequired:!0,captchaType:a}});return}r.send({code:1,message:i?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/send-code-captcha",async(e,r)=>{try{let n=Da(e.body?.phone),s=Number(e.body?.captchaType||2),i=e.body?.puzzleVerfycode??e.body?.puzzleVerfyCode,a=Da(e.body?.clientInfo);if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u8BF7\u5148\u5B8C\u6210\u6ED1\u5757\u9A8C\u8BC1"});return}let o=Da(await jR(e.server,"smsLoginRandom")),c=Number(o),u=o&&Number.isFinite(c)?c:Math.random(),d=await $Lr("/sms/getSmsCode",{phoneNumber:n,reqType:3,random:u,nationCode:"+86",clientType:jfe,captchaType:s,puzzleVerfycode:i},a?{clientInfo:a}:{}),f=Da(d?.data?.random||d?.random||u);await Sd(e.server,"phone",n),await Sd(e.server,"smsRandom",f),console.info("[yidong] sms code sent after captcha",{phone:z_(n),captchaType:s,randomLength:f.length}),r.send({code:0,data:{sent:!0}})}catch(n){console.warn("[yidong] send code after captcha failed",{phone:z_(e.body?.phone),code:n?.yidongCode,message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u6ED1\u5757\u9A8C\u8BC1\u540E\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/verify-code",async(e,r)=>{let n="";try{let s=Da(e.body?.phone),i=Da(e.body?.code);if(!/^1[3456789]\d{9}$/.test(s)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}n=Da(await jR(e.server,"smsRandom"));let a={msisdn:s,random:"",dycpwd:i,cpid:SLr,clienttype:jfe,version:vLr,pintype:5,secinfo:ILr(`fetion.com.cn:${i}`).toUpperCase(),verType:2,loginMode:"0",extInfo:{ifOpenAccount:"1"}},o=await ogt("/thirdlogin",a,{"x-NationCode":"+86"}),c=MLr(o.data),u=Da(c.account||s),l=Da(c.token||c.authToken),d=WLr(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 Sd(e.server,"phone",s),await Sd(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:z_(e.body?.phone),codeLength:Da(e.body?.code).length,smsRandomLength:n.length,message:s?.message||String(s)}),r.send({code:1,message:s?.message||"\u9A8C\u8BC1\u7801\u767B\u5F55\u5931\u8D25"})}})}var tW=[{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,noSaveMode:!0},{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"}],zfe=async t=>{let r=(await t.db.getObjectDefault("/pans",{}))?.list||t.config.pans.list;return r.filter(n=>tW.some(s=>s.key===n.key)).concat(tW.filter(n=>!r.some(s=>s.key===n.key))).map(n=>({...tW.find(i=>i.key===n.key),...n}))},ULr=async(t,e)=>{await t.db.push("/pans/list",e),globalThis.Pans=e},FLr=async t=>{await t.db.delete("/pans/list"),globalThis.Pans=tW};async function Yfe(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await zfe(e.server)})}),t.put("/list",async(e,r)=>{await ULr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await FLr(e.server),r.send({code:0})})}var pgt=Ce(BI(),1);async function Jfe(t){t.get("/",async(e,r)=>{r.header("Content-Disposition",`attachment; filename="config.${(0,pgt.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 mgt=Ce(require("crypto"),1);function Ft(t=[],e=null){let r=Array.isArray(t)?t:[];return{Items:r,TotalRecordCount:typeof e=="number"?e:r.length}}function Jr(t,e,r=""){if(!t||typeof t!="object")return r;for(let n of e)if(t[n]!==void 0&&t[n]!==null)return t[n];return r}function Xfe(t,e){return typeof t!="string"||!t.trim()?[]:t.split(e).map(r=>String(r||"").trim()).filter(Boolean)}function qLr(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 Co(t,e){let r=Xfe(t,"$$$"),n=Xfe(e,"$$$"),s=Math.max(r.length,n.length),i=[];for(let a=0;a<s;a++){let c=Xfe(n[a]||"","#").map(qLr).filter(u=>u.playId);i.push({flag:r[a]||`\u7EBF\u8DEF${a+1}`,episodes:c})}return i}function Xy(t,e=1){let r=Number.parseInt(NR(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 jLr(t,e=""){let r=[];for(let n=0;n<t.length;n+=2){let s=String(t[n]||"").trim(),i=epe(t[n+1]||"");i&&r.push({label:s,url:i})}if(!r.length)return t.map(s=>epe(s)).find(Boolean)||"";if(e){let n=r.find(s=>s.label===e);if(n)return n.url}return r[0].url}function Zfe(t=""){return/^(https?:\/\/|push:\/\/)/i.test(String(t||"").trim())}function epe(t=""){let e=String(t||"").trim();if(!e)return"";if(Zfe(e))return e;let r=e.split("#").map(n=>String(n||"").trim()).filter(Boolean);for(let n of r){if(Zfe(n))return n;let i=n.split(",").map(c=>String(c||"").trim()).filter(Boolean).find(c=>Zfe(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 Lm(t,e=""){let r=t?.url||"";Array.isArray(r)?r=jLr(r,e):r=epe(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 Gu(t,e=60){let r=Number(t);return!Number.isFinite(r)||r<=0?e:Math.min(200,r)}function Ba(t=[],e=0,r=60){let n=Array.isArray(t)?t:[],s=Math.max(0,Number(e)||0),i=Gu(r,60);return n.slice(s,s+i)}function cs(t={}){return{IsFavorite:!1,Played:!1,PlayCount:0,PlaybackPositionTicks:0,...t}}function Y_(t={}){let e=`${t?.vod_name||""} ${t?.vod_remarks||""}`;return/(更新|第\s*\d+\s*[集话期]|连载|season|s\d+e\d+)/i.test(e)?"Series":"Movie"}function Fs(){return new Date().toISOString()}function QLr(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 HLr(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 GLr(t){let e=t.query||{},r=HLr(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 VLr(t){let e=Fs();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 KLr(t,e,r){let n=Fs();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 tpe(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=QLr(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=mgt.default.randomBytes(24).toString("hex"),f=GLr(a),m=Date.now(),p=c.config.tokenTtlMs>0?m+c.config.tokenTtlMs:0;c.tokens.set(d,{token:d,userId:c.user.id,userName:c.user.name,createdAt:m,lastUsedAt:m,expireAt:p,device:f});let h=VLr(c),y=KLr(c,h,f);return{User:h,SessionInfo:y,AccessToken:d,ServerId:c.config.serverId}}),t.post("/Logout",{preHandler:t.embyRequireAuth},async(a,o)=>{a.embyToken&&t.embyContext.tokens.delete(a.embyToken),o.code(204).send()}),t.get("/Me",{preHandler:t.embyRequireAuth},async a=>({Name:a.embyUser?.Name||t.embyContext.user.name,Id:a.embyUser?.Id||t.embyContext.user.id,ServerId:t.embyContext.config.serverId,Policy:{},Configuration:{},EnableAutoLogin:!1,LastLoginDate:Fs(),LastActivityDate:Fs()}))}async function rpe(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 hgt=new Set(["lib","cat","vod","sea","ep","img","media"]);function wn(t,e={}){if(!hgt.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 qs(t){if(typeof t!="string")return null;let e=t.indexOf(":");if(e<=0)return null;let r=t.slice(0,e);if(!hgt.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 npe(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:cs(),ImageTags:{Primary:r},BackdropImageTags:[],ChildCount:0}}async function spe(t){t.get("/MediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await _d(t);return Ft(r.map(n=>npe(n,e)))}),t.get("/VirtualFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId;return(await _d(t)).map(n=>{let s=npe(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 _d(t);return Ft(r.map(n=>{let s=npe(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 zLr="/embyPlayback",YLr=.92,JLr=1500;function rW(t,e=0){let r=Number(t);return Number.isFinite(r)?r:e}function ipe(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 XLr(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 nW(t){let e=t&&typeof t=="object"?t:{};return{users:e.users&&typeof e.users=="object"?e.users:{}}}function Mm(t){let e=t?.embyContext;return!e||typeof e!="object"?nW(null):((!e.playbackState||typeof e.playbackState!="object")&&(e.playbackState=nW(null)),(!e.playbackState.users||typeof e.playbackState.users!="object")&&(e.playbackState.users={}),e.playbackState)}function Zy(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 vp(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(rW(r.playCount,0))),playbackPositionTicks:Math.max(0,Math.floor(rW(r.playbackPositionTicks,0))),lastPlayedDate:XLr(r.lastPlayedDate),mediaSourceId:String(r.mediaSourceId||"").trim()}}function ggt(t={}){return Date.parse(String(t?.lastPlayedDate||""))||0}function ZLr(t=""){let e=String(t||"").trim();return e?e.match(/\d{4}/)?.[0]||e:""}function Agt(t={}){let e=String(t.k||"").trim(),r=String(t.v||"").trim();if(!e||!r)return null;let n=ZLr(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 e6r(t={}){let e=Agt(t);return e?{...e,l:Number(t.l||0)}:null}function t6r(t={}){let e=Agt(t);return e?wn("vod",e):""}function r6r(t={}){let e=e6r(t);return e?wn("sea",e):""}function xgt(t){return t?.type==="ep"||t?.type==="media"}function n6r(t,e){if(!xgt(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 bgt(t,e,r,n={}){let s=qs(String(r||""));if(!["vod","sea"].includes(s?.type))return[];let i=Mm(t),a=Zy(i,e);if(!a)return[];let o=!!n?.includePlayed;return Object.entries(a.items||{}).map(([c,u])=>({record:vp(u,c),decoded:qs(c)})).filter(({record:c,decoded:u})=>!n6r(u,s)||c.playbackPositionTicks<=0?!1:o||!c.played).sort((c,u)=>ggt(u.record)-ggt(c.record))}function QR(t,e,r,n={}){return bgt(t,e,r,n)[0]||null}async function ygt(t){try{if(!t?.db?.push)return;await t.db.push(zLr,Mm(t))}catch{}}function sW(t,e=!1){let r=t?.embyContext;if(!(!r||typeof r!="object")){if(e){r.playbackPersistTimer&&(clearTimeout(r.playbackPersistTimer),r.playbackPersistTimer=null),ygt(t);return}r.playbackPersistTimer||(r.playbackPersistTimer=setTimeout(async()=>{r.playbackPersistTimer=null,await ygt(t)},JLr))}}function s6r(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 i6r(t={}){let e=[t?.PositionTicks,t?.positionTicks,t?.PlaybackPositionTicks,t?.playbackPositionTicks,t?.Position,t?.position];for(let r of e){let n=Math.floor(rW(r,NaN));if(Number.isFinite(n)&&n>=0)return n}return 0}function a6r(t={}){let e=[t?.RunTimeTicks,t?.runTimeTicks,t?.NowPlayingItem?.RunTimeTicks,t?.nowPlayingItem?.runTimeTicks];for(let r of e){let n=Math.floor(rW(r,NaN));if(Number.isFinite(n)&&n>0)return n}return 0}function o6r(t,e,r,n){return ipe(t?.Played,!1)||ipe(t?.IsPlayed,!1)||e==="played"?!0:e!=="stopped"||n<=0?!1:r/n>=YLr}function c6r(t,e,r){let n=String(r||"").trim();if(!n)return null;let s=Mm(t),i=Zy(s,e);if(!i)return null;let a=i.items[n];return!a||typeof a!="object"?null:vp(a,n)}function Zo(t,e,r,n={}){let s=String(r||"").trim();if(!s)return cs(n);let i=c6r(t,e,s),o=QR(t,e,s)?.record||null||i;return o?cs({...n,IsFavorite:!!(i?.isFavorite||o.isFavorite),Played:o.played,PlayCount:o.playCount,PlaybackPositionTicks:o.playbackPositionTicks,...o.lastPlayedDate?{LastPlayedDate:o.lastPlayedDate}:{}}):cs(n)}function js(t,e,r=[]){return!Array.isArray(r)||!r.length||r.forEach(n=>{!n||!n.Id||(n.UserData=Zo(t,e,String(n.Id||""),n.UserData||{}))}),r}async function HR(t,e,r={},n="progress"){let s=s6r(r);if(!s)return null;let i=Mm(t),a=Zy(i,e);if(!a)return null;let o=vp(a.items[s],s),c=i6r(r),u=a6r(r),l=o6r(r,n,c,u),d=vp(o,s);d.lastPlayedDate=Fs(),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 m=String(r?.MediaSourceId||r?.mediaSourceId||"").trim();return m&&(d.mediaSourceId=m),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=ipe(r?.IsFavorite??r?.isFavorite,d.isFavorite)),a.items[s]=d,sW(t,n==="stopped"),d}async function _gt(t,e,r,n){let s=String(r||"").trim();if(!s)return cs();let i=Mm(t),a=Zy(i,e);if(!a)return cs();let o=vp(a.items[s],s),c=vp(o,s);return c.played=!!n,c.lastPlayedDate=Fs(),c.played&&(c.playCount=Math.max(1,c.playCount+(o.played?0:1))),c.playbackPositionTicks=0,a.items[s]=c,sW(t,!0),Zo(t,e,s)}async function Egt(t,e,r,n){let s=String(r||"").trim();if(!s)return cs();let i=Mm(t),a=Zy(i,e);if(!a)return cs();let o=vp(a.items[s],s);return o.isFavorite=!!n,o.lastPlayedDate=Fs(),a.items[s]=o,sW(t,!0),Zo(t,e,s)}async function vgt(t,e,r){let n=String(r||"").trim();if(!n)return cs();let s=Mm(t),i=Zy(s,e);if(!i)return cs();let a=new Set([n,...bgt(t,e,n).map(({record:o})=>o.itemId)]);for(let o of a){let c=vp(i.items[o],o);c.played=!1,c.playbackPositionTicks=0,c.lastPlayedDate=Fs(),i.items[o]=c}return sW(t,!0),Zo(t,e,n)}function u6r(t=""){let e=qs(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 l6r(t){if(t?.name)return String(t.name);let e=qs(String(t?.itemId||"")),r=String(e?.payload?.n||"").trim();return r||"\u7EE7\u7EED\u64AD\u653E"}function d6r(t,e,r,n){let s=qs(String(n?.itemId||""));if(xgt(s)){let a=t6r(s.payload||{});if(a){let o=r6r(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||Fs(),ImageTags:{Primary:a},BackdropImageTags:[],UserData:Zo(t,e,a)}}}let i=u6r(n.itemId);return{Name:l6r(n),Id:n.itemId,ServerId:r,IsFolder:i.isFolder,Type:i.type,...i.mediaType?{MediaType:i.mediaType}:{},...i.canPlay?{CanPlay:!0}:{},DateCreated:n.lastPlayedDate||Fs(),ImageTags:{Primary:n.itemId},BackdropImageTags:[],UserData:Zo(t,e,n.itemId)}}function f6r(t={}){let e=qs(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 Sgt(t,e,r){let n=Mm(t),s=Zy(n,e);if(!s)return[];let i=Object.entries(s.items||{}).map(([c,u])=>vp(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=d6r(t,e,r,c),l=f6r(u);!u?.Id||a.has(l)||(a.add(l),o.push(u))}return o}var p6r="https://api.themoviedb.org/3",Igt=8e3,m6r=2,Cgt=20,Tgt=20;function wgt(t=0){return new Promise(e=>setTimeout(e,Math.max(0,Number(t)||0)))}function GR(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:Igt}}function Rgt(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 h6r(t){let e=t.embyContext;return e.tmdbClientState||(e.tmdbClientState={tokens:Tgt,lastRefillAt:Date.now()}),e.tmdbClientState}function g6r(t){let e=Date.now(),r=Math.max(0,e-t.lastRefillAt)/1e3;r<=0||(t.tokens=Math.min(Tgt,t.tokens+r*Cgt),t.lastRefillAt=e)}async function y6r(t){let e=h6r(t);for(;;){if(g6r(e),e.tokens>=1){e.tokens-=1;return}let r=Math.max(0,1-e.tokens),n=Math.max(50,Math.ceil(r/Cgt*1e3));await wgt(n)}}function A6r(t){let e=Number(t?.response?.status||0);return!e||e===429||e>=500}function x6r(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 eA(t){return!!GR(t)}function VR(t,e=""){let r=String(e||"").trim();return r?/^https?:\/\//i.test(r)?r:`${GR(t)?.imageBase||"https://image.tmdb.org/t/p/original"}${r.startsWith("/")?"":"/"}${r}`:""}async function KR(t,e,r={},n={}){let s=GR(t);if(!s)return null;let i={...r||{}};i.language||(i.language=s.language);let a=Math.max(0,Number(n.maxRetries??m6r)||0);for(let o=0;o<=a;o+=1){await y6r(t);try{return(await he.get(`${p6r}${e}`,{params:{api_key:s.apiKey,...i},timeout:Number(n.timeoutMs||s.timeoutMs||Igt),headers:{Accept:"application/json"}})).data||null}catch(c){if(o>=a||!A6r(c))return null;await wgt(x6r(c,o))}}return null}async function Ngt(t,e,r=null){return KR(t,"/search/tv",{query:e,...r?{first_air_date_year:r}:{}})}async function Ogt(t,e,r=null){return KR(t,"/search/movie",{query:e,...r?{primary_release_year:r}:{}})}async function kgt(t,e){let r=GR(t);return KR(t,`/tv/${Number(e)}`,{append_to_response:"external_ids,content_ratings,images,credits",include_image_language:Rgt(r?.language||"zh-CN")})}async function Pgt(t,e){let r=GR(t);return KR(t,`/movie/${Number(e)}`,{append_to_response:"external_ids,release_dates,images,credits",include_image_language:Rgt(r?.language||"zh-CN")})}async function Dgt(t,e,r){return KR(t,`/tv/${Number(e)}/season/${Number(r)}`)}function Mn(t=""){return String(t||"").trim()}function Bgt(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 b6r(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 Mgt({explicitSources:t=[],suffixSources:e=[]}={}){for(let r of Bgt(t)){let n=Number.parseInt($de(r),10);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"pattern"}}for(let r of Bgt(e)){let n=b6r(r);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"title_suffix"}}return{seasonNumber:null,explicit:!1,strategy:"none"}}function _6r(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 Lgt(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):qV(t,e).length/Math.max(t.length,e.length)}function tA(t=""){let e=Mn(t).match(/\b(19|20)\d{2}\b/);return e?.[0]?Number(e[0]):null}function ape(t=""){let e=Mn(t);return Mn(Qy(e)||e).toLowerCase().replace(/[·•::\-_.!!??,,'"/\\()[\]{}【】《》\s]+/g,"").replace(/第[一二三四五六七八九十百千万亿\d]+季/g,"").replace(/年番总集篇|年番合集篇|总集篇|合集篇|年番/g,"")}function Wgt(t={}){let e=Mn(t?.tmdbHintTitle||t?.vod_name||t?.name||""),r=Mn(Qy(e)||e),n=Mn(t?.tmdbHintRemarks||t?.vod_remarks||""),s=Mgt({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:ape(r||e),altTitle:n,year:tA(t?.tmdbHintYear||t?.vod_year),seasonNumber:s.seasonNumber,seasonHintStrategy:s.strategy}}function ope(t={},e=null){let r=Mgt({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 $gt(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 E6r(t={},e="tv"){return tA(e==="movie"?t?.release_date:t?.first_air_date)}function v6r(t,e,r){let n=ape(t?.cleanedTitle||t?.rawTitle||""),s=_6r(n,t,r),i=ape($gt(e,r)),a=Lgt(n,i),o=Lgt(s,i);return Math.max(a,o)}function S6r(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=E6r(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 I6r(t,e,r){if(r!=="tv"||!t?.seasonNumber)return .5;let n=Number.parseInt($de($gt(e,r)),10)||null;return n?n===t.seasonNumber?1:.2:.5}function C6r(t,e,r="tv"){let n=v6r(t,e,r),s=S6r(t,e,r),i=I6r(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 Ugt(t,e=[],r="tv"){let n=(Array.isArray(e)?e:[]).map(i=>{let a=C6r(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 iW(t={},e=null,r=0){return ope(t,e).seasonNumber}var nA={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 upe(t){let e=t.embyContext;return e.tmdbStore||(e.tmdbStore={memory:L5({max:1200}),pending:new Map}),e.tmdbStore}function cpe(t=""){return`/embyTmdb/${Buffer.from(String(t||""),"utf8").toString("base64url")}`}function T6r(t,e=0){return{value:t,expireAt:e>0?Date.now()+e:0}}function w6r(t=null){return!!(t&&t.expireAt>0&&t.expireAt<=Date.now())}async function R6r(t,e){try{let r=await t.db?.getObjectDefault(cpe(e),null);return!r||typeof r!="object"?null:w6r(r)?(t.db?.delete&&await t.db.delete(cpe(e)).catch(()=>{}),null):r}catch{return null}}async function rA(t,e,r={}){let n=upe(t),s=n.memory.get(e);if(s!==void 0)return s;if(r.persist===!1)return null;let i=await R6r(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 J_(t,e,r,n=0,s={}){if(upe(t).memory.set(e,r,n),s.persist===!1)return r;try{t.db?.push&&await t.db.push(cpe(e),T6r(r,n))}catch{}return r}async function lpe(t,e,r,n,s={}){let i=await rA(t,e,s);if(i!==null)return i;let a=upe(t);if(a.pending.has(e))return a.pending.get(e);let o=(async()=>{try{let c=await rA(t,e,s);if(c!==null)return c;let u=await n();return u!=null?J_(t,e,u,r,s):null}finally{a.pending.delete(e)}})();return a.pending.set(e,o),o}function Vu(t=""){return String(t||"").trim()}function N6r(t=""){let e=tA(t);return e?String(e):""}function sA(t={},e={}){let r=t&&typeof t=="object"?t:{},n=Vu(e?.n),s=Vu(e?.r),i=N6r(e?.y||e?.vod_year),a=Vu(e?.u);return n&&(r.tmdbHintTitle=n),s&&(r.tmdbHintRemarks=s),i&&(r.tmdbHintYear=i),!Vu(r.vod_name)&&n&&(r.vod_name=n),!Vu(r.vod_remarks)&&s&&(r.vod_remarks=s),!Vu(r.vod_year)&&i&&(r.vod_year=i),!Vu(r.vod_pic)&&a&&(r.vod_pic=a),r}function O6r(t={}){let e=Vu(t?.v);return e?sA({vod_id:e,vod_name:"",vod_pic:"",vod_remarks:"",vod_year:""},t):null}function zn(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 fpe(t){let e=Number(t);return Number.isFinite(e)&&e>0?Number(e.toFixed(1)):void 0}function ppe(t=""){let e=String(t||"").trim();return/^\d{4}-\d{2}-\d{2}$/.test(e)?`${e}T00:00:00.000Z`:void 0}function k6r(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.round(e*60*1e7):void 0}function P6r(t=[]){return(Array.isArray(t)?t:[]).map(e=>String(e?.name||"").trim()).filter(Boolean)}function D6r(t=[]){return(Array.isArray(t)?t:[]).filter(e=>e?.name).map(e=>({Name:String(e.name),Id:String(e.id||e.name)}))}function B6r(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 L6r(t=""){return String(t||"").trim().toLowerCase()}function M6r(t={}){let e=Array.isArray(t?.images?.logos)?t.images.logos:[];if(!e.length)return[];let r=e.map((n,s)=>{let i=L6r(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 aW(t={}){let e=M6r(t);return e.length&&e[0]?.filePath||""}function W6r(t="",e="",r=0){let n=zn({n:String(t||"").trim(),u:String(e||"").trim()||void 0,pid:Number(r||0)>0?String(r):void 0});return wn("img",n)}function $6r(t,e={},r={}){let n=String(e?.name||e?.original_name||"").trim();if(!n)return null;let s=VR(t,e?.profile_path||""),i=Number(e?.id||0),a=W6r(n,s,i),o=String(r.role||"").trim(),c=String(r.type||"Actor").trim();return zn({Name:n,Id:a,Role:o||void 0,Type:c||void 0,PrimaryImageTag:s?a:void 0,ImageTags:s?{Primary:a}:void 0})}function U6r(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($6r(e,o.person,{role:u,type:"Actor"}),c>0?`cast:${c}`:`cast:${o.person?.name||""}:${u}`)}),n.slice(0,24)}function F6r(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 Fgt(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 q6r(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})})}),Fgt(r)}return Fgt(Array.isArray(t?.content_ratings?.results)?t.content_ratings.results:[])}function j6r(t,e){return`binding:${String(t?.spiderKey||"")}:${Number(t?.spiderType||3)}:${String(t?.apiBase||"")}:${String(e?.vod_id||"")}`}function Q6r(t,e,r){return`detail:${String(t||"")}:${Number(e||0)}:${String(r||"zh-CN")}`}function H6r(t,e,r){return`season:${Number(t||0)}:${Number(e||0)}:${String(r||"zh-CN")}`}function G6r(t){return`no-match:v2:${String(t?.normalizedTitle||"")}:${String(t?.year||"")}:${String(t?.seasonNumber||"")}:${String(t?.seasonHintStrategy||"")}`}function jgt(t){return`failure:${t}`}function Sp(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function Qgt(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 Hgt(t={},e="tv"){return String(e==="movie"?t?.release_date||"":t?.first_air_date||"").trim()}function dpe(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 zn({rawTitle:String(t?.rawTitle||""),cleanedTitle:String(t?.cleanedTitle||""),normalizedTitle:String(t?.normalizedTitle||""),altTitle:String(t?.altTitle||""),year:e,seasonNumber:r,seasonHintStrategy:n})}function V6r(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 zn({id:Number(s?.id||0)||void 0,title:Qgt(s,e),date:Hgt(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:zn({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 qgt(t=null){if(!t?.candidate)return null;let e=t.candidate;return zn({mediaType:String(t.mediaType||""),status:String(t.status||""),score:Number.isFinite(Number(t.score))?Number(t.score):void 0,candidate:zn({id:Number(e?.id||0)||void 0,title:Qgt(e,t.mediaType||"tv"),date:Hgt(e,t.mediaType||"tv")}),breakdown:zn({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 K6r(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"]:Y_(t)==="Series"?e.allowFallback===!0?["tv","movie"]:["tv"]:["movie","tv"]}async function z6r(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 Ogt(t,c,e?.year):await Ngt(t,c,o),l=Array.isArray(u?.results)?u.results:[],d=0;if(l.forEach(f=>{let m=Number(f?.id||0);m>0&&!s.has(m)&&(s.set(m,f),d+=1)}),i.push(zn({query:c,resultCount:l.length,acceptedCount:d,collectedCount:s.size})),s.size>=5)break}return{results:Array.from(s.values()),queryLogs:i}}async function X_(t,e,r,n={}){if(!eA(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=j6r(e,r),a=String(n.preferredMediaType||"").trim().toLowerCase(),o=await rA(t,i);if(o?.tmdbId&&o?.mediaType)return a&&n.allowFallback===!1&&o.mediaType!==a?(Sp(t,"tmdb.match.binding.cache.reject",zn({...s,cachedMediaType:String(o.mediaType||""),preferredMediaType:a})),null):(Sp(t,"tmdb.match.binding.cache.hit",zn({...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=Wgt(r),u=typeof n.allowFallback=="boolean"?n.allowFallback:void 0;if(Sp(t,"tmdb.match.input",zn({...s,input:dpe(c),preferredMediaType:a||void 0,allowFallback:u})),!c?.normalizedTitle)return Sp(t,"tmdb.match.skip.invalid_input",zn({...s,input:dpe(c)})),null;let l=G6r(c),d=await rA(t,l);if(d)return Sp(t,"tmdb.match.skip.no_match_cache",zn({...s,status:String(d?.status||""),score:Number.isFinite(Number(d?.score))?Number(d.score):void 0})),null;let f=null;for(let p of K6r(r,n)){let{results:h,queryLogs:y}=await z6r(t,c,p),g=Ugt(c,h,p);if(Sp(t,"tmdb.match.round",zn({...s,mediaType:p,queryLogs:y,resultCount:h.length,status:g.status,bestScore:Number.isFinite(Number(g?.best?.score))?Number(g.best.score):void 0,topCandidates:V6r(g.candidates,p,3)})),g.best&&(!f||g.best.score>f.score)&&(f={mediaType:p,...g.best,status:g.status}),g.status==="MATCH"&&g.best?.candidate?.id){let A=g.best.candidate,b=zn({mediaType:p,tmdbId:Number(A.id),score:g.best.score,matchedTitle:String(p==="movie"?A.title||A.original_title||"":A.name||A.original_name||""),matchedYear:p==="movie"?tA(A.release_date):tA(A.first_air_date),updatedAt:Date.now()});return await J_(t,i,b,nA.BINDING),Sp(t,"tmdb.match.binding.set",zn({...s,mediaType:p,tmdbId:Number(b.tmdbId||0)||void 0,score:Number.isFinite(Number(b.score))?Number(b.score):void 0,matchedTitle:String(b.matchedTitle||""),matchedYear:Number.isFinite(Number(b.matchedYear))?Number(b.matchedYear):void 0,best:qgt({mediaType:p,...g.best,status:g.status})})),b}}let m={status:f?.score>=.5?"CANDIDATE":"NO_MATCH",score:Number(f?.score||0),checkedAt:Date.now()};return await J_(t,l,m,f?.score>=.5?15*60*1e3:nA.NO_MATCH),Sp(t,"tmdb.match.no_match_set",zn({...s,noMatch:m,best:qgt(f),input:dpe(c)})),null}async function Ggt(t,e={},r={}){try{if(!eA(t))return null;let n=Ed(e),s=O6r(e);return!n?.spiderKey||!s?.vod_id?null:Zgt(t,{spiderRef:n,vod:s,options:r})}catch{return null}}async function Z_(t,e){if(!e?.tmdbId||!e?.mediaType)return null;let r=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),n=Q6r(e.mediaType,e.tmdbId,r),s=jgt(n);if(await rA(t,s))return null;let i=await lpe(t,n,nA.DETAIL,async()=>{let a=e.mediaType==="movie"?await Pgt(t,e.tmdbId):await kgt(t,e.tmdbId);return a?.id?a:null});return i?.id?i:(await J_(t,s,{failedAt:Date.now()},nA.FAILURE),null)}async function Y6r(t,e,r){if(!e?.tmdbId||e?.mediaType!=="tv")return null;let n=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),s=H6r(e.tmdbId,r,n),i=jgt(s);if(await rA(t,i))return null;let a=await lpe(t,s,nA.SEASON,async()=>{let o=await Dgt(t,e.tmdbId,r);return o?.season_number!=null?o:null});return a?.season_number!=null?a:(await J_(t,i,{failedAt:Date.now()},nA.FAILURE),null)}function J6r(t={},e=null){let r=[Vu(t?.tmdbHintTitle||t?.vod_name),Vu(t?.tmdbHintRemarks||t?.vod_remarks),Vu(e?.flag)].filter(Boolean).join(" ");return/年番/i.test(r)}function X6r(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 Z6r(t=null){let r=(Array.isArray(t?.episodes)?t.episodes:[]).map(n=>X6r(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 Vgt(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 eMr(t={},e={},r=null,n={seasonNumber:1,explicit:!1}){let s=Vgt(t),i=Number(n?.seasonNumber||1),a=Number.isInteger(i)&&i>0?i:1,o=!!n?.explicit,c=J6r(e,r),u=Z6r(r),l=d=>{let f=Number(d||0);return!Number.isInteger(f)||f<=0?[]:s.filter(m=>m.episodeCount>=f).sort((m,p)=>p.seasonNumber-m.seasonNumber||p.episodeCount-m.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((m,p)=>p.episodeCount-m.episodeCount||p.seasonNumber-m.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,m)=>f.seasonNumber-m.seasonNumber)[0].seasonNumber,reason:"fallback_first_available",explicit:o,yearFan:c,episodeStats:u,seasons:s}}async function zR(t,e,r={},n=null,s=0,i=null){if(e?.mediaType!=="tv")return{seasonNumber:null,seasonDetail:null,detail:null};let a=i||await Z_(t,e);if(!a)return{seasonNumber:null,seasonDetail:null,detail:null};let o=ope(r,n),c=eMr(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 Y6r(t,e,u);return Sp(t,"tmdb.match.season_resolve",zn({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=>zn({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 Kgt(t,e,r={},n=null){let s=await zR(t,e,r,null,0,n);return{seasonNumber:s.seasonNumber,seasonDetail:s.seasonDetail}}function tMr(t,e,r,n=null){let s=e?.mediaType==="movie"?"movie":"tv",i=s==="tv"?Vgt(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(p=>Number(p)>0):0,d=B6r(t,s),f=aW(t),m=c?o?.poster_path||t?.backdrop_path||t?.poster_path||"":t?.backdrop_path||t?.poster_path||"";return zn({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:P6r(t?.genres),GenreItems:D6r(t?.genres),People:U6r(t,r),ProviderIds:F6r(t),CommunityRating:fpe(t?.vote_average),RunTimeTicks:k6r(l),OfficialRating:q6r(t,s),PremiereDate:ppe(u),ProductionYear:tA(u)||void 0,SeasonCount:i>0?i:void 0,ChildCount:i>0?i:void 0,BackdropImageTags:m?["tmdb"]:void 0,ImageTags:f?{Logo:"tmdb"}:void 0})}function rMr(t,e){return zn({Overview:String(t?.overview||"").trim()||void 0,PremiereDate:ppe(t?.air_date),CommunityRating:fpe(t?.vote_average)})}function nMr(t,e,r,n){return zn({Name:String(e?.name||"").trim()||void 0,Overview:String(e?.overview||"").trim()||void 0,CommunityRating:fpe(e?.vote_average),PremiereDate:ppe(e?.air_date),BackdropImageTags:e?.still_path?["tmdb"]:void 0})}function zgt(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 Ygt(t,e,r){let n=Xy(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 Jgt(t,e={}){if(!eA(t))return null;let r=await X_(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await zR(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 Xgt(t,e={}){if(!t?.seasonDetail||!t?.seasonNumber)return null;let r=Ygt(e?.episode?.name,e?.episodeIndex,t.seasonNumber),n=zgt(t.seasonDetail,r,Number(e?.episodeIndex||0));return n?nMr(t.seasonDetail,n,t.seasonNumber,r):null}async function sMr(t,e){let r=e?.payload||{},n=Ed(r),s=String(r.v||"");if(!n?.spiderKey||!s)return null;let i=await Hc(t,n,s).catch(()=>null),a=sA({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=Gc(i)||a;return sA(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:Co(o?.vod_play_from,o?.vod_play_url)}}function iMr(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"?aW(t):["backdrop","thumb","banner"].includes(n)?i||t?.backdrop_path||t?.poster_path||"":i||t?.poster_path||t?.backdrop_path||""}function aMr(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?aW(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 oMr(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?aW(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 Zgt(t,e={}){try{if(!eA(t))return null;let r=await X_(t,e?.spiderRef,e?.vod,e?.options||{});if(!r)return null;let n=await Z_(t,r);if(!n)return null;let s=await Kgt(t,r,e?.vod||{},n);return tMr(n,r,t,s)}catch{return null}}async function cMr(t,e={}){try{if(!eA(t))return null;let r=await X_(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await Z_(t,r);if(!n)return null;let s=await zR(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),n);return s?.seasonDetail?rMr(s.seasonDetail,s.seasonNumber):null}catch{return null}}async function YR(t,e={}){try{let r=await Jgt(t,e);return r?Xgt(r,e):null}catch{return null}}async function oW(t,e={}){let r=Array.isArray(e?.episodes)?e.episodes:[];if(!r.length)return[];try{let n=await Jgt(t,e);if(!n)return r.map(()=>null);let s=Number(e?.episodeOffset||0);return r.map((i,a)=>Xgt(n,{episode:i,episodeIndex:s+a}))}catch{return r.map(()=>null)}}async function cW(t,e,r={}){return e==="vod"?Zgt(t,r):e==="season"?cMr(t,r):e==="episode"?YR(t,r):null}async function eyt(t,e,r="Primary"){try{if(!eA(t))return"";if(e?.type==="img")return String(e?.payload?.u||"");let n=await sMr(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 X_(t,s,i,{});if(!c)return"";let u=await Z_(t,c);if(!u)return"";let l=await Kgt(t,c,i,u);return VR(t,iMr(u,o,l||null))}if(e?.type==="sea"){let c=await X_(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await Z_(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),f=(await zR(t,c,i,a?.[l]||null,l,u))?.seasonDetail||null;return u&&f?VR(t,aMr(u,f,o)):""}if(e?.type==="ep"||e?.type==="media"){let c=await X_(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await Z_(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),d=Number(e?.payload?.e||0),f=a?.[l],m=f?.episodes?.[d],p=await zR(t,c,i,f||null,l,u),h=Number(p?.seasonNumber||0),y=p?.seasonDetail||null;if(!y)return"";let g=Ygt(m?.name,d,h),A=zgt(y,g,d);return A?VR(t,oMr(u,A,o)):""}return""}catch{return""}}var iyt=!0,uMr=new Set(["tgchannel","tgsou","pansou","panta"]),lMr=!1,dMr=8e3;function fMr(t){return uMr.has(String(t||""))}function pMr(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function mMr(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 tyt(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 uW(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:cs()}}function hMr(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:cs()}}var ayt=new Set(["movie","series","video","episode","musicvideo"]);function ryt(t=""){return String(t||"").split(",").map(e=>e.trim().toLowerCase()).filter(Boolean)}function gMr(t=[],e=!1){return e?!0:t.some(r=>ayt.has(r))}function yMr(t=[]){return t.some(e=>ayt.has(e))}function AMr(t=[],e=!1,r=""){return e?!1:t.includes("folder")?!0:/(^|,)isfolder(,|$)/i.test(String(r||""))}function xMr(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 XR(t=[],e=[]){return e.length?t.filter(r=>xMr(r,e)):t}function JR(t,e,r){return!r||!r.Id||(r.UserData=Zo(t,e,String(r.Id||""),r.UserData||{})),r}function nyt(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 syt(t){let e=null,r=new Promise((n,s)=>{e=setTimeout(()=>s(new Error("timeout")),dMr)});return Promise.race([t,r]).finally(()=>{e&&clearTimeout(e)})}async function fW(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 F_(t,e,r,1,{},c).catch(()=>null),f=Array.isArray(d?.list)?d.list:[],m=Number(d?.limit||0),p=Math.max(1,m||f.length||l),h=Math.floor(u/p)+1,y=u%p,g=[],A=h,b=!1,x=!1,S=Number(d?.pagecount||0),T=Number(d?.total||0),I=h+Math.max(3,Math.ceil((y+l)/p)+2);for(;g.length<l&&A<=I;){let M=A===1?d:await F_(t,e,r,A,{},c).catch(()=>null),P=Array.isArray(M?.list)?M.list:[],L=XR(P.map(ue=>mW(e,ue,i,a)),o),Z=Number(M?.pagecount||0);Z>0&&(S=Math.max(S,Z));let W=Number(M?.total||0);W>0&&(T=Math.max(T,W));let U=A===h?y:0,V=L.slice(U),j=l-g.length;g.push(...V.slice(0,j));let J=Math.min(V.length,j);b=U+J>=L.length;let se=L.length===0,oe=S>0&&A>=S&&b;if(se||oe){x=!0;break}if(g.length>=l)break;A+=1}let R=Number.isFinite(T)&&T>0&&T<9e3,N=g.length>=l;N&&x&&(N=!1),N&&S>0&&A>=S&&b&&(N=!1),N&&R&&u+g.length>=T&&(N=!1);let k=u+g.length+(N?1:0),B=k;return R&&(B=Math.max(T,u+g.length),N&&(B=Math.max(B,k))),{rows:g,totalRecordCount:B}}async function mpe(t,e,r,n,s=[],i=0,a=16,o=null){let c=await OR(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 fW(t,e,f,i,a,r,n,s,o)}let l=Array.isArray(c?.list)?c.list:[],d=XR(l.map(f=>mW(e,f,r,n)),s);return{rows:Ba(d,i,a),totalRecordCount:d.length}}function oyt(t={}){return String(t?.siteName||t?.spiderKey||"").trim()}function cyt(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 bMr(t,e,r,n,s={}){let i=!!s?.includeSourcePrefix,a=cyt(e),o=String(e.vod_pic||"").trim(),c=String(e.vod_remarks||"").trim(),u=String(e.vod_year||"").trim(),l=oyt(t),d=String(e.vod_name||e?.cate?.name||a||"").trim(),f=d||"\u672A\u547D\u540D\u76EE\u5F55",m={k:t.spiderKey,t:t.spiderType,c:a,...t.apiBase?{a:t.apiBase}:{}};o&&(m.u=o),d&&(m.n=d),c&&(m.r=c),u&&(m.y=u);let p=wn("cat",m);return{Name:i&&l?`${l} \xB7 ${f}`:f,Id:p,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",Overview:c,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:p},BackdropImageTags:[],UserData:cs()}}function mW(t,e,r,n,s={}){if(cyt(e))return bMr(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=oyt(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 m=wn("vod",f),h=iyt?"Series":Y_(e);return{Name:i&&u?`${u} \xB7 ${d}`:d,Id:m,ParentId:r,ServerId:n,IsFolder:h==="Series",Type:h,MediaType:"Video",Overview:String(e.vod_remarks||""),PrimaryImageAspectRatio:.6667,ImageTags:{Primary:m},BackdropImageTags:[],UserData:cs()}}async function _Mr(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 m=n[f],p={k:e.spiderKey,t:e.spiderType,v:String(r.vod_id),l:f,...e.apiBase?{a:e.apiBase}:{}};a&&(p.n=a),o&&(p.u=o),c&&(p.r=c),u&&(p.y=u);let h=wn("sea",p),y={Name:m.flag||`\u7EBF\u8DEF${f+1}`,Id:h,ParentId:s,ServerId:i,IsFolder:!0,Type:"Season",IndexNumber:f+1,SeriesId:s,SeriesName:a,ChildCount:m.episodes.length,ImageTags:{Primary:h},BackdropImageTags:[],UserData:cs()},A=`s${iW(r,m,f)}`,b=d.get(A);b===void 0&&(b=await cW(t,"season",{spiderRef:e,vod:r,line:m,lineIndex:f})||null,d.set(A,b)),b&&Object.assign(y,b),l.push(y)}return l}async function EMr(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(),m=String(n?.tmdbHintYear||n?.vod_year||"").trim(),p=Array.isArray(c?.episodes)?c.episodes:[],h=await oW(t,{spiderRef:r,vod:n,line:c,lineIndex:i,episodes:p,episodeOffset:0});for(let y=0;y<p.length;y+=1){let g=p[y],A=Xy(g?.name,y+1),b={k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:i,e:y,f:c.flag,p:g.playId,...r.apiBase?{a:r.apiBase}:{}};l&&(b.n=l),d&&(b.u=d),f&&(b.r=f),m&&(b.y=m);let x=wn("ep",b),S=await gpe(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:String(n.vod_id),l:i,e:y,f:c.flag,p:g.playId},String(c.flag||`\u7EBF\u8DEF${i+1}`));u.push({Name:g.name||`\u7B2C${y+1}\u96C6`,Id:x,ParentId:a,ServerId:o,IsFolder:!1,Type:"Episode",MediaType:"Video",SeriesName:String(n.vod_name||""),IndexNumber:A,ParentIndexNumber:i+1,CanPlay:!0,PrimaryImageAspectRatio:.6667,ImageTags:{Primary:x},BackdropImageTags:[],UserData:cs(),MediaSources:[S],...h[y]||{}})}return u}function eE(t={}){return{spiderKey:String(t.k||""),spiderType:Number(t.t||3),apiBase:String(t.a||"")}}function lW(t={}){return{Overview:"",Taglines:[],Genres:[],GenreItems:[],People:[],Tags:[],ProviderIds:{},ProductionLocations:[],CommunityRating:0,CriticRating:0,RunTimeTicks:0,OfficialRating:"",...t}}function pW(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function hpe(t={},e=""){let r=Co(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=iyt?r.length>0:r.length>1||n>1||Y_(t)==="Series";return{lines:r,isSeries:s}}function vMr(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 SMr(t,e,r="mkv"){return`${vMr(t)}/emby${uyt(t,e,r,!0)}`}function uyt(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 gpe(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=fMr(r?.k)?"m3u8":"mkv",a=tyt(String(r?.p||""),i),o=SMr(e,s,a),c=uyt(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(lMr&&pMr(d)&&r?.k&&r?.f&&r?.p){let m={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},p=await Pm(t,m,String(r.f||""),String(r.p||""),e).catch(()=>null),h=Lm(p||{},String(n||""));h.url&&mMr(h.url)&&(a=tyt(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 IMr(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?gpe(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 CMr(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=Co(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 dW(t,e,r=null){let n=eE(e);if(!n.spiderKey||!e.v)return null;let s=await Hc(t,n,String(e.v),r).catch(()=>null),i=Gc(s);if(!i)return null;sA(i,e),!String(i?.vod_pic||"").trim()&&e?.u&&(i.vod_pic=String(e.u||"").trim()),i.vod_name=CMr(i,e);let{lines:a,isSeries:o}=hpe(i,n.spiderKey);return pW(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:Y_(i),isSeriesByRule:o,lineCount:a.length,episodeCountPerLine:a.map(c=>c.episodes.length).slice(0,10)}),{spiderRef:n,vod:i}}async function ype(t){t.get("/:userId",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext,r=Fs();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 _d(t);return Ft(r.map(n=>uW(n,e)))}),t.get("/:userId/Items/Resume",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=Number(Jr(r,["StartIndex","startindex"],0)),s=Gu(Jr(r,["Limit","limit"],50),50),i=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),a=Sgt(t,i,t.embyContext.config.serverId);return Ft(Ba(a,n,s),a.length)}),t.get("/:userId/Items/Latest",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Jr(r,["ParentId","parentid"],"")),a=Gu(Jr(r,["Limit","limit"],16),16),o=ryt(Jr(r,["IncludeItemTypes","includeitemtypes"],"")),c=String(Jr(r,["MediaTypes","mediatypes"],"")).toLowerCase();!o.length&&c.includes("video")&&(o=["movie","series","video"]);let u=await _d(t),l=qs(i);if(l?.type==="lib"){let h=eE(l.payload),y=Gy(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await mpe(t,y,i,n,o,0,a,e);return js(t,s,g.rows)}if(l?.type==="cat"){let h=eE(l.payload),y=Gy(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await fW(t,y,String(l.payload.c||""),0,a,i,n,o,e);return js(t,s,g.rows)}let d=Math.min(Math.max(a,6),20),m=(await Promise.allSettled(u.map(h=>syt(mpe(t,h,uW(h,n).Id,n,o,0,d,e))))).filter(h=>h.status==="fulfilled").map(h=>h.value.rows),p=nyt(m).slice(0,a);return js(t,s,p)}),t.get("/:userId/Items",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Jr(r,["SortBy","sortby"],""));if(i.includes("IsFavoriteOrLiked"))return Ft([]);let a=String(Jr(r,["ParentId","parentid"],"")),o=String(Jr(r,["SearchTerm","searchterm","NameStartsWith","namestartswith"],"")).trim(),c=Number(Jr(r,["StartIndex","startindex"],0)),u=Gu(Jr(r,["Limit","limit"],60),60),l=Number(Jr(r,["Page","page"],Math.floor(Math.max(0,c)/u)+1))||1,d=ryt(Jr(r,["IncludeItemTypes","includeitemtypes"],"")),f=String(Jr(r,["Recursive","recursive"],"")).trim().toLowerCase()==="true",m=String(Jr(r,["MediaTypes","mediatypes"],"")).toLowerCase(),p=await _d(t);if(o){let g=t.embyContext?.config?.searchSourcePrefix!==!1,A=[];await Promise.allSettled(p.map(async x=>{try{let S=await Promise.race([$mt(t,x,o,l),new Promise((I,R)=>setTimeout(()=>R(new Error("timeout")),8e3))]);(Array.isArray(S?.list)?S.list:[]).forEach(I=>A.push(mW(x,I,"0",n,{includeSourcePrefix:g})))}catch{}}));let b=js(t,s,XR(A,d));return Ft(Ba(b,c,u),b.length)}if(!a&&f&&(yMr(d)||m.includes("video"))){let y=d.length?d:["movie","series","video"],g=Math.min(Math.max(u,6),20),b=(await Promise.allSettled(p.map(S=>syt(mpe(t,S,uW(S,n).Id,n,y,0,g,e))))).filter(S=>S.status==="fulfilled").map(S=>S.value.rows),x=js(t,s,nyt(b));return Ft(Ba(x,c,u),x.length)}if(!a){let y=js(t,s,p.map(g=>uW(g,n)));return Ft(Ba(y,c,u),y.length)}let h=qs(a);if(!h)return Ft([]);if(h.type==="lib"){let y=eE(h.payload),g=Gy(p,y.spiderKey,y.spiderType,y.apiBase)||{siteName:y.spiderKey,spiderKey:y.spiderKey,spiderType:y.spiderType,apiBase:y.apiBase},A=await OR(t,g,e).catch(()=>null),b=Array.isArray(A?.class)?A.class.filter(I=>String(I?.type_id||"").trim()):[];if(b.length&&(AMr(d,f,i)||!gMr(d,f))){let I=b.map(N=>hMr(g,N,a,n)),R=js(t,s,XR(I,d));return Ft(Ba(R,c,u),R.length)}if(b.length){let I=String(b[0].type_id||"");if(I){let R=await fW(t,g,I,c,u,a,n,d,e);return js(t,s,R.rows),Ft(R.rows,R.totalRecordCount)}}let S=(Array.isArray(A?.list)?A.list:[]).map(I=>mW(g,I,a,n)),T=js(t,s,XR(S,d));return Ft(Ba(T,c,u),T.length)}if(h.type==="cat"){let y=eE(h.payload),g=Gy(p,y.spiderKey,y.spiderType,y.apiBase)||{siteName:y.spiderKey,spiderKey:y.spiderKey,spiderType:y.spiderType,apiBase:y.apiBase},A=String(h.payload.c||""),b=await fW(t,g,A,c,u,a,n,d,e);return js(t,s,b.rows),Ft(b.rows,b.totalRecordCount)}if(h.type==="vod"){let y=await dW(t,h.payload,e);if(!y)return Ft([]);let{spiderRef:g,vod:A}=y,{lines:b,isSeries:x}=hpe(A,g.spiderKey);if(!b.length)return Ft([]);if(x){let S=await _Mr(t,g,A,b,a,n);return js(t,s,S),Ft(Ba(S,c,u),S.length)}return Ft([])}if(h.type==="sea"){let y=await dW(t,h.payload,e);if(!y)return Ft([]);let{spiderRef:g,vod:A}=y,b=Co(A.vod_play_from,A.vod_play_url);if(!b.length)return Ft([]);let x=Number(h.payload.l||0),S=await EMr(t,e,g,A,b,x,a,n);return js(t,s,S),Ft(Ba(S,c,u),S.length)}return Ft([])}),t.get("/:userId/Items/:itemId",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=qs(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 dW(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=Co(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,m=Xy(l,c+1),p=wn("vod",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),h=wn("sea",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),l:o,...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),y=n.payload?.k&&n.payload?.v&&n.payload?.f&&n.payload?.p?[await gpe(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 pW(t,"item.detail.ep",{itemId:e.params.itemId,sourceType:n.type,vodName:String(i?.vod?.vod_name||""),mediaSourceCount:y.length,canPlay:!0}),JR(t,s,{Name:a,Id:e.params.itemId,Type:"Episode",IsFolder:!1,MediaType:"Video",CanPlay:!0,SeriesId:p,SeriesName:a,SeasonId:h,SeasonName:String(n?.payload?.f||`\u7EBF\u8DEF${o+1}`),IndexNumber:m,ParentIndexNumber:o+1,DateCreated:Fs(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Zo(t,s,e.params.itemId),...lW(),...f?await YR(t,{spiderRef:eE(n.payload),vod:i?.vod||{},line:d,lineIndex:o,episode:f,episodeIndex:c})||{}:{},MediaSources:y})}if(n.type==="sea"){let i=Number(n?.payload?.l||0);return JR(t,s,{Name:`\u7EBF\u8DEF${i+1}`,Id:e.params.itemId,Type:"Season",IsFolder:!0,IndexNumber:i+1,DateCreated:Fs(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Zo(t,s,e.params.itemId),...lW()})}if(n.type==="cat"){let i=String(n.payload?.n||n.payload?.c||n.payload?.k||"\u76EE\u5F55");return JR(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:Zo(t,s,e.params.itemId),...lW({Overview:String(n.payload?.r||"")})})}if(n.type==="vod"){let i=Ggt(t,n.payload).catch(()=>null),a=await dW(t,n.payload,e);if(!a)return r.code(404),{};let{lines:o,isSeries:c}=hpe(a.vod,a.spiderRef.spiderKey),u=c?"Series":"Movie",[l,d]=await Promise.all([IMr(t,e,a.spiderRef,a.vod,o),i]),f=d&&typeof d=="object"?{...d}:{},m={Primary:e.params.itemId,...f.ImageTags&&typeof f.ImageTags=="object"?f.ImageTags:{}};delete f.ImageTags;let p=c?[]:l,h=c?l.length>0:p.length>0;return pW(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:p.length,firstMediaSource:p[0]?{name:p[0].Name,path:p[0].Path,id:p[0].Id}:null}),JR(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:Fs(),PrimaryImageAspectRatio:.6667,ProductionYear:Number(a.vod.vod_year||0)||void 0,ImageTags:m,BackdropImageTags:[],UserData:Zo(t,s,e.params.itemId),ChildCount:c?o.length>1?o.length:o[0]?.episodes?.length||0:void 0,SeasonCount:c?o.length:void 0,RecursiveItemCount:c?o.reduce((y,g)=>y+(g?.episodes?.length||0),0):void 0,...lW({Overview:String(a.vod.vod_content||"")}),...f,MediaSources:p})}return JR(t,s,{Name:String(n.payload?.k||""),Id:e.params.itemId,IsFolder:!0,Type:"Folder",ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Zo(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}`:""}`;pW(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 vgt(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 Egt(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 _gt(t,n,String(e.params.itemId||""),e.method==="POST")})}var TMr=30*60*1e3,tE=16/9,ZR=960,wMr=1920,RMr=360,NMr=9,gyt=24,OMr=12e3,bpe=9e3,lyt=5*1024*1024,dyt=80,fyt=24,pyt=[["#556b2f","#bed98a"],["#5b3a82","#b37bd9"],["#235f73","#8fd2dc"],["#7a3341","#d98498"],["#2f5c43","#9ac78d"],["#6f4a2f","#d39a5d"],["#354f7d","#91aee6"],["#73395f","#cb87af"]],Ape=null;function xpe(t=""){return String(t||"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}function yyt(t,e,r){return Math.max(e,Math.min(r,t))}function kMr(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 Ayt(t){return yyt(Math.round(Number(t)||0),0,255)}function myt(t=[]){return`#${t.slice(0,3).map(e=>Ayt(e).toString(16).padStart(2,"0")).join("")}`}function hyt(t=[],e=[],r=.5){return[0,1,2].map(n=>Ayt((t[n]||0)*(1-r)+(e[n]||0)*r))}function PMr(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}function _pe(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 eN(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 xyt(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 DMr(t="",e="\u5A92\u4F53\u5E93"){return String(t||"").trim().replace(/^(?:「[^」]*」\s*)+/,"").trim()||e}function Epe(t=[]){return eN((Array.isArray(t)?t:[]).map(e=>xyt(e?.vod_pic)).filter(Boolean))}async function BMr(t,e={}){let r=PMr(e);if(!r.spiderKey)return null;let n=await _d(t).catch(()=>[]);return Gy(n,r.spiderKey,r.spiderType,r.apiBase)||{siteName:String(e.n||r.spiderKey),spiderKey:r.spiderKey,spiderType:r.spiderType,apiBase:r.apiBase}}async function LMr(t,e,r){let n=await _pe(OR(t,e,r).catch(()=>null),bpe,null),s=Epe(n?.list||[]);if(s.length>=gyt)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=>_pe(F_(t,e,String(c.type_id||""),1,{},r).then(u=>Epe(u?.list||[])).catch(()=>[]),bpe,[]));return(await Promise.allSettled(a)).forEach(c=>{c.status==="fulfilled"&&s.push(...c.value)}),eN(s)}async function MMr(t,e,r={},n){let s=[],i=xyt(r.u);i&&s.push(i);let a=String(r.c||"").trim();if(!a)return eN(s);let o=await _pe(F_(t,e,a,1,{},n).catch(()=>null),bpe,null);return s.push(...Epe(o?.list||[])),eN(s)}async function WMr(t,e,r){let n=await BMr(t,e?.payload||{});if(!n)return{spider:null,posterUrls:[]};let s=[];return e?.type==="lib"?s=await LMr(t,n,r):e?.type==="cat"&&(s=await MMr(t,n,e.payload||{},r)),{spider:n,posterUrls:s}}function $Mr(t,e=0){let r=t?.payload||{},n=DMr(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 UMr(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=ZR,s=Math.round(ZR/tE);if(e>0&&r>0){let i=Math.min(e/ZR,r/(ZR/tE));n=Math.round(ZR*i),s=Math.round(n/tE)}else e>0?(n=Math.round(e),s=Math.round(n/tE)):r>0&&(s=Math.round(r),n=Math.round(s*tE));return n=yyt(n,RMr,wMr),s=Math.round(n/tE),{width:n,height:s}}async function FMr(){return Ape||(Ape=import("sharp").then(t=>t.default||t).catch(()=>null)),Ape}function hW(t=""){return pyt[kMr(t)%pyt.length]}function qMr(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,m=new Set;for(let S=0;S<t.length;S+=r){let T=t[S]||0,I=t[S+1]||0,R=t[S+2]||0,N=T*.299+I*.587+R*.114,k=Math.max(T,I,R),B=Math.min(T,I,R);s+=T,i+=I,a+=R,o+=T*T,c+=I*I,u+=R*R,l+=N,d+=N*N,f+=k-B,m.add(`${T>>4}:${I>>4}:${R>>4}`)}let p=s/n,h=i/n,y=a/n,g=l/n,A=Math.sqrt(Math.max(0,d/n-g*g)),b=(Math.sqrt(Math.max(0,o/n-p*p))+Math.sqrt(Math.max(0,c/n-h*h))+Math.sqrt(Math.max(0,u/n-y*y)))/3,x=f/n;return A<8&&b<8||(g>242||g<16)&&A<12&&b<12||x<7&&A<10||m.size<=3||m.size<=6&&A<20&&x<12}async function jMr(t,e){try{let r=await t(e).metadata();if(!r?.width||!r?.height||r.width<dyt||r.height<dyt)return!1;let{data:n,info:s}=await t(e).resize(fyt,fyt,{fit:"cover"}).removeAlpha().raw().toBuffer({resolveWithObject:!0});return!qMr(n,s?.channels||3)}catch{return!1}}async function QMr(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 HMr(t,e=null){try{let r=new URL(t),n=await he.get(r.toString(),{responseType:"arraybuffer",timeout:OMr,maxContentLength:lyt,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>lyt)return null;if(e){if(!await jMr(e,a))return null;let o=await QMr(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 GMr(t=[],e=null){let n=eN(t).slice(0,gyt).map(a=>HMr(a,e));return(await Promise.allSettled(n)).filter(a=>a.status==="fulfilled"&&a.value?.dataUri).map(a=>a.value).slice(0,NMr)}async function VMr(t,e=[],r=""){let n=e.find(s=>s?.buffer);if(!n)return hW(r);try{let i=((await t(n.buffer).resize(24,24,{fit:"cover"}).stats()).channels||[]).slice(0,3).map(c=>c.mean||0),a=hyt(i,[0,0,0],.38),o=hyt(i,[255,255,255],.48);return[myt(a),myt(o)]}catch{return hW(r)}}function KMr(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 byt(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),m=d%c,p=a+f*(n+i),h=o+m*(s+i),y=`posterClip${d}`,g=t[l%t.length];return{x:p,y:h,w:n,h:s,r:e*.015,clipId:y,href:g?.dataUri||""}})}function zMr(t,e,r=""){let n=byt([{dataUri:""}],t,e),s=hW(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 YMr({width:t,height:e,title:r,subtitle:n,countText:s,posterImages:i,palette:a}){let o=KMr(r),c=o.some(h=>h.length>8)?t*.082:t*.105,u=t*.034,l=c*1.08,d=i.length?byt(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)}"
rx="${h.r.toFixed(1)}"/>
</clipPath>
`).join(""),m=d.map(h=>`
<rect x="${h.x.toFixed(1)}" y="${h.y.toFixed(1)}"
width="${h.w.toFixed(1)}" height="${h.h.toFixed(1)}"
rx="${h.r.toFixed(1)}" fill="rgba(255,255,255,0.14)" filter="url(#cardShadow)"/>
<image href="${h.href}" x="${h.x.toFixed(1)}" y="${h.y.toFixed(1)}"
width="${h.w.toFixed(1)}" height="${h.h.toFixed(1)}"
preserveAspectRatio="xMidYMid slice" clip-path="url(#${h.clipId})"/>
`).join(""),p=o.map((h,y)=>`
<text x="${(t*.07).toFixed(1)}" y="${(e*.47+y*l).toFixed(1)}"
class="title">${xpe(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>
<linearGradient id="bg" x1="0" y1="0" x2="1" y2="0">
<stop offset="0" stop-color="${a[0]}"/>
<stop offset="1" stop-color="${a[1]}"/>
</linearGradient>
<radialGradient id="softLight" cx="78%" cy="42%" r="58%">
<stop offset="0" stop-color="rgba(255,255,255,0.42)"/>
<stop offset="1" stop-color="rgba(255,255,255,0)"/>
</radialGradient>
<filter id="cardShadow" x="-20%" y="-20%" width="150%" height="150%">
<feDropShadow dx="${(t*.01).toFixed(1)}" dy="${(e*.016).toFixed(1)}"
stdDeviation="${(t*.011).toFixed(1)}" flood-color="#000" flood-opacity="0.38"/>
</filter>
${f}
<style>
.title {
fill: #fff;
font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", sans-serif;
font-weight: 900;
font-size: ${c.toFixed(1)}px;
}
.subtitle {
fill: rgba(255,255,255,0.88);
font-family: "DejaVu Sans", Arial, Helvetica, sans-serif;
font-weight: 500;
font-size: ${u.toFixed(1)}px;
}
.meta {
fill: rgba(255,255,255,0.52);
font-family: "DejaVu Sans", Arial, Helvetica, sans-serif;
font-size: ${(t*.018).toFixed(1)}px;
}
</style>
</defs>
<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?m:zMr(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)"/>
${p}
<text x="${(t*.096).toFixed(1)}" y="${(e*.63).toFixed(1)}" class="subtitle">${xpe(n)}</text>
<text x="${(t*.07).toFixed(1)}" y="${(e*.86).toFixed(1)}" class="meta">${xpe(s)}</text>
</svg>`}function JMr(t=""){return String(t||"Primary").trim().toLowerCase()==="primary"}function vpe(t,e="Primary"){return JMr(e)&&["lib","cat"].includes(t?.type)}async function _yt(t,e,r){if(!vpe(e,r?.params?.imageType||"Primary"))return null;let{width:n,height:s}=UMr(r?.query||{}),i=km(["emby","dynamic-cover-v2",e.type,JSON.stringify(e.payload||{}),n,s]);return bp(t.embyContext?.cache,i,TMr,async()=>{let a=await WMr(t,e,r),o=await FMr(),c=o?await GMr(a.posterUrls,o):[],u=$Mr(e,o?c.length:a.posterUrls.length),l=o?await VMr(o,c,u.title):hW(u.title),d=YMr({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 XMr=!1;function ZMr(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}async function Eyt(t,e={}){if(e.u)return String(e.u);let r=Ed(e),n=String(e.v||"");if(!r.spiderKey||!n)return"";let s=await Hc(t,r,n).catch(()=>null),i=Gc(s);return String(i?.vod_pic||"")}function e5r(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 t5r(t,e,r="Primary",n={}){if(e?.type==="vod"&&!e5r(e,r,n)){let i=await Eyt(t,e?.payload||{});if(i)return i}let s=await eyt(t,e,r).catch(()=>"");return s||(e?.type==="img"?String(e?.payload?.u||""):Eyt(t,e?.payload||{}))}function vyt(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 r5r(t,e,r=""){let n=vyt(e);if(n)return n;if(r&&["vod","sea"].includes(e.type)){let m=QR(t,r,wn(e.type,e.payload||{})),p=vyt(m?.decoded);if(p?.k&&p?.f&&p?.p)return p}let s=e.payload||{};if(!["vod","sea"].includes(e.type))return null;let i=Ed(s),a=String(s.v||"");if(!i.spiderKey||!a)return null;let o=await Hc(t,i,a).catch(()=>null),c=Gc(o);if(!c)return null;let u=Co(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 n5r(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 s5r(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 i5r(t,e,r){let n={spiderKey:e.k,spiderType:Number(e.t||3),apiBase:String(e.a||"")},s=await Pm(t,n,e.f,e.p,r).catch(()=>null),i=Lm(s||{},""),a=String(i.url||"");return{container:n5r(a),requiredHeaders:i.header||{},directUrl:a,useDirectUrl:XMr&&s5r(a)}}function a5r(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 o5r(t="mkv"){return/^[a-z0-9]{2,8}$/i.test(String(t||""))?String(t).toLowerCase():"mkv"}function Syt(t,e,r="mkv",n=!1){let s=o5r(r),i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}function c5r(t,e,r="mkv",n=!0){return`${a5r(t)}/emby${Syt(t,e,r,n)}`}async function Spe(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=qs(e.params.itemId);if(!n)return r.code(404),"";if(vpe(n,e.params.imageType||"Primary")){let i=await _yt(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 t5r(t,n,e.params.imageType||"Primary",e.query||{});if(!s)return r.code(404),"";try{let i=new URL(s);if(!["http:","https:"].includes(i.protocol))return r.code(403),""}catch{return r.code(404),""}try{let i=await he.get(s,{responseType:"stream",timeout:1e4,headers:{"User-Agent":"Mozilla/5.0 EmbyImageProxy"}}),a=i.headers?.["content-type"]||"image/jpeg";return r.header("Content-Type",a),r.header("Cache-Control","public, max-age=86400"),i.headers?.["content-length"]&&r.header("Content-Length",i.headers["content-length"]),r.send(i.data)}catch{return r.code(502),""}}),t.all("/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=e.params.itemId,s=qs(n);if(!s)return r.code(404),{};let i=e.embyUser?.Id||t.embyContext.user.id,a=await r5r(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 i5r(t,a,e),u=c5r(e,o,c.container,!0),l=c.useDirectUrl&&c.directUrl?c.directUrl:u,d=c.useDirectUrl&&c.directUrl?c.directUrl:Syt(e,o,c.container,!0),f=!1,m=c.useDirectUrl?c.requiredHeaders||{}:{};return ZMr(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(m).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:m,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 u5r=new Set(["tgchannel","tgsou","pansou","panta"]);function Ipe(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function l5r(t=""){let e=String(t||""),r=[e,Ipe(e),Ipe(Ipe(e))];for(let n of r){let s=qs(n);if(s)return s}return null}function d5r(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 f5r(t,e={}){let r=d5r(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 Hc(t,n,r.v).catch(()=>null),i=Gc(s);if(!i)return null;let a=Co(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 p5r(t,e){if(!e)return null;if(e.type==="media"||e.type==="ep")return f5r(t,e.payload||{});if(!["vod","sea"].includes(e.type))return null;let r=e.payload||{},n=Ed(r),s=String(r.v||"");if(!n.spiderKey||!s)return null;let i=await Hc(t,n,s).catch(()=>null),a=Gc(i);if(!a)return null;let o=Co(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 m5r(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 Iyt(t,e,r,n){let s=await he.get(r,{responseType:"stream",timeout:3e4,maxRedirects:5,validateStatus:()=>!0,headers:m5r(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 h5r(t={},e=""){if(u5r.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 g5r(t=""){try{return new URL(String(t||"")).toString()}catch{return String(t||"")}}async function Cpe(t,e,r,n=""){let s=l5r(e.params.mediaId);if(!s)return r.code(404),"";let i=await p5r(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 Pm(t,a,i.f,i.p,e).catch(()=>null),c=Lm(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||"")}/`,m=d.indexOf(f);if(m>=0){let p=d.slice(m+f.length).trim();p&&(l=p)}}catch{}if(u&&!/^stream\./i.test(u))try{let d=new URL(c.url),f=u.match(/^__hls__\/([A-Za-z0-9_-]+)$/),m=f?Buffer.from(f[1],"base64url").toString("utf8"):u,p=f?new URL(m,d):new URL(l||u,d);return p.origin!==d.origin?(r.code(403),""):Iyt(e,r,p.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 h5r(i,c.url)||Object.keys(c.header||{}).length>0?Iyt(e,r,c.url,c.header):r.redirect(307,g5r(c.url))}async function Tpe(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)=>Cpe(t,r,n,"stream.mkv")),t.get("/:mediaId/:fileName",{preHandler:e},async(r,n)=>Cpe(t,r,n,String(r.params.fileName||""))),t.get("/:mediaId/*",{preHandler:e},async(r,n)=>Cpe(t,r,n,String(r.params["*"]||""))),t.get("/:mediaId/subtitles/:subtitleId",{preHandler:e},async(r,n)=>(n.code(404),""))}var y5r=new Set(["tgchannel","tgsou","pansou","panta"]),A5r=!1;function x5r(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function b5r(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 Cyt(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 _5r(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function E5r(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 v5r(t,e,r="mkv"){return`${E5r(t)}/emby${Ryt(t,e,r,!0)}`}function Ryt(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 S5r(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=y5r.has(String(r?.k||""))?"m3u8":"mkv",a=Cyt(String(r?.p||""),i),o=v5r(e,s,a),c=Ryt(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(A5r&&x5r(d)&&r?.k&&r?.f&&r?.p){let m={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},p=await Pm(t,m,String(r.f||""),String(r.p||""),e).catch(()=>null),h=Lm(p||{},String(n||""));h.url&&b5r(h.url)&&(a=Cyt(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 I5r(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 m=n[f],p={k:e.spiderKey,t:e.spiderType,v:String(r.vod_id),l:f,...e.apiBase?{a:e.apiBase}:{}};a&&(p.n=a),o&&(p.u=o),c&&(p.r=c),u&&(p.y=u);let h=wn("sea",p),y={Name:m.flag||`\u7B2C${f+1}\u5B63`,Id:h,ParentId:s,SeriesId:s,SeriesName:a,IndexNumber:f+1,ChildCount:m.episodes.length,ServerId:i,IsFolder:!0,Type:"Season",ImageTags:{Primary:h},BackdropImageTags:[],UserData:cs()},A=`s${iW(r,m,f)}`,b=d.get(A);b===void 0&&(b=await cW(t,"season",{spiderRef:e,vod:r,line:m,lineIndex:f})||null,d.set(A,b)),b&&Object.assign(y,b),l.push(y)}return l}async function C5r(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(),m=s?.line,p=Number(s?.lineIndex||0),h=Number(s?.episodeOffset||0),g=(Array.isArray(m?.episodes)?m.episodes:[])[o];if(!m||!g?.playId)return null;let A=h+o,b=Xy(g?.name,A+1),x={k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:p,e:A,f:m.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 S=wn("ep",x),T=await S5r(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:String(n.vod_id),l:p,e:A,f:m.flag,p:g.playId},String(m.flag||`\u7EBF\u8DEF${p+1}`)),I={Name:g.name||`\u7B2C${A+1}\u96C6`,Id:S,ParentId:i,SeasonId:wn("sea",{k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:p,...r.apiBase?{a:r.apiBase}:{},...u?{n:u}:{},...l?{u:l}:{},...d?{r:d}:{},...f?{y:f}:{}}),SeriesId:i,SeriesName:u,SeasonName:m.flag||`\u7B2C${p+1}\u5B63`,IndexNumber:b,ParentIndexNumber:p+1,ServerId:a,IsFolder:!1,Type:"Episode",MediaType:"Video",CanPlay:!0,PrimaryImageAspectRatio:.6667,ImageTags:{Primary:S},BackdropImageTags:[],UserData:cs(),MediaSources:[T]};if(c!==void 0)return c&&Object.assign(I,c),I;let R=await YR(t,{spiderRef:r,vod:n,line:m,lineIndex:p,episode:g,episodeIndex:A});return R&&Object.assign(I,R),I}function T5r(t=[]){return t.reduce((e,r)=>e+(Array.isArray(r?.line?.episodes)?r.line.episodes.length:0),0)}async function Nyt(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:[],m=Number(d?.episodeOffset||0),p=await oW(t,{spiderRef:r,vod:n,line:d?.line,lineIndex:Number(d?.lineIndex||0),episodes:f,episodeOffset:m});for(let h=0;h<f.length;h+=1){let y=await C5r(t,e,r,n,d,i,a,h,p[h]??null);if(y&&c.push(y),c.length>=l)return c}}return c}function Oyt(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 kyt(t=[],e={},r=null){let n=String(Jr(e,["seasonid","SeasonId","seasonId"],""));if(n){let i=qs(n);if(i?.type==="sea"){let a=Number(i.payload?.l||0),o=t[a];return o?[{line:o,lineIndex:a}]:[]}}let s=Number(Jr(e,["season","Season"],NaN));if(Number.isFinite(s)&&s>0){let i=s-1,a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="sea"){let i=Number(r.payload?.l||0),a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="ep"){let i=Number(r.payload?.l||0),a=Number(r.payload?.e||0),o=t[i];return!o||!o.episodes[a]?[]:[{line:{...o,episodes:[o.episodes[a]]},lineIndex:i,episodeOffset:a}]}return t.map((i,a)=>({line:i,lineIndex:a}))}function w5r(t,e,r,n=[]){let i=QR(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 wpe(t,e){let r=qs(e);if(!r||!["vod","sea","ep"].includes(r.type))return null;let n=r.payload||{},s=Ed(n),i=String(n.v||"");if(!s.spiderKey||!i)return null;let a=await Hc(t,s,i).catch(()=>null),o=Gc(a);if(!o)return null;sA(o,n),!String(o?.vod_pic||"").trim()&&n?.u&&(o.vod_pic=String(n.u||"").trim());let c=Co(o.vod_play_from,o.vod_play_url);return c.length?{decoded:r,spiderRef:s,vod:o,lines:c}:null}async function Tyt(t,e,r={},n=null){let s=await wpe(t,e);if(!s)return[];let{decoded:i,spiderRef:a,vod:o,lines:c}=s,u=kyt(c,r,i);if(!u.length)return[];let l=Oyt(i,e);return Nyt(t,n,a,o,u,l,t.embyContext.config.serverId)}async function wyt(t,e){let r=await wpe(t,e);if(!r)return[];let{spiderRef:n,vod:s,lines:i}=r;return I5r(t,n,s,i,e,t.embyContext.config.serverId)}async function Rpe(t){let e={preHandler:t.embyRequireAuth};t.get("/Persons",e,async()=>Ft([])),t.get("/Genres",e,async()=>Ft([])),t.get("/Tags",e,async()=>Ft([])),t.get("/OfficialRatings",e,async()=>Ft([])),t.get("/Years",e,async()=>Ft([])),t.get("/Studios",e,async()=>Ft([])),t.get("/Shows/NextUp",e,async r=>{let n=r.query||{},s=String(Jr(n,["SeriesId","seriesId"],"")).trim(),i=Gu(Jr(n,["Limit","limit"],1),1),a=r.embyUser?.Id||t.embyContext.user.id;if(!s)return Ft([]);let o=await wpe(t,s);if(!o)return Ft([]);let{decoded:c,spiderRef:u,vod:l,lines:d}=o,f=Oyt(c,s),m=w5r(t,a,f,kyt(d,n,c));if(!m.length)return Ft([]);let p=T5r(m),h=js(t,a,await Nyt(t,r,u,l,m,f,t.embyContext.config.serverId,i));return _5r(t,"nextup.result",{seriesId:s,total:p,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,p)}),t.get("/Shows/:seriesId/Seasons",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Gu(Jr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=js(t,o,await wyt(t,a));return Ft(Ba(c,s,i),c.length)}),t.get("/Shows/:seriesId/Episodes",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Gu(Jr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=js(t,o,await Tyt(t,a,n,r));return Ft(Ba(c,s,i),c.length)}),t.get("/Items/:itemId/Seasons",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Gu(Jr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=js(t,o,await wyt(t,a));return Ft(Ba(c,s,i),c.length)}),t.get("/Items/:itemId/Episodes",e,async r=>{let n=r.query||{},s=Number(Jr(n,["StartIndex","startindex"],0)),i=Gu(Jr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=js(t,o,await Tyt(t,a,n,r));return Ft(Ba(c,s,i),c.length)}),t.get("/Sessions",e,async r=>[{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SleepTimerMode:"None",SubtitleOffset:0,Shuffle:!1,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",Protocol:"HTTP/1.1",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:t.embyContext.config.serverId,ServerId:t.embyContext.config.serverId,UserId:r.embyUser?.Id||"",UserName:r.embyUser?.Name||"",Client:"",LastActivityDate:Fs(),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 HR(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 HR(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 HR(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 HR(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 Pyt(t){return t&&String(t).match(/Token="?([^",\s]+)"?/i)?.[1]||""}var Npe=Symbol("embyLogStartAt"),R5r=/(token|password|passwd|pwd|pw|authorization|cookie|api[_-]?key|session)/i;function gW(t){let e=String(t??"");return e?e.length<=6?"***":`${e.slice(0,2)}***${e.slice(-2)}`:""}function rE(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=>rE(s,e+1,r));let n={};for(let[s,i]of Object.entries(t)){if(R5r.test(s)){n[s]=gW(i);continue}n[s]=rE(i,e+1,r)}return n}function N5r(t){return t.routeOptions?.url||t.url||t.raw?.url||""}function Ope(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 O5r(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 tN(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:Ope(process.env.EMBY_SEARCH_SOURCE_PREFIX,t.searchSourcePrefix!==!1),tokenTtlMs:Number(t.tokenTtlMs||30*24*60*60*1e3),requestLog:Ope(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:Ope(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 kpe(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=tN({...t.config?.emby||{},...e&&typeof e=="object"?e:{}}),s={config:n,cache:L5({max:1200}),tmdbStore:null,tmdbClientState:null,tokens:new Map,user:{id:"emby-user-001",name:n.username},playbackState:nW(r),playbackPersistTimer:null};globalThis.__catpawEmbyRuntime=s,t.addContentTypeParser("application/json",{parseAs:"string"},O5r),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"]||Pyt(a.headers?.["x-emby-authorization"])||Pyt(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=${gW(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[Npe]=process.hrtime.bigint();let a=N5r(i),o=rE(i.query||{}),c=i.body===void 0?void 0:rE(i.body),u=t.embyExtractToken(i),l=u?gW(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[Npe],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[Npe],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=rE(i.query||{}),c=i.body===void 0?void 0:rE(i.body),u=t.embyExtractToken(i),l=u?gW(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(rpe,{prefix:"/System"}),t.register(tpe,{prefix:"/Users"}),t.register(spe,{prefix:"/Library"}),t.register(ype,{prefix:"/Users"}),t.register(Spe,{prefix:"/Items"}),t.register(Tpe,{prefix:"/Videos"}),t.register(Rpe)}function Ppe(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 Dyt(t){let e=await t.db.getObjectDefault("/emby",null);return e&&typeof e=="object"?e:{}}function Byt(){let t=globalThis.__catpawEmbyRuntime;return t&&typeof t=="object"?t:null}function Lyt(t={}){let e=Byt();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 k5r=async t=>{let e=await Dyt(t),r=tN({...t.config?.emby||{},...e});return Ppe(r,{includeSecrets:!0})},P5r=async(t,e)=>{let r=await Dyt(t),n=tN({...t.config?.emby||{},...r,...e&&typeof e=="object"?e:{}}),s=Ppe(n,{includeSecrets:!0});return await t.db.push("/emby",s),Lyt(s),s},D5r=async t=>{await t.db.delete("/emby");let e=Ppe(tN(t.config?.emby||{}),{includeSecrets:!0});return Lyt(e),e},B5r=async t=>{let e=Byt();e?.tmdbStore?.memory?.clear?.(),e?.tmdbStore?.pending?.clear?.(),e&&(e.tmdbStore=null,e.tmdbClientState=null),await t.db.delete("/embyTmdb").catch(()=>{})};async function Dpe(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await k5r(e.server)})}),t.put("/setting",async(e,r)=>{await P5r(e.server,e.body||{}),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await D5r(e.server),r.send({code:0})}),t.post("/tmdb/cache/clear",async(e,r)=>{await B5r(e.server),r.send({code:0})})}var L5r=t=>{let e=PR(t,{includePrefix:!1}).replace(/\/$/,""),r=$5()?W5():null;return[{key:"t4",name:"T4 \u8BA2\u9605",url:U5(e,"/t4")},{key:"uz",name:"UZ \u8BA2\u9605",url:U5(e,"/uz")},{key:"cat",name:"\u732B\u6E90\u8BA2\u9605",url:U5(e,"/index.js.md5",r)},{key:"emby",name:"Emby \u670D\u52A1\u5668",url:e}]};async function Bpe(t){t.get("/",(e,r)=>{r.type("text/html").send(`
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<title>\u9996\u9875</title>
</head>
<body>
<div id="app"></div>
<script crossorigin src="https://lib.baomitu.com/react/18.2.0/umd/react.production.min.js"></script>
<script crossorigin src="https://lib.baomitu.com/react-dom/18.2.0/umd/react-dom.production.min.js"></script>
<script crossorigin src="https://lib.baomitu.com/axios/0.26.0/axios.min.js"></script>
<script crossorigin src="https://lib.baomitu.com/dayjs/1.10.8/dayjs.min.js"></script>
<script crossorigin src="https://lib.baomitu.com/antd/5.25.0/antd.min.js"></script>
<link rel="stylesheet" href="https://lib.baomitu.com/antd/5.25.0/reset.min.css">
<script>${globalThis.websiteBundle}</script>
</body>
</html>
`)}),t.get("/subscriptions",(e,r)=>{r.send({code:0,data:{endpoints:L5r(e)}})}),t.register(Tfe,{prefix:"/quark"}),t.register(yz,{prefix:"/uc"}),t.register(wfe,{prefix:"/uc-tv"}),t.register(aY,{prefix:"/115"}),t.register(Ece,{prefix:"/muou"}),t.register(wY,{prefix:"/duoduo"}),t.register(Cce,{prefix:"/labi"}),t.register(Nce,{prefix:"/shandian"}),t.register(Dce,{prefix:"/ouge"}),t.register(Wce,{prefix:"/erxiao"}),t.register(lue,{prefix:"/huban"}),t.register(mue,{prefix:"/xiaoban"}),t.register(Rfe,{prefix:"/tianyi"}),t.register(Aue,{prefix:"/wanou"}),t.register(Nfe,{prefix:"/leijing"}),t.register(_ue,{prefix:"/zhizhen"}),t.register(Wue,{prefix:"/tgsou"}),t.register(zue,{prefix:"/pansou"}),t.register(rle,{prefix:"/pinglian"}),t.register(Dfe,{prefix:"/pan123"}),t.register(Lfe,{prefix:"/xunlei"}),t.register(Wfe,{prefix:"/ali"}),t.register(Ufe,{prefix:"/baidu"}),t.register(qfe,{prefix:"/guangyapan"}),t.register(Kfe,{prefix:"/yidong"}),t.register(wue,{prefix:"/tgchannel"}),t.register(Fue,{prefix:"/tgfilebot"}),t.register(Bde,{prefix:"/sites"}),t.register(Yfe,{prefix:"/pans"}),t.register(Jfe,{prefix:"/backup"}),t.register(Mde,{prefix:"/danmu"}),t.register(Dpe,{prefix:"/emby"}),t.register(bde,{prefix:"/emby-spider"}),t.register(Ode,{prefix:"/alist-video"}),t.register(Fde,{prefix:"/t4"}),t.register(Kde,{prefix:"/cms"}),t.register(Mle,{prefix:"/live2vod"}),t.register(Vce,{prefix:"/123ypzysq"}),t.register(Yce,{prefix:"/guanying"}),t.register(dde,{prefix:"/4kzn"})}var Lpe=8*1024*1024,M5r=15e3,W5r=new Set(["image/avif","image/gif","image/jpeg","image/png","image/webp"]);async function Myt(t){let e=new URL(String(t||""));if(!["http:","https:"].includes(e.protocol))throw new Error("\u4EC5\u652F\u6301 HTTP(S) \u56FE\u7247");if(!e.hostname||e.username||e.password)throw new Error("\u56FE\u7247\u5730\u5740\u65E0\u6548");return e}function $5r(t){return W5r.has(String(t||"").split(";")[0].trim().toLowerCase())}var U5r=t=>t.hostname.endsWith("doubanio.com")?"https://movie.douban.com/":`${t.protocol}//${t.host}/`;async function F5r(t){let e=new AbortController,r=setTimeout(()=>e.abort(new Error("\u56FE\u7247\u8BF7\u6C42\u8D85\u65F6")),M5r);try{let n=await Myt(t);for(let s=0;s<=3;s+=1){let i=await he.get(n.toString(),{responseType:"arraybuffer",timeout:12e3,signal:e.signal,maxRedirects:0,maxContentLength:Lpe,maxBodyLength:Lpe,validateStatus:o=>o>=200&&o<400,headers:{Accept:"image/avif,image/webp,image/png,image/jpeg,image/gif",Referer:U5r(n),"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 Chrome/124 Safari/537.36"}});if(i.status<300)return i;let a=i.headers.location;if(!a||s===3)throw new Error("\u56FE\u7247\u91CD\u5B9A\u5411\u6B21\u6570\u8FC7\u591A");n=await Myt(new URL(a,n).toString())}throw new Error("\u56FE\u7247\u91CD\u5B9A\u5411\u6B21\u6570\u8FC7\u591A")}finally{clearTimeout(r)}}async function Wyt(t,e){try{let r=await F5r(t.query?.url),n=String(r.headers["content-type"]||"").split(";")[0].trim().toLowerCase();if(!$5r(n))throw new Error("\u8FDC\u7AEF\u54CD\u5E94\u4E0D\u662F\u652F\u6301\u7684\u56FE\u7247\u683C\u5F0F");let s=Buffer.from(r.data);if(s.length>Lpe)throw new Error("\u56FE\u7247\u8D85\u8FC7\u5927\u5C0F\u9650\u5236");e.header("Cache-Control","public, max-age=86400, stale-while-revalidate=604800").header("X-Content-Type-Options","nosniff").type(n).send(s)}catch(r){e.code(400).send({error:r?.message||"\u56FE\u7247\u52A0\u8F7D\u5931\u8D25"})}}var q5r=()=>`<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="theme-color" content="#090909">
<link rel="icon" href="data:image/svg+xml,<svg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 64 64%22><rect width=%2264%22 height=%2264%22 rx=%2218%22 fill=%22%23ff5b66%22/><path d=%22M24 18l24 14-24 14z%22 fill=%22white%22/></svg>">
<title>CatPawPlay</title>
</head>
<body>
<div id="vod-app"></div>
<script>${globalThis.vodBundle||""}</script>
</body>
</html>`;async function Mpe(t){let e=async(r,n)=>{n.type("text/html; charset=utf-8").send(q5r())};t.get("/image",Wyt),t.get("/",e),t.get("/*",e)}var jr=null,Wpe="__catpawProfile",yW=Number.parseInt(process.env.CATPAW_LOG_LIMIT||"1500",10)||1500,j5r=Number.parseInt(process.env.CATPAW_LOG_TEXT_LIMIT||"4096",10)||4096,iA=[],jyt=["log","info","warn","error","debug"],rN={},AW=!1;function Ku(t,e=j5r){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 Q5r(t){if(typeof t=="string")return Ku(t);if(t instanceof Error)return Ku(JSON.stringify(xW(t)));try{return Ku(JSON.stringify(nN(t)))}catch{try{return Ku(String(t))}catch{return"[Unserializable]"}}}function Qyt(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 nN(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=>nN(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]=Qyt(s);continue}r[n]=nN(s,e+1)}return r}return typeof t=="string"&&t.length>120?`${t.slice(0,40)}...(${t.length} chars)...${t.slice(-12)}`:t}function Hyt(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]=Qyt(s):r[n]=Ku(s,260)}return r}function H5r(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:Hyt(t.headers)}}function G5r(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 V5r(t){if(!t||typeof t!="object")return;let e=t.data;return{status:t.status,statusText:t.statusText,headers:Hyt(t.headers),data:typeof e=="string"?Ku(e,1e3):nN(e)}}function xW(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=H5r(t.config),n=G5r(t.request),s=V5r(t.response);return r&&(e.config=r),n&&(e.request=n),s&&(e.response=s),e}function K5r(t){return t instanceof Error?xW(t):t}function z5r(){return process.env.NODE_ENV==="development"?!1:{serializers:{err:xW,error:xW}}}function Y5r(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 nN(t)}function J5r(t,e){iA.push({ts:new Date().toISOString(),level:t,msg:e.map(Q5r).join(" ")}),iA.length>yW&&iA.splice(0,iA.length-yW)}function X5r(){AW||(jyt.forEach(t=>{let e=console[t];typeof e=="function"&&(rN[t]=e.bind(console),console[t]=(...r)=>{J5r(t,r),Vct()||rN[t](...r.map(K5r))})}),AW=!0)}function Z5r(){AW&&(jyt.forEach(t=>{rN[t]&&(console[t]=rN[t],delete rN[t])}),AW=!1)}function eWr(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,yW):yW,s=iA.slice(-n);return{success:!0,total:iA.length,count:s.length,logs:s}}),t.post("/api/catpaw-logs/clear",async()=>(iA.length=0,{success:!0}))}function bW(...t){}function sN(t){return Object.prototype.toString.call(t)==="[object Object]"}function tWr(t){let e=t?.[Wpe];return sN(e)?e:null}function $yt(t){if(!sN(t))return{};if(!(Wpe in t))return t;let{[Wpe]:e,...r}=t;return r}function $pe(t){return sN(t)&&Object.keys(t).length>0}function Uyt(t){if(t===void 0)return t;try{return JSON.parse(JSON.stringify(t))}catch{return t}}function Fyt(t,e){if(!$pe(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(!sN(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 rWr(t,e){return{...t,...e}}function nWr(t,e){if(!$pe(e))return;let r=t.getData.bind(t),n=typeof t.getObjectDefault=="function"?t.getObjectDefault.bind(t):null;t.getData=async s=>{let i=Fyt(e,s);return i.found?Uyt(i.value):r(s)},n&&(t.getObjectDefault=async(s,i)=>{let a=Fyt(e,s);return a.found?Uyt(a.value):n(s,i)})}async function sWr(t){let e=tWr(t),r=$pe(e),n=r?rWr($yt(t),e):$yt(t);jr=(0,qyt.default)({serverFactory:catServerFactory,forceCloseConnections:!0,caseSensitive:!1,logger:z5r(),maxParamLength:10240}),X5r(),eWr(jr),globalThis.messageToDart=jr.messageToDart=async u=>{try{console.log("messageToDart",Y5r(u));let l=catDartServerPort();return l==0?null:(await he.post(`http://127.0.0.1:${l}/msg`,u)).data}catch(l){return console.error(l),null}},jr.address=function(){let u=this.server.address();return u.url=`http://${nm()}:${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;bW("before start()",{danmuPort:s,node:process.version,platform:`${process.platform}/${process.arch}`}),zct(s),bW("after start()",{danmuPort:s}),jr.db=new _W.JsonDB(new _W.Config((process.env.NODE_PATH||".")+"/default.db.json",!0,!0,"/",!0));let i=jr.db.getData.bind(jr.db);r&&nWr(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=sN(u)?u:{};a("/",l)}}),jr.register(ufe,{db:jr.db,config:n}),jr.register(Bpe,{prefix:"/website"}),jr.register(Mpe,{prefix:"/vod"}),jr.register(kpe,{prefix:"/emby"}),globalThis.Pans=await zfe(jr),await fgt(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,m)=>{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 ${m}`)})};c(2333)}async function iWr(){bW("before stop()"),Yct(),bW("after stop()"),jr&&(jr.close(),jr.stop=!0),Z5r(),jr=null}0&&(module.exports={start,stop});
/*! Bundled license information:
forwarded/index.js:
(*!
* forwarded
* Copyright(c) 2014-2017 Douglas Christopher Wilson
* MIT Licensed
*)
proxy-addr/index.js:
(*!
* proxy-addr
* Copyright(c) 2014-2016 Douglas Christopher Wilson
* MIT Licensed
*)
toad-cache/dist/toad-cache.cjs:
(**
* toad-cache
*
* @copyright 2024 Igor Savin <[email protected]>
* @license MIT
* @version 3.7.0
*)
cookie/index.js:
(*!
* cookie
* Copyright(c) 2012-2014 Roman Shtylman
* Copyright(c) 2015 Douglas Christopher Wilson
* MIT Licensed
*)
light-my-request/lib/form-data.js:
(*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> *)
mime-db/index.js:
(*!
* mime-db
* Copyright(c) 2014 Jonathan Ong
* Copyright(c) 2015-2022 Douglas Christopher Wilson
* MIT Licensed
*)
mime-types/index.js:
(*!
* mime-types
* Copyright(c) 2014 Jonathan Ong
* Copyright(c) 2015 Douglas Christopher Wilson
* MIT Licensed
*)
crypto-js/ripemd160.js:
(** @preserve
(c) 2012 by Cédric Mesnil. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*)
crypto-js/mode-ctr-gladman.js:
(** @preserve
* Counter block mode compatible with Dr Brian Gladman fileenc.c
* derived from CryptoJS.mode.CTR
* Jan Hruby [email protected]
*)
hls-parser/index.js:
(*! Copyright Kuu Miyazaki. SPDX-License-Identifier: MIT *)
web-streams-polyfill/dist/ponyfill.es2018.js:
(**
* @license
* web-streams-polyfill v3.3.3
* Copyright 2024 Mattias Buelens, Diwank Singh Tomer and other contributors.
* This code is released under the MIT license.
* SPDX-License-Identifier: MIT
*)
fetch-blob/index.js:
(*! fetch-blob. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> *)
formdata-polyfill/esm.min.js:
(*! formdata-polyfill. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> *)
node-domexception/index.js:
(*! node-domexception. MIT License. Jimmy Wärting <https://jimmy.warting.se/opensource> *)
rwlock/lib/lock.js:
(*! ReadWriteLock - v5.0.0 - 2015-01-16
* Author: Alberto La Rocca <[email protected]> (https://github.com/71104)
* Released under the MIT license
* Copyright (c) 2015 Alberto La Rocca *)
*/