Files
tvbox_collect/catvod/douer/index.js
T
2026-06-29 03:41:14 +00:00

10716 lines
4.0 MiB
Plaintext

globalThis.websiteBundle = function() {
return `
(function() {
const exports = {};
const module = { exports };
${"var pi=Object.create;var Ot=Object.defineProperty,mi=Object.defineProperties,gi=Object.getOwnPropertyDescriptor,xi=Object.getOwnPropertyDescriptors,hi=Object.getOwnPropertyNames,Kt=Object.getOwnPropertySymbols,bi=Object.getPrototypeOf,Wn=Object.prototype.hasOwnProperty,zr=Object.prototype.propertyIsEnumerable;var $r=(e,t,n)=>t in e?Ot(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,S=(e,t)=>{for(var n in t||(t={}))Wn.call(t,n)&&$r(e,n,t[n]);if(Kt)for(var n of Kt(t))zr.call(t,n)&&$r(e,n,t[n]);return e},B=(e,t)=>mi(e,xi(t));var Gn=(e,t)=>{var n={};for(var o in e)Wn.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(e!=null&&Kt)for(var o of Kt(e))t.indexOf(o)<0&&zr.call(e,o)&&(n[o]=e[o]);return n};var je=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),yi=(e,t)=>{for(var n in t)Ot(e,n,{get:t[n],enumerable:!0})},qr=(e,t,n,o)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let a of hi(t))!Wn.call(e,a)&&a!==n&&Ot(e,a,{get:()=>t[a],enumerable:!(o=gi(t,a))||o.enumerable});return e};var Y=(e,t,n)=>(n=e!=null?pi(bi(e)):{},qr(t||!e||!e.__esModule?Ot(n,\"default\",{value:e,enumerable:!0}):n,e)),vi=e=>qr(Ot({},\"__esModule\",{value:!0}),e);var Q=je((Bd,Hr)=>{Hr.exports=window.React});var Yn=je(($d,jr)=>{jr.exports=window.ReactDOM});var Ur=je(Kn=>{\"use strict\";var Vr=Yn();Kn.createRoot=Vr.createRoot,Kn.hydrateRoot=Vr.hydrateRoot;var zd});var Gr=je((Hd,Wr)=>{Wr.exports=window.antd});var Kr=je((jd,Yr)=>{Yr.exports=window.axios});var Zr=je((Vd,Xr)=>{Xr.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],o=0;o<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=je((Ud,Qr)=>{\"use strict\";var wi=Zr(),Jr={\"text/plain\":\"Text\",\"text/html\":\"Url\",default:\"Text\"},Ci=\"Copy to clipboard: #{key}, Enter\";function Si(e){var t=(/mac os x/i.test(navigator.userAgent)?\"\\u2318\":\"Ctrl\")+\"+C\";return e.replace(/#{\\s*key\\s*}/g,t)}function Oi(e,t){var n,o,a,i,l,u,c=!1;t||(t={}),n=t.debug||!1;try{a=wi(),i=document.createRange(),l=document.getSelection(),u=document.createElement(\"span\"),u.textContent=e,u.ariaHidden=\"true\",u.style.all=\"unset\",u.style.position=\"fixed\",u.style.top=0,u.style.clip=\"rect(0, 0, 0, 0)\",u.style.whiteSpace=\"pre\",u.style.webkitUserSelect=\"text\",u.style.MozUserSelect=\"text\",u.style.msUserSelect=\"text\",u.style.userSelect=\"text\",u.addEventListener(\"copy\",function(m){if(m.stopPropagation(),t.format)if(m.preventDefault(),typeof m.clipboardData>\"u\"){n&&console.warn(\"unable to use e.clipboardData\"),n&&console.warn(\"trying IE specific stuff\"),window.clipboardData.clearData();var d=Jr[t.format]||Jr.default;window.clipboardData.setData(d,e)}else m.clipboardData.clearData(),m.clipboardData.setData(t.format,e);t.onCopy&&(m.preventDefault(),t.onCopy(m.clipboardData))}),document.body.appendChild(u),i.selectNodeContents(u),l.addRange(i);var f=document.execCommand(\"copy\");if(!f)throw new Error(\"copy command was unsuccessful\");c=!0}catch(m){n&&console.error(\"unable to copy using execCommand: \",m),n&&console.warn(\"trying IE specific stuff\");try{window.clipboardData.setData(t.format||\"text\",e),t.onCopy&&t.onCopy(window.clipboardData),c=!0}catch(d){n&&console.error(\"unable to copy using clipboardData: \",d),n&&console.error(\"falling back to prompt\"),o=Si(\"message\"in t?t.message:Ci),window.prompt(o,e)}}finally{l&&(typeof l.removeRange==\"function\"?l.removeRange(i):l.removeAllRanges()),u&&document.body.removeChild(u),a()}return c}Qr.exports=Oi});var lo=je((gu,Qt)=>{(function(){\"use strict\";var e={}.hasOwnProperty;function t(){for(var a=\"\",i=0;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 Qt<\"u\"&&Qt.exports?(t.default=t,Qt.exports=t):typeof define==\"function\"&&typeof define.amd==\"object\"&&define.amd?define(\"classnames\",[],function(){return t}):window.classNames=t})()});var Pd={};yi(Pd,{renderClient:()=>Md});module.exports=vi(Pd);var r=Y(Q(),1),ii=Y(Ur(),1),s=Y(Gr(),1),bt=Y(Kr(),1),Mr=Y(Rr(),1);var eo=Y(Q()),ki=(0,eo.createContext)({}),Xt=ki;function K(){return K=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)({}).hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},K.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=[],c=!0,f=!1;try{if(i=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(o=i.call(n)).done)&&(u.push(o.value),u.length!==t);c=!0);}catch(m){f=!0,a=m}finally{try{if(!c&&n.return!=null&&(l=n.return(),Object(l)!==l))return}finally{if(f)throw a}}return u}}function Xn(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 Xn(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)?Xn(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 Zt(e,t){return to(e)||no(e,t)||ro(e,t)||oo()}function Ae(e){\"@babel/helpers - typeof\";return Ae=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},Ae(e)}function ao(e,t){if(Ae(e)!=\"object\"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var o=n.call(e,t||\"default\");if(Ae(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 Ae(t)==\"symbol\"?t:t+\"\"}function re(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 Jt(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=Y(Q()),ra=Y(lo());var oe=Math.round;function Zn(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 kt(e,t){let n=t||255;return e>n?n:e<0?0:e}var Ye=class e{constructor(t){re(this,\"isValid\",!0),re(this,\"r\",0),re(this,\"g\",0),re(this,\"b\",0),re(this,\"a\",1),re(this,\"_h\",void 0),re(this,\"_s\",void 0),re(this,\"_l\",void 0),re(this,\"_v\",void 0),re(this,\"_max\",void 0),re(this,\"_min\",void 0),re(this,\"_brightness\",void 0);function n(o){return o[0]in t&&o[1]in t&&o[2]in t}if(t)if(typeof t==\"string\"){let a=function(i){return o.startsWith(i)},o=t.trim();/^#?[A-F\\d]{3,8}$/i.test(o)?this.fromHexString(o):a(\"rgb\")?this.fromRgbString(o):a(\"hsl\")?this.fromHslString(o):(a(\"hsv\")||a(\"hsb\"))&&this.fromHsvString(o)}else if(t instanceof e)this.r=t.r,this.g=t.g,this.b=t.b,this.a=t.a,this._h=t._h,this._s=t._s,this._l=t._l,this._v=t._v;else if(n(\"rgb\"))this.r=kt(t.r),this.g=kt(t.g),this.b=kt(t.b),this.a=typeof t.a==\"number\"?kt(t.a,1):1;else if(n(\"hsl\"))this.fromHsl(t);else if(n(\"hsv\"))this.fromHsv(t);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(t))}setR(t){return this._sc(\"r\",t)}setG(t){return this._sc(\"g\",t)}setB(t){return this._sc(\"b\",t)}setA(t){return this._sc(\"a\",t,1)}setHue(t){let n=this.toHsv();return n.h=t,this._c(n)}getLuminance(){function t(i){let l=i/255;return l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4)}let n=t(this.r),o=t(this.g),a=t(this.b);return .2126*n+.7152*o+.0722*a}getHue(){if(typeof this._h>\"u\"){let t=this.getMax()-this.getMin();t===0?this._h=0:this._h=oe(60*(this.r===this.getMax()?(this.g-this.b)/t+(this.g<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:oe(i(\"r\")),g:oe(i(\"g\")),b:oe(i(\"b\")),a:oe(i(\"a\")*100)/100};return this._c(l)}tint(t=10){return this.mix({r:255,g:255,b:255,a:1},t)}shade(t=10){return this.mix({r:0,g:0,b:0,a:1},t)}onBackground(t){let n=this._c(t),o=this.a+n.a*(1-this.a),a=i=>oe((this[i]*this.a+n[i]*n.a*(1-this.a))/o);return this._c({r:a(\"r\"),g:a(\"g\"),b:a(\"b\"),a:o})}isDark(){return this.getBrightness()<128}isLight(){return this.getBrightness()>=128}equals(t){return this.r===t.r&&this.g===t.g&&this.b===t.b&&this.a===t.a}clone(){return this._c(this)}toHexString(){let t=\"#\",n=(this.r||0).toString(16);t+=n.length===2?n:\"0\"+n;let o=(this.g||0).toString(16);t+=o.length===2?o:\"0\"+o;let a=(this.b||0).toString(16);if(t+=a.length===2?a:\"0\"+a,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let i=oe(this.a*255).toString(16);t+=i.length===2?i:\"0\"+i}return t}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let t=this.getHue(),n=oe(this.getSaturation()*100),o=oe(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(t,n,o){let a=this.clone();return a[t]=kt(n,o),a}_c(t){return new this.constructor(t)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(t){let n=t.replace(\"#\",\"\");function o(a,i){return parseInt(n[a]+n[i||a],16)}n.length<6?(this.r=o(0),this.g=o(1),this.b=o(2),this.a=n[3]?o(3)/255:1):(this.r=o(0,1),this.g=o(2,3),this.b=o(4,5),this.a=n[6]?o(6,7)/255:1)}fromHsl({h:t,s:n,l:o,a}){if(this._h=t%360,this._s=n,this._l=o,this.a=typeof a==\"number\"?a:1,n<=0){let g=oe(o*255);this.r=g,this.g=g,this.b=g}let i=0,l=0,u=0,c=t/60,f=(1-Math.abs(2*o-1))*n,m=f*(1-Math.abs(c%2-1));c>=0&&c<1?(i=f,l=m):c>=1&&c<2?(i=m,l=f):c>=2&&c<3?(l=f,u=m):c>=3&&c<4?(l=m,u=f):c>=4&&c<5?(i=m,u=f):c>=5&&c<6&&(i=f,u=m);let d=o-f/2;this.r=oe((i+d)*255),this.g=oe((l+d)*255),this.b=oe((u+d)*255)}fromHsv({h:t,s:n,v:o,a}){this._h=t%360,this._s=n,this._v=o,this.a=typeof a==\"number\"?a:1;let i=oe(o*255);if(this.r=i,this.g=i,this.b=i,n<=0)return;let l=t/60,u=Math.floor(l),c=l-u,f=oe(o*(1-n)*255),m=oe(o*(1-n*c)*255),d=oe(o*(1-n*(1-c))*255);switch(u){case 0:this.g=d,this.b=f;break;case 1:this.r=m,this.b=f;break;case 2:this.r=f,this.b=d;break;case 3:this.r=f,this.g=m;break;case 4:this.r=d,this.g=f;break;case 5:default:this.g=f,this.b=m;break}}fromHsvString(t){let n=Zn(t,uo);this.fromHsv({h:n[0],s:n[1],v:n[2],a:n[3]})}fromHslString(t){let n=Zn(t,uo);this.fromHsl({h:n[0],s:n[1],l:n[2],a:n[3]})}fromRgbString(t){let n=Zn(t,(o,a)=>a.includes(\"%\")?oe(o/100*255):o);this.r=n[0],this.g=n[1],this.b=n[2],this.a=n[3]}};var Rt=2,co=.16,Ti=.05,Ei=.05,Fi=.15,go=5,xo=4,Ii=[{index:7,amount:15},{index:6,amount:25},{index:5,amount:30},{index:5,amount:45},{index:5,amount:65},{index:5,amount:85},{index:4,amount:90},{index:3,amount:95},{index:2,amount:97},{index:1,amount:98}];function fo(e,t,n){var o;return Math.round(e.h)>=60&&Math.round(e.h)<=240?o=n?Math.round(e.h)-Rt*t:Math.round(e.h)+Rt*t:o=n?Math.round(e.h)+Rt*t:Math.round(e.h)-Rt*t,o<0?o+=360:o>=360&&(o-=360),o}function po(e,t,n){if(e.h===0&&e.s===0)return e.s;var o;return n?o=e.s-co*t:t===xo?o=e.s+co:o=e.s+Ti*t,o>1&&(o=1),n&&t===go&&o>.1&&(o=.1),o<.06&&(o=.06),Math.round(o*100)/100}function mo(e,t,n){var o;return n?o=e.v+Ei*t:o=e.v-Fi*t,o=Math.max(0,Math.min(1,o)),Math.round(o*100)/100}function en(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=[],o=new Ye(e),a=o.toHsv(),i=go;i>0;i-=1){var l=new Ye({h:fo(a,i,!0),s:po(a,i,!0),v:mo(a,i,!0)});n.push(l)}n.push(o);for(var u=1;u<=xo;u+=1){var c=new Ye({h:fo(a,u),s:po(a,u),v:mo(a,u)});n.push(c)}return t.theme===\"dark\"?Ii.map(function(f){var m=f.index,d=f.amount;return new Ye(t.backgroundColor||\"#141414\").mix(n[m],d).toHexString()}):n.map(function(f){return f.toHexString()})}var ho=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];ho.primary=ho[5];var bo=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];bo.primary=bo[5];var yo=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];yo.primary=yo[5];var vo=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];vo.primary=vo[5];var wo=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];wo.primary=wo[5];var Co=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];Co.primary=Co[5];var So=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];So.primary=So[5];var Oo=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Oo.primary=Oo[5];var tn=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];tn.primary=tn[5];var ko=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];ko.primary=ko[5];var To=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];To.primary=To[5];var Eo=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];Eo.primary=Eo[5];var Fo=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];Fo.primary=Fo[5];var Io=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];Io.primary=Io[5];var No=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];No.primary=No[5];var Do=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];Do.primary=Do[5];var Ao=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];Ao.primary=Ao[5];var _o=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];_o.primary=_o[5];var Mo=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];Mo.primary=Mo[5];var Po=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];Po.primary=Po[5];var Lo=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];Lo.primary=Lo[5];var Bo=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];Bo.primary=Bo[5];var $o=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];$o.primary=$o[5];var zo=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];zo.primary=zo[5];var qo=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];qo.primary=qo[5];var Ho=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];Ho.primary=Ho[5];function jo(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,o)}return n}function he(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?jo(Object(n),!0).forEach(function(o){re(e,o,n[o])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):jo(Object(n)).forEach(function(o){Object.defineProperty(e,o,Object.getOwnPropertyDescriptor(n,o))})}return e}var ta=Y(Q());function Jn(){return!!(typeof window<\"u\"&&window.document&&window.document.createElement)}function Qn(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\",Uo=\"data-rc-priority\",Ni=\"rc-util-key\",Rn=new Map;function Wo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.mark;return t?t.startsWith(\"data-\")?t:\"data-\".concat(t):Ni}function er(e){if(e.attachTo)return e.attachTo;var t=document.querySelector(\"head\");return t||document.body}function Di(e){return e===\"queue\"?\"prependQueue\":e?\"prepend\":\"append\"}function tr(e){return Array.from((Rn.get(e)||e).children).filter(function(t){return t.tagName===\"STYLE\"})}function Go(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!Jn())return null;var n=t.csp,o=t.prepend,a=t.priority,i=a===void 0?0:a,l=Di(o),u=l===\"prependQueue\",c=document.createElement(\"style\");c.setAttribute(Vo,l),u&&i&&c.setAttribute(Uo,\"\".concat(i)),n!=null&&n.nonce&&(c.nonce=n==null?void 0:n.nonce),c.innerHTML=e;var f=er(t),m=f.firstChild;if(o){if(u){var d=(t.styles||tr(f)).filter(function(g){if(![\"prepend\",\"prependQueue\"].includes(g.getAttribute(Vo)))return!1;var p=Number(g.getAttribute(Uo)||0);return i>=p});if(d.length)return f.insertBefore(c,d[d.length-1].nextSibling),c}f.insertBefore(c,m)}else f.appendChild(c);return c}function Ai(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=er(t);return(t.styles||tr(n)).find(function(o){return o.getAttribute(Wo(t))===e})}function _i(e,t){var n=Rn.get(e);if(!n||!Qn(document,n)){var o=Go(\"\",t),a=o.parentNode;Rn.set(e,a),e.removeChild(o)}}function Yo(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=er(n),a=tr(o),i=he(he({},n),{},{styles:a});_i(o,i);var l=Ai(t,i);if(l){var u,c;if((u=i.csp)!==null&&u!==void 0&&u.nonce&&l.nonce!==((c=i.csp)===null||c===void 0?void 0:c.nonce)){var f;l.nonce=(f=i.csp)===null||f===void 0?void 0:f.nonce}return l.innerHTML!==e&&(l.innerHTML=e),l}var m=Go(e,i);return m.setAttribute(Wo(i),t),m}function Ko(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}function Mi(e){return Ko(e)instanceof ShadowRoot}function Xo(e){return Mi(e)?Ko(e):null}var nr={},Pi=[],Li=function(t){Pi.push(t)};function Bi(e,t){if(0)var n}function $i(e,t){if(0)var n}function zi(){nr={}}function Zo(e,t,n){!t&&!nr[n]&&(e(!1,n),nr[n]=!0)}function nn(e,t){Zo(Bi,e,t)}function qi(e,t){Zo($i,e,t)}nn.preMessage=Li;nn.resetWarned=zi;nn.noteOnce=qi;var Jo=nn;var Ke=Y(Q());function Hi(e){return e.replace(/-(.)/g,function(t,n){return n.toUpperCase()})}function Ro(e,t){Jo(e,\"[@ant-design/icons] \".concat(t))}function rr(e){return Ae(e)===\"object\"&&typeof e.name==\"string\"&&typeof e.theme==\"string\"&&(Ae(e.icon)===\"object\"||typeof e.icon==\"function\")}function Qo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(e).reduce(function(t,n){var o=e[n];switch(n){case\"class\":t.className=o,delete t.class;break;default:delete t[n],t[Hi(n)]=o}return t},{})}function rn(e,t,n){return n?Ke.default.createElement(e.tag,he(he({key:t},Qo(e.attrs)),n),(e.children||[]).map(function(o,a){return rn(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))})):Ke.default.createElement(e.tag,he({key:t},Qo(e.attrs)),(e.children||[]).map(function(o,a){return rn(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))}))}function or(e){return en(e)[0]}function on(e){return e?Array.isArray(e)?e:[e]:[]}var ji=\"\\n.anticon {\\n display: inline-flex;\\n align-items: center;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\",ea=function(t){var n=(0,Ke.useContext)(Xt),o=n.csp,a=n.prefixCls,i=n.layer,l=ji;a&&(l=l.replace(/anticon/g,a)),i&&(l=\"@layer \".concat(i,\" {\\n\").concat(l,\"\\n}\")),(0,Ke.useEffect)(function(){var u=t.current,c=Xo(u);Yo(l,\"@ant-design-icons\",{prepend:!i,csp:o,attachTo:c})},[])};var Vi=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],Tt={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function Ui(e){var t=e.primaryColor,n=e.secondaryColor;Tt.primaryColor=t,Tt.secondaryColor=n||or(t),Tt.calculated=!!n}function Wi(){return he({},Tt)}var an=function(t){var n=t.icon,o=t.className,a=t.onClick,i=t.style,l=t.primaryColor,u=t.secondaryColor,c=Jt(t,Vi),f=ta.useRef(),m=Tt;if(l&&(m={primaryColor:l,secondaryColor:u||or(l)}),ea(f),Ro(rr(n),\"icon should be icon definiton, but got \".concat(n)),!rr(n))return null;var d=n;return d&&typeof d.icon==\"function\"&&(d=he(he({},d),{},{icon:d.icon(m.primaryColor,m.secondaryColor)})),rn(d.icon,\"svg-\".concat(d.name),he(he({className:o,onClick:a,style:i,\"data-icon\":d.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},c),{},{ref:f}))};an.displayName=\"IconReact\";an.getTwoToneColors=Wi;an.setTwoToneColors=Ui;var Et=an;function ar(e){var t=on(e),n=Zt(t,2),o=n[0],a=n[1];return Et.setTwoToneColors({primaryColor:o,secondaryColor:a})}function na(){var e=Et.getTwoToneColors();return e.calculated?[e.primaryColor,e.secondaryColor]:e.primaryColor}var Gi=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];ar(tn.primary);var sn=Xe.forwardRef(function(e,t){var n=e.className,o=e.icon,a=e.spin,i=e.rotate,l=e.tabIndex,u=e.onClick,c=e.twoToneColor,f=Jt(e,Gi),m=Xe.useContext(Xt),d=m.prefixCls,g=d===void 0?\"anticon\":d,p=m.rootClassName,v=(0,ra.default)(p,g,re(re({},\"\".concat(g,\"-\").concat(o.name),!!o.name),\"\".concat(g,\"-spin\"),!!a||o.name===\"loading\"),n),y=l;y===void 0&&u&&(y=-1);var k=i?{msTransform:\"rotate(\".concat(i,\"deg)\"),transform:\"rotate(\".concat(i,\"deg)\")}:void 0,E=on(c),w=Zt(E,2),F=w[0],_=w[1];return Xe.createElement(\"span\",K({role:\"img\",\"aria-label\":o.name},f,{ref:t,tabIndex:y,onClick:u,className:v}),Xe.createElement(Et,{icon:o,primaryColor:F,secondaryColor:_,style:k}))});sn.displayName=\"AntdIcon\";sn.getTwoToneColor=na;sn.setTwoToneColor=ar;var Z=sn;var ln=Y(Q());var Yi={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"check-circle\",theme:\"outlined\"},oa=Yi;var Ki=function(t,n){return ln.createElement(Z,K({},t,{ref:n,icon:oa}))},Xi=ln.forwardRef(Ki),dn=Xi;var un=Y(Q());var Zi={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z\"}}]},name:\"copy\",theme:\"outlined\"},aa=Zi;var Ji=function(t,n){return un.createElement(Z,K({},t,{ref:n,icon:aa}))},Qi=un.forwardRef(Ji),ir=Qi;var cn=Y(Q());var Ri={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z\"}}]},name:\"edit\",theme:\"outlined\"},ia=Ri;var es=function(t,n){return cn.createElement(Z,K({},t,{ref:n,icon:ia}))},ts=cn.forwardRef(es),ct=ts;var fn=Y(Q());var ns={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM770.87 199.13l-52.2-52.2a8.01 8.01 0 014.7-13.6l179.4-21c5.1-.6 9.5 3.7 8.9 8.9l-21 179.4c-.8 6.6-8.9 9.4-13.6 4.7l-52.4-52.4-256.2 256.2a8.03 8.03 0 01-11.3 0l-42.4-42.4a8.03 8.03 0 010-11.3l256.1-256.3z\"}}]},name:\"export\",theme:\"outlined\"},sa=ns;var rs=function(t,n){return fn.createElement(Z,K({},t,{ref:n,icon:sa}))},os=fn.forwardRef(rs),sr=os;var pn=Y(Q());var as={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z\"}}]},name:\"holder\",theme:\"outlined\"},la=as;var is=function(t,n){return pn.createElement(Z,K({},t,{ref:n,icon:la}))},ss=pn.forwardRef(is),lr=ss;var mn=Y(Q());var ls={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM653.3 424.6l52.2 52.2a8.01 8.01 0 01-4.7 13.6l-179.4 21c-5.1.6-9.5-3.7-8.9-8.9l21-179.4c.8-6.6 8.9-9.4 13.6-4.7l52.4 52.4 256.2-256.2c3.1-3.1 8.2-3.1 11.3 0l42.4 42.4c3.1 3.1 3.1 8.2 0 11.3L653.3 424.6z\"}}]},name:\"import\",theme:\"outlined\"},da=ls;var ds=function(t,n){return mn.createElement(Z,K({},t,{ref:n,icon:da}))},us=mn.forwardRef(ds),dr=us;var gn=Y(Q());var cs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M574 665.4a8.03 8.03 0 00-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 00-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 000 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 000 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 00-11.3 0L372.3 598.7a8.03 8.03 0 000 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z\"}}]},name:\"link\",theme:\"outlined\"},ua=cs;var fs=function(t,n){return gn.createElement(Z,K({},t,{ref:n,icon:ua}))},ps=gn.forwardRef(fs),ur=ps;var xn=Y(Q());var ms={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"minus-circle\",theme:\"outlined\"},ca=ms;var gs=function(t,n){return xn.createElement(Z,K({},t,{ref:n,icon:ca}))},xs=xn.forwardRef(gs),Ze=xs;var hn=Y(Q());var hs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z\"}},{tag:\"path\",attrs:{d:\"M192 474h672q8 0 8 8v60q0 8-8 8H160q-8 0-8-8v-60q0-8 8-8z\"}}]},name:\"plus\",theme:\"outlined\"},fa=hs;var bs=function(t,n){return hn.createElement(Z,K({},t,{ref:n,icon:fa}))},ys=hn.forwardRef(bs),be=ys;var bn=Y(Q());var vs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z\"}}]},name:\"setting\",theme:\"outlined\"},pa=vs;var ws=function(t,n){return bn.createElement(Z,K({},t,{ref:n,icon:pa}))},Cs=bn.forwardRef(ws),yn=Cs;var vn=Y(Q());var Ss={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z\"}}]},name:\"user\",theme:\"outlined\"},ma=Ss;var Os=function(t,n){return vn.createElement(Z,K({},t,{ref:n,icon:ma}))},ks=vn.forwardRef(Os),cr=ks;var x=Y(Q()),nt=Y(Yn());var R=Y(Q());function xa(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,R.useMemo)(()=>o=>{t.forEach(a=>a(o))},t)}var Ft=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\";function Je(e){let t=Object.prototype.toString.call(e);return t===\"[object Window]\"||t===\"[object global]\"}function wn(e){return\"nodeType\"in e}function pe(e){var t,n;return e?Je(e)?e:wn(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function Cn(e){let{Document:t}=pe(e);return e instanceof t}function ft(e){return Je(e)?!1:e instanceof pe(e).HTMLElement}function pr(e){return e instanceof pe(e).SVGElement}function Qe(e){return e?Je(e)?e.document:wn(e)?Cn(e)?e:ft(e)||pr(e)?e.ownerDocument:document:document:document}var ye=Ft?R.useLayoutEffect:R.useEffect;function Sn(e){let t=(0,R.useRef)(e);return ye(()=>{t.current=e}),(0,R.useCallback)(function(){for(var n=arguments.length,o=new Array(n),a=0;a<n;a++)o[a]=arguments[a];return t.current==null?void 0:t.current(...o)},[])}function ha(){let e=(0,R.useRef)(null),t=(0,R.useCallback)((o,a)=>{e.current=setInterval(o,a)},[]),n=(0,R.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[t,n]}function pt(e,t){t===void 0&&(t=[e]);let n=(0,R.useRef)(e);return ye(()=>{n.current!==e&&(n.current=e)},t),n}function mt(e,t){let n=(0,R.useRef)();return(0,R.useMemo)(()=>{let o=e(n.current);return n.current=o,o},[...t])}function It(e){let t=Sn(e),n=(0,R.useRef)(null),o=(0,R.useCallback)(a=>{a!==n.current&&(t==null||t(a,n.current)),n.current=a},[]);return[n,o]}function On(e){let t=(0,R.useRef)();return(0,R.useEffect)(()=>{t.current=e},[e]),t.current}var fr={};function Re(e,t){return(0,R.useMemo)(()=>{if(t)return t;let n=fr[e]==null?0:fr[e]+1;return fr[e]=n,e+\"-\"+n},[e,t])}function ba(e){return function(t){for(var n=arguments.length,o=new Array(n>1?n-1:0),a=1;a<n;a++)o[a-1]=arguments[a];return o.reduce((i,l)=>{let u=Object.entries(l);for(let[c,f]of u){let m=i[c];m!=null&&(i[c]=m+e*f)}return i},S({},t))}}var et=ba(1),gt=ba(-1);function Ts(e){return\"clientX\"in e&&\"clientY\"in e}function Nt(e){if(!e)return!1;let{KeyboardEvent:t}=pe(e.target);return t&&e instanceof t}function Es(e){if(!e)return!1;let{TouchEvent:t}=pe(e.target);return t&&e instanceof t}function Dt(e){if(Es(e)){if(e.touches&&e.touches.length){let{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}else if(e.changedTouches&&e.changedTouches.length){let{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return Ts(e)?{x:e.clientX,y:e.clientY}:null}var Ve=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return\"translate3d(\"+(t?Math.round(t):0)+\"px, \"+(n?Math.round(n):0)+\"px, 0)\"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return\"scaleX(\"+t+\") scaleY(\"+n+\")\"}},Transform:{toString(e){if(e)return[Ve.Translate.toString(e),Ve.Scale.toString(e)].join(\" \")}},Transition:{toString(e){let{property:t,duration:n,easing:o}=e;return t+\" \"+n+\"ms \"+o}}}),ga=\"a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]\";function ya(e){return e.matches(ga)?e:e.querySelector(ga)}var tt=Y(Q()),Fs={display:\"none\"};function va(e){let{id:t,value:n}=e;return tt.default.createElement(\"div\",{id:t,style:Fs},n)}function wa(e){let{id:t,announcement:n,ariaLiveType:o=\"assertive\"}=e,a={position:\"fixed\",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:\"hidden\",clip:\"rect(0 0 0 0)\",clipPath:\"inset(100%)\",whiteSpace:\"nowrap\"};return tt.default.createElement(\"div\",{id:t,style:a,role:\"status\",\"aria-live\":o,\"aria-atomic\":!0},n)}function Ca(){let[e,t]=(0,tt.useState)(\"\");return{announce:(0,tt.useCallback)(o=>{o!=null&&t(o)},[]),announcement:e}}var _a=(0,x.createContext)(null);function Is(e){let t=(0,x.useContext)(_a);(0,x.useEffect)(()=>{if(!t)throw new Error(\"useDndMonitor must be used within a children of <DndContext>\");return t(e)},[e,t])}function Ns(){let[e]=(0,x.useState)(()=>new Set),t=(0,x.useCallback)(o=>(e.add(o),()=>e.delete(o)),[e]);return[(0,x.useCallback)(o=>{let{type:a,event:i}=o;e.forEach(l=>{var u;return(u=l[a])==null?void 0:u.call(l,i)})},[e]),t]}var Ds={draggable:\"\\n To pick up a draggable item, press the space bar.\\n While dragging, use the arrow keys to move the item.\\n Press space again to drop the item in its new position, or press escape to cancel.\\n \"},As={onDragStart(e){let{active:t}=e;return\"Picked up draggable item \"+t.id+\".\"},onDragOver(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was moved over droppable area \"+n.id+\".\":\"Draggable item \"+t.id+\" is no longer over a droppable area.\"},onDragEnd(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was dropped over droppable area \"+n.id:\"Draggable item \"+t.id+\" was dropped.\"},onDragCancel(e){let{active:t}=e;return\"Dragging was cancelled. Draggable item \"+t.id+\" was dropped.\"}};function _s(e){let{announcements:t=As,container:n,hiddenTextDescribedById:o,screenReaderInstructions:a=Ds}=e,{announce:i,announcement:l}=Ca(),u=Re(\"DndLiveRegion\"),[c,f]=(0,x.useState)(!1);if((0,x.useEffect)(()=>{f(!0)},[]),Is((0,x.useMemo)(()=>({onDragStart(d){let{active:g}=d;i(t.onDragStart({active:g}))},onDragMove(d){let{active:g,over:p}=d;t.onDragMove&&i(t.onDragMove({active:g,over:p}))},onDragOver(d){let{active:g,over:p}=d;i(t.onDragOver({active:g,over:p}))},onDragEnd(d){let{active:g,over:p}=d;i(t.onDragEnd({active:g,over:p}))},onDragCancel(d){let{active:g,over:p}=d;i(t.onDragCancel({active:g,over:p}))}}),[i,t])),!c)return null;let m=x.default.createElement(x.default.Fragment,null,x.default.createElement(va,{id:o,value:a.draggable}),x.default.createElement(wa,{id:u,announcement:l}));return n?(0,nt.createPortal)(m,n):m}var te;(function(e){e.DragStart=\"dragStart\",e.DragMove=\"dragMove\",e.DragEnd=\"dragEnd\",e.DragCancel=\"dragCancel\",e.DragOver=\"dragOver\",e.RegisterDroppable=\"registerDroppable\",e.SetDroppableDisabled=\"setDroppableDisabled\",e.UnregisterDroppable=\"unregisterDroppable\"})(te||(te={}));function Tn(){}function Lt(e,t){return(0,x.useMemo)(()=>({sensor:e,options:t!=null?t:{}}),[e,t])}function wr(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,x.useMemo)(()=>[...t].filter(o=>o!=null),[...t])}var Te=Object.freeze({x:0,y:0});function Ms(e,t){let{data:{value:n}}=e,{data:{value:o}}=t;return o-n}function Ma(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function Ps(e,t){let n=Math.max(t.top,e.top),o=Math.max(t.left,e.left),a=Math.min(t.left+t.width,e.left+e.width),i=Math.min(t.top+t.height,e.top+e.height),l=a-o,u=i-n;if(o<a&&n<i){let c=t.width*t.height,f=e.width*e.height,m=l*u,d=m/(c+f-m);return Number(d.toFixed(4))}return 0}var Ls=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 c=Ps(u,t);c>0&&a.push({id:l,data:{droppableContainer:i,value:c}})}}return a.sort(Ms)};function Bs(e,t,n){return B(S({},e),{scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1})}function Pa(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:Te}function $s(e){return function(n){for(var o=arguments.length,a=new Array(o>1?o-1:0),i=1;i<o;i++)a[i-1]=arguments[i];return a.reduce((l,u)=>B(S({},l),{top:l.top+e*u.y,bottom:l.bottom+e*u.y,left:l.left+e*u.x,right:l.right+e*u.x}),S({},n))}}var zs=$s(1);function qs(e){if(e.startsWith(\"matrix3d(\")){let t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith(\"matrix(\")){let t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function Hs(e,t,n){let o=qs(t);if(!o)return e;let{scaleX:a,scaleY:i,x:l,y:u}=o,c=e.left-l-(1-a)*parseFloat(n),f=e.top-u-(1-i)*parseFloat(n.slice(n.indexOf(\" \")+1)),m=a?e.width/a:e.width,d=i?e.height/i:e.height;return{width:m,height:d,top:f,right:c+m,bottom:f+d,left:c}}var js={ignoreTransform:!1};function it(e,t){t===void 0&&(t=js);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:f,transformOrigin:m}=pe(e).getComputedStyle(e);f&&(n=Hs(n,f,m))}let{top:o,left:a,width:i,height:l,bottom:u,right:c}=n;return{top:o,left:a,width:i,height:l,bottom:u,right:c}}function Sa(e){return it(e,{ignoreTransform:!0})}function Vs(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function Us(e,t){return t===void 0&&(t=pe(e).getComputedStyle(e)),t.position===\"fixed\"}function Ws(e,t){t===void 0&&(t=pe(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[\"overflow\",\"overflowX\",\"overflowY\"].some(a=>{let i=t[a];return typeof i==\"string\"?n.test(i):!1})}function In(e,t){let n=[];function o(a){if(t!=null&&n.length>=t||!a)return n;if(Cn(a)&&a.scrollingElement!=null&&!n.includes(a.scrollingElement))return n.push(a.scrollingElement),n;if(!ft(a)||pr(a)||n.includes(a))return n;let i=pe(e).getComputedStyle(a);return a!==e&&Ws(a,i)&&n.push(a),Us(a,i)?n:o(a.parentNode)}return e?o(e):n}function La(e){let[t]=In(e,1);return t!=null?t:null}function mr(e){return!Ft||!e?null:Je(e)?e:wn(e)?Cn(e)||e===Qe(e).scrollingElement?window:ft(e)?e:null:null}function Ba(e){return Je(e)?e.scrollX:e.scrollLeft}function $a(e){return Je(e)?e.scrollY:e.scrollTop}function hr(e){return{x:Ba(e),y:$a(e)}}var ae;(function(e){e[e.Forward=1]=\"Forward\",e[e.Backward=-1]=\"Backward\"})(ae||(ae={}));function za(e){return!Ft||!e?!1:e===document.scrollingElement}function qa(e){let t={x:0,y:0},n=za(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},o={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height},a=e.scrollTop<=t.y,i=e.scrollLeft<=t.x,l=e.scrollTop>=o.y,u=e.scrollLeft>=o.x;return{isTop:a,isLeft:i,isBottom:l,isRight:u,maxScroll:o,minScroll:t}}var Gs={x:.2,y:.2};function Ys(e,t,n,o,a){let{top:i,left:l,right:u,bottom:c}=n;o===void 0&&(o=10),a===void 0&&(a=Gs);let{isTop:f,isBottom:m,isLeft:d,isRight:g}=qa(e),p={x:0,y:0},v={x:0,y:0},y={height:t.height*a.y,width:t.width*a.x};return!f&&i<=t.top+y.height?(p.y=ae.Backward,v.y=o*Math.abs((t.top+y.height-i)/y.height)):!m&&c>=t.bottom-y.height&&(p.y=ae.Forward,v.y=o*Math.abs((t.bottom-y.height-c)/y.height)),!g&&u>=t.right-y.width?(p.x=ae.Forward,v.x=o*Math.abs((t.right-y.width-u)/y.width)):!d&&l<=t.left+y.width&&(p.x=ae.Backward,v.x=o*Math.abs((t.left+y.width-l)/y.width)),{direction:p,speed:v}}function Ks(e){if(e===document.scrollingElement){let{innerWidth:i,innerHeight:l}=window;return{top:0,left:0,right:i,bottom:l,width:i,height:l}}let{top:t,left:n,right:o,bottom:a}=e.getBoundingClientRect();return{top:t,left:n,right:o,bottom:a,width:e.clientWidth,height:e.clientHeight}}function Ha(e){return e.reduce((t,n)=>et(t,hr(n)),Te)}function Xs(e){return e.reduce((t,n)=>t+Ba(n),0)}function Zs(e){return e.reduce((t,n)=>t+$a(n),0)}function Js(e,t){if(t===void 0&&(t=it),!e)return;let{top:n,left:o,bottom:a,right:i}=t(e);La(e)&&(a<=0||i<=0||n>=window.innerHeight||o>=window.innerWidth)&&e.scrollIntoView({block:\"center\",inline:\"center\"})}var Qs=[[\"x\",[\"left\",\"right\"],Xs],[\"y\",[\"top\",\"bottom\"],Zs]],_t=class{constructor(t,n){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let o=In(n),a=Ha(o);this.rect=S({},t),this.width=t.width,this.height=t.height;for(let[i,l,u]of Qs)for(let c of l)Object.defineProperty(this,c,{get:()=>{let f=u(o),m=a[i]-f;return this.rect[c]+m},enumerable:!0});Object.defineProperty(this,\"rect\",{enumerable:!1})}},rt=class{constructor(t){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(n=>{var o;return(o=this.target)==null?void 0:o.removeEventListener(...n)})},this.target=t}add(t,n,o){var a;(a=this.target)==null||a.addEventListener(t,n,o),this.listeners.push([t,n,o])}};function Rs(e){let{EventTarget:t}=pe(e);return e instanceof t?e:Qe(e)}function gr(e,t){let n=Math.abs(e.x),o=Math.abs(e.y);return typeof t==\"number\"?Math.sqrt(n**2+o**2)>t:\"x\"in t&&\"y\"in t?n>t.x&&o>t.y:\"x\"in t?n>t.x:\"y\"in t?o>t.y:!1}var ve;(function(e){e.Click=\"click\",e.DragStart=\"dragstart\",e.Keydown=\"keydown\",e.ContextMenu=\"contextmenu\",e.Resize=\"resize\",e.SelectionChange=\"selectionchange\",e.VisibilityChange=\"visibilitychange\"})(ve||(ve={}));function Oa(e){e.preventDefault()}function el(e){e.stopPropagation()}var W;(function(e){e.Space=\"Space\",e.Down=\"ArrowDown\",e.Right=\"ArrowRight\",e.Left=\"ArrowLeft\",e.Up=\"ArrowUp\",e.Esc=\"Escape\",e.Enter=\"Enter\",e.Tab=\"Tab\"})(W||(W={}));var ja={start:[W.Space,W.Enter],cancel:[W.Esc],end:[W.Space,W.Enter,W.Tab]},tl=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case W.Right:return B(S({},n),{x:n.x+25});case W.Left:return B(S({},n),{x:n.x-25});case W.Down:return B(S({},n),{y:n.y+25});case W.Up:return B(S({},n),{y:n.y-25})}},En=class{constructor(t){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=t;let{event:{target:n}}=t;this.props=t,this.listeners=new rt(Qe(n)),this.windowListeners=new rt(pe(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(ve.Resize,this.handleCancel),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(ve.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:t,onStart:n}=this.props,o=t.node.current;o&&Js(o),n(Te)}handleKeyDown(t){if(Nt(t)){let{active:n,context:o,options:a}=this.props,{keyboardCodes:i=ja,coordinateGetter:l=tl,scrollBehavior:u=\"smooth\"}=a,{code:c}=t;if(i.end.includes(c)){this.handleEnd(t);return}if(i.cancel.includes(c)){this.handleCancel(t);return}let{collisionRect:f}=o.current,m=f?{x:f.left,y:f.top}:Te;this.referenceCoordinates||(this.referenceCoordinates=m);let d=l(t,{active:n,context:o.current,currentCoordinates:m});if(d){let g=gt(d,m),p={x:0,y:0},{scrollableAncestors:v}=o.current;for(let y of v){let k=t.code,{isTop:E,isRight:w,isLeft:F,isBottom:_,maxScroll:z,minScroll:H}=qa(y),h=Ks(y),C={x:Math.min(k===W.Right?h.right-h.width/2:h.right,Math.max(k===W.Right?h.left:h.left+h.width/2,d.x)),y:Math.min(k===W.Down?h.bottom-h.height/2:h.bottom,Math.max(k===W.Down?h.top:h.top+h.height/2,d.y))},L=k===W.Right&&!w||k===W.Left&&!F,M=k===W.Down&&!_||k===W.Up&&!E;if(L&&C.x!==d.x){let D=y.scrollLeft+g.x,j=k===W.Right&&D<=z.x||k===W.Left&&D>=H.x;if(j&&!g.y){y.scrollTo({left:D,behavior:u});return}j?p.x=y.scrollLeft-D:p.x=k===W.Right?y.scrollLeft-z.x:y.scrollLeft-H.x,p.x&&y.scrollBy({left:-p.x,behavior:u});break}else if(M&&C.y!==d.y){let D=y.scrollTop+g.y,j=k===W.Down&&D<=z.y||k===W.Up&&D>=H.y;if(j&&!g.x){y.scrollTo({top:D,behavior:u});return}j?p.y=y.scrollTop-D:p.y=k===W.Down?y.scrollTop-z.y:y.scrollTop-H.y,p.y&&y.scrollBy({top:-p.y,behavior:u});break}}this.handleMove(t,et(gt(d,this.referenceCoordinates),p))}}}handleMove(t,n){let{onMove:o}=this.props;t.preventDefault(),o(n)}handleEnd(t){let{onEnd:n}=this.props;t.preventDefault(),this.detach(),n()}handleCancel(t){let{onCancel:n}=this.props;t.preventDefault(),this.detach(),n()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}};En.activators=[{eventName:\"onKeyDown\",handler:(e,t,n)=>{let{keyboardCodes:o=ja,onActivation:a}=t,{active:i}=n,{code:l}=e.nativeEvent;if(o.start.includes(l)){let u=i.activatorNode.current;return u&&e.target!==u?!1:(e.preventDefault(),a==null||a({event:e.nativeEvent}),!0)}return!1}}];function ka(e){return!!(e&&\"distance\"in e)}function Ta(e){return!!(e&&\"delay\"in e)}var Mt=class{constructor(t,n,o){var a;o===void 0&&(o=Rs(t.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=t,this.events=n;let{event:i}=t,{target:l}=i;this.props=t,this.events=n,this.document=Qe(l),this.documentListeners=new rt(this.document),this.listeners=new rt(o),this.windowListeners=new rt(pe(l)),this.initialCoordinates=(a=Dt(i))!=null?a:Te,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){let{events:t,props:{options:{activationConstraint:n,bypassActivationConstraint:o}}}=this;if(this.listeners.add(t.move.name,this.handleMove,{passive:!1}),this.listeners.add(t.end.name,this.handleEnd),t.cancel&&this.listeners.add(t.cancel.name,this.handleCancel),this.windowListeners.add(ve.Resize,this.handleCancel),this.windowListeners.add(ve.DragStart,Oa),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),this.windowListeners.add(ve.ContextMenu,Oa),this.documentListeners.add(ve.Keydown,this.handleKeydown),n){if(o!=null&&o({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Ta(n)){this.timeoutId=setTimeout(this.handleStart,n.delay),this.handlePending(n);return}if(ka(n)){this.handlePending(n);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(t,n){let{active:o,onPending:a}=this.props;a(o,t,this.initialCoordinates,n)}handleStart(){let{initialCoordinates:t}=this,{onStart:n}=this.props;t&&(this.activated=!0,this.documentListeners.add(ve.Click,el,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(ve.SelectionChange,this.removeTextSelection),n(t))}handleMove(t){var n;let{activated:o,initialCoordinates:a,props:i}=this,{onMove:l,options:{activationConstraint:u}}=i;if(!a)return;let c=(n=Dt(t))!=null?n:Te,f=gt(a,c);if(!o&&u){if(ka(u)){if(u.tolerance!=null&&gr(f,u.tolerance))return this.handleCancel();if(gr(f,u.distance))return this.handleStart()}if(Ta(u)&&gr(f,u.tolerance))return this.handleCancel();this.handlePending(u,f);return}t.cancelable&&t.preventDefault(),l(c)}handleEnd(){let{onAbort:t,onEnd:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleCancel(){let{onAbort:t,onCancel:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleKeydown(t){t.code===W.Esc&&this.handleCancel()}removeTextSelection(){var t;(t=this.document.getSelection())==null||t.removeAllRanges()}},nl={cancel:{name:\"pointercancel\"},move:{name:\"pointermove\"},end:{name:\"pointerup\"}},at=class extends Mt{constructor(t){let{event:n}=t,o=Qe(n.target);super(t,nl,o)}};at.activators=[{eventName:\"onPointerDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return!n.isPrimary||n.button!==0?!1:(o==null||o({event:n}),!0)}}];var rl={move:{name:\"mousemove\"},end:{name:\"mouseup\"}},br;(function(e){e[e.RightClick=2]=\"RightClick\"})(br||(br={}));var yr=class extends Mt{constructor(t){super(t,rl,Qe(t.event.target))}};yr.activators=[{eventName:\"onMouseDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return n.button===br.RightClick?!1:(o==null||o({event:n}),!0)}}];var xr={cancel:{name:\"touchcancel\"},move:{name:\"touchmove\"},end:{name:\"touchend\"}},xt=class extends Mt{constructor(t){super(t,xr)}static setup(){return window.addEventListener(xr.move.name,t,{capture:!1,passive:!1}),function(){window.removeEventListener(xr.move.name,t)};function t(){}}};xt.activators=[{eventName:\"onTouchStart\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t,{touches:a}=n;return a.length>1?!1:(o==null||o({event:n}),!0)}}];var At;(function(e){e[e.Pointer=0]=\"Pointer\",e[e.DraggableRect=1]=\"DraggableRect\"})(At||(At={}));var Fn;(function(e){e[e.TreeOrder=0]=\"TreeOrder\",e[e.ReversedTreeOrder=1]=\"ReversedTreeOrder\"})(Fn||(Fn={}));function ol(e){let{acceleration:t,activator:n=At.Pointer,canScroll:o,draggingRect:a,enabled:i,interval:l=5,order:u=Fn.TreeOrder,pointerCoordinates:c,scrollableAncestors:f,scrollableAncestorRects:m,delta:d,threshold:g}=e,p=il({delta:d,disabled:!i}),[v,y]=ha(),k=(0,x.useRef)({x:0,y:0}),E=(0,x.useRef)({x:0,y:0}),w=(0,x.useMemo)(()=>{switch(n){case At.Pointer:return c?{top:c.y,bottom:c.y,left:c.x,right:c.x}:null;case At.DraggableRect:return a}},[n,a,c]),F=(0,x.useRef)(null),_=(0,x.useCallback)(()=>{let H=F.current;if(!H)return;let h=k.current.x*E.current.x,C=k.current.y*E.current.y;H.scrollBy(h,C)},[]),z=(0,x.useMemo)(()=>u===Fn.TreeOrder?[...f].reverse():f,[u,f]);(0,x.useEffect)(()=>{if(!i||!f.length||!w){y();return}for(let H of z){if((o==null?void 0:o(H))===!1)continue;let h=f.indexOf(H),C=m[h];if(!C)continue;let{direction:L,speed:M}=Ys(H,C,w,t,g);for(let D of[\"x\",\"y\"])p[D][L[D]]||(M[D]=0,L[D]=0);if(M.x>0||M.y>0){y(),F.current=H,v(_,l),k.current=M,E.current=L;return}}k.current={x:0,y:0},E.current={x:0,y:0},y()},[t,_,o,y,i,l,JSON.stringify(w),JSON.stringify(p),v,f,z,m,JSON.stringify(g)])}var al={x:{[ae.Backward]:!1,[ae.Forward]:!1},y:{[ae.Backward]:!1,[ae.Forward]:!1}};function il(e){let{delta:t,disabled:n}=e,o=On(t);return mt(a=>{if(n||!o||!a)return al;let i={x:Math.sign(t.x-o.x),y:Math.sign(t.y-o.y)};return{x:{[ae.Backward]:a.x[ae.Backward]||i.x===-1,[ae.Forward]:a.x[ae.Forward]||i.x===1},y:{[ae.Backward]:a.y[ae.Backward]||i.y===-1,[ae.Forward]:a.y[ae.Forward]||i.y===1}}},[n,t,o])}function sl(e,t){let n=t!=null?e.get(t):void 0,o=n?n.node.current:null;return mt(a=>{var i;return t==null?null:(i=o!=null?o:a)!=null?i:null},[o,t])}function ll(e,t){return(0,x.useMemo)(()=>e.reduce((n,o)=>{let{sensor:a}=o,i=a.activators.map(l=>({eventName:l.eventName,handler:t(l.handler,o)}));return[...n,...i]},[]),[e,t])}var Pt;(function(e){e[e.Always=0]=\"Always\",e[e.BeforeDragging=1]=\"BeforeDragging\",e[e.WhileDragging=2]=\"WhileDragging\"})(Pt||(Pt={}));var vr;(function(e){e.Optimized=\"optimized\"})(vr||(vr={}));var Ea=new Map;function dl(e,t){let{dragging:n,dependencies:o,config:a}=t,[i,l]=(0,x.useState)(null),{frequency:u,measure:c,strategy:f}=a,m=(0,x.useRef)(e),d=k(),g=pt(d),p=(0,x.useCallback)(function(E){E===void 0&&(E=[]),!g.current&&l(w=>w===null?E:w.concat(E.filter(F=>!w.includes(F))))},[g]),v=(0,x.useRef)(null),y=mt(E=>{if(d&&!n)return Ea;if(!E||E===Ea||m.current!==e||i!=null){let w=new Map;for(let F of e){if(!F)continue;if(i&&i.length>0&&!i.includes(F.id)&&F.rect.current){w.set(F.id,F.rect.current);continue}let _=F.node.current,z=_?new _t(c(_),_):null;F.rect.current=z,z&&w.set(F.id,z)}return w}return E},[e,i,n,d,c]);return(0,x.useEffect)(()=>{m.current=e},[e]),(0,x.useEffect)(()=>{d||p()},[n,d]),(0,x.useEffect)(()=>{i&&i.length>0&&l(null)},[JSON.stringify(i)]),(0,x.useEffect)(()=>{d||typeof u!=\"number\"||v.current!==null||(v.current=setTimeout(()=>{p(),v.current=null},u))},[u,d,p,...o]),{droppableRects:y,measureDroppableContainers:p,measuringScheduled:i!=null};function k(){switch(f){case Pt.Always:return!1;case Pt.BeforeDragging:return n;default:return!n}}}function Va(e,t){return mt(n=>e?n||(typeof t==\"function\"?t(e):e):null,[t,e])}function ul(e,t){return Va(e,t)}function cl(e){let{callback:t,disabled:n}=e,o=Sn(t),a=(0,x.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.MutationObserver>\"u\")return;let{MutationObserver:i}=window;return new i(o)},[o,n]);return(0,x.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function Nn(e){let{callback:t,disabled:n}=e,o=Sn(t),a=(0,x.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.ResizeObserver>\"u\")return;let{ResizeObserver:i}=window;return new i(o)},[n]);return(0,x.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function fl(e){return new _t(it(e),e)}function Fa(e,t,n){t===void 0&&(t=fl);let[o,a]=(0,x.useState)(null);function i(){a(c=>{if(!e)return null;if(e.isConnected===!1){var f;return(f=c!=null?c:n)!=null?f:null}let m=t(e);return JSON.stringify(c)===JSON.stringify(m)?c:m})}let l=cl({callback(c){if(e)for(let f of c){let{type:m,target:d}=f;if(m===\"childList\"&&d instanceof HTMLElement&&d.contains(e)){i();break}}}}),u=Nn({callback:i});return ye(()=>{i(),e?(u==null||u.observe(e),l==null||l.observe(document.body,{childList:!0,subtree:!0})):(u==null||u.disconnect(),l==null||l.disconnect())},[e]),o}function pl(e){let t=Va(e);return Pa(e,t)}var Ia=[];function ml(e){let t=(0,x.useRef)(e),n=mt(o=>e?o&&o!==Ia&&e&&t.current&&e.parentNode===t.current.parentNode?o:In(e):Ia,[e]);return(0,x.useEffect)(()=>{t.current=e},[e]),n}function gl(e){let[t,n]=(0,x.useState)(null),o=(0,x.useRef)(e),a=(0,x.useCallback)(i=>{let l=mr(i.target);l&&n(u=>u?(u.set(l,hr(l)),new Map(u)):null)},[]);return(0,x.useEffect)(()=>{let i=o.current;if(e!==i){l(i);let u=e.map(c=>{let f=mr(c);return f?(f.addEventListener(\"scroll\",a,{passive:!0}),[f,hr(f)]):null}).filter(c=>c!=null);n(u.length?new Map(u):null),o.current=e}return()=>{l(e),l(i)};function l(u){u.forEach(c=>{let f=mr(c);f==null||f.removeEventListener(\"scroll\",a)})}},[a,e]),(0,x.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((i,l)=>et(i,l),Te):Ha(e):Te,[e,t])}function Na(e,t){t===void 0&&(t=[]);let n=(0,x.useRef)(null);return(0,x.useEffect)(()=>{n.current=null},t),(0,x.useEffect)(()=>{let o=e!==Te;o&&!n.current&&(n.current=e),!o&&n.current&&(n.current=null)},[e]),n.current?gt(e,n.current):Te}function xl(e){(0,x.useEffect)(()=>{if(!Ft)return;let t=e.map(n=>{let{sensor:o}=n;return o.setup==null?void 0:o.setup()});return()=>{for(let n of t)n==null||n()}},e.map(t=>{let{sensor:n}=t;return n}))}function hl(e,t){return(0,x.useMemo)(()=>e.reduce((n,o)=>{let{eventName:a,handler:i}=o;return n[a]=l=>{i(l,t)},n},{}),[e,t])}function Ua(e){return(0,x.useMemo)(()=>e?Vs(e):null,[e])}var Da=[];function bl(e,t){t===void 0&&(t=it);let[n]=e,o=Ua(n?pe(n):null),[a,i]=(0,x.useState)(Da);function l(){i(()=>e.length?e.map(c=>za(c)?o:new _t(t(c),c)):Da)}let u=Nn({callback:l});return ye(()=>{u==null||u.disconnect(),l(),e.forEach(c=>u==null?void 0:u.observe(c))},[e]),a}function yl(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return ft(t)?t:e}function vl(e){let{measure:t}=e,[n,o]=(0,x.useState)(null),a=(0,x.useCallback)(f=>{for(let{target:m}of f)if(ft(m)){o(d=>{let g=t(m);return d?B(S({},d),{width:g.width,height:g.height}):g});break}},[t]),i=Nn({callback:a}),l=(0,x.useCallback)(f=>{let m=yl(f);i==null||i.disconnect(),m&&(i==null||i.observe(m)),o(m?t(m):null)},[t,i]),[u,c]=It(l);return(0,x.useMemo)(()=>({nodeRef:u,rect:n,setRef:c}),[n,u,c])}var wl=[{sensor:at,options:{}},{sensor:En,options:{}}],Cl={current:{}},kn={draggable:{measure:Sa},droppable:{measure:Sa,strategy:Pt.WhileDragging,frequency:vr.Optimized},dragOverlay:{measure:it}},ot=class extends Map{get(t){var n;return t!=null&&(n=super.get(t))!=null?n:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(t=>{let{disabled:n}=t;return!n})}getNodeFor(t){var n,o;return(n=(o=this.get(t))==null?void 0:o.node.current)!=null?n:void 0}},Sl={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new ot,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Tn},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:kn,measureDroppableContainers:Tn,windowRect:null,measuringScheduled:!1},Ol={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:\"\"},dispatch:Tn,draggableNodes:new Map,over:null,measureDroppableContainers:Tn},Dn=(0,x.createContext)(Ol),Wa=(0,x.createContext)(Sl);function kl(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new ot}}}function Tl(e,t){switch(t.type){case te.DragStart:return B(S({},e),{draggable:B(S({},e.draggable),{initialCoordinates:t.initialCoordinates,active:t.active})});case te.DragMove:return e.draggable.active==null?e:B(S({},e),{draggable:B(S({},e.draggable),{translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}})});case te.DragEnd:case te.DragCancel:return B(S({},e),{draggable:B(S({},e.draggable),{active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}})});case te.RegisterDroppable:{let{element:n}=t,{id:o}=n,a=new ot(e.droppable.containers);return a.set(o,n),B(S({},e),{droppable:B(S({},e.droppable),{containers:a})})}case te.SetDroppableDisabled:{let{id:n,key:o,disabled:a}=t,i=e.droppable.containers.get(n);if(!i||o!==i.key)return e;let l=new ot(e.droppable.containers);return l.set(n,B(S({},i),{disabled:a})),B(S({},e),{droppable:B(S({},e.droppable),{containers:l})})}case te.UnregisterDroppable:{let{id:n,key:o}=t,a=e.droppable.containers.get(n);if(!a||o!==a.key)return e;let i=new ot(e.droppable.containers);return i.delete(n),B(S({},e),{droppable:B(S({},e.droppable),{containers:i})})}default:return e}}function El(e){let{disabled:t}=e,{active:n,activatorEvent:o,draggableNodes:a}=(0,x.useContext)(Dn),i=On(o),l=On(n==null?void 0:n.id);return(0,x.useEffect)(()=>{if(!t&&!o&&i&&l!=null){if(!Nt(i)||document.activeElement===i.target)return;let u=a.get(l);if(!u)return;let{activatorNode:c,node:f}=u;if(!c.current&&!f.current)return;requestAnimationFrame(()=>{for(let m of[c.current,f.current]){if(!m)continue;let d=ya(m);if(d){d.focus();break}}})}},[o,t,a,l,i]),null}function Fl(e,t){let a=t,{transform:n}=a,o=Gn(a,[\"transform\"]);return e!=null&&e.length?e.reduce((i,l)=>l(S({transform:i},o)),n):n}function Il(e){return(0,x.useMemo)(()=>({draggable:S(S({},kn.draggable),e==null?void 0:e.draggable),droppable:S(S({},kn.droppable),e==null?void 0:e.droppable),dragOverlay:S(S({},kn.dragOverlay),e==null?void 0:e.dragOverlay)}),[e==null?void 0:e.draggable,e==null?void 0:e.droppable,e==null?void 0:e.dragOverlay])}function Nl(e){let{activeNode:t,measure:n,initialRect:o,config:a=!0}=e,i=(0,x.useRef)(!1),{x:l,y:u}=typeof a==\"boolean\"?{x:a,y:a}:a;ye(()=>{if(!l&&!u||!t){i.current=!1;return}if(i.current||!o)return;let f=t==null?void 0:t.node.current;if(!f||f.isConnected===!1)return;let m=n(f),d=Pa(m,o);if(l||(d.x=0),u||(d.y=0),i.current=!0,Math.abs(d.x)>0||Math.abs(d.y)>0){let g=La(f);g&&g.scrollBy({top:d.y,left:d.x})}},[t,l,u,o,n])}var Ga=(0,x.createContext)(B(S({},Te),{scaleX:1,scaleY:1})),Ue;(function(e){e[e.Uninitialized=0]=\"Uninitialized\",e[e.Initializing=1]=\"Initializing\",e[e.Initialized=2]=\"Initialized\"})(Ue||(Ue={}));var Cr=(0,x.memo)(function(t){var n,o,a,i;let O=t,{id:l,accessibility:u,autoScroll:c=!0,children:f,sensors:m=wl,collisionDetection:d=Ls,measuring:g,modifiers:p}=O,v=Gn(O,[\"id\",\"accessibility\",\"autoScroll\",\"children\",\"sensors\",\"collisionDetection\",\"measuring\",\"modifiers\"]),y=(0,x.useReducer)(Tl,void 0,kl),[k,E]=y,[w,F]=Ns(),[_,z]=(0,x.useState)(Ue.Uninitialized),H=_===Ue.Initialized,{draggable:{active:h,nodes:C,translate:L},droppable:{containers:M}}=k,D=h!=null?C.get(h):null,j=(0,x.useRef)({initial:null,translated:null}),ne=(0,x.useMemo)(()=>{var N;return h!=null?{id:h,data:(N=D==null?void 0:D.data)!=null?N:Cl,rect:j}:null},[h,D]),ie=(0,x.useRef)(null),[we,Ce]=(0,x.useState)(null),[J,Ee]=(0,x.useState)(null),ue=pt(v,Object.values(v)),T=Re(\"DndDescribedBy\",l),A=(0,x.useMemo)(()=>M.getEnabled(),[M]),$=Il(g),{droppableRects:U,measureDroppableContainers:me,measuringScheduled:Se}=dl(A,{dragging:H,dependencies:[L.x,L.y],config:$.droppable}),de=sl(C,h),Pe=(0,x.useMemo)(()=>J?Dt(J):null,[J]),Oe=b(),ge=ul(de,$.draggable.measure);Nl({activeNode:h!=null?C.get(h):null,config:Oe.layoutShiftCompensation,initialRect:ge,measure:$.draggable.measure});let q=Fa(de,$.draggable.measure,ge),We=Fa(de?de.parentElement:null),xe=(0,x.useRef)({activatorEvent:null,active:null,activeNode:de,collisionRect:null,collisions:null,droppableRects:U,draggableNodes:C,draggingNode:null,draggingNodeRect:null,droppableContainers:M,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),Le=M.getNodeFor((n=xe.current.over)==null?void 0:n.id),ke=vl({measure:$.dragOverlay.measure}),Be=(o=ke.nodeRef.current)!=null?o:de,_e=H?(a=ke.rect)!=null?a:q:null,Ht=!!(ke.nodeRef.current&&ke.rect),jt=pl(Ht?null:q),yt=Ua(Be?pe(Be):null),Fe=ml(H?Le!=null?Le:de:null),lt=bl(Fe),dt=Fl(p,{transform:{x:L.x-jt.x,y:L.y-jt.y,scaleX:1,scaleY:1},activatorEvent:J,active:ne,activeNodeRect:q,containerNodeRect:We,draggingNodeRect:_e,over:xe.current.over,overlayNodeRect:ke.rect,scrollableAncestors:Fe,scrollableAncestorRects:lt,windowRect:yt}),Vt=Pe?et(Pe,L):null,Ut=gl(Fe),Bn=Na(Ut),$n=Na(Ut,[q]),$e=et(dt,Bn),ze=_e?zs(_e,dt):null,Ge=ne&&ze?d({active:ne,collisionRect:ze,droppableRects:U,droppableContainers:A,pointerCoordinates:Vt}):null,Wt=Ma(Ge,\"id\"),[Ie,Gt]=(0,x.useState)(null),zn=Ht?dt:et(dt,$n),qn=Bs(zn,(i=Ie==null?void 0:Ie.rect)!=null?i:null,q),vt=(0,x.useRef)(null),Yt=(0,x.useCallback)((N,P)=>{let{sensor:V,options:fe}=P;if(ie.current==null)return;let G=C.get(ie.current);if(!G)return;let se=N.nativeEvent,Ne=new V({active:ie.current,activeNode:G,event:se,options:fe,context:xe,onAbort(le){if(!C.get(le))return;let{onDragAbort:De}=ue.current,Me={id:le};De==null||De(Me),w({type:\"onDragAbort\",event:Me})},onPending(le,qe,De,Me){if(!C.get(le))return;let{onDragPending:Ct}=ue.current,He={id:le,constraint:qe,initialCoordinates:De,offset:Me};Ct==null||Ct(He),w({type:\"onDragPending\",event:He})},onStart(le){let qe=ie.current;if(qe==null)return;let De=C.get(qe);if(!De)return;let{onDragStart:Me}=ue.current,wt={activatorEvent:se,active:{id:qe,data:De.data,rect:j}};(0,nt.unstable_batchedUpdates)(()=>{Me==null||Me(wt),z(Ue.Initializing),E({type:te.DragStart,initialCoordinates:le,active:qe}),w({type:\"onDragStart\",event:wt}),Ce(vt.current),Ee(se)})},onMove(le){E({type:te.DragMove,coordinates:le})},onEnd:ut(te.DragEnd),onCancel:ut(te.DragCancel)});vt.current=Ne;function ut(le){return async function(){let{active:De,collisions:Me,over:wt,scrollAdjustedTranslate:Ct}=xe.current,He=null;if(De&&Ct){let{cancelDrop:St}=ue.current;He={activatorEvent:se,active:De,collisions:Me,delta:Ct,over:wt},le===te.DragEnd&&typeof St==\"function\"&&await Promise.resolve(St(He))&&(le=te.DragCancel)}ie.current=null,(0,nt.unstable_batchedUpdates)(()=>{E({type:le}),z(Ue.Uninitialized),Gt(null),Ce(null),Ee(null),vt.current=null;let St=le===te.DragEnd?\"onDragEnd\":\"onDragCancel\";if(He){let Un=ue.current[St];Un==null||Un(He),w({type:St,event:He})}})}}},[C]),Hn=(0,x.useCallback)((N,P)=>(V,fe)=>{let G=V.nativeEvent,se=C.get(fe);if(ie.current!==null||!se||G.dndKit||G.defaultPrevented)return;let Ne={active:se};N(V,P.options,Ne)===!0&&(G.dndKit={capturedBy:P.sensor},ie.current=fe,Yt(V,P))},[C,Yt]),ce=ll(m,Hn);xl(m),ye(()=>{q&&_===Ue.Initializing&&z(Ue.Initialized)},[q,_]),(0,x.useEffect)(()=>{let{onDragMove:N}=ue.current,{active:P,activatorEvent:V,collisions:fe,over:G}=xe.current;if(!P||!V)return;let se={active:P,activatorEvent:V,collisions:fe,delta:{x:$e.x,y:$e.y},over:G};(0,nt.unstable_batchedUpdates)(()=>{N==null||N(se),w({type:\"onDragMove\",event:se})})},[$e.x,$e.y]),(0,x.useEffect)(()=>{let{active:N,activatorEvent:P,collisions:V,droppableContainers:fe,scrollAdjustedTranslate:G}=xe.current;if(!N||ie.current==null||!P||!G)return;let{onDragOver:se}=ue.current,Ne=fe.get(Wt),ut=Ne&&Ne.rect.current?{id:Ne.id,rect:Ne.rect.current,data:Ne.data,disabled:Ne.disabled}:null,le={active:N,activatorEvent:P,collisions:V,delta:{x:G.x,y:G.y},over:ut};(0,nt.unstable_batchedUpdates)(()=>{Gt(ut),se==null||se(le),w({type:\"onDragOver\",event:le})})},[Wt]),ye(()=>{xe.current={activatorEvent:J,active:ne,activeNode:de,collisionRect:ze,collisions:Ge,droppableRects:U,draggableNodes:C,draggingNode:Be,draggingNodeRect:_e,droppableContainers:M,over:Ie,scrollableAncestors:Fe,scrollAdjustedTranslate:$e},j.current={initial:_e,translated:ze}},[ne,de,Ge,ze,C,Be,_e,U,M,Ie,Fe,$e]),ol(B(S({},Oe),{delta:L,draggingRect:ze,pointerCoordinates:Vt,scrollableAncestors:Fe,scrollableAncestorRects:lt}));let jn=(0,x.useMemo)(()=>({active:ne,activeNode:de,activeNodeRect:q,activatorEvent:J,collisions:Ge,containerNodeRect:We,dragOverlay:ke,draggableNodes:C,droppableContainers:M,droppableRects:U,over:Ie,measureDroppableContainers:me,scrollableAncestors:Fe,scrollableAncestorRects:lt,measuringConfiguration:$,measuringScheduled:Se,windowRect:yt}),[ne,de,q,J,Ge,We,ke,C,M,U,Ie,me,Fe,lt,$,Se,yt]),Vn=(0,x.useMemo)(()=>({activatorEvent:J,activators:ce,active:ne,activeNodeRect:q,ariaDescribedById:{draggable:T},dispatch:E,draggableNodes:C,over:Ie,measureDroppableContainers:me}),[J,ce,ne,q,E,T,C,Ie,me]);return x.default.createElement(_a.Provider,{value:F},x.default.createElement(Dn.Provider,{value:Vn},x.default.createElement(Wa.Provider,{value:jn},x.default.createElement(Ga.Provider,{value:qn},f)),x.default.createElement(El,{disabled:(u==null?void 0:u.restoreFocus)===!1})),x.default.createElement(_s,B(S({},u),{hiddenTextDescribedById:T})));function b(){let N=(we==null?void 0:we.autoScrollEnabled)===!1,P=typeof c==\"object\"?c.enabled===!1:c===!1,V=H&&!N&&!P;return typeof c==\"object\"?B(S({},c),{enabled:V}):{enabled:V}}}),Dl=(0,x.createContext)(null),Aa=\"button\",Al=\"Draggable\";function Ya(e){let{id:t,data:n,disabled:o=!1,attributes:a}=e,i=Re(Al),{activators:l,activatorEvent:u,active:c,activeNodeRect:f,ariaDescribedById:m,draggableNodes:d,over:g}=(0,x.useContext)(Dn),{role:p=Aa,roleDescription:v=\"draggable\",tabIndex:y=0}=a!=null?a:{},k=(c==null?void 0:c.id)===t,E=(0,x.useContext)(k?Ga:Dl),[w,F]=It(),[_,z]=It(),H=hl(l,t),h=pt(n);ye(()=>(d.set(t,{id:t,key:i,node:w,activatorNode:_,data:h}),()=>{let L=d.get(t);L&&L.key===i&&d.delete(t)}),[d,t]);let C=(0,x.useMemo)(()=>({role:p,tabIndex:y,\"aria-disabled\":o,\"aria-pressed\":k&&p===Aa?!0:void 0,\"aria-roledescription\":v,\"aria-describedby\":m.draggable}),[o,p,y,k,v,m.draggable]);return{active:c,activatorEvent:u,activeNodeRect:f,attributes:C,isDragging:k,listeners:o?void 0:H,node:w,over:g,setNodeRef:F,setActivatorNodeRef:z,transform:E}}function Ka(){return(0,x.useContext)(Wa)}var _l=\"Droppable\",Ml={timeout:25};function Xa(e){let{data:t,disabled:n=!1,id:o,resizeObserverConfig:a}=e,i=Re(_l),{active:l,dispatch:u,over:c,measureDroppableContainers:f}=(0,x.useContext)(Dn),m=(0,x.useRef)({disabled:n}),d=(0,x.useRef)(!1),g=(0,x.useRef)(null),p=(0,x.useRef)(null),{disabled:v,updateMeasurementsFor:y,timeout:k}=S(S({},Ml),a),E=pt(y!=null?y:o),w=(0,x.useCallback)(()=>{if(!d.current){d.current=!0;return}p.current!=null&&clearTimeout(p.current),p.current=setTimeout(()=>{f(Array.isArray(E.current)?E.current:[E.current]),p.current=null},k)},[k]),F=Nn({callback:w,disabled:v||!l}),_=(0,x.useCallback)((C,L)=>{F&&(L&&(F.unobserve(L),d.current=!1),C&&F.observe(C))},[F]),[z,H]=It(_),h=pt(t);return(0,x.useEffect)(()=>{!F||!z.current||(F.disconnect(),d.current=!1,F.observe(z.current))},[z,F]),(0,x.useEffect)(()=>(u({type:te.RegisterDroppable,element:{id:o,key:i,disabled:n,node:z,rect:g,data:h}}),()=>u({type:te.UnregisterDroppable,key:i,id:o})),[o]),(0,x.useEffect)(()=>{n!==m.current.disabled&&(u({type:te.SetDroppableDisabled,id:o,key:i,disabled:n}),m.current.disabled=n)},[o,i,n,u]),{active:l,rect:g,isOver:(c==null?void 0:c.id)===o,node:z,over:c,setNodeRef:H}}var Sr=e=>{let{transform:t}=e;return B(S({},t),{x:0})};var ee=Y(Q());function Bt(e,t,n){let o=e.slice();return o.splice(n<0?o.length+n:n,0,o.splice(t,1)[0]),o}function Pl(e,t){return e.reduce((n,o,a)=>{let i=t.get(o);return i&&(n[a]=i),n},Array(e.length))}function An(e){return e!==null&&e>=0}function Ll(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function Bl(e){return typeof e==\"boolean\"?{draggable:e,droppable:e}:e}var Za=e=>{let{rects:t,activeIndex:n,overIndex:o,index:a}=e,i=Bt(t,o,n),l=t[a],u=i[a];return!u||!l?null:{x:u.left-l.left,y:u.top-l.top,scaleX:u.width/l.width,scaleY:u.height/l.height}};var _n={scaleX:1,scaleY:1},Or=e=>{var t;let{activeIndex:n,activeNodeRect:o,index:a,rects:i,overIndex:l}=e,u=(t=i[n])!=null?t:o;if(!u)return null;if(a===n){let f=i[l];return f?S({x:0,y:n<l?f.top+f.height-(u.top+u.height):f.top-u.top},_n):null}let c=$l(i,a,n);return a>n&&a<=l?S({x:0,y:-u.height-c},_n):a<n&&a>=l?S({x:0,y:u.height+c},_n):S({x:0,y:0},_n)};function $l(e,t,n){let o=e[t],a=e[t-1],i=e[t+1];return o?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=ee.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:c,over:f,measureDroppableContainers:m}=Ka(),d=Re(Ja,n),g=u.rect!==null,p=(0,ee.useMemo)(()=>o.map(H=>typeof H==\"object\"&&\"id\"in H?H.id:H),[o]),v=l!=null,y=l?p.indexOf(l.id):-1,k=f?p.indexOf(f.id):-1,E=(0,ee.useRef)(p),w=!Ll(p,E.current),F=k!==-1&&y===-1||w,_=Bl(i);ye(()=>{w&&v&&m(p)},[w,p,v,m]),(0,ee.useEffect)(()=>{E.current=p},[p]);let z=(0,ee.useMemo)(()=>({activeIndex:y,containerId:d,disabled:_,disableTransforms:F,items:p,overIndex:k,useDragOverlay:g,sortedRects:Pl(p,c),strategy:a}),[y,d,_.draggable,_.droppable,F,p,k,c,g,a]);return ee.default.createElement(Qa.Provider,{value:z},t)}var zl=e=>{let{id:t,items:n,activeIndex:o,overIndex:a}=e;return Bt(n,o,a).indexOf(t)},ql=e=>{let{containerId:t,isSorting:n,wasDragging:o,index:a,items:i,newIndex:l,previousItems:u,previousContainerId:c,transition:f}=e;return!f||!o||u!==i&&a===l?!1:n?!0:l!==a&&t===c},Hl={duration:200,easing:\"ease\"},Ra=\"transform\",jl=Ve.Transition.toString({property:Ra,duration:0,easing:\"linear\"}),Vl={roleDescription:\"sortable\"};function Ul(e){let{disabled:t,index:n,node:o,rect:a}=e,[i,l]=(0,ee.useState)(null),u=(0,ee.useRef)(n);return ye(()=>{if(!t&&n!==u.current&&o.current){let c=a.current;if(c){let f=it(o.current,{ignoreTransform:!0}),m={x:c.left-f.left,y:c.top-f.top,scaleX:c.width/f.width,scaleY:c.height/f.height};(m.x||m.y)&&l(m)}}n!==u.current&&(u.current=n)},[t,n,o,a]),(0,ee.useEffect)(()=>{i&&l(null)},[i]),i}function Tr(e){let{animateLayoutChanges:t=ql,attributes:n,disabled:o,data:a,getNewIndex:i=zl,id:l,strategy:u,resizeObserverConfig:c,transition:f=Hl}=e,{items:m,containerId:d,activeIndex:g,disabled:p,disableTransforms:v,sortedRects:y,overIndex:k,useDragOverlay:E,strategy:w}=(0,ee.useContext)(Qa),F=Wl(o,p),_=m.indexOf(l),z=(0,ee.useMemo)(()=>S({sortable:{containerId:d,index:_,items:m}},a),[d,a,_,m]),H=(0,ee.useMemo)(()=>m.slice(m.indexOf(l)),[m,l]),{rect:h,node:C,isOver:L,setNodeRef:M}=Xa({id:l,data:z,disabled:F.droppable,resizeObserverConfig:S({updateMeasurementsFor:H},c)}),{active:D,activatorEvent:j,activeNodeRect:ne,attributes:ie,setNodeRef:we,listeners:Ce,isDragging:J,over:Ee,setActivatorNodeRef:ue,transform:T}=Ya({id:l,data:z,attributes:S(S({},Vl),n),disabled:F.draggable}),A=xa(M,we),$=!!D,U=$&&!v&&An(g)&&An(k),me=!E&&J,Se=me&&U?T:null,de=u!=null?u:w,Pe=U?Se!=null?Se:de({rects:y,activeNodeRect:ne,activeIndex:g,overIndex:k,index:_}):null,Oe=An(g)&&An(k)?i({id:l,items:m,activeIndex:g,overIndex:k}):_,ge=D==null?void 0:D.id,q=(0,ee.useRef)({activeId:ge,items:m,newIndex:Oe,containerId:d}),We=m!==q.current.items,xe=t({active:D,containerId:d,isDragging:J,isSorting:$,id:l,index:_,items:m,newIndex:q.current.newIndex,previousItems:q.current.items,previousContainerId:q.current.containerId,transition:f,wasDragging:q.current.activeId!=null}),Le=Ul({disabled:!xe,index:_,node:C,rect:h});return(0,ee.useEffect)(()=>{$&&q.current.newIndex!==Oe&&(q.current.newIndex=Oe),d!==q.current.containerId&&(q.current.containerId=d),m!==q.current.items&&(q.current.items=m)},[$,Oe,d,m]),(0,ee.useEffect)(()=>{if(ge===q.current.activeId)return;if(ge!=null&&q.current.activeId==null){q.current.activeId=ge;return}let Be=setTimeout(()=>{q.current.activeId=ge},50);return()=>clearTimeout(Be)},[ge]),{active:D,activeIndex:g,attributes:ie,data:z,rect:h,index:_,newIndex:Oe,items:m,isOver:L,isSorting:$,isDragging:J,listeners:Ce,node:C,overIndex:k,over:Ee,setNodeRef:A,setActivatorNodeRef:ue,setDroppableNodeRef:M,setDraggableNodeRef:we,transform:Le!=null?Le:Pe,transition:ke()};function ke(){if(Le||We&&q.current.newIndex===_)return jl;if(!(me&&!Nt(j)||!f)&&($||xe))return Ve.Transition.toString(B(S({},f),{property:Ra}))}}function Wl(e,t){var n,o;return typeof e==\"boolean\"?{draggable:e,droppable:!1}:{draggable:(n=e==null?void 0:e.draggable)!=null?n:t.draggable,droppable:(o=e==null?void 0:e.droppable)!=null?o:t.droppable}}var Lf=[W.Down,W.Right,W.Up,W.Left];if(typeof window<\"u\"){let e=document.createElement(\"style\");e.textContent=\".container {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n flex: 1;\\n width: 100%;\\n padding: 16px;\\n box-sizing: border-box;\\n background: #F2F2F7;\\n}\\n.qrcode-card {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n max-width: 360px;\\n margin: 0 auto;\\n padding: 24px 20px;\\n}\\n.qrcode-wrapper {\\n position: relative;\\n cursor: pointer;\\n margin-bottom: 24px;\\n display: flex;\\n justify-content: center;\\n}\\n.qrcode-wrapper:hover .qrcode-glow {\\n opacity: 0.4;\\n}\\n.qrcode-glow {\\n position: absolute;\\n inset: -4px;\\n background: linear-gradient(135deg, #60a5fa 0%, #a78bfa 100%);\\n border-radius: 24px;\\n filter: blur(12px);\\n opacity: 0.2;\\n transition: opacity 0.3s ease;\\n z-index: 0;\\n}\\n.qrcode-container {\\n position: relative;\\n background: #fff;\\n padding: 16px;\\n border-radius: 20px;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n z-index: 1;\\n}\\n.qrcode-image {\\n width: 160px;\\n height: 160px;\\n border-radius: 12px;\\n object-fit: cover;\\n transition: opacity 0.3s ease;\\n}\\n.qrcode-image--loading {\\n opacity: 0.3;\\n}\\n.qrcode-overlay {\\n position: absolute;\\n inset: 0;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(4px);\\n border-radius: 20px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 12px;\\n z-index: 10;\\n}\\n.qrcode-overlay span {\\n font-size: 12px;\\n font-weight: 500;\\n color: #8E8E93;\\n letter-spacing: 0.5px;\\n}\\n.qrcode-spinner {\\n width: 32px;\\n height: 32px;\\n border: 2px solid rgba(59, 130, 246, 0.2);\\n border-top-color: #3b82f6;\\n border-radius: 50%;\\n animation: spin 0.8s linear infinite;\\n}\\n@keyframes spin {\\n to {\\n transform: rotate(360deg);\\n }\\n}\\n.qrcode-status {\\n position: absolute;\\n bottom: -14px;\\n left: 50%;\\n transform: translateX(-50%);\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 4px 12px;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(8px);\\n border-radius: 12px;\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);\\n z-index: 20;\\n white-space: nowrap;\\n}\\n.status-dot {\\n width: 6px;\\n height: 6px;\\n border-radius: 50%;\\n flex-shrink: 0;\\n transition: background-color 0.3s ease;\\n}\\n.status-dot--pulse {\\n animation: pulse 1.5s ease-in-out infinite;\\n}\\n@keyframes pulse {\\n 0%,\\n 100% {\\n opacity: 1;\\n }\\n 50% {\\n opacity: 0.5;\\n }\\n}\\n.status-text {\\n font-size: 10px;\\n font-weight: 600;\\n color: #8E8E93;\\n text-transform: uppercase;\\n letter-spacing: 0.5px;\\n white-space: nowrap;\\n}\\n.cookie-result-wrapper {\\n width: 100%;\\n margin-bottom: 20px;\\n}\\n.cookie-result {\\n width: 100%;\\n height: 120px;\\n padding: 14px;\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 16px;\\n font-size: 12px;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n color: #1C1C1E;\\n resize: none;\\n outline: none;\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04);\\n transition: background-color 0.2s ease, box-shadow 0.2s ease;\\n box-sizing: border-box;\\n}\\n.cookie-result::placeholder {\\n color: #8E8E93;\\n}\\n.cookie-result:focus {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04), 0 0 0 2px rgba(59, 130, 246, 0.2);\\n}\\n.action-buttons {\\n display: grid;\\n grid-template-columns: 1fr 1fr;\\n gap: 12px;\\n width: 100%;\\n}\\n.action-btn {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n padding: 14px 20px;\\n border-radius: 16px;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n border: none;\\n outline: none;\\n}\\n.action-btn:active {\\n transform: scale(0.98);\\n}\\n.action-btn--primary {\\n background: #1C1C1E;\\n color: #fff;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\\n}\\n.action-btn--primary:hover {\\n background: #2C2C2E;\\n}\\n.action-btn--secondary {\\n background: #fff;\\n color: #1C1C1E;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\\n}\\n.action-btn--secondary:hover {\\n background: #F9F9F9;\\n}\\n.btn-icon {\\n display: block;\\n flex-shrink: 0;\\n width: 16px;\\n height: 16px;\\n opacity: 0.7;\\n}\\n.btn-icon--login {\\n transform: translateY(1px);\\n}\\n.dynamic-delete-button {\\n position: relative;\\n top: 2px;\\n margin: 0 8px;\\n color: #555;\\n font-size: 18px;\\n cursor: pointer;\\n transition: all 0.3s;\\n}\\n.dynamic-delete-button:hover {\\n color: #777;\\n}\\n.dynamic-delete-button[disabled] {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n.domain-edit-modal {\\n --domain-action-size: 32px;\\n --domain-action-gap: 8px;\\n --domain-action-total: calc(var(--domain-action-size) + var(--domain-action-gap));\\n --domain-row-gap: 12px;\\n --domain-label-width: 72px;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label {\\n flex: 0 0 var(--domain-label-width) !important;\\n max-width: var(--domain-label-width) !important;\\n padding-left: 8px;\\n padding-right: 12px;\\n padding-bottom: 0 !important;\\n display: flex !important;\\n align-items: center !important;\\n height: 32px !important;\\n text-align: right;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label > label {\\n height: 32px !important;\\n line-height: 32px !important;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-control {\\n flex: 1 1 auto !important;\\n max-width: calc(100% - var(--domain-label-width)) !important;\\n min-width: 0;\\n}\\n.domain-edit-modal .domain-edit-aligned-input {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .domain-edit-full-input {\\n width: 100%;\\n}\\n.domain-edit-modal .domain-edit-add-button {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .ant-form-item {\\n margin-bottom: var(--domain-row-gap);\\n}\\n.domain-edit-modal .ant-form-item:last-child {\\n margin-bottom: 0;\\n}\\n.domain-list-row {\\n display: flex;\\n align-items: center;\\n gap: var(--domain-action-gap, 8px);\\n width: 100%;\\n}\\n.domain-list-input {\\n flex: 1;\\n min-width: 0;\\n}\\n.domain-list-action {\\n width: var(--domain-action-size, 32px);\\n flex: 0 0 var(--domain-action-size, 32px);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.domain-list-action--placeholder {\\n visibility: hidden;\\n}\\n.domain-list-row .dynamic-delete-button {\\n margin: 0;\\n}\\n.sites-table .ant-table-tbody > tr > td {\\n padding: 8px 16px;\\n}\\n.sites-table .ant-table-thead > tr > th {\\n white-space: nowrap;\\n}\\n.sites-list-toolbar {\\n display: flex;\\n justify-content: flex-end;\\n margin: -2px 0 12px;\\n}\\n.sites-list-toolbar .sites-add-button {\\n min-width: 78px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.site-add-menu {\\n min-width: 190px;\\n padding: 8px;\\n border-radius: 20px;\\n background: rgba(255, 255, 255, 0.86);\\n backdrop-filter: blur(28px);\\n border: 1px solid rgba(255, 255, 255, 0.45);\\n box-shadow: 0 22px 44px rgba(28, 28, 30, 0.16), 0 1px 0 rgba(255, 255, 255, 0.7) inset;\\n}\\n.site-add-type-item {\\n width: 100%;\\n min-height: 56px;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n padding: 8px 10px;\\n border: 0;\\n border-radius: 14px;\\n background: transparent;\\n color: #1C1C1E;\\n font-size: 15px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.site-add-type-item:hover:not(:disabled) {\\n background: rgba(52, 199, 89, 0.1);\\n}\\n.site-add-type-item:disabled {\\n cursor: not-allowed;\\n opacity: 0.65;\\n}\\n.site-add-type-item__icon {\\n width: 36px;\\n height: 36px;\\n flex: 0 0 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 10px;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.site-add-type-item__icon img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.site-add-type-item__icon svg {\\n font-size: 18px;\\n color: #34C759;\\n}\\n.site-add-type-item__name {\\n flex: 1;\\n min-width: 0;\\n overflow: hidden;\\n text-align: left;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-page {\\n display: flex;\\n flex-direction: column;\\n gap: 24px;\\n}\\n.subscription-section {\\n max-width: 720px;\\n}\\n.subscription-setting-modal .ios-form {\\n max-width: none !important;\\n}\\n.subscription-endpoints {\\n display: flex;\\n flex-direction: column;\\n gap: 10px;\\n}\\n.subscription-endpoint {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n min-height: 64px;\\n padding: 12px 10px 12px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 14px;\\n background: rgba(255, 255, 255, 0.72);\\n}\\n.subscription-endpoint__main {\\n flex: 1;\\n min-width: 0;\\n}\\n.subscription-endpoint__title {\\n display: flex;\\n align-items: center;\\n gap: 8px;\\n margin-bottom: 6px;\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 700;\\n}\\n.subscription-endpoint__url {\\n overflow: hidden;\\n color: #6B7280;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n font-size: 12px;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-endpoint__actions {\\n display: flex;\\n flex: 0 0 auto;\\n gap: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn {\\n width: 34px;\\n height: 34px;\\n border-radius: 12px;\\n color: #1C1C1E;\\n}\\n.subscription-endpoint__actions .ant-btn:hover {\\n background: rgba(0, 0, 0, 0.04) !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus,\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n background: transparent !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n outline: 2px solid rgba(28, 28, 30, 0.22);\\n outline-offset: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn:active {\\n background: rgba(0, 0, 0, 0.06) !important;\\n}\\n.main-card {\\n min-height: auto;\\n max-height: calc(100vh - 100px);\\n width: 100%;\\n max-width: 420px;\\n overflow: auto;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(50px);\\n border-radius: 32px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n border: 1px solid rgba(255, 255, 255, 0.2);\\n animation: fadeInUp 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;\\n}\\n.main-card .ant-card-body {\\n padding: 24px 16px;\\n}\\n.main-card .ant-tabs-nav {\\n margin-bottom: 16px;\\n}\\n.main-card .ant-tabs-nav::before {\\n display: none;\\n}\\n.main-card .ant-tabs-nav-list {\\n display: flex;\\n flex-wrap: wrap;\\n gap: 6px;\\n padding: 6px;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n width: 100%;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab {\\n flex: 1;\\n min-width: 0;\\n margin: 0 !important;\\n padding: 8px 12px !important;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n transition: all 0.3s ease;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-ink-bar {\\n display: none;\\n}\\n.main-card .account-tabs {\\n width: 100%;\\n}\\n.main-card .account-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n margin-bottom: 16px;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.main-card .account-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.main-card .account-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.main-card .account-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.main-card .account-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n flex: 0 0 auto;\\n min-width: 44px;\\n min-height: 34px;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n background: transparent;\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n line-height: 1;\\n white-space: nowrap;\\n cursor: pointer;\\n transition: color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;\\n appearance: none;\\n}\\n.main-card .account-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .account-tabs__tab--active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .account-tabs__panel {\\n width: 100%;\\n}\\n@keyframes fadeInUp {\\n from {\\n opacity: 0;\\n transform: translateY(16px);\\n }\\n to {\\n opacity: 1;\\n transform: translateY(0);\\n }\\n}\\n.app-layout {\\n display: flex;\\n flex-direction: column;\\n min-height: 100vh;\\n width: 100%;\\n background: #F2F2F7;\\n}\\n.top-nav-bar {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n width: 100%;\\n padding: 12px 16px;\\n background: transparent;\\n box-sizing: border-box;\\n}\\n.nav-pill {\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n padding: 4px;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(20px);\\n border-radius: 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n}\\n.nav-tab {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 8px 16px;\\n border-radius: 16px;\\n cursor: pointer;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n border: none;\\n transition: all 0.3s ease;\\n}\\n.nav-tab:hover {\\n color: #1C1C1E;\\n}\\n.nav-tab--active {\\n color: #1C1C1E;\\n background: #fff;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.nav-tab--active:hover {\\n background: #fff;\\n color: #1C1C1E;\\n}\\n.nav-tab .anticon {\\n font-size: 14px;\\n}\\n.nav-divider {\\n width: 1px;\\n height: 20px;\\n background: rgba(0, 0, 0, 0.1);\\n margin: 0 4px;\\n}\\n.nav-actions {\\n display: flex;\\n align-items: center;\\n gap: 2px;\\n}\\n.nav-actions .ant-btn {\\n color: #8E8E93;\\n font-size: 12px;\\n font-weight: 500;\\n padding: 6px 12px;\\n height: auto;\\n border-radius: 12px;\\n}\\n.nav-actions .ant-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.drag-handle {\\n cursor: grab;\\n color: #999;\\n font-size: 18px;\\n padding: 8px;\\n touch-action: none;\\n}\\n.drag-handle:active {\\n cursor: grabbing;\\n}\\n.pansou-config-modal {\\n max-width: 420px;\\n}\\n.pansou-config-modal .ant-modal-body {\\n padding: 16px 24px;\\n}\\n.pansou-config-tabs {\\n margin-bottom: 16px;\\n}\\n.pansou-config-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.pansou-config-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.pansou-config-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.pansou-config-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.pansou-config-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n flex: 0 0 auto;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n outline: none;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.pansou-config-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__tab--active {\\n background: rgba(118, 118, 128, 0.12);\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__badge {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n min-width: 22px;\\n height: 16px;\\n padding: 0 6px;\\n border-radius: 999px;\\n font-size: 11px;\\n line-height: 16px;\\n font-weight: 600;\\n color: #fff;\\n background: #1C1C1E;\\n}\\n.pansou-checkbox-section {\\n min-height: 200px;\\n max-height: 400px;\\n overflow-y: auto;\\n}\\n.pansou-checkbox-header {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-bottom: 12px;\\n padding: 0 4px;\\n color: #8E8E93;\\n font-size: 13px;\\n}\\n.pansou-checkbox-header .ant-btn-link {\\n color: #1C1C1E;\\n font-weight: 500;\\n padding: 4px 8px;\\n height: auto;\\n}\\n.pansou-checkbox-header .ant-btn-link:hover,\\n.pansou-checkbox-header .ant-btn-link:focus,\\n.pansou-checkbox-header .ant-btn-link:active {\\n color: #3C3C3E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.pansou-add-channel {\\n display: flex;\\n gap: 8px;\\n margin-bottom: 12px;\\n}\\n.pansou-checkbox-grid {\\n display: grid;\\n grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));\\n gap: 8px;\\n}\\n.pansou-checkbox-card {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding: 10px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 10px;\\n cursor: pointer;\\n transition: all 0.2s;\\n background: #fff;\\n}\\n.pansou-checkbox-card:hover {\\n border-color: rgba(0, 0, 0, 0.12);\\n background: #F9F9F9;\\n}\\n.pansou-checkbox-card--selected {\\n border-color: #1C1C1E;\\n background: rgba(28, 28, 30, 0.04);\\n}\\n.pansou-checkbox-card--selected .pansou-checkbox-card__check {\\n color: #1C1C1E;\\n}\\n.pansou-checkbox-card__label {\\n flex: 1;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n font-size: 13px;\\n}\\n.pansou-checkbox-card__delete {\\n flex-shrink: 0;\\n color: #8E8E93;\\n font-size: 14px;\\n margin-left: 6px;\\n transition: color 0.2s;\\n}\\n.pansou-checkbox-card__delete:hover {\\n color: #ef4444;\\n}\\n.pansou-empty-tip {\\n text-align: center;\\n color: #8E8E93;\\n padding: 40px 0;\\n font-size: 13px;\\n}\\n.pansou-config-footer {\\n margin-top: 16px;\\n padding-top: 16px;\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-manager {\\n display: flex;\\n flex-direction: column;\\n gap: 14px;\\n}\\n.emby-server-toolbar {\\n display: flex;\\n flex-direction: column;\\n align-items: stretch;\\n gap: 12px;\\n padding: 4px 0 2px;\\n}\\n.emby-server-toolbar__main {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n gap: 12px;\\n}\\n.emby-server-toolbar .ant-btn {\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.emby-server-title {\\n color: #1C1C1E;\\n font-size: 17px;\\n font-weight: 700;\\n line-height: 1.2;\\n}\\n.emby-server-subtitle {\\n color: #8E8E93;\\n font-size: 12px;\\n line-height: 1.4;\\n}\\n.emby-empty-card {\\n width: 100%;\\n min-height: 116px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 10px;\\n border: 1px dashed rgba(28, 28, 30, 0.2);\\n border-radius: 18px;\\n background: rgba(255, 255, 255, 0.55);\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.emby-empty-card .anticon {\\n width: 36px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 50%;\\n background: rgba(52, 199, 89, 0.14);\\n color: #22c55e;\\n font-size: 17px;\\n}\\n.emby-empty-card:hover {\\n background: rgba(255, 255, 255, 0.75);\\n border-color: rgba(28, 28, 30, 0.35);\\n}\\n.emby-server-grid {\\n display: grid;\\n grid-template-columns: 1fr;\\n gap: 10px;\\n}\\n.emby-server-card {\\n position: relative;\\n overflow: hidden;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n min-height: 82px;\\n padding: 12px 14px;\\n border-radius: 12px;\\n background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(242, 247, 245, 0.9));\\n box-shadow: 0 10px 22px rgba(28, 28, 30, 0.06);\\n border: 1px solid rgba(255, 255, 255, 0.62);\\n}\\n.emby-server-card__hero {\\n display: flex;\\n align-items: center;\\n flex: 0 0 auto;\\n}\\n.emby-server-card__logo {\\n width: 48px;\\n height: 48px;\\n flex: 0 0 48px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 12px;\\n background: rgba(255, 255, 255, 0.92);\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-card__logo img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.emby-server-card__content {\\n min-width: 0;\\n flex: 1;\\n}\\n.emby-server-card__name {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n min-width: 0;\\n color: #111;\\n font-size: 15px;\\n font-weight: 700;\\n line-height: 1.3;\\n}\\n.emby-server-card__name span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__name .anticon {\\n flex: 0 0 auto;\\n color: #22c55e;\\n font-size: 12px;\\n}\\n.emby-server-card__stats {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 10px;\\n margin-top: 7px;\\n color: #6b7280;\\n font-size: 12px;\\n line-height: 1.35;\\n}\\n.emby-server-card__stats .emby-server-card__stat,\\n.emby-server-card__stats .emby-server-card__sync {\\n min-width: 0;\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__stats .emby-server-card__stat {\\n flex: 0 1 auto;\\n max-width: 72px;\\n}\\n.emby-server-card__stats .emby-server-card__stat span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.emby-server-card__stats .emby-server-card__sync {\\n color: #8e8e93;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon {\\n width: 17px;\\n height: 17px;\\n flex: 0 0 auto;\\n color: #8e8e93;\\n fill: currentColor;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon--series {\\n width: 18px;\\n height: 18px;\\n fill: none;\\n stroke: currentColor;\\n stroke-width: 1.5;\\n stroke-linecap: round;\\n stroke-linejoin: round;\\n}\\n.emby-server-card__actions {\\n flex: 0 0 auto;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: center;\\n gap: 4px;\\n}\\n.emby-server-card__actions .ant-btn {\\n width: 30px;\\n height: 30px;\\n padding: 0;\\n border-radius: 10px;\\n}\\n.emby-server-edit-modal .ant-modal-body {\\n padding-top: 18px;\\n}\\n.emby-server-edit-actions {\\n justify-content: space-between;\\n}\\n.emby-server-edit-actions--new {\\n justify-content: flex-end;\\n}\\n.emby-logo-preview {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n margin: -4px 0 16px;\\n color: #8e8e93;\\n font-size: 12px;\\n}\\n.emby-logo-preview img {\\n width: 38px;\\n height: 38px;\\n border-radius: 10px;\\n object-fit: cover;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.ant-input,\\n.ant-input-password .ant-input,\\n.ant-input-number,\\n.ant-input-number-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n font-size: 14px;\\n}\\n.ant-input:focus,\\n.ant-input-password .ant-input:focus,\\n.ant-input-number:focus,\\n.ant-input-number-input:focus,\\n.ant-input:hover,\\n.ant-input-password .ant-input:hover,\\n.ant-input-number:hover,\\n.ant-input-number-input:hover,\\n.ant-input.ant-input-focused,\\n.ant-input-password .ant-input.ant-input-focused,\\n.ant-input-number.ant-input-focused,\\n.ant-input-number-input.ant-input-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.ant-input {\\n padding: 10px 14px;\\n}\\n.ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 6px 14px;\\n}\\n.ant-input-affix-wrapper:focus,\\n.ant-input-affix-wrapper:hover,\\n.ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n padding: 4px 0;\\n box-shadow: none;\\n}\\n.ant-input-affix-wrapper .ant-input:focus,\\n.ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n.ant-input-number {\\n width: 100%;\\n padding: 0;\\n}\\n.ant-input-number .ant-input-number-input {\\n padding: 10px 14px;\\n height: auto;\\n}\\n.ant-input-number:focus,\\n.ant-input-number:hover,\\n.ant-input-number.ant-input-number-focused {\\n border-color: transparent !important;\\n}\\n.ant-input-number-group-addon {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 0 12px 12px 0;\\n color: #8E8E93;\\n font-size: 13px;\\n padding: 0 14px;\\n min-width: 50px;\\n text-align: center;\\n}\\n.ant-input-number-group .ant-input-number {\\n border-radius: 12px 0 0 12px;\\n}\\n.ios-form .ant-form-item {\\n margin-bottom: 16px;\\n}\\n.ios-form .ant-form-item-label > label {\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n}\\n.ios-button-group {\\n display: flex;\\n gap: 12px;\\n margin-top: 20px;\\n}\\n.action-btn--danger {\\n background: #fff;\\n color: #ef4444;\\n border: 1px solid rgba(239, 68, 68, 0.3);\\n}\\n.action-btn--danger:hover {\\n background: rgba(239, 68, 68, 0.05);\\n}\\n.ios-modal {\\n max-width: 420px;\\n}\\n.ios-modal .ant-modal-content {\\n background: rgba(255, 255, 255, 0.9);\\n backdrop-filter: blur(30px);\\n border-radius: 24px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.15);\\n border: 1px solid rgba(255, 255, 255, 0.3);\\n}\\n.ios-modal .ant-modal-header {\\n background: transparent;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 20px 24px;\\n border-radius: 24px 24px 0 0;\\n}\\n.ios-modal .ant-modal-title {\\n font-size: 17px;\\n font-weight: 600;\\n color: #1C1C1E;\\n}\\n.ios-modal .ant-modal-body {\\n padding: 20px 24px;\\n}\\n.ios-modal .ant-modal-footer {\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 16px 24px;\\n}\\n.ios-modal .ant-modal-close {\\n top: 16px;\\n right: 16px;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x {\\n color: #8E8E93;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x:hover {\\n color: #1C1C1E;\\n}\\n.ant-message .ant-message-notice-content {\\n background: rgba(255, 255, 255, 0.85);\\n backdrop-filter: blur(20px);\\n border-radius: 16px;\\n padding: 12px 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);\\n border: 1px solid rgba(255, 255, 255, 0.5);\\n}\\n.ios-alert {\\n background: rgba(59, 130, 246, 0.08);\\n border: none;\\n border-radius: 12px;\\n}\\n.ios-alert .ant-alert-message {\\n color: #1C1C1E;\\n font-weight: 500;\\n}\\n.ios-alert .ant-alert-description {\\n color: #8E8E93;\\n}\\n.ant-switch {\\n background: rgba(120, 120, 128, 0.16);\\n min-width: 51px;\\n height: 31px;\\n}\\n.ant-switch .ant-switch-handle {\\n width: 27px;\\n height: 27px;\\n top: 2px;\\n inset-inline-start: 2px;\\n}\\n.ant-switch .ant-switch-handle::before {\\n border-radius: 50%;\\n box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), 0 1px 1px rgba(0, 0, 0, 0.16);\\n}\\n.ant-switch:hover:not(.ant-switch-disabled) {\\n background: rgba(120, 120, 128, 0.24);\\n}\\n.ant-switch:focus {\\n box-shadow: none;\\n}\\n.ant-switch.ant-switch-checked {\\n background: #34C759;\\n}\\n.ant-switch.ant-switch-checked .ant-switch-handle {\\n inset-inline-start: calc(100% - 29px);\\n}\\n.ant-switch.ant-switch-checked:hover:not(.ant-switch-disabled) {\\n background: #2DB84E;\\n}\\n.ios-edit-btn {\\n color: #8E8E93;\\n padding: 4px 8px;\\n border-radius: 8px;\\n transition: all 0.2s ease;\\n}\\n.ios-edit-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.ios-edit-btn .anticon {\\n font-size: 16px;\\n}\\n.ios-tag {\\n background: rgba(118, 118, 128, 0.12);\\n border: none;\\n border-radius: 6px;\\n color: #8E8E93;\\n font-size: 11px;\\n font-weight: 500;\\n padding: 2px 8px;\\n line-height: 1.4;\\n}\\n.ant-space-compact .ant-input {\\n border-radius: 12px 0 0 12px;\\n}\\n.ant-space-compact .ant-btn {\\n border-radius: 0 12px 12px 0;\\n}\\n.ant-space-compact .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n}\\n.ant-space-compact .ant-btn-primary:hover,\\n.ant-space-compact .ant-btn-primary:focus,\\n.ant-space-compact .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n}\\n.xunlei-verify-compact .ant-input,\\n.xunlei-verify-compact .ant-btn {\\n height: 44px;\\n}\\n.xunlei-verify-compact .ant-input {\\n line-height: 22px;\\n}\\n.xunlei-verify-compact .xunlei-verify-send-btn {\\n min-width: 126px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-color: rgba(0, 0, 0, 0.12);\\n box-shadow: none;\\n}\\n.ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n}\\n.ant-btn-primary:hover,\\n.ant-btn-primary:focus,\\n.ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.ant-btn-dashed {\\n border-radius: 12px;\\n border-color: rgba(0, 0, 0, 0.15) !important;\\n color: #8E8E93;\\n}\\n.ant-btn-dashed:hover,\\n.ant-btn-dashed:focus,\\n.ant-btn-dashed:active {\\n color: #1C1C1E !important;\\n border-color: rgba(0, 0, 0, 0.3) !important;\\n background: rgba(0, 0, 0, 0.02) !important;\\n}\\n.ant-btn-text:hover,\\n.ant-btn-text:focus,\\n.ant-btn-text:active {\\n background: rgba(0, 0, 0, 0.04) !important;\\n color: #1C1C1E !important;\\n}\\n.ant-btn-link {\\n color: #1C1C1E;\\n}\\n.ant-btn-link:hover,\\n.ant-btn-link:focus,\\n.ant-btn-link:active {\\n color: #3C3C3E !important;\\n background: transparent !important;\\n}\\n.ant-btn-dangerous.ant-btn-text {\\n color: #ef4444;\\n}\\n.ant-btn-dangerous.ant-btn-text:hover,\\n.ant-btn-dangerous.ant-btn-text:focus,\\n.ant-btn-dangerous.ant-btn-text:active {\\n color: #dc2626 !important;\\n background: rgba(239, 68, 68, 0.04) !important;\\n}\\n.action-btn--secondary-outline {\\n background: #fff;\\n color: #8E8E93;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.action-btn--secondary-outline:hover {\\n color: #1C1C1E;\\n background: #F9F9F9;\\n}\\n.pansou-add-channel .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n font-weight: 500;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.pansou-add-channel .ant-btn-primary:hover,\\n.pansou-add-channel .ant-btn-primary:focus,\\n.pansou-add-channel .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 8px 14px;\\n}\\n.pansou-add-channel .ant-input:focus,\\n.pansou-add-channel .ant-input:hover {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.pansou-add-channel .ant-input-clear-icon {\\n color: #8E8E93;\\n}\\n.pansou-add-channel .ant-input-clear-icon:hover {\\n color: #1C1C1E;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 4px 14px;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper:focus,\\n.pansou-add-channel .ant-input-affix-wrapper:hover,\\n.pansou-add-channel .ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n box-shadow: none;\\n padding: 4px 0;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:focus,\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n\",document.head.appendChild(e)}var $t=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAICAgICAQICAgIDAgIDAwYEAwMDAwcFBQQGCAcJCAgHCAgJCg0LCQoMCggICw8LDA0ODg8OCQsQERAOEQ0ODg7/2wBDAQIDAwMDAwcEBAcOCQgJDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg7/wgARCAE8ATwDAREAAhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAABQYABAIDBwEJCP/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAPv4QhCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCGsoFU8IQhD0tG80FgtEKxQNRkXDMpmZfNpSMDcVDQQhCEMi6XTIgMEEWzI9IQ8MRjGQCh4PngtCKUjaN4QE43j6XRQKwZFIEGw9IQxMhyHcskARycDjCbTwhrF4KnRCsEzSUgOIxsKQ6DaI4MOgGg58XxsEQ2B0h4ZFUXRyOpF8gBOVG8cwQVS2FhPKZ1MLGAqi0aSoYC8Nw5iUKoyEFMNDeJo1B0DGkIlwRAudSL5ACcsLQZObgcMHRwQUTpZZN4KEYrjMLwCD4SFwGF8JgAuDaKA0mk50UxoH0UwmdSL5ACcrLZeOVAINnVimUB5BBbKQjBU6gQBAI2hw1A4UxYGkchPGcGnLiiNx00WQodSL5ACcrLYaObgcLnRgUDzo5SAZgBDadRLQiA4bS+JwpgMrDsMwljSaDnhTGgfRSCZ1IvkAJyosDoCCoWguJxTOpF0DmIugo6EbTlwROjmIiCEHBlDJpOejQMAFNISLYhhc6kXyAI5OCBjNp4emoXQmdFKhdK4tFUMhYQQoOJTKolDOGDEhzY2h8hD0pi4OZ1EvkBggCyZEPTwxMRlGUWzQYFQEgsNgkZxtKBfF0rgUuDqLIJNh4Q9MT0cx5LRDWUCmDikXCkDz0NBUWheChVOaAQ3mY8DuXw8UxFEIvHSxhNhrBZgFCA0JDAbiEIaxXF0Oi+KxiHw2AjaNYHOTAAtFsJlwJHRBgFk5iLA2HSxqKghFEfC0IxfH4tkIeFcDlIJgoAlYqmstlMOBQRBaGcPmAsi0NQ7C6c6F8vj8dEBRzUqj0NgmhA6WXiHhVForDQXweJgvmQZChzsEjGbzwtDQaRbAIDLwJF01Bk6CPYrimGA+MgOLo0FghVFoVi2PATA5ycXx6HwrHIRHDZ0UKCGfk8/aAUMjmgFChTNQ1DiNoIF0sG4Ih8Mlg9IUBNF03h8aiockBR0YZxVOXiyO510rn5DPnEdwPrGBxbK5vF8rDYHBwCAqiQBxpOhDGbCEKgpHOxUGE6oZHPwSOQYOZiWXjpB0c+UQiC+GD6oHIjs5fAInggYB7GUtmYnCmP4yBAKGZAac+Ofi+FDpRmbS4XzE5WKI1HRT8bCcfvA+cZ+0wOfJA+uYfDYCE0zD4YN4xm0EjoUy8OJZIVRbF0VBaCw2jiUCsMQrHNCiHD5Gn1dL4GD46HzfOjHeguagSaCyNhrKIyDUMhqLodNpCFMVBTAYujKdHIahqB5yAQTSfJY+shsLZ086afOUJH6cB5vGMoi2XSuL4WGwPDeMhZIQhWE8VwUKgUG8vhkaTQIApAU+c53s/RAYG4JHxmPqAdjKgPGYuCKJhiaAWQJj8dGGQ2kIYA8UxHBwYMimNA5lYFG0FiCfJs/Yp+rDn583DrR+8jqxvFY9DgKEM2l8WACYhw6mdLLpDQCjM2AkEi0XS4Q3goqhYsGAKPw4cFLR+nTvYYG4yNhSFAEA0Oj4Czm5QGU6idELZAYJRBtLwuHPhiN4pGYeCYIF0ohYegSaQ6bAOKgTHQXzlANIOJ1ACnJzadJH8MmZCkKQtBIKCSLI/B0ClA0jSbgCK5VOmFosjEeigcvMx7BwiBADGZ04ggjGPofLZ6QoCaADwFCYUxvD54CRdDYeNYvnh0o2F0ZgYJYIMjEAgULAYHnShxFoolsbRtN5AaJx6bRSA54bzaQGi8Fg0CgeMAwkGAMCUKAbCArAYMF4rAcLjaCRJKx086gXiFQWigQpGshD0IGsVw4XxIA4WBwcGYCnPQKEAyVAudFN56JAhHhqK4eOoHRC4QEHNRYNxmeEMTSMw8mgsCocxBZdPTaZlEDmgJDsaS+PwNCYqHOSgUy6dEOmDKbiAE5OUhqMzE9PBULI/AkKi0c0KQYGEXgCeFYxLQfPBgOjEN4ogUyFA0jUdKHUskAJystDcLZQLwxiqDxtFcaS+LZXMQaKxZN4qFQ3HpmHhqLpkCg+M4vFIsjWNJvIATlhaChzACBo6eDSgPpSDodNRpFg5ULR0EIHNDEZgebyyLpsG8YRnGQzMTAsFk9IATlZbLxysBBs6qUygdCNQWDgJFwDCwK4bLIlhk6gazeDzngbOkDCDD0YCAE3h42kAJywtDAIIICo/AMHjyBS6NILEY0l8Ai+ajANHVC8bBcEkeg8UBMKo6m0BhsdSyQAnKTMdioVzeXBLK5000CuXg8UhcAYXAgICxoHA9CRrFMYQGKIJNocN4yD2MhuIAzlIBDJtIQ1gUOnVwgLItF4vCMBB9BwnG4qBwaxqN4rCsKYFPRkDwACJ0gdCwQoiaL5D0hDwgwDkXSsLJXLItGI0lYWDUeF8bw+ZgcTwOYGYfDAuFMaxpN5DE0GkhCEIQ2lgyPDSYmRpIbzE0nhDIsG0hgVjAhDabTSYG43npCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCEIf/8QAJRAAAwEBAAIBBAMBAQEAAAAAAwQFAgEAFRAGBwgUERITFiBQ/9oACAEBAAECAP8Ax/P/AMTWyudpez9n7P2fs80xu9Y64I/O+EPqj7PNIbWmdUBviL3RGcN9Y297P2fs/Z+z9nikFnPfhwtOn2xyr7T2ntO1c2ZtTTO3J7GD6YpOtWPcAszaDLLVNCqgydl+qpTI49W5Y9p7T2ntO1QWZNBbXxS7Y0sqGT6r1XJJZLCsjQA6nLrsOZpUzmHxPuImiBpKJ9ns0aTtCSYu3/EUMSPU+q5JPKICDpHvxT8p8kC5wz3sgPfxVFM5Mx/gQVEGu71+qXRSRO6PVZwym+31kEfhvD5kBNsj/KSzZ8URwvEfml5S8k+PHoUPZzqSJ6nk7xE3aGWniPMpbyo8lxBHhWmgeuXW/lzcnw3hvJfazTdPNSS+MtLyH4j80vKfknyn5T+Jfkzyn5O8Foxl3X3Wyx+ohYnHTNxUI521D5fc23E0bw3k3y3455nyJ4Dyj5D8R+aXlPyT48ChO9ZOnIAqcm+JhbnbB1ZudLHM8c1QeW8RQNig4zSNwU6Omzg3kvlZVubmXJQwKl5D8R+aflTskvPDo+tAh5VLM7N6bwifFqGVOTDUCUiRfE+sdrLFDOnCkKJUsH7IMYZJ/JqybG6BYXiPzS5Yyq0Gv7X2vKpa7LUjK5SUQONunPzSVM7lDUbv7PH3emDJ4Zxag/p/xF/Ff2vteVmKuzwcI/LYqkzUfkz13rfXdnYkzJul2QjZITvG3BU8VzNxO7GNXSjKHDN0pbWBvSeSPWeu9d63ssEiSitj41gqeph1MiyqbHS4MmTenddwqpRDRPw+XAsxnQ0AHDhtKoo1iYxNawt6vUwwBBFOLO1hLQf/ACTyj0exapbIXBkGtvHOpxbFYNRXi40BzgB/bQqzKGiU8Vs8ZlVZlITDbVKolXn0GmHnpTimvnvSFYwOdhNyaSX2eQeNfraPPpH3USwghMxFJIoId5Koip1ar729pmkOpsVXX2VdymtboBjCS58mM5QWeV7/AFa6+/qtgic86tYitMFnm/1FmVWm2T8bn/3xWdcJ5nCSshAK9bGUV5CU8YDzkJ4MfBiPOHMhlLXNUe2DLeSVU16Pbu+mn+Sk2122efmWq8qo4vUGHOEzprqIpodBp9T/AAw3iovTV0IXOfDPHx70GinWVYo9r+Jbkl4zVqVW88hLzFao/uF9+/uz9Ufjb+QYGm2jIYk9E4RUqpVcIYMCgm/zB5uJuB9+T9pFpuEpSH5rD7NAIUpYWt2G9lSUiIDN+RH5P/b38R/vL9CfYD7FaY+iPvMm0QreXc8NPdnuBpZq6JXXECUvg67Y9fDfa2nQlVlaSdKYCfEFgvBsp5Xk4n7/ADP+7f4i/Zl/dL8SJAfrL6ZBqP8AUS9UZqWDeAMrSE8KghUdKsqoJnc7a3yYbk1iRQndGm9P2sJwyjORVZb6yzwrn5B/U/03o1rTUtMET85fov8AGuiDAmzn2r1VYai7QwvJuIjF5tNREWfj+D8fMfrae+yHUmWAqpqipCuAKP8An7ucXa/unmBhXz8+af4ny8yjopoBhuRCLAcba1tF1WyrbnuB7z/wfNFbYnDm8nhWbxVScX25inNNCZk/l39vfxl+uupIzk/D/Uf3x+5P24+mU1HJgAJbOpTmGCMBk9dy0m/IrTnxa+e+HXopOJDngAXOBzMgMeh1rIHJ31h9ufqX6P8Atz+U0j6l+ufvZ96/yT/Gz7LSdzNN6Y4sUVB9pzafDKuIkHjc9mAdPvwQhXgtEXJJZmG8UBpQR9UDGHpdzT+HPqn6V+uPwaf/ABRl/h79ufxczFSRWZ0cSromaRK3WZnFEqiDwxDmow0lc/DfXSpOKtdLTaOab4905VyKi/RbXMTrk+guZzqyoZHYzqJmZ51uWeP44rgMXCGLWXxT0I8pJIefhjL4N6SeJSq1xuyTl4VEogvpPnywi8sjybkqya4R77W09meVF2qzvI02xTnJLlTBUpaKPgS878M7fZ7jo23XTL9QexX7Vbo6cQqZrkrNvIdnlM8iyIjrjjnU+TdlefwXDTpFuwi7Cyrx5e5Nog38N4bVVRYScmai8h4lev8AXNI7WSS4gyDAUlhtc3PGRupX7TTolovu4wvJ5JNH2jOcFYepuPKNfT5Uu/B+tF4/ultn/b/b/bJQjamkkIS2AUdgJ+zp6e4KhRrPUP2Vmx7NiSBRTo9LWVzMZpbf52ajDTUz8PErPfv5Y/2/3/36xx6U+HWh55Ycfew5hr+uGe1z0SE8T8Sw1mRwXdkBq3xlbSmsJ8jYm4Fz4p+V+IJAk9meu5MLIdSlcwclIDNkTaeU0kuIvg6Loe58AQFDb0c6pOh/tU0FBmS1PAtMLJYX78U/KfkjOzM1vdq1hnq5n+b4XEsTU00D/nuzGmTnTQYmMiyPgP4HlEq9nNvdUhZS+5rEH/nl4c5EGfin5S8k+US0m/3Zjc4tPyd4AO5yCvAdW0CpivoPY+KOX+JLiknmKSzTzEV2gmCOgkLH6vU+Ljxn5p+U/JPlLlPP9ZmZnKfk7xbemkjc202eyd91MiyDrdFncYaSbMlaVUVOrKkzJvFztLUgGOY1FR4Wvil5S8k+NrPyvSoSU1qnJ3gsn4i4Buh42IGO8cUKPnnUpQZvSbHux4MUpfrLFejWSrJ2D1dlmZW58U/KnZTA2CY/XEPZ6jEvqIXUDDSazoyTmeNgFSUWFoQNJukaS3QDkC7dGuewR5Yo2x0Jxp2Q8+KObAQ7FQ9j7D2G6BtxwTMGC9PKJNg56Z18Tw1wf16bnUiKKKInRcQb235pYac6ZuQdScSQdfvwyKhK1C5E9L6X0nYmIU6UqL+DBbngnmRZjrRFUHZpYXofQKxkURi7hxRyRqB/zo/p5CPqa3FDEnogz8dzpf8AS/R/R/R/R/R4lhfPPO86Hi/Q9U4pkOgdS/R/R4ngXx3HVf0f0eJYW/y6rxLAOc/+T//EAD0QAAICAQMCAgkCBQEGBwAAAAECAAMRBBIhBTEGEwcQIiMkQVFScRQyCCBCYYFiM1BykbLRJVNzgqGiwv/aAAgBAQADPwD+Qf7lABipnmL90T74n3xPvi/fE++J90V/nBjvFz3gccTI9QQHJirnmL9win+oRXHeALmICfaiv85uEwIEzFPzgwYqkjdE++J98X7hF+4RfuEX74pz7UDjvMj1lK2jV2MA0sNh9qWkZ3GW/cZb9xlv3GWgdzLBZgtGsIBaHyMywXEZhIEATvBsPMKI5Bjq7ANLT2Yx9+C0a2vvGFBliWNzHawDdN9Q5ipSeZsdhuhezvCNOTmMljYaWsT7Ut+plv3GW/cZb9xlw+Zj7+WjW/Obq/WRU8Y6lxHusjGuGGExhWcR6rTGF4ENmljG3OIaq4awRCcjML0NiO95h8omGu+EgCb9KYQ7EQ16qBaO8IrYZjPe3MZrYf0ZjPewj2w7O0Pq4PEZEaPVqSIdwmafX7p5nVtAbOZXXpsmVIx5Ep+olT/MSuzT5ihyQJjWCA6cZiRfLOIeSIa3OTPNXEO/diLXURA2omMRV0h5ilmxNt+YfKxmNdWYwvmLRPgz+IDqz+YvlCV1VSlWPIlJ+YlTnGYjUGAaoz3onufVwZ7p58Y359RTSHB+UcWtzH+6O1wG6F9JM7p8ZBXpgYofG6B07xBW0QOcGeZbN2nJx8o/OBHFxJENCQtSQDLLWbvLd2dssSBasGIXMzcJ8GfxPjD+ZimFKG5jC1vaj7/3RnsXmF9JPfme+nufVwZ7p58W3q+Fb8T3rww+eJ8H/ifunxkb9HxLFuMIQjMY1Ngx2uOYTesD6fGIhydsrr3cCYsIEax4uzJWVITwJUiGbNwBhe88zc4nwZ/E+MP5nw09y0PnNPbE96s+DP8Awz3899Pc+v3Tz4tvzOYX0bcRmub2Y/2x1tHswpo5jdM6yb9LOWOI9bECNYhBmCTNmqE9wIErYzFrAGefbAFzieXScDtGrLR2yMx78yw3Z2xkI4m3SET4w/mZoheo8RzY3Ebd+0xksHEKaMz35nvp7n1+6eY1bQC2V2abBlTk8CVZ7CVI3YSuvTEQGxpnWCAacZlbAxXcnERKzkRfam3VQCkQGh8Q/q2mXERaIj1sJlHMP6kwWAZErVclJXX8oF0zTGrP5i+UORK7aj2lTEnAlOewlVbdhETTmBtUZ70T3PrJqeMNQ5jU3QhMZ9ePnCayAY9tpjG8GGvSwi0jMVk5MCocTzCYK2zAh25i2aU8wNqmnIhr08LORPM07GfEHj5xUrGZXWmAYrEjdPM0zRk1LGNXDtxn1kdjGesjMa3Uw7hMU+vfWY1ljkLLRYeJaBLZb9JbLCOxjl+RCjjiEUERltYwoCMxrYyAsYEU8zbd3gOnILQWXzOIX08fzoxohFhOJ+nRhCXIDQvd3nm6SM7khZaGOAZcPkZb9JbLvoZaR2MfzORDXjiba/WCDFfPEr5O2VpngSrfjAlRTtKkzwJSD8pTnuJWe0XyYh3YM32nEJr5E8uhoQ7CEGMEPMJsgQDmVmrlpW7dxFsrilDgRl34jrecwV3DJiPWBmV3DOIh/pErUH2ZUhPAlLuRK3XsJWiHgSpHifKe7/l90YQGxLPPMbyJYC2Jd5h5Mu39zHU8mZoPMZrDzAX5i+TC1D4EIufiEtGcdo4/pMsq+REtq+ZjC4ZaB6hkwPVEKNmIHcieXf3hV1BaBkGWitXnMVKm5myxsNM38vFdO8zSxBjLeRmF7AMzdV/JgQAERbcwb84mKyIHzxEBPErWCrIEdzjMOzM8i6Bl27pXdpzEYtxPf9ojJyJWU/bEVD7MCbsR6ruIUIBMHkfugCsN0NrtzM2E5jK4wZZkDJjHTRlpbmWW2NzLUtBlvAJMZ9LHOoJjC4ZmKf5AqmbGbmeZZiB0girW0WpmEDOQDDqGhLZxBXpjDXe+IaruTN1eN0/UzZlsRKnxKzTECHE84tOCwEOmu+mIRURmWW5IMcucws8LuJ2mzSRiGENlxyINucQVvB5OILLO0FR7Tanr2qZgMMw2WGe9zAKoCJil43nvHfUQtgkRESKtLQeY+IRcZZZYBGKjImzTNPIvcs2FHJM8NaX+IhOgrovO8CLmi/rg3GwXZ/2qp86R2PG49x9DR1TplGs0Wor1mjvrWym+lwyWIwyrKw4IIIOYc8iKunaEXPtlhYxnryRNmeJmyBecRa8CB6MQuCcQUuZXXxmVgkboH+cW2ALkTA9ZNZjbmgrY5ldZ7iKxwGgdJmh5794BqIu0QJSYAjjdBa74MLXzdauRFGmBxMUPPRh4K6pqdH1DxCnUup1Eh9D0pP1NqkdwSDsU/wBmYTwD429IbeIvBXQeoeH9TqWLdRq1IrWq9/8AzVVGOxj/AFckHv3zm/0c9Wo8J+ML7NX4F1FmKruXfpTk/vUdzUTyyDt3HzB0l/SaNbo769VpL6ltouqcMliMMqykcEEEEERXyoM/UMx7zyyTtgprIIi7jEF0UpgQs8wgzFaqEZKiWVFpYbTzLHIhWsZg2fyDaYih4ELbWj+ccNGe4DM9z3gNJGYbnbEsF5OJYAIyaU/iNvcZMNlhhstyFzCrqcTTdP6LfrNZeml0mnqa2+61gqVooJZiT2AAJnWfHvVtf4V8Bau7pHglSarNVVmvU9U7gknulR+SdyOW+g8eeMtBR1fxFangrolwD1fqqTZrLVPIIpyNoP1dgf7Gein0ZXp4W8NdX6t4m8aIwPUbrtTUNLoR9hVKwTYfpu9n5zXelPxGOsdZFvTfAmjtxqtSOH1rDvTUf+p/lOm9C8J6bp2gSrp/Sen6VKaKwdqUU1rtVeewVQJ4K9Ifijr3TPDPVf1mq6VdstDDaL07edV99e7K5/7qTWaxkypk4xCwbEdXaFLJ7QBaV7O8qRe4iNxuiXVGLtcwHVxVpBi1DvA/zmV9ZFbSzc0sdmjhicGeXcIBph7UNpwDPM7iVp3ErXgTNDYjF3OIVu5iAjMqrQciX9H8D9M9GXRtSab+sV/q+sOh5/SqxFdX4d1JP9q8dmnTdf04elfxTpE1QS8p4d0lyZUMhw2qI7EhgVT6FSZU9Vg3cEYO0kH/AJieZ/EvbqT1p7fR3a51dpsuLa0sWydOSe+Sf9qecf3mi6N4c0fR+j6Ovp/TNJUKtNpqF2pWo7ACabxr6NOteGOpW31aLqWmNFtmntKOueQQR9CBweD2IIJB8VegX+KX28jqfRdZtuVSVr12nb/82IQR9CfqJpuqeF+ndY6df5+g12mr1Oms7b63UMp/5EQscFottPMTa0xa0KHvHXsZay9zLFfljMpgtPOqMLarIHzhTTSwOY5cZnu/XuUwWE8RAG9mKqtgRqbeIwwpMFuMmKKMiFMxzbiedR2gKOdsFFrcdjPJc8wqmN01fij+NHxed5sNWsr6fpq88KKkWvA/LBj+TNN4Z9H/AEXw9oMJo+m6GrS1BRjIRQufycZMLg+3DdaeZ5xEDU5KSjp3jTwV4ppqxZrtLfotSQPnSwdP8kWvL+rfwhdFS5za/T9Tfo8nvtV96j/CuBHV49aRrlMdmPEcAw74DTBUpIhrt7zzgATKzgxPLxBa3Amwzah/kAUxU3CC4mDYxhpumCOYHoEFomLYBVAaXh32YlgtMtEv6L/GZ4vuvTc1XXP1e36qxFo/+CINVoKdVQ4sourWytx2ZSMgx/qYxsEAAzKv0v8AiaUaD0d9GRwdSbNZqXX7VArRf+ZLS2r+Eim+wYTWdX1N1X91G2v/AKq2hNZOI6ORiGw4Igas8TYjcQ0W9psrIm9DHFuYa25MCJ3gZsbolqxCn8uUMdt0atyTAKmnmXGOpzDTUATFPBaJY8BSB62nmu/EJJ9mNXu9majp3pD6T4701HwHU6V0escDtqKwdhP/ABV8D/0jKPGnoQo8OazUA+JegVCiyt29u/TDiq0fUAYQ/QgfcIwsxiHvtn6VOZpen9K1Or1mpTTaSio2XXWuFStFBLMSewABJmq9M/8AFFqtf0am7VaIunTeg6YD23rDEKcfV3Zm/wDcBNN4N9EHhrwpQwcdO0SVWuOz2n2rH/y5YxX0/aDk4i02SsjES2huJhmIEet2EawQqpOI1bx1jq3eYCgtBag5m5f5AYrq0O18CWFmG0xhZlli1pCVO2W+ZHDDM2VcmIMjMrscyqxIjA8Tonj30bdW8K9doL6DW17d6Ab6XHKWIfkykAiekT+Hn08U2h7endQ0thfpvVaUzp9fV9RnhgRwyHt2M8D+JNHptF43x4O67gK9zBrNHe3zYOBmvP0fgfcZ4L1/TF1PT/FnRtdQV3CyjqdLjH+Gnos8HaCx+p+Nem3XqONJoLxqryfkNlWSM/VsCdd9JNV/h3oNN3QPCBf26i2dRrsHjzSOAv8AoBI+pM1nRNXV6QfGOhbT9UKf+DaC8YegMCDdYp7MQcKD2GTC165g8gRPLMzYcRq35iCrBaVvW3Ii+e0Umb6TgQqWO2bSZiMLBHYCZp9e0GBGIzBaMZi3IYrEkrEqRjibLiILRyJWgyRK6TAUIDR3JwZaGOcwoOTEKcmVB+4nhTx/4Nv6B4s6Pp+tdLtO7y7hzW3IDo4wyNyfaUg8zVfrr9b6OvFNL6Y8p07rmVZPqBdWp3f2yg/M9OeivNdXhKjXJ99HWdIF/wDvYpnpY6peB1duleHKP6zfrPOcD+wqDA/5YTwX4A11HVLxZ4p8RVkMmt1tYFdLfWqrkL+SWI+RlgP7TDQ4JE8urGY1sLgkieTUTGqYgNHcEbobLDzHZxC+n5EC0tkTZawE3EgRnsBxCgHE21+sipsR1taMtnJissTYYgreBtWcGZqHzhFJxLRaY5bmK8U15AjVA4lqsZYpjGxQTN+lzH3kCG1+REZOViYPswUoxAhrtIzBYYp00HkWRmveWEQq/MXeuYn6aDyXm+9oXccQYU7YK6+02r68oYuWMNVp2wqeTAKG9qcuN08zU8njMQ0gZldlUqYkxKQYK7duYllQ5lVqSshjEQnE26oTdpxFJiKYuyIqGA1PG89o9bz4fkwNQ3MD3mVmntEqc4nl3YzC9HeGyhoW1ZyPnK0xkSutB2ibcCZHr2o09phDa5j1KTLFrYCW2WMY4uzzHqUAw7CJlTCyNG87OYyiHZBtIzBbnEJ1IMCaaAPibzB5PJi1o0Wx2BMFxzBXyJ5CYz2hcEZh87MIpxGfdGF8ygzFt00StyYunzzBvxunm45m5PWTW0ZrjPrB5DYjMx4jN/TCD+2Onylv0Mtlqo3Bji7tLGHAMtFWcGWV5jvbNgDQVptzGteFBmCqk8wDeA0zectK9nLSvyjzAzMFj33R2GdssC42x9hysNFhyIKDgtK/JI3xGRsNCXbBlhvjttmafWNhiI7ZlSEgNK2XGZS2ZT9RKfqJT9RKT9JVbFepsCe/PswImSJXVQZWC0TzTESmYt7xCMkytKe4g8pgHhd25h3d43YGWPXH3kmBrhkRBR2lQOJW1JgQNiGu04jgY3GOwOWhsMLuOIUA4m2r17amjJa+DLWc4aWkdzLvqZd9TLvqZaB3MsV+TGZwMxX0/Mr82KlJIhrrbmMbH5h3HmO64zHJzzHo+ccKRujWAjMLE+rLyvyOYgc4g88YhGj4j+eY3kczKNC1jcRlXsYRBviELE2CAL68VPCdS8820RfLyREHylX0EQ/IRfKOFnlWtCl4nl6OEakjMNtEZ62lnnNxHh3jMUUHiBS2I5c4jiEerYYUqxum9+8BuERtPKy5MSug8wOWAi2seJigkLHV24joe0srIEZkEzX6uDPdPPi2g8yJVpoiMeYn3RHfvFs00GWmNTCdBx9JZ+rP5jNSAZ5tU3OfZgH9MFGTiLUjCC21p5wmyljibHYQtGjiOXj0nM8tMFoD84XrIBjXWmZ7iCzTniBnPsz/AEwo/aGqbU9funnxjfn1FdK2DHFz8mPnuY5uHJhbRT90+MgfSRWuJIgQRTX2lXOQJTsPAiCt8Rw7gRjfzE8kZiDStB+oYCeY+JupziMjdoW+UNVLGWVuRLbGllqRu5EFWMiIUxEb5CV4PEqWIO0wvr908+Lf8/8Af1fCt+IfNeH6Q+eJjRj8T90+MgGkieZFaDycwVAwKSN089WGZ5oY4hpvPEFKYzBZp2G6F7zM3iLZphxAzdoFTtFTTtxN97AD5wsw9mKlYyolVdRldLkZis+N0Vl7wKp5gRyMwWPNyev3Tz4xvzOYbNGY72NhY/2mOloO2GvSYmN0+Mjfo+JYtxzChwTA9MZ62xLfNPeOG5itURN24gRqnMezKxic4my8QCgRIhrOJmp4G1cRagYlCd8RBWw3zLnDwi7looqHtRWU4eNbacHMfMIrHr908xqmirbyZW9HJlLse0olKStKCMwNYwzM6sQPphBtY7Y1NxxCDgmLbVKyGOBEpDYgNxGYLqIqk8RRdE8qKmpgWjvGYnBjskNlJhTVQVafvMbgHjlj7caxv3Rt8tRP3Ry+GaLYRkxNkG315qeN57y2q0y1V7mW/WWSyWFSMyy14/nAmYpED1mAhjiNRacRxxCNO0sYvLHvhGlEJVsCOlxlhQiWC3MsPEa0Amba4HqORNhc4j1hgJa7NLSZYX7GM57Qig8R6rTLK3xGZBM1+vejTzXYhYd54jj5R/oY/wBDH+2P9Id/InlPyJsT1BkPE3scCFW7QmojEZ3bibH/AGzZTjE81GhLn2Yfthz+2FH7QVqMiKqwFDA6NxC7txCSfZn+iYblYK/6YDSeJudsLCr9oasTCevIitE+giRIkSJEip8oF9WRAYBAYh+URfkIAICDEPyiRIg+QgX1giKc5ESJEirBiISciIPkIEmB/ur/xAAUEQEAAAAAAAAAAAAAAAAAAACg/9oACAECAQE/AEgf/8QAFBEBAAAAAAAAAAAAAAAAAAAAoP/aAAgBAwEBPwBIH//Z\";var Er=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAMe0lEQVR4AezdbXYTORMFYHUGclhG2EHCCuAXsAtYCbASZheEX7ADsoNkdjEH5qTH13E5bafdX5JaVaXLoSInsdXSlR7S1ry8nAX+YgJM4GQCBHIyGn6DCYRAINwFTGAgAQIZCIffYgIEwj3ABAYSyAhk4Kr8FhMwkgCBGFkoDrNMAgRSJnde1UgCBGJkoTjMMgkQSJnceVUjCdgEYiRcDtN+AgRifw05g4wJEEjGcNm1/QQIxP4acgYZEyCQjOGya/sJEMjRGvJTJtBNgEC6aWR+/OLb5UXmS7D7xAkQSOJAT3X37Nvl6/umuT3/fvnp1HP4dX0JEMgKawIcZ03zY3uptvlMJNskTHw4MzFKw4M8wCHzIBJJQn1LIBmX6AjH4ZWI5DAPpZ8RSKaFGcQh1yQSSUJtSyAZlmYSDrkukUgSKlsCSbwss3DItYlEklDXEkjCJVmEQ65PJJKEqpZAEi1HFA4Zw2Ik0gHb1AkQSIJEk+CQcRCJJKGiJZDIZUiKQ8ZCJJJE8ZZAIpYgCw4ZD5FIEkVbAlkYf1YcMiYikSSKtQSyIPpVcMi4SiORcVTaEsjMhV8Vh4yNSCSJ1VsCmRF5ERwyPiKRJFZtCWRi3EVxyBiJRJJYrSWQCVGrwCHjJBJJYpWWQEZiVoVDxuoEiUxHc0sgA6ujEoeMl0gkiawtgZyIVzUOGTORSBLZWgLpidYEDhk3kUgSWVoCOYrVFA4ZO5FIEslbAulEahKHjJ9IJAm0yYpAdlGaxrGbQyASSSJZSyCbKF3g2Mxj+5tItjGk+lA9EFc4ZFcQiSQR3VYNxCUO2RJEIklEtdUCcY1DtgSRSBKL26dAFndl54VV4JDlIBJJYlFbHZCqcMiWIBJJYnZbFZAqcciWIBJJYlZbDZCqcciWIBJJYnJbBRDi6OyHBEjOr199RaadXt0+XBVIiRSxkPt/vKbEADReMwLJ8+urHyG0HzaZVoHENRDiGNC5AAlwNCG8Dg+/LmpA4hYIcTzs4sGPM5Ac4ZBu3SNxCYQ4ZP9OaCcgOYFDOneNxB0Q4pB9O6MdQDKCQy7iFokXINuFIo5tDMs+9CCZiEOu5xKJGyDEIfs0ou0gmYlDLuoOiRsgTdN8klViG5EAkFxf3XZOq+Z25gqJGyB/te3HNoSfgb9SJHAR2YkbJG6A/Pv+5o5IIrd12pe7QOIGCNY2DxL0zFqYgHkkroBgEYkEKagq00jcAcHWIBKkoKrMInEJBFuDSJCCqjKJxC0QbA0iQQqqyhwS10CwNQTJ5vHdpnT9rnM0ppC4B4I9eN+c4T8ixp7toytWmgTMIHEPBH/7LYT2Q5p1ZS8JEzCBxDUQ4ki4nfN0pR6JWyDEkWdHZ+hVNRKXQIrhaNrPAZVhF83t0tjz1SJxB6QYjs2ObO/DP7/f3nw5a9uXhLIJZN5vlUhcASmJo7sXcLS8hxICj5fD5F/qkLgBogVHdysAyuanyRv+NOmmMvpYFRIXQDTikG0AJPufJnx/IrGMtWqQmAeiGUd3F3ShtCFY/otdYaVfKpCYBmIFR3dDAcqfd7/etG37cfN1vj/ZhDDwuzgSs0As4uhuhD/vb/7m+5NuIicfF0ViEoh1HLIV8NOE708kjcG2GBJzQLzg6G6HAyg8Fu5G031cBIkpIB5xdHcAoNR929VNo/fx6kjMAPGOQ7YDkPC2S9LobVdFYgJILTi626ELhcfC3WS2j1dDoh5IjTi2W2D3AVB4LLwL47BZBYlqILXj6O4HHgt309g/zo5ELRDi2G+C/QP8NOH7k30c8mAaEnn2zFYlEOIYXsUDKDwWRljZkKgDQhxY72kFKDwW3meVBYkqIMSxX+zJD4CEt137uJIjUQOEOPaLvOhBF0rlx8JJkagAQhyLTPS+CFB4LBy2SF58u4z+/0KbAqR3IVJ9kThSJXnYT+3Hwm3bfsEfFoepzP+sKBDimL9gc16BDVLj+5MNjo/4A2JOVqeeWwwIcZxakvRfP4Di/Fg4JQ6sRBEgxIHo1y9A8XwsnBoHVmh1IMSB2MsVkHi87cqBA6u0KpCnODAEVokEulCsHwvnwoF1WQ0IcSBufQUolo+Fc+LAaq0ChDgQte7CqY+19ye5cWDFsgMhDsRso/DTxMZIQ1gDB7LICoQ4ELGNevbt8vX59VUb2uaz9hGvhQM5ZANSHAdmxxpNAP9zjOfXVz/OmubH6JMVPGFNHJhuFiDEgWh1F2Ccf7/8dN80t00Ir4OBX2vjQCTJgRAHYtVdAsPC7ZQkWQIHrp0UCHEgUr21e59xawkG0iyFA9dOBoQ4EKfO2t5OXb/6unufcaFzlP2jKokDI0oCpDYcCM5K7W+nQvvByphlnKVxYBzRQPCn0+ZU2lz4mLzn2t1OtdZup2RNNODAWKKB4D8ubf4L7Et0xiqfAP7AsnRs25eYFhwYWzQQdEIkSKFsAYbcTlk5tu1LTBMOjC8JEHREJEihTAkMq7dTkpo2HBhXMiDojEiQQlTNevHufYa5Y9u+SWrEgXEmBYIOiQQp5K3t7ZTRY9u+ZLTiwFiTA0GnRIIU8tT+dsrgsW1fIppxYLxZgKBjIkEK6Wp3O2X22LYvCe04MOZsQNA5kSCFuMLtlPVj274ELODAuLMCwQWIBCnML8CQ26k0x7bzx5DrFVZwYP7ZgeAiRIIUppfAsH5s2zdjSzgw/lWA4EJEghSGa/c+w8Wxbd9MreHAHFYDgosRCVJ4WtvbKUfHtk9nGFb7O+R914752qpAMFAiQQqPtb+dcnJs+zizx0cWf3LI6FcHggsTSQi72ykfx7ZY1BNlGQemdIYPJapWJLid8nhs27eHrOPAnIoBwcVrQgIYcjvl7dgWa3lcHnBgTkWBYAA1IBEYHo9tsYbH5QUH5lUcCAbhFcnufYbbY1us3XF5woG5qQCCgXhCsr2dcn5sizU7rhw4jq+x9udqgGDiHpDsb6ccH9tirY7LIw7MURUQDMgykqZpvtbyPgNrJeUVB+anDggGZRkJxl9TecaBdVQJBAMjEqSgu7zjQPpqgWBwRIIUdJYDHJOCVQ0EMyASpKCu7vAvUqkbVYYBqQeCORMJUlBVF+fXV7eqRpRpMCaAYO5EghRUVRVIzADB1iASpKCq3CMxBQRbg0iQgqpyjWQZkMLrQySFF+Dp5d0iMQkE60MkSEFVuURiFgi2BpEgBVXlDolpINgaCZHcoT9WdAKukJgHguWMRdKG8PP3u18vQ9N+Rn+suATu2/ZjXA96Xq0OyNJoliJpNzj+vPv1Btf9/fbmC5EgieW1wfHmv/c3P5f3oOuVboAg1rlIujjwehSRIIVl5Q0HUnAFBBOaiqQPB16PIhKkMK884kAC7oBgUmNIhnDg9SgiQQrTyisOzN4lEEzsFJIpOPB6FJEgheHyjAMzdwsEkztCEubgwOtRRIIU+ss7DszaNRBMUJAswYHXo4gEKRxWDTgwY/dAMEkgkaNcfL6kiOQxtVpwYMZVAMFEUxSRhFATDuwZAkEKM6pmJLXhwLYgEKQws54imdmBwafXiAPLRCBIYUHVhKRWHNgWBIIUFlYNSGrGgW1BIEghojwjqR0HtgWBIIXI8oiEOB42BYE85BD9MRuS6JHN74A4HjMjkMcsoh95QEIch9uAQA7ziP7MMhLieLr8BPI0k+ivWERCHP3LTiD9uUR/1RIS4ji93ARyOpvo72hHggkSB1I4XQRyOpsk39GMhDjGl5hAxjOKfoZGJMQxbVkJZFpO0c/ShIQ4pi8ngUzPKvqZGpAQx7xlJJB5eUU/uySSFXFE56SlAwIpsBIlkBDHsoUmkGW5Rb9qTSTEsXy5CGR5dtGvXAMJccQtE4HE5Rf96pxIiCN6eQKBxGcY3UMOJH5xRMc9qwMCmRVXvienREIc6daJQNJlGd1TCiTEEb0MBx0QyEEc5T+JQUIc6dePQNJnGt3jEiTEER17bwcE0htL+S/OQUIcidarpxsC6QlFy5emICGOvKtFIHnzje59CAlxRMc72gGBjEZU/gl9SIhjnXUhkHVyjr5KFwlxRMc5uQMCmRxV+ScCyVnbvvT075CXT3V4BKmADF+F302WAP61rGSdsaPRBAhkNCI+oeYECKTm1efcRxMgkNGI+ISaEyCQmlefcx9NwACQ0TnwCUwgWwIEki1aduwhAQLxsIqcQ7YECCRbtOzYQwIE4mEVOYdsCdQNJFus7NhLAgTiZSU5jywJEEiWWNmplwQIxMtKch5ZEiCQLLGyUy8JEEimlWS3PhL4HwAA//9O44MMAAAABklEQVQDAGCL7+uOGrzfAAAAAElFTkSuQmCC\";var ei=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO8AAADICAYAAAAA2bY3AAAQAElEQVR4AexdbZLbNhYENTnE1marlv7l+Aje1NaONgex5gZzgxnfwDeYyUESTVUq9hG8+8vaqnUqh4gHeQ9DWR9DSADZIAGyVaREgfh4aKCJhyZELQxfRIAIFIkAyVtks9FoImAMycteQAQKRYDkLbThaDYRIHl3fYBHRKAoBEjeopqLxhKBHQIk7w4LHhGBohAgeYtqLhpLBHYIkLw7LHi0Q4BHBSBA8hbQSDSRCLQhQPK2ocIwIlAAAiRvAY1EE4lAGwIkbxsqDCMCOwSyPSJ5s20aGkYETiNA8p7Gh2eJQLYIkLzZNg0NIwKnESB5T+PDs0QgWwRGIG+2WNAwIlAUAiRvUc1FY4nADgGSd4cFj4hAUQiQvEU1F40lAjsESN4dFiMcsUgi0B0Bkrc7dkxJBEZFgOQdFX4WTgS6I0DydseOKYnAqAiQvKPCz8J3CPAoFgGSNxYxxicCmSBA8mbSECnNuP6wrq9/WV/qZ8pymPewCJC8w+I9WGlKVNlvrt//bI21n8yFXeunfP/kwoXQgxnDgpIgQPImgXXcTK9//WmlRJX9tsWS2oVbu3bxWiIwaGwEwsonecNwKiaWjqqmqu4CDK4l3o2LHxCZUfJDgOTNr006W+SIaG3baOvLU0fhFUdgHzx5hy/yNo/WhSKggpRzh0MT7OJtR+B6F8SjEhAgeUtopRAbVZAKidceR0fgEFe7PTVDR0FgHuQdBdrhChUFeQ0o7ZLuMwDFAbMgeQcEO0VRzl025tIgXlWlAlaNyIp5pEeA5E2PcdoSLuwNsAAlLjI/oGnM6hgBkvcYkYK+N24uZtTd1tvaVTOab0P4mSkCJG+mDXPOLLktVMt92niR6VzGev7CpslX8+YOQ4DkhUE5cEY2KcHqZlQfuFIsLgYBkjcGrUziNm4t1l0+rpuIV8dB/J4XAiRvXu0RZg1WpPKVWYtrTvfZh04G4SRvBo0QY4IQStXgtKPu1iBrL5tRfhsyrc/Ca0PyFtSAQlxdCRWzdrlv7WpD8aovhsnSk7zJoE2QcVqRymcwxSsfMiOHk7wjN0Bo8Y37Ooy7fGwUxatjRLL4TvJm0QwBRgwjUvkMoXjlQ2bEcCh5R6zHpIuWue5wIpUPSYpXPmRGCyd5R4M+rGAh7tAilc8wilc+ZEYKJ3lHAj642HFEKp95FK98yIwQTvKOAHpokaOKVD4jKV75kBk8nORNBDkk23FFKl8VKF75kBk4nOQdGPDQ4mSuO75I5TOW4pUPmUHDSd5B4Y4oLO4pkBEZQ6KqeKUXF0hmzKQbAiRvN9ySpgI9k+rQxqq6Nbofhvb5xmde9UEPkJbkBYCIzCKJSPWlWr57vXyru7H2CmZvoHgFK48ZHSBA8h7AkcEXtEhVVffv/rl82Nbs3fc/3MsIfL/93vOzlrk5fzbYE8SuyUnersglSNc8vQK5fnkjo23bSPsWZj7FKxiUsRmRvLGIpYwf9h9D4RZ8qdqIa4TQG6D7TPEqvEWgMUleKJzdM0vgfj7su8vPLFss1JXePAvvFkDxKhA3ZLQFMjPm1Q0BJ1JZu+qW2pOqah91t7Hd6OsZmbdxoj4pXkXBhYhM8iJQ7JsHXqS6deQ8Y1czMusIfCZm0GmKV0Ew4SKRvDgsO+WUSKQKF6TOjNBRlaJ4FQVX38gkb18E+6YfSKTymelGaNziDYpXPqAThJdO3gSQDJfl4CKVv2o/yimKVwJCSRvJO1JrjSFS+arqRl9rw11tX0bbcIpXWySSfpK8SeE9kflIIpXPIrfyyhiKV6acF8k7QluNLlL56kzxyodMluEk7xjNkkak6l0T5z5XFWzds0F7F71rOK0MSN6B2zMjkcpXc9zc15hLN7f3lcTwXgiQvL3gi0vsOvLAK6niLDTodc9GRt+7WBsYPwwBkjcMJ0wstBsp92edq4uxbpfL07pnpHjFp27s0IUdkbwwKE9nlK1I1WK2uyB8qXDus3gbMl2oW4pKFTSLfEneoZoZfe8T+aOCFgzQ655NXs+fbqlxeUEk7wBtJqOOzvuQI8/pn/uh6oS8dWQoXqGaZZsPybtFItGnEFf/rmQFzR7p0p4wzLnPMq8+ESXuFP/rNw6vM7FJ3jMA9T6NdhflPmzj0vY2LTAD5Lpn/dkgxatA4M9FCyTvuWx4vg2BBCKV3sppfbRNW/mIMDf6Itc9U7xCNIvLg+R1MCR6w4tUy0SWnswWve5ZCuPoKyD03Ujevgh60stcVzto7TndJXgYkcpnGVK80tH3lzXyKZk+qycdTvImaF4hropUt9CsBxKpfDY791nm277z0eEUr6IhO05A8h4jcvZ7QITyRSpfJXELN4ypG03AVxbDzyBA8p4BKPa0W79sDNQllFFvUJHKeF5ix8ZYi7NFNAHnpXjKY/BpBEje0/jEn0W7g0iyxNfmeQrwumcpQLUB+eAWiwDJG4vYifgyimhHrE9EiT310Ci9semSxXejL3L+be2q8VaS2TzVjEleUMsKcScnUvmgcYtEnHjlixEZjvZWIosvNTrJi2q56YpUPoQoXvmQGSic5AUA3bh9kxSpfPA499lixStfWQxvR4DkbcclLhT9I3skKeJqEhcbLF7J1OMuzoB5xyZ5e7Z/c68SOepmJ1L5IHKjL1a8KviZVz6U0oWTvH2xxT8JEjmX7Fu7s+mdeGUM7JE5Bu3FmOm+SN4ebXv9/ud1j+TPk4qC25Dh+bmcQ5Drno25bLyZnGuchW0kb8dmSCFSiSlFjbpir9uc+4z80X5V6f1ylzff/AiQvH5sTp9Bu3ciUjkSnC41+uzf7j5eHu/RmYQlQP9on+LVGdzzJe8Zw8c83bh1SJFqg15J9e3dx9W39//5ZKtqfbxL+FrP/+XuY43C0V14rMV5DtZSvDrTOCTvGYBaT+NFKtxifzFYyWmebPSR81LPX1TVJx2VJQlkay5AFK8gaJ7PhOQ9j9FBDPi9SLBI5YhrzKUJfFkZmZEjsFwUkBcijr4n2pHkPQHO8SknUlm7Og7v+R3mav71x/+q0BNM3K3dMgKvUQR27rNckLZ59/7kumcvhCSvF5qWE2iRShRa19lbijoICvii7m9lbdend9QXEaN1gDmwC5KUpU+cpHglQBxvJO8xIp7vSUSq10tYJxf3t18Hr6o3nqpHB7sLkrU495niVWsbkLytsLQEou89Av+upHGX6xarY4IuUa6zKxS87pkrrxyqB28k7wEc7V8akaovOfYzhz0JUgnXw13etwl67EZf5LpnYyheHbUQyXsEyPHXJCIVcDmhiE393OW9Cv9+9Wqz97X3oVvqiRavels1nQxI3nNtmblIJeZHq8uSpm2DEnevANi8XvJU8UoVdTnkRvKe6AOTF6kO6l6hFlcc5OrcZ6x4tZJpTH1QyEy/kLynGn76ItXX2lf2Udcmf/0OPXgSr1AjuxKXo680EMkrILRtcnXXDqIdpe10l7CcRarN/69eJRl5FSg3+gLVdWPtymkRmvmM98WM6+6tuhC3lg7SdcFDe75A5RUpUqmxlQXek9UMW3YnXhmDu0Bw5ZXhyGtaXvgnQd42nbelsLggXUklKVAilWRlHlKOulrA1x2oskuesxevSF7pBftb444hybERtxGmuNqnXwvtm9zr+MsAo+7WQMFhY6oK59FYcZ8/rJFTm62pRXySvMfNhHbHgHM90EqqrzWWC8Et+t7u18z9ByqMbfyno84ocVWbiEo0lcgk715LylxXO4J2iL3QXodZi1S/vXkJ8whCUXKjr7W4cnX0/WWN9JRCqzJ6PJK3aQIhbuYi1UIvLI21/T8scuVTpDngH+0bg/aWIuszVnSSd4s8XqS6x4pUdrU1FfC5GWPUPbAbLV79+hMSnwNTc/1C8krLJBCpjLiHsJ/EySgJW78s1TUiUi31c8xd8NmIeHUPs6Gqbpz3BMsw/4xIXm0j9Ppla2HEHUukUlgG2HFzX2NUq4BOLUzmr9mTV67W2uBIwQP2dyUJfu43vru8Rwg3+gIvdMbKraMZiVezJ680OO6+o3ZM4EqqxWLxRrNE7XZEkcpbh6d1z1x55QXIf2LW5M3570qmPupuu6QbfYEXPMm3bn4NJofT3mZL3txFqouqWiO73hDrl7va26jyuNFXxKuutrSlyzVstuSVe4M618W1i7VZi1SDrV/uiij61tGHNVSh71qtlOlmSd7GraJIlbJnRebt3GfsuufJP/NqluSV+4vYqzJwzjYLkcpPbOy6Z/QtQL/do5yZHXnl1hCWuKLgNnO23g04F5HKB5Qbfa1F3vud9H/9jkFeX9slD3cilYUuM1SbYZ1NRCrohSVnkUqBa9vh654nLF7NirwpRCo3WrT1wsiwZiUVcB5e3WcvUvkwonjlQ+YgfDbknZtI9Xn1EqZ+7/cYmXa4J1jI541i6ryZ/QiAY3dBlOkIIKunLCb6dymzIS9Fqqd+3PXdkfX9z5+Mtbrfyuetw/TCrq8lXIncNW9POth0RPKv4V6XZDr2NgvySseDziWl06J+7mdyF6kEu1rIuXZkfVr839Zna8HkTuLC7p270ddapPdwmcJLaANjqLDJk9c1mLXo33rCRoWcRSohYy2k/SSdMWwubu2tI7okgGxc93wSxsmTF+4uVdWtGxVOwhp28tu7j3pRCSNGWJbYJ0F2e0AB7PaMwxl4D10grOWChPXCJNOxtkmTt5mHIcmxkQ4FGXXVXVZXE9nwn1ffwX5k34yg3bAD3p5x99DR4tVEnjg5afIKOWBzMEcy4JMgE6ykunU2At7cVMOYbsQ17lU3ebgvgW+nokEumE0BtXxi+4VkOMY2WfKKe6QNpA2FwnU+T4JEPNBt8QjDXrydjcy9ceKVaCDgiwuqj0XlM0nyCnFVaIGNRA5R4MKBzEWqO6kvjHiSF2ajePUMx0mSV67S2gGfVbZzAFCkyvnvSpqLnoponaFKldCNvmjxqvAnTk6OvI071Ge+dtz/YCKVZmxz/ruSbuqyVuv5/rjYPA/sF+LEK2MeDOolwpq7YKHyw+UTlNMiKFZJkRDztf36AkWqZv0yzCWVCwHs70rQynxDtH0kMcfA6YsYpG2h2ogclrdNirxyFdWG0AZBtcR8RCoZhVCgicp/D8vrKCPnPss05ii4+9eC1z1PhrxCXIpUHbuwYIe96P1h9Ef1Ha0JSqb5o9zyGr6QJ6gK/SNNhrwUqbp1BiEu+qIH81Z8NXKjr7XIe7+wVWE+m1OET4K850WqaOgoUkVD1iTAKsJNps8/+KN9YyZBXnF7sLeG5iJSPf27AE6ZryrYr62e07UlBCxeiReC7UctJiODiievAI6dr8mtCJRSquuXK2uRi0Wwf1eCVubTz3UP+r5zn+WCcRDY50th4lXR5BXioudrxgDdPvT6ZZnXw+Z5gh32oickQl30IvkHw0TKLUq8Kpq80pmxbg6wAyYYdR8+X70C3IIxRoiLv+gNPOoK0dwGH32NuWw0I2r0sgAABSFJREFUFJd/zm/FkrcBGDdfk1aSjgBb/H4B/ruSL9bCbINf9IBTDWmGLhty9DWioahX0sWOQdMUS144wF+qJQr5rFdSoUUqBa2qUPdcNbfoXS66Wj5u2aQx+qP9OtqQgRMUSV70Uj7BHHZvMoG7nLdIJeDJSD5qR3fTAGOQXlhtjHkje9ZbkeQ14MX9OYtUVubhqB4knVzdQe2YqCy3+Vxe6xMkP6zvpIw7vbgOsn9Y30h5N3Lx0OdsmfjXiRTWrk6czeJUceSVxpqTSIUddbG3rY47cC0kWrldL65D7Fof3Y8twXxPcZHDWNbkUhR5nUgFviLKfAkmBIlIBb2wiEgFm4fDL3pNB5ryh2CWNYGLIi9cpLIWRlyd60pHhs27bFXhfu6nD1yz+buBgl9e2x+G5DWAl86hJBsYOSSvh2Z9rBz238CjLtpdhnoE/dFiDggEsCMvwiJfHlX1xneqUzhwJVWCUReyGENxaVw/5EVPs+WeAQLlkNcYXAcUBRe5lA+8DBI76j4+4nAzM3t9Y/T+scn1VQR5G5cZhiFSpNJRF/njA8kLNg93gC0W/3KffItGQPoJyRuN2nGCxeLvx0Gdv1uLJUdnQ54ntCJSwf9T11Koeo50UAhyxVZQgbGRihh5pVK17IgNKlKpQd8Y026biX5h3WUp3t1ak09uHRCwVh+10yHhcElKIS/GfQGKVOgmsjIPR+dpMp+zwesLzBB5JwJo1kFWZZD38fF/B1Z3+SLkQIpUWxNAbi581FX7cp+zqY1Z7jJ9ydKuI6MKIe+i98grHTnlXLeXfciVVEftq1+zn7upkRntD9JXsD8xTFS5RaJ8odm6EVNGzs6ZAn/u12ZDH5dX0sJWUrXZZrDPeWot4mxgOREe3v3j37AlqamrXQR5GxC6XQ3FBXLkbzJJ8fHbm5dqW4cRrrpv0qYwy+Upo8hGCIx8jpbLd4JvRRFX8S+GvE0nfCFGb2QP26y9knRKrLD4PWKJ66tueTCBdcT9vHqpaXqUGpz0RxLYi9XGiGdW0oi7rUkx5FWDhYgb6YRL2c+NJE8N8v0PsGWGWv6p/ferV5vPq++WSkqJt5Hdt20qa5epR9z9whU32d8auZhJePAFRuJOedtoPxLSvkjtmaUCsSjyKgjSCTeyvxXgX7jOqHPh3X4rjVHJPlqDKCmFxC+UoMZUevFQsshe3WuYngMp1Cb2pbc/BBu9+O2wM0Zsc/vGGDPl/UH6zL3suz7yevnWDP0Cllccebd1FwJvXGd8vVTXeLtn0xhKUHWLhazLp/3llYZt7R/z8wA7EWiU0LK/mPi+lHprP8mmj/TtA8WSt2/FmZ4IlI4AyVt6C9L+2SJA8s626Vnx0hEonrylNwDtJwJdESB5uyLHdERgZARI3pEbgMUTga4IkLxdkWM6IjAyAiTvyA2ALJ55zQsBknde7c3aTggBkndCjcmqzAsBknde7c3aTggBkndCjcmq7BCYwxHJO4dWZh0niQDJO8lmZaXmgADJO4dWZh0niQDJO8lmZaXmgEAoeeeABetIBIpCgOQtqrloLBHYIUDy7rDgEREoCgGSt6jmorFEYIcAybvDIvSI8YhAFgiQvFk0A40gAvEIkLzxmDEFEcgCAZI3i2agEUQgHgGSNx4zptghwKMRESB5RwSfRROBPgiQvH3QY1oiMCICJO+I4LNoItAHAZK3D3pMSwR2CAx+RPIODjkLJAIYBEheDI7MhQgMjgDJOzjkLJAIYBD4EwAA///Fol1bAAAABklEQVQDADi0p/r9hNzAAAAAAElFTkSuQmCC\";var ti=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAMAAABrrFhUAAABOFBMVEVHcEy97COy3y1yoi603zhfjlp3pTJ4p0mpz27a6tcuY6Gz4S9pmS297CQgV50dVJ4nXKGWuuqdzCey4SOevuudwfSLuiVqmNdThMeSwiX///+exPdfjyuZwPSLuyRomCqOtuy04x0lXKZjkyqw4B6OviRxnNaVu+6BsSWVxCKr2h+byiGYxyJSgsKezSGo1x+SwSN5qSdKe71tnSm76hxxoSl1pSh9rSYbU6B+SBgtY6yj0iG+7hyHtySBquGg0CCGruSEtCV8pt13odpqltFZiMdlkc43bLVfjcqKsee56By35h2l1SCt3R5Ddbk+cLU0aK95quuRvPSEsu9roOWycCVdld9NidjBeyk4ec/RiC74+/Hq8efh7cXL2rJ2OwHO3u7Bl2+ty3+tzNbRtZzJ6HSWumCTaUlth7IzAAAAGnRSTlMA3GegQkJuEicObYnMry3To3G00EOj1K3c6e9b4CAAABpASURBVHic7V0JQxrJEsYTEI3GJCa7iqCgEHVRHwi7ind2s3hsEjVegBqJ7v//B6/Pme6ePqZhEHX9BpjTnq5vqquranrGUOgFL3jBC17wghe0HeFOV6DDiHZ1d7oKHUW4q1zu7XQlOomhcqHcFel0LTqHoQJA+U200/XoFGIFjKFOV6RD6N6j+G8awu79vX2Mva7/oiHsndp38abTtXl49E5B7E8RxDpdn4dG5M0Ui3RzfWG496m2nXBXWoBtTxDt7R4CXtRT7UBiovzptM21DAPhC2WIJ2s8ut8cCnjjNyyKdg/tQ/8JuRBdba1lW9F9MAdxOEfhzxnojU0V9goUe0+YgFDvmzkOflSgd2h/j8NTJiAUGl3kYFSB3jf7AqaeNgGh2AELg0ELDwG/ATsOeAZ+n7wHFVs7WENAM60KdKenJHiq3aCDGBR8cxP+rK1pLmdkKD3l7TrT6dGHq2qbMLqJkIPfnNIX6J0DHWUa95dpt+tMHz59Fzo8lnOhup6xOdFroHgGgXRkYd6FvCeMzalw8FRjARa9CwDz8wtwkl5Qobdk8eZZ5BNHFxyMSXbzfSWHzafeC2KEf/lIseS9orE1DZ6+DUToX3LgaQO9uU011N3GE8PYDMLSzIzYBiI5HeY7Uts2oHdyhoLvB8Kj8zo8fTeIomeSglfq7gUtnksLAJq+TjDZw24Of9RhYewZ3VoepQxwWh2DdhF2Dksfl/AXb1jCa8/ADXQQyW4jZEvMVe2bEbGEf/Hsl2ekAEAFsgDb4NPnbuvxEMDhOSkAuNrZbAlykO13NkWQVVyfVOA5WQCIsRKGawX717Xo1xT2FNG/vFwCU9GxguGxbTXW13t0hT1FRIrLCIPOhqwWz6wBAPQUi5CDorNeQmahVMqiicyyWbzy3BoAQF8Rg17awZIGz1D+UDgPpF8prpCIOEyahAylQX1RTxQ9KwjEEehDohbJx53AWvHZGUCMvpV8Pu8Q0F9UYXnw+RlAhHAegRBA9AEAtgs8x3im1x+ghyVgcEWB5yt/qD+RSOQTlIC8HM/R/lNEEpABQoBc/MFnkQdXITwIGcAEhKEyeND/TM0fRU8ikUo5BHjQ86wvP0R/CgBfZC8Bg32Gv34GeAXknyAEpHj8F8QHgATgJY6Aif+I+KDvm5igbv5ECk5A+InB5276GPRMTFA/B3ABMdj/7C0fi76JCeroAC4Ge/r+O9eeoM919IzNPhyO9PX1I/T2RcKPmqswqGgPRH9A1xQU2DM4VlwulWCOCGYJx8ZG+x/jrbJwpL9nbBsmsgBQML8y2CINoMTBlSLOFGACsjBLur4+OTMzFut9TJoQhcKvb8MbHkT+ZRjQg5BucLBJEsL9IEqCETLOIDoqAOVH95iXxmKPxGxGusdAjSbX1+EdL5jJJPKTuB5GNj2WJj7Sj2JEnB2QEoDvJY52vi2Ee0d/AdLDOzuEANoCkAKsoNAOObi+LX20rycFIiTCgEoDIAELC/Njnb1vFon9gu5fIvl5ApYFAkD0AzgwPzoZ7R9MJYj8eZUGTDoE5OY7qAWRUXQne4bTgKxrA3gCIAWpCQMH4X7gFOKjgfj5FWwENATM5zZzo52xBZHRBTTeyyVgXWwCgIL8iqsBCeLwqosEThERP8FqQFFHQC63Od+BdhBBg/4QAUscATINyDsagCiYkPr8oOlP4CMoASsmAj4SAjbXHloJojE47hUxICOAsYJIA4gKYAYmUjLHHzT9CSR/IuUqAFSBoktACXlCggbMIwIONh/UEnQv5HKIANoEZqQaQFUA57xSVANSJPhxrEG0rx9FRClGAYgOuFYQ3TNUErB2cPBwYykjozkiv9MEZiQawHQDCbYJYPkRB8A/AJ7z4CDdQORPuSrANQE9AYujD+QadufgiH+WAZMGYApSCV4FPEjxKsAaAacbYAlY+riArSAhYO7NQzSDyOjmmksApwGTKg1I5OUa4GEg5TECUg3gPCFkBREBi3Pmx7FaRm8OPfniaQOMJ5RVuIKsFZSSkGI7AVcDDK4gS8DcXLsNQezggCMAy7/kaoC8H8Spfyfxp9QBrwrgO4ZyAj5SAjZdAg5H2/qajtiiS0CO7QaJBqzjYMisAWYbkKeuILEBJY0nxBJw2MYXlUTeLC4KGuAxgoIGOK5gnjECE0oVEI2gNBjwdgMcAYdte0sFlB8QcCBogOMIyAjgoyF/vUBCcAWLgiuoJmAREdAuBuATwA4BmxwBS55oSHQFOUdAZQRdCrD8ibw0GOAJwG0AEnCACUinDw/bwUAEPgNOCFgzEoA1AGVEsAb46QhTnC/MNoFlMwFrjgak01NzwTMQWZubYzQgl1P7wkgBSm4TcHzBlCu/igK2G7DTAI6AqamgGYgsHh5C+WUEeKygKRw0aABnBX1qgGMFKQHpYF2iKHwNxBxhwLUBoivIEFDi+0FqA/T94IQoPqcBy4IruCRzBCgBweoAkv+QtgHREzIEA3lGBQyekOMICJ6QzBEwEbAfJAMxaFkZDUAEzCsdAUYDipwGpAy+MKFAtIIKX3hJ4QkRAvaDe3kdfBMMQ8CByRNS5YX9a4A0HCypNSDHa0AaEbDfFZBP2Iu6VrcJUCMwzxkB6gv7jIa0NkASDnqSYp5oyOkGHAL2gnnpQrRryiFA1IB5qSMg0wDOBqgYEGwAEwws6wnYJATMuUYAElAIJDYcmkpLCNiUxMOytGiRswEGX1jIiWnzwjN8TmgNp0R4Avb2AjCE3bBT9doAH02A6wYYV3BC4wh4o6E8pwElVWJ8U6oBhdYNYRTLn5bYgJwxK1h0bg4K0ZCyG/D0goIGSAlgkmKuFcQaUGj5sfuhKVYDNEbQ5Aj46Qa8NoDLCcnTogsSArAGAAYKhRY9wu4pkYBF7Ac4GrCgIKAkSYxTBtQpISYadFWguKIjYF70hNKMDSgU9ltrBF37pAlIPCEtASZHQEZBSswJeTQg6/GF5QS4TaDQ2nv4Yvv7rg2QBwMeAnSOQMrKERBdQTEvrI6GHBWA72FroSeIdOFXWSk1QH1nQKcB8uvv6QbcrKAiGpqRETDnGkFMQCtvM47t+yLAGw5mFUMETIlxhQZIs4LKvLCgAeXm7WAkvb/PtgExJWIKBhRDBPyGg44NKIp5YUNalNEAaATKTccEMSK/1BPSNQFpXph1BJQ5Iewmia6gGA6a8sJcN1Aul5tUgSh+H7C3CUjywktcXlimAawKKI1ASuIMm0fJOGlRLinmEFAoN/kuwu49SoDCE5K5gtsSR8AbDJiygsL9YQUBS2I4KHUEoAo01RFEu/b2NDZA5wtrNMCJBzUqkJBpgHqUzAIJBmQagN5H2uQ7eXv3HAK4eNDOF3ZsAM0LJ4j0qeL97dVVvYZQv7m6ur2/z6eIFghDBPiEQFZJwIGsCUANaModHFIQsCgQoPKFhZyYowFAwpXbq3r1VwQyI6jWAQ+JCTJSinUFl1U5IdYREDVgn9iAcrmJxEB0b0/eBEQCVIlxaV44NZG4v6rxUosALNyvIEMoGgFVUiwnT4tSRwCgCTPYvefRAMYGmDwh/uYYVYGJieWrmlZ4h4Sr2yKgQBoMwCYwacgLpwUCyvZtYKjAE5BmbMABmxdW3BnwDhRLJe7rvqQnqN3e05tD2rywJxriCUBNwL4NRLoKRAUkvvCBkBjXEUBUAGi/nfi4MdyupBKqflA1SESqAdaJke6CSgMkWUHPcFkmGMAEJBL3/nTfA8BB3mqUjDccREbAtg0McQRMSaIhGQGSnBgiILFy1Zz4ELWr5bxqlIwnMS76wlQDrN3hgk4DRAI+MsOEuH4Qh4P5xK3e7usB/hZ0CytmX1hFAKLA0hfqdQngUyKUgDVBA5R5YSB/sYXLT0mo3xaLegKYrKDXF7buCGM8AVwTWBS6QcV4YUpAvtnWLwBSoAoHc0oCCk4bsIuJhzABXldwUUiKGW+N5G8DER+idgvcK2kwMM/7wk5WcJ8hwCoginYVOCOgzgqa8sKJ1tWfo2B5mdWAGTJkXuoLt2IFI4WC2Qr6ujUSqPyIglKJbwIfxWDAmxUsW1vBbt8EqFxB7Ajkg5YfmsP7UlZGwJqaAPtuICYh4FBFgDorGPj1x7i6z25rBokoNKDLZjD9EPrXLuqEgDktCjWgTfLDUGl920yA4AhY5QS6ykQFFFlB/TAhogHF4Oy/B7VbxIB6lIyQFrXsBqL75XITBMxwwUDxvn3yA9SX1n0TULAlIFJQEEDbgMQXRgSsM2nRbZX/E4xfBNvBpGrEuCwYsOkHewtsE+B7Ac2tEVYDSsvK4PcyKNNQu530RQBhwCIl0F2mGuBNCIhpUTkB2WW1Abi8/NlKbMSgejUzw7uCIgH7jA2wICDGEaC5M6DMC5fu1TJeAgSlBNXbGW1WkLUBFo5ArFwQbIA7UIzLCsoGiiECiprsDyQgMCX49UqRFGN84bK1Kzik1wDVeGGXgJKuB7zEsE6QKVC9/WhMixYss2JDjgYIVlBPANMEdNL9IAz8DIqBK9QGvASIrmCrGqC8QewhQKsAVAMuL39YdYg3440bxa7a2oI5MW5BQPSNVAN0wYBAgFayHw4DNkpQ3fp99fPFzo3cdtx5hggwvYB1TggQUEYU8GlRfwRMrm9n9T7gJYOf/pWg/vnz59XV6YsNqR7UNzWJcWsCusq4DfhPi3JZway+k2M04PLcokOcBRqwevEZcJCR0Fa9y20GSgDTBDxZQR0B8PFR/WW95HDuu0NsTEMCVi8uVldBU5AyoA0H7QgQ42HBE9I+QGyIgn6csxrgXwmqXz5j+S8AEatnDQ9x9cVNeTTULg3wjJLBGpA1hMGAADSdY/HPfSvB7OcLOOGf1c9ncfHPqnebirxwwZaAgmgD/BIAVEDrBGACLqnwhAt/XlEDCQ+VAM7gQlJsbHcuAWkxIWBBwFXZ6QYEAph4eE06Tgq2AcP1/HEO5T4/dxUBwI8S3BDBCQWIjh2BgjpuA2mqAs3dGvlUV7mCh0I87E2MT65r4iBCABH//Nyl4tyHV1T97cKDz6I9rKUXRVewbHuDOPphtnqnywurnp9FGrBtyoT9OKe45GZmr2jWSwDELk/BHfvo2J7bDVgEQx8utn6t+yXAkxU0GXWXAAE/TM2gIifgQnCO7hb5hyYKtuFw9P3FRQaY1D3J/VEVAYwGmAyakoDzcwN3NyoCLi5mWQrqUkfAQgMAARcNyICCAEk05OaEzAR8p/J+5+bfz79/19tCQMCZO8EP+sI1XgtqU5KsoEVG6D0sFJRXlybFNMEAGi5rsmaAAGaCP/QXznX0Vc+I3Ojj0HCBqeDM4d2hJy9sR8DF2Z916FmowkHNrRFTS/7x/TsRnOGAzrRKUP3rTAWsDRsO+dU7z50Bi6zwACrzT1ha3SotilxBHwQgafGX/tLZ9+9qr6g6qySA0rDlUFBPCxpgQcBbXNynGqJyyicBxBeeMciPNMDBOT/HM6US7BgIgKhQCupCN2BxY+Tt2ekZ/OygitS90dBiYATIofKKNqCEp/h7enbmLJw6EwSNEWr7XFrU5s7Q2ekpKO30b8RAFSiBbsC08MxAEASolKBCKga/cEYXmM3w92wcEwi112kCexY3R6O4IFAUHt4FCqKPzhnfIxEMAX98l+pA8tSIM/zToAw4TcBqpOAHpzgywA0YVV1WkPWEJo0E/GHEtcIprJgJcHjA2UPIAPaErMYHvCfFnJyeUgbqHhsgJ8BHL3BtEv8PVVhQobVCX36RrJ/gHzD7htyCO6oBViNE3p2eYICC6CDH+t3hoegLS0aL+nCEDARc/6vsByunpFYnpyfuEq3sCVmhP6cVSEGdaIAVAa+Zk5xe0Ut6l1ZpAJcXNrrCegJU6g9Q3WDrdcJIDpZm2XW6FaZP61gDrMaLv+WKcUKU2t2cjoAln7GAjgC1+kMCvp1Y4vQEdAh1+2fnwrsn4FzodPDHDdLq6UUjAcZwWEPA9b+6BlTD9QGfHfi7Q5bwAt1O6oxmcDppVKuwG7R7cmwX/Cn8oB+GAeATLC4agoHmCbjWqD8m4But1wnz+YYkddfA7w7dCrdt3UAG7MbLv/vG4aTh1qJ+aHh60pgRUhFw/a8pH3BC6rPzTQ2y74TZdFK5KZet5A+9Fotlqla9OzjwEuDGw0umnKCCAL36Q4xr5DagYfnIyNtv37bwXx6jDyiBqUjtbg0bAdkwIWM/KCfg+tqcE8x8g9XacupEAbds4V1wB/o9pgKQYy0fGop+Oxbwjb0TU60vbrqJcTEpZlBkhQaY7w/VxDoxtTOsHx/bPj275T0Hdy+qere5qXh+1pQWlhFw7WeswI2aACMqts8MvRNLSAIGuErW71QPEBtuDPz0EKDt/F00WiBgy/YdAq+PkzyOj46PhdvS9bV5+SARvSvk0YDrP1RDPzhUk2KdLPDOUv5QJHmUPDo6PnK+cD1Z4UWrQgqs7wyIGmDo/B3Ut5JJWBP2I1vyroM/syYgWjlCgEUlyRwuCrLV7uYXvGlR/f1xngA/1h+jkXRqRHEsLiW9e9Cm5GtbAkLvmNLYosTb8rW7hQXxDnlWZ9GqHAGa0E9ALSOpjW+8tSbgraqohihd/fbjR/6fjejHyLAE+FV/gCs7iQVYyx+KHsXjcfiFP/gDvnAh47lmmAKXgG1tP+AScO2j86eoZo5oXejErsWdRWavOyXtCQi9i6uQufIMzQAULLFvEtHptUOA2fdlcHOkrE88Tq+VEtY2UEtAPO5pBlALZmacEePaUTKEAFPox6Pa0FRnnHzZJX6vvQ0ERgD9LZjgh87IcrwhucT126VJOl5YN1QSE2AM/XhcHeEqkLrQqtCNdIdzDKkw3W1vAwGS7nl48cFX0gx+hc95z8Cnudb1KoAIsFJ/aAEcwamkcaY+4+McOXHuUIBkU++SesdRPS4sS5UAtYRt9I8W1FYAEOC/8ydo8MJ6KuPdyPHRjAmAbWBch3hDpgRQDe7Xs7oB8z+vLdUf0JrRVsWIplpAKKQnQKkE6BUo9yWlCvz0Ffpx5TVak3+8ybepvTOVq1ICWOeaUsif1g8KtCp/cy0AtAFz0UolCBI3JlU0oZlOEMFPy8v4fDNQ86i3Kv940+9VNbYBCE07CAQtG4DxZLPyhyJ+uEduUfsoaF3+5luATxVAblHb2kGj5QYQb+HNwq+pm+k4xcyMTNQzbAsF1ZujceF8ykl2HPw02wdARGk4geRkQ4/xOBuAwIV2mAIxBBrnIx0ictytC6mNe3GaDIQcvONOypRKNtN18DlKNoLWghonyrh74vH4OFsvpzLeaHA8nmlFfhQS+sbRUbANoWZzciVaaQGgDeiyAjIESMFNBpbnOQHz66tCTcYBjgpk4hnwcSe67v3g6SjTMLwx0h9q46hM4ZTemrgr3I9zVGsKAIBOksmws7g7dz7sxowkYWR9+ePkhEzxzNfZxyxxlaEMtaoAoCfMMIhndHD3JjM3LXFQG09qz8QJra1VpVX5Q9GKuSpeJJMZ5aPORlQbGR/y+0NLfSBRgSSSJ4M+sGL0myHbMu7OZDJJ5mixoXjUWX/1G8kkLQ6f0Tmhc66Mu8s9hq8J/ivre6ISDYgmsTi+IB4Yt7WIQPmDRAAKAJyhVmpwfJwc920PajeZSiUo2SEqgfyzrchWElSr4v6wH88kWalUMoAEgyZUazfxChLfUwqZ2BN6F6R/EYgCABWocEiSrxW2IAkqFqo3N+OZrS1zKXanTW4E9N/WonzVtsjXCluVra2NjQ3IQ+MGMIEBlhrjmQrc4Ud+y9NuBaQAQAW2ggQUFw/pQitbG4GWzp4osH/BHAV1RNXk67ohmW2wB8lE22CP2pAfI/mTDcnqBrPBUw4gNjAFAL7AxhPEbnDyh6K7Gxs7G+jLfjboL7eJru7IamWBHbd4/uTuCekRO/wXb2s5CmDxeufJ4X2Q8odCs7Jz7DK//DYzduGR/g72HrUr3cWvBPYvVzHe7iqxo96lwU7zf6o6N7cSoAXEeN9qXR8Ws4F1gRTRWQ92vau79BMkdp1zKU4hWQ/UAmK8Dlaq9iJgC4gQfT/7CUyzzK+z9omuyycFlDvYIz7RM3gL5TYz1Zj99ClgC4jx9tNTwV+BW0CM93+1qb7cUgAnaUcDgIh++Otx4hO/+HdbGgDE2787JqMF/m5TA4B4//cTQLsaAMKHTktnxp+Bu0As3v752PFbG1wgFq9/67SEevzW1gYA8eG3R40P7ZY/FHnUDHxoWw/ooq/TQuow0H75Q6GB/z1atN0AQERDHzotpwrtNwAY4dYY+CcgcT3lfrB5UU5L6PvnUaLvoeQHZoCc8otQhS/SRWt8ERa+OKtfpAXjTQ9iAB0Gvpjwj/GIgPGg8gN/6KHlM2HkYeUPhUc+B4kvLR74ZeTBDKDDADjtV7cGX7kZXfiq2sge/hV+vjJrwoK7Kj8Q4cHlBwx8fTT4Mvzq4eUPhV51Wm4XHZEfuAOrq6tf8fcrmugP96Xb+N3OTvKn3jLEI9hjv/J/2CH5QWe4+ijwwB0gz8C0U41p8mU28RumV8WVafcod+c0f5BmE1no2PVHDEyvThOsMl92G92wyq6xO9AeZ/Oq8Bd8savsZrzWweuPGZgWxBLE4ERlFoZHRgYgRkaGhZ2rbhHaEvC3o9efYcAGq19HBrh++9WAy4IlOi5/Ewz8MyCpdfjVQDMcPAL5IQO/85PzmXZndOVrDwhaFW7bK6AH4p9Py9bo1Bn/x4sBptJ8PXk+gPgD+pg9PDDMcyeUyH8ei/zAI3JrRYAq7Kzj5ekRPxmLVyP0z0gJbCG/s8U+dPynw6thR3SGBW5teMTn9QoDCvygw90fjzDLgAzDAzbh2qsBQ3G/P5rm70DHgO+Lz5Y3MKwj4TGpP4Xqqo1YXXwGYegeyIt8bJefoH+Yb/+/Dzdz7XlAFkaGXW0ARTZL6EMAXrNhp6KvArtQ4VcOgiryBS94wQte8IIXhP4P4nVznqPTxGMAAAAASUVORK5CYII=\";var{TabPane:Mn}=s.Tabs;function si(e,t=!0){let n=(0,r.useRef)(0);(0,r.useEffect)(()=>{if(!t)return;let o=document.querySelector(e);if(!o)return;let a=!1,i=!1,l=0,u=0,c=0,f=0,m=0,d=w=>{o.scrollLeft=w,n.current=o.scrollLeft},g=(w=n.current)=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),c=window.requestAnimationFrame(()=>{d(w),f=window.requestAnimationFrame(()=>{d(w),m=window.setTimeout(()=>{d(w)},80)})})},p=()=>{a&&(a=!1,o.classList.remove(\"is-dragging\"),window.setTimeout(()=>{i=!1},0))},v=w=>{w.pointerType===\"mouse\"&&w.button!==0||o.scrollWidth<=o.clientWidth||(a=!0,i=!1,l=w.clientX,u=o.scrollLeft,o.classList.add(\"is-dragging\"))},y=w=>{if(!a)return;let F=w.clientX-l;Math.abs(F)<4||(i=!0,o.scrollLeft=u-F,n.current=o.scrollLeft,w.preventDefault())},k=w=>{let F=o.scrollLeft;if(i){w.preventDefault(),w.stopPropagation();return}g(F)},E=()=>{n.current=o.scrollLeft};return g(),o.addEventListener(\"pointerdown\",v),o.addEventListener(\"click\",k,!0),o.addEventListener(\"scroll\",E),window.addEventListener(\"pointermove\",y,{passive:!1}),window.addEventListener(\"pointerup\",p),window.addEventListener(\"pointercancel\",p),()=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),o.removeEventListener(\"pointerdown\",v),o.removeEventListener(\"click\",k,!0),o.removeEventListener(\"scroll\",E),window.removeEventListener(\"pointermove\",y),window.removeEventListener(\"pointerup\",p),window.removeEventListener(\"pointercancel\",p),o.classList.remove(\"is-dragging\")}},[e,t])}function Zl(){let[e,t]=(0,r.useState)(\"quark\");si(\".account-tabs__nav-scroll\");let n=[{key:\"quark\",label:\"\\u5938\\u514B\",content:r.default.createElement(st,{qrcodeUrl:\"/quark/qrcode\",cacheUrl:\"/quark/cookie\",checkStatusUrl:\"/quark/check-status\"})},{key:\"uc-cookie\",label:\"UC\",content:r.default.createElement(st,{qrcodeUrl:\"/uc/qrcode\",cacheUrl:\"/uc/cookie\",checkStatusUrl:\"/uc/check-status\"})},{key:\"uc-token\",label:\"UT\",content:r.default.createElement(st,{qrcodeUrl:\"/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\",checkStatusUrl:\"/uc-tv/check-status\"})},{key:\"115\",label:\"115\",content:r.default.createElement(st,{qrcodeUrl:\"/115/qrcode\",cacheUrl:\"/115/cookie\",checkStatusUrl:\"/115/check-status\"})},{key:\"baidu\",label:\"\\u767E\\u5EA6\",content:r.default.createElement(st,{qrcodeUrl:\"/baidu/qrcode\",cacheUrl:\"/baidu/cookie\",checkStatusUrl:\"/baidu/check-status\"})},{key:\"ali\",label:\"\\u963F\\u91CC\",content:r.default.createElement(st,{qrcodeUrl:\"/ali/qrcode\",cacheUrl:\"/ali/token\",checkStatusUrl:\"/ali/check-status\"})},{key:\"guangyapan\",label:\"\\u5149\\u9E2D\",content:r.default.createElement(ld,null)},{key:\"xunlei\",label:\"\\u8FC5\\u96F7\",content:r.default.createElement(id,null)},{key:\"yidong\",label:\"\\u79FB\\u52A8\",content:r.default.createElement(sd,null)},{key:\"tianyi\",label:\"\\u5929\\u7FFC\",content:r.default.createElement(ni,{api:\"/tianyi/account\"})},{key:\"123\",label:\"123\",content:r.default.createElement(ni,{api:\"/pan123/account\"})}],o=n.find(a=>a.key===e)||n[0];return r.default.createElement(\"div\",{className:\"account-tabs\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"\\u7F51\\u76D8\\u767B\\u5F55\\u65B9\\u5F0F\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-list\"},n.map(a=>{let i=a.key===o.key;return r.default.createElement(\"button\",{key:a.key,id:\"account-tab-\".concat(a.key),type:\"button\",role:\"tab\",\"aria-selected\":i,\"aria-controls\":\"account-panel-\".concat(a.key),className:\"account-tabs__tab\".concat(i?\" account-tabs__tab--active\":\"\"),onClick:()=>t(a.key)},a.label)}))),r.default.createElement(\"div\",{id:\"account-panel-\".concat(o.key),role:\"tabpanel\",\"aria-labelledby\":\"account-tab-\".concat(o.key),className:\"account-tabs__panel\"},o.content))}var I=bt.default.create({baseURL:\"/website\"}),qt=(e,t=\"\\u8BF7\\u6C42\\u5931\\u8D25\")=>typeof e==\"string\"?e||t:e&&typeof e==\"object\"?e.message||e.msg||e.desc||e.resultDesc||JSON.stringify(e):e==null?t:String(e);I.interceptors.response.use(function(e){var t;if(e.data.code!==0){let n=qt((t=e.data.message)!=null?t:e.data);s.message.error(n);let o=new Error(n);throw o.handled=!0,o}else return e.data.data},function(e){return Promise.reject(e)});s.message.config({top:\"40%\"});var Jl=\"https://o.alicdn.com/captcha-frontend/aliyunCaptcha/AliyunCaptcha.js\",Ir=\"yidong-aliyun-captcha-button\",Ql={2:{prefix:\"7elm7k\",SceneId:\"1rmw421p\"},3:{prefix:\"7elm7k\",SceneId:\"kcx16g7r\"}},Rl=(e,t)=>new Promise((n,o)=>{if(document.getElementById(t)){n();return}let a=document.createElement(\"script\");a.id=t,a.src=e,a.async=!0,a.onload=()=>n(),a.onerror=()=>o(new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u52A0\\u8F7D\\u5931\\u8D25\")),document.head.appendChild(a)}),ed=()=>{let e=document.getElementById(Ir);return e||(e=document.createElement(\"button\"),e.id=Ir,e.type=\"button\",e.style.cssText=\"position:absolute;top:-50px;left:-50px;opacity:0;pointer-events:none;\",document.body.appendChild(e)),e},td=()=>{let e=String(navigator.language||\"\").toLowerCase();return e.includes(\"en\")?\"en\":e.includes(\"tw\")||e.includes(\"hk\")?\"tw\":\"cn\"},nd=(e=\"\")=>{try{return window.btoa(e)}catch(t){return window.btoa(unescape(encodeURIComponent(e)))}},rd=()=>{let e=navigator.userAgent||\"\",t=e.match(/Android\\s+([\\d.]+)[^;)]*;\\s*([^)]+?)(?:\\s+Build|;|\\))/i),n=e.match(/(iPhone|iPad|iPod);.*?OS\\s+([\\d_]+)/i),o=e.match(/(Edg|Chrome|Firefox|Safari|Opera)\\/([\\d.]+)/i),a=navigator.platform||\"Web\",i=o?\"\".concat(o[1],\" \").concat(o[2]):e.slice(0,120);t?(a=t[2].trim(),i=\"Android \".concat(t[1])):n&&(a=n[1],i=\"iOS \".concat(n[2].replace(/_/g,\".\")));let l=\"\".concat(window.screen.width,\"X\").concat(window.screen.height);return[\"\",\"\",\"3\",\"7.17.7\",a,a,\"\",\"\",i,l,\"\",\"\",\"\",nd(a),\"\"].join(\"|\")},od=async e=>{let t=Ql[Number(e)];if(!t)throw new Error(\"\\u6682\\u4E0D\\u652F\\u6301\\u5F53\\u524D\\u6ED1\\u5757\\u9A8C\\u8BC1\\u7801\\u7C7B\\u578B\\uFF1A\".concat(e||\"unknown\"));if(await Rl(Jl,\"yidong-aliyun-captcha-script\"),ed(),typeof window.initAliyunCaptcha!=\"function\")throw new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u521D\\u59CB\\u5316\\u5931\\u8D25\");return window.AliyunCaptchaConfig={region:\"cn\",prefix:t.prefix},new Promise((n,o)=>{let a=!1;window.initAliyunCaptcha({SceneId:t.SceneId,mode:\"popup\",button:\"#\".concat(Ir),language:td(),showErrorTip:!1,slideStyle:{width:360,height:40},success:i=>{a=!0,n(i)},error:i=>{a=!0,o(i instanceof Error?i:new Error(qt(i,\"\\u6ED1\\u5757\\u9A8C\\u8BC1\\u5931\\u8D25\")))},onClose:()=>{a||o(new Error(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"))},getInstance:i=>{setTimeout(()=>{var l;return(l=i==null?void 0:i.show)==null?void 0:l.call(i)},0)}})})},X={IDLE:\"idle\",LOADING:\"loading\",WAITING:\"waiting\",SCANNED:\"scanned\",SUCCESS:\"success\",EXPIRED:\"expired\",ERROR:\"error\"},zt={NEW:\"NEW\",SCANNED:\"SCANNED\",CONFIRMED:\"CONFIRMED\",EXPIRED:\"EXPIRED\",CANCELED:\"CANCELED\"},ad={[X.IDLE]:\"READY\",[X.LOADING]:\"LOADING\",[X.WAITING]:\"SCAN ME\",[X.SCANNED]:\"CONFIRM\",[X.SUCCESS]:\"SUCCESS\",[X.EXPIRED]:\"EXPIRED\",[X.ERROR]:\"ERROR\"};function st({qrcodeUrl:e,cacheUrl:t,checkStatusUrl:n}){let[o,a]=r.default.useState(\"\"),[i,l]=r.default.useState(X.IDLE),[u,c]=r.default.useState($t),f=(0,r.useRef)(null),m=(0,r.useRef)(null),d=(0,r.useCallback)(()=>{f.current&&(clearInterval(f.current),f.current=null),m.current&&(clearTimeout(m.current),m.current=null)},[]),g=(0,r.useCallback)(w=>{d(),f.current=setInterval(async()=>{try{let F=await bt.default.post(\"/website\".concat(n),{sessionKey:w});if(F.data.code===0&&F.data.data){let{status:_,cookie:z}=F.data.data;switch(_){case zt.CONFIRMED:d(),a(z),l(X.SUCCESS),await I.put(t,{cookie:z}),s.message.success(\"\\u626B\\u7801\\u6210\\u529F\\uFF0C\\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\"),setTimeout(()=>{c($t),l(X.IDLE)},2e3);break;case zt.SCANNED:l(X.SCANNED);break;case zt.EXPIRED:case zt.CANCELED:d(),c($t),l(X.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\");break;case zt.NEW:default:break}}}catch(F){}},2e3),m.current=setTimeout(()=>{d(),c($t),l(X.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\")},12e4)},[t,n,d]),p=(0,r.useCallback)(async()=>{if(i!==X.LOADING){d(),l(X.LOADING);try{let w=await bt.default.get(\"/website\".concat(e,\"?t=\").concat(Date.now()),{responseType:\"blob\"}),F=w.headers[\"x-session-key\"];if(F){let _=URL.createObjectURL(w.data);c(_),l(X.WAITING),g(F)}else throw new Error(\"\\u672A\\u83B7\\u53D6\\u5230 sessionKey\")}catch(w){console.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25:\",w),l(X.ERROR),s.message.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25\")}}},[e,i,d,g]),v=(0,r.useCallback)(w=>{if(!w){s.message.warning(\"\\u6CA1\\u6709\\u53EF\\u590D\\u5236\\u7684\\u5185\\u5BB9\");return}(0,Mr.default)(w),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")},[]),y=(0,r.useCallback)(async()=>{if(!o){s.message.warning(\"\\u6CA1\\u6709\\u53EF\\u5165\\u5E93\\u7684\\u5185\\u5BB9\");return}await I.put(t,{cookie:o}),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},[t,o]);(0,r.useEffect)(()=>(I.get(t).then(w=>{a(w||\"\")}),()=>d()),[t,d]);let k=()=>{switch(i){case X.SUCCESS:return\"#22c55e\";case X.ERROR:case X.EXPIRED:return\"#ef4444\";default:return\"#3b82f6\"}},E=i===X.LOADING;return r.default.createElement(\"div\",{className:\"qrcode-card\"},r.default.createElement(\"div\",{className:\"qrcode-wrapper\",onClick:p},r.default.createElement(\"div\",{className:\"qrcode-glow\"}),r.default.createElement(\"div\",{className:\"qrcode-container\"},r.default.createElement(\"img\",{src:u,alt:\"\\u626B\\u7801\\u533A\\u57DF\",className:\"qrcode-image \".concat(E?\"qrcode-image--loading\":\"\")}),E&&r.default.createElement(\"div\",{className:\"qrcode-overlay\"},r.default.createElement(\"div\",{className:\"qrcode-spinner\"}),r.default.createElement(\"span\",null,\"\\u751F\\u6210\\u4E2D...\"))),r.default.createElement(\"div\",{className:\"qrcode-status\"},r.default.createElement(\"div\",{className:\"status-dot \".concat(i===X.WAITING||i===X.SCANNED?\"status-dot--pulse\":\"\"),style:{backgroundColor:k()}}),r.default.createElement(\"span\",{className:\"status-text\"},ad[i]))),r.default.createElement(\"div\",{className:\"cookie-result-wrapper\"},r.default.createElement(\"textarea\",{className:\"cookie-result\",value:o,onChange:w=>a(w.target.value),placeholder:\"\\u70B9\\u51FB\\u4E0A\\u65B9\\u4E8C\\u7EF4\\u7801\\u5F00\\u59CB\\u626B\\u7801...\",spellCheck:\"false\"})),r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:()=>v(o)},r.default.createElement(\"span\",null,\"\\u590D\\u5236\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\"}))),r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary\",onClick:y},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"})))))}function ni({api:e}){let[t]=s.Form.useForm(),n=async()=>{try{let o=await t.validateFields();await I.put(e,o),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(o){console.error(o),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(o==null?void 0:o.message))}};return(0,r.useEffect)(()=>{I.get(e).then(o=>{t.setFieldsValue(o)})},[]),r.default.createElement(s.Form,{form:t,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,null)),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,null)),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:n},\"\\u4FDD\\u5B58\")))}function id(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async()=>{let d=await I.get(\"/xunlei/account\");e.setFieldsValue({username:d.username||\"\",password:d.password||\"\"})},[e]),c=async()=>{let d=await e.validateFields([\"username\",\"password\"]);await I.put(\"/xunlei/account\",d),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},f=async()=>{try{a(!0);let d=await e.validateFields([\"username\",\"password\"]);await I.put(\"/xunlei/account\",d),await I.post(\"/xunlei/send-code\",{}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{a(!1)}},m=async()=>{try{l(!0);let d;if(t.trim())d=await I.post(\"/xunlei/verify-code\",{code:t.trim()});else{let g=await e.validateFields([\"username\",\"password\"]);d=await I.post(\"/xunlei/login\",g)}d!=null&&d.hasAuth&&s.message.success(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u6210\\u529F\\uFF0C\\u53EF\\u5C1D\\u8BD5\\u539F\\u753B\\u64AD\\u653E\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{l(!1)}};return(0,r.useEffect)(()=>{u()},[u]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5BC6\\u7801\",autoComplete:\"current-password\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"}))))))}function sd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async(d,g)=>{try{s.message.info(\"\\u8BF7\\u5B8C\\u6210\\u6ED1\\u5757\\u9A8C\\u8BC1\");let p=await od(g);await I.post(\"/yidong/send-code-captcha\",{phone:d,captchaType:g,puzzleVerfycode:p,clientInfo:rd()}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(p){console.error(p),(p==null?void 0:p.message)===\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"?s.message.warning(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"):p!=null&&p.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(qt((p==null?void 0:p.message)||p)))}},[]),c=async()=>{try{let d=await e.validateFields([\"authorization\"]);await I.put(\"/yidong/authorization\",{authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(d){console.error(d),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{a(!0);let d=await e.validateFields([\"phone\"]),g=String(d.phone||\"\").trim(),p=await I.post(\"/yidong/send-code\",{phone:g});if(p!=null&&p.captchaRequired){await u(g,p.captchaType);return}s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(qt((d==null?void 0:d.message)||d)))}finally{a(!1)}},m=async()=>{if(!t.trim()){s.message.warning(\"\\u8BF7\\u5148\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\");return}try{l(!0);let d=await e.validateFields([\"phone\"]),g=await I.post(\"/yidong/verify-code\",{phone:String(d.phone||\"\").trim(),code:t.trim()});g!=null&&g.authorization&&e.setFieldsValue({authorization:String(g.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u79FB\\u52A8\\u4E91\\u76D8\\u767B\\u5F55\\u6210\\u529F\\uFF0CAuthorization \\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat(qt((d==null?void 0:d.message)||d)))}finally{l(!1)}};return(0,r.useEffect)(()=>{I.get(\"/yidong/authorization\").then(d=>{e.setFieldsValue({authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim(),phone:d.phone||\"\"})})},[e]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"phone\",rules:[{pattern:/^1[3456789]\\d{9}$/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:\"Authorization\",name:\"authorization\"},r.default.createElement(s.Input.Password,{placeholder:\"Basic \\u540E\\u9762\\u7684\\u5185\\u5BB9\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"}))))))}function ld(){return r.default.createElement(st,{qrcodeUrl:\"/guangyapan/qrcode\",cacheUrl:\"/guangyapan/token\",checkStatusUrl:\"/guangyapan/check-status\"})}function dd({visible:e,onCancel:t,onSave:n,panKey:o,panName:a,panPic:i,chunkSize:l,poolSize:u,noSaveMode:c}){let[f]=s.Form.useForm(),m=s.Form.useWatch(\"pic\",f),d=o===\"quark\"||o===\"uc\"||o===\"ali\";(0,r.useEffect)(()=>{e&&f.setFieldsValue({name:a||\"\",pic:i||\"\",chunkSize:l||(o===\"ali\"?128:512),poolSize:u||(o===\"ali\"?20:10),noSaveMode:c===!0})},[e,a,i,l,u,c,f]);let g=async()=>{try{let p=await f.validateFields();n(p)}catch(p){console.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25:\",p)}};return r.default.createElement(s.Modal,{title:\"\".concat(a||\"\\u7F51\\u76D8\",\" \\u914D\\u7F6E\"),open:e,onCancel:t,width:\"90%\",className:\"ios-modal\",footer:null},r.default.createElement(s.Form,{form:f,layout:\"vertical\",className:\"ios-form ios-input-number\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7F51\\u76D8\\u540D\\u79F0\"},{max:20,message:\"\\u540D\\u79F0\\u957F\\u5EA6\\u8BF7\\u63A7\\u5236\\u5728 20 \\u4E2A\\u5B57\\u7B26\\u4EE5\\u5185\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5938\\u514B\"})),r.default.createElement(s.Form.Item,{label:\"\\u56FE\\u7247 URL\",name:\"pic\",tooltip:\"\\u7559\\u7A7A\\u5C06\\u56DE\\u9000\\u4E3A\\u5185\\u7F6E\\u9ED8\\u8BA4\\u56FE\\u6807\",rules:[{validator:(p,v)=>{let y=String(v||\"\").trim();return!y||/^https?:\\/\\/\\S+$/i.test(y)||/^data:image\\//i.test(y)||/^\\/\\S+/.test(y)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\\uFF08http/https\\u3001data:image \\u6216 / \\u5F00\\u5934\\u8DEF\\u5F84\\uFF09\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/logo.png \\u6216 data:image/png;base64,...\"})),!!String(m||\"\").trim()&&r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:10,marginBottom:16}},r.default.createElement(\"img\",{src:String(m).trim(),alt:\"\\u7F51\\u76D8\\u56FE\\u6807\\u9884\\u89C8\",style:{width:36,height:36,borderRadius:8,objectFit:\"cover\",border:\"1px solid rgba(0,0,0,0.08)\",backgroundColor:\"#fff\"}}),r.default.createElement(\"span\",{style:{fontSize:12,color:\"#8e8e93\"}},\"\\u56FE\\u6807\\u9884\\u89C8\\uFF08\\u82E5\\u4E0D\\u663E\\u793A\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u662F\\u5426\\u53EF\\u8BBF\\u95EE\\uFF09\")),d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u5206\\u7247\\u5927\\u5C0F (KB)\",name:\"chunkSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5206\\u7247\\u5927\\u5C0F\"},{type:\"number\",min:64,max:2048,message:\"\\u8303\\u56F4: 64-2048 KB\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"512\",addonAfter:\"KB\"})),r.default.createElement(s.Form.Item,{label:\"\\u5E76\\u53D1\\u7EBF\\u7A0B\\u6570\",name:\"poolSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7EBF\\u7A0B\\u6570\"},{type:\"number\",min:1,max:20,message:\"\\u8303\\u56F4: 1-20\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"10\",addonAfter:\"\\u7EBF\\u7A0B\"}))),o===\"quark\"&&r.default.createElement(s.Form.Item,{label:\"\\u4E0D\\u8F6C\\u5B58\\u6A21\\u5F0F\",name:\"noSaveMode\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5148\\u5C1D\\u8BD5\\u4E0D\\u8F6C\\u5B58\\u76F4\\u94FE\\uFF0C\\u62FF\\u4E0D\\u5230\\u518D\\u56DE\\u9000\\u8F6C\\u5B58\\uFF1B\\u5173\\u95ED\\u5219\\u76F4\\u63A5\\u8F6C\\u5B58\\u83B7\\u53D6\\u591A\\u753B\\u8D28\\u3002\"},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0,marginTop:24}},r.default.createElement(\"div\",{className:\"ios-button-group\",style:{justifyContent:\"flex-end\"}},r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary-outline\",onClick:t},\"\\u53D6\\u6D88\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:g},\"\\u4FDD\\u5B58\")))))}var li=e=>{let{attributes:t,listeners:n,setNodeRef:o,transform:a,transition:i,isDragging:l}=Tr({id:e[\"data-row-key\"]}),u=S(B(S({},e.style),{transform:Ve.Translate.toString(a),transition:i}),l?{position:\"relative\",zIndex:9999}:{});return r.default.createElement(\"tr\",S(B(S({},e),{ref:o,style:u}),t))},di=({rowKey:e})=>{let{listeners:t,setActivatorNodeRef:n}=Tr({id:e});return r.default.createElement(lr,S({ref:n,className:\"drag-handle\"},t))},Pn=\"https://pan.199333.xyz\",ht=[{key:\"quark\",name:\"\\u5938\\u514B\\u7F51\\u76D8\"},{key:\"uc\",name:\"UC\\u7F51\\u76D8\"},{key:\"aliyun\",name:\"\\u963F\\u91CC\\u4E91\\u76D8\"},{key:\"baidu\",name:\"\\u767E\\u5EA6\\u7F51\\u76D8\"},{key:\"xunlei\",name:\"\\u8FC5\\u96F7\\u7F51\\u76D8\"},{key:\"tianyi\",name:\"\\u5929\\u7FFC\\u4E91\\u76D8\"},{key:\"mobile\",name:\"\\u79FB\\u52A8\\u4E91\\u76D8\"},{key:\"123\",name:\"123\\u7F51\\u76D8\"},{key:\"115\",name:\"115\\u7F51\\u76D8\"},{key:\"pikpak\",name:\"PikPak\"},{key:\"magnet\",name:\"\\u78C1\\u529B\\u94FE\\u63A5\"},{key:\"ed2k\",name:\"\\u7535\\u9A74\\u94FE\\u63A5\"}],Pr={id:\"\",name:\"\",host:\"\",username:\"\",password:\"\",deviceId:\"\",logo:\"\",libraryStats:{movieCount:0,seriesCount:0}};function ud(e){return String(e||\"\").trim().toLowerCase().replace(/[^a-z0-9_-]+/g,\"-\").replace(/^-+|-+$/g,\"\").slice(0,40)}function Lr(){return S({},Pr)}function cd(e){let t=String(e||\"\").trim();return!t||/^https?:\\/\\/\\S+$/i.test(t)||/^data:image\\//i.test(t)||/^\\/\\S+/.test(t)}function Ln(e={}){return String(e.name||\"Emby\").trim()}function fd(e={}){let t=Number(e.movieCount||0),n=Number(e.seriesCount||0);return{movieCount:t,seriesCount:n}}function pd(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon\",viewBox:\"0 0 1024 1024\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"path\",{d:\"M875.690667 414.72H301.738667l576.682666-195.754667c36.181333-11.093333 56.832-49.322667 45.909334-85.674666L909.824 83.626667c-8.704-29.013333-35.84-49.322667-66.218667-49.322667-6.656 0-13.312 1.024-19.626666 2.901333l-0.512 0.170667L127.829333 273.237333C91.648 284.330667 70.997333 322.56 81.92 358.912l14.848 49.664c4.096 13.653333 12.288 25.429333 23.04 34.133333-8.533333 11.434667-13.482667 25.6-13.482667 40.96v436.736c0 38.058667 30.890667 68.949333 68.949334 68.949334h700.416c38.058667 0 68.949333-30.890667 68.949333-68.949334V483.84c0-38.058667-30.890667-69.12-68.949333-69.12z m17.408 69.12v69.290667H690.858667l70.144-86.869334h114.688c9.557333 0.170667 17.408 7.850667 17.408 17.578667z m-717.824-17.408h175.616l-76.970667 76.970667c-2.901333 2.901333-4.949333 6.144-6.144 9.728H157.696v-69.290667c0-9.728 7.850667-17.408 17.578667-17.408z m243.029333 5.290667c1.706667-1.706667 3.072-3.413333 4.096-5.461334H694.613333l-63.829333 79.018667c-1.877333 2.389333-3.413333 4.949333-4.266667 7.68H336.896l81.408-81.237333zM143.189333 322.56l0.512-0.170667L838.997333 86.528c1.536-0.341333 3.072-0.682667 4.608-0.682667 7.68 0 14.506667 5.12 16.725334 12.458667l14.848 49.664c2.730667 9.216-2.56 18.944-11.776 21.674667l-0.512 0.170666L167.424 405.845333c-1.536 0.341333-3.072 0.682667-4.608 0.682667-7.68 0-14.506667-5.12-16.725333-12.458667L131.413333 344.234667c-2.730667-9.216 2.56-18.944 11.776-21.674667z m732.501334 615.424H175.274667c-9.557333 0-17.408-7.850667-17.408-17.408v-315.733333h735.402666v315.733333c-0.170667 9.557333-8.021333 17.408-17.578666 17.408z m0 0\"}))}function md(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon emby-server-card__stat-icon--series\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"rect\",{x:\"3\",y:\"9\",width:\"18\",height:\"12\",rx:\"2.5\"}),r.default.createElement(\"path\",{d:\"M7.5 3.5 L12 9 L16.5 3.5\"}))}function gd(e={}){let{movieCount:t,seriesCount:n}=fd(e);return!t&&!n?r.default.createElement(\"span\",{className:\"emby-server-card__sync\"},\"\\u5F85\\u540C\\u6B65\"):r.default.createElement(r.default.Fragment,null,r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(t,\" \\u7535\\u5F71\"),\"aria-label\":\"\".concat(t,\" \\u7535\\u5F71\")},r.default.createElement(pd,null),r.default.createElement(\"span\",null,t)),r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(n,\" \\u5267\\u96C6\"),\"aria-label\":\"\".concat(n,\" \\u5267\\u96C6\")},r.default.createElement(md,null),r.default.createElement(\"span\",null,n)))}function Nr(e={}){return{id:e.id,name:e.name||\"Emby\",host:e.host,username:e.username,password:e.password,deviceId:e.deviceId||\"\",logo:e.logo||\"\",libraries:e.libraries||[],libraryStats:e.libraryStats||Pr.libraryStats}}var ri=\"nodejs_emby_\",oi=\"nodejs_alist_\";function xd(e=\"\"){let t=String(e||\"\");return t.startsWith(ri)?t.slice(ri.length):\"\"}function hd(e=\"\"){let t=String(e||\"\");return t.startsWith(oi)?t.slice(oi.length):\"\"}function ui(){return{id:\"alist_\".concat(Date.now()),name:\"\",server:\"\",username:\"\",password:\"\",token:\"\",otpCode:\"\"}}function Br(e={}){let t=String(e.name||\"\").trim();if(t)return t;try{return new URL(e.server).hostname||\"Alist\"}catch(n){return\"Alist\"}}function Dr(e={}){return{id:e.id||\"alist_\".concat(Date.now()),name:Br(e),server:String(e.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(e.username||\"\").trim(),password:String(e.password||\"\"),token:String(e.token||\"\").trim(),otpCode:String(e.otpCode||\"\").trim()}}var bd=[{key:\"nodejs_muou\",api:\"/muou/urls\",name:\"\\u6728\\u5076\"},{key:\"nodejs_wanou\",api:\"/wanou/urls\",name:\"\\u73A9\\u5076\"},{key:\"nodejs_leijing\",api:\"/leijing/urls\",name:\"\\u96F7\\u9CB8\"},{key:\"nodejs_zhizhen\",api:\"/zhizhen/urls\",name:\"\\u81F3\\u81FB\"},{key:\"nodejs_duoduo\",api:\"/duoduo/urls\",name:\"\\u591A\\u591A\"},{key:\"nodejs_erxiao\",api:\"/erxiao/urls\",name:\"\\u4E8C\\u5C0F\"},{key:\"nodejs_huban\",api:\"/huban/urls\",name:\"\\u864E\\u6591\"},{key:\"nodejs_labi\",api:\"/labi/urls\",name:\"\\u8FA3\\u7B14\"},{key:\"nodejs_ouge\",api:\"/ouge/urls\",name:\"\\u6B27\\u6B4C\"},{key:\"nodejs_xiaoban\",api:\"/xiaoban/urls\",name:\"\\u5C0F\\u73ED\"},{key:\"nodejs_tgchannel\",api:\"/tgchannel/config\",name:\"TG\\u9891\\u9053\",type:\"tg\"},{key:\"nodejs_tgsou\",api:\"/tgsou/config\",name:\"TG\\u641C\",type:\"tg\"},{key:\"nodejs_tgfilebot\",api:\"/tgfilebot/config\",name:\"TGFileBot\",type:\"tgfilebot\"},{key:\"nodejs_pansou\",api:\"/pansou/config\",name:\"PanSou\",type:\"pansou\"},{key:\"nodejs_123ypzysq\",api:\"/123ypzysq/config\",name:\"123\\u8D44\\u6E90\\u793E\\u533A\",type:\"domain-cookie\"},{key:\"nodejs_live2vod\",api:\"/live2vod/config\",name:\"\\u76F4\\u64AD\\u8F6C\\u70B9\\u64AD\",type:\"live2vod\"},{key:\"nodejs_emby\",api:\"/emby-spider/setting\",name:\"Emby\\u6E90\",type:\"emby-spider\"},{key:\"nodejs_alist-video\",api:\"/alist-video/setting\",name:\"Alist\",type:\"alist-video\"}],ai=bd.reduce((e,t)=>(e[t.key]={api:t.api,name:t.name,type:t.type},e),{});function yd({visible:e,onCancel:t,onSave:n,siteName:o}){let[a]=s.Form.useForm(),[i,l]=(0,r.useState)(!1),[u,c]=(0,r.useState)(\"channels\"),[f,m]=(0,r.useState)([]),[d,g]=(0,r.useState)([]),[p,v]=(0,r.useState)(!1),[y,k]=(0,r.useState)([]),[E,w]=(0,r.useState)([]),[F,_]=(0,r.useState)([]),[z,H]=(0,r.useState)(\"\"),[h,C]=(0,r.useState)([]),L=(0,r.useRef)(0),M=()=>{let T=z.trim();if(T){if(f.includes(T)){s.message.warning('\\u9891\\u9053 \"'.concat(T,'\" \\u5DF2\\u5B58\\u5728')),H(\"\");return}m([T,...f]),C([T,...h]),k([T,...y]),H(\"\"),s.message.success('\\u5DF2\\u6DFB\\u52A0\\u9891\\u9053 \"'.concat(T,'\"'))}},D=(T,A)=>{A.stopPropagation(),m(f.filter($=>$!==T)),k(y.filter($=>$!==T)),C(h.filter($=>$!==T)),s.message.success('\\u5DF2\\u5220\\u9664\\u9891\\u9053 \"'.concat(T,'\"'))},j=(0,r.useCallback)(async T=>{if(!T)return null;v(!0);try{let A=await bt.default.get(\"\".concat(T,\"/api/health\"));if(A.data){let $=A.data.channels||[],U=A.data.plugins||[];return m($),g(U),{channels:$,plugins:U}}return null}catch(A){return console.error(\"\\u83B7\\u53D6 PanSou \\u9009\\u9879\\u5931\\u8D25:\",A),null}finally{v(!1)}},[]);(0,r.useEffect)(()=>{let T=++L.current;if(!e){l(!1),H(\"\");return}l(!0),I.get(\"/pansou/config\").then(async A=>{if(L.current!==T)return;let $=A.url||Pn;a.setFieldsValue({name:o,url:$});let U=await j($);A.channels&&A.channels.length>0?k(A.channels):U!=null&&U.channels&&k(U.channels),A.plugins&&A.plugins.length>0?w(A.plugins):U!=null&&U.plugins&&w(U.plugins),A.cloudTypes&&A.cloudTypes.length>0?_(A.cloudTypes):_(ht.map(me=>me.key))}).catch(A=>{L.current===T&&(console.error(A),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{L.current===T&&l(!1)})},[e,o,a,j]);let ne=(0,r.useCallback)(T=>{let A=T.target.value||Pn;j(A)},[j]),ie=async()=>{let T;try{T=await a.validateFields()}catch(A){return}try{l(!0);let A={url:T.url||\"\",channels:y,plugins:E,cloudTypes:F};await I.put(\"/pansou/config\",A),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(T.name),t()}catch(A){console.error(A),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((A==null?void 0:A.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{l(!1)}},we=async()=>{try{l(!0),await I.delete(\"/pansou/config\");let A=(await I.get(\"/pansou/config\")).url||Pn;a.setFieldsValue({url:A});let $=await j(A);k(($==null?void 0:$.channels)||[]),w(($==null?void 0:$.plugins)||[]),_(ht.map(U=>U.key)),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(T){console.error(T),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(T==null?void 0:T.message))}finally{l(!1)}},Ce=(T,A,$)=>{T.includes($)?A(T.filter(U=>U!==$)):A([...T,$])},J=(T,A,$)=>{A.length===T.length?$([]):$([...T])},Ee=(T,A,$,U,me,Se)=>r.default.createElement(\"div\",{key:T,className:\"pansou-checkbox-card \".concat(A?\"pansou-checkbox-card--selected\":\"\"),onClick:$},r.default.createElement(\"span\",{className:\"pansou-checkbox-card__label\"},U||T),me&&r.default.createElement(Ze,{className:\"pansou-checkbox-card__delete\",onClick:Se}));si(\".pansou-config-tabs__nav-scroll\",e);let ue=[{key:\"channels\",label:\"TG\\u9891\\u9053\",count:y.length},{key:\"plugins\",label:\"\\u641C\\u7D22\\u63D2\\u4EF6\",count:E.length},{key:\"cloudTypes\",label:\"\\u7F51\\u76D8\\u7C7B\\u578B\",count:F.length}];return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(o||\"PanSou\"),open:e,onCancel:t,className:\"ios-modal pansou-config-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Spin,{spinning:i},r.default.createElement(s.Form,{form:a,layout:\"vertical\",className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u7AD9\\u6E90\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: \".concat(Pn),onBlur:ne}))),r.default.createElement(\"div\",{className:\"pansou-config-tabs\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"PanSou \\u914D\\u7F6E\\u9879\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-list\"},ue.map(T=>{let A=T.key===u;return r.default.createElement(\"button\",{key:T.key,type:\"button\",role:\"tab\",\"aria-selected\":A,className:\"pansou-config-tabs__tab\".concat(A?\" pansou-config-tabs__tab--active\":\"\"),onClick:()=>c(T.key)},r.default.createElement(\"span\",null,T.label),r.default.createElement(\"span\",{className:\"pansou-config-tabs__badge\"},Math.min(T.count,9999)))})))),r.default.createElement(s.Spin,{spinning:p},u===\"channels\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",y.length,\" / \",f.length),r.default.createElement(s.Space,null,r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(f,y,k)},y.length===f.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\"))),r.default.createElement(\"div\",{className:\"pansou-add-channel\"},r.default.createElement(s.Input,{placeholder:\"\\u641C\\u7D22\\u6216\\u6DFB\\u52A0\\u9891\\u9053\",value:z,onChange:T=>H(T.target.value),onPressEnter:M,allowClear:!0,style:{flex:1}}),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:M},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},f.filter(T=>!z||T.toLowerCase().includes(z.toLowerCase())).map(T=>Ee(T,y.includes(T),()=>Ce(y,k,T),T,h.includes(T),A=>D(T,A)))),f.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u9891\\u9053\")),u===\"plugins\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",E.length,\" / \",d.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(d,E,w)},E.length===d.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},d.map(T=>Ee(T,E.includes(T),()=>Ce(E,w,T),T,!1,null))),d.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u63D2\\u4EF6\")),u===\"cloudTypes\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",F.length,\" / \",ht.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(ht.map(T=>T.key),F,_)},F.length===ht.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},ht.map(T=>Ee(T.key,F.includes(T.key),()=>Ce(F,_,T.key),T.name,!1,null))))),r.default.createElement(\"div\",{className:\"pansou-config-footer ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:ie,disabled:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:we,disabled:i},\"\\u91CD\\u7F6E\"))))}function Ar({visible:e,onCancel:t,onSave:n,onDelete:o,server:a,usedIds:i}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1),f=s.Form.useWatch(\"logo\",l);(0,r.useEffect)(()=>{e&&l.setFieldsValue(S(S({},Pr),a||Lr()))},[e,a,l]);let m=async()=>{let g;try{g=await l.validateFields()}catch(w){return}let p=ud(a!=null&&a.isNew?\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"):(a==null?void 0:a.id)||\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"));if(!p){s.message.warning(\"\\u8BF7\\u586B\\u5199\\u670D\\u52A1\\u5668\\u5730\\u5740\");return}if(i!=null&&i.has(p)&&p!==(a==null?void 0:a.id)){s.message.warning(\"\\u5F53\\u524D\\u670D\\u52A1\\u5668\\u5DF2\\u5B58\\u5728\\uFF0C\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u6216\\u8D26\\u53F7\");return}let v={id:p,name:String(g.name||\"\").trim(),host:String(g.host||\"\").trim().replace(/\\/+$/,\"\"),username:String(g.username||\"\").trim(),password:String(g.password||\"\"),logo:String(g.logo||\"\").trim()},y=String((a==null?void 0:a.host)||\"\").trim().replace(/\\/+$/,\"\"),k=String((a==null?void 0:a.username)||\"\").trim();v.host===y&&v.username===k&&(v.deviceId=String((a==null?void 0:a.deviceId)||\"\").trim());let E=!1;try{c(!0);let w=await I.post(\"/emby-spider/verify\",v);E=!0,await n(w||v),s.message.success(\"Emby \\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(w){console.error(w),w!=null&&w.message&&w.message!==\"[object Object]\"&&s.message.error(\"\".concat(E?\"\\u4FDD\\u5B58\":\"\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat(w.message))}finally{c(!1)}},d=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Emby \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Emby\"),open:e,onCancel:t,confirmLoading:u,className:\"ios-modal emby-server-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F1A\\u5728\\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\\u540E\\u81EA\\u52A8\\u4F7F\\u7528 Emby \\u670D\\u52A1\\u5668\\u540D\\u79F0\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u81EA\\u52A8\\u83B7\\u53D6\\uFF0C\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"Logo URL\",name:\"logo\",tooltip:\"\\u652F\\u6301 http/https\\u3001data:image \\u6216\\u7AD9\\u5185 / \\u5F00\\u5934\\u8DEF\\u5F84\",rules:[{validator(g,p){return cd(p)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/emby-logo.png\"})),!!String(f||\"\").trim()&&r.default.createElement(\"div\",{className:\"emby-logo-preview\"},r.default.createElement(\"img\",{src:String(f).trim(),alt:\"Emby Logo \\u9884\\u89C8\"}),r.default.createElement(\"span\",null,\"Logo \\u9884\\u89C8\")),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"host\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:8096\"})),r.default.createElement(s.Form.Item,{label:\"\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u5BC6\\u7801\\u53EF\\u4E3A\\u7A7A\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group emby-server-edit-actions\".concat(a!=null&&a.isNew?\" emby-server-edit-actions--new\":\"\")},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:d,disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:u},u?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function vd({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=(0,r.useMemo)(()=>new Set(l.map(g=>g.id).filter(Boolean)),[l]),c=()=>{i(B(S({},Lr()),{isNew:!0})),o(!0)},f=g=>{i(S({},g)),o(!0)},m=g=>{let p=l.findIndex(k=>k.id===(a==null?void 0:a.id)),v=Nr(g),y=p>=0?[...l]:[...l,v];p>=0&&(y[p]=v),t(y),o(!1)},d=g=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Ln(g),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u5BF9\\u5E94\\u7684 Emby \\u5206\\u7C7B\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(p=>p.id!==g.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Emby \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:c},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"emby-server-subtitle\"},\"\\u6709\\u64AD\\u653E\\u5668\\u9ED1/\\u767D\\u540D\\u5355\\u7684\\u670D\\u8C28\\u614E\\u4F7F\\u7528\\uFF0C\\u5426\\u5219\\u540E\\u679C\\u81EA\\u8D1F\\uFF01\")),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:c},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Emby \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(g=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:g.id},r.default.createElement(\"div\",{className:\"emby-server-card__hero\"},r.default.createElement(\"div\",{className:\"emby-server-card__logo\"},r.default.createElement(\"img\",{src:g.logo||Er,alt:Ln(g)}))),r.default.createElement(\"div\",{className:\"emby-server-card__content\"},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,Ln(g)),r.default.createElement(dn,null)),r.default.createElement(\"div\",{className:\"emby-server-card__stats\"},gd(g.libraryStats))),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>f(g)}))))),r.default.createElement(Ar,{visible:n,onCancel:()=>o(!1),onSave:m,onDelete:d,server:a,usedIds:u}))}function _r({visible:e,onCancel:t,onSave:n,onDelete:o,server:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&i.setFieldsValue({name:(a==null?void 0:a.name)||\"\",server:(a==null?void 0:a.server)||\"\",username:(a==null?void 0:a.username)||\"\",password:(a==null?void 0:a.password)||\"\",token:(a==null?void 0:a.token)||\"\",otpCode:(a==null?void 0:a.otpCode)||\"\"})},[e,a,i]);let c=async()=>{let m;try{m=await i.validateFields()}catch(p){return}let d={id:(a==null?void 0:a.id)||\"alist_\".concat(Date.now()),name:m.name||\"\",server:String(m.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(m.username||\"\").trim(),password:String(m.password||\"\"),token:String(m.token||\"\").trim(),otpCode:String(m.otpCode||\"\").trim()},g=!1;try{u(!0);let p=await I.post(\"/alist-video/verify\",d);g=!0,await n(p||d),s.message.success(\"Alist \\u8FDE\\u63A5\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(p){console.error(p),s.message.error(\"\".concat(g?\"\\u4FDD\\u5B58\":\"\\u8FDE\\u63A5\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\"))}finally{u(!1)}},f=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Alist \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Alist\"),open:e,onCancel:t,confirmLoading:l,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"server\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165 Alist \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:5244\"})),r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"username\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{label:\"Token\",name:\"token\",tooltip:\"\\u5DF2\\u6709 Alist token \\u65F6\\u53EF\\u76F4\\u63A5\\u586B\\u5199\\uFF0C\\u4F18\\u5148\\u4E8E\\u8D26\\u53F7\\u5BC6\\u7801\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u4E24\\u6B65\\u9A8C\\u8BC1\\u7801\",name:\"otpCode\",tooltip:\"\\u5F00\\u542F\\u4E24\\u6B65\\u9A8C\\u8BC1\\u65F6\\u586B\\u5199\\u5F53\\u524D\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Input,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"one-time-code\"})),r.default.createElement(s.Form.Item,null,r.default.createElement(\"div\",{className:\"ios-button-group\"},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:f},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:c,disabled:l},l?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function wd({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=()=>{i(B(S({},ui()),{isNew:!0})),o(!0)},c=d=>{i(S({},d)),o(!0)},f=d=>{let g=l.findIndex(y=>y.id===(a==null?void 0:a.id)),p=Dr(d),v=g>=0?[...l]:[...l,p];g>=0&&(v[g]=p),t(v),o(!1)},m=d=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(d),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8BE5 Alist \\u670D\\u52A1\\u5668\\u5C06\\u4E0D\\u518D\\u663E\\u793A\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(g=>g.id!==d.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Alist \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:u},\"\\u6DFB\\u52A0\"))),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:u},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Alist \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(d=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:d.id},r.default.createElement(\"div\",{className:\"emby-server-card__content\",style:{padding:\"16px\"}},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,d.name||d.server),r.default.createElement(dn,null)),r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.server),(d.username||d.token)&&r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.username?\"\\u8D26\\u53F7\\uFF1A\".concat(d.username):\"Token \\u5DF2\\u914D\\u7F6E\")),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>c(d)}))))),r.default.createElement(_r,{visible:n,onCancel:()=>o(!1),onSave:f,onDelete:m,server:a}))}function Cd({visible:e,onCancel:t,onSave:n,siteKey:o,siteName:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1),c=String(o||\"\").startsWith(\"nodejs_emby\"),f=ai[o]||(c?ai.nodejs_emby:void 0),m=!!f,d=(f==null?void 0:f.type)===\"tg\",g=(f==null?void 0:f.type)===\"tgfilebot\",p=(f==null?void 0:f.type)===\"live2vod\",v=(f==null?void 0:f.type)===\"emby-spider\",y=(f==null?void 0:f.type)===\"alist-video\",k=(f==null?void 0:f.type)===\"domain-cookie\",E=o===\"nodejs_tgchannel\",w=(0,r.useRef)(0),F=h=>{if(h===\"\"||h===null||typeof h>\"u\")return null;let C=Number(h);return Number.isFinite(C)?C:null},_=h=>{if(h==null||h===\"\")return\"\";let C=Number(h);return Number.isFinite(C)?C:\"\"};(0,r.useEffect)(()=>{let h=++w.current;if(!e){u(!1);return}m?(u(!0),I.get(f.api).then(C=>{if(w.current===h)if(d){let L=[],M=new Set;C.channelNameMap&&Object.keys(C.channelNameMap).forEach(D=>M.add(D)),C.channelUsername&&C.channelUsername.forEach(D=>M.add(D)),C.homeChannelUsername&&C.homeChannelUsername.forEach(D=>M.add(D)),M.forEach(D=>{var j;L.push({id:D,name:((j=C.channelNameMap)==null?void 0:j[D])||\"\"})}),i.setFieldsValue({name:a,url:C.url,count:F(C==null?void 0:C.count),pic:C.pic,channels:L.length>0?L:E?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({name:a,url:C.url,password:C.password||\"\"}):p?i.setFieldsValue({name:a,sources:C.sources||[{name:\"\",url:\"\"}]}):v?i.setFieldsValue({name:a,servers:C.servers||[]}):y?i.setFieldsValue({name:a,servers:C.servers||[]}):k?i.setFieldsValue({name:a,url:C.url||\"\",cookie:C.cookie||\"\"}):i.setFieldsValue({urls:C,name:a})}).catch(C=>{w.current===h&&(console.error(C),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{w.current===h&&u(!1)})):i.setFieldsValue({name:a})},[e,o,a,m,d,g,p,v,y,k,i,f]);let z=async()=>{let h;try{h=await i.validateFields()}catch(C){return}try{if(u(!0),m)if(d){let C={},L=[],M=[];h.channels&&h.channels.length>0&&h.channels.forEach(j=>{j.id&&(j.name&&(C[j.id]=j.name),L.push(j.id),o===\"nodejs_tgchannel\"&&M.push(j.id))});let D=S({url:h.url,count:_(h.count),pic:h.pic,channelNameMap:C,channelUsername:L},o===\"nodejs_tgchannel\"?{homeChannelUsername:M}:{});await I.put(f.api,D)}else if(g)await I.put(f.api,{url:h.url||\"\",password:h.password||\"\"});else if(p){let C={sources:h.sources||[]};await I.put(f.api,C)}else v?await I.put(f.api,{servers:h.servers||[]}):y?await I.put(f.api,{servers:h.servers||[]}):k?await I.put(f.api,{url:h.url||\"\",cookie:h.cookie||\"\"}):await I.put(f.api,h.urls);s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(h.name,v||y?{reload:!0}:void 0),t()}catch(C){console.error(C),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((C==null?void 0:C.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{u(!1)}},H=async()=>{if(m)try{u(!0),await I.delete(f.api);let h=await I.get(f.api);if(d){let C=[],L=new Set;h.channelNameMap&&Object.keys(h.channelNameMap).forEach(M=>L.add(M)),h.channelUsername&&h.channelUsername.forEach(M=>L.add(M)),h.homeChannelUsername&&h.homeChannelUsername.forEach(M=>L.add(M)),L.forEach(M=>{var D;C.push({id:M,name:((D=h.channelNameMap)==null?void 0:D[M])||\"\"})}),i.setFieldsValue({url:h.url,count:F(h==null?void 0:h.count),pic:h.pic,channels:C.length>0?C:E?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({url:h.url,password:h.password||\"\"}):p?i.setFieldsValue({sources:h.sources||[{name:\"\",url:\"\"}]}):v?i.setFieldsValue({servers:h.servers||[]}):y?i.setFieldsValue({servers:h.servers||[]}):k?i.setFieldsValue({url:h.url||\"\",cookie:h.cookie||\"\"}):i.setFieldsValue({urls:h});s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(h){console.error(h),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(h==null?void 0:h.message))}finally{u(!1)}};return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(a||(f==null?void 0:f.name)||\"\"),open:e,onCancel:t,className:\"ios-modal domain-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",requiredMark:!1,colon:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\",className:v||y?\"domain-edit-full-input\":\"domain-edit-aligned-input\"})),m&&!d&&!g&&!p&&!v&&!y&&!k&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u57DF\\u540D\"}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((D,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u57DF\\u540D\":null,required:!1,key:D.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},D),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}],noStyle:!0}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-list-input\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1?\"\":\" domain-list-action--placeholder\")},h.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(D.name)}):null)))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C(),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u57DF\\u540D\"),r.default.createElement(s.Form.ErrorList,{errors:M}))))),m&&k&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"Cookie\",name:\"cookie\"},r.default.createElement(s.Input.TextArea,{placeholder:\"\\u8BBF\\u95EE\\u7F51\\u7AD9\\u9700\\u8981\\u7684 Cookie\\uFF0C\\u4F8B\\u5982 bbs_token=xxx\",className:\"domain-edit-aligned-input\",autoSize:{minRows:3,maxRows:6}}))),m&&g&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: http://127.0.0.1:8080\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u8BBF\\u95EE\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"TGFileBot password\\uFF0C\\u53EF\\u7559\\u7A7A\",className:\"domain-edit-aligned-input\"}))),m&&v&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(vd,null)),m&&y&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(wd,null)),m&&d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"TG\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\"},r.default.createElement(s.InputNumber,{min:1,placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9650\\u5236\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.List,{name:\"channels\",rules:[{validator:async(h,C)=>{if(!E&&(!C||C.length===0))return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u9891\\u9053\"))}}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((D,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u9891\\u9053\\u5217\\u8868\":\"\",required:!1,key:D.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},D),{name:[D.name,\"name\"],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,B(S({},D),{name:[D.name,\"id\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053ID\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u9891\\u9053ID\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1||E?\"\":\" domain-list-action--placeholder\")},h.length>1||E?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(D.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({id:\"\",name:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u9891\\u9053\"),r.default.createElement(s.Form.ErrorList,{errors:M})))),r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u56FE\\u7247\",name:\"pic\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null))),m&&p&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"sources\",rules:[{validator:async(h,C)=>{if(!C||C.length===0)return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u76F4\\u64AD\\u6E90\"))}}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((D,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u76F4\\u64AD\\u6E90\\u5217\\u8868\":\"\",required:!1,key:D.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},D),{name:[D.name,\"name\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,B(S({},D),{name:[D.name,\"url\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u76F4\\u64AD\\u6E90URL\"}],style:{marginBottom:0,flex:\"2\"}}),r.default.createElement(s.Input,{placeholder:\"\\u76F4\\u64AD\\u6E90URL (m3u/txt)\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1?\"\":\" domain-list-action--placeholder\")},h.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(D.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({name:\"\",url:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u76F4\\u64AD\\u6E90\"),r.default.createElement(s.Form.ErrorList,{errors:M}))))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:z,disabled:l},\"\\u4FDD\\u5B58\"),m&&r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:H,disabled:l},\"\\u91CD\\u7F6E\")))))}var Sd=new Set([\"nodejs_push\",\"nodejs_muban\",\"nodejs_template\"]),Od=new Set([\"\\u63A8\\u9001\",\"\\u6A21\\u677F\"]);function kd(e){let t=String(e.name||\"\").trim();return!Sd.has(e.key)&&!Od.has(t)}function Td(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),[l,u]=(0,r.useState)(!1),[c,f]=(0,r.useState)(!1),[m,d]=(0,r.useState)(!1),[g,p]=(0,r.useState)(null),[v,y]=(0,r.useState)([]),[k,E]=(0,r.useState)(!1),[w,F]=(0,r.useState)(null),[_,z]=(0,r.useState)([]),[H,h]=(0,r.useState)(!1),[C,L]=(0,r.useState)(null),[M,D]=(0,r.useState)([]),[j,ne]=(0,r.useState)(!1),[ie,we]=(0,r.useState)(null),[Ce,J]=(0,r.useState)([]),[Ee,ue]=(0,r.useState)(!1),[T,A]=(0,r.useState)([]),[$,U]=(0,r.useState)(!1),[me,Se]=(0,r.useState)(null),[de,Pe]=(0,r.useState)([]),[Oe,ge]=(0,r.useState)(\"\"),[q,We]=(0,r.useState)(null),xe=(0,r.useMemo)(()=>e.filter(kd),[e]),Le=(0,r.useMemo)(()=>new Set(v.map(b=>b.id).filter(Boolean)),[v]),ke=(0,r.useMemo)(()=>new Set(_.map(b=>b.id).filter(Boolean)),[_]),Be=b=>{let O=xd(b==null?void 0:b.key);if(O){Ge(O);return}let N=hd(b==null?void 0:b.key);if(N){Gt(N);return}if(b!=null&&b.cms){$n(b.key);return}We(b),b.key===\"nodejs_pansou\"?i(!0):o(!0)},_e=(b,O={})=>{if(O.reload){ce();return}if(q){let N=e.findIndex(P=>P.key===q.key);N!==-1&&(e[N].name=b,t([...e]))}},Ht=async()=>{try{f(!0);let b=await I.get(\"/emby-spider/setting\");y(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),p(B(S({},Lr()),{isNew:!0})),u(!1),d(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},jt=async()=>{try{f(!0);let b=await I.get(\"/alist-video/setting\");D(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),L(B(S({},ui()),{isNew:!0})),u(!1),h(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},yt=async()=>{try{f(!0);let b=await I.get(\"/cms/list\");A(Array.isArray(b)?b:[]),u(!1),ue(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},Fe=async b=>{let O=Nr(b),N=v.findIndex(V=>V.id===O.id),P=N>=0?[...v]:[...v,O];N>=0&&(P[N]=O),await I.put(\"/emby-spider/setting\",{servers:P}),y(P),d(!1),p(null),await ce()},lt=()=>{d(!1),p(null)},dt=async b=>{let O=Dr(b),N=M.findIndex(V=>V.id===O.id),P=N>=0?[...M]:[...M,O];N>=0&&(P[N]=O),await I.put(\"/alist-video/setting\",{servers:P}),D(P),h(!1),L(null),await ce()},Vt=()=>{h(!1),L(null)},Ut=async b=>{let O=Nd(T,b);await I.put(\"/cms/list\",O),A(O),ue(!1),await ce()},Bn=()=>{ue(!1)},$n=async b=>{try{let O=await I.get(\"/cms/list\"),N=Array.isArray(O)?O:[],P=N.find(V=>Fr(V)===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 CMS \\u6E90\\u914D\\u7F6E\");return}Pe(N),Se(S({},P)),ge(b),U(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},$e=async b=>{let O=ci(b);if(!O){s.message.warning(\"CMS \\u6E90\\u4FE1\\u606F\\u4E0D\\u5B8C\\u6574\");return}let N=de.map(P=>Fr(P)===Oe?O:P);await I.put(\"/cms/list\",N),Pe(N),U(!1),Se(null),ge(\"\"),await ce()},ze=b=>{b&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(b.name||\"CMS \\u6E90\",\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u4E2A CMS \\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=de.filter(N=>Fr(N)!==Oe);await I.put(\"/cms/list\",O),Pe(O),U(!1),Se(null),ge(\"\"),await ce()}})},Ge=async b=>{try{let O=await I.get(\"/emby-spider/setting\"),N=Array.isArray(O==null?void 0:O.servers)?O.servers:[],P=N.find(V=>V.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Emby \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}z(N),F(S({},P)),E(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},Wt=async b=>{let O=Nr(b),N=_.map(P=>P.id===(w==null?void 0:w.id)?O:P);await I.put(\"/emby-spider/setting\",{servers:N}),z(N),E(!1),F(null),await ce()},Ie=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Ln(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Emby \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=_.filter(N=>N.id!==b.id);await I.put(\"/emby-spider/setting\",{servers:O}),z(O),E(!1),F(null),await ce()}})},Gt=async b=>{try{let O=await I.get(\"/alist-video/setting\"),N=Array.isArray(O==null?void 0:O.servers)?O.servers:[],P=N.find(V=>V.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Alist \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}J(N),we(S({},P)),ne(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},zn=async b=>{let O=Dr(b),N=Ce.map(P=>P.id===(ie==null?void 0:ie.id)?O:P);await I.put(\"/alist-video/setting\",{servers:N}),J(N),ne(!1),we(null),await ce()},qn=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Alist \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=Ce.filter(N=>N.id!==b.id);await I.put(\"/alist-video/setting\",{servers:O}),J(O),ne(!1),we(null),await ce()}})},vt=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(b,O){return r.default.createElement(di,{rowKey:O.key})}},{title:\"\\u7AD9\\u6E90\",dataIndex:\"name\",render(b,O){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:b,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},b),O.t4&&r.default.createElement(s.Tag,{className:\"ios-tag\"},\"T4\"))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(b,O){return r.default.createElement(s.Switch,{value:b,onChange:N=>{t(P=>P.map(V=>V.key===O.key?B(S({},V),{enable:N}):V))}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(b,O){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>Be(O),size:\"small\"})}}],[e]),Yt=wr(Lt(at,{activationConstraint:{distance:1}}),Lt(xt,{activationConstraint:{delay:150,tolerance:5}})),Hn=({active:b,over:O})=>{b.id!==(O==null?void 0:O.id)&&t(N=>{let P=N.findIndex(fe=>fe.key===b.id),V=N.findIndex(fe=>fe.key===(O==null?void 0:O.id));return Bt(N,P,V)})},ce=async()=>{let O=(await bt.default.get(\"/full-config\")).data.video.sites,N=await I.get(\"/sites/list\"),P={},V={};O.forEach(G=>{V[G.key]=G});let fe=N.filter(G=>(P[G.key]=!0,V[G.key])).map(G=>{let se=V[G.key];return{key:G.key,name:G.name||se.name,enable:G.enable,t4:se.t4,cms:se.cms}});O.forEach(G=>{P[G.key]||fe.push({key:G.key,name:G.name,enable:!0,t4:G.t4,cms:G.cms})}),t(fe)},jn=async()=>{try{await I.put(\"/sites/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null)),duration:5})}catch(b){console.error(b),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}},Vn=async()=>{try{await I.delete(\"/sites/list\"),ce(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(b){console.error(b),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}};return(0,r.useEffect)(()=>{ce()},[]),r.default.createElement(\"div\",null,r.default.createElement(\"div\",{className:\"sites-list-toolbar\"},r.default.createElement(s.Dropdown,{open:l,onOpenChange:u,trigger:[\"click\"],placement:\"bottomRight\",dropdownRender:()=>r.default.createElement(\"div\",{className:\"site-add-menu\"},r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:Ht,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:Er,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Emby\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:jt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ei,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Alist\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:yt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ti,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"CMS\")))},r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),className:\"sites-add-button\"},\"\\u6DFB\\u52A0\"))),r.default.createElement(Cr,{sensors:Yt,modifiers:[Sr],onDragEnd:Hn},r.default.createElement(kr,{items:xe.map(b=>b.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:li}},rowKey:\"key\",columns:vt,dataSource:xe,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:jn},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:Vn},\"\\u91CD\\u7F6E\")),r.default.createElement(Cd,{visible:n,onCancel:()=>o(!1),onSave:_e,siteKey:q==null?void 0:q.key,siteName:q==null?void 0:q.name}),r.default.createElement(yd,{visible:a,onCancel:()=>i(!1),onSave:_e,siteName:q==null?void 0:q.name}),r.default.createElement(Ar,{visible:m,onCancel:lt,onSave:Fe,server:g,usedIds:Le}),r.default.createElement(Ar,{visible:k,onCancel:()=>E(!1),onSave:Wt,onDelete:Ie,server:w,usedIds:ke}),r.default.createElement(_r,{visible:H,onCancel:Vt,onSave:dt,server:C}),r.default.createElement(_r,{visible:j,onCancel:()=>ne(!1),onSave:zn,onDelete:qn,server:ie}),r.default.createElement(Dd,{visible:Ee,onCancel:Bn,onSave:Ut}),r.default.createElement(fi,{visible:$,onCancel:()=>U(!1),onSave:$e,onDelete:ze,source:me,mode:\"edit\"}))}function Ed(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(p,v){return r.default.createElement(di,{rowKey:v.key})}},{title:\"\\u7F51\\u76D8\",dataIndex:\"name\",render(p,v){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:p,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},p),(v.key===\"quark\"||v.key===\"uc\"||v.key===\"ali\")&&v.chunkSize&&r.default.createElement(s.Tag,{className:\"ios-tag\"},v.chunkSize,\"K\\xB7\",v.poolSize))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(p,v,y){return r.default.createElement(s.Switch,{value:p,onChange:k=>{e[y].enable=k,t([...e])}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(p,v,y){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>{i(B(S({},v),{index:y})),o(!0)},size:\"small\"})}}],[e]),u=wr(Lt(at,{activationConstraint:{distance:1}}),Lt(xt,{activationConstraint:{delay:150,tolerance:5}})),c=({active:p,over:v})=>{p.id!==(v==null?void 0:v.id)&&t(y=>{let k=y.findIndex(w=>w.key===p.id),E=y.findIndex(w=>w.key===(v==null?void 0:v.id));return Bt(y,k,E)})},f=async()=>{let p=await I.get(\"/pans/list\");t(p)},m=async()=>{try{await I.put(\"/pans/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),r.default.createElement(\"span\",{style:{fontSize:\"12px\",color:\"#999\"}},\"\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\\u5E76\\u7ACB\\u5373\\u751F\\u6548\")),duration:2})}catch(p){console.error(p),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},d=async()=>{try{await I.delete(\"/pans/list\"),f(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(p){console.error(p),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},g=p=>{let v=String(p.name||\"\").trim(),y=String(p.pic||\"\").trim(),k=B(S({},e[a.index]),{name:v,pic:y});(a.key===\"quark\"||a.key===\"uc\"||a.key===\"ali\")&&(k.chunkSize=p.chunkSize,k.poolSize=p.poolSize),a.key===\"quark\"&&(k.noSaveMode=p.noSaveMode===!0),e[a.index]=k,t([...e]),o(!1),s.message.info('\\u914D\\u7F6E\\u5DF2\\u66F4\\u65B0\\uFF0C\\u8BF7\\u70B9\\u51FB\\u4E0B\\u65B9\"\\u4FDD\\u5B58\"\\u6309\\u94AE\\u4FDD\\u5B58\\u914D\\u7F6E')};return(0,r.useEffect)(()=>{f()},[]),r.default.createElement(\"div\",null,r.default.createElement(Cr,{sensors:u,modifiers:[Sr],onDragEnd:c},r.default.createElement(kr,{items:e.map(p=>p.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:li}},rowKey:\"key\",columns:l,dataSource:e,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:m},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:d},\"\\u91CD\\u7F6E\")),r.default.createElement(dd,{visible:n,onCancel:()=>o(!1),onSave:g,panKey:a==null?void 0:a.key,panName:a==null?void 0:a.name,panPic:a==null?void 0:a.pic,chunkSize:a==null?void 0:a.chunkSize,poolSize:a==null?void 0:a.poolSize,noSaveMode:a==null?void 0:a.noSaveMode}))}function Fd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(!1),o=\"/emby/setting\",a=async()=>{let c=await I.get(o);e.setFieldsValue(c)},i=async()=>{let c=await e.validateFields();try{await I.put(o,c),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(f){console.error(f),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(f==null?void 0:f.message))}},l=async()=>{try{await I.delete(o),a(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(c){console.error(c),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}},u=()=>{s.Modal.confirm({title:\"\\u786E\\u8BA4\\u6E05\\u7406 TMDB \\u7F13\\u5B58\\uFF1F\",content:\"\\u5C06\\u6E05\\u7A7A\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF08\\u542B\\u5185\\u5B58\\u4E0E\\u6301\\u4E45\\u5316\\u6570\\u636E\\uFF09\\uFF0C\\u540E\\u7EED\\u8BE6\\u60C5\\u4F1A\\u91CD\\u65B0\\u8BF7\\u6C42 TMDB\\u3002\",okText:\"\\u6E05\\u7406\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){n(!0);try{await I.post(\"/emby/tmdb/cache/clear\"),s.message.success(\"TMDB \\u7F13\\u5B58\\u5DF2\\u6E05\\u7406\")}catch(c){console.error(c),s.message.error(\"\\u6E05\\u7406\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}finally{n(!1)}}})};return(0,r.useEffect)(()=>{a()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\",name:\"serverName\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"}]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"})),r.default.createElement(s.Form.Item,{label:\"TMDB API Key\",name:\"tmdbApiKey\",tooltip:\"TMDB v3 API Key\\uFF0C\\u542F\\u7528\\u589E\\u5F3A\\u65F6\\u5FC5\\u586B\",rules:[({getFieldValue:c})=>({validator(f,m){return!c(\"tmdbEnable\")||String(m||\"\").trim()?Promise.resolve():Promise.reject(new Error(\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\\u65F6\\u8BF7\\u8F93\\u5165 API Key\"))}})]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165 TMDB API Key\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 Emby\",name:\"enable\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u641C\\u7D22\\u663E\\u793A\\u6765\\u6E90\",name:\"searchSourcePrefix\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u641C\\u7D22\\u7ED3\\u679C\\u6807\\u9898\\u663E\\u793A\\u4E3A\\u201C\\u6765\\u6E90 \\xB7 \\u6807\\u9898\\u201D\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\",name:\"tmdbEnable\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u4F18\\u5148\\u4F7F\\u7528 TMDB \\u7684\\u6D77\\u62A5\\u3001\\u5267\\u7167\\u548C\\u5143\\u6570\\u636E\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"TMDB \\u7F13\\u5B58\",tooltip:\"\\u4EC5\\u6E05\\u7406\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF0C\\u4E0D\\u5F71\\u54CD\\u5217\\u8868/\\u641C\\u7D22\\u7AD9\\u6E90\\u7F13\\u5B58\"},r.default.createElement(s.Button,{danger:!0,onClick:u,loading:t},\"\\u4E00\\u952E\\u6E05\\u7406 TMDB \\u7F13\\u5B58\")),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:l},\"\\u91CD\\u7F6E\"))))}function Id(){let[e]=s.Form.useForm(),t=\"/danmu/setting\",n=async()=>{let i=await I.get(t);e.setFieldsValue(i)},o=async()=>{let i=await e.validateFields();try{await I.put(t,i),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(l){console.error(l),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}},a=async()=>{try{await I.delete(t),n(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(i){console.error(i),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(i==null?void 0:i.message))}};return(0,r.useEffect)(()=>{n()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"API \\u5217\\u8868\",style:{marginBottom:8}},r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0API\\u5730\\u5740\"}]},(i,{add:l,remove:u},{errors:c})=>r.default.createElement(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12}},i.map(f=>r.default.createElement(\"div\",{key:f.key,className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},f),{name:[f.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"}],style:{flex:1,marginBottom:0}}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"})),r.default.createElement(s.Form.Item,B(S({},f),{name:[f.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],style:{width:100,marginBottom:0,flexShrink:0}}),r.default.createElement(s.Input,{placeholder:\"\\u522B\\u540D\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(i.length>1?\"\":\" domain-list-action--placeholder\")},i.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>u(f.name)}):null))),r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>l(),block:!0,icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0 API\"),r.default.createElement(s.Form.ErrorList,{errors:c})))),r.default.createElement(s.Form.Item,{label:\"\\u81EA\\u52A8\\u63A8\\u9001\",name:\"autoPush\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u8C03\\u8BD5\\u4FE1\\u606F\",name:\"debug\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5728\\u63A7\\u5236\\u53F0\\u663E\\u793A\\u8BE6\\u7EC6\\u7684\\u5F39\\u5E55\\u5339\\u914D\\u8C03\\u8BD5\\u4FE1\\u606F\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:a},\"\\u91CD\\u7F6E\"))))}function ci(e,t=\"\"){if(!e||typeof e!=\"object\")return null;let n=String(e.address||e.api||e.url||\"\").trim();if(!n)return null;let o=\"\";try{o=new URL(/^https?:\\/\\//i.test(n)?n:\"https://\".concat(n)).hostname}catch(l){}let a=String(e.name||e.title||t||o||\"CMS\").trim();return{name:a.startsWith(\"\\u300C\\u91C7\\u300D\")?a:\"\\u300C\\u91C7\\u300D\".concat(a),address:n}}function Fr(e={}){return\"nodejs_\".concat(String(e.name||\"\").trim())}function Nd(e=[],t=[]){let n=new Set;return[...e,...t].map(o=>ci(o)).filter(o=>!o||n.has(o.address)?!1:(n.add(o.address),!0))}function fi({visible:e,onCancel:t,onSave:n,onDelete:o,source:a,mode:i=\"add\"}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&l.setFieldsValue({name:(a==null?void 0:a.name)||\"\",url:(a==null?void 0:a.address)||\"\"})},[e,a,l]);let f=async()=>{let m;try{m=await l.validateFields()}catch(p){return}let d=String(m.name||\"\").trim(),g=String(m.url||\"\").trim();try{if(c(!0),i===\"edit\"&&g===String((a==null?void 0:a.address)||\"\").trim()){await n({name:d,address:g}),s.message.success(\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\");return}let p=await I.post(\"/cms/resolve\",{name:d,url:g}),v=Array.isArray(p==null?void 0:p.sources)?p.sources:[];if(v.length===0){s.message.warning(\"\\u672A\\u8BC6\\u522B\\u5230\\u53EF\\u7528\\u7684 CMS \\u6E90\");return}i===\"edit\"?(await n(v[0]),s.message.success(v.length>1?\"\\u5DF2\\u4F7F\\u7528\\u8BC6\\u522B\\u7ED3\\u679C\\u4E2D\\u7684\\u7B2C\\u4E00\\u4E2A CMS \\u6E90\":\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\")):(await n(v),s.message.success(v.length>1?\"\\u5DF2\\u6DFB\\u52A0 \".concat(v.length,\" \\u4E2A CMS \\u6E90\"):\"CMS \\u6E90\\u6DFB\\u52A0\\u6210\\u529F\"))}catch(p){console.error(p),s.message.error(\"\".concat(i===\"edit\"?\"CMS \\u4FDD\\u5B58\\u5931\\u8D25\":\"CMS \\u89E3\\u6790\\u5931\\u8D25\",\"\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{c(!1)}};return r.default.createElement(s.Modal,{title:i===\"edit\"?\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"CMS \\u6E90\"):\"\\u6DFB\\u52A0 CMS \\u6E90\",open:e,onCancel:t,confirmLoading:u,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F7F\\u7528\\u63A5\\u53E3\\u8FD4\\u56DE\\u540D\\u79F0\\u6216\\u57DF\\u540D\\uFF0C\\u4FDD\\u5B58\\u65F6\\u4F1A\\u81EA\\u52A8\\u6DFB\\u52A0\\u300C\\u91C7\\u300D\\u524D\\u7F00\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684 CMS\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 CMS API \\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"example.com \\u6216 https://example.com/api.php/provide/vod/\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\".concat(i===\"edit\"?\"\":\" emby-server-edit-actions--new\")},i===\"edit\"&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:()=>o==null?void 0:o(a),disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:f,disabled:u},u?i===\"edit\"?\"\\u4FDD\\u5B58\\u4E2D...\":\"\\u89E3\\u6790\\u4E2D...\":i===\"edit\"?\"\\u4FDD\\u5B58\":\"\\u89E3\\u6790\\u5E76\\u6DFB\\u52A0\")))))}function Dd(e){return r.default.createElement(fi,B(S({},e),{mode:\"add\"}))}function Ad(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),l=(0,r.useCallback)(async()=>{o(!0);try{let c=await I.get(\"/subscriptions\");t(Array.isArray(c==null?void 0:c.endpoints)?c.endpoints:[])}catch(c){console.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25:\",c),c!=null&&c.handled||s.message.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25\")}finally{o(!1)}},[]);(0,r.useEffect)(()=>{l()},[l]);let u=c=>{(0,Mr.default)(c.url),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")};return r.default.createElement(\"div\",{className:\"subscription-page\"},r.default.createElement(\"section\",{className:\"subscription-section\"},r.default.createElement(s.Spin,{spinning:n},r.default.createElement(\"div\",{className:\"subscription-endpoints\"},e.map(c=>r.default.createElement(\"div\",{className:\"subscription-endpoint\",key:c.key||c.url},r.default.createElement(\"div\",{className:\"subscription-endpoint__main\"},r.default.createElement(\"div\",{className:\"subscription-endpoint__title\"},r.default.createElement(\"span\",null,c.name)),r.default.createElement(\"div\",{className:\"subscription-endpoint__url\",title:c.url},c.url)),r.default.createElement(\"div\",{className:\"subscription-endpoint__actions\"},c.key===\"emby\"&&r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(yn,null),onClick:()=>i(!0),\"aria-label\":\"\\u914D\\u7F6E Emby API\"}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(ir,null),onClick:()=>u(c),\"aria-label\":\"\\u590D\\u5236\".concat(c.name)}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(ur,null),href:c.url,target:\"_blank\",rel:\"noreferrer\",\"aria-label\":\"\\u6253\\u5F00\".concat(c.name)}))))))),r.default.createElement(s.Modal,{title:\"Emby API \\u8BBE\\u7F6E\",open:a,footer:null,onCancel:()=>i(!1),destroyOnClose:!0,className:\"ios-modal subscription-setting-modal\"},r.default.createElement(Fd,null)))}function _d(){let[e,t]=(0,r.useState)(\"account\"),n={accept:\".json\",showUploadList:!1,beforeUpload(i){let l=new FileReader;return l.onload=async u=>{try{let c=JSON.parse(u.target.result);await I.put(\"/backup\",c),s.message.success(\"\".concat(i.name,\"\\u5BFC\\u5165\\u6210\\u529F\"))}catch(c){s.message.error(\"\".concat(i.name,\"\\u5BFC\\u5165\\u5931\\u8D25: \").concat(c.message)),console.error(\"Error parsing JSON:\",c)}},l.readAsText(i),!1}},o=[{key:\"account\",label:\"\\u767B\\u5F55\",icon:r.default.createElement(cr,null)},{key:\"settings\",label:\"\\u8BBE\\u7F6E\",icon:r.default.createElement(yn,null)}],a=()=>{switch(e){case\"account\":return r.default.createElement(Zl,null);case\"settings\":return r.default.createElement(s.Tabs,{destroyOnHidden:!0},r.default.createElement(Mn,{tab:\"\\u7AD9\\u6E90\\u5217\\u8868\",key:\"sites\"},r.default.createElement(Td,null)),r.default.createElement(Mn,{tab:\"\\u7F51\\u76D8\\u5217\\u8868\",key:\"pans\"},r.default.createElement(Ed,null)),r.default.createElement(Mn,{tab:\"\\u5F39\\u5E55\\u8BBE\\u7F6E\",key:\"danmu\"},r.default.createElement(Id,null)),r.default.createElement(Mn,{tab:\"\\u8BA2\\u9605\\u8F6C\\u6362\",key:\"subscriptions\"},r.default.createElement(Ad,null)));default:return null}};return r.default.createElement(\"div\",{className:\"app-layout\"},r.default.createElement(\"div\",{className:\"top-nav-bar\"},r.default.createElement(\"div\",{className:\"nav-pill\"},o.map(i=>r.default.createElement(\"div\",{key:i.key,className:\"nav-tab \".concat(e===i.key?\"nav-tab--active\":\"\"),onClick:()=>t(i.key)},i.icon,r.default.createElement(\"span\",null,i.label))),r.default.createElement(\"div\",{className:\"nav-divider\"}),r.default.createElement(\"div\",{className:\"nav-actions\"},r.default.createElement(s.Upload,S({},n),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(dr,null),size:\"small\"},\"\\u5BFC\\u5165\")),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(sr,null),size:\"small\",href:\"/website/backup\",target:\"_blank\"},\"\\u5BFC\\u51FA\")))),r.default.createElement(\"div\",{className:\"container\"},r.default.createElement(s.Card,{className:\"main-card\"},a())))}function Md(){(0,ii.createRoot)(document.getElementById(\"app\")).render(r.default.createElement(_d,null))}\n/*! Bundled license information:\n\nclassnames/index.js:\n (*!\n \tCopyright (c) 2018 Jed Watson.\n \tLicensed under the MIT License (MIT), see\n \thttp://jedwatson.github.io/classnames\n *)\n*/\n"}
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 q0t=Object.create;var z2=Object.defineProperty;var j0t=Object.getOwnPropertyDescriptor;var H0t=Object.getOwnPropertyNames;var Q0t=Object.getPrototypeOf,G0t=Object.prototype.hasOwnProperty;var lr=(t,e)=>()=>(t&&(e=t(t=0)),e);var E=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),is=(t,e)=>{for(var r in e)z2(t,r,{get:e[r],enumerable:!0})},wde=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of H0t(e))!G0t.call(t,s)&&s!==r&&z2(t,s,{get:()=>e[s],enumerable:!(n=j0t(e,s))||n.enumerable});return t};var Re=(t,e,r)=>(r=t!=null?q0t(Q0t(t)):{},wde(e||!t||!t.__esModule?z2(r,"default",{value:t,enumerable:!0}):r,t)),K0t=t=>wde(z2({},"__esModule",{value:!0}),t);var Nde=E((cOr,Rde)=>{"use strict";function V0t(t){var e=new t,r=e;function n(){var i=e;return i.next?e=i.next:(e=new t,r=e),i.next=null,i}function s(i){r.next=i,r=i}return{get:n,release:s}}Rde.exports=V0t});var Pde=E((uOr,D6)=>{"use strict";var z0t=Nde();function Ode(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=z0t(Y0t),s=null,i=null,a=0,o=null,c={push:h,drain:Na,saturated:Na,pause:l,paused:!1,get concurrency(){return r},set concurrency(I){if(!(I>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=I,!c.paused)for(;s&&a<r;)a++,g()},running:u,resume:p,idle:m,length:d,getQueue:f,unshift:A,empty:Na,kill:b,killAndDrain:y,error:v,abort:x};return c;function u(){return a}function l(){c.paused=!0}function d(){for(var I=s,R=0;I;)I=I.next,R++;return R}function f(){for(var I=s,R=[];I;)R.push(I.value),I=I.next;return R}function p(){if(c.paused){if(c.paused=!1,s===null){a++,g();return}for(;s&&a<r;)a++,g()}}function m(){return a===0&&c.length()===0}function h(I,R){var w=n.get();w.context=t,w.release=g,w.value=I,w.callback=R||Na,w.errorHandler=o,a>=r||c.paused?i?(i.next=w,i=w):(s=w,i=w,c.saturated()):(a++,e.call(t,w.value,w.worked))}function A(I,R){var w=n.get();w.context=t,w.release=g,w.value=I,w.callback=R||Na,w.errorHandler=o,a>=r||c.paused?s?(w.next=s,s=w):(s=w,i=w,c.saturated()):(a++,e.call(t,w.value,w.worked))}function g(I){I&&n.release(I);var R=s;R&&a<=r?c.paused?a--:(i===s&&(i=null),s=R.next,R.next=null,e.call(t,R.value,R.worked),i===null&&c.empty()):--a===0&&c.drain()}function b(){s=null,i=null,c.drain=Na}function y(){s=null,i=null,c.drain(),c.drain=Na}function x(){var I=s;for(s=null,i=null;I;){var R=I.next,w=I.callback,N=I.errorHandler,P=I.value,B=I.context;I.value=null,I.callback=Na,I.errorHandler=null,N&&N(new Error("abort"),P),w.call(B,new Error("abort")),I.release(I),I=R}c.drain=Na}function v(I){o=I}}function Na(){}function Y0t(){this.value=null,this.callback=Na,this.next=null,this.release=Na,this.context=null,this.errorHandler=null;var t=this;this.worked=function(r,n){var s=t.callback,i=t.errorHandler,a=t.value;t.value=null,t.callback=Na,t.errorHandler&&i(r,a),s.call(t.context,r,n),t.release(t)}}function J0t(t,e,r){typeof t=="function"&&(r=e,e=t,t=null);function n(l,d){e.call(this,l).then(function(f){d(null,f)},d)}var s=Ode(t,n,r),i=s.push,a=s.unshift;return s.push=o,s.unshift=c,s.drained=u,s;function o(l){var d=new Promise(function(f,p){i(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch(Na),d}function c(l){var d=new Promise(function(f,p){a(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch(Na),d}function u(){var l=new Promise(function(d){process.nextTick(function(){if(s.idle())d();else{var f=s.drain;s.drain=function(){typeof f=="function"&&f(),d(),s.drain=f}}})});return l}}D6.exports=Ode;D6.exports.promise=J0t});var L6=E((lOr,Y2)=>{"use strict";var{format:X0t}=require("node:util");function Z0t(){return`${this.name} [${this.code}]: ${this.message}`}function B6(t,e,r=500,n=Error){if(!t)throw new Error("Fastify error code must not be empty");if(!e)throw new Error("Fastify error message must not be empty");t=t.toUpperCase(),!r&&(r=void 0);function s(...i){if(!new.target)return new s(...i);this.code=t,this.name="FastifyError",this.statusCode=r;let a=i.length-1;a!==-1&&i[a]&&typeof i[a]=="object"&&"cause"in i[a]&&(this.cause=i.pop().cause),this.message=X0t(e,...i),Error.stackTraceLimit!==0&&Error.captureStackTrace(this,s)}return s.prototype=Object.create(n.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),s.prototype[Symbol.toStringTag]="Error",s.prototype.toString=Z0t,s}Y2.exports=B6;Y2.exports.default=B6;Y2.exports.createError=B6});var J2=E((dOr,kde)=>{"use strict";var{createError:op}=L6();kde.exports={AVV_ERR_EXPOSE_ALREADY_DEFINED:op("AVV_ERR_EXPOSE_ALREADY_DEFINED","'%s' is already defined, specify an expose option for '%s'"),AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:op("AVV_ERR_ATTRIBUTE_ALREADY_DEFINED","'%s' is already defined"),AVV_ERR_CALLBACK_NOT_FN:op("AVV_ERR_CALLBACK_NOT_FN","Callback for '%s' hook is not a function. Received: '%s'"),AVV_ERR_PLUGIN_NOT_VALID:op("AVV_ERR_PLUGIN_NOT_VALID","Plugin must be a function or a promise. Received: '%s'"),AVV_ERR_ROOT_PLG_BOOTED:op("AVV_ERR_ROOT_PLG_BOOTED","Root plugin has already booted"),AVV_ERR_PARENT_PLG_LOADED:op("AVV_ERR_PARENT_PLG_LOADED","Impossible to load '%s' plugin because the parent '%s' was already loaded"),AVV_ERR_READY_TIMEOUT:op("AVV_ERR_READY_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise"),AVV_ERR_PLUGIN_EXEC_TIMEOUT:op("AVV_ERR_PLUGIN_EXEC_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise")}});var PA=E((fOr,Dde)=>{"use strict";var emt=Symbol("avvio.Boot"),tmt=Symbol("isOnCloseHandler"),rmt=Symbol("avvio.ThenifyDoNotWrap"),nmt=Symbol("avvio.TimeTree.untrackNode"),smt=Symbol("avvio.TimeTree.trackNode"),imt=Symbol("avvio.TimeTree.getParent"),amt=Symbol("avvio.TimeTree.getNode"),omt=Symbol("avvio.TimeTree.addNode"),cmt=Symbol.for("plugin-meta");Dde.exports={kAvvio:emt,kIsOnCloseHandler:tmt,kThenifyDoNotWrap:rmt,kUntrackNode:nmt,kTrackNode:smt,kGetParent:imt,kGetNode:amt,kAddNode:omt,kPluginMeta:cmt}});var Ude=E((pOr,Fde)=>{"use strict";var{kUntrackNode:Bde,kTrackNode:M6,kGetParent:Lde,kGetNode:Mde,kAddNode:Wde}=PA(),W6=class{constructor(){this.root=null,this.tableId=new Map,this.tableLabel=new Map}[M6](e){this.tableId.set(e.id,e),this.tableLabel.has(e.label)?this.tableLabel.get(e.label).push(e):this.tableLabel.set(e.label,[e])}[Bde](e){this.tableId.delete(e.id);let r=this.tableLabel.get(e.label);r.pop(),r.length===0&&this.tableLabel.delete(e.label)}[Lde](e){if(e===null)return null;if(this.tableLabel.has(e)){let r=this.tableLabel.get(e);return r[r.length-1]}else return null}[Mde](e){return this.tableId.get(e)}[Wde](e,r,n){let s=this[Lde](e);if(s===null)return this.root={parent:null,id:"root",label:r,nodes:[],start:n,stop:null,diff:-1},this[M6](this.root),this.root.id;let a=`${r}-${Math.random()}`,o={parent:e,id:a,label:r,nodes:[],start:n,stop:null,diff:-1};return s.nodes.push(o),this[M6](o),a}start(e,r,n=Date.now()){return this[Wde](e,r,n)}stop(e,r=Date.now()){let n=this[Mde](e);n&&(n.stop=r,n.diff=n.stop-n.start||0,this[Bde](n))}toJSON(){return Object.assign({},this.root)}prettyPrint(){return $de(this.toJSON())}};function $de(t,e=""){let r=e,n=t.nodes.length,s=n-1;r+=`${t.label} ${t.diff} ms
`;for(let i=0;i<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+=$de(a,o).slice(e.length+2)}return r}Fde.exports={TimeTree:W6}});var X2=E((mOr,qde)=>{"use strict";var{debuglog:umt}=require("node:util"),lmt=umt("avvio");qde.exports={debug:lmt}});var Hde=E((hOr,jde)=>{"use strict";function dmt(){let t={resolve:null,reject:null,promise:null};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}jde.exports={createPromise:dmt}});var Gde=E((gOr,Qde)=>{"use strict";var{kPluginMeta:$6}=PA();function fmt(t,e){return t[$6]&&t[$6].name?t[$6].name:e&&e.name?e.name:t.name?t.name:t.toString().split(`
`).slice(0,2).map(r=>r.trim()).join(" -- ")}Qde.exports={getPluginName:fmt}});var Z2=E((AOr,Kde)=>{"use strict";function pmt(t){return t!==null&&typeof t=="object"&&typeof t.then=="function"}Kde.exports={isPromiseLike:pmt}});var zde=E((yOr,Vde)=>{"use strict";var{EventEmitter:mmt}=require("node:events"),{inherits:hmt}=require("node:util"),{debug:ui}=X2(),{createPromise:gmt}=Hde(),{AVV_ERR_PLUGIN_EXEC_TIMEOUT:Amt}=J2(),{getPluginName:ymt}=Gde(),{isPromiseLike:xmt}=Z2();function kA(t,e,r,n,s){this.queue=t,this.func=e,this.options=r,this.isAfter=n,this.timeout=s,this.started=!1,this.name=ymt(e,r),this.queue.pause(),this._error=null,this.loaded=!1,this._promise=null,this.startTime=null}hmt(kA,mmt);kA.prototype.exec=function(t,e){ui("exec",this.name),this.server=t;let r=this.func,n=this.name,s=!1;this.options=typeof this.options=="function"?this.options(this.server):this.options;let i=null,a=c=>{if(s){ui("loading complete",n);return}this._error=c,ui(c?"exec errored":"exec completed",n),s=!0,i&&clearTimeout(i),e(c)};this.timeout>0&&(ui("setting up timeout",n,this.timeout),i=setTimeout(function(){ui("timed out",n),i=null;let c=new Amt(n);c.fn=r,a(c)},this.timeout)),this.started=!0,this.startTime=Date.now(),this.emit("start",this.server?this.server.name:null,this.name,Date.now());let o=r(this.server,this.options,a);xmt(o)&&(ui("exec: resolving promise",n),o.then(()=>process.nextTick(a),c=>process.nextTick(a,c)))};kA.prototype.loadedSoFar=function(){if(ui("loadedSoFar",this.name),this.loaded)return Promise.resolve();let t=()=>{this.server.after((r,n)=>{this._error=r,this.queue.pause(),this._promise&&(r?(ui("rejecting promise",this.name,r),this._promise.reject(r)):(ui("resolving promise",this.name),this._promise.resolve()),this._promise=null),process.nextTick(n,r)}),this.queue.resume()},e;return this._promise?e=Promise.resolve():(this._promise=gmt(),e=this._promise.promise,this.server?t():this.on("start",t)),e};kA.prototype.enqueue=function(t,e){ui("enqueue",this.name,t.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.queue.push(t,e)};kA.prototype.finish=function(t,e){ui("finish",this.name,t);let r=()=>{this.loaded||(ui("loaded",this.name),this.emit("loaded",this.server?this.server.name:null,this.name,Date.now()),this.loaded=!0,e(t))};if(t){this._promise&&(this._promise.reject(t),this._promise=null),r();return}let n=()=>{if(ui("check",this.name,this.queue.length(),this.queue.running(),this._promise),this.queue.length()===0&&this.queue.running()===0)if(this._promise){let s=()=>{ui("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(s,s),this._promise=null}else r();else ui("delayed",this.name),this.queue.drain=()=>{ui("drain",this.name),this.queue.drain=bmt,queueMicrotask(n)}};queueMicrotask(n),this.queue.resume()};function bmt(){}Vde.exports={Plugin:kA}});var Jde=E((xOr,Yde)=>{"use strict";var{AVV_ERR_PLUGIN_NOT_VALID:F6}=J2();function Emt(t){if(!(t&&(typeof t=="function"||typeof t.then=="function")))throw Array.isArray(t)?new F6("array"):t===null?new F6("null"):new F6(typeof t)}Yde.exports={validatePlugin:Emt}});var Zde=E((bOr,Xde)=>{"use strict";function _mt(t){return t!==null&&typeof t=="object"&&typeof t.default=="function"}Xde.exports={isBundledOrTypescriptPlugin:_mt}});var rfe=E((EOr,tfe)=>{"use strict";var{debug:efe}=X2(),{kThenifyDoNotWrap:U6}=PA();function Smt(){if(this.booted){efe("thenify returning undefined because we are already booted");return}if(this[U6]){this[U6]=!1;return}return efe("thenify"),(t,e)=>this._loadRegistered().then(()=>(this[U6]=!0,t(this._server)),e)}tfe.exports={thenify:Smt}});var sfe=E((_Or,nfe)=>{"use strict";var{isPromiseLike:vmt}=Z2(),{kAvvio:Imt}=PA();function Cmt(t,e,r){let n=t.apply(t,e);vmt(n)&&!n[Imt]?n.then(()=>process.nextTick(r),s=>process.nextTick(r,s)):r&&process.nextTick(r)}nfe.exports={executeWithThenable:Cmt}});var ffe=E((SOr,j6)=>{"use strict";var eR=Pde(),Tmt=require("node:events").EventEmitter,wmt=require("node:util").inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:ZE,AVV_ERR_CALLBACK_NOT_FN:DA,AVV_ERR_ROOT_PLG_BOOTED:Rmt,AVV_ERR_READY_TIMEOUT:Nmt,AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:Omt}=J2(),{kAvvio:ofe,kIsOnCloseHandler:cfe}=PA(),{TimeTree:Pmt}=Ude(),{Plugin:ufe}=zde(),{debug:BA}=X2(),{validatePlugin:kmt}=Jde(),{isBundledOrTypescriptPlugin:Dmt}=Zde(),{isPromiseLike:Bmt}=Z2(),{thenify:lfe}=rfe(),{executeWithThenable:ife}=sfe();function as(t,e,r){if(typeof t=="function"&&arguments.length===1&&(r=t,e={},t=null),typeof e=="function"&&(r=e,e={}),e=e||{},e.autostart=e.autostart!==!1,e.timeout=Number(e.timeout)||0,e.expose=e.expose||{},!new.target)return new as(t,e,r);this._server=t||this,this._opts=e,t&&this._expose(),this._current=[],this._error=null,this._lastUsed=null,this.setMaxListeners(0),r&&this.once("start",r),this.started=!1,this.booted=!1,this.pluginTree=new Pmt,this._readyQ=eR(this,dfe,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=afe},this._closeQ=eR(this,Mmt,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=afe},this._doStart=null;let n=this;this._root=new ufe(eR(this,this._loadPluginNextTick,1),function(i,a,o){n._doStart=o,a.autostart&&n.start()},e,!1,0),this._trackPluginLoading(this._root),this._loadPlugin(this._root,s=>{BA("root plugin ready");try{this.emit("preReady"),this._root=null}catch(i){s=s||this._error||i}if(s){if(this._error=s,this._readyQ.length()===0)throw s}else this.booted=!0;this._readyQ.resume()})}wmt(as,Tmt);as.prototype.start=function(){return this.started=!0,process.nextTick(this._doStart),this};as.prototype.override=function(t,e,r){return t};as.prototype[ofe]=!0;as.prototype.use=function(t,e){return this._lastUsed=this._addPlugin(t,e,!1),this};as.prototype._loadRegistered=function(){let t=this._current[0];return!this.started&&!this.booted&&process.nextTick(()=>this._root.queue.resume()),t?t.loadedSoFar():Promise.resolve()};Object.defineProperty(as.prototype,"then",{get:lfe});as.prototype._addPlugin=function(t,e,r){if(Dmt(t)&&(t=t.default),kmt(t),e=e||{},this.booted)throw new Rmt;let n=this._current[0],s=this._opts.timeout;if(!n.loaded&&n.timeout>0){let a=Date.now()-n.startTime;s=n.timeout-(a+3)}let i=new ufe(eR(this,this._loadPluginNextTick,1),t,e,r,s);if(this._trackPluginLoading(i),n.loaded)throw new Error(i.name,n.name);return n.enqueue(i,a=>{a&&(this._error=a)}),i};as.prototype._expose=function(){let e=this,r=e._server,{use:n="use",after:s="after",ready:i="ready",onClose:a="onClose",close:o="close"}=this._opts.expose;if(r[n])throw new ZE(n,"use");if(r[n]=function(c,u){return e.use(c,u),this},r[s])throw new ZE(s,"after");if(r[s]=function(c){return typeof c!="function"?e._loadRegistered():(e.after(q6(c,this)),this)},r[i])throw new ZE(i,"ready");if(r[i]=function(c){if(c&&typeof c!="function")throw new DA(i,typeof c);return e.ready(c?q6(c,this):void 0)},r[a])throw new ZE(a,"onClose");if(r[a]=function(c){if(typeof c!="function")throw new DA(a,typeof c);return e.onClose(Wmt(c,this)),this},r[o])throw new ZE(o,"close");if(r[o]=function(c){if(c&&typeof c!="function")throw new DA(o,typeof c);return c?(e.close(q6(c,this)),this):e.close()},r.then)throw new Omt("then");Object.defineProperty(r,"then",{get:lfe.bind(e)}),r[ofe]=!0};as.prototype.after=function(t){if(!t)return this._loadRegistered();this._addPlugin(e.bind(this),{},!0);function e(r,n,s){dfe.call(this,t,s)}return this};as.prototype.onClose=function(t){if(typeof t!="function")throw new DA("onClose",typeof t);return t[cfe]=!0,this._closeQ.unshift(t,e=>{e&&(this._error=e)}),this};as.prototype.close=function(t){let e;if(t){if(typeof t!="function")throw new DA("close",typeof t)}else e=new Promise(function(r,n){t=function(s){if(s)return n(s);r()}});return this.ready(()=>{this._error=null,this._closeQ.push(t),process.nextTick(this._closeQ.resume.bind(this._closeQ))}),e};as.prototype.ready=function(t){if(t){if(typeof t!="function")throw new DA("ready",typeof t);this._readyQ.push(t),queueMicrotask(this.start.bind(this));return}return new Promise((e,r)=>{this._readyQ.push(s),this.start();let n=this._current[0].server;function s(i,a,o){i?r(i):e(n),process.nextTick(o)}})};as.prototype._trackPluginLoading=function(t){let e=this._current[0]?.name||null;t.once("start",(r,n,s)=>{let i=this.pluginTree.start(e||null,n,s);t.once("loaded",(a,o,c)=>{this.pluginTree.stop(i,c)})})};as.prototype.prettyPrint=function(){return this.pluginTree.prettyPrint()};as.prototype.toJSON=function(){return this.pluginTree.toJSON()};as.prototype._loadPlugin=function(t,e){let r=this;if(Bmt(t.func)){t.func.then(a=>{typeof a.default=="function"&&(a=a.default),t.func=a,this._loadPlugin(t,e)},e);return}let n=r._current[0];if(r._current.unshift(t),r._error&&!t.isAfter){BA("skipping loading of plugin as instance errored and it is not an after",t.name),process.nextTick(i);return}let s=n&&n.server||r._server;if(!t.isAfter)try{s=r.override(s,t.func,t.options)}catch(a){return BA("override errored",t.name),i(a)}t.exec(s,i);function i(a){t.finish(a,o=>{r._current.shift(),e(o)})}};as.prototype._loadPluginNextTick=function(t,e){process.nextTick(this._loadPlugin.bind(this),t,e)};function afe(){}function dfe(t,e){let r=this._server,n=this._error;if(this._error=null,t.length===0)this._error=n,ife(t,[],e);else if(t.length===1)ife(t,[n],e);else if(this._opts.timeout===0){let s=i=>{this._error=i,e(this._error)};t.length===2?t(n,s):t(n,r,s)}else Lmt.call(this,t,n,r,e)}function Lmt(t,e,r,n){let s=t.unwrappedName??t.name;BA("setting up ready timeout",s,this._opts.timeout);let i=setTimeout(()=>{BA("timed out",s),i=null;let o=new Nmt(s);o.fn=t,this._error=o,n(o)},this._opts.timeout);t.length===2?t(e,a.bind(this)):t(e,r,a.bind(this));function a(o){i&&(clearTimeout(i),this._error=o,n(this._error))}}function Mmt(t,e){let r=this._server,n=t[cfe];if(t.length===0||t.length===1){let s;n?s=t(r):s=t(this._error),s&&typeof s.then=="function"?(BA("resolving close/onClose promise"),s.then(()=>process.nextTick(e),i=>process.nextTick(e,i))):process.nextTick(e)}else t.length===2?t(n?r:this._error,e):n?t(r,e):t(this._error,r,e)}function Wmt(t,e){return r.bind(e);function r(n,s){let i;t.length===0?(i=t(),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t.length===1?(i=t(this),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t(this,s)}}function q6(t,e){let r=n.bind(e);return r.unwrappedName=t.name,r;function n(s,i){let a;t?t.length===0?(a=t(),a&&a.then?a.then(function(){process.nextTick(i,s)},i):process.nextTick(i,s)):t.length===1?(a=t(s),a&&a.then?a.then(function(){process.nextTick(i)},i):process.nextTick(i)):t.length===2?t(s,i):t(s,this,i):process.nextTick(i)}}j6.exports=as;j6.exports.express=function(t){return as(t,{expose:{use:"load"}})}});var Gs=E((vOr,pfe)=>{"use strict";var $mt={kAvvioBoot:Symbol("fastify.avvioBoot"),kChildren:Symbol("fastify.children"),kServerBindings:Symbol("fastify.serverBindings"),kBodyLimit:Symbol("fastify.bodyLimit"),kRoutePrefix:Symbol("fastify.routePrefix"),kLogLevel:Symbol("fastify.logLevel"),kLogSerializers:Symbol("fastify.logSerializers"),kHooks:Symbol("fastify.hooks"),kContentTypeParser:Symbol("fastify.contentTypeParser"),kState:Symbol("fastify.state"),kOptions:Symbol("fastify.options"),kDisableRequestLogging:Symbol("fastify.disableRequestLogging"),kPluginNameChain:Symbol("fastify.pluginNameChain"),kRouteContext:Symbol("fastify.context"),kPublicRouteContext:Symbol("fastify.routeOptions"),kGenReqId:Symbol("fastify.genReqId"),kSchemaController:Symbol("fastify.schemaController"),kSchemaHeaders:Symbol("headers-schema"),kSchemaParams:Symbol("params-schema"),kSchemaQuerystring:Symbol("querystring-schema"),kSchemaBody:Symbol("body-schema"),kSchemaResponse:Symbol("response-schema"),kSchemaErrorFormatter:Symbol("fastify.schemaErrorFormatter"),kSchemaVisited:Symbol("fastify.schemas.visited"),kRequest:Symbol("fastify.Request"),kRequestPayloadStream:Symbol("fastify.RequestPayloadStream"),kRequestAcceptVersion:Symbol("fastify.RequestAcceptVersion"),kRequestCacheValidateFns:Symbol("fastify.request.cache.validateFns"),kRequestOriginalUrl:Symbol("fastify.request.originalUrl"),kFourOhFour:Symbol("fastify.404"),kCanSetNotFoundHandler:Symbol("fastify.canSetNotFoundHandler"),kFourOhFourLevelInstance:Symbol("fastify.404LogLevelInstance"),kFourOhFourContext:Symbol("fastify.404ContextKey"),kDefaultJsonParse:Symbol("fastify.defaultJSONParse"),kReply:Symbol("fastify.Reply"),kReplySerializer:Symbol("fastify.reply.serializer"),kReplyIsError:Symbol("fastify.reply.isError"),kReplyHeaders:Symbol("fastify.reply.headers"),kReplyTrailers:Symbol("fastify.reply.trailers"),kReplyHasStatusCode:Symbol("fastify.reply.hasStatusCode"),kReplyHijacked:Symbol("fastify.reply.hijacked"),kReplyStartTime:Symbol("fastify.reply.startTime"),kReplyNextErrorHandler:Symbol("fastify.reply.nextErrorHandler"),kReplyEndTime:Symbol("fastify.reply.endTime"),kReplyErrorHandlerCalled:Symbol("fastify.reply.errorHandlerCalled"),kReplyIsRunningOnErrorHook:Symbol("fastify.reply.isRunningOnErrorHook"),kReplySerializerDefault:Symbol("fastify.replySerializerDefault"),kReplyCacheSerializeFns:Symbol("fastify.reply.cache.serializeFns"),kTestInternals:Symbol("fastify.testInternals"),kErrorHandler:Symbol("fastify.errorHandler"),kChildLoggerFactory:Symbol("fastify.childLoggerFactory"),kHasBeenDecorated:Symbol("fastify.hasBeenDecorated"),kKeepAliveConnections:Symbol("fastify.keepAliveConnections"),kRouteByFastify:Symbol("fastify.routeByFastify")};pfe.exports=$mt});var G6=E((IOr,tR)=>{"use strict";var{format:H6}=require("node:util");function Fmt(t){return mfe({...t,name:"DeprecationWarning"})}function mfe({name:t,code:e,message:r,unlimited:n=!1}={}){if(!t)throw new Error("Warning name must not be empty");if(!e)throw new Error("Warning code must not be empty");if(!r)throw new Error("Warning message must not be empty");if(typeof n!="boolean")throw new Error("Warning opts.unlimited must be a boolean");e=e.toUpperCase();let s={[t]:function(a,o,c){i.emitted===!0&&i.unlimited!==!0||(i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code))}};n&&(s={[t]:function(a,o,c){i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code)}});let i=s[t];return i.emitted=!1,i.message=r,i.unlimited=n,i.code=e,i.format=function(a,o,c){let u;return a&&o&&c?u=H6(r,a,o,c):a&&o?u=H6(r,a,o):a?u=H6(r,a):u=r,u},i}var Q6={createWarning:mfe,createDeprecation:Fmt};tR.exports=Q6;tR.exports.default=Q6;tR.exports.processWarning=Q6});var od=E((COr,gfe)=>{"use strict";var{createDeprecation:Ii,createWarning:hfe}=G6(),Umt=Ii({code:"FSTDEP005",message:'You are accessing the deprecated "request.connection" property. Use "request.socket" instead.'}),qmt=Ii({code:"FSTDEP006",message:"You are decorating Request/Reply with a reference type. This reference is shared amongst all requests. Use onRequest hook instead. Property: %s"}),jmt=Ii({code:"FSTDEP007",message:'You are trying to set a HEAD route using "exposeHeadRoute" route flag when a sibling route is already set. See documentation for more info.'}),Hmt=Ii({code:"FSTDEP008",message:'You are using route constraints via the route { version: "..." } option, use { constraints: { version: "..." } } option instead.'}),Qmt=Ii({code:"FSTDEP009",message:'You are using a custom route versioning strategy via the server { versioning: "..." } option, use { constraints: { version: "..." } } option instead.'}),Gmt=Ii({code:"FSTDEP010",message:'Modifying the "reply.sent" property is deprecated. Use the "reply.hijack()" method instead.'}),Kmt=Ii({code:"FSTDEP011",message:'Variadic listen method is deprecated. Please use ".listen(optionsObject)" instead. The variadic signature will be removed in `fastify@5`.'}),Vmt=Ii({code:"FSTDEP012",message:'request.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "request.context" will be removed in `fastify@5`.'}),zmt=Ii({code:"FSTDEP013",message:'Direct return of "trailers" function is deprecated. Please use "callback" or "async-await" for return value. The support of direct return will removed in `fastify@5`.'}),Ymt=Ii({code:"FSTDEP014",message:"You are trying to set/access the default route. This property is deprecated. Please, use setNotFoundHandler if you want to custom a 404 handler or the wildcard (*) to match all routes."}),Jmt=Ii({code:"FSTDEP015",message:'You are accessing the deprecated "request.routeSchema" property. Use "request.routeOptions.schema" instead. Property "req.routeSchema" will be removed in `fastify@5`.'}),Xmt=Ii({code:"FSTDEP016",message:'You are accessing the deprecated "request.routeConfig" property. Use "request.routeOptions.config" instead. Property "req.routeConfig" will be removed in `fastify@5`.'}),Zmt=Ii({code:"FSTDEP017",message:'You are accessing the deprecated "request.routerPath" property. Use "request.routeOptions.url" instead. Property "req.routerPath" will be removed in `fastify@5`.'}),eht=Ii({code:"FSTDEP018",message:'You are accessing the deprecated "request.routerMethod" property. Use "request.routeOptions.method" instead. Property "req.routerMethod" will be removed in `fastify@5`.'}),tht=Ii({code:"FSTDEP019",message:'reply.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "reply.context" will be removed in `fastify@5`.'}),rht=Ii({code:"FSTDEP020",message:'You are using the deprecated "reply.getResponseTime()"" method. Use the "request.elapsedTime" property instead. Method "reply.getResponseTime()" will be removed in `fastify@5`.'}),nht=hfe({name:"FastifyWarning",code:"FSTWRN001",message:"The %s schema for %s: %s is missing. This may indicate the schema is not well specified.",unlimited:!0}),sht=hfe({name:"FastifyWarning",code:"FSTWRN002",message:"The %s plugin being registered mixes async and callback styles, which will result in an error in `fastify@5`",unlimited:!0});gfe.exports={FSTDEP005:Umt,FSTDEP006:qmt,FSTDEP007:jmt,FSTDEP008:Hmt,FSTDEP009:Qmt,FSTDEP010:Gmt,FSTDEP011:Kmt,FSTDEP012:Vmt,FSTDEP013:zmt,FSTDEP014:Ymt,FSTDEP015:Jmt,FSTDEP016:Xmt,FSTDEP017:Zmt,FSTDEP018:eht,FSTDEP019:tht,FSTDEP020:rht,FSTWRN001:nht,FSTWRN002:sht}});var Ci=E((TOr,rR)=>{"use strict";var He=L6(),LA={FST_ERR_NOT_FOUND:He("FST_ERR_NOT_FOUND","Not Found",404),FST_ERR_OPTIONS_NOT_OBJ:He("FST_ERR_OPTIONS_NOT_OBJ","Options must be an object",500,TypeError),FST_ERR_QSP_NOT_FN:He("FST_ERR_QSP_NOT_FN","querystringParser option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:He("FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN","schemaController.bucket option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:He("FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN","schemaErrorFormatter option should be a non async function. Instead got '%s'.",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:He("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ","ajv.customOptions option should be an object, instead got '%s'",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:He("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR","ajv.plugins option should be an array, instead got '%s'",500,TypeError),FST_ERR_VERSION_CONSTRAINT_NOT_STR:He("FST_ERR_VERSION_CONSTRAINT_NOT_STR","Version constraint should be a string.",500,TypeError),FST_ERR_VALIDATION:He("FST_ERR_VALIDATION","%s",400),FST_ERR_LISTEN_OPTIONS_INVALID:He("FST_ERR_LISTEN_OPTIONS_INVALID","Invalid listen options: '%s'",500,TypeError),FST_ERR_CTP_ALREADY_PRESENT:He("FST_ERR_CTP_ALREADY_PRESENT","Content type parser '%s' already present."),FST_ERR_CTP_INVALID_TYPE:He("FST_ERR_CTP_INVALID_TYPE","The content type should be a string or a RegExp",500,TypeError),FST_ERR_CTP_EMPTY_TYPE:He("FST_ERR_CTP_EMPTY_TYPE","The content type cannot be an empty string",500,TypeError),FST_ERR_CTP_INVALID_HANDLER:He("FST_ERR_CTP_INVALID_HANDLER","The content type handler should be a function",500,TypeError),FST_ERR_CTP_INVALID_PARSE_TYPE:He("FST_ERR_CTP_INVALID_PARSE_TYPE","The body parser can only parse your data as 'string' or 'buffer', you asked '%s' which is not supported.",500,TypeError),FST_ERR_CTP_BODY_TOO_LARGE:He("FST_ERR_CTP_BODY_TOO_LARGE","Request body is too large",413,RangeError),FST_ERR_CTP_INVALID_MEDIA_TYPE:He("FST_ERR_CTP_INVALID_MEDIA_TYPE","Unsupported Media Type: %s",415),FST_ERR_CTP_INVALID_CONTENT_LENGTH:He("FST_ERR_CTP_INVALID_CONTENT_LENGTH","Request body size did not match Content-Length",400,RangeError),FST_ERR_CTP_EMPTY_JSON_BODY:He("FST_ERR_CTP_EMPTY_JSON_BODY","Body cannot be empty when content-type is set to 'application/json'",400),FST_ERR_CTP_INSTANCE_ALREADY_STARTED:He("FST_ERR_CTP_INSTANCE_ALREADY_STARTED",'Cannot call "%s" when fastify instance is already started!',400),FST_ERR_DEC_ALREADY_PRESENT:He("FST_ERR_DEC_ALREADY_PRESENT","The decorator '%s' has already been added!"),FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:He("FST_ERR_DEC_DEPENDENCY_INVALID_TYPE","The dependencies of decorator '%s' must be of type Array.",500,TypeError),FST_ERR_DEC_MISSING_DEPENDENCY:He("FST_ERR_DEC_MISSING_DEPENDENCY","The decorator is missing dependency '%s'."),FST_ERR_DEC_AFTER_START:He("FST_ERR_DEC_AFTER_START","The decorator '%s' has been added after start!"),FST_ERR_HOOK_INVALID_TYPE:He("FST_ERR_HOOK_INVALID_TYPE","The hook name must be a string",500,TypeError),FST_ERR_HOOK_INVALID_HANDLER:He("FST_ERR_HOOK_INVALID_HANDLER","%s hook should be a function, instead got %s",500,TypeError),FST_ERR_HOOK_INVALID_ASYNC_HANDLER:He("FST_ERR_HOOK_INVALID_ASYNC_HANDLER","Async function has too many arguments. Async hooks should not use the 'done' argument.",500,TypeError),FST_ERR_HOOK_NOT_SUPPORTED:He("FST_ERR_HOOK_NOT_SUPPORTED","%s hook not supported!",500,TypeError),FST_ERR_MISSING_MIDDLEWARE:He("FST_ERR_MISSING_MIDDLEWARE","You must register a plugin for handling middlewares, visit fastify.dev/docs/latest/Reference/Middleware/ for more info.",500),FST_ERR_HOOK_TIMEOUT:He("FST_ERR_HOOK_TIMEOUT","A callback for '%s' hook timed out. You may have forgotten to call 'done' function or to resolve a Promise"),FST_ERR_LOG_INVALID_DESTINATION:He("FST_ERR_LOG_INVALID_DESTINATION","Cannot specify both logger.stream and logger.file options"),FST_ERR_LOG_INVALID_LOGGER:He("FST_ERR_LOG_INVALID_LOGGER","Invalid logger object provided. The logger instance should have these functions(s): '%s'.",500,TypeError),FST_ERR_REP_INVALID_PAYLOAD_TYPE:He("FST_ERR_REP_INVALID_PAYLOAD_TYPE","Attempted to send payload of invalid type '%s'. Expected a string or Buffer.",500,TypeError),FST_ERR_REP_RESPONSE_BODY_CONSUMED:He("FST_ERR_REP_RESPONSE_BODY_CONSUMED","Response.body is already consumed."),FST_ERR_REP_ALREADY_SENT:He("FST_ERR_REP_ALREADY_SENT",'Reply was already sent, did you forget to "return reply" in "%s" (%s)?'),FST_ERR_REP_SENT_VALUE:He("FST_ERR_REP_SENT_VALUE","The only possible value for reply.sent is true.",500,TypeError),FST_ERR_SEND_INSIDE_ONERR:He("FST_ERR_SEND_INSIDE_ONERR","You cannot use `send` inside the `onError` hook"),FST_ERR_SEND_UNDEFINED_ERR:He("FST_ERR_SEND_UNDEFINED_ERR","Undefined error has occurred"),FST_ERR_BAD_STATUS_CODE:He("FST_ERR_BAD_STATUS_CODE","Called reply with an invalid status code: %s"),FST_ERR_BAD_TRAILER_NAME:He("FST_ERR_BAD_TRAILER_NAME","Called reply.trailer with an invalid header name: %s"),FST_ERR_BAD_TRAILER_VALUE:He("FST_ERR_BAD_TRAILER_VALUE","Called reply.trailer('%s', fn) with an invalid type: %s. Expected a function."),FST_ERR_FAILED_ERROR_SERIALIZATION:He("FST_ERR_FAILED_ERROR_SERIALIZATION","Failed to serialize an error. Error: %s. Original error: %s"),FST_ERR_MISSING_SERIALIZATION_FN:He("FST_ERR_MISSING_SERIALIZATION_FN",'Missing serialization function. Key "%s"'),FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:He("FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN",'Missing serialization function. Key "%s:%s"'),FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:He("FST_ERR_REQ_INVALID_VALIDATION_INVOCATION",'Invalid validation invocation. Missing validation function for HTTP part "%s" nor schema provided.'),FST_ERR_SCH_MISSING_ID:He("FST_ERR_SCH_MISSING_ID","Missing schema $id property"),FST_ERR_SCH_ALREADY_PRESENT:He("FST_ERR_SCH_ALREADY_PRESENT","Schema with id '%s' already declared!"),FST_ERR_SCH_CONTENT_MISSING_SCHEMA:He("FST_ERR_SCH_CONTENT_MISSING_SCHEMA","Schema is missing for the content type '%s'"),FST_ERR_SCH_DUPLICATE:He("FST_ERR_SCH_DUPLICATE","Schema with '%s' already present!"),FST_ERR_SCH_VALIDATION_BUILD:He("FST_ERR_SCH_VALIDATION_BUILD","Failed building the validation schema for %s: %s, due to error %s"),FST_ERR_SCH_SERIALIZATION_BUILD:He("FST_ERR_SCH_SERIALIZATION_BUILD","Failed building the serialization schema for %s: %s, due to error %s"),FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:He("FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX",'response schemas should be nested under a valid status code, e.g { 2xx: { type: "object" } }'),FST_ERR_HTTP2_INVALID_VERSION:He("FST_ERR_HTTP2_INVALID_VERSION","HTTP2 is available only from node >= 8.8.1"),FST_ERR_INIT_OPTS_INVALID:He("FST_ERR_INIT_OPTS_INVALID","Invalid initialization options: '%s'"),FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:He("FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE","Cannot set forceCloseConnections to 'idle' as your HTTP server does not support closeIdleConnections method"),FST_ERR_DUPLICATED_ROUTE:He("FST_ERR_DUPLICATED_ROUTE","Method '%s' already declared for route '%s'"),FST_ERR_BAD_URL:He("FST_ERR_BAD_URL","'%s' is not a valid url component",400,URIError),FST_ERR_ASYNC_CONSTRAINT:He("FST_ERR_ASYNC_CONSTRAINT","Unexpected error from async constraint",500),FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:He("FST_ERR_DEFAULT_ROUTE_INVALID_TYPE","The defaultRoute type should be a function",500,TypeError),FST_ERR_INVALID_URL:He("FST_ERR_INVALID_URL","URL must be a string. Received '%s'",400,TypeError),FST_ERR_ROUTE_OPTIONS_NOT_OBJ:He("FST_ERR_ROUTE_OPTIONS_NOT_OBJ",'Options for "%s:%s" route must be an object',500,TypeError),FST_ERR_ROUTE_DUPLICATED_HANDLER:He("FST_ERR_ROUTE_DUPLICATED_HANDLER",'Duplicate handler for "%s:%s" route is not allowed!',500),FST_ERR_ROUTE_HANDLER_NOT_FN:He("FST_ERR_ROUTE_HANDLER_NOT_FN","Error Handler for %s:%s route, if defined, must be a function",500,TypeError),FST_ERR_ROUTE_MISSING_HANDLER:He("FST_ERR_ROUTE_MISSING_HANDLER",'Missing handler function for "%s:%s" route.',500),FST_ERR_ROUTE_METHOD_INVALID:He("FST_ERR_ROUTE_METHOD_INVALID","Provided method is invalid!",500,TypeError),FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:He("FST_ERR_ROUTE_METHOD_NOT_SUPPORTED","%s method is not supported.",500),FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:He("FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED","Body validation schema for %s:%s route is not supported!",500),FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:He("FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT","'bodyLimit' option must be an integer > 0. Got '%s'",500,TypeError),FST_ERR_ROUTE_REWRITE_NOT_STR:He("FST_ERR_ROUTE_REWRITE_NOT_STR",'Rewrite url for "%s" needs to be of type "string" but received "%s"',500,TypeError),FST_ERR_REOPENED_CLOSE_SERVER:He("FST_ERR_REOPENED_CLOSE_SERVER","Fastify has already been closed and cannot be reopened"),FST_ERR_REOPENED_SERVER:He("FST_ERR_REOPENED_SERVER","Fastify is already listening"),FST_ERR_INSTANCE_ALREADY_LISTENING:He("FST_ERR_INSTANCE_ALREADY_LISTENING","Fastify instance is already listening. %s"),FST_ERR_PLUGIN_VERSION_MISMATCH:He("FST_ERR_PLUGIN_VERSION_MISMATCH","fastify-plugin: %s - expected '%s' fastify version, '%s' is installed"),FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:He("FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE","The decorator '%s'%s is not present in %s"),FST_ERR_PLUGIN_CALLBACK_NOT_FN:He("FST_ERR_PLUGIN_CALLBACK_NOT_FN","fastify-plugin: %s",500,TypeError),FST_ERR_PLUGIN_NOT_VALID:He("FST_ERR_PLUGIN_NOT_VALID","fastify-plugin: %s"),FST_ERR_ROOT_PLG_BOOTED:He("FST_ERR_ROOT_PLG_BOOTED","fastify-plugin: %s"),FST_ERR_PARENT_PLUGIN_BOOTED:He("FST_ERR_PARENT_PLUGIN_BOOTED","fastify-plugin: %s"),FST_ERR_PLUGIN_TIMEOUT:He("FST_ERR_PLUGIN_TIMEOUT","fastify-plugin: %s")};function iht(t,e){return e.cause=t,e}rR.exports=LA;rR.exports.appendStackTrace=iht;rR.exports.AVVIO_ERRORS_MAP={AVV_ERR_CALLBACK_NOT_FN:LA.FST_ERR_PLUGIN_CALLBACK_NOT_FN,AVV_ERR_PLUGIN_NOT_VALID:LA.FST_ERR_PLUGIN_NOT_VALID,AVV_ERR_ROOT_PLG_BOOTED:LA.FST_ERR_ROOT_PLG_BOOTED,AVV_ERR_PARENT_PLG_LOADED:LA.FST_ERR_PARENT_PLUGIN_BOOTED,AVV_ERR_READY_TIMEOUT:LA.FST_ERR_PLUGIN_TIMEOUT}});var cp=E((wOr,Ife)=>{"use strict";var aht=["onRoute","onRegister","onReady","onListen","preClose","onClose"],bfe=["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError","onRequestAbort"],oht=bfe.concat(aht),{FST_ERR_HOOK_INVALID_TYPE:cht,FST_ERR_HOOK_INVALID_HANDLER:uht,FST_ERR_SEND_UNDEFINED_ERR:nR,FST_ERR_HOOK_TIMEOUT:lht,FST_ERR_HOOK_NOT_SUPPORTED:dht,AVVIO_ERRORS_MAP:Afe,appendStackTrace:yfe}=Ci(),{kChildren:e1,kHooks:Efe,kRequestPayloadStream:xfe}=Gs();function t1(){this.onRequest=[],this.preParsing=[],this.preValidation=[],this.preSerialization=[],this.preHandler=[],this.onResponse=[],this.onSend=[],this.onError=[],this.onRoute=[],this.onRegister=[],this.onReady=[],this.onListen=[],this.onTimeout=[],this.onRequestAbort=[],this.preClose=[]}t1.prototype=Object.create(null);t1.prototype.validate=function(t,e){if(typeof t!="string")throw new cht;if(Array.isArray(this[t])===!1)throw new dht(t);if(typeof e!="function")throw new uht(t,Object.prototype.toString.call(e))};t1.prototype.add=function(t,e){this.validate(t,e),this[t].push(e)};function fht(t){let e=new t1;return e.onRequest=t.onRequest.slice(),e.preParsing=t.preParsing.slice(),e.preValidation=t.preValidation.slice(),e.preSerialization=t.preSerialization.slice(),e.preHandler=t.preHandler.slice(),e.onSend=t.onSend.slice(),e.onResponse=t.onResponse.slice(),e.onError=t.onError.slice(),e.onRoute=t.onRoute.slice(),e.onRegister=t.onRegister.slice(),e.onTimeout=t.onTimeout.slice(),e.onRequestAbort=t.onRequestAbort.slice(),e.onReady=[],e.onListen=[],e.preClose=[],e}function _fe(t,e,r,n){let s=r[Efe][t],i=0,a=0;c();function o(l){if(l){l.code==="AVV_ERR_READY_TIMEOUT"?l=yfe(l,new lht(t)):l=Afe[l.code]!=null?yfe(l,new Afe[l.code](l.message)):l,n(l);return}n()}function c(l){if(l){o(l);return}if(i===s.length&&a===r[e1].length){i===0&&a===0?o():e(function(f,p){o(f),p(f)});return}if(i===s.length&&a<r[e1].length){let d=r[e1][a++];_fe(t,e,d,c);return}e(u(s[i++],r)),c()}function u(l,d){return function(f,p){if(f){p(f);return}if(l.length===1){try{l.call(d,p)}catch(m){p(m)}return}try{let m=l.call(d);if(m&&typeof m.then=="function"){m.then(p,p);return}}catch(m){f=m}p(f)}}}function Sfe(t){let e=t[Efe].onListen,r=e.length,n=0,s=0;i();function i(o){if(o&&t.log.error(o),n===r){for(;s<t[e1].length;){let c=t[e1][s++];Sfe(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 MA(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 nR),i(l,n,s)}o()}}function pht(t,e,r,n){return t(e,r,n)}var mht=MA(pht),hht=MA(r1),ght=MA(r1),Aht=MA(r1),yht=MA(r1);function vfe(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 nR),s(u,e,r,n)}a()}var xht=vfe;function bht(t,e,r,n){let s=0;function i(c,u){if(r.sent)return;if(u!==void 0&&(e[xfe]=u),c||s===t.length){n(c,e,r);return}let l;try{l=t[s++](e,r,e[xfe],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 nR),n(c,e,r)}i()}function Eht(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 nR),r(o,e)}s()}function r1(t,e,r,n){if(r.sent!==!0)return t(e,r,n)}Ife.exports={Hooks:t1,buildHooks:fht,hookRunnerGenerator:MA,preParsingHookRunner:bht,onResponseHookRunner:mht,onSendHookRunner:vfe,preSerializationHookRunner:xht,onRequestAbortHookRunner:Eht,hookIterator:r1,hookRunnerApplication:_fe,onListenHookRunner:Sfe,preHandlerHookRunner:ght,preValidationHookRunner:hht,onRequestHookRunner:yht,onTimeoutHookRunner:Aht,lifecycleHooks:bfe,supportedHooks:oht}});var Bfe=E((ROr,V6)=>{"use strict";var _ht=require("node:http"),Sht=require("node:https"),vht=require("node:dns"),{FSTDEP011:Cfe}=od(),{kState:Ti,kOptions:Iht,kServerBindings:Cht}=Gs(),{onListenHookRunner:sR}=cp(),{FST_ERR_HTTP2_INVALID_VERSION:Tht,FST_ERR_REOPENED_CLOSE_SERVER:Rfe,FST_ERR_REOPENED_SERVER:Nfe,FST_ERR_LISTEN_OPTIONS_INVALID:wht}=Ci();V6.exports.createServer=Rht;V6.exports.compileValidateHTTPVersion=Oht;function Ofe(t){return`Server listening at ${t}`}function Rht(t,e){let r=kfe(t,e);function n(s,...i){let a=i.slice(-1).pop(),o=Object.prototype.toString.call(arguments[0]);if(arguments.length===0)s=K6([]);else if(arguments.length>0&&o!=="[object Object]"&&o!=="[object Function]")Cfe(),s=K6(Array.from(arguments)),a=s.cb;else if(i.length>1){Cfe();let u=s.path?[s.path]:[s.port??0,s.host??"localhost"];Object.assign(s,K6([...u,...i]))}else s.cb=a;if(s.signal){if(typeof s.signal.on!="function"&&typeof s.signal.addEventListener!="function")throw new wht("Invalid options.signal");if(s.signal.aborted)this.close();else{let u=()=>{this.close()};s.signal.addEventListener("abort",u,{once:!0})}}let c;if(s.path==null?c=s.host??"localhost":c=s.host,Object.prototype.hasOwnProperty.call(s,"host")===!1&&(s.host=c),c==="localhost"?s.cb=(u,l)=>{if(u){a(u,l);return}Tfe.call(this,r,e,t,s,()=>{this[Ti].listening=!0,a(null,l),sR(this)})}:s.cb=(u,l)=>{if(u){a(u,l);return}this[Ti].listening=!0,a(null,l),sR(this)},a===void 0)return Nht.call(this,r,s).then(l=>new Promise((d,f)=>{c==="localhost"?Tfe.call(this,r,e,t,s,()=>{this[Ti].listening=!0,d(l),sR(this)}):(d(l),sR(this))}));this.ready(Pfe.call(this,r,s))}return{server:r,listen:n}}function Tfe(t,e,r,n,s){this[Ti].listening=!1,vht.lookup(n.host,{all:!0},(i,a)=>{if(i){s();return}let o=t.listening&&r.serverFactory,c=0,u=0;if(!o){let d=t.address();for(let f of a)if(f.address!==d.address){c++;let p=Object.assign({},n,{host:f.address,port:d.port,cb:A=>{u++,A||this[Cht].push(m),u===c&&s()}}),m=kfe(r,e),h=()=>{m.close(()=>{}),r.forceCloseConnections==="idle"?m.closeIdleConnections():typeof m.closeAllConnections=="function"&&r.forceCloseConnections&&m.closeAllConnections()};m.on("upgrade",t.emit.bind(t,"upgrade")),t.on("unref",h),t.on("close",h),t.on("error",h),this[Ti].listening=!1,Pfe.call(this,m,p)()}}if(c===0){s();return}let l=t.unref;t.unref=function(){l.call(t),t.emit("unref")}})}function Pfe(t,e){let r=n=>{if(t.removeListener("error",r),n)this[Ti].listening=!1,e.cb(n,null);else{let s=Dfe.call(this,t,e.listenTextResolver||Ofe);e.cb(null,s)}};return n=>{if(n!=null)return e.cb(n);if(this[Ti].listening&&this[Ti].closing)return e.cb(new Rfe,null);if(this[Ti].listening)return e.cb(new Nfe,null);t.once("error",r),this[Ti].closing||(t.listen(e,r),this[Ti].listening=!0)}}function Nht(t,e){return this[Ti].listening&&this[Ti].closing?Promise.reject(new Rfe):this[Ti].listening?Promise.reject(new Nfe):this.ready().then(()=>{let r,n=new Promise((i,a)=>{r=o=>{this[Ti].listening=!1,a(o)},t.once("error",r)}),s=new Promise((i,a)=>{t.listen(e,()=>{t.removeListener("error",r),i(Dfe.call(this,t,e.listenTextResolver||Ofe))}),this[Ti].listening=!0});return Promise.race([n,s])})}function Oht(t){let e=!1,r=new Map;return t.serverFactory&&(e=!0),t.http2?(r.set("2.0",!0),t.https&&t.https.allowHTTP1===!0&&(r.set("1.1",!0),r.set("1.0",!0))):(r.set("1.1",!0),r.set("1.0",!0)),function(s){return e||r.has(s)}}function kfe(t,e){let r=null,n=t.https===!0?{}:t.https;return t.serverFactory?r=t.serverFactory(e,t):t.http2?(typeof n=="object"?r=wfe().createSecureServer(n,e):r=wfe().createServer(e),r.on("session",kht(t.http2SessionTimeout))):(n?r=Sht.createServer(n,e):r=_ht.createServer(t.http,e),r.keepAliveTimeout=t.keepAliveTimeout,r.requestTimeout=t.requestTimeout,t.maxRequestsPerSocket>0&&(r.maxRequestsPerSocket=t.maxRequestsPerSocket)),t.serverFactory||r.setTimeout(t.connectionTimeout),r}function K6(t){if(t.length===0)return{port:0,host:"localhost"};let r={cb:typeof t[t.length-1]=="function"?t.pop():void 0},n=t[0],s=t.length,i=t[s-1];return typeof n=="string"&&isNaN(n)?(r.path=n,r.backlog=s>1?i:void 0):(r.port=s>=1&&Number.isInteger(n)?n:Pht(n),r.host=s>=2&&t[1]?t[1]:"localhost",r.backlog=s>=3?t[2]:void 0),r}function Pht(t){let e=Number(t);return e>=0&&!Number.isNaN(e)&&Number.isInteger(e)?e:0}function Dfe(t,e){let r=t.address(),n=typeof r=="string";n||(r.address.indexOf(":")===-1?r=r.address+":"+r.port:r="["+r.address+"]:"+r.port),r=(n?"":"http"+(this[Iht].https?"s":"")+"://")+r;let s=e(r);return this.log.info(s),r}function wfe(){try{return require("node:http2")}catch{throw new Tht}}function kht(t){return function(e){e.setTimeout(t,Dht)}}function Dht(){this.close()}});var X6=E((NOr,Mfe)=>{"use strict";var{kSchemaHeaders:oR,kSchemaParams:z6,kSchemaQuerystring:Y6,kSchemaBody:J6,kSchemaResponse:Lfe}=Gs(),Bht=/^[1-5]{1}[0-9]{2}$|^[1-5]xx$|^default$/,{FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:Lht}=Ci(),{FSTWRN001:iR}=od();function Mht(t,e){if(!t.schema||!t.schema.response)return;let{method:r,url:n}=t.config||{};t[Lfe]=Object.keys(t.schema.response).reduce(function(s,i){let a=t.schema.response[i];if(i=i.toLowerCase(),!Bht.exec(i))throw new Lht;if(a.content){let o={};for(let c of Object.keys(a.content)){let u=a.content[c].schema;o[c]=e({schema:u,url:n,method:r,httpStatus:i,contentType:c})}s[i]=o}else s[i]=e({schema:a,url:n,method:r,httpStatus:i});return s},{})}function Wht(t,e,r){let{schema:n}=t;if(!n)return;let{method:s,url:i}=t.config||{},a=n.headers;if(a&&(r||Object.getPrototypeOf(a)!==Object.prototype))t[oR]=e({schema:a,method:s,url:i,httpPart:"headers"});else if(a){let o={};Object.keys(a).forEach(c=>{o[c]=a[c]}),o.required instanceof Array&&(o.required=o.required.map(c=>c.toLowerCase())),a.properties&&(o.properties={},Object.keys(a.properties).forEach(c=>{o.properties[c.toLowerCase()]=a.properties[c]})),t[oR]=e({schema:o,method:s,url:i,httpPart:"headers"})}else Object.prototype.hasOwnProperty.call(n,"headers")&&iR("headers",s,i);n.body?t[J6]=e({schema:n.body,method:s,url:i,httpPart:"body"}):Object.prototype.hasOwnProperty.call(n,"body")&&iR("body",s,i),n.querystring?t[Y6]=e({schema:n.querystring,method:s,url:i,httpPart:"querystring"}):Object.prototype.hasOwnProperty.call(n,"querystring")&&iR("querystring",s,i),n.params?t[z6]=e({schema:n.params,method:s,url:i,httpPart:"params"}):Object.prototype.hasOwnProperty.call(n,"params")&&iR("params",s,i)}function aR(t,e,r){let n=e[r]===void 0,s=t&&t(n?null:e[r]);if(s?.then)return s.then(a=>i(a)).catch(a=>a);return i(s);function i(a){return a===!1?t.errors:a&&a.error?a.error:(a&&a.value&&(e[r]=a.value),!1)}}function cR(t,e,r){let n=r===void 0;if(n||!r.skipParams){let i=aR(t[z6],e,"params");if(i)return typeof i.then!="function"?up(i,"params",t.schemaErrorFormatter):$ht(i,t,e)}if(n||!r.skipBody){let i=aR(t[J6],e,"body");if(i)return typeof i.then!="function"?up(i,"body",t.schemaErrorFormatter):Fht(i,t,e)}if(n||!r.skipQuery){let i=aR(t[Y6],e,"query");if(i)return typeof i.then!="function"?up(i,"querystring",t.schemaErrorFormatter):Uht(i,t,e)}let s=aR(t[oR],e,"headers");return s?typeof s.then!="function"?up(s,"headers",t.schemaErrorFormatter):qht(s,t,e):!1}function $ht(t,e,r){return t.then(n=>n?up(n,"params",e.schemaErrorFormatter):cR(e,r,{skipParams:!0}))}function Fht(t,e,r){return t.then(n=>n?up(n,"body",e.schemaErrorFormatter):cR(e,r,{skipParams:!0,skipBody:!0}))}function Uht(t,e,r){return t.then(n=>n?up(n,"querystring",e.schemaErrorFormatter):cR(e,r,{skipParams:!0,skipBody:!0,skipQuery:!0}))}function qht(t,e,r){return t.then(n=>n?up(n,"headers",e.schemaErrorFormatter):!1)}function up(t,e,r){if(t instanceof Error)return t.statusCode=t.statusCode||400,t.code=t.code||"FST_ERR_VALIDATION",t.validationContext=t.validationContext||e,t;let n=r(t,e);return n.statusCode=n.statusCode||400,n.code=n.code||"FST_ERR_VALIDATION",n.validation=t,n.validationContext=e,n}Mfe.exports={symbols:{bodySchema:J6,querystringSchema:Y6,responseSchema:Lfe,paramsSchema:z6,headersSchema:oR},compileSchemasForValidation:Wht,compileSchemasForSerialization:Mht,validate:cR}});var Z6=E((OOr,$fe)=>{"use strict";var{kReplyIsError:Wfe,kReplyHijacked:jht}=Gs();function Hht(t,e){t.then(function(r){if(e[jht]!==!0&&(r!==void 0||e.sent===!1&&e.raw.headersSent===!1&&e.request.raw.aborted===!1))try{e.send(r)}catch(n){e[Wfe]=!0,e.send(n)}},function(r){if(e.sent===!0){e.log.error({err:r},"Promise errored, but reply.sent = true was set");return}e[Wfe]=!0;try{e.send(r)}catch(n){e.send(n)}})}$fe.exports=Hht});var n5=E((POr,r5)=>{"use strict";var{validate:Qht}=X6(),{preValidationHookRunner:Ght,preHandlerHookRunner:Kht}=cp(),Vht=Z6(),{kReplyIsError:uR,kRouteContext:dp}=Gs();function zht(t,e,r){if(r.sent===!0)return;if(t!=null){r[uR]=!0,r.send(t);return}let n=e.raw.method,s=e.headers,i=e[dp];if(n==="GET"||n==="HEAD"){lp(e,r);return}let a=s["content-type"];if(n==="POST"||n==="PUT"||n==="PATCH"||n==="TRACE"||n==="SEARCH"){a===void 0?s["transfer-encoding"]===void 0&&(s["content-length"]==="0"||s["content-length"]===void 0)?lp(e,r):i.contentTypeParser.run("",lp,e,r):i.contentTypeParser.run(a,lp,e,r);return}if(n==="OPTIONS"||n==="DELETE"){a!==void 0&&(s["transfer-encoding"]!==void 0||s["content-length"]!==void 0)?i.contentTypeParser.run(a,lp,e,r):lp(e,r);return}lp(e,r)}function lp(t,e){try{t[dp].preValidation!==null?Ght(t[dp].preValidation,t,e,e5):e5(null,t,e)}catch(r){e5(r,t,e)}}function e5(t,e,r){if(r.sent===!0)return;if(t!=null){r[uR]=!0,r.send(t);return}let n=Qht(r[dp],e);if(n&&typeof n.then=="function"||!1){let i=Ffe.bind(null,e,r);n.then(i,i)}else Ffe(e,r,n)}function Ffe(t,e,r){if(r){if(e[dp].attachValidation===!1){e.send(r);return}e.request.validationError=r}t[dp].preHandler!==null?Kht(t[dp].preHandler,t,e,t5):t5(null,t,e)}function t5(t,e,r){if(r.sent)return;if(t!=null){r[uR]=!0,r.send(t);return}let n;try{n=e[dp].handler(e,r)}catch(s){r[uR]=!0,r.send(s);return}n!==void 0&&(n!==null&&typeof n.then=="function"?Vht(n,r):r.send(n))}r5.exports=zht;r5.exports[Symbol.for("internals")]={handler:lp,preHandlerCallback:t5}});var qfe=E((kOr,Ufe)=>{"use strict";function WA(){}var Yht={fatal:WA,error:WA,warn:WA,info:WA,debug:WA,trace:WA};Object.defineProperty(Ufe,"exports",{get(){return Object.create(Yht)}})});var i5=E((DOr,Qfe)=>{"use strict";var n1=t=>t&&typeof t.message=="string",s5=t=>{if(!t)return;let e=t.cause;if(typeof e=="function"){let r=t.cause();return n1(r)?r:void 0}else return n1(e)?e:void 0},jfe=(t,e)=>{if(!n1(t))return"";let r=t.stack||"";if(e.has(t))return r+`
causes have become circular...`;let n=s5(t);return n?(e.add(t),r+`
caused by: `+jfe(n,e)):r},Jht=t=>jfe(t,new Set),Hfe=(t,e,r)=>{if(!n1(t))return"";let n=r?"":t.message||"";if(e.has(t))return n+": ...";let s=s5(t);if(s){e.add(t);let i=typeof t.cause=="function";return n+(i?"":": ")+Hfe(s,e,i)}else return n},Xht=t=>Hfe(t,new Set);Qfe.exports={isErrorLike:n1,getErrorCause:s5,stackWithCauses:Jht,messageWithCauses:Xht}});var a5=E((BOr,Kfe)=>{"use strict";var Zht=Symbol("circular-ref-tag"),lR=Symbol("pino-raw-err-ref"),Gfe=Object.create({},{type:{enumerable:!0,writable:!0,value:void 0},message:{enumerable:!0,writable:!0,value:void 0},stack:{enumerable:!0,writable:!0,value:void 0},aggregateErrors:{enumerable:!0,writable:!0,value:void 0},raw:{enumerable:!1,get:function(){return this[lR]},set:function(t){this[lR]=t}}});Object.defineProperty(Gfe,lR,{writable:!0,value:{}});Kfe.exports={pinoErrProto:Gfe,pinoErrorSymbols:{seen:Zht,rawSymbol:lR}}});var Yfe=E((LOr,zfe)=>{"use strict";zfe.exports=c5;var{messageWithCauses:egt,stackWithCauses:tgt,isErrorLike:Vfe}=i5(),{pinoErrProto:rgt,pinoErrorSymbols:ngt}=a5(),{seen:o5}=ngt,{toString:sgt}=Object.prototype;function c5(t){if(!Vfe(t))return t;t[o5]=void 0;let e=Object.create(rgt);e.type=sgt.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=egt(t),e.stack=tgt(t),Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>c5(r)));for(let r in t)if(e[r]===void 0){let n=t[r];Vfe(n)?r!=="cause"&&!Object.prototype.hasOwnProperty.call(n,o5)&&(e[r]=c5(n)):e[r]=n}return delete t[o5],e.raw=t,e}});var Xfe=E((MOr,Jfe)=>{"use strict";Jfe.exports=fR;var{isErrorLike:u5}=i5(),{pinoErrProto:igt,pinoErrorSymbols:agt}=a5(),{seen:dR}=agt,{toString:ogt}=Object.prototype;function fR(t){if(!u5(t))return t;t[dR]=void 0;let e=Object.create(igt);e.type=ogt.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=t.message,e.stack=t.stack,Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>fR(r))),u5(t.cause)&&!Object.prototype.hasOwnProperty.call(t.cause,dR)&&(e.cause=fR(t.cause));for(let r in t)if(e[r]===void 0){let n=t[r];u5(n)?Object.prototype.hasOwnProperty.call(n,dR)||(e[r]=fR(n)):e[r]=n}return delete t[dR],e.raw=t,e}});var rpe=E((WOr,tpe)=>{"use strict";tpe.exports={mapHttpRequest:cgt,reqSerializer:epe};var l5=Symbol("pino-raw-req-ref"),Zfe=Object.create({},{id:{enumerable:!0,writable:!0,value:""},method:{enumerable:!0,writable:!0,value:""},url:{enumerable:!0,writable:!0,value:""},query:{enumerable:!0,writable:!0,value:""},params:{enumerable:!0,writable:!0,value:""},headers:{enumerable:!0,writable:!0,value:{}},remoteAddress:{enumerable:!0,writable:!0,value:""},remotePort:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[l5]},set:function(t){this[l5]=t}}});Object.defineProperty(Zfe,l5,{writable:!0,value:{}});function epe(t){let e=t.info||t.socket,r=Object.create(Zfe);if(r.id=typeof t.id=="function"?t.id():t.id||(t.info?t.info.id:void 0),r.method=t.method,t.originalUrl)r.url=t.originalUrl;else{let n=t.path;r.url=typeof n=="string"?n:t.url?t.url.path||t.url:void 0}return t.query&&(r.query=t.query),t.params&&(r.params=t.params),r.headers=t.headers,r.remoteAddress=e&&e.remoteAddress,r.remotePort=e&&e.remotePort,r.raw=t.raw||t,r}function cgt(t){return{req:epe(t)}}});var ape=E(($Or,ipe)=>{"use strict";ipe.exports={mapHttpResponse:ugt,resSerializer:spe};var d5=Symbol("pino-raw-res-ref"),npe=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[d5]},set:function(t){this[d5]=t}}});Object.defineProperty(npe,d5,{writable:!0,value:{}});function spe(t){let e=Object.create(npe);return e.statusCode=t.headersSent?t.statusCode:null,e.headers=t.getHeaders?t.getHeaders():t._headers,e.raw=t,e}function ugt(t){return{res:spe(t)}}});var p5=E((FOr,ope)=>{"use strict";var f5=Yfe(),lgt=Xfe(),pR=rpe(),mR=ape();ope.exports={err:f5,errWithCause:lgt,mapHttpRequest:pR.mapHttpRequest,mapHttpResponse:mR.mapHttpResponse,req:pR.reqSerializer,res:mR.resSerializer,wrapErrorSerializer:function(e){return e===f5?e:function(n){return e(f5(n))}},wrapRequestSerializer:function(e){return e===pR.reqSerializer?e:function(n){return e(pR.reqSerializer(n))}},wrapResponseSerializer:function(e){return e===mR.resSerializer?e:function(n){return e(mR.resSerializer(n))}}}});var m5=E((UOr,cpe)=>{"use strict";function dgt(t,e){return e}cpe.exports=function(){let e=Error.prepareStackTrace;Error.prepareStackTrace=dgt;let r=new Error().stack;if(Error.prepareStackTrace=e,!Array.isArray(r))return;let n=r.slice(2),s=[];for(let i of n)i&&s.push(i.getFileName());return s}});var lpe=E((qOr,upe)=>{"use strict";upe.exports=fgt;function fgt(t={}){let{ERR_PATHS_MUST_BE_STRINGS:e=()=>"fast-redact - Paths must be (non-empty) strings",ERR_INVALID_PATH:r=n=>`fast-redact \u2013 Invalid path (${n})`}=t;return function({paths:s}){s.forEach(i=>{if(typeof i!="string")throw Error(e());try{if(/〇/.test(i))throw Error();let a=(i[0]==="["?"":".")+i.replace(/^\*/,"\u3007").replace(/\.\*/g,".\u3007").replace(/\[\*\]/g,"[\u3007]");if(/\n|\r|;/.test(a)||/\/\*/.test(a))throw Error();Function(`
'use strict'
const o = new Proxy({}, { get: () => o, set: () => { throw Error() } });
const \u3007 = null;
o${a}
if ([o${a}].length !== 1) throw Error()`)()}catch{throw Error(r(i))}})}}});var hR=E((jOr,dpe)=>{"use strict";dpe.exports=/[^.[\]]+|\[((?:.)*?)\]/g});var ppe=E((HOr,fpe)=>{"use strict";var pgt=hR();fpe.exports=mgt;function mgt({paths:t}){let e=[];var r=0;let n=t.reduce(function(s,i,a){var o=i.match(pgt).map(l=>l.replace(/'|"|`/g,""));let c=i[0]==="[";o=o.map(l=>l[0]==="["?l.substr(1,l.length-2):l);let u=o.indexOf("*");if(u>-1){let l=o.slice(0,u),d=l.join("."),f=o.slice(u+1,o.length),p=f.length>0;r++,e.push({before:l,beforeStr:d,after:f,nested:p})}else s[i]={path:o,val:void 0,precensored:!1,circle:"",escPath:JSON.stringify(i),leadingBracket:c};return s},{});return{wildcards:e,wcLen:r,secret:n}}});var hpe=E((QOr,mpe)=>{"use strict";var hgt=hR();mpe.exports=ggt;function ggt({secret:t,serialize:e,wcLen:r,strict:n,isCensorFct:s,censorFctTakesPath:i},a){let o=Function("o",`
if (typeof o !== 'object' || o == null) {
${bgt(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]]
}
${Agt(t,s,i)}
this.compileRestore()
${ygt(r>0,s,i)}
this.secret = originalSecret
${xgt(e)}
`).bind(a);return o.state=a,e===!1&&(o.restore=c=>a.restore(c)),o}function Agt(t,e,r){return Object.keys(t).map(n=>{let{escPath:s,leadingBracket:i,path:a}=t[n],o=i?1:0,c=i?"":".",u=[];for(var l;(l=hgt.exec(n))!==null;){let[,m]=l,{index:h,input:A}=l;h>o&&u.push(A.substring(0,h-(m?0:1)))}var d=u.map(m=>`o${c}${m}`).join(" && ");d.length===0?d+=`o${c}${n} != null`:d+=` && o${c}${n} != null`;let f=`
switch (true) {
${u.reverse().map(m=>`
case o${c}${m} === censor:
secret[${s}].circle = ${JSON.stringify(m)}
break
`).join(`
`)}
}
`,p=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(${p})`:"censor"}
${f}
}
}
`}).join(`
`)}function ygt(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 xgt(t){return t===!1?"return o":`
var s = this.serialize(o)
this.restore(o)
return s
`}function bgt(t,e){return t===!0?"throw Error('fast-redact: primitives cannot be redacted')":e===!1?"return o":"return this.serialize(o)"}});var g5=E((GOr,ype)=>{"use strict";ype.exports={groupRedact:_gt,groupRestore:Egt,nestedRedact:vgt,nestedRestore:Sgt};function Egt({keys:t,values:e,target:r}){if(r==null||typeof r=="string")return;let n=t.length;for(var s=0;s<n;s++){let i=t[s];r[i]=e[s]}}function _gt(t,e,r,n,s){let i=gpe(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 Sgt(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 vgt(t,e,r,n,s,i,a){let o=gpe(e,r);if(o==null)return;let c=Object.keys(o),u=c.length;for(var l=0;l<u;l++){let d=c[l];Igt(t,o,d,r,n,s,i,a)}return t}function h5(t,e){return t!=null?"hasOwn"in Object?Object.hasOwn(t,e):Object.prototype.hasOwnProperty.call(t,e):!1}function Igt(t,e,r,n,s,i,a,o){let c=s.length,u=c-1,l=r;var d=-1,f,p,m,h=null,A=null,g,b,y=!1,x=0,v=0,I=Cgt();if(m=f=e[r],typeof f=="object"){for(;f!=null&&++d<c&&(v+=1,r=s[d],h=m,!(r!=="*"&&!A&&!(typeof f=="object"&&r in f)));)if(!(r==="*"&&(A==="*"&&(y=!0),A=r,d!==u))){if(A){let w=Object.keys(f);for(var R=0;R<w.length;R++){let N=w[R];if(b=f[N],g=r==="*",y)I=cd(I,N,v),x=d,m=Ape(b,x-1,r,n,s,i,a,o,l,f,p,m,g,N,d,u,I,t,e[l],v+1);else if(g||typeof b=="object"&&b!==null&&r in b){if(g?m=b:m=b[r],p=d!==u?m:a?o?i(m,[...n,l,...s]):i(m):i,g){let P=s1(cd(I,N,v),m,e[l]);t.push(P),f[N]=p}else if(b[r]!==p)if(p===void 0&&i!==void 0||h5(b,r)&&p===m)I=cd(I,N,v);else{I=cd(I,N,v);let P=s1(cd(I,r,v+1),m,e[l]);t.push(P),b[r]=p}}}A=null}else{if(m=f[r],I=cd(I,r,v),p=d!==u?m:a?o?i(m,[...n,l,...s]):i(m):i,!(h5(f,r)&&p===m||p===void 0&&i!==void 0)){let w=s1(I,m,e[l]);t.push(w),f[r]=p}f=f[r]}if(typeof f!="object")break}}}function gpe(t,e){for(var r=-1,n=e.length,s=t;s!=null&&++r<n;)s=s[e[r]];return s}function Ape(t,e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y){if(e===0&&(f||typeof t=="object"&&t!==null&&r in t)){if(f?d=t:d=t[r],l=m!==h?d:a?o?i(d,[...n,c,...s]):i(d):i,f){let x=s1(A,d,b);g.push(x),u[p]=l}else if(t[r]!==l){if(!(l===void 0&&i!==void 0||h5(t,r)&&l===d)){let x=s1(cd(A,r,y+1),d,b);g.push(x),t[r]=l}}}for(let x in t)typeof t[x]=="object"&&(A=cd(A,x,y),Ape(t[x],e-1,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y+1))}function Cgt(){return{parent:null,key:null,children:[],depth:0}}function cd(t,e,r){if(t.depth===r)return cd(t.parent,e,r);var n={parent:t,key:e,depth:r,children:[]};return t.children.push(n),n}function s1(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 bpe=E((KOr,xpe)=>{"use strict";var{groupRestore:Tgt,nestedRestore:wgt}=g5();xpe.exports=Rgt;function Rgt(){return function(){if(this.restore){this.restore.state.secret=this.secret;return}let{secret:e,wcLen:r}=this,n=Object.keys(e),s=Ngt(e,n),i=r>0,a=i?{secret:e,groupRestore:Tgt,nestedRestore:wgt}:{secret:e};this.restore=Function("o",Ogt(s,n,i)).bind(a),this.restore.state=a}}function Ngt(t,e){return e.map(r=>{let{circle:n,escPath:s,leadingBracket:i}=t[r],o=n?`o.${n} = secret[${s}].val`:`o${i?"":"."}${r} = secret[${s}].val`,c=`secret[${s}].val = undefined`;return`
if (secret[${s}].val !== undefined) {
try { ${o} } catch (e) {}
${c}
}
`}).join("")}function Ogt(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 _pe=E((VOr,Epe)=>{"use strict";Epe.exports=Pgt;function Pgt(t){let{secret:e,censor:r,compileRestore:n,serialize:s,groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}=t,u=[{secret:e,censor:r,compileRestore:n}];return s!==!1&&u.push({serialize:s}),c>0&&u.push({groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}),Object.assign(...u)}});var Ipe=E((zOr,vpe)=>{"use strict";var Spe=lpe(),kgt=ppe(),Dgt=hpe(),Bgt=bpe(),{groupRedact:Lgt,nestedRedact:Mgt}=g5(),Wgt=_pe(),$gt=hR(),Fgt=Spe(),A5=t=>t;A5.restore=A5;var Ugt="[REDACTED]";y5.rx=$gt;y5.validator=Spe;vpe.exports=y5;function y5(t={}){let e=Array.from(new Set(t.paths||[])),r="serialize"in t&&(t.serialize===!1||typeof t.serialize=="function")?t.serialize:JSON.stringify,n=t.remove;if(n===!0&&r!==JSON.stringify)throw Error("fast-redact \u2013 remove option may only be set when serializer is JSON.stringify");let s=n===!0?void 0:"censor"in t?t.censor:Ugt,i=typeof s=="function",a=i&&s.length>1;if(e.length===0)return r||A5;Fgt({paths:e,serialize:r,censor:s});let{wildcards:o,wcLen:c,secret:u}=kgt({paths:e,censor:s}),l=Bgt(),d="strict"in t?t.strict:!0;return Dgt({secret:u,wcLen:c,serialize:r,strict:d,isCensorFct:i,censorFctTakesPath:a},Wgt({secret:u,censor:s,compileRestore:l,serialize:r,groupRedact:Lgt,nestedRedact:Mgt,wildcards:o,wcLen:c}))}});var $A=E((YOr,Cpe)=>{"use strict";var qgt=Symbol("pino.setLevel"),jgt=Symbol("pino.getLevel"),Hgt=Symbol("pino.levelVal"),Qgt=Symbol("pino.levelComp"),Ggt=Symbol("pino.useLevelLabels"),Kgt=Symbol("pino.useOnlyCustomLevels"),Vgt=Symbol("pino.mixin"),zgt=Symbol("pino.lsCache"),Ygt=Symbol("pino.chindings"),Jgt=Symbol("pino.asJson"),Xgt=Symbol("pino.write"),Zgt=Symbol("pino.redactFmt"),eAt=Symbol("pino.time"),tAt=Symbol("pino.timeSliceIndex"),rAt=Symbol("pino.stream"),nAt=Symbol("pino.stringify"),sAt=Symbol("pino.stringifySafe"),iAt=Symbol("pino.stringifiers"),aAt=Symbol("pino.end"),oAt=Symbol("pino.formatOpts"),cAt=Symbol("pino.messageKey"),uAt=Symbol("pino.errorKey"),lAt=Symbol("pino.nestedKey"),dAt=Symbol("pino.nestedKeyStr"),fAt=Symbol("pino.mixinMergeStrategy"),pAt=Symbol("pino.msgPrefix"),mAt=Symbol("pino.wildcardFirst"),hAt=Symbol.for("pino.serializers"),gAt=Symbol.for("pino.formatters"),AAt=Symbol.for("pino.hooks"),yAt=Symbol.for("pino.metadata");Cpe.exports={setLevelSym:qgt,getLevelSym:jgt,levelValSym:Hgt,levelCompSym:Qgt,useLevelLabelsSym:Ggt,mixinSym:Vgt,lsCacheSym:zgt,chindingsSym:Ygt,asJsonSym:Jgt,writeSym:Xgt,serializersSym:hAt,redactFmtSym:Zgt,timeSym:eAt,timeSliceIndexSym:tAt,streamSym:rAt,stringifySym:nAt,stringifySafeSym:sAt,stringifiersSym:iAt,endSym:aAt,formatOptsSym:oAt,messageKeySym:cAt,errorKeySym:uAt,nestedKeySym:lAt,wildcardFirstSym:mAt,needsMetadataGsym:yAt,useOnlyCustomLevelsSym:Kgt,formattersSym:gAt,hooksSym:AAt,nestedKeyStrSym:dAt,mixinMergeStrategySym:fAt,msgPrefixSym:pAt}});var E5=E((JOr,Npe)=>{"use strict";var b5=Ipe(),{redactFmtSym:xAt,wildcardFirstSym:gR}=$A(),{rx:x5,validator:bAt}=b5,Tpe=bAt({ERR_PATHS_MUST_BE_STRINGS:()=>"pino \u2013 redacted paths must be strings",ERR_INVALID_PATH:t=>`pino \u2013 redact paths array contains an invalid path (${t})`}),wpe="[Redacted]",Rpe=!1;function EAt(t,e){let{paths:r,censor:n}=_At(t),s=r.reduce((o,c)=>{x5.lastIndex=0;let u=x5.exec(c),l=x5.exec(c),d=u[1]!==void 0?u[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):u[0];if(d==="*"&&(d=gR),l===null)return o[d]=null,o;if(o[d]===null)return o;let{index:f}=l,p=`${c.substr(f,c.length-1)}`;return o[d]=o[d]||[],d!==gR&&o[d].length===0&&o[d].push(...o[gR]||[]),d===gR&&Object.keys(o).forEach(function(m){o[m]&&o[m].push(p)}),o[d].push(p),o},{}),i={[xAt]:b5({paths:r,censor:n,serialize:e,strict:Rpe})},a=(...o)=>e(typeof n=="function"?n(...o):n);return[...Object.keys(s),...Object.getOwnPropertySymbols(s)].reduce((o,c)=>{if(s[c]===null)o[c]=u=>a(u,[c]);else{let u=typeof n=="function"?(l,d)=>n(l,[c,...d]):n;o[c]=b5({paths:s[c],censor:u,serialize:e,strict:Rpe})}return o},i)}function _At(t){if(Array.isArray(t))return t={paths:t,censor:wpe},Tpe(t),t;let{paths:e,censor:r=wpe,remove:n}=t;if(Array.isArray(e)===!1)throw Error("pino \u2013 redact must contain an array of strings");return n===!0&&(r=void 0),Tpe({paths:e,censor:r}),{paths:e,censor:r}}Npe.exports=EAt});var Ppe=E((XOr,Ope)=>{"use strict";var SAt=()=>"",vAt=()=>`,"time":${Date.now()}`,IAt=()=>`,"time":${Math.round(Date.now()/1e3)}`,CAt=()=>`,"time":"${new Date(Date.now()).toISOString()}"`;Ope.exports={nullTime:SAt,epochTime:vAt,unixTime:IAt,isoTime:CAt}});var Dpe=E((ZOr,kpe)=>{"use strict";function TAt(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}kpe.exports=wAt;function wAt(t,e,r){var n=r&&r.stringify||TAt,s=1;if(typeof t=="object"&&t!==null){var i=e.length+s;if(i===1)return t;var a=new Array(i);a[0]=n(t);for(var o=1;o<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,p=0;p<f;){if(t.charCodeAt(p)===37&&p+1<f){switch(d=d>-1?d:0,t.charCodeAt(p+1)){case 100:case 102:if(l>=c||e[l]==null)break;d<p&&(u+=t.slice(d,p)),u+=Number(e[l]),d=p+2,p++;break;case 105:if(l>=c||e[l]==null)break;d<p&&(u+=t.slice(d,p)),u+=Math.floor(Number(e[l])),d=p+2,p++;break;case 79:case 111:case 106:if(l>=c||e[l]===void 0)break;d<p&&(u+=t.slice(d,p));var m=typeof e[l];if(m==="string"){u+="'"+e[l]+"'",d=p+2,p++;break}if(m==="function"){u+=e[l].name||"<anonymous>",d=p+2,p++;break}u+=n(e[l]),d=p+2,p++;break;case 115:if(l>=c)break;d<p&&(u+=t.slice(d,p)),u+=String(e[l]),d=p+2,p++;break;case 37:d<p&&(u+=t.slice(d,p)),u+="%",d=p+2,p++,l--;break}++l}++p}return d===-1?t:(d<f&&(u+=t.slice(d)),u)}});var S5=E((ePr,_5)=>{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let e=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(t,0,0,Number(r))},t=new Int32Array(new SharedArrayBuffer(4));_5.exports=e}else{let t=function(e){if((e>0&&e<1/0)===!1)throw typeof e!="number"&&typeof e!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(e);for(;n>Date.now(););};_5.exports=t}});var qpe=E((tPr,Upe)=>{"use strict";var os=require("fs"),RAt=require("events"),NAt=require("util").inherits,Bpe=require("path"),I5=S5(),AR=100,yR=Buffer.allocUnsafe(0),OAt=16*1024,Lpe="buffer",Mpe="utf8";function Wpe(t,e){e._opening=!0,e._writing=!0,e._asyncDrainScheduled=!1;function r(i,a){if(i){e._reopening=!1,e._writing=!1,e._opening=!1,e.sync?process.nextTick(()=>{e.listenerCount("error")>0&&e.emit("error",i)}):e.emit("error",i);return}let o=e._reopening;e.fd=a,e.file=t,e._reopening=!1,e._opening=!1,e._writing=!1,e.sync?process.nextTick(()=>e.emit("ready")):e.emit("ready"),!e.destroyed&&(!e._writing&&e._len>e.minLength||e._flushPending?e._actualWrite():o&&process.nextTick(()=>e.emit("drain")))}let n=e.append?"a":"w",s=e.mode;if(e.sync)try{e.mkdir&&os.mkdirSync(Bpe.dirname(t),{recursive:!0});let i=os.openSync(t,n,s);r(null,i)}catch(i){throw r(i),i}else e.mkdir?os.mkdir(Bpe.dirname(t),{recursive:!0},i=>{if(i)return r(i);os.open(t,n,s,r)}):os.open(t,n,s,r)}function Wc(t){if(!(this instanceof Wc))return new Wc(t);let{fd:e,dest:r,minLength:n,maxLength:s,maxWrite:i,sync:a,append:o=!0,mkdir:c,retryEAGAIN:u,fsync:l,contentMode:d,mode:f}=t||{};e=e||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=s||0,this.maxWrite=i||OAt,this.sync=a||!1,this.writable=!0,this._fsync=l||!1,this.append=o||!1,this.mode=f,this.retryEAGAIN=u||(()=>!0),this.mkdir=c||!1;let p,m;if(d===Lpe)this._writingBuf=yR,this.write=DAt,this.flush=LAt,this.flushSync=WAt,this._actualWrite=FAt,p=()=>os.writeSync(this.fd,this._writingBuf),m=()=>os.write(this.fd,this._writingBuf,this.release);else if(d===void 0||d===Mpe)this._writingBuf="",this.write=kAt,this.flush=BAt,this.flushSync=MAt,this._actualWrite=$At,p=()=>os.writeSync(this.fd,this._writingBuf,"utf8"),m=()=>os.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${Mpe}" and "${Lpe}", but passed ${d}`);if(typeof e=="number")this.fd=e,process.nextTick(()=>this.emit("ready"));else if(typeof e=="string")Wpe(e,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(h,A)=>{if(h){if((h.code==="EAGAIN"||h.code==="EBUSY")&&this.retryEAGAIN(h,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{I5(AR),this.release(void 0,0)}catch(y){this.release(y)}else setTimeout(m,AR);else this._writing=!1,this.emit("error",h);return}this.emit("write",A);let g=v5(this._writingBuf,this._len,A);if(this._len=g.len,this._writingBuf=g.writingBuf,this._writingBuf.length){if(!this.sync){m();return}try{do{let y=p(),x=v5(this._writingBuf,this._len,y);this._len=x.len,this._writingBuf=x.writingBuf}while(this._writingBuf.length)}catch(y){this.release(y);return}}this._fsync&&os.fsyncSync(this.fd);let b=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):b>this.minLength?this._actualWrite():this._ending?b>0?this._actualWrite():(this._writing=!1,xR(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(PAt,this)):this.emit("drain"))},this.on("newListener",function(h){h==="drain"&&(this._asyncDrainScheduled=!1)})}function v5(t,e,r){return typeof t=="string"&&Buffer.byteLength(t)!==r&&(r=Buffer.from(t).subarray(0,r).toString().length),e=Math.max(e-r,0),t=t.slice(r),{writingBuf:t,len:e}}function PAt(t){t.listenerCount("drain")>0&&(t._asyncDrainScheduled=!1,t.emit("drain"))}NAt(Wc,RAt);function $pe(t,e){return t.length===0?yR:t.length===1?t[0]:Buffer.concat(t,e)}function kAt(t){if(this.destroyed)throw new Error("SonicBoom destroyed");let e=this._len+t.length,r=this._bufs;return this.maxLength&&e>this.maxLength?(this.emit("drop",t),this._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 DAt(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 Fpe(t){this._flushPending=!0;let e=()=>{this._fsync?(this._flushPending=!1,t()):os.fsync(this.fd,n=>{this._flushPending=!1,t(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,t(n),this.off("drain",e)};this.once("drain",e),this.once("error",r)}function BAt(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&Fpe.call(this,t),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function LAt(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&Fpe.call(this,t),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}Wc.prototype.reopen=function(t){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(t)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(t&&(this.file=t),this._reopening=!0,this._writing)return;let e=this.fd;this.once("ready",()=>{e!==this.fd&&os.close(e,r=>{if(r)return this.emit("error",r)})}),Wpe(this.file,this)};Wc.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():xR(this)))};function MAt(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let t="";for(;this._bufs.length||t;){t.length<=0&&(t=this._bufs[0]);try{let e=os.writeSync(this.fd,t,"utf8"),r=v5(t,this._len,e);t=r.writingBuf,this._len=r.len,t.length<=0&&this._bufs.shift()}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;I5(AR)}}try{os.fsyncSync(this.fd)}catch{}}function WAt(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=yR);let t=yR;for(;this._bufs.length||t.length;){t.length<=0&&(t=$pe(this._bufs[0],this._lens[0]));try{let e=os.writeSync(this.fd,t);t=t.subarray(e),this._len=Math.max(this._len-e,0),t.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;I5(AR)}}}Wc.prototype.destroy=function(){this.destroyed||xR(this)};function $At(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let e=os.writeSync(this.fd,this._writingBuf,"utf8");t(null,e)}catch(e){t(e)}else os.write(this.fd,this._writingBuf,"utf8",t)}function FAt(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:$pe(this._bufs.shift(),this._lens.shift()),this.sync)try{let e=os.writeSync(this.fd,this._writingBuf);t(null,e)}catch(e){t(e)}else os.write(this.fd,this._writingBuf,t)}function xR(t){if(t.fd===-1){t.once("ready",xR.bind(null,t));return}t.destroyed=!0,t._bufs=[],t._lens=[],os.fsync(t.fd,e);function e(){t.fd!==1&&t.fd!==2?os.close(t.fd,r):r()}function r(n){if(n){t.emit("error",n);return}t._ending&&!t._writing&&t.emit("finish"),t.emit("close")}}Wc.SonicBoom=Wc;Wc.default=Wc;Upe.exports=Wc});var C5=E((rPr,Kpe)=>{"use strict";var $c={exit:[],beforeExit:[]},jpe={exit:jAt,beforeExit:HAt},FA;function UAt(){FA===void 0&&(FA=new FinalizationRegistry(QAt))}function qAt(t){$c[t].length>0||process.on(t,jpe[t])}function Hpe(t){$c[t].length>0||(process.removeListener(t,jpe[t]),$c.exit.length===0&&$c.beforeExit.length===0&&(FA=void 0))}function jAt(){Qpe("exit")}function HAt(){Qpe("beforeExit")}function Qpe(t){for(let e of $c[t]){let r=e.deref(),n=e.fn;r!==void 0&&n(r,t)}$c[t]=[]}function QAt(t){for(let e of["exit","beforeExit"]){let r=$c[e].indexOf(t);$c[e].splice(r,r+1),Hpe(e)}}function Gpe(t,e,r){if(e===void 0)throw new Error("the object can't be undefined");qAt(t);let n=new WeakRef(e);n.fn=r,UAt(),FA.register(e,n),$c[t].push(n)}function GAt(t,e){Gpe("exit",t,e)}function KAt(t,e){Gpe("beforeExit",t,e)}function VAt(t){if(FA!==void 0){FA.unregister(t);for(let e of["exit","beforeExit"])$c[e]=$c[e].filter(r=>{let n=r.deref();return n&&n!==t}),Hpe(e)}}Kpe.exports={register:GAt,registerBeforeExit:KAt,unregister:VAt}});var Vpe=E((nPr,zAt)=>{zAt.exports={name:"thread-stream",version:"2.7.0",description:"A streaming way to send data to a Node.js Worker Thread",main:"index.js",types:"index.d.ts",dependencies:{"real-require":"^0.2.0"},devDependencies:{"@types/node":"^20.1.0","@types/tap":"^15.0.0","@yao-pkg/pkg":"^5.11.5",desm:"^1.3.0",fastbench:"^1.0.1",husky:"^9.0.6","pino-elasticsearch":"^8.0.0","sonic-boom":"^3.0.0",standard:"^17.0.0",tap:"^16.2.0","ts-node":"^10.8.0",typescript:"^5.3.2","why-is-node-running":"^2.2.2"},scripts:{test:'standard && npm run transpile && tap "test/**/*.test.*js" && tap --ts test/*.test.*ts',"test:ci":"standard && npm run transpile && npm run test:ci:js && npm run test:ci:ts","test:ci:js":'tap --no-check-coverage --timeout=120 --coverage-report=lcovonly "test/**/*.test.*js"',"test:ci:ts":'tap --ts --no-check-coverage --coverage-report=lcovonly "test/**/*.test.*ts"',"test:yarn":'npm run transpile && tap "test/**/*.test.js" --no-check-coverage',transpile:"sh ./test/ts/transpile.sh",prepare:"husky install"},standard:{ignore:["test/ts/**/*"]},repository:{type:"git",url:"git+https://github.com/mcollina/thread-stream.git"},keywords:["worker","thread","threads","stream"],author:"Matteo Collina <[email protected]>",license:"MIT",bugs:{url:"https://github.com/mcollina/thread-stream/issues"},homepage:"https://github.com/mcollina/thread-stream#readme"}});var Ype=E((sPr,zpe)=>{"use strict";function YAt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);if(a===r){s(null,"ok");return}let o=a,c=u=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{o=a,a=Atomics.load(t,e),a===o?c(u>=1e3?1e3:u*2):a===r?s(null,"ok"):s(null,"not-equal")},u)};c(1)}function JAt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);if(a!==r){s(null,"ok");return}let o=c=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{a=Atomics.load(t,e),a!==r?s(null,"ok"):o(c>=1e3?1e3:c*2)},c)};o(1)}zpe.exports={wait:YAt,waitDiff:JAt}});var Xpe=E((iPr,Jpe)=>{"use strict";Jpe.exports={WRITE_INDEX:4,READ_INDEX:8}});var n0e=E((aPr,r0e)=>{"use strict";var{version:XAt}=Vpe(),{EventEmitter:ZAt}=require("events"),{Worker:eyt}=require("worker_threads"),{join:tyt}=require("path"),{pathToFileURL:ryt}=require("url"),{wait:nyt}=Ype(),{WRITE_INDEX:Oa,READ_INDEX:Mu}=Xpe(),syt=require("buffer"),iyt=require("assert"),Se=Symbol("kImpl"),ayt=syt.constants.MAX_STRING_LENGTH,i1=class{constructor(e){this._value=e}deref(){return this._value}},ER=class{register(){}unregister(){}},oyt=process.env.NODE_V8_COVERAGE?ER:global.FinalizationRegistry||ER,cyt=process.env.NODE_V8_COVERAGE?i1:global.WeakRef||i1,Zpe=new oyt(t=>{t.exited||t.terminate()});function uyt(t,e){let{filename:r,workerData:n}=e,i=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||tyt(__dirname,"lib","worker.js"),a=new eyt(i,{...e.workerOpts,trackUnmanagedFds:!1,workerData:{filename:r.indexOf("file://")===0?r:ryt(r).href,dataBuf:t[Se].dataBuf,stateBuf:t[Se].stateBuf,workerData:{$context:{threadStreamVersion:XAt},...n}}});return a.stream=new i1(t),a.on("message",lyt),a.on("exit",t0e),Zpe.register(t,a),a}function e0e(t){iyt(!t[Se].sync),t[Se].needDrain&&(t[Se].needDrain=!1,t.emit("drain"))}function bR(t){let e=Atomics.load(t[Se].state,Oa),r=t[Se].data.length-e;if(r>0){if(t[Se].buf.length===0){t[Se].flushing=!1,t[Se].ending?O5(t):t[Se].needDrain&&process.nextTick(e0e,t);return}let n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);s<=r?(t[Se].buf=t[Se].buf.slice(r),_R(t,n,bR.bind(null,t))):t.flush(()=>{if(!t.destroyed){for(Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);s>t[Se].data.length;)r=r/2,n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);t[Se].buf=t[Se].buf.slice(r),_R(t,n,bR.bind(null,t))}})}else if(r===0){if(e===0&&t[Se].buf.length===0)return;t.flush(()=>{Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0),bR(t)})}else Wu(t,new Error("overwritten"))}function lyt(t){let e=this.stream.deref();if(e===void 0){this.exited=!0,this.terminate();return}switch(t.code){case"READY":this.stream=new cyt(e),e.flush(()=>{e[Se].ready=!0,e.emit("ready")});break;case"ERROR":Wu(e,t.err);break;case"EVENT":Array.isArray(t.args)?e.emit(t.name,...t.args):e.emit(t.name,t.args);break;case"WARNING":process.emitWarning(t.err);break;default:Wu(e,new Error("this should not happen: "+t.code))}}function t0e(t){let e=this.stream.deref();e!==void 0&&(Zpe.unregister(e),e.worker.exited=!0,e.worker.off("exit",t0e),Wu(e,t!==0?new Error("the worker thread exited"):null))}var w5=class extends ZAt{constructor(e={}){if(super(),e.bufferSize<4)throw new Error("bufferSize must at least fit a 4-byte utf-8 char");this[Se]={},this[Se].stateBuf=new SharedArrayBuffer(128),this[Se].state=new Int32Array(this[Se].stateBuf),this[Se].dataBuf=new SharedArrayBuffer(e.bufferSize||4*1024*1024),this[Se].data=Buffer.from(this[Se].dataBuf),this[Se].sync=e.sync||!1,this[Se].ending=!1,this[Se].ended=!1,this[Se].needDrain=!1,this[Se].destroyed=!1,this[Se].flushing=!1,this[Se].ready=!1,this[Se].finished=!1,this[Se].errored=null,this[Se].closed=!1,this[Se].buf="",this.worker=uyt(this,e),this.on("message",(r,n)=>{this.worker.postMessage(r,n)})}write(e){if(this[Se].destroyed)return R5(this,new Error("the worker has exited")),!1;if(this[Se].ending)return R5(this,new Error("the worker is ending")),!1;if(this[Se].flushing&&this[Se].buf.length+e.length>=ayt)try{T5(this),this[Se].flushing=!0}catch(r){return Wu(this,r),!1}if(this[Se].buf+=e,this[Se].sync)try{return T5(this),!0}catch(r){return Wu(this,r),!1}return this[Se].flushing||(this[Se].flushing=!0,setImmediate(bR,this)),this[Se].needDrain=this[Se].data.length-this[Se].buf.length-Atomics.load(this[Se].state,Oa)<=0,!this[Se].needDrain}end(){this[Se].destroyed||(this[Se].ending=!0,O5(this))}flush(e){if(this[Se].destroyed){typeof e=="function"&&process.nextTick(e,new Error("the worker has exited"));return}let r=Atomics.load(this[Se].state,Oa);nyt(this[Se].state,Mu,r,1/0,(n,s)=>{if(n){Wu(this,n),process.nextTick(e,n);return}if(s==="not-equal"){this.flush(e);return}process.nextTick(e)})}flushSync(){this[Se].destroyed||(T5(this),N5(this))}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[Se].ready}get destroyed(){return this[Se].destroyed}get closed(){return this[Se].closed}get writable(){return!this[Se].destroyed&&!this[Se].ending}get writableEnded(){return this[Se].ending}get writableFinished(){return this[Se].finished}get writableNeedDrain(){return this[Se].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[Se].errored}};function R5(t,e){setImmediate(()=>{t.emit("error",e)})}function Wu(t,e){t[Se].destroyed||(t[Se].destroyed=!0,e&&(t[Se].errored=e,R5(t,e)),t.worker.exited?setImmediate(()=>{t[Se].closed=!0,t.emit("close")}):t.worker.terminate().catch(()=>{}).then(()=>{t[Se].closed=!0,t.emit("close")}))}function _R(t,e,r){let n=Atomics.load(t[Se].state,Oa),s=Buffer.byteLength(e);return t[Se].data.write(e,n),Atomics.store(t[Se].state,Oa,n+s),Atomics.notify(t[Se].state,Oa),r(),!0}function O5(t){if(!(t[Se].ended||!t[Se].ending||t[Se].flushing)){t[Se].ended=!0;try{t.flushSync();let e=Atomics.load(t[Se].state,Mu);Atomics.store(t[Se].state,Oa,-1),Atomics.notify(t[Se].state,Oa);let r=0;for(;e!==-1;){if(Atomics.wait(t[Se].state,Mu,e,1e3),e=Atomics.load(t[Se].state,Mu),e===-2){Wu(t,new Error("end() failed"));return}if(++r===10){Wu(t,new Error("end() took too long (10s)"));return}}process.nextTick(()=>{t[Se].finished=!0,t.emit("finish")})}catch(e){Wu(t,e)}}}function T5(t){let e=()=>{t[Se].ending?O5(t):t[Se].needDrain&&process.nextTick(e0e,t)};for(t[Se].flushing=!1;t[Se].buf.length!==0;){let r=Atomics.load(t[Se].state,Oa),n=t[Se].data.length-r;if(n===0){N5(t),Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);continue}else if(n<0)throw new Error("overwritten");let s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);if(i<=n)t[Se].buf=t[Se].buf.slice(n),_R(t,s,e);else{for(N5(t),Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);i>t[Se].buf.length;)n=n/2,s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);t[Se].buf=t[Se].buf.slice(n),_R(t,s,e)}}}function N5(t){if(t[Se].flushing)throw new Error("unable to flush while flushing");let e=Atomics.load(t[Se].state,Oa),r=0;for(;;){let n=Atomics.load(t[Se].state,Mu);if(n===-2)throw Error("_flushSync failed");if(n!==e)Atomics.wait(t[Se].state,Mu,n,1e3);else break;if(++r===10)throw new Error("_flushSync took too long (10s)")}}r0e.exports=w5});var D5=E((oPr,s0e)=>{"use strict";var{createRequire:dyt}=require("module"),fyt=m5(),{join:P5,isAbsolute:pyt,sep:myt}=require("path"),hyt=S5(),k5=C5(),gyt=n0e();function Ayt(t){k5.register(t,xyt),k5.registerBeforeExit(t,byt),t.on("close",function(){k5.unregister(t)})}function yyt(t,e,r){let n=new gyt({filename:t,workerData:e,workerOpts:r});n.on("ready",s),n.on("close",function(){process.removeListener("exit",i)}),process.on("exit",i);function s(){process.removeListener("exit",i),n.unref(),r.autoEnd!==!1&&Ayt(n)}function i(){n.closed||(n.flushSync(),hyt(100),n.end())}return n}function xyt(t){t.ref(),t.flushSync(),t.end(),t.once("close",function(){t.unref()})}function byt(t){t.flushSync()}function Eyt(t){let{pipeline:e,targets:r,levels:n,dedupe:s,options:i={},worker:a={},caller:o=fyt()}=t,c=typeof o=="string"?[o]:o,u="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},l=t.target;if(l&&r)throw new Error("only one of target or targets can be specified");return r?(l=u["pino-worker"]||P5(__dirname,"worker.js"),i.targets=r.map(f=>({...f,target:d(f.target)}))):e&&(l=u["pino-pipeline-worker"]||P5(__dirname,"worker-pipeline.js"),i.targets=e.map(f=>({...f,target:d(f.target)}))),n&&(i.levels=n),s&&(i.dedupe=s),i.pinoWillSendConfig=!0,yyt(d(l),i,a);function d(f){if(f=u[f]||f,pyt(f)||f.indexOf("file://")===0)return f;if(f==="pino/file")return P5(__dirname,"..","file.js");let p;for(let m of c)try{let h=m==="node:repl"?process.cwd()+myt:m;p=dyt(h).resolve(f);break}catch{continue}if(!p)throw new Error(`unable to determine transport target for "${f}"`);return p}}s0e.exports=Eyt});var IR=E((cPr,h0e)=>{"use strict";var i0e=Dpe(),{mapHttpRequest:_yt,mapHttpResponse:Syt}=p5(),L5=qpe(),a0e=C5(),{lsCacheSym:vyt,chindingsSym:u0e,writeSym:o0e,serializersSym:l0e,formatOptsSym:c0e,endSym:Iyt,stringifiersSym:d0e,stringifySym:f0e,stringifySafeSym:M5,wildcardFirstSym:p0e,nestedKeySym:Cyt,formattersSym:m0e,messageKeySym:Tyt,errorKeySym:wyt,nestedKeyStrSym:Ryt,msgPrefixSym:SR}=$A(),{isMainThread:Nyt}=require("worker_threads"),Oyt=D5();function UA(){}function Pyt(t,e){if(!e)return r;return function(...s){e.call(this,s,r,t)};function r(n,...s){if(typeof n=="object"){let i=n;n!==null&&(n.method&&n.headers&&n.socket?n=_yt(n):typeof n.setHeader=="function"&&(n=Syt(n)));let a;i===null&&s.length===0?a=[null]:(i=s.shift(),a=s),typeof this[SR]=="string"&&i!==void 0&&i!==null&&(i=this[SR]+i),this[o0e](n,i0e(i,a,this[c0e]),t)}else{let i=n===void 0?s.shift():n;typeof this[SR]=="string"&&i!==void 0&&i!==null&&(i=this[SR]+i),this[o0e](null,i0e(i,s,this[c0e]),t)}}}function B5(t){let e="",r=0,n=!1,s=255,i=t.length;if(i>100)return JSON.stringify(t);for(var a=0;a<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 kyt(t,e,r,n){let s=this[f0e],i=this[M5],a=this[d0e],o=this[Iyt],c=this[u0e],u=this[l0e],l=this[m0e],d=this[Tyt],f=this[wyt],p=this[vyt][r]+n;p=p+c;let m;l.log&&(t=l.log(t));let h=a[p0e],A="";for(let b in t)if(m=t[b],Object.prototype.hasOwnProperty.call(t,b)&&m!==void 0){u[b]?m=u[b](m):b===f&&u.err&&(m=u.err(m));let y=a[b]||h;switch(typeof m){case"undefined":case"function":continue;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":y&&(m=y(m));break;case"string":m=(y||B5)(m);break;default:m=(y||s)(m,i)}if(m===void 0)continue;let x=B5(b);A+=","+x+":"+m}let g="";if(e!==void 0){m=u[d]?u[d](e):e;let b=a[d]||h;switch(typeof m){case"function":break;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":b&&(m=b(m)),g=',"'+d+'":'+m;break;case"string":m=(b||B5)(m),g=',"'+d+'":'+m;break;default:m=(b||s)(m,i),g=',"'+d+'":'+m}}return this[Cyt]&&A?p+this[Ryt]+A.slice(1)+"}"+g+o:p+A+g+o}function Dyt(t,e){let r,n=t[u0e],s=t[f0e],i=t[M5],a=t[d0e],o=a[p0e],c=t[l0e],u=t[m0e].bindings;e=u(e);for(let l in e)if(r=e[l],(l!=="level"&&l!=="serializers"&&l!=="formatters"&&l!=="customLevels"&&e.hasOwnProperty(l)&&r!==void 0)===!0){if(r=c[l]?c[l](r):r,r=(a[l]||o||s)(r,i),r===void 0)continue;n+=',"'+l+'":'+r}return n}function Byt(t){return t.write!==t.constructor.prototype.write}var Lyt=process.env.NODE_V8_COVERAGE||process.env.V8_COVERAGE;function vR(t){let e=new L5(t);return e.on("error",r),!Lyt&&!t.sync&&Nyt&&(a0e.register(e,Myt),e.on("close",function(){a0e.unregister(e)})),e;function r(n){if(n.code==="EPIPE"){e.write=UA,e.end=UA,e.flushSync=UA,e.destroy=UA;return}e.removeListener("error",r),e.emit("error",n)}}function Myt(t,e){t.destroyed||(e==="beforeExit"?(t.flush(),t.on("drain",function(){t.end()})):t.flushSync())}function Wyt(t){return function(r,n,s={},i){if(typeof s=="string")i=vR({dest:s}),s={};else if(typeof i=="string"){if(s&&s.transport)throw Error("only one of option.transport or stream can be specified");i=vR({dest:i})}else if(s instanceof L5||s.writable||s._writableState)i=s,s={};else if(s.transport){if(s.transport instanceof L5||s.transport.writable||s.transport._writableState)throw Error("option.transport do not allow stream, please pass to option directly. e.g. pino(transport)");if(s.transport.targets&&s.transport.targets.length&&s.formatters&&typeof s.formatters.level=="function")throw Error("option.transport.targets do not allow custom level formatters");let c;s.customLevels&&(c=s.useOnlyCustomLevels?s.customLevels:Object.assign({},s.levels,s.customLevels)),i=Oyt({caller:n,...s.transport,levels:c})}if(s=Object.assign({},t,s),s.serializers=Object.assign({},t.serializers,s.serializers),s.formatters=Object.assign({},t.formatters,s.formatters),s.prettyPrint)throw new Error("prettyPrint option is no longer supported, see the pino-pretty package (https://github.com/pinojs/pino-pretty)");let{enabled:a,onChild:o}=s;return a===!1&&(s.level="silent"),o||(s.onChild=UA),i||(Byt(process.stdout)?i=process.stdout:i=vR({fd:process.stdout.fd||1})),{opts:s,stream:i}}}function $yt(t,e){try{return JSON.stringify(t)}catch{try{return(e||this[M5])(t)}catch{return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function Fyt(t,e,r){return{level:t,bindings:e,log:r}}function Uyt(t){let e=Number(t);return typeof t=="string"&&Number.isFinite(e)?e:t===void 0?1:t}h0e.exports={noop:UA,buildSafeSonicBoom:vR,asChindings:Dyt,asJson:kyt,genLog:Pyt,createArgsNormalizer:Wyt,stringify:$yt,buildFormatters:Fyt,normalizeDestFileDescriptor:Uyt}});var CR=E((uPr,g0e)=>{var qyt={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},jyt={ASC:"ASC",DESC:"DESC"};g0e.exports={DEFAULT_LEVELS:qyt,SORTING_ORDER:jyt}});var F5=E((lPr,b0e)=>{"use strict";var{lsCacheSym:Hyt,levelValSym:W5,useOnlyCustomLevelsSym:Qyt,streamSym:Gyt,formattersSym:Kyt,hooksSym:Vyt,levelCompSym:A0e}=$A(),{noop:zyt,genLog:xm}=IR(),{DEFAULT_LEVELS:$u,SORTING_ORDER:y0e}=CR(),x0e={fatal:t=>{let e=xm($u.fatal,t);return function(...r){let n=this[Gyt];if(e.call(this,...r),typeof n.flushSync=="function")try{n.flushSync()}catch{}}},error:t=>xm($u.error,t),warn:t=>xm($u.warn,t),info:t=>xm($u.info,t),debug:t=>xm($u.debug,t),trace:t=>xm($u.trace,t)},$5=Object.keys($u).reduce((t,e)=>(t[$u[e]]=e,t),{}),Yyt=Object.keys($5).reduce((t,e)=>(t[e]='{"level":'+Number(e),t),{});function Jyt(t){let e=t[Kyt].level,{labels:r}=t.levels,n={};for(let s in r){let i=e(r[s],Number(s));n[s]=JSON.stringify(i).slice(0,-1)}return t[Hyt]=n,t}function Xyt(t,e){if(e)return!1;switch(t){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function Zyt(t){let{labels:e,values:r}=this.levels;if(typeof t=="number"){if(e[t]===void 0)throw Error("unknown level value"+t);t=e[t]}if(r[t]===void 0)throw Error("unknown level "+t);let n=this[W5],s=this[W5]=r[t],i=this[Qyt],a=this[A0e],o=this[Vyt].logMethod;for(let c in r){if(a(r[c],s)===!1){this[c]=zyt;continue}this[c]=Xyt(c,i)?x0e[c](o):xm(r[c],o)}this.emit("level-change",t,s,e[n],n,this)}function ext(t){let{levels:e,levelVal:r}=this;return e&&e.labels?e.labels[r]:""}function txt(t){let{values:e}=this.levels,r=e[t];return r!==void 0&&this[A0e](r,this[W5])}function rxt(t,e,r){return t===y0e.DESC?e<=r:e>=r}function nxt(t){return typeof t=="string"?rxt.bind(null,t):t}function sxt(t=null,e=!1){let r=t?Object.keys(t).reduce((i,a)=>(i[t[a]]=a,i),{}):null,n=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),e?null:$5,r),s=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),e?null:$u,t);return{labels:n,values:s}}function ixt(t,e,r){if(typeof t=="number"){if(![].concat(Object.keys(e||{}).map(i=>e[i]),r?[]:Object.keys($5).map(i=>+i),1/0).includes(t))throw Error(`default level:${t} must be included in custom levels`);return}let n=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),r?null:$u,e);if(!(t in n))throw Error(`default level:${t} must be included in custom levels`)}function axt(t,e){let{labels:r,values:n}=t;for(let s in e){if(s in n)throw Error("levels cannot be overridden");if(e[s]in r)throw Error("pre-existing level values cannot be used for new levels")}}function oxt(t){if(typeof t!="function"&&!(typeof t=="string"&&Object.values(y0e).includes(t)))throw new Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}b0e.exports={initialLsCache:Yyt,genLsCache:Jyt,levelMethods:x0e,getLevel:ext,setLevel:Zyt,isLevelEnabled:txt,mappings:sxt,assertNoLevelCollisions:axt,assertDefaultLevelFound:ixt,genLevelComparison:nxt,assertLevelComparison:oxt}});var U5=E((dPr,E0e)=>{"use strict";E0e.exports={version:"8.21.0"}});var P0e=E((pPr,O0e)=>{"use strict";var{EventEmitter:cxt}=require("events"),{lsCacheSym:uxt,levelValSym:lxt,setLevelSym:j5,getLevelSym:_0e,chindingsSym:H5,parsedChindingsSym:dxt,mixinSym:fxt,asJsonSym:T0e,writeSym:pxt,mixinMergeStrategySym:mxt,timeSym:hxt,timeSliceIndexSym:gxt,streamSym:w0e,serializersSym:bm,formattersSym:q5,errorKeySym:Axt,messageKeySym:yxt,useOnlyCustomLevelsSym:xxt,needsMetadataGsym:bxt,redactFmtSym:Ext,stringifySym:_xt,formatOptsSym:Sxt,stringifiersSym:vxt,msgPrefixSym:S0e}=$A(),{getLevel:Ixt,setLevel:Cxt,isLevelEnabled:Txt,mappings:wxt,initialLsCache:Rxt,genLsCache:Nxt,assertNoLevelCollisions:Oxt}=F5(),{asChindings:R0e,asJson:Pxt,buildFormatters:v0e,stringify:I0e}=IR(),{version:kxt}=U5(),Dxt=E5(),Bxt=class{},N0e={constructor:Bxt,child:Lxt,bindings:Mxt,setBindings:Wxt,flush:qxt,isLevelEnabled:Txt,version:kxt,get level(){return this[_0e]()},set level(t){this[j5](t)},get levelVal(){return this[lxt]},set levelVal(t){throw Error("levelVal is read-only")},[uxt]:Rxt,[pxt]:Fxt,[T0e]:Pxt,[_0e]:Ixt,[j5]:Cxt};Object.setPrototypeOf(N0e,cxt.prototype);O0e.exports=function(){return Object.create(N0e)};var C0e=t=>t;function Lxt(t,e){if(!t)throw Error("missing bindings for child Pino");e=e||{};let r=this[bm],n=this[q5],s=Object.create(this);if(e.hasOwnProperty("serializers")===!0){s[bm]=Object.create(null);for(let l in r)s[bm][l]=r[l];let c=Object.getOwnPropertySymbols(r);for(var i=0;i<c.length;i++){let l=c[i];s[bm][l]=r[l]}for(let l in e.serializers)s[bm][l]=e.serializers[l];let u=Object.getOwnPropertySymbols(e.serializers);for(var a=0;a<u.length;a++){let l=u[a];s[bm][l]=e.serializers[l]}}else s[bm]=r;if(e.hasOwnProperty("formatters")){let{level:c,bindings:u,log:l}=e.formatters;s[q5]=v0e(c||n.level,u||C0e,l||n.log)}else s[q5]=v0e(n.level,C0e,n.log);if(e.hasOwnProperty("customLevels")===!0&&(Oxt(this.levels,e.customLevels),s.levels=wxt(e.customLevels,s[xxt]),Nxt(s)),typeof e.redact=="object"&&e.redact!==null||Array.isArray(e.redact)){s.redact=e.redact;let c=Dxt(s.redact,I0e),u={stringify:c[Ext]};s[_xt]=I0e,s[vxt]=c,s[Sxt]=u}typeof e.msgPrefix=="string"&&(s[S0e]=(this[S0e]||"")+e.msgPrefix),s[H5]=R0e(s,t);let o=e.level||this.level;return s[j5](o),this.onChild(s),s}function Mxt(){let e=`{${this[H5].substr(1)}}`,r=JSON.parse(e);return delete r.pid,delete r.hostname,r}function Wxt(t){let e=R0e(this,t);this[H5]=e,delete this[dxt]}function $xt(t,e){return Object.assign(e,t)}function Fxt(t,e,r){let n=this[hxt](),s=this[fxt],i=this[Axt],a=this[yxt],o=this[mxt]||$xt,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[T0e](c,e,r,n),l=this[w0e];l[bxt]===!0&&(l.lastLevel=r,l.lastObj=c,l.lastMsg=e,l.lastTime=n.slice(this[gxt]),l.lastLogger=this),l.write(u)}function Uxt(){}function qxt(t){if(t!=null&&typeof t!="function")throw Error("callback must be a function");let e=this[w0e];typeof e.flush=="function"?e.flush(t||Uxt):t&&t()}});var L0e=E((V5,B0e)=>{"use strict";var{hasOwnProperty:a1}=Object.prototype,_m=K5();_m.configure=K5;_m.stringify=_m;_m.default=_m;V5.stringify=_m;V5.configure=K5;B0e.exports=_m;var jxt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function fp(t){return t.length<5e3&&!jxt.test(t)?`"${t}"`:JSON.stringify(t)}function Q5(t,e){if(t.length>200||e)return t.sort(e);for(let r=1;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 Hxt=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function G5(t){return Hxt.call(t)!==void 0&&t.length!==0}function k0e(t,e,r){t.length<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 Qxt(t){if(a1.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 Gxt(t){let e;if(a1.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 Kxt(t,e){let r;if(a1.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 D0e(t,e){let r;if(a1.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 Em(t){return t===1?"1 item":`${t} items`}function Vxt(t){let e=new Set;for(let r of t)(typeof r=="string"||typeof r=="number")&&e.add(String(r));return e}function zxt(t){if(a1.call(t,"strict")){let e=t.strict;if(typeof e!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(e)return r=>{let n=`Object can not safely be stringified. Received type ${typeof r}`;throw typeof r!="function"&&(n+=` (${r.toString()})`),new Error(n)}}}function K5(t){t={...t};let e=zxt(t);e&&(t.bigint===void 0&&(t.bigint=!1),"circularValue"in t||(t.circularValue=Error));let r=Qxt(t),n=Kxt(t,"bigint"),s=Gxt(t),i=typeof s=="function"?s:void 0,a=D0e(t,"maximumDepth"),o=D0e(t,"maximumBreadth");function c(p,m,h,A,g,b){let y=m[p];switch(typeof y=="object"&&y!==null&&typeof y.toJSON=="function"&&(y=y.toJSON(p)),y=A.call(m,p,y),typeof y){case"string":return fp(y);case"object":{if(y===null)return"null";if(h.indexOf(y)!==-1)return r;let x="",v=",",I=b;if(Array.isArray(y)){if(y.length===0)return"[]";if(a<h.length+1)return'"[Array]"';h.push(y),g!==""&&(b+=g,x+=`
${b}`,v=`,
${b}`);let M=Math.min(y.length,o),D=0;for(;D<M-1;D++){let Z=c(String(D),y,h,A,g,b);x+=Z!==void 0?Z:"null",x+=v}let L=c(String(D),y,h,A,g,b);if(x+=L!==void 0?L:"null",y.length-1>o){let Z=y.length-o-1;x+=`${v}"... ${Em(Z)} not stringified"`}return g!==""&&(x+=`
${I}`),h.pop(),`[${x}]`}let R=Object.keys(y),w=R.length;if(w===0)return"{}";if(a<h.length+1)return'"[Object]"';let N="",P="";g!==""&&(b+=g,v=`,
${b}`,N=" ");let B=Math.min(w,o);s&&!G5(y)&&(R=Q5(R,i)),h.push(y);for(let M=0;M<B;M++){let D=R[M],L=c(D,y,h,A,g,b);L!==void 0&&(x+=`${P}${fp(D)}:${N}${L}`,P=v)}if(w>o){let M=w-o;x+=`${P}"...":${N}"${Em(M)} not stringified"`,P=v}return g!==""&&P.length>1&&(x=`
${b}${x}
${I}`),h.pop(),`{${x}}`}case"number":return isFinite(y)?String(y):e?e(y):"null";case"boolean":return y===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(y);default:return e?e(y):void 0}}function u(p,m,h,A,g,b){switch(typeof m=="object"&&m!==null&&typeof m.toJSON=="function"&&(m=m.toJSON(p)),typeof m){case"string":return fp(m);case"object":{if(m===null)return"null";if(h.indexOf(m)!==-1)return r;let y=b,x="",v=",";if(Array.isArray(m)){if(m.length===0)return"[]";if(a<h.length+1)return'"[Array]"';h.push(m),g!==""&&(b+=g,x+=`
${b}`,v=`,
${b}`);let w=Math.min(m.length,o),N=0;for(;N<w-1;N++){let B=u(String(N),m[N],h,A,g,b);x+=B!==void 0?B:"null",x+=v}let P=u(String(N),m[N],h,A,g,b);if(x+=P!==void 0?P:"null",m.length-1>o){let B=m.length-o-1;x+=`${v}"... ${Em(B)} not stringified"`}return g!==""&&(x+=`
${y}`),h.pop(),`[${x}]`}h.push(m);let I="";g!==""&&(b+=g,v=`,
${b}`,I=" ");let R="";for(let w of A){let N=u(w,m[w],h,A,g,b);N!==void 0&&(x+=`${R}${fp(w)}:${I}${N}`,R=v)}return g!==""&&R.length>1&&(x=`
${b}${x}
${y}`),h.pop(),`{${x}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function l(p,m,h,A,g){switch(typeof m){case"string":return fp(m);case"object":{if(m===null)return"null";if(typeof m.toJSON=="function"){if(m=m.toJSON(p),typeof m!="object")return l(p,m,h,A,g);if(m===null)return"null"}if(h.indexOf(m)!==-1)return r;let b=g;if(Array.isArray(m)){if(m.length===0)return"[]";if(a<h.length+1)return'"[Array]"';h.push(m),g+=A;let N=`
${g}`,P=`,
${g}`,B=Math.min(m.length,o),M=0;for(;M<B-1;M++){let L=l(String(M),m[M],h,A,g);N+=L!==void 0?L:"null",N+=P}let D=l(String(M),m[M],h,A,g);if(N+=D!==void 0?D:"null",m.length-1>o){let L=m.length-o-1;N+=`${P}"... ${Em(L)} not stringified"`}return N+=`
${b}`,h.pop(),`[${N}]`}let y=Object.keys(m),x=y.length;if(x===0)return"{}";if(a<h.length+1)return'"[Object]"';g+=A;let v=`,
${g}`,I="",R="",w=Math.min(x,o);G5(m)&&(I+=k0e(m,v,o),y=y.slice(m.length),w-=m.length,R=v),s&&(y=Q5(y,i)),h.push(m);for(let N=0;N<w;N++){let P=y[N],B=l(P,m[P],h,A,g);B!==void 0&&(I+=`${R}${fp(P)}: ${B}`,R=v)}if(x>o){let N=x-o;I+=`${R}"...": "${Em(N)} not stringified"`,R=v}return R!==""&&(I=`
${g}${I}
${b}`),h.pop(),`{${I}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function d(p,m,h){switch(typeof m){case"string":return fp(m);case"object":{if(m===null)return"null";if(typeof m.toJSON=="function"){if(m=m.toJSON(p),typeof m!="object")return d(p,m,h);if(m===null)return"null"}if(h.indexOf(m)!==-1)return r;let A="",g=m.length!==void 0;if(g&&Array.isArray(m)){if(m.length===0)return"[]";if(a<h.length+1)return'"[Array]"';h.push(m);let I=Math.min(m.length,o),R=0;for(;R<I-1;R++){let N=d(String(R),m[R],h);A+=N!==void 0?N:"null",A+=","}let w=d(String(R),m[R],h);if(A+=w!==void 0?w:"null",m.length-1>o){let N=m.length-o-1;A+=`,"... ${Em(N)} not stringified"`}return h.pop(),`[${A}]`}let b=Object.keys(m),y=b.length;if(y===0)return"{}";if(a<h.length+1)return'"[Object]"';let x="",v=Math.min(y,o);g&&G5(m)&&(A+=k0e(m,",",o),b=b.slice(m.length),v-=m.length,x=","),s&&(b=Q5(b,i)),h.push(m);for(let I=0;I<v;I++){let R=b[I],w=d(R,m[R],h);w!==void 0&&(A+=`${x}${fp(R)}:${w}`,x=",")}if(y>o){let I=y-o;A+=`${x}"...":"${Em(I)} not stringified"`}return h.pop(),`{${A}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function f(p,m,h){if(arguments.length>1){let A="";if(typeof h=="number"?A=" ".repeat(Math.min(h,10)):typeof h=="string"&&(A=h.slice(0,10)),m!=null){if(typeof m=="function")return c("",{"":p},[],m,A,"");if(Array.isArray(m))return u("",p,[],Vxt(m),A,"")}if(A.length!==0)return l("",p,[],A,"")}return d("",p,[])}return f}});var $0e=E((mPr,W0e)=>{"use strict";var z5=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:M0e}=CR(),Yxt=M0e.info;function Jxt(t,e){let r=0;t=t||[],e=e||{dedupe:!1};let n=Object.create(M0e);n.silent=1/0,e.levels&&typeof e.levels=="object"&&Object.keys(e.levels).forEach(d=>{n[d]=e.levels[d]});let s={write:i,add:c,emit:a,flushSync:o,end:u,minLevel:0,streams:[],clone:l,[z5]:!0,streamLevels:n};return Array.isArray(t)?t.forEach(c,s):c.call(s,t),t=null,s;function i(d){let f,p=this.lastLevel,{streams:m}=this,h=0,A;for(let g=Zxt(m.length,e.dedupe);tbt(g,m.length,e.dedupe);g=ebt(g,e.dedupe))if(f=m[g],f.level<=p){if(h!==0&&h!==f.level)break;if(A=f.stream,A[z5]){let{lastTime:b,lastMsg:y,lastObj:x,lastLogger:v}=this;A.lastLevel=p,A.lastTime=b,A.lastMsg=y,A.lastObj=x,A.lastLogger=v}A.write(d),e.dedupe&&(h=f.level)}else if(!e.dedupe)break}function a(...d){for(let{stream:f}of this.streams)typeof f.emit=="function"&&f.emit(...d)}function o(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync()}function c(d){if(!d)return s;let f=typeof d.write=="function"||d.stream,p=d.write?d:d.stream;if(!f)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:m,streamLevels:h}=this,A;typeof d.levelVal=="number"?A=d.levelVal:typeof d.level=="string"?A=h[d.level]:typeof d.level=="number"?A=d.level:A=Yxt;let g={stream:p,level:A,levelVal:void 0,id:r++};return m.unshift(g),m.sort(Xxt),this.minLevel=m[0].level,s}function u(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync(),d.end()}function l(d){let f=new Array(this.streams.length);for(let p=0;p<f.length;p++)f[p]={level:d,stream:this.streams[p].stream};return{write:i,add:c,minLevel:d,streams:f,clone:l,emit:a,flushSync:o,[z5]:!0}}}function Xxt(t,e){return t.level-e.level}function Zxt(t,e){return e?t-1:0}function ebt(t,e){return e?t-1:t+1}function tbt(t,e,r){return r?t>=0:t<e}W0e.exports=Jxt});var X0e=E((hPr,Ho)=>{"use strict";var rbt=require("os"),K0e=p5(),nbt=m5(),sbt=E5(),V0e=Ppe(),ibt=P0e(),z0e=$A(),{configure:abt}=L0e(),{assertDefaultLevelFound:obt,mappings:Y0e,genLsCache:cbt,genLevelComparison:ubt,assertLevelComparison:lbt}=F5(),{DEFAULT_LEVELS:dbt,SORTING_ORDER:fbt}=CR(),{createArgsNormalizer:pbt,asChindings:mbt,buildSafeSonicBoom:F0e,buildFormatters:hbt,stringify:Y5,normalizeDestFileDescriptor:U0e,noop:gbt}=IR(),{version:Abt}=U5(),{chindingsSym:q0e,redactFmtSym:ybt,serializersSym:j0e,timeSym:xbt,timeSliceIndexSym:bbt,streamSym:Ebt,stringifySym:H0e,stringifySafeSym:J5,stringifiersSym:Q0e,setLevelSym:_bt,endSym:Sbt,formatOptsSym:vbt,messageKeySym:Ibt,errorKeySym:Cbt,nestedKeySym:Tbt,mixinSym:wbt,levelCompSym:Rbt,useOnlyCustomLevelsSym:Nbt,formattersSym:G0e,hooksSym:Obt,nestedKeyStrSym:Pbt,mixinMergeStrategySym:kbt,msgPrefixSym:Dbt}=z0e,{epochTime:J0e,nullTime:Bbt}=V0e,{pid:Lbt}=process,Mbt=rbt.hostname(),Wbt=K0e.err,$bt={level:"info",levelComparison:fbt.ASC,levels:dbt,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:Lbt,hostname:Mbt},serializers:Object.assign(Object.create(null),{err:Wbt}),formatters:Object.assign(Object.create(null),{bindings(t){return t},level(t,e){return{level:e}}}),hooks:{logMethod:void 0},timestamp:J0e,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},Fbt=pbt($bt),Ubt=Object.assign(Object.create(null),K0e);function X5(...t){let e={},{opts:r,stream:n}=Fbt(e,nbt(),...t),{redact:s,crlf:i,serializers:a,timestamp:o,messageKey:c,errorKey:u,nestedKey:l,base:d,name:f,level:p,customLevels:m,levelComparison:h,mixin:A,mixinMergeStrategy:g,useOnlyCustomLevels:b,formatters:y,hooks:x,depthLimit:v,edgeLimit:I,onChild:R,msgPrefix:w}=r,N=abt({maximumDepth:v,maximumBreadth:I}),P=hbt(y.level,y.bindings,y.log),B=Y5.bind({[J5]:N}),M=s?sbt(s,B):{},D=s?{stringify:M[ybt]}:{stringify:B},L="}"+(i?`\r
`:`
`),Z=mbt.bind(null,{[q0e]:"",[j0e]:a,[Q0e]:M,[H0e]:Y5,[J5]:N,[G0e]:P}),W="";d!==null&&(f===void 0?W=Z(d):W=Z(Object.assign({},d,{name:f})));let F=o instanceof Function?o:o?J0e:Bbt,K=F().indexOf(":")+1;if(b&&!m)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(A&&typeof A!="function")throw Error(`Unknown mixin type "${typeof A}" - expected "function"`);if(w&&typeof w!="string")throw Error(`Unknown msgPrefix type "${typeof w}" - expected "string"`);obt(p,m,b);let j=Y0e(m,b);typeof n.emit=="function"&&n.emit("message",{code:"PINO_CONFIG",config:{levels:j,messageKey:c,errorKey:u}}),lbt(h);let J=ubt(h);return Object.assign(e,{levels:j,[Rbt]:J,[Nbt]:b,[Ebt]:n,[xbt]:F,[bbt]:K,[H0e]:Y5,[J5]:N,[Q0e]:M,[Sbt]:L,[vbt]:D,[Ibt]:c,[Cbt]:u,[Tbt]:l,[Pbt]:l?`,${JSON.stringify(l)}:{`:"",[j0e]:a,[wbt]:A,[kbt]:g,[q0e]:W,[G0e]:P,[Obt]:x,silent:gbt,onChild:R,[Dbt]:w}),Object.setPrototypeOf(e,ibt()),cbt(e),e[_bt](p),e}Ho.exports=X5;Ho.exports.destination=(t=process.stdout.fd)=>typeof t=="object"?(t.dest=U0e(t.dest||process.stdout.fd),F0e(t)):F0e({dest:U0e(t),minLength:0});Ho.exports.transport=D5();Ho.exports.multistream=$0e();Ho.exports.levels=Y0e();Ho.exports.stdSerializers=Ubt;Ho.exports.stdTimeFunctions=Object.assign({},V0e);Ho.exports.symbols=z0e;Ho.exports.version=Abt;Ho.exports.default=X5;Ho.exports.pino=X5});var o1=E((gPr,nme)=>{"use strict";var qbt=qfe(),TR=X0e(),{serializersSym:Z0e}=TR.symbols,{FST_ERR_LOG_INVALID_DESTINATION:jbt,FST_ERR_LOG_INVALID_LOGGER:Hbt}=Ci();function eme(t){if(t.stream&&t.file)throw new jbt;t.file&&(t.stream=TR.destination(t.file),delete t.file);let e=t.logger,r=t.genReqId,n=null;return e?(t.logger=void 0,t.genReqId=void 0,e[Z0e]&&(t.serializers=Object.assign({},t.serializers,e[Z0e])),n=e.child({},t),t.logger=e,t.genReqId=r):n=TR(t,t.stream),n}var Z5={req:function(e){return{method:e.method,url:e.url,version:e.headers&&e.headers["accept-version"],hostname:e.hostname,remoteAddress:e.ip,remotePort:e.socket?e.socket.remotePort:void 0}},err:TR.stdSerializers.err,res:function(e){return{statusCode:e.statusCode}}};function Qbt(){let t=process.hrtime();return t[0]*1e3+t[1]/1e6}function Gbt(t){if(!t.logger){let n=qbt;return n.child=()=>n,{logger:n,hasLogger:!1}}if(tme(t.logger))return{logger:eme({logger:t.logger,serializers:Object.assign({},Z5,t.logger.serializers)}),hasLogger:!0};let e={};return Object.prototype.toString.call(t.logger)==="[object Object]"&&Reflect.ownKeys(t.logger).forEach(n=>{Object.defineProperty(e,n,{value:t.logger[n],writable:!0,enumerable:!0,configurable:!0})}),e.level=e.level||"info",e.serializers=Object.assign({},Z5,e.serializers),t.logger=e,{logger:eme(t.logger),hasLogger:!0}}function tme(t,e){let r=["info","error","debug","fatal","warn","trace","child"],n=t?r.filter(s=>!t[s]||typeof t[s]!="function"):r;if(n.length){if(n.length===r.length&&!e)return!1;throw Hbt(n.join(","))}else return!0}function Kbt(t,e,r,n,s){let i={[t.requestIdLogLabel]:n},a=t.childLoggerFactory.call(t.server,e,i,s||{},r);return t.childLoggerFactory!==rme&&tme(a,!0),a}function rme(t,e,r){return t.child(e,r)}nme.exports={createLogger:Gbt,createChildLogger:Kbt,defaultChildLoggerFactory:rme,serializers:Z5,now:Qbt}});var wR=E((APr,sme)=>{"use strict";sme.exports=Vbt;function qA(t){return t instanceof Buffer?Buffer.from(t):new t.constructor(t.buffer.slice(),t.byteOffset,t.length)}function Vbt(t){if(t=t||{},t.circles)return zbt(t);let e=new Map;if(e.set(Date,a=>new Date(a)),e.set(Map,(a,o)=>new Map(n(Array.from(a),o))),e.set(Set,(a,o)=>new Set(n(Array.from(a),o))),t.constructorHandlers)for(let a of t.constructorHandlers)e.set(a[0],a[1]);let r=null;return t.proto?i:s;function n(a,o){let c=Object.keys(a),u=new Array(c.length);for(let l=0;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]=qA(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]=qA(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]=qA(u):o[c]=i(u)}return o}}function zbt(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 p=l[f],m=c[p];if(typeof m!="object"||m===null)d[p]=m;else if(m.constructor!==Object&&(s=n.get(m.constructor)))d[p]=s(m,u);else if(ArrayBuffer.isView(m))d[p]=qA(m);else{let h=e.indexOf(m);h!==-1?d[p]=r[h]:d[p]=u(m)}}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]=qA(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]=qA(d);else{let f=e.indexOf(d);f!==-1?u[l]=r[f]:u[l]=o(d)}}return e.pop(),r.pop(),u}}});var c1=E((yPr,cme)=>{"use strict";var Ybt=wR()({circles:!1,proto:!0}),{kSchemaVisited:ime,kSchemaResponse:Jbt}=Gs(),t8=Symbol.for("fluent-schema-object"),{FST_ERR_SCH_MISSING_ID:Xbt,FST_ERR_SCH_ALREADY_PRESENT:Zbt,FST_ERR_SCH_DUPLICATE:eEt,FST_ERR_SCH_CONTENT_MISSING_SCHEMA:tEt}=Ci(),ome=["params","body","querystring","query","headers"];function RR(t){this.store=t||{}}RR.prototype.add=function(t){let e=Ybt(t.isFluentSchema||t.isFluentJSONSchema||t[t8]?t.valueOf():t),r=e.$id;if(!r)throw new Xbt;if(this.store[r])throw new Zbt(r);this.store[r]=e};RR.prototype.getSchemas=function(){return Object.assign({},this.store)};RR.prototype.getSchema=function(t){return this.store[t]};function ame(t){return typeof t=="object"&&Object.getPrototypeOf(t)!==Object.prototype}function rEt(t,e){if(t[ime])return t;if(t.query){if(t.querystring)throw new eEt("querystring");t.querystring=t.query}nEt(t);for(let r of ome){let n=t[r];n&&!ame(n)&&(t[r]=e8(n,e.jsonShorthand))}if(t.response){let r=Object.keys(t.response);for(let n of r){if(ame(t.response[n]))continue;let s=t.response[n].content,i=!1;if(s){let a=Object.keys(s);for(let o=0;o<a.length;o++){let c=a[o];if(!s[c].schema){if(a.length===1)break;throw new tEt(c)}t.response[n].content[c].schema=e8(s[c].schema,e.jsonShorthand),o===a.length-1&&(i=!0)}}i||(t.response[n]=e8(t.response[n],e.jsonShorthand))}}return t[ime]=!0,t}function nEt(t){for(let e of ome)t[e]&&(t[e].isFluentSchema||t[e][t8])&&(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][t8])&&(t.response[r]=t.response[r].valueOf())}}function e8(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 sEt(t,e,r){let n=t[Jbt];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}cme.exports={buildSchemas(t){return new RR(t)},getSchemaSerializer:sEt,normalizeSchema:rEt}});var r8=E((xPr,lme)=>{"use strict";var iEt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;lme.exports=class ume{constructor(e){switch(e&&e.rounding){case"floor":this.parseInteger=Math.floor;break;case"ceil":this.parseInteger=Math.ceil;break;case"round":this.parseInteger=Math.round;break;case"trunc":default:this.parseInteger=Math.trunc;break}this._options=e}asInteger(e){if(Number.isInteger(e))return""+e;if(typeof e=="bigint")return e.toString();let r=this.parseInteger(e);if(r===1/0||r===-1/0||r!==r)throw new Error(`The value "${e}" cannot be converted to an integer.`);return""+r}asNumber(e){let r=Number(e);if(r!==r)throw new Error(`The value "${e}" cannot be converted to a number.`);return r===1/0||r===-1/0?"null":""+r}asBoolean(e){return e&&"true"||"false"}asDateTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+e.toISOString()+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date-time.`)}asDate(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(0,10)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date.`)}asTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(11,19)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a time.`)}asString(e){let r=e.length;if(r<42){let s="",i=-1,a=255;for(var n=0;n<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&&iEt.test(e)===!1?'"'+e+'"':JSON.stringify(e)}asUnsafeString(e){return'"'+e+'"'}getState(){return this._options}static restoreFromState(e){return new ume(e)}}});var d1=E(kr=>{"use strict";Object.defineProperty(kr,"__esModule",{value:!0});kr.regexpCode=kr.getEsmExportName=kr.getProperty=kr.safeStringify=kr.stringify=kr.strConcat=kr.addCodeArg=kr.str=kr._=kr.nil=kr._Code=kr.Name=kr.IDENTIFIER=kr._CodeOrName=void 0;var u1=class{};kr._CodeOrName=u1;kr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Sm=class extends u1{constructor(e){if(super(),!kr.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};kr.Name=Sm;var Qo=class extends u1{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Sm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};kr._Code=Qo;kr.nil=new Qo("");function dme(t,...e){let r=[t[0]],n=0;for(;n<e.length;)s8(r,e[n]),r.push(t[++n]);return new Qo(r)}kr._=dme;var n8=new Qo("+");function fme(t,...e){let r=[l1(t[0])],n=0;for(;n<e.length;)r.push(n8),s8(r,e[n]),r.push(n8,l1(t[++n]));return aEt(r),new Qo(r)}kr.str=fme;function s8(t,e){e instanceof Qo?t.push(...e._items):e instanceof Sm?t.push(e):t.push(uEt(e))}kr.addCodeArg=s8;function aEt(t){let e=1;for(;e<t.length-1;){if(t[e]===n8){let r=oEt(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function oEt(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Sm||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 Sm))return`"${t}${e.slice(1)}`}function cEt(t,e){return e.emptyStr()?t:t.emptyStr()?e:fme`${t}${e}`}kr.strConcat=cEt;function uEt(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:l1(Array.isArray(t)?t.join(","):t)}function lEt(t){return new Qo(l1(t))}kr.stringify=lEt;function l1(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}kr.safeStringify=l1;function dEt(t){return typeof t=="string"&&kr.IDENTIFIER.test(t)?new Qo(`.${t}`):dme`[${t}]`}kr.getProperty=dEt;function fEt(t){if(typeof t=="string"&&kr.IDENTIFIER.test(t))return new Qo(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}kr.getEsmExportName=fEt;function pEt(t){return new Qo(t.toString())}kr.regexpCode=pEt});var o8=E(ka=>{"use strict";Object.defineProperty(ka,"__esModule",{value:!0});ka.ValueScope=ka.ValueScopeName=ka.Scope=ka.varKinds=ka.UsedValueState=void 0;var Pa=d1(),i8=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},NR;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(NR||(ka.UsedValueState=NR={}));ka.varKinds={const:new Pa.Name("const"),let:new Pa.Name("let"),var:new Pa.Name("var")};var OR=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Pa.Name?e:this.name(e)}name(e){return new Pa.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};ka.Scope=OR;var PR=class extends Pa.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Pa._)`.${new Pa.Name(r)}[${n}]`}};ka.ValueScopeName=PR;var mEt=(0,Pa._)`\n`,a8=class extends OR{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?mEt:Pa.nil}}get(){return this._scope}name(e){return new PR(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Pa._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Pa.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,NR.Started);let l=r(u);if(l){let d=this.opts.es5?ka.varKinds.var:ka.varKinds.const;i=(0,Pa._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Pa._)`${i}${l}${this.opts._n}`;else throw new i8(u);c.set(u,NR.Completed)})}return i}};ka.ValueScope=a8});var Kt=E(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.or=Jt.and=Jt.not=Jt.CodeGen=Jt.operators=Jt.varKinds=Jt.ValueScopeName=Jt.ValueScope=Jt.Scope=Jt.Name=Jt.regexpCode=Jt.stringify=Jt.getProperty=Jt.nil=Jt.strConcat=Jt.str=Jt._=void 0;var gr=d1(),Fc=o8(),pp=d1();Object.defineProperty(Jt,"_",{enumerable:!0,get:function(){return pp._}});Object.defineProperty(Jt,"str",{enumerable:!0,get:function(){return pp.str}});Object.defineProperty(Jt,"strConcat",{enumerable:!0,get:function(){return pp.strConcat}});Object.defineProperty(Jt,"nil",{enumerable:!0,get:function(){return pp.nil}});Object.defineProperty(Jt,"getProperty",{enumerable:!0,get:function(){return pp.getProperty}});Object.defineProperty(Jt,"stringify",{enumerable:!0,get:function(){return pp.stringify}});Object.defineProperty(Jt,"regexpCode",{enumerable:!0,get:function(){return pp.regexpCode}});Object.defineProperty(Jt,"Name",{enumerable:!0,get:function(){return pp.Name}});var LR=o8();Object.defineProperty(Jt,"Scope",{enumerable:!0,get:function(){return LR.Scope}});Object.defineProperty(Jt,"ValueScope",{enumerable:!0,get:function(){return LR.ValueScope}});Object.defineProperty(Jt,"ValueScopeName",{enumerable:!0,get:function(){return LR.ValueScopeName}});Object.defineProperty(Jt,"varKinds",{enumerable:!0,get:function(){return LR.varKinds}});Jt.operators={GT:new gr._Code(">"),GTE:new gr._Code(">="),LT:new gr._Code("<"),LTE:new gr._Code("<="),EQ:new gr._Code("==="),NEQ:new gr._Code("!=="),NOT:new gr._Code("!"),OR:new gr._Code("||"),AND:new gr._Code("&&"),ADD:new gr._Code("+")};var ud=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},c8=class extends ud{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Fc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=HA(this.rhs,e,r)),this}get names(){return this.rhs instanceof gr._CodeOrName?this.rhs.names:{}}},kR=class extends ud{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof gr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=HA(this.rhs,e,r),this}get names(){let e=this.lhs instanceof gr.Name?{}:{...this.lhs.names};return BR(e,this.rhs)}},u8=class extends kR{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},l8=class extends ud{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},d8=class extends ud{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},f8=class extends ud{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},p8=class extends ud{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=HA(this.code,e,r),this}get names(){return this.code instanceof gr._CodeOrName?this.code.names:{}}},f1=class extends ud{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(hEt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Cm(e,r.names),{})}},ld=class extends f1{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},m8=class extends f1{},jA=class extends ld{};jA.kind="else";var vm=class t extends ld{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new jA(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(pme(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=HA(this.condition,e,r),this}get names(){let e=super.names;return BR(e,this.condition),this.else&&Cm(e,this.else.names),e}};vm.kind="if";var Im=class extends ld{};Im.kind="for";var h8=class extends Im{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=HA(this.iteration,e,r),this}get names(){return Cm(super.names,this.iteration.names)}},g8=class extends Im{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Fc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=BR(super.names,this.from);return BR(e,this.to)}},DR=class extends Im{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=HA(this.iterable,e,r),this}get names(){return Cm(super.names,this.iterable.names)}},p1=class extends ld{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};p1.kind="func";var m1=class extends f1{render(e){return"return "+super.render(e)}};m1.kind="return";var A8=class extends ld{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Cm(e,this.catch.names),this.finally&&Cm(e,this.finally.names),e}},h1=class extends ld{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};h1.kind="catch";var g1=class extends ld{render(e){return"finally"+super.render(e)}};g1.kind="finally";var y8=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
`:""},this._extScope=e,this._scope=new Fc.Scope({parent:e}),this._nodes=[new m8]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new c8(e,i,n)),i}const(e,r,n){return this._def(Fc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Fc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Fc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new kR(e,r,n))}add(e,r){return this._leafNode(new u8(e,Jt.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==gr.nil&&this._leafNode(new p8(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,gr.addCodeArg)(r,s));return r.push("}"),new gr._Code(r)}if(e,r,n){if(this._blockNode(new vm(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new vm(e))}else(){return this._elseNode(new jA)}endIf(){return this._endBlockNode(vm,jA)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new h8(e),r)}forRange(e,r,n,s,i=this.opts.es5?Fc.varKinds.var:Fc.varKinds.let){let a=this._scope.toName(e);return this._for(new g8(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Fc.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof gr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,gr._)`${a}.length`,o=>{this.var(i,(0,gr._)`${a}[${o}]`),n(i)})}return this._for(new DR("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Fc.varKinds.var:Fc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,gr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new DR("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Im)}label(e){return this._leafNode(new l8(e))}break(e){return this._leafNode(new d8(e))}return(e){let r=new m1;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(m1)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new A8;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new h1(i),r(i)}return n&&(this._currNode=s.finally=new g1,this.code(n)),this._endBlockNode(h1,g1)}throw(e){return this._leafNode(new f8(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=gr.nil,n,s){return this._blockNode(new p1(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(p1)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof vm))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Jt.CodeGen=y8;function Cm(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function BR(t,e){return e instanceof gr._CodeOrName?Cm(t,e.names):t}function HA(t,e,r){if(t instanceof gr.Name)return n(t);if(!s(t))return t;return new gr._Code(t._items.reduce((i,a)=>(a instanceof gr.Name&&(a=n(a)),a instanceof gr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof gr._Code&&i._items.some(a=>a instanceof gr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function hEt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function pme(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,gr._)`!${x8(t)}`}Jt.not=pme;var gEt=mme(Jt.operators.AND);function AEt(...t){return t.reduce(gEt)}Jt.and=AEt;var yEt=mme(Jt.operators.OR);function xEt(...t){return t.reduce(yEt)}Jt.or=xEt;function mme(t){return(e,r)=>e===gr.nil?r:r===gr.nil?e:(0,gr._)`${x8(e)} ${t} ${x8(r)}`}function x8(t){return t instanceof gr.Name?t:(0,gr._)`(${t})`}});var Dr=E(er=>{"use strict";Object.defineProperty(er,"__esModule",{value:!0});er.checkStrictMode=er.getErrorPath=er.Type=er.useFunc=er.setEvaluated=er.evaluatedPropsToName=er.mergeEvaluated=er.eachItem=er.unescapeJsonPointer=er.escapeJsonPointer=er.escapeFragment=er.unescapeFragment=er.schemaRefOrVal=er.schemaHasRulesButRef=er.schemaHasRules=er.checkUnknownRules=er.alwaysValidSchema=er.toHash=void 0;var ln=Kt(),bEt=d1();function EEt(t){let e={};for(let r of t)e[r]=!0;return e}er.toHash=EEt;function _Et(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Ame(t,e),!yme(e,t.self.RULES.all))}er.alwaysValidSchema=_Et;function Ame(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||Eme(t,`unknown keyword: "${i}"`)}er.checkUnknownRules=Ame;function yme(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}er.schemaHasRules=yme;function SEt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}er.schemaHasRulesButRef=SEt;function vEt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ln._)`${r}`}return(0,ln._)`${t}${e}${(0,ln.getProperty)(n)}`}er.schemaRefOrVal=vEt;function IEt(t){return xme(decodeURIComponent(t))}er.unescapeFragment=IEt;function CEt(t){return encodeURIComponent(E8(t))}er.escapeFragment=CEt;function E8(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}er.escapeJsonPointer=E8;function xme(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}er.unescapeJsonPointer=xme;function TEt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}er.eachItem=TEt;function hme({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof ln.Name?(i instanceof ln.Name?t(s,i,a):e(s,i,a),a):i instanceof ln.Name?(e(s,a,i),i):r(i,a);return o===ln.Name&&!(c instanceof ln.Name)?n(s,c):c}}er.mergeEvaluated={props:hme({mergeNames:(t,e,r)=>t.if((0,ln._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ln._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ln._)`${r} || {}`).code((0,ln._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ln._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ln._)`${r} || {}`),_8(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:bme}),items:hme({mergeNames:(t,e,r)=>t.if((0,ln._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ln._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ln._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ln._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function bme(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ln._)`{}`);return e!==void 0&&_8(t,r,e),r}er.evaluatedPropsToName=bme;function _8(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ln._)`${e}${(0,ln.getProperty)(n)}`,!0))}er.setEvaluated=_8;var gme={};function wEt(t,e){return t.scopeValue("func",{ref:e,code:gme[e.code]||(gme[e.code]=new bEt._Code(e.code))})}er.useFunc=wEt;var b8;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(b8||(er.Type=b8={}));function REt(t,e,r){if(t instanceof ln.Name){let n=e===b8.Num;return r?n?(0,ln._)`"[" + ${t} + "]"`:(0,ln._)`"['" + ${t} + "']"`:n?(0,ln._)`"/" + ${t}`:(0,ln._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ln.getProperty)(t).toString():"/"+E8(t)}er.getErrorPath=REt;function Eme(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}er.checkStrictMode=Eme});var dd=E(S8=>{"use strict";Object.defineProperty(S8,"__esModule",{value:!0});var wi=Kt(),NEt={data:new wi.Name("data"),valCxt:new wi.Name("valCxt"),instancePath:new wi.Name("instancePath"),parentData:new wi.Name("parentData"),parentDataProperty:new wi.Name("parentDataProperty"),rootData:new wi.Name("rootData"),dynamicAnchors:new wi.Name("dynamicAnchors"),vErrors:new wi.Name("vErrors"),errors:new wi.Name("errors"),this:new wi.Name("this"),self:new wi.Name("self"),scope:new wi.Name("scope"),json:new wi.Name("json"),jsonPos:new wi.Name("jsonPos"),jsonLen:new wi.Name("jsonLen"),jsonPart:new wi.Name("jsonPart")};S8.default=NEt});var A1=E(Ri=>{"use strict";Object.defineProperty(Ri,"__esModule",{value:!0});Ri.extendErrors=Ri.resetErrorsCount=Ri.reportExtraError=Ri.reportError=Ri.keyword$DataError=Ri.keywordError=void 0;var Sr=Kt(),MR=Dr(),ea=dd();Ri.keywordError={message:({keyword:t})=>(0,Sr.str)`must pass "${t}" keyword validation`};Ri.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Sr.str)`"${t}" keyword must be ${e} ($data)`:(0,Sr.str)`"${t}" keyword is invalid ($data)`};function OEt(t,e=Ri.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=vme(t,e,r);n??(a||o)?_me(i,c):Sme(s,(0,Sr._)`[${c}]`)}Ri.reportError=OEt;function PEt(t,e=Ri.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=vme(t,e,r);_me(s,o),i||a||Sme(n,ea.default.vErrors)}Ri.reportExtraError=PEt;function kEt(t,e){t.assign(ea.default.errors,e),t.if((0,Sr._)`${ea.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Sr._)`${ea.default.vErrors}.length`,e),()=>t.assign(ea.default.vErrors,null)))}Ri.resetErrorsCount=kEt;function DEt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ea.default.errors,o=>{t.const(a,(0,Sr._)`${ea.default.vErrors}[${o}]`),t.if((0,Sr._)`${a}.instancePath === undefined`,()=>t.assign((0,Sr._)`${a}.instancePath`,(0,Sr.strConcat)(ea.default.instancePath,i.errorPath))),t.assign((0,Sr._)`${a}.schemaPath`,(0,Sr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Sr._)`${a}.schema`,r),t.assign((0,Sr._)`${a}.data`,n))})}Ri.extendErrors=DEt;function _me(t,e){let r=t.const("err",e);t.if((0,Sr._)`${ea.default.vErrors} === null`,()=>t.assign(ea.default.vErrors,(0,Sr._)`[${r}]`),(0,Sr._)`${ea.default.vErrors}.push(${r})`),t.code((0,Sr._)`${ea.default.errors}++`)}function Sme(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Sr._)`new ${t.ValidationError}(${e})`):(r.assign((0,Sr._)`${n}.errors`,e),r.return(!1))}var Tm={keyword:new Sr.Name("keyword"),schemaPath:new Sr.Name("schemaPath"),params:new Sr.Name("params"),propertyName:new Sr.Name("propertyName"),message:new Sr.Name("message"),schema:new Sr.Name("schema"),parentSchema:new Sr.Name("parentSchema")};function vme(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Sr._)`{}`:BEt(t,e,r)}function BEt(t,e,r={}){let{gen:n,it:s}=t,i=[LEt(s,r),MEt(t,r)];return WEt(t,e,i),n.object(...i)}function LEt({errorPath:t},{instancePath:e}){let r=e?(0,Sr.str)`${t}${(0,MR.getErrorPath)(e,MR.Type.Str)}`:t;return[ea.default.instancePath,(0,Sr.strConcat)(ea.default.instancePath,r)]}function MEt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Sr.str)`${e}/${t}`;return r&&(s=(0,Sr.str)`${s}${(0,MR.getErrorPath)(r,MR.Type.Str)}`),[Tm.schemaPath,s]}function WEt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([Tm.keyword,s],[Tm.params,typeof e=="function"?e(t):e||(0,Sr._)`{}`]),c.messages&&n.push([Tm.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Tm.schema,a],[Tm.parentSchema,(0,Sr._)`${l}${d}`],[ea.default.data,i]),u&&n.push([Tm.propertyName,u])}});var Cme=E(QA=>{"use strict";Object.defineProperty(QA,"__esModule",{value:!0});QA.boolOrEmptySchema=QA.topBoolOrEmptySchema=void 0;var $Et=A1(),FEt=Kt(),UEt=dd(),qEt={message:"boolean schema is false"};function jEt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Ime(t,!1):typeof r=="object"&&r.$async===!0?e.return(UEt.default.data):(e.assign((0,FEt._)`${n}.errors`,null),e.return(!0))}QA.topBoolOrEmptySchema=jEt;function HEt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Ime(t)):r.var(e,!0)}QA.boolOrEmptySchema=HEt;function Ime(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,$Et.reportError)(s,qEt,void 0,e)}});var v8=E(GA=>{"use strict";Object.defineProperty(GA,"__esModule",{value:!0});GA.getRules=GA.isJSONType=void 0;var QEt=["string","number","integer","boolean","null","object","array"],GEt=new Set(QEt);function KEt(t){return typeof t=="string"&&GEt.has(t)}GA.isJSONType=KEt;function VEt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}GA.getRules=VEt});var I8=E(mp=>{"use strict";Object.defineProperty(mp,"__esModule",{value:!0});mp.shouldUseRule=mp.shouldUseGroup=mp.schemaHasRulesForType=void 0;function zEt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Tme(t,n)}mp.schemaHasRulesForType=zEt;function Tme(t,e){return e.rules.some(r=>wme(t,r))}mp.shouldUseGroup=Tme;function wme(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}mp.shouldUseRule=wme});var y1=E(Ni=>{"use strict";Object.defineProperty(Ni,"__esModule",{value:!0});Ni.reportTypeError=Ni.checkDataTypes=Ni.checkDataType=Ni.coerceAndCheckDataType=Ni.getJSONTypes=Ni.getSchemaTypes=Ni.DataType=void 0;var YEt=v8(),JEt=I8(),XEt=A1(),qt=Kt(),Rme=Dr(),KA;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(KA||(Ni.DataType=KA={}));function ZEt(t){let e=Nme(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Ni.getSchemaTypes=ZEt;function Nme(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(YEt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Ni.getJSONTypes=Nme;function e1t(t,e){let{gen:r,data:n,opts:s}=t,i=t1t(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,JEt.schemaHasRulesForType)(t,e[0]));if(a){let o=T8(e,n,s.strictNumbers,KA.Wrong);r.if(o,()=>{i.length?r1t(t,e,i):w8(t)})}return a}Ni.coerceAndCheckDataType=e1t;var Ome=new Set(["string","number","integer","boolean","null"]);function t1t(t,e){return e?t.filter(r=>Ome.has(r)||e==="array"&&r==="array"):[]}function r1t(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,qt._)`typeof ${s}`),o=n.let("coerced",(0,qt._)`undefined`);i.coerceTypes==="array"&&n.if((0,qt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,qt._)`${s}[0]`).assign(a,(0,qt._)`typeof ${s}`).if(T8(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,qt._)`${o} !== undefined`);for(let u of r)(Ome.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),w8(t),n.endIf(),n.if((0,qt._)`${o} !== undefined`,()=>{n.assign(s,o),n1t(t,o)});function c(u){switch(u){case"string":n.elseIf((0,qt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,qt._)`"" + ${s}`).elseIf((0,qt._)`${s} === null`).assign(o,(0,qt._)`""`);return;case"number":n.elseIf((0,qt._)`${a} == "boolean" || ${s} === null
|| (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,qt._)`+${s}`);return;case"integer":n.elseIf((0,qt._)`${a} === "boolean" || ${s} === null
|| (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,qt._)`+${s}`);return;case"boolean":n.elseIf((0,qt._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,qt._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,qt._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,qt._)`${a} === "string" || ${a} === "number"
|| ${a} === "boolean" || ${s} === null`).assign(o,(0,qt._)`[${s}]`)}}}function n1t({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,qt._)`${e} !== undefined`,()=>t.assign((0,qt._)`${e}[${r}]`,n))}function C8(t,e,r,n=KA.Correct){let s=n===KA.Correct?qt.operators.EQ:qt.operators.NEQ,i;switch(t){case"null":return(0,qt._)`${e} ${s} null`;case"array":i=(0,qt._)`Array.isArray(${e})`;break;case"object":i=(0,qt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,qt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,qt._)`typeof ${e} ${s} ${t}`}return n===KA.Correct?i:(0,qt.not)(i);function a(o=qt.nil){return(0,qt.and)((0,qt._)`typeof ${e} == "number"`,o,r?(0,qt._)`isFinite(${e})`:qt.nil)}}Ni.checkDataType=C8;function T8(t,e,r,n){if(t.length===1)return C8(t[0],e,r,n);let s,i=(0,Rme.toHash)(t);if(i.array&&i.object){let a=(0,qt._)`typeof ${e} != "object"`;s=i.null?a:(0,qt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=qt.nil;i.number&&delete i.integer;for(let a in i)s=(0,qt.and)(s,C8(a,e,r,n));return s}Ni.checkDataTypes=T8;var s1t={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,qt._)`{type: ${t}}`:(0,qt._)`{type: ${e}}`};function w8(t){let e=i1t(t);(0,XEt.reportError)(e,s1t)}Ni.reportTypeError=w8;function i1t(t){let{gen:e,data:r,schema:n}=t,s=(0,Rme.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var kme=E(WR=>{"use strict";Object.defineProperty(WR,"__esModule",{value:!0});WR.assignDefaults=void 0;var VA=Kt(),a1t=Dr();function o1t(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)Pme(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>Pme(t,i,s.default))}WR.assignDefaults=o1t;function Pme(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,VA._)`${i}${(0,VA.getProperty)(e)}`;if(s){(0,a1t.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,VA._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,VA._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,VA._)`${o} = ${(0,VA.stringify)(r)}`)}});var Go=E(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.validateUnion=Zr.validateArray=Zr.usePattern=Zr.callValidateCode=Zr.schemaProperties=Zr.allSchemaProperties=Zr.noPropertyInData=Zr.propertyInData=Zr.isOwnProperty=Zr.hasPropFunc=Zr.reportMissingProp=Zr.checkMissingProp=Zr.checkReportMissingProp=void 0;var Rn=Kt(),R8=Dr(),hp=dd(),c1t=Dr();function u1t(t,e){let{gen:r,data:n,it:s}=t;r.if(O8(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Rn._)`${e}`},!0),t.error()})}Zr.checkReportMissingProp=u1t;function l1t({gen:t,data:e,it:{opts:r}},n,s){return(0,Rn.or)(...n.map(i=>(0,Rn.and)(O8(t,e,i,r.ownProperties),(0,Rn._)`${s} = ${i}`)))}Zr.checkMissingProp=l1t;function d1t(t,e){t.setParams({missingProperty:e},!0),t.error()}Zr.reportMissingProp=d1t;function Dme(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Rn._)`Object.prototype.hasOwnProperty`})}Zr.hasPropFunc=Dme;function N8(t,e,r){return(0,Rn._)`${Dme(t)}.call(${e}, ${r})`}Zr.isOwnProperty=N8;function f1t(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} !== undefined`;return n?(0,Rn._)`${s} && ${N8(t,e,r)}`:s}Zr.propertyInData=f1t;function O8(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} === undefined`;return n?(0,Rn.or)(s,(0,Rn.not)(N8(t,e,r))):s}Zr.noPropertyInData=O8;function Bme(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Zr.allSchemaProperties=Bme;function p1t(t,e){return Bme(e).filter(r=>!(0,R8.alwaysValidSchema)(t,e[r]))}Zr.schemaProperties=p1t;function m1t({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Rn._)`${t}, ${e}, ${n}${s}`:e,d=[[hp.default.instancePath,(0,Rn.strConcat)(hp.default.instancePath,i)],[hp.default.parentData,a.parentData],[hp.default.parentDataProperty,a.parentDataProperty],[hp.default.rootData,hp.default.rootData]];a.opts.dynamicRef&&d.push([hp.default.dynamicAnchors,hp.default.dynamicAnchors]);let f=(0,Rn._)`${l}, ${r.object(...d)}`;return c!==Rn.nil?(0,Rn._)`${o}.call(${c}, ${f})`:(0,Rn._)`${o}(${f})`}Zr.callValidateCode=m1t;var h1t=(0,Rn._)`new RegExp`;function g1t({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Rn._)`${s.code==="new RegExp"?h1t:(0,c1t.useFunc)(t,s)}(${r}, ${n})`})}Zr.usePattern=g1t;function A1t(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Rn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:R8.Type.Num},i),e.if((0,Rn.not)(i),o)})}}Zr.validateArray=A1t;function y1t(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,R8.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Rn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Rn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}Zr.validateUnion=y1t});var Wme=E(Fu=>{"use strict";Object.defineProperty(Fu,"__esModule",{value:!0});Fu.validateKeywordUsage=Fu.validSchemaType=Fu.funcKeywordCode=Fu.macroKeywordCode=void 0;var ta=Kt(),wm=dd(),x1t=Go(),b1t=A1();function E1t(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=Mme(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ta.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Fu.macroKeywordCode=E1t;function _1t(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;v1t(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=Mme(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&Lme(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&Lme(t),A(()=>S1t(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ta._)`await `),b=>n.assign(d,!1).if((0,ta._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ta._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ta._)`${l}.errors`;return n.assign(g,null),h(ta.nil),g}function h(g=e.async?(0,ta._)`await `:ta.nil){let b=c.opts.passContext?wm.default.this:wm.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ta._)`${g}${(0,x1t.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,ta.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}Fu.funcKeywordCode=_1t;function Lme(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ta._)`${n.parentData}[${n.parentDataProperty}]`))}function S1t(t,e){let{gen:r}=t;r.if((0,ta._)`Array.isArray(${e})`,()=>{r.assign(wm.default.vErrors,(0,ta._)`${wm.default.vErrors} === null ? ${e} : ${wm.default.vErrors}.concat(${e})`).assign(wm.default.errors,(0,ta._)`${wm.default.vErrors}.length`),(0,b1t.extendErrors)(t)},()=>t.error())}function v1t({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Mme(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ta.stringify)(r)})}function I1t(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Fu.validSchemaType=I1t;function C1t({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Fu.validateKeywordUsage=C1t});var Fme=E(gp=>{"use strict";Object.defineProperty(gp,"__esModule",{value:!0});gp.extendSubschemaMode=gp.extendSubschemaData=gp.getSubschema=void 0;var Uu=Kt(),$me=Dr();function T1t(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,Uu._)`${t.schemaPath}${(0,Uu.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,Uu._)`${t.schemaPath}${(0,Uu.getProperty)(e)}${(0,Uu.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,$me.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}gp.getSubschema=T1t;function w1t(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,Uu._)`${e.data}${(0,Uu.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Uu.str)`${u}${(0,$me.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Uu._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof Uu.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}gp.extendSubschemaData=w1t;function R1t(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}gp.extendSubschemaMode=R1t});var Ko=E((DPr,Ume)=>{"use strict";Ume.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,s,i;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!t(e[s],r[s]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(i=Object.keys(e),n=i.length,n!==Object.keys(r).length)return!1;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[s]))return!1;for(s=n;s--!==0;){var a=i[s];if(!t(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}});var jme=E((BPr,qme)=>{"use strict";var Ap=qme.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};$R(e,n,s,t,"",t)};Ap.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Ap.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Ap.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Ap.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function $R(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Ap.arrayKeywords)for(var f=0;f<d.length;f++)$R(t,e,r,d[f],s+"/"+l+"/"+f,i,s,l,n,f)}else if(l in Ap.propsKeywords){if(d&&typeof d=="object")for(var p in d)$R(t,e,r,d[p],s+"/"+l+"/"+N1t(p),i,s,l,n,p)}else(l in Ap.keywords||t.allKeys&&!(l in Ap.skipKeywords))&&$R(t,e,r,d,s+"/"+l,i,s,l,n)}r(n,s,i,a,o,c,u)}}function N1t(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var x1=E(Da=>{"use strict";Object.defineProperty(Da,"__esModule",{value:!0});Da.getSchemaRefs=Da.resolveUrl=Da.normalizeId=Da._getFullPath=Da.getFullPath=Da.inlineRef=void 0;var O1t=Dr(),P1t=Ko(),k1t=jme(),D1t=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function B1t(t,e=!0){return typeof t=="boolean"?!0:e===!0?!P8(t):e?Hme(t)<=e:!1}Da.inlineRef=B1t;var L1t=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function P8(t){for(let e in t){if(L1t.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(P8)||typeof r=="object"&&P8(r))return!0}return!1}function Hme(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!D1t.has(r)&&(typeof t[r]=="object"&&(0,O1t.eachItem)(t[r],n=>e+=Hme(n)),e===1/0))return 1/0}return e}function Qme(t,e="",r){r!==!1&&(e=zA(e));let n=t.parse(e);return Gme(t,n)}Da.getFullPath=Qme;function Gme(t,e){return t.serialize(e).split("#")[0]+"#"}Da._getFullPath=Gme;var M1t=/#\/?$/;function zA(t){return t?t.replace(M1t,""):""}Da.normalizeId=zA;function W1t(t,e,r){return r=zA(r),t.resolve(e,r)}Da.resolveUrl=W1t;var $1t=/^[a-z_][-a-z0-9._]*$/i;function F1t(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=zA(t[r]||e),i={"":s},a=Qme(n,s,!1),o={},c=new Set;return k1t(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=zA(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==zA(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!$1t.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!P1t(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Da.getSchemaRefs=F1t});var _1=E(yp=>{"use strict";Object.defineProperty(yp,"__esModule",{value:!0});yp.getData=yp.KeywordCxt=yp.validateFunctionCode=void 0;var Jme=Cme(),Kme=y1(),D8=I8(),FR=y1(),U1t=kme(),E1=Wme(),k8=Fme(),it=Kt(),wt=dd(),q1t=x1(),fd=Dr(),b1=A1();function j1t(t){if(ehe(t)&&(the(t),Zme(t))){G1t(t);return}Xme(t,()=>(0,Jme.topBoolOrEmptySchema)(t))}yp.validateFunctionCode=j1t;function Xme({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,it._)`${wt.default.data}, ${wt.default.valCxt}`,n.$async,()=>{t.code((0,it._)`"use strict"; ${Vme(r,s)}`),Q1t(t,s),t.code(i)}):t.func(e,(0,it._)`${wt.default.data}, ${H1t(s)}`,n.$async,()=>t.code(Vme(r,s)).code(i))}function H1t(t){return(0,it._)`{${wt.default.instancePath}="", ${wt.default.parentData}, ${wt.default.parentDataProperty}, ${wt.default.rootData}=${wt.default.data}${t.dynamicRef?(0,it._)`, ${wt.default.dynamicAnchors}={}`:it.nil}}={}`}function Q1t(t,e){t.if(wt.default.valCxt,()=>{t.var(wt.default.instancePath,(0,it._)`${wt.default.valCxt}.${wt.default.instancePath}`),t.var(wt.default.parentData,(0,it._)`${wt.default.valCxt}.${wt.default.parentData}`),t.var(wt.default.parentDataProperty,(0,it._)`${wt.default.valCxt}.${wt.default.parentDataProperty}`),t.var(wt.default.rootData,(0,it._)`${wt.default.valCxt}.${wt.default.rootData}`),e.dynamicRef&&t.var(wt.default.dynamicAnchors,(0,it._)`${wt.default.valCxt}.${wt.default.dynamicAnchors}`)},()=>{t.var(wt.default.instancePath,(0,it._)`""`),t.var(wt.default.parentData,(0,it._)`undefined`),t.var(wt.default.parentDataProperty,(0,it._)`undefined`),t.var(wt.default.rootData,wt.default.data),e.dynamicRef&&t.var(wt.default.dynamicAnchors,(0,it._)`{}`)})}function G1t(t){let{schema:e,opts:r,gen:n}=t;Xme(t,()=>{r.$comment&&e.$comment&&nhe(t),J1t(t),n.let(wt.default.vErrors,null),n.let(wt.default.errors,0),r.unevaluated&&K1t(t),rhe(t),e_t(t)})}function K1t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,it._)`${r}.evaluated`),e.if((0,it._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,it._)`${t.evaluated}.props`,(0,it._)`undefined`)),e.if((0,it._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,it._)`${t.evaluated}.items`,(0,it._)`undefined`))}function Vme(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,it._)`/*# sourceURL=${r} */`:it.nil}function V1t(t,e){if(ehe(t)&&(the(t),Zme(t))){z1t(t,e);return}(0,Jme.boolOrEmptySchema)(t,e)}function Zme({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function ehe(t){return typeof t.schema!="boolean"}function z1t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&nhe(t),X1t(t),Z1t(t);let i=n.const("_errs",wt.default.errors);rhe(t,i),n.var(e,(0,it._)`${i} === ${wt.default.errors}`)}function the(t){(0,fd.checkUnknownRules)(t),Y1t(t)}function rhe(t,e){if(t.opts.jtd)return zme(t,[],!1,e);let r=(0,Kme.getSchemaTypes)(t.schema),n=(0,Kme.coerceAndCheckDataType)(t,r);zme(t,r,!n,e)}function Y1t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,fd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function J1t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,fd.checkStrictMode)(t,"default is ignored in the schema root")}function X1t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,q1t.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function Z1t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function nhe({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,it._)`${wt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,it.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,it._)`${wt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function e_t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,it._)`${wt.default.errors} === 0`,()=>e.return(wt.default.data),()=>e.throw((0,it._)`new ${s}(${wt.default.vErrors})`)):(e.assign((0,it._)`${n}.errors`,wt.default.vErrors),i.unevaluated&&t_t(t),e.return((0,it._)`${wt.default.errors} === 0`))}function t_t({gen:t,evaluated:e,props:r,items:n}){r instanceof it.Name&&t.assign((0,it._)`${e}.props`,r),n instanceof it.Name&&t.assign((0,it._)`${e}.items`,n)}function zme(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,fd.schemaHasRulesButRef)(i,l))){s.block(()=>ihe(t,"$ref",l.all.$ref.definition));return}c.jtd||r_t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,D8.shouldUseGroup)(i,f)&&(f.type?(s.if((0,FR.checkDataType)(f.type,a,c.strictNumbers)),Yme(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,FR.reportTypeError)(t)),s.endIf()):Yme(t,f),o||s.if((0,it._)`${wt.default.errors} === ${n||0}`))}}function Yme(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,U1t.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,D8.shouldUseRule)(n,i)&&ihe(t,i.keyword,i.definition,e.type)})}function r_t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(n_t(t,e),t.opts.allowUnionTypes||s_t(t,e),i_t(t,t.dataTypes))}function n_t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{she(t.dataTypes,r)||B8(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),o_t(t,e)}}function s_t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&B8(t,"use allowUnionTypes to allow union type keyword")}function i_t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,D8.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>a_t(e,a))&&B8(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function a_t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function she(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function o_t(t,e){let r=[];for(let n of t.dataTypes)she(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function B8(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,fd.checkStrictMode)(t,e,t.opts.strictTypes)}var UR=class{constructor(e,r,n){if((0,E1.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,fd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",ahe(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,E1.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",wt.default.errors))}result(e,r,n){this.failResult((0,it.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,it.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,it._)`${r} !== undefined && (${(0,it.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?b1.reportExtraError:b1.reportError)(this,this.def.error,r)}$dataError(){(0,b1.reportError)(this,this.def.$dataError||b1.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,b1.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=it.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=it.nil,r=it.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,it.or)((0,it._)`${s} === undefined`,r)),e!==it.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==it.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,it.or)(a(),o());function a(){if(n.length){if(!(r instanceof it.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,it._)`${(0,FR.checkDataTypes)(c,r,i.opts.strictNumbers,FR.DataType.Wrong)}`}return it.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,it._)`!${c}(${r})`}return it.nil}}subschema(e,r){let n=(0,k8.getSubschema)(this.it,e);(0,k8.extendSubschemaData)(n,this.it,e),(0,k8.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return V1t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=fd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=fd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,it.Name)),!0}};yp.KeywordCxt=UR;function ihe(t,e,r,n){let s=new UR(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,E1.funcKeywordCode)(s,r):"macro"in r?(0,E1.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,E1.funcKeywordCode)(s,r)}var c_t=/^\/(?:[^~]|~0|~1)*$/,u_t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function ahe(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return wt.default.rootData;if(t[0]==="/"){if(!c_t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=wt.default.rootData}else{let u=u_t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,it._)`${i}${(0,it.getProperty)((0,fd.unescapeJsonPointer)(u))}`,a=(0,it._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}yp.getData=ahe});var qR=E(M8=>{"use strict";Object.defineProperty(M8,"__esModule",{value:!0});var L8=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};M8.default=L8});var S1=E(F8=>{"use strict";Object.defineProperty(F8,"__esModule",{value:!0});var W8=x1(),$8=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,W8.resolveUrl)(e,r,n),this.missingSchema=(0,W8.normalizeId)((0,W8.getFullPath)(e,this.missingRef))}};F8.default=$8});var HR=E(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});Vo.resolveSchema=Vo.getCompilingSchema=Vo.resolveRef=Vo.compileSchema=Vo.SchemaEnv=void 0;var Uc=Kt(),l_t=qR(),Rm=dd(),qc=x1(),ohe=Dr(),d_t=_1(),YA=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,qc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Vo.SchemaEnv=YA;function q8(t){let e=che.call(this,t);if(e)return e;let r=(0,qc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Uc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:l_t.default,code:(0,Uc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Rm.default.data,parentData:Rm.default.parentData,parentDataProperty:Rm.default.parentDataProperty,dataNames:[Rm.default.data],dataPathArr:[Uc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Uc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Uc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Uc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,d_t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Rm.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Rm.default.self}`,`${Rm.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Uc.Name?void 0:m,items:h instanceof Uc.Name?void 0:h,dynamicProps:m instanceof Uc.Name,dynamicItems:h instanceof Uc.Name},p.source&&(p.source.evaluated=(0,Uc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}Vo.compileSchema=q8;function f_t(t,e,r){var n;r=(0,qc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=h_t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new YA({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=p_t.call(this,i)}Vo.resolveRef=f_t;function p_t(t){return(0,qc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:q8.call(this,t)}function che(t){for(let e of this._compilations)if(m_t(e,t))return e}Vo.getCompilingSchema=che;function m_t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function h_t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||jR.call(this,t,e)}function jR(t,e){let r=this.opts.uriResolver.parse(e),n=(0,qc._getFullPath)(this.opts.uriResolver,r),s=(0,qc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return U8.call(this,r,t);let i=(0,qc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=jR.call(this,t,a);return typeof o?.schema!="object"?void 0:U8.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||q8.call(this,a),i===(0,qc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,qc.resolveUrl)(this.opts.uriResolver,s,u)),new YA({schema:o,schemaId:c,root:t,baseId:s})}return U8.call(this,r,a)}}Vo.resolveSchema=jR;var g_t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function U8(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,ohe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!g_t.has(o)&&u&&(e=(0,qc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,ohe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,qc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=jR.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new YA({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var uhe=E((UPr,A_t)=>{A_t.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var H8=E((qPr,phe)=>{"use strict";var y_t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),dhe=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function j8(t){let e="",r=0,n=0;for(n=0;n<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 x_t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function lhe(t){return t.length=0,!0}function b_t(t,e,r){if(t.length){let n=j8(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function E_t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=b_t;for(let c=0;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=lhe}else{s.push(u);continue}}return s.length&&(o===lhe?r.zone=s.join(""):a?n.push(s.join("")):n.push(j8(s))),r.address=n.join(""),r}function fhe(t){if(__t(t,":")<2)return{host:t,isIPV6:!1};let e=E_t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function __t(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function S_t(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 v_t(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 I_t(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!dhe(r)){let n=fhe(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}phe.exports={nonSimpleDomain:x_t,recomposeAuthority:I_t,normalizeComponentEncoding:v_t,removeDotSegments:S_t,isIPv4:dhe,isUUID:y_t,normalizeIPv6:fhe,stringArrayToHexStripped:j8}});var yhe=E((jPr,Ahe)=>{"use strict";var{isUUID:C_t}=H8(),T_t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,w_t=["http","https","ws","wss","urn","urn:uuid"];function R_t(t){return w_t.indexOf(t)!==-1}function Q8(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function mhe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function hhe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function N_t(t){return t.secure=Q8(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function O_t(t){if((t.port===(Q8(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function P_t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(T_t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=G8(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function k_t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=G8(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function D_t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!C_t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function B_t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var ghe={scheme:"http",domainHost:!0,parse:mhe,serialize:hhe},L_t={scheme:"https",domainHost:ghe.domainHost,parse:mhe,serialize:hhe},QR={scheme:"ws",domainHost:!0,parse:N_t,serialize:O_t},M_t={scheme:"wss",domainHost:QR.domainHost,parse:QR.parse,serialize:QR.serialize},W_t={scheme:"urn",parse:P_t,serialize:k_t,skipNormalize:!0},$_t={scheme:"urn:uuid",parse:D_t,serialize:B_t,skipNormalize:!0},GR={http:ghe,https:L_t,ws:QR,wss:M_t,urn:W_t,"urn:uuid":$_t};Object.setPrototypeOf(GR,null);function G8(t){return t&&(GR[t]||GR[t.toLowerCase()])||void 0}Ahe.exports={wsIsSecure:Q8,SCHEMES:GR,isValidSchemeName:R_t,getSchemeHandler:G8}});var Ehe=E((HPr,VR)=>{"use strict";var{normalizeIPv6:F_t,removeDotSegments:v1,recomposeAuthority:U_t,normalizeComponentEncoding:KR,isIPv4:q_t,nonSimpleDomain:j_t}=H8(),{SCHEMES:H_t,getSchemeHandler:xhe}=yhe();function Q_t(t,e){return typeof t=="string"?t=qu(pd(t,e),e):typeof t=="object"&&(t=pd(qu(t,e),e)),t}function G_t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=bhe(pd(t,n),pd(e,n),n,!0);return n.skipEscape=!0,qu(s,n)}function bhe(t,e,r,n){let s={};return n||(t=pd(qu(t,r),r),e=pd(qu(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=v1(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=v1(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=v1(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=v1(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function K_t(t,e,r){return typeof t=="string"?(t=unescape(t),t=qu(KR(pd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=qu(KR(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=qu(KR(pd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=qu(KR(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function qu(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=xhe(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=U_t(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=v1(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var V_t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function pd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(V_t);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(q_t(n.host)===!1){let c=F_t(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=xhe(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&j_t(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var K8={SCHEMES:H_t,normalize:Q_t,resolve:G_t,resolveComponent:bhe,equal:K_t,serialize:qu,parse:pd};VR.exports=K8;VR.exports.default=K8;VR.exports.fastUri=K8});var She=E(V8=>{"use strict";Object.defineProperty(V8,"__esModule",{value:!0});var _he=Ehe();_he.code='require("ajv/dist/runtime/uri").default';V8.default=_he});var Ohe=E(li=>{"use strict";Object.defineProperty(li,"__esModule",{value:!0});li.CodeGen=li.Name=li.nil=li.stringify=li.str=li._=li.KeywordCxt=void 0;var z_t=_1();Object.defineProperty(li,"KeywordCxt",{enumerable:!0,get:function(){return z_t.KeywordCxt}});var JA=Kt();Object.defineProperty(li,"_",{enumerable:!0,get:function(){return JA._}});Object.defineProperty(li,"str",{enumerable:!0,get:function(){return JA.str}});Object.defineProperty(li,"stringify",{enumerable:!0,get:function(){return JA.stringify}});Object.defineProperty(li,"nil",{enumerable:!0,get:function(){return JA.nil}});Object.defineProperty(li,"Name",{enumerable:!0,get:function(){return JA.Name}});Object.defineProperty(li,"CodeGen",{enumerable:!0,get:function(){return JA.CodeGen}});var Y_t=qR(),whe=S1(),J_t=v8(),I1=HR(),X_t=Kt(),C1=x1(),zR=y1(),Y8=Dr(),vhe=uhe(),Z_t=She(),Rhe=(t,e)=>new RegExp(t,e);Rhe.code="new RegExp";var eSt=["removeAdditional","useDefaults","coerceTypes"],tSt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),rSt={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},nSt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Ihe=200;function sSt(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,I,R,w,N;let P=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Rhe,L=(s=t.uriResolver)!==null&&s!==void 0?s:Z_t.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Ihe,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:Ihe,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var T1=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...sSt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new X_t.ValueScope({scope:{},prefixes:tSt,es5:r,lines:n}),this.logger=lSt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,J_t.getRules)(),Che.call(this,rSt,e,"NOT SUPPORTED"),Che.call(this,nSt,e,"DEPRECATED","warn"),this._metaOpts=cSt.call(this),e.formats&&aSt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&oSt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),iSt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=vhe;n==="id"&&(s={...vhe},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof whe.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,C1.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=The.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new I1.SchemaEnv({schema:{},schemaId:n});if(r=I1.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=The.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,C1.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(fSt.call(this,n,r),!r)return(0,Y8.eachItem)(n,i=>z8.call(this,i)),this;mSt.call(this,r);let s={...r,type:(0,zR.getJSONTypes)(r.type),schemaType:(0,zR.getJSONTypes)(r.schemaType)};return(0,Y8.eachItem)(n,s.type.length===0?i=>z8.call(this,i,s):i=>s.type.forEach(a=>z8.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=Nhe(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,C1.normalizeId)(a||n);let u=C1.getSchemaRefs.call(this,e,n);return c=new I1.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):I1.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{I1.compileSchema.call(this,e)}finally{this.opts=r}}};T1.ValidationError=Y_t.default;T1.MissingRefError=whe.default;li.default=T1;function Che(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function The(t){return t=(0,C1.normalizeId)(t),this.schemas[t]||this.refs[t]}function iSt(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function aSt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function oSt(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function cSt(){let t={...this.opts};for(let e of eSt)delete t[e];return t}var uSt={log(){},warn(){},error(){}};function lSt(t){if(t===!1)return uSt;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var dSt=/^[a-z_$][a-z0-9_$:-]*$/i;function fSt(t,e){let{RULES:r}=this;if((0,Y8.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!dSt.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function z8(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,zR.getJSONTypes)(e.type),schemaType:(0,zR.getJSONTypes)(e.schemaType)}};e.before?pSt.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function pSt(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function mSt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Nhe(e)),t.validateSchema=this.compile(e,!0))}var hSt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Nhe(t){return{anyOf:[t,hSt]}}});var Phe=E(J8=>{"use strict";Object.defineProperty(J8,"__esModule",{value:!0});var gSt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};J8.default=gSt});var Lhe=E(Nm=>{"use strict";Object.defineProperty(Nm,"__esModule",{value:!0});Nm.callRef=Nm.getValidate=void 0;var ASt=S1(),khe=Go(),Ba=Kt(),XA=dd(),Dhe=HR(),YR=Dr(),ySt={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=Dhe.resolveRef.call(c,u,s,r);if(l===void 0)throw new ASt.default(n.opts.uriResolver,s,r);if(l instanceof Dhe.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return JR(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return JR(t,(0,Ba._)`${m}.validate`,u,u.$async)}function f(m){let h=Bhe(t,m);JR(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,Ba.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:Ba.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function Bhe(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ba._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Nm.getValidate=Bhe;function JR(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?XA.default.this:Ba.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,Ba._)`await ${(0,khe.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,Ba._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,khe.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,Ba._)`${m}.errors`;s.assign(XA.default.vErrors,(0,Ba._)`${XA.default.vErrors} === null ? ${h} : ${XA.default.vErrors}.concat(${h})`),s.assign(XA.default.errors,(0,Ba._)`${XA.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=YR.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,Ba._)`${m}.evaluated.props`);i.props=YR.mergeEvaluated.props(s,g,i.props,Ba.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=YR.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,Ba._)`${m}.evaluated.items`);i.items=YR.mergeEvaluated.items(s,g,i.items,Ba.Name)}}}Nm.callRef=JR;Nm.default=ySt});var Mhe=E(X8=>{"use strict";Object.defineProperty(X8,"__esModule",{value:!0});var xSt=Phe(),bSt=Lhe(),ESt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",xSt.default,bSt.default];X8.default=ESt});var Whe=E(Z8=>{"use strict";Object.defineProperty(Z8,"__esModule",{value:!0});var XR=Kt(),xp=XR.operators,ZR={maximum:{okStr:"<=",ok:xp.LTE,fail:xp.GT},minimum:{okStr:">=",ok:xp.GTE,fail:xp.LT},exclusiveMaximum:{okStr:"<",ok:xp.LT,fail:xp.GTE},exclusiveMinimum:{okStr:">",ok:xp.GT,fail:xp.LTE}},_St={message:({keyword:t,schemaCode:e})=>(0,XR.str)`must be ${ZR[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,XR._)`{comparison: ${ZR[t].okStr}, limit: ${e}}`},SSt={keyword:Object.keys(ZR),type:"number",schemaType:"number",$data:!0,error:_St,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,XR._)`${r} ${ZR[e].fail} ${n} || isNaN(${r})`)}};Z8.default=SSt});var $he=E(eW=>{"use strict";Object.defineProperty(eW,"__esModule",{value:!0});var w1=Kt(),vSt={message:({schemaCode:t})=>(0,w1.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,w1._)`{multipleOf: ${t}}`},ISt={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:vSt,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,w1._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,w1._)`${a} !== parseInt(${a})`;t.fail$data((0,w1._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};eW.default=ISt});var Uhe=E(tW=>{"use strict";Object.defineProperty(tW,"__esModule",{value:!0});function Fhe(t){let e=t.length,r=0,n=0,s;for(;n<e;)r++,s=t.charCodeAt(n++),s>=55296&&s<=56319&&n<e&&(s=t.charCodeAt(n),(s&64512)===56320&&n++);return r}tW.default=Fhe;Fhe.code='require("ajv/dist/runtime/ucs2length").default'});var qhe=E(rW=>{"use strict";Object.defineProperty(rW,"__esModule",{value:!0});var Om=Kt(),CSt=Dr(),TSt=Uhe(),wSt={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Om.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Om._)`{limit: ${t}}`},RSt={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:wSt,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?Om.operators.GT:Om.operators.LT,a=s.opts.unicode===!1?(0,Om._)`${r}.length`:(0,Om._)`${(0,CSt.useFunc)(t.gen,TSt.default)}(${r})`;t.fail$data((0,Om._)`${a} ${i} ${n}`)}};rW.default=RSt});var jhe=E(nW=>{"use strict";Object.defineProperty(nW,"__esModule",{value:!0});var NSt=Go(),eN=Kt(),OSt={message:({schemaCode:t})=>(0,eN.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,eN._)`{pattern: ${t}}`},PSt={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:OSt,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,eN._)`(new RegExp(${s}, ${a}))`:(0,NSt.usePattern)(t,n);t.fail$data((0,eN._)`!${o}.test(${e})`)}};nW.default=PSt});var Hhe=E(sW=>{"use strict";Object.defineProperty(sW,"__esModule",{value:!0});var R1=Kt(),kSt={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,R1.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,R1._)`{limit: ${t}}`},DSt={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:kSt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?R1.operators.GT:R1.operators.LT;t.fail$data((0,R1._)`Object.keys(${r}).length ${s} ${n}`)}};sW.default=DSt});var Qhe=E(iW=>{"use strict";Object.defineProperty(iW,"__esModule",{value:!0});var N1=Go(),O1=Kt(),BSt=Dr(),LSt={message:({params:{missingProperty:t}})=>(0,O1.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,O1._)`{missingProperty: ${t}}`},MSt={keyword:"required",type:"object",schemaType:"array",$data:!0,error:LSt,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,BSt.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(O1.nil,d);else for(let p of r)(0,N1.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,N1.checkMissingProp)(t,r,p)),(0,N1.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,N1.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,N1.propertyInData)(e,s,p,o.ownProperties)),e.if((0,O1.not)(m),()=>{t.error(),e.break()})},O1.nil)}}};iW.default=MSt});var Ghe=E(aW=>{"use strict";Object.defineProperty(aW,"__esModule",{value:!0});var P1=Kt(),WSt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,P1.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,P1._)`{limit: ${t}}`},$St={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:WSt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?P1.operators.GT:P1.operators.LT;t.fail$data((0,P1._)`${r}.length ${s} ${n}`)}};aW.default=$St});var k1=E(oW=>{"use strict";Object.defineProperty(oW,"__esModule",{value:!0});var Khe=Ko();Khe.code='require("ajv/dist/runtime/equal").default';oW.default=Khe});var Vhe=E(uW=>{"use strict";Object.defineProperty(uW,"__esModule",{value:!0});var cW=y1(),di=Kt(),FSt=Dr(),USt=k1(),qSt={message:({params:{i:t,j:e}})=>(0,di.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,di._)`{i: ${t}, j: ${e}}`},jSt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:qSt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,cW.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,di._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,di._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,di._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,cW.checkDataTypes)(u,A,o.opts.strictNumbers,cW.DataType.Wrong),b=e.const("indices",(0,di._)`{}`);e.for((0,di._)`;${m}--;`,()=>{e.let(A,(0,di._)`${r}[${m}]`),e.if(g,(0,di._)`continue`),u.length>1&&e.if((0,di._)`typeof ${A} == "string"`,(0,di._)`${A} += "_"`),e.if((0,di._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,di._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,di._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,FSt.useFunc)(e,USt.default),g=e.name("outer");e.label(g).for((0,di._)`;${m}--;`,()=>e.for((0,di._)`${h} = ${m}; ${h}--;`,()=>e.if((0,di._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};uW.default=jSt});var zhe=E(dW=>{"use strict";Object.defineProperty(dW,"__esModule",{value:!0});var lW=Kt(),HSt=Dr(),QSt=k1(),GSt={message:"must be equal to constant",params:({schemaCode:t})=>(0,lW._)`{allowedValue: ${t}}`},KSt={keyword:"const",$data:!0,error:GSt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,lW._)`!${(0,HSt.useFunc)(e,QSt.default)}(${r}, ${s})`):t.fail((0,lW._)`${i} !== ${r}`)}};dW.default=KSt});var Yhe=E(fW=>{"use strict";Object.defineProperty(fW,"__esModule",{value:!0});var D1=Kt(),VSt=Dr(),zSt=k1(),YSt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,D1._)`{allowedValues: ${t}}`},JSt={keyword:"enum",schemaType:"array",$data:!0,error:YSt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,VSt.useFunc)(e,zSt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,D1.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,D1._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,D1._)`${u()}(${r}, ${p}[${m}])`:(0,D1._)`${r} === ${h}`}}};fW.default=JSt});var Jhe=E(pW=>{"use strict";Object.defineProperty(pW,"__esModule",{value:!0});var XSt=Whe(),ZSt=$he(),evt=qhe(),tvt=jhe(),rvt=Hhe(),nvt=Qhe(),svt=Ghe(),ivt=Vhe(),avt=zhe(),ovt=Yhe(),cvt=[XSt.default,ZSt.default,evt.default,tvt.default,rvt.default,nvt.default,svt.default,ivt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},avt.default,ovt.default];pW.default=cvt});var hW=E(B1=>{"use strict";Object.defineProperty(B1,"__esModule",{value:!0});B1.validateAdditionalItems=void 0;var Pm=Kt(),mW=Dr(),uvt={message:({params:{len:t}})=>(0,Pm.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Pm._)`{limit: ${t}}`},lvt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:uvt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,mW.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Xhe(t,n)}};function Xhe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,Pm._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Pm._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,mW.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Pm._)`${o} <= ${e.length}`);r.if((0,Pm.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:mW.Type.Num},u),a.allErrors||r.if((0,Pm.not)(u),()=>r.break())})}}B1.validateAdditionalItems=Xhe;B1.default=lvt});var gW=E(L1=>{"use strict";Object.defineProperty(L1,"__esModule",{value:!0});L1.validateTuple=void 0;var Zhe=Kt(),tN=Dr(),dvt=Go(),fvt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return ege(t,"additionalItems",e);r.items=!0,!(0,tN.alwaysValidSchema)(r,e)&&t.ok((0,dvt.validateArray)(t))}};function ege(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=tN.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,Zhe._)`${i}.length`);r.forEach((d,f)=>{(0,tN.alwaysValidSchema)(o,d)||(n.if((0,Zhe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,tN.checkStrictMode)(o,A,f.strictTuples)}}}L1.validateTuple=ege;L1.default=fvt});var tge=E(AW=>{"use strict";Object.defineProperty(AW,"__esModule",{value:!0});var pvt=gW(),mvt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,pvt.validateTuple)(t,"items")};AW.default=mvt});var nge=E(yW=>{"use strict";Object.defineProperty(yW,"__esModule",{value:!0});var rge=Kt(),hvt=Dr(),gvt=Go(),Avt=hW(),yvt={message:({params:{len:t}})=>(0,rge.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,rge._)`{limit: ${t}}`},xvt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:yvt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,hvt.alwaysValidSchema)(n,e)&&(s?(0,Avt.validateAdditionalItems)(t,s):t.ok((0,gvt.validateArray)(t)))}};yW.default=xvt});var sge=E(xW=>{"use strict";Object.defineProperty(xW,"__esModule",{value:!0});var zo=Kt(),rN=Dr(),bvt={message:({params:{min:t,max:e}})=>e===void 0?(0,zo.str)`must contain at least ${t} valid item(s)`:(0,zo.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,zo._)`{minContains: ${t}}`:(0,zo._)`{minContains: ${t}, maxContains: ${e}}`},Evt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:bvt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,zo._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,rN.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,rN.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,rN.alwaysValidSchema)(i,r)){let h=(0,zo._)`${l} >= ${a}`;o!==void 0&&(h=(0,zo._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,zo._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:rN.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,zo._)`${h}++`),o===void 0?e.if((0,zo._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,zo._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,zo._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};xW.default=Evt});var oge=E(ju=>{"use strict";Object.defineProperty(ju,"__esModule",{value:!0});ju.validateSchemaDeps=ju.validatePropertyDeps=ju.error=void 0;var bW=Kt(),_vt=Dr(),M1=Go();ju.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,bW.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,bW._)`{property: ${t},
missingProperty: ${n},
depsCount: ${e},
deps: ${r}}`};var Svt={keyword:"dependencies",type:"object",schemaType:"object",error:ju.error,code(t){let[e,r]=vvt(t);ige(t,e),age(t,r)}};function vvt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function ige(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,M1.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,M1.checkReportMissingProp)(t,u)}):(r.if((0,bW._)`${c} && (${(0,M1.checkMissingProp)(t,o,i)})`),(0,M1.reportMissingProp)(t,i),r.else())}}ju.validatePropertyDeps=ige;function age(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,_vt.alwaysValidSchema)(i,e[o])||(r.if((0,M1.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}ju.validateSchemaDeps=age;ju.default=Svt});var uge=E(EW=>{"use strict";Object.defineProperty(EW,"__esModule",{value:!0});var cge=Kt(),Ivt=Dr(),Cvt={message:"property name must be valid",params:({params:t})=>(0,cge._)`{propertyName: ${t.propertyName}}`},Tvt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Cvt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,Ivt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,cge.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};EW.default=Tvt});var SW=E(_W=>{"use strict";Object.defineProperty(_W,"__esModule",{value:!0});var nN=Go(),jc=Kt(),wvt=dd(),sN=Dr(),Rvt={message:"must NOT have additional properties",params:({params:t})=>(0,jc._)`{additionalProperty: ${t.additionalProperty}}`},Nvt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Rvt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,sN.alwaysValidSchema)(a,r))return;let u=(0,nN.allSchemaProperties)(n.properties),l=(0,nN.allSchemaProperties)(n.patternProperties);d(),t.ok((0,jc._)`${i} === ${wvt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,sN.schemaRefOrVal)(a,n.properties,"properties");g=(0,nN.isOwnProperty)(e,b,A)}else u.length?g=(0,jc.or)(...u.map(b=>(0,jc._)`${A} === ${b}`)):g=jc.nil;return l.length&&(g=(0,jc.or)(g,...l.map(b=>(0,jc._)`${(0,nN.usePattern)(t,b)}.test(${A})`))),(0,jc.not)(g)}function p(A){e.code((0,jc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,sN.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,jc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,jc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:sN.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};_W.default=Nvt});var fge=E(IW=>{"use strict";Object.defineProperty(IW,"__esModule",{value:!0});var Ovt=_1(),lge=Go(),vW=Dr(),dge=SW(),Pvt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&dge.default.code(new Ovt.KeywordCxt(i,dge.default,"additionalProperties"));let a=(0,lge.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=vW.mergeEvaluated.props(e,(0,vW.toHash)(a),i.props));let o=a.filter(d=>!(0,vW.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,lge.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};IW.default=Pvt});var gge=E(CW=>{"use strict";Object.defineProperty(CW,"__esModule",{value:!0});var pge=Go(),iN=Kt(),mge=Dr(),hge=Dr(),kvt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,pge.allSchemaProperties)(r),c=o.filter(h=>(0,mge.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof iN.Name)&&(i.props=(0,hge.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,mge.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,iN._)`${(0,pge.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:hge.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,iN._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,iN.not)(l),()=>e.break())})})}}};CW.default=kvt});var Age=E(TW=>{"use strict";Object.defineProperty(TW,"__esModule",{value:!0});var Dvt=Dr(),Bvt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Dvt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};TW.default=Bvt});var yge=E(wW=>{"use strict";Object.defineProperty(wW,"__esModule",{value:!0});var Lvt=Go(),Mvt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Lvt.validateUnion,error:{message:"must match a schema in anyOf"}};wW.default=Mvt});var xge=E(RW=>{"use strict";Object.defineProperty(RW,"__esModule",{value:!0});var aN=Kt(),Wvt=Dr(),$vt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,aN._)`{passingSchemas: ${t.passing}}`},Fvt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:$vt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,Wvt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,aN._)`${c} && ${a}`).assign(a,!1).assign(o,(0,aN._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,aN.Name)})})}}};RW.default=Fvt});var bge=E(NW=>{"use strict";Object.defineProperty(NW,"__esModule",{value:!0});var Uvt=Dr(),qvt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,Uvt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};NW.default=qvt});var Sge=E(OW=>{"use strict";Object.defineProperty(OW,"__esModule",{value:!0});var oN=Kt(),_ge=Dr(),jvt={message:({params:t})=>(0,oN.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,oN._)`{failingKeyword: ${t.ifClause}}`},Hvt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:jvt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,_ge.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Ege(n,"then"),i=Ege(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,oN.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,oN._)`${l}`):t.setParams({ifClause:l})}}}};function Ege(t,e){let r=t.schema[e];return r!==void 0&&!(0,_ge.alwaysValidSchema)(t,r)}OW.default=Hvt});var vge=E(PW=>{"use strict";Object.defineProperty(PW,"__esModule",{value:!0});var Qvt=Dr(),Gvt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Qvt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};PW.default=Gvt});var Ige=E(kW=>{"use strict";Object.defineProperty(kW,"__esModule",{value:!0});var Kvt=hW(),Vvt=tge(),zvt=gW(),Yvt=nge(),Jvt=sge(),Xvt=oge(),Zvt=uge(),eIt=SW(),tIt=fge(),rIt=gge(),nIt=Age(),sIt=yge(),iIt=xge(),aIt=bge(),oIt=Sge(),cIt=vge();function uIt(t=!1){let e=[nIt.default,sIt.default,iIt.default,aIt.default,oIt.default,cIt.default,Zvt.default,eIt.default,Xvt.default,tIt.default,rIt.default];return t?e.push(Vvt.default,Yvt.default):e.push(Kvt.default,zvt.default),e.push(Jvt.default),e}kW.default=uIt});var Cge=E(DW=>{"use strict";Object.defineProperty(DW,"__esModule",{value:!0});var cs=Kt(),lIt={message:({schemaCode:t})=>(0,cs.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,cs._)`{format: ${t}}`},dIt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:lIt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,cs._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,cs._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,cs._)`${h}.type || "string"`).assign(g,(0,cs._)`${h}.validate`),()=>r.assign(A,(0,cs._)`"string"`).assign(g,h)),t.fail$data((0,cs.or)(b(),y()));function b(){return c.strictSchema===!1?cs.nil:(0,cs._)`${a} && !${g}`}function y(){let x=l.$async?(0,cs._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,cs._)`${g}(${n})`,v=(0,cs._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,cs._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function y(v){let I=v instanceof RegExp?(0,cs.regexpCode)(v):c.code.formats?(0,cs._)`${c.code.formats}${(0,cs.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:I});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,cs._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,cs._)`await ${g}(${n})`}return typeof A=="function"?(0,cs._)`${g}(${n})`:(0,cs._)`${g}.test(${n})`}}}};DW.default=dIt});var Tge=E(BW=>{"use strict";Object.defineProperty(BW,"__esModule",{value:!0});var fIt=Cge(),pIt=[fIt.default];BW.default=pIt});var wge=E(ZA=>{"use strict";Object.defineProperty(ZA,"__esModule",{value:!0});ZA.contentVocabulary=ZA.metadataVocabulary=void 0;ZA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];ZA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Nge=E(LW=>{"use strict";Object.defineProperty(LW,"__esModule",{value:!0});var mIt=Mhe(),hIt=Jhe(),gIt=Ige(),AIt=Tge(),Rge=wge(),yIt=[mIt.default,hIt.default,(0,gIt.default)(),AIt.default,Rge.metadataVocabulary,Rge.contentVocabulary];LW.default=yIt});var Pge=E(cN=>{"use strict";Object.defineProperty(cN,"__esModule",{value:!0});cN.DiscrError=void 0;var Oge;(function(t){t.Tag="tag",t.Mapping="mapping"})(Oge||(cN.DiscrError=Oge={}))});var Dge=E(WW=>{"use strict";Object.defineProperty(WW,"__esModule",{value:!0});var ey=Kt(),MW=Pge(),kge=HR(),xIt=S1(),bIt=Dr(),EIt={message:({params:{discrError:t,tagName:e}})=>t===MW.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,ey._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},_It={keyword:"discriminator",type:"object",schemaType:"object",error:EIt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,ey._)`${r}${(0,ey.getProperty)(o)}`);e.if((0,ey._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:MW.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,ey._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:MW.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,ey.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x<a.length;x++){let v=a[x];if(v?.$ref&&!(0,bIt.schemaHasRulesButRef)(v,i.self.RULES)){let R=v.$ref;if(v=kge.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,R),v instanceof kge.SchemaEnv&&(v=v.schema),v===void 0)throw new xIt.default(i.opts.uriResolver,i.baseId,R)}let I=(p=v?.properties)===null||p===void 0?void 0:p[o];if(typeof I!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${o}"`);A=A&&(h||g(v)),b(I,x)}if(!A)throw new Error(`discriminator: "${o}" must be required`);return m;function g({required:x}){return Array.isArray(x)&&x.includes(o)}function b(x,v){if(x.const)y(x.const,v);else if(x.enum)for(let I of x.enum)y(I,v);else throw new Error(`discriminator: "properties/${o}" must have "const" or "enum"`)}function y(x,v){if(typeof x!="string"||x in m)throw new Error(`discriminator: "${o}" values must be unique strings`);m[x]=v}}}};WW.default=_It});var Bge=E((Pkr,SIt)=>{SIt.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var FW=E((Nn,$W)=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.MissingRefError=Nn.ValidationError=Nn.CodeGen=Nn.Name=Nn.nil=Nn.stringify=Nn.str=Nn._=Nn.KeywordCxt=Nn.Ajv=void 0;var vIt=Ohe(),IIt=Nge(),CIt=Dge(),Lge=Bge(),TIt=["/properties"],uN="http://json-schema.org/draft-07/schema",ty=class extends vIt.default{_addVocabularies(){super._addVocabularies(),IIt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(CIt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Lge,TIt):Lge;this.addMetaSchema(e,uN,!1),this.refs["http://json-schema.org/schema"]=uN}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(uN)?uN:void 0)}};Nn.Ajv=ty;$W.exports=Nn=ty;$W.exports.Ajv=ty;Object.defineProperty(Nn,"__esModule",{value:!0});Nn.default=ty;var wIt=_1();Object.defineProperty(Nn,"KeywordCxt",{enumerable:!0,get:function(){return wIt.KeywordCxt}});var ry=Kt();Object.defineProperty(Nn,"_",{enumerable:!0,get:function(){return ry._}});Object.defineProperty(Nn,"str",{enumerable:!0,get:function(){return ry.str}});Object.defineProperty(Nn,"stringify",{enumerable:!0,get:function(){return ry.stringify}});Object.defineProperty(Nn,"nil",{enumerable:!0,get:function(){return ry.nil}});Object.defineProperty(Nn,"Name",{enumerable:!0,get:function(){return ry.Name}});Object.defineProperty(Nn,"CodeGen",{enumerable:!0,get:function(){return ry.CodeGen}});var RIt=qR();Object.defineProperty(Nn,"ValidationError",{enumerable:!0,get:function(){return RIt.default}});var NIt=S1();Object.defineProperty(Nn,"MissingRefError",{enumerable:!0,get:function(){return NIt.default}})});var Wge=E((kkr,Mge)=>{"use strict";var OIt={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};Mge.exports={HEX:OIt}});var Gge=E((Dkr,Qge)=>{"use strict";var{HEX:PIt}=Wge();function qge(t){if(Hge(t,".")<3)return{host:t,isIPV4:!1};let e=t.match(/^(\b[01]?\d{1,2}|\b2[0-4]\d|\b25[0-5])(\.([01]?\d{1,2}|2[0-4]\d|25[0-5])){3}$/u)||[],[r]=e;return r?{host:DIt(r,"."),isIPV4:!0}:{host:t,isIPV4:!1}}function UW(t){let e="",r=!0;for(let n of t){if(n!=="0"&&r===!0&&(r=!1),PIt[n]===void 0)return;r||(e+=n)}return e}function kIt(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=!1;function c(){if(s.length){if(i===!1){let u=UW(s.join(""));if(u!==void 0)n.push(u);else return r.error=!0,!1}s.length=0}return!0}for(let u=0;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(UW(s.join("")))),r.address=n.join(""),r}function jge(t,e={}){if(Hge(t,":")<2)return{host:t,isIPV6:!1};let r=kIt(t);if(r.error)return{host:t,isIPV6:!1};{let n=r.address,s=r.address;return r.zone&&(n+="%"+r.zone,s+="%25"+r.zone),{host:n,escapedHost:s,isIPV6:!0}}}function DIt(t,e){let r="",n=!0,s=t.length;for(let i=0;i<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 Hge(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}var $ge=/^\.\.?\//u,Fge=/^\/\.(?:\/|$)/u,Uge=/^\/\.\.(?:\/|$)/u,BIt=/^\/?(?:.|\n)*?(?=\/|$)/u;function LIt(t){let e=[];for(;t.length;)if(t.match($ge))t=t.replace($ge,"");else if(t.match(Fge))t=t.replace(Fge,"/");else if(t.match(Uge))t=t.replace(Uge,"/"),e.pop();else if(t==="."||t==="..")t="";else{let r=t.match(BIt);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 MIt(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 WIt(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=qge(n);if(s.isIPV4)n=s.host;else{let i=jge(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}Qge.exports={recomposeAuthority:WIt,normalizeComponentEncoding:MIt,removeDotSegments:LIt,normalizeIPv4:qge,normalizeIPv6:jge,stringToHexStripped:UW}});var Xge=E((Bkr,Jge)=>{"use strict";var $It=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,FIt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function Kge(t){return typeof t.secure=="boolean"?t.secure:String(t.scheme).toLowerCase()==="wss"}function Vge(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function zge(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function UIt(t){return t.secure=Kge(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function qIt(t){if((t.port===(Kge(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function jIt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(FIt);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=qW[s];t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function HIt(t,e){let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=qW[s];i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function QIt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!$It.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function GIt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Yge={scheme:"http",domainHost:!0,parse:Vge,serialize:zge},KIt={scheme:"https",domainHost:Yge.domainHost,parse:Vge,serialize:zge},lN={scheme:"ws",domainHost:!0,parse:UIt,serialize:qIt},VIt={scheme:"wss",domainHost:lN.domainHost,parse:lN.parse,serialize:lN.serialize},zIt={scheme:"urn",parse:jIt,serialize:HIt,skipNormalize:!0},YIt={scheme:"urn:uuid",parse:QIt,serialize:GIt,skipNormalize:!0},qW={http:Yge,https:KIt,ws:lN,wss:VIt,urn:zIt,"urn:uuid":YIt};Jge.exports=qW});var HW=E((Lkr,fN)=>{"use strict";var{normalizeIPv6:JIt,normalizeIPv4:XIt,removeDotSegments:W1,recomposeAuthority:ZIt,normalizeComponentEncoding:dN}=Gge(),Zge=Xge();function eCt(t,e){return typeof t=="string"?t=Hu(md(t,e),e):typeof t=="object"&&(t=md(Hu(t,e),e)),t}function tCt(t,e,r){let n=Object.assign({scheme:"null"},r),s=eAe(md(t,n),md(e,n),n,!0);return Hu(s,{...n,skipEscape:!0})}function eAe(t,e,r,n){let s={};return n||(t=md(Hu(t,r),r),e=md(Hu(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=W1(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=W1(e.path||""),s.query=e.query):(e.path?(e.path.charAt(0)==="/"?s.path=W1(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=W1(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function rCt(t,e,r){return typeof t=="string"?(t=unescape(t),t=Hu(dN(md(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Hu(dN(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Hu(dN(md(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Hu(dN(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Hu(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=Zge[(n.scheme||r.scheme||"").toLowerCase()];i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&(s.push(r.scheme),s.push(":"));let a=ZIt(r,n);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path.charAt(0)!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=W1(o)),a===void 0&&(o=o.replace(/^\/\//u,"/%2F")),s.push(o)}return r.query!==void 0&&(s.push("?"),s.push(r.query)),r.fragment!==void 0&&(s.push("#"),s.push(r.fragment)),s.join("")}var nCt=Array.from({length:127},(t,e)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(e)));function sCt(t){let e=0;for(let r=0,n=t.length;r<n;++r)if(e=t.charCodeAt(r),e>126||nCt[e])return!0;return!1}var iCt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function md(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=t.indexOf("%")!==-1;r.reference==="suffix"&&(t=(r.scheme?r.scheme+":":"")+"//"+t);let i=t.match(iCt);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host){let o=XIt(n.host);o.isIPV4===!1?n.host=JIt(o.host,{isIPV4:!1}).host.toLowerCase():n.host=o.host}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=Zge[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&sCt(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(s&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),s&&n.userinfo!==void 0&&(n.userinfo=unescape(n.userinfo)),s&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURI(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var jW={normalize:eCt,resolve:tCt,resolveComponents:eAe,equal:rCt,serialize:Hu,parse:md};fN.exports=jW;fN.exports.default=jW;fN.exports.fastUri=jW});var pN=E(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.formatNames=Gu.fastFormats=Gu.fullFormats=void 0;function Qu(t,e){return{validate:t,compare:e}}Gu.fullFormats={date:Qu(sAe,VW),time:Qu(GW(!0),zW),"date-time":Qu(tAe(!0),aAe),"iso-time":Qu(GW(),iAe),"iso-date-time":Qu(tAe(),oAe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:dCt,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:yCt,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:fCt,int32:{type:"number",validate:hCt},int64:{type:"number",validate:gCt},float:{type:"number",validate:nAe},double:{type:"number",validate:nAe},password:!0,binary:!0};Gu.fastFormats={...Gu.fullFormats,date:Qu(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,VW),time:Qu(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,zW),"date-time":Qu(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,aAe),"iso-time":Qu(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,iAe),"iso-date-time":Qu(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,oAe),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Gu.formatNames=Object.keys(Gu.fullFormats);function aCt(t){return t%4===0&&(t%100!==0||t%400===0)}var oCt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,cCt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function sAe(t){let e=oCt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&aCt(r)?29:cCt[n])}function VW(t,e){if(t&&e)return t>e?1:t<e?-1:0}var QW=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function GW(t){return function(r){let n=QW.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 zW(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function iAe(t,e){if(!(t&&e))return;let r=QW.exec(t),n=QW.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t<e?-1:0}var KW=/t|\s/i;function tAe(t){let e=GW(t);return function(n){let s=n.split(KW);return s.length===2&&sAe(s[0])&&e(s[1])}}function aAe(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function oAe(t,e){if(!(t&&e))return;let[r,n]=t.split(KW),[s,i]=e.split(KW),a=VW(r,s);if(a!==void 0)return a||zW(n,i)}var uCt=/\/|:/,lCt=/^(?:[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 dCt(t){return uCt.test(t)&&lCt.test(t)}var rAe=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function fCt(t){return rAe.lastIndex=0,rAe.test(t)}var pCt=-(2**31),mCt=2**31-1;function hCt(t){return Number.isInteger(t)&&t<=mCt&&t>=pCt}function gCt(t){return Number.isInteger(t)}function nAe(){return!0}var ACt=/[^\\]\\Z/;function yCt(t){if(ACt.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var cAe=E(ny=>{"use strict";Object.defineProperty(ny,"__esModule",{value:!0});ny.formatLimitDefinition=void 0;var xCt=FW(),Hc=Kt(),bp=Hc.operators,mN={formatMaximum:{okStr:"<=",ok:bp.LTE,fail:bp.GT},formatMinimum:{okStr:">=",ok:bp.GTE,fail:bp.LT},formatExclusiveMaximum:{okStr:"<",ok:bp.LT,fail:bp.GTE},formatExclusiveMinimum:{okStr:">",ok:bp.GT,fail:bp.LTE}},bCt={message:({keyword:t,schemaCode:e})=>(0,Hc.str)`should be ${mN[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Hc._)`{comparison: ${mN[t].okStr}, limit: ${e}}`};ny.formatLimitDefinition={keyword:Object.keys(mN),type:"string",schemaType:"string",$data:!0,error:bCt,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new xCt.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",(0,Hc._)`${f}[${c.schemaCode}]`);t.fail$data((0,Hc.or)((0,Hc._)`typeof ${p} != "object"`,(0,Hc._)`${p} instanceof RegExp`,(0,Hc._)`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,Hc._)`${a.code.formats}${(0,Hc.getProperty)(f)}`:void 0});t.fail$data(d(m))}function d(f){return(0,Hc._)`${f}.compare(${r}, ${n}) ${mN[s].fail} 0`}},dependencies:["format"]};var ECt=t=>(t.addKeyword(ny.formatLimitDefinition),t);ny.default=ECt});var fAe=E(($1,dAe)=>{"use strict";Object.defineProperty($1,"__esModule",{value:!0});var sy=pN(),_Ct=cAe(),YW=Kt(),uAe=new YW.Name("fullFormats"),SCt=new YW.Name("fastFormats"),JW=(t,e={keywords:!0})=>{if(Array.isArray(e))return lAe(t,e,sy.fullFormats,uAe),t;let[r,n]=e.mode==="fast"?[sy.fastFormats,SCt]:[sy.fullFormats,uAe],s=e.formats||sy.formatNames;return lAe(t,s,r,n),e.keywords&&(0,_Ct.default)(t),t};JW.get=(t,e="full")=>{let n=(e==="fast"?sy.fastFormats:sy.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function lAe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=(0,YW._)`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}dAe.exports=$1=JW;Object.defineProperty($1,"__esModule",{value:!0});$1.default=JW});var ZW=E(($kr,pAe)=>{"use strict";var vCt=FW(),ICt=HW(),CCt=fAe(),TCt=wR()({proto:!0}),XW=class t{constructor(e){this.ajv=new vCt({...e,strictSchema:!1,validateSchema:!1,allowUnionTypes:!0,uriResolver:ICt}),CCt(this.ajv),this.ajv.addKeyword({keyword:"fjs_type",type:"object",errors:!1,validate:(r,n)=>n instanceof Date}),this._ajvSchemas={},this._ajvOptions=e||{}}addSchema(e,r){let n=e.$id||r;if(e.$id!==void 0&&e.$id[0]==="#"&&(n=r+e.$id),this.ajv.refs[n]===void 0&&this.ajv.schemas[n]===void 0){let s=TCt(e);this.convertSchemaToAjvFormat(s),this.ajv.addSchema(s,n),this._ajvSchemas[n]=e}}validate(e,r){return this.ajv.validate(e,r)}convertSchemaToAjvFormat(e){if(e!==null){e.type==="string"?(e.fjs_type="string",e.type=["string","object"]):Array.isArray(e.type)&&e.type.includes("string")&&!e.type.includes("object")&&(e.fjs_type="string",e.type.push("object"));for(let r in e)typeof e[r]=="object"&&this.convertSchemaToAjvFormat(e[r])}}getState(){return{ajvOptions:this._ajvOptions,ajvSchemas:this._ajvSchemas}}static restoreFromState(e){let r=new t(e.ajvOptions);for(let[n,s]of Object.entries(e.ajvSchemas))r.ajv.addSchema(s,n);return r}};pAe.exports=XW});var t$=E((Fkr,e$)=>{"use strict";function wCt(t,e,r,n){let s="";e.validatorSchemasIds.size>0?(s+=`const Validator = require('fast-json-stringify/lib/validator')
`,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)`}e$.exports=wCt;e$.exports.dependencies={Serializer:r8(),Validator:ZW()}});var hAe=E((qkr,mAe)=>{"use strict";var{dependencies:RCt}=t$(),{Serializer:NCt,Validator:Ukr}=RCt,OCt={mode:"standalone"},PCt=NCt.restoreFromState(OCt),kCt=null;mAe.exports=function(e,r){function n(i){let a=i&&typeof i.toJSON=="function"?i.toJSON():i;if(a===null)return"{}";let o=!1,c="{";return a.statusCode!==void 0&&(!o&&(o=!0)||(c+=","),c+='"statusCode":',c+=r.asNumber(a.statusCode)),a.code!==void 0&&(!o&&(o=!0)||(c+=","),c+='"code":',c+=r.asString(a.code)),a.error!==void 0&&(!o&&(o=!0)||(c+=","),c+='"error":',c+=r.asString(a.error)),a.message!==void 0&&(!o&&(o=!0)||(c+=","),c+='"message":',c+=r.asString(a.message)),c+"}"}return n}(kCt,PCt)});var F1=E((jkr,xAe)=>{"use strict";var gAe=require("node:http").STATUS_CODES,DCt=Z6(),{kReplyHeaders:km,kReplyNextErrorHandler:hN,kReplyIsRunningOnErrorHook:BCt,kReplyHasStatusCode:LCt,kRouteContext:yAe}=Gs(),{FST_ERR_REP_INVALID_PAYLOAD_TYPE:MCt,FST_ERR_FAILED_ERROR_SERIALIZATION:WCt}=Ci(),{getSchemaSerializer:$Ct}=c1(),r$=hAe(),FCt={func:qCt,toJSON(){return this.func.name.toString()+"()"}};function UCt(t,e,r){t[BCt]=!1;let n=t[yAe];if(t[hN]===!1){AAe(e,t,function(o,c){try{o.raw.writeHead(o.raw.statusCode,o[km])}catch(u){o.log.warn({req:o.request,res:o,err:u},u&&u.message),o.raw.writeHead(o.raw.statusCode)}o.raw.end(c)});return}let s=t[hN]||n.errorHandler;t[hN]=Object.getPrototypeOf(s),delete t[km]["content-type"],delete t[km]["content-length"];let i=s.func;if(!i){t[hN]=!1,AAe(e,t,r);return}let a=i(e,t.request,t);a!==void 0&&(a!==null&&typeof a.then=="function"?DCt(a,t):t.send(a))}function qCt(t,e,r){if(HCt(t,r),!r[LCt]||r.statusCode===200){let n=t.statusCode||t.status;r.code(n>=400?n:500)}r.statusCode<500?r.log.info({res:r,err:t},t&&t.message):r.log.error({req:e,res:r,err:t},t&&t.message),r.send(t)}function AAe(t,e,r){let n=e.raw,s=e.statusCode;e[km]["content-type"]=e[km]["content-type"]??"application/json; charset=utf-8";let i;try{let a=$Ct(e[yAe],s,e[km]["content-type"]);i=a===!1?r$({error:gAe[s+""],code:t.code,message:t.message,statusCode:s}):a(Object.create(t,{error:{value:gAe[s+""]},message:{value:t.message},statusCode:{value:s}}))}catch(a){e.log.error({err:a,statusCode:n.statusCode},"The serializer for the given status code failed"),e.code(500),i=r$(new WCt(a.message,t.message))}typeof i!="string"&&!Buffer.isBuffer(i)&&(i=r$(new MCt(typeof i))),e[km]["content-length"]=""+Buffer.byteLength(i),r(e,i)}function jCt(t=FCt,e){if(!e)return t;let r=Object.create(t);return r.func=e,r}function HCt(t,e){let r=e.raw,n=r.statusCode;n=n>=400?n:500,t!=null&&(t.headers!==void 0&&e.headers(t.headers),t.status>=400?n=t.status:t.statusCode>=400&&(n=t.statusCode)),r.statusCode=n}xAe.exports={buildErrorHandler:jCt,handleError:UCt}});var EN=E((Hkr,bN)=>{"use strict";var a$=require("node:stream").finished,QCt=require("node:stream").Readable,{kFourOhFourContext:bAe,kPublicRouteContext:EAe,kReplyErrorHandlerCalled:RAe,kReplyHijacked:U1,kReplyStartTime:q1,kReplyEndTime:c$,kReplySerializer:hd,kReplySerializerDefault:AN,kReplyIsError:yN,kReplyHeaders:bn,kReplyTrailers:Ks,kReplyHasStatusCode:u$,kReplyIsRunningOnErrorHook:l$,kReplyNextErrorHandler:GCt,kDisableRequestLogging:NAe,kSchemaResponse:xN,kReplyCacheSerializeFns:Ep,kSchemaController:n$,kOptions:KCt,kRouteContext:tr}=Gs(),{onSendHookRunner:OAe,onResponseHookRunner:VCt,preHandlerHookRunner:zCt,preSerializationHookRunner:YCt}=cp(),_Ae=n5()[Symbol.for("internals")],JCt=o1(),o$=JCt.now,{handleError:SAe}=F1(),{getSchemaSerializer:XCt}=c1(),s$={JSON:"application/json; charset=utf-8",PLAIN:"text/plain; charset=utf-8",OCTET:"application/octet-stream"},{FST_ERR_REP_INVALID_PAYLOAD_TYPE:ZCt,FST_ERR_REP_RESPONSE_BODY_CONSUMED:eTt,FST_ERR_REP_ALREADY_SENT:PAe,FST_ERR_REP_SENT_VALUE:tTt,FST_ERR_SEND_INSIDE_ONERR:rTt,FST_ERR_BAD_STATUS_CODE:nTt,FST_ERR_BAD_TRAILER_NAME:sTt,FST_ERR_BAD_TRAILER_VALUE:iTt,FST_ERR_MISSING_SERIALIZATION_FN:aTt,FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:oTt}=Ci(),{FSTDEP010:cTt,FSTDEP013:uTt,FSTDEP019:lTt,FSTDEP020:dTt}=od(),kAe=Object.prototype.toString;function dn(t,e,r){this.raw=t,this[hd]=null,this[RAe]=!1,this[yN]=!1,this[l$]=!1,this.request=e,this[bn]={},this[Ks]=null,this[u$]=!1,this[q1]=void 0,this.log=r}dn.props=[];Object.defineProperties(dn.prototype,{[tr]:{get(){return this.request[tr]}},context:{get(){return lTt(),this.request[tr]}},elapsedTime:{get(){return this[q1]===void 0?0:(this[c$]||o$())-this[q1]}},server:{get(){return this.request[tr].server}},sent:{enumerable:!0,get(){return(this[U1]||this.raw.writableEnded)===!0},set(t){if(cTt(),t!==!0)throw new tTt;if(this.sent&&this[U1])throw new PAe(this.request.url,this.request.method);this[U1]=!0}},statusCode:{get(){return this.raw.statusCode},set(t){this.code(t)}},[EAe]:{get(){return this.request[EAe]}}});dn.prototype.hijack=function(){return this[U1]=!0,this};dn.prototype.send=function(t){if(this[l$]===!0)throw new rTt;if(this.sent)return this.log.warn({err:new PAe(this.request.url,this.request.method)}),this;if(t instanceof Error||this[yN]===!0)return this[yN]=!1,j1(this,t,Dm),this;if(t===void 0)return Dm(this,t),this;let e=this.getHeader("content-type"),r=e!==void 0;if(t!==null){if(typeof t.pipe=="function"||typeof t.getReader=="function"||kAe.call(t)==="[object Response]")return Dm(this,t),this;if(t?.buffer instanceof ArrayBuffer){r===!1&&(this[bn]["content-type"]=s$.OCTET);let n=Buffer.isBuffer(t)?t:Buffer.from(t.buffer,t.byteOffset,t.byteLength);return Dm(this,n),this}if(r===!1&&typeof t=="string")return this[bn]["content-type"]=s$.PLAIN,Dm(this,t),this}if(this[hd]!==null){if(typeof t!="string")return vAe(this,t),this;t=this[hd](t)}else if(r===!1||e.indexOf("json")>-1){if(r===!1)this[bn]["content-type"]=s$.JSON;else if(e.indexOf("charset")===-1){let n=e.trim();n.endsWith(";")?this[bn]["content-type"]=`${n} charset=utf-8`:this[bn]["content-type"]=`${n}; charset=utf-8`}if(typeof t!="string")return vAe(this,t),this}return Dm(this,t),this};dn.prototype.getHeader=function(t){t=t.toLowerCase();let e=this.raw,r=this[bn][t];return r===void 0&&e.hasHeader(t)&&(r=e.getHeader(t)),r};dn.prototype.getHeaders=function(){return{...this.raw.getHeaders(),...this[bn]}};dn.prototype.hasHeader=function(t){return t=t.toLowerCase(),this[bn][t]!==void 0||this.raw.hasHeader(t)};dn.prototype.removeHeader=function(t){return delete this[bn][t.toLowerCase()],this};dn.prototype.header=function(t,e=""){return t=t.toLowerCase(),this[bn][t]&&t==="set-cookie"?(typeof this[bn][t]=="string"&&(this[bn][t]=[this[bn][t]]),Array.isArray(e)?Array.prototype.push.apply(this[bn][t],e):this[bn][t].push(e)):this[bn][t]=e,this};dn.prototype.headers=function(t){let e=Object.keys(t);for(var r=0;r!==e.length;++r){let n=e[r];this.header(n,t[n])}return this};var fTt=new Set(["transfer-encoding","content-length","host","cache-control","max-forwards","te","authorization","set-cookie","content-encoding","content-type","content-range","trailer"]);dn.prototype.trailer=function(t,e){if(t=t.toLowerCase(),fTt.has(t))throw new sTt(t);if(typeof e!="function")throw new iTt(t,typeof e);return this[Ks]===null&&(this[Ks]={}),this[Ks][t]=e,this};dn.prototype.hasTrailer=function(t){return this[Ks]?.[t.toLowerCase()]!==void 0};dn.prototype.removeTrailer=function(t){return this[Ks]===null?this:(this[Ks][t.toLowerCase()]=void 0,this)};dn.prototype.code=function(t){let e=Number(t);if(isNaN(e)||e<100||e>599)throw new nTt(t||String(t));return this.raw.statusCode=e,this[u$]=!0,this};dn.prototype.status=dn.prototype.code;dn.prototype.getSerializationFunction=function(t,e){let r;return typeof t=="string"||typeof t=="number"?typeof e=="string"?r=this[tr][xN]?.[t]?.[e]:r=this[tr][xN]?.[t]:typeof t=="object"&&(r=this[tr][Ep]?.get(t)),r};dn.prototype.compileSerializationSchema=function(t,e=null,r=null){let{request:n}=this,{method:s,url:i}=n;if(this[tr][Ep]?.has(t))return this[tr][Ep].get(t);let o=(this[tr].serializerCompiler||this.server[n$].serializerCompiler||this.server[n$].setupSerializer(this.server[KCt])||this.server[n$].serializerCompiler)({schema:t,method:s,url:i,httpStatus:e,contentType:r});return this[tr][Ep]==null&&(this[tr][Ep]=new WeakMap),this[tr][Ep].set(t,o),o};dn.prototype.serializeInput=function(t,e,r,n){let s=r,i;if(r=typeof e=="string"||typeof e=="number"?e:r,n=r&&s!==r?s:n,r!=null){if(n!=null?i=this[tr][xN]?.[r]?.[n]:i=this[tr][xN]?.[r],i==null)throw n?new oTt(r,n):new aTt(r)}else this[tr][Ep]?.has(e)?i=this[tr][Ep].get(e):i=this.compileSerializationSchema(e,r,n);return i(t)};dn.prototype.serialize=function(t){return this[hd]!==null?this[hd](t):this[tr]&&this[tr][AN]?this[tr][AN](t,this.raw.statusCode):LAe(this[tr],t,this.raw.statusCode)};dn.prototype.serializer=function(t){return this[hd]=t,this};dn.prototype.type=function(t){return this[bn]["content-type"]=t,this};dn.prototype.redirect=function(t,e){return typeof t=="string"&&(e=t,t=this[u$]?this.raw.statusCode:302),this.header("location",e).code(t).send()};dn.prototype.callNotFound=function(){return yTt(this),this};dn.prototype.getResponseTime=function(){return dTt(),this.elapsedTime};dn.prototype.then=function(t,e){if(this.sent){t();return}a$(this.raw,r=>{r&&r.code!=="ERR_STREAM_PREMATURE_CLOSE"?e?e(r):this.log&&this.log.warn("unhandled rejection on reply.then"):t()})};function vAe(t,e){t[tr].preSerialization!==null?YCt(t[tr].preSerialization,t.request,t,e,IAe):IAe(null,t.request,t,e)}function IAe(t,e,r,n){if(t!=null){j1(r,t);return}try{r[hd]!==null?n=r[hd](n):r[tr]&&r[tr][AN]?n=r[tr][AN](n,r.raw.statusCode):n=LAe(r[tr],n,r.raw.statusCode,r[bn]["content-type"])}catch(s){pTt(s,r),j1(r,s);return}Dm(r,n)}function pTt(t,e){t.serialization=e[tr].config}function Dm(t,e){t[tr].onSend!==null?OAe(t[tr].onSend,t.request,t,e,mTt):DAe(t,e)}function mTt(t,e,r,n){t!=null?j1(r,t):DAe(r,n)}function i$(t,e){let r=t.raw;try{r.writeHead(e,t[bn])}catch(n){throw n.code==="ERR_HTTP_HEADERS_SENT"&&t.log.warn(`Reply was already sent, did you forget to "return reply" in the "${t.request.raw.url}" (${t.request.raw.method}) route?`),n}}function DAe(t,e){let r=t.raw,n=t.request;if(t[Ks]!==null){let a=Object.keys(t[Ks]),o="";for(let c of a)typeof t[Ks][c]=="function"&&(o+=" ",o+=c);t.header("Transfer-Encoding","chunked"),t.header("Trailer",o.trim())}let s=kAe.call(e)==="[object Response]";s&&typeof e.status=="number"&&t.code(e.status);let i=r.statusCode;if(e==null){i>=200&&i!==204&&i!==304&&n.method!=="HEAD"&&t[Ks]===null&&(t[bn]["content-length"]="0"),i$(t,i),gN(e,r,t);return}if(i>=100&&i<200||i===204){t.removeHeader("content-type"),t.removeHeader("content-length"),i$(t,i),gN(void 0,r,t),typeof e.resume=="function"&&(e.on("error",MAe),e.resume());return}if(typeof e.pipe=="function"){BAe(e,r,t);return}if(typeof e.getReader=="function"){TAe(e,r,t);return}if(s){if(typeof e.headers=="object"&&typeof e.headers.forEach=="function")for(let[a,o]of e.headers)t.header(a,o);if(e.body!=null){if(e.bodyUsed)throw new eTt;TAe(e.body,r,t)}return}if(typeof e!="string"&&!Buffer.isBuffer(e))throw new ZCt(typeof e);if(t[Ks]===null){let a=t[bn]["content-length"];(!a||n.raw.method!=="HEAD"&&Number(a)!==Buffer.byteLength(e))&&(t[bn]["content-length"]=""+Buffer.byteLength(e))}i$(t,i),r.write(e),gN(e,r,t)}function CAe(t,e,r){e.code==="ERR_STREAM_PREMATURE_CLOSE"?t[NAe]||t.info({res:r},"stream closed prematurely"):t.warn({err:e},"response terminated with an error with headers already sent")}function TAe(t,e,r){let n=QCt.fromWeb(t);BAe(n,e,r)}function BAe(t,e,r){let n=!0,s=!1;if(hTt(t,e,r),a$(t,{readable:!0,writable:!1},function(i){n=!1,i!=null&&(e.headersSent||r.request.raw.aborted===!0?(s||(s=!0,CAe(r.log,i,e)),e.destroy()):j1(r,i))}),a$(e,function(i){n&&(i!=null&&e.headersSent&&!s&&(s=!0,CAe(r.log,i,e)),typeof t.destroy=="function"?t.destroy():typeof t.close=="function"?t.close(MAe):typeof t.abort=="function"?t.abort():r.log.warn("stream payload does not end properly"))}),e.headersSent)r.log.warn("response will send, but you shouldn't use res.writeHead in stream mode");else for(let i in r[bn])e.setHeader(i,r[bn][i]);t.pipe(e)}function gN(t,e,r){if(r[Ks]===null){e.end(null,null,null);return}let n=Object.keys(r[Ks]),s={},i=0,a=!0;function o(){i===0&&(e.addTrailers(s),e.end(null,null,null))}for(let c of n){let u=function(d,f){i++,d?r.log.debug(d):s[c]=f,process.nextTick(o)};if(typeof r[Ks][c]!="function")continue;a=!1,i--;let l=r[Ks][c](r,t,u);typeof l=="object"&&typeof l.then=="function"?l.then(d=>u(null,d),u):l!=null&&(uTt(),u(null,l))}a&&e.end(null,null,null)}function hTt(t,e,r){r[Ks]!==null&&t.on("end",()=>gN(null,e,r))}function j1(t,e,r){t[tr].onError!==null&&!t[GCt]?(t[l$]=!0,OAe(t[tr].onError,t.request,t,e,()=>SAe(t,e,r))):SAe(t,e,r)}function gTt(t){t[q1]=o$();let e=r=>{t[c$]=o$(),t.raw.removeListener("finish",e),t.raw.removeListener("error",e);let n=t[tr];n&&n.onResponse!==null?VCt(n.onResponse,t.request,t,wAe):wAe(r,t.request,t)};t.raw.on("finish",e),t.raw.on("error",e)}function wAe(t,e,r){if(r.log[NAe])return;let n=r.elapsedTime;if(t!=null){r.log.error({res:r,err:t,responseTime:n},"request errored");return}r.log.info({res:r,responseTime:n},"request completed")}function ATt(t){let e=t.props.slice();function r(n,s,i){this.raw=n,this[yN]=!1,this[RAe]=!1,this[U1]=!1,this[hd]=null,this.request=s,this[bn]={},this[Ks]=null,this[q1]=void 0,this[c$]=void 0,this.log=i;for(var a,o=0;o<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 yTt(t){if(t[tr][bAe]===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[tr]=t[tr][bAe],t[tr].preHandler!==null?zCt(t[tr].preHandler,t.request,t,_Ae.preHandlerCallback):_Ae.preHandlerCallback(null,t.request,t)}function LAe(t,e,r,n){let s=XCt(t,r,n);return s?s(e):JSON.stringify(e)}function MAe(){}bN.exports=dn;bN.exports.buildReply=ATt;bN.exports.setupResponseListeners=gTt});var $Ae=E((Qkr,WAe)=>{"use strict";WAe.exports=xTt;function xTt(t){if(!t)throw new TypeError("argument req is required");var e=ETt(t.headers["x-forwarded-for"]||""),r=bTt(t),n=[r].concat(e);return n}function bTt(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function ETt(t){for(var e=t.length,r=[],n=t.length,s=t.length-1;s>=0;s--)switch(t.charCodeAt(s)){case 32:n===e&&(n=e=s);break;case 44:n!==e&&r.push(t.substring(n,e)),n=e=s;break;default:n=s;break}return n!==e&&r.push(t.substring(n,e)),r}});var UAe=E((FAe,H1)=>{(function(){var t,e,r,n,s,i,a,o,c;e={},o=this,typeof H1<"u"&&H1!==null&&H1.exports?H1.exports=e:o.ipaddr=e,a=function(u,l,d,f){var p,m;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(p=0;f>0;){if(m=d-f,m<0&&(m=0),u[p]>>m!==l[p]>>m)return!1;f-=d,p+=1}return!0},e.subnetMatch=function(u,l,d){var f,p,m,h,A;d==null&&(d="unicast");for(m in l)for(h=l[m],h[0]&&!(h[0]instanceof Array)&&(h=[h]),f=0,p=h.length;f<p;f++)if(A=h[f],u.kind()===A[0].kind()&&u.match.apply(u,A))return m;return d},e.IPv4=function(){function u(l){var d,f,p;if(l.length!==4)throw new Error("ipaddr: ipv4 octet count should be 4");for(d=0,f=l.length;d<f;d++)if(p=l[d],!(0<=p&&p<=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,p,m,h,A;for(A={0:8,128:7,192:6,224:5,240:4,248:3,252:2,254:1,255:0},l=0,m=!1,d=f=3;f>=0;d=f+=-1)if(p=this.octets[d],p in A){if(h=A[p],m&&h!==0)return null;h!==8&&(m=!0),l+=h}else return null;return 32-l},u}(),r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp("^"+r+"\\."+r+"\\."+r+"\\."+r+"$","i"),longValue:new RegExp("^"+r+"$","i")},e.IPv4.parser=function(u){var l,d,f,p,m;if(d=function(h){return h[0]==="0"&&h[1]!=="x"?parseInt(h,8):parseInt(h)},l=u.match(n.fourOctet))return function(){var h,A,g,b;for(g=l.slice(1,6),b=[],h=0,A=g.length;h<A;h++)f=g[h],b.push(d(f));return b}();if(l=u.match(n.longValue)){if(m=d(l[1]),m>4294967295||m<0)throw new Error("ipaddr: address outside defined range");return function(){var h,A;for(A=[],p=h=0;h<=24;p=h+=8)A.push(m>>p&255);return A}().reverse()}else return null},e.IPv6=function(){function u(l,d){var f,p,m,h,A,g;if(l.length===16)for(this.parts=[],f=p=0;p<=14;f=p+=2)this.parts.push(l[f]<<8|l[f+1]);else if(l.length===8)this.parts=l;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(g=this.parts,m=0,h=g.length;m<h;m++)if(A=g[m],!(0<=A&&A<=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,p,m;for(p=/((^|:)(0(:|$)){2,})/g,m=this.toNormalizedString(),l=0,d=-1;f=p.exec(m);)f[0].length>d&&(l=f.index,d=f[0].length);return d<0?m:m.substring(0,l)+"::"+m.substring(l+d)},u.prototype.toByteArray=function(){var l,d,f,p,m;for(l=[],m=this.parts,d=0,f=m.length;d<f;d++)p=m[d],l.push(p>>8),l.push(p&255);return l},u.prototype.toNormalizedString=function(){var l,d,f;return l=function(){var p,m,h,A;for(h=this.parts,A=[],p=0,m=h.length;p<m;p++)d=h[p],A.push(d.toString(16));return A}.call(this).join(":"),f="",this.zoneId&&(f="%"+this.zoneId),l+f},u.prototype.toFixedLengthString=function(){var l,d,f;return l=function(){var p,m,h,A;for(h=this.parts,A=[],p=0,m=h.length;p<m;p++)d=h[p],A.push(d.toString(16).padStart(4,"0"));return A}.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,p,m,h,A;for(A={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},l=0,m=!1,d=f=7;f>=0;d=f+=-1)if(p=this.parts[d],p in A){if(h=A[p],m&&h!==0)return null;h!==16&&(m=!0),l+=h}else return null;return 128-l},u}(),s="(?:[0-9a-f]+::?)+",c="%[0-9a-z]{1,}",i={zoneIndex:new RegExp(c,"i"),native:new RegExp("^(::)?("+s+")?([0-9a-f]+)?(::)?("+c+")?$","i"),transitional:new RegExp("^((?:"+s+")|(?:::)(?:"+s+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+c+")?$"),"i")},t=function(u,l){var d,f,p,m,h,A;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(A=(u.match(i.zoneIndex)||[])[0],A&&(A=A.substring(1),u=u.replace(/%.+$/,"")),d=0,f=-1;(f=u.indexOf(":",f+1))>=0;)d++;if(u.substr(0,2)==="::"&&d--,u.substr(-2,2)==="::"&&d--,d>l)return null;for(h=l-d,m=":";h--;)m+="0:";return u=u.replace("::",m),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=function(){var g,b,y,x;for(y=u.split(":"),x=[],g=0,b=y.length;g<b;g++)p=y[g],x.push(parseInt(p,16));return x}(),{parts:l,zoneId:A}},e.IPv6.parser=function(u){var l,d,f,p,m,h,A;if(i.native.test(u))return t(u,8);if((p=u.match(i.transitional))&&(A=p[6]||"",l=t(p[1].slice(0,-1)+A,6),l.parts)){for(h=[parseInt(p[2]),parseInt(p[3]),parseInt(p[4]),parseInt(p[5])],d=0,f=h.length;d<f;d++)if(m=h[d],!(0<=m&&m<=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,p,m,h;try{for(l=this.parseCIDR(u),p=l[0].toByteArray(),h=this.subnetMaskFromPrefixLength(l[1]).toByteArray(),m=[],f=0;f<4;)m.push(parseInt(p[f],10)|parseInt(h[f],10)^255),f++;return new this(m)}catch(A){throw d=A,new Error("ipaddr: the address does not have IPv4 CIDR format")}},e.IPv4.networkAddressFromCIDR=function(u){var l,d,f,p,m,h;try{for(l=this.parseCIDR(u),p=l[0].toByteArray(),h=this.subnetMaskFromPrefixLength(l[1]).toByteArray(),m=[],f=0;f<4;)m.push(parseInt(p[f],10)&parseInt(h[f],10)),f++;return new this(m)}catch(A){throw d=A,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(FAe)});var GAe=E((Gkr,vN)=>{"use strict";vN.exports=wTt;vN.exports.all=HAe;vN.exports.compile=QAe;var _Tt=$Ae(),jAe=UAe(),STt=/^[0-9]+$/,_N=jAe.isValid,SN=jAe.parse,qAe={linklocal:["169.254.0.0/16","fe80::/10"],loopback:["127.0.0.1/8","::1/128"],uniquelocal:["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16","fc00::/7"]};function HAe(t,e){var r=_Tt(t);if(!e)return r;typeof e!="function"&&(e=QAe(e));for(var n=0;n<r.length-1;n++)e(r[n],n)||(r.length=n+1);return r}function QAe(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(qAe,t)&&(t=qAe[t],e.splice.apply(e,[r,1].concat(t)),r+=t.length-1);return ITt(vTt(e))}function vTt(t){for(var e=new Array(t.length),r=0;r<t.length;r++)e[r]=CTt(t[r]);return e}function ITt(t){var e=t.length;return e===0?RTt:e===1?OTt(t[0]):NTt(t)}function CTt(t){var e=t.lastIndexOf("/"),r=e!==-1?t.substring(0,e):t;if(!_N(r))throw new TypeError("invalid IP address: "+r);var n=SN(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:STt.test(i)?i=parseInt(i,10):n.kind()==="ipv4"&&_N(i)?i=TTt(i):i=null,i<=0||i>s)throw new TypeError("invalid range on address: "+t);return[n,i]}function TTt(t){var e=SN(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function wTt(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=HAe(t,e),n=r[r.length-1];return n}function RTt(){return!1}function NTt(t){return function(r){if(!_N(r))return!1;for(var n=SN(r),s,i=n.kind(),a=0;a<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 OTt(t){var e=t[0],r=e.kind(),n=r==="ipv4",s=t[1];return function(a){if(!_N(a))return!1;var o=SN(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 Q1=E((Kkr,KAe)=>{"use strict";var PTt="2.0.0",kTt=Number.MAX_SAFE_INTEGER||9007199254740991,DTt=16,BTt=250,LTt=["major","premajor","minor","preminor","patch","prepatch","prerelease"];KAe.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:DTt,MAX_SAFE_BUILD_LENGTH:BTt,MAX_SAFE_INTEGER:kTt,RELEASE_TYPES:LTt,SEMVER_SPEC_VERSION:PTt,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var G1=E((Vkr,VAe)=>{"use strict";var MTt=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};VAe.exports=MTt});var iy=E((Ku,zAe)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:d$,MAX_SAFE_BUILD_LENGTH:WTt,MAX_LENGTH:$Tt}=Q1(),FTt=G1();Ku=zAe.exports={};var UTt=Ku.re=[],qTt=Ku.safeRe=[],Ge=Ku.src=[],jTt=Ku.safeSrc=[],Ke=Ku.t={},HTt=0,f$="[a-zA-Z0-9-]",QTt=[["\\s",1],["\\d",$Tt],[f$,WTt]],GTt=t=>{for(let[e,r]of QTt)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},Lt=(t,e,r)=>{let n=GTt(e),s=HTt++;FTt(t,s,e),Ke[t]=s,Ge[s]=e,jTt[s]=n,UTt[s]=new RegExp(e,r?"g":void 0),qTt[s]=new RegExp(n,r?"g":void 0)};Lt("NUMERICIDENTIFIER","0|[1-9]\\d*");Lt("NUMERICIDENTIFIERLOOSE","\\d+");Lt("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${f$}*`);Lt("MAINVERSION",`(${Ge[Ke.NUMERICIDENTIFIER]})\\.(${Ge[Ke.NUMERICIDENTIFIER]})\\.(${Ge[Ke.NUMERICIDENTIFIER]})`);Lt("MAINVERSIONLOOSE",`(${Ge[Ke.NUMERICIDENTIFIERLOOSE]})\\.(${Ge[Ke.NUMERICIDENTIFIERLOOSE]})\\.(${Ge[Ke.NUMERICIDENTIFIERLOOSE]})`);Lt("PRERELEASEIDENTIFIER",`(?:${Ge[Ke.NONNUMERICIDENTIFIER]}|${Ge[Ke.NUMERICIDENTIFIER]})`);Lt("PRERELEASEIDENTIFIERLOOSE",`(?:${Ge[Ke.NONNUMERICIDENTIFIER]}|${Ge[Ke.NUMERICIDENTIFIERLOOSE]})`);Lt("PRERELEASE",`(?:-(${Ge[Ke.PRERELEASEIDENTIFIER]}(?:\\.${Ge[Ke.PRERELEASEIDENTIFIER]})*))`);Lt("PRERELEASELOOSE",`(?:-?(${Ge[Ke.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${Ge[Ke.PRERELEASEIDENTIFIERLOOSE]})*))`);Lt("BUILDIDENTIFIER",`${f$}+`);Lt("BUILD",`(?:\\+(${Ge[Ke.BUILDIDENTIFIER]}(?:\\.${Ge[Ke.BUILDIDENTIFIER]})*))`);Lt("FULLPLAIN",`v?${Ge[Ke.MAINVERSION]}${Ge[Ke.PRERELEASE]}?${Ge[Ke.BUILD]}?`);Lt("FULL",`^${Ge[Ke.FULLPLAIN]}$`);Lt("LOOSEPLAIN",`[v=\\s]*${Ge[Ke.MAINVERSIONLOOSE]}${Ge[Ke.PRERELEASELOOSE]}?${Ge[Ke.BUILD]}?`);Lt("LOOSE",`^${Ge[Ke.LOOSEPLAIN]}$`);Lt("GTLT","((?:<|>)?=?)");Lt("XRANGEIDENTIFIERLOOSE",`${Ge[Ke.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Lt("XRANGEIDENTIFIER",`${Ge[Ke.NUMERICIDENTIFIER]}|x|X|\\*`);Lt("XRANGEPLAIN",`[v=\\s]*(${Ge[Ke.XRANGEIDENTIFIER]})(?:\\.(${Ge[Ke.XRANGEIDENTIFIER]})(?:\\.(${Ge[Ke.XRANGEIDENTIFIER]})(?:${Ge[Ke.PRERELEASE]})?${Ge[Ke.BUILD]}?)?)?`);Lt("XRANGEPLAINLOOSE",`[v=\\s]*(${Ge[Ke.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ge[Ke.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ge[Ke.XRANGEIDENTIFIERLOOSE]})(?:${Ge[Ke.PRERELEASELOOSE]})?${Ge[Ke.BUILD]}?)?)?`);Lt("XRANGE",`^${Ge[Ke.GTLT]}\\s*${Ge[Ke.XRANGEPLAIN]}$`);Lt("XRANGELOOSE",`^${Ge[Ke.GTLT]}\\s*${Ge[Ke.XRANGEPLAINLOOSE]}$`);Lt("COERCEPLAIN",`(^|[^\\d])(\\d{1,${d$}})(?:\\.(\\d{1,${d$}}))?(?:\\.(\\d{1,${d$}}))?`);Lt("COERCE",`${Ge[Ke.COERCEPLAIN]}(?:$|[^\\d])`);Lt("COERCEFULL",Ge[Ke.COERCEPLAIN]+`(?:${Ge[Ke.PRERELEASE]})?(?:${Ge[Ke.BUILD]})?(?:$|[^\\d])`);Lt("COERCERTL",Ge[Ke.COERCE],!0);Lt("COERCERTLFULL",Ge[Ke.COERCEFULL],!0);Lt("LONETILDE","(?:~>?)");Lt("TILDETRIM",`(\\s*)${Ge[Ke.LONETILDE]}\\s+`,!0);Ku.tildeTrimReplace="$1~";Lt("TILDE",`^${Ge[Ke.LONETILDE]}${Ge[Ke.XRANGEPLAIN]}$`);Lt("TILDELOOSE",`^${Ge[Ke.LONETILDE]}${Ge[Ke.XRANGEPLAINLOOSE]}$`);Lt("LONECARET","(?:\\^)");Lt("CARETTRIM",`(\\s*)${Ge[Ke.LONECARET]}\\s+`,!0);Ku.caretTrimReplace="$1^";Lt("CARET",`^${Ge[Ke.LONECARET]}${Ge[Ke.XRANGEPLAIN]}$`);Lt("CARETLOOSE",`^${Ge[Ke.LONECARET]}${Ge[Ke.XRANGEPLAINLOOSE]}$`);Lt("COMPARATORLOOSE",`^${Ge[Ke.GTLT]}\\s*(${Ge[Ke.LOOSEPLAIN]})$|^$`);Lt("COMPARATOR",`^${Ge[Ke.GTLT]}\\s*(${Ge[Ke.FULLPLAIN]})$|^$`);Lt("COMPARATORTRIM",`(\\s*)${Ge[Ke.GTLT]}\\s*(${Ge[Ke.LOOSEPLAIN]}|${Ge[Ke.XRANGEPLAIN]})`,!0);Ku.comparatorTrimReplace="$1$2$3";Lt("HYPHENRANGE",`^\\s*(${Ge[Ke.XRANGEPLAIN]})\\s+-\\s+(${Ge[Ke.XRANGEPLAIN]})\\s*$`);Lt("HYPHENRANGELOOSE",`^\\s*(${Ge[Ke.XRANGEPLAINLOOSE]})\\s+-\\s+(${Ge[Ke.XRANGEPLAINLOOSE]})\\s*$`);Lt("STAR","(<|>)?=?\\s*\\*");Lt("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Lt("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var IN=E((zkr,YAe)=>{"use strict";var KTt=Object.freeze({loose:!0}),VTt=Object.freeze({}),zTt=t=>t?typeof t!="object"?KTt:t:VTt;YAe.exports=zTt});var p$=E((Ykr,ZAe)=>{"use strict";var JAe=/^[0-9]+$/,XAe=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:t<e?-1:1;let r=JAe.test(t),n=JAe.test(e);return r&&n&&(t=+t,e=+e),t===e?0:r&&!n?-1:n&&!r?1:t<e?-1:1},YTt=(t,e)=>XAe(e,t);ZAe.exports={compareIdentifiers:XAe,rcompareIdentifiers:YTt}});var Oi=E((Jkr,tye)=>{"use strict";var CN=G1(),{MAX_LENGTH:eye,MAX_SAFE_INTEGER:TN}=Q1(),{safeRe:wN,t:RN}=iy(),JTt=IN(),{compareIdentifiers:m$}=p$(),h$=class t{constructor(e,r){if(r=JTt(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>eye)throw new TypeError(`version is longer than ${eye} characters`);CN("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?wN[RN.LOOSE]:wN[RN.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>TN||this.major<0)throw new TypeError("Invalid major version");if(this.minor>TN||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>TN||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let i=+s;if(i>=0&&i<TN)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(CN("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(CN("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return m$(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(CN("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return m$(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?wN[RN.PRERELEASELOOSE]:wN[RN.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let i=this.prerelease.length;for(;--i>=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);if(i===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let i=[r,s];n===!1&&(i=[r]),m$(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=i):this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};tye.exports=h$});var Bm=E((Xkr,nye)=>{"use strict";var rye=Oi(),XTt=(t,e,r=!1)=>{if(t instanceof rye)return t;try{return new rye(t,e)}catch(n){if(!r)return null;throw n}};nye.exports=XTt});var iye=E((Zkr,sye)=>{"use strict";var ZTt=Bm(),ewt=(t,e)=>{let r=ZTt(t,e);return r?r.version:null};sye.exports=ewt});var oye=E((eDr,aye)=>{"use strict";var twt=Bm(),rwt=(t,e)=>{let r=twt(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};aye.exports=rwt});var lye=E((tDr,uye)=>{"use strict";var cye=Oi(),nwt=(t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new cye(t instanceof cye?t.version:t,r).inc(e,n,s).version}catch{return null}};uye.exports=nwt});var pye=E((rDr,fye)=>{"use strict";var dye=Bm(),swt=(t,e)=>{let r=dye(t,null,!0),n=dye(e,null,!0),s=r.compare(n);if(s===0)return null;let i=s>0,a=i?r:n,o=i?n:r,c=!!a.prerelease.length;if(!!o.prerelease.length&&!c){if(!o.patch&&!o.minor)return"major";if(o.compareMain(a)===0)return o.minor&&!o.patch?"minor":"patch"}let l=c?"pre":"";return r.major!==n.major?l+"major":r.minor!==n.minor?l+"minor":r.patch!==n.patch?l+"patch":"prerelease"};fye.exports=swt});var hye=E((nDr,mye)=>{"use strict";var iwt=Oi(),awt=(t,e)=>new iwt(t,e).major;mye.exports=awt});var Aye=E((sDr,gye)=>{"use strict";var owt=Oi(),cwt=(t,e)=>new owt(t,e).minor;gye.exports=cwt});var xye=E((iDr,yye)=>{"use strict";var uwt=Oi(),lwt=(t,e)=>new uwt(t,e).patch;yye.exports=lwt});var Eye=E((aDr,bye)=>{"use strict";var dwt=Bm(),fwt=(t,e)=>{let r=dwt(t,e);return r&&r.prerelease.length?r.prerelease:null};bye.exports=fwt});var Yo=E((oDr,Sye)=>{"use strict";var _ye=Oi(),pwt=(t,e,r)=>new _ye(t,r).compare(new _ye(e,r));Sye.exports=pwt});var Iye=E((cDr,vye)=>{"use strict";var mwt=Yo(),hwt=(t,e,r)=>mwt(e,t,r);vye.exports=hwt});var Tye=E((uDr,Cye)=>{"use strict";var gwt=Yo(),Awt=(t,e)=>gwt(t,e,!0);Cye.exports=Awt});var NN=E((lDr,Rye)=>{"use strict";var wye=Oi(),ywt=(t,e,r)=>{let n=new wye(t,r),s=new wye(e,r);return n.compare(s)||n.compareBuild(s)};Rye.exports=ywt});var Oye=E((dDr,Nye)=>{"use strict";var xwt=NN(),bwt=(t,e)=>t.sort((r,n)=>xwt(r,n,e));Nye.exports=bwt});var kye=E((fDr,Pye)=>{"use strict";var Ewt=NN(),_wt=(t,e)=>t.sort((r,n)=>Ewt(n,r,e));Pye.exports=_wt});var K1=E((pDr,Dye)=>{"use strict";var Swt=Yo(),vwt=(t,e,r)=>Swt(t,e,r)>0;Dye.exports=vwt});var ON=E((mDr,Bye)=>{"use strict";var Iwt=Yo(),Cwt=(t,e,r)=>Iwt(t,e,r)<0;Bye.exports=Cwt});var g$=E((hDr,Lye)=>{"use strict";var Twt=Yo(),wwt=(t,e,r)=>Twt(t,e,r)===0;Lye.exports=wwt});var A$=E((gDr,Mye)=>{"use strict";var Rwt=Yo(),Nwt=(t,e,r)=>Rwt(t,e,r)!==0;Mye.exports=Nwt});var PN=E((ADr,Wye)=>{"use strict";var Owt=Yo(),Pwt=(t,e,r)=>Owt(t,e,r)>=0;Wye.exports=Pwt});var kN=E((yDr,$ye)=>{"use strict";var kwt=Yo(),Dwt=(t,e,r)=>kwt(t,e,r)<=0;$ye.exports=Dwt});var y$=E((xDr,Fye)=>{"use strict";var Bwt=g$(),Lwt=A$(),Mwt=K1(),Wwt=PN(),$wt=ON(),Fwt=kN(),Uwt=(t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Bwt(t,r,n);case"!=":return Lwt(t,r,n);case">":return Mwt(t,r,n);case">=":return Wwt(t,r,n);case"<":return $wt(t,r,n);case"<=":return Fwt(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};Fye.exports=Uwt});var qye=E((bDr,Uye)=>{"use strict";var qwt=Oi(),jwt=Bm(),{safeRe:DN,t:BN}=iy(),Hwt=(t,e)=>{if(t instanceof qwt)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?DN[BN.COERCEFULL]:DN[BN.COERCE]);else{let c=e.includePrerelease?DN[BN.COERCERTLFULL]:DN[BN.COERCERTL],u;for(;(u=c.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||u.index+u[0].length!==r.index+r[0].length)&&(r=u),c.lastIndex=u.index+u[1].length+u[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",i=r[4]||"0",a=e.includePrerelease&&r[5]?`-${r[5]}`:"",o=e.includePrerelease&&r[6]?`+${r[6]}`:"";return jwt(`${n}.${s}.${i}${a}${o}`,e)};Uye.exports=Hwt});var Hye=E((EDr,jye)=>{"use strict";var x$=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};jye.exports=x$});var Jo=E((_Dr,Vye)=>{"use strict";var Qwt=/\s+/g,b$=class t{constructor(e,r){if(r=Kwt(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof E$)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(Qwt," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!Gye(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&e2t(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;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&&Xwt)|(this.options.loose&&Zwt))+":"+e,s=Qye.get(n);if(s)return s;let i=this.options.loose,a=i?ra[Pi.HYPHENRANGELOOSE]:ra[Pi.HYPHENRANGE];e=e.replace(a,l2t(this.options.includePrerelease)),On("hyphen replace",e),e=e.replace(ra[Pi.COMPARATORTRIM],zwt),On("comparator trim",e),e=e.replace(ra[Pi.TILDETRIM],Ywt),On("tilde trim",e),e=e.replace(ra[Pi.CARETTRIM],Jwt),On("caret trim",e);let o=e.split(" ").map(d=>t2t(d,this.options)).join(" ").split(/\s+/).map(d=>u2t(d,this.options));i&&(o=o.filter(d=>(On("loose invalid filter",d,this.options),!!d.match(ra[Pi.COMPARATORLOOSE])))),On("range list",o);let c=new Map,u=o.map(d=>new E$(d,this.options));for(let d of u){if(Gye(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let l=[...c.values()];return Qye.set(n,l),l}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>Kye(n,r)&&e.set.some(s=>Kye(s,r)&&n.every(i=>s.every(a=>i.intersects(a,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new Vwt(e,this.options)}catch{return!1}for(let r=0;r<this.set.length;r++)if(d2t(this.set[r],e,this.options))return!0;return!1}};Vye.exports=b$;var Gwt=Hye(),Qye=new Gwt,Kwt=IN(),E$=V1(),On=G1(),Vwt=Oi(),{safeRe:ra,t:Pi,comparatorTrimReplace:zwt,tildeTrimReplace:Ywt,caretTrimReplace:Jwt}=iy(),{FLAG_INCLUDE_PRERELEASE:Xwt,FLAG_LOOSE:Zwt}=Q1(),Gye=t=>t.value==="<0.0.0-0",e2t=t=>t.value==="",Kye=(t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(i=>s.intersects(i,e)),s=n.pop();return r},t2t=(t,e)=>(t=t.replace(ra[Pi.BUILD],""),On("comp",t,e),t=s2t(t,e),On("caret",t),t=r2t(t,e),On("tildes",t),t=a2t(t,e),On("xrange",t),t=c2t(t,e),On("stars",t),t),na=t=>!t||t.toLowerCase()==="x"||t==="*",r2t=(t,e)=>t.trim().split(/\s+/).map(r=>n2t(r,e)).join(" "),n2t=(t,e)=>{let r=e.loose?ra[Pi.TILDELOOSE]:ra[Pi.TILDE];return t.replace(r,(n,s,i,a,o)=>{On("tilde",t,n,s,i,a,o);let c;return na(s)?c="":na(i)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:na(a)?c=`>=${s}.${i}.0 <${s}.${+i+1}.0-0`:o?(On("replaceTilde pr",o),c=`>=${s}.${i}.${a}-${o} <${s}.${+i+1}.0-0`):c=`>=${s}.${i}.${a} <${s}.${+i+1}.0-0`,On("tilde return",c),c})},s2t=(t,e)=>t.trim().split(/\s+/).map(r=>i2t(r,e)).join(" "),i2t=(t,e)=>{On("caret",t,e);let r=e.loose?ra[Pi.CARETLOOSE]:ra[Pi.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,i,a,o,c)=>{On("caret",t,s,i,a,o,c);let u;return na(i)?u="":na(a)?u=`>=${i}.0.0${n} <${+i+1}.0.0-0`:na(o)?i==="0"?u=`>=${i}.${a}.0${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.0${n} <${+i+1}.0.0-0`:c?(On("replaceCaret pr",c),i==="0"?a==="0"?u=`>=${i}.${a}.${o}-${c} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}-${c} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o}-${c} <${+i+1}.0.0-0`):(On("no pr"),i==="0"?a==="0"?u=`>=${i}.${a}.${o}${n} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o} <${+i+1}.0.0-0`),On("caret return",u),u})},a2t=(t,e)=>(On("replaceXRanges",t,e),t.split(/\s+/).map(r=>o2t(r,e)).join(" ")),o2t=(t,e)=>{t=t.trim();let r=e.loose?ra[Pi.XRANGELOOSE]:ra[Pi.XRANGE];return t.replace(r,(n,s,i,a,o,c)=>{On("xRange",t,n,s,i,a,o,c);let u=na(i),l=u||na(a),d=l||na(o),f=d;return s==="="&&f&&(s=""),c=e.includePrerelease?"-0":"",u?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&f?(l&&(a=0),o=0,s===">"?(s=">=",l?(i=+i+1,a=0,o=0):(a=+a+1,o=0)):s==="<="&&(s="<",l?i=+i+1:a=+a+1),s==="<"&&(c="-0"),n=`${s+i}.${a}.${o}${c}`):l?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${a}.0${c} <${i}.${+a+1}.0-0`),On("xRange return",n),n})},c2t=(t,e)=>(On("replaceStars",t,e),t.trim().replace(ra[Pi.STAR],"")),u2t=(t,e)=>(On("replaceGTE0",t,e),t.trim().replace(ra[e.includePrerelease?Pi.GTE0PRE:Pi.GTE0],"")),l2t=t=>(e,r,n,s,i,a,o,c,u,l,d,f)=>(na(n)?r="":na(s)?r=`>=${n}.0.0${t?"-0":""}`:na(i)?r=`>=${n}.${s}.0${t?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,na(u)?c="":na(l)?c=`<${+u+1}.0.0-0`:na(d)?c=`<${u}.${+l+1}.0-0`:f?c=`<=${u}.${l}.${d}-${f}`:t?c=`<${u}.${l}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),d2t=(t,e,r)=>{for(let n=0;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!==E$.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 V1=E((SDr,exe)=>{"use strict";var z1=Symbol("SemVer ANY"),v$=class t{static get ANY(){return z1}constructor(e,r){if(r=zye(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),S$("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===z1?this.value="":this.value=this.operator+this.semver.version,S$("comp",this)}parse(e){let r=this.options.loose?Yye[Jye.COMPARATORLOOSE]:Yye[Jye.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Xye(n[2],this.options.loose):this.semver=z1}toString(){return this.value}test(e){if(S$("Comparator.test",e,this.options.loose),this.semver===z1||e===z1)return!0;if(typeof e=="string")try{e=new Xye(e,this.options)}catch{return!1}return _$(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Zye(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new Zye(this.value,r).test(e.semver):(r=zye(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||_$(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||_$(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};exe.exports=v$;var zye=IN(),{safeRe:Yye,t:Jye}=iy(),_$=y$(),S$=G1(),Xye=Oi(),Zye=Jo()});var Y1=E((vDr,txe)=>{"use strict";var f2t=Jo(),p2t=(t,e,r)=>{try{e=new f2t(e,r)}catch{return!1}return e.test(t)};txe.exports=p2t});var nxe=E((IDr,rxe)=>{"use strict";var m2t=Jo(),h2t=(t,e)=>new m2t(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));rxe.exports=h2t});var ixe=E((CDr,sxe)=>{"use strict";var g2t=Oi(),A2t=Jo(),y2t=(t,e,r)=>{let n=null,s=null,i=null;try{i=new A2t(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new g2t(n,r))}),n};sxe.exports=y2t});var oxe=E((TDr,axe)=>{"use strict";var x2t=Oi(),b2t=Jo(),E2t=(t,e,r)=>{let n=null,s=null,i=null;try{i=new b2t(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new x2t(n,r))}),n};axe.exports=E2t});var lxe=E((wDr,uxe)=>{"use strict";var I$=Oi(),_2t=Jo(),cxe=K1(),S2t=(t,e)=>{t=new _2t(t,e);let r=new I$("0.0.0");if(t.test(r)||(r=new I$("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n<t.set.length;++n){let s=t.set[n],i=null;s.forEach(a=>{let o=new I$(a.semver.version);switch(a.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!i||cxe(o,i))&&(i=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),i&&(!r||cxe(r,i))&&(r=i)}return r&&t.test(r)?r:null};uxe.exports=S2t});var fxe=E((RDr,dxe)=>{"use strict";var v2t=Jo(),I2t=(t,e)=>{try{return new v2t(t,e).range||"*"}catch{return null}};dxe.exports=I2t});var LN=E((NDr,gxe)=>{"use strict";var C2t=Oi(),hxe=V1(),{ANY:T2t}=hxe,w2t=Jo(),R2t=Y1(),pxe=K1(),mxe=ON(),N2t=kN(),O2t=PN(),P2t=(t,e,r,n)=>{t=new C2t(t,n),e=new w2t(e,n);let s,i,a,o,c;switch(r){case">":s=pxe,i=N2t,a=mxe,o=">",c=">=";break;case"<":s=mxe,i=O2t,a=pxe,o="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(R2t(t,e,n))return!1;for(let u=0;u<e.set.length;++u){let l=e.set[u],d=null,f=null;if(l.forEach(p=>{p.semver===T2t&&(p=new hxe(">=0.0.0")),d=d||p,f=f||p,s(p.semver,d.semver,n)?d=p:a(p.semver,f.semver,n)&&(f=p)}),d.operator===o||d.operator===c||(!f.operator||f.operator===o)&&i(t,f.semver))return!1;if(f.operator===c&&a(t,f.semver))return!1}return!0};gxe.exports=P2t});var yxe=E((ODr,Axe)=>{"use strict";var k2t=LN(),D2t=(t,e,r)=>k2t(t,e,">",r);Axe.exports=D2t});var bxe=E((PDr,xxe)=>{"use strict";var B2t=LN(),L2t=(t,e,r)=>B2t(t,e,"<",r);xxe.exports=L2t});var Sxe=E((kDr,_xe)=>{"use strict";var Exe=Jo(),M2t=(t,e,r)=>(t=new Exe(t,r),e=new Exe(e,r),t.intersects(e,r));_xe.exports=M2t});var Ixe=E((DDr,vxe)=>{"use strict";var W2t=Y1(),$2t=Yo();vxe.exports=(t,e,r)=>{let n=[],s=null,i=null,a=t.sort((l,d)=>$2t(l,d,r));for(let l of a)W2t(l,e,r)?(i=l,s||(s=l)):(i&&n.push([s,i]),i=null,s=null);s&&n.push([s,null]);let o=[];for(let[l,d]of n)l===d?o.push(l):!d&&l===a[0]?o.push("*"):d?l===a[0]?o.push(`<=${d}`):o.push(`${l} - ${d}`):o.push(`>=${l}`);let c=o.join(" || "),u=typeof e.raw=="string"?e.raw:String(e);return c.length<u.length?c:e}});var Oxe=E((BDr,Nxe)=>{"use strict";var Cxe=Jo(),T$=V1(),{ANY:C$}=T$,J1=Y1(),w$=Yo(),F2t=(t,e,r={})=>{if(t===e)return!0;t=new Cxe(t,r),e=new Cxe(e,r);let n=!1;e:for(let s of t.set){for(let i of e.set){let a=q2t(s,i,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},U2t=[new T$(">=0.0.0-0")],Txe=[new T$(">=0.0.0")],q2t=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===C$){if(e.length===1&&e[0].semver===C$)return!0;r.includePrerelease?t=U2t:t=Txe}if(e.length===1&&e[0].semver===C$){if(r.includePrerelease)return!0;e=Txe}let n=new Set,s,i;for(let p of t)p.operator===">"||p.operator===">="?s=wxe(s,p,r):p.operator==="<"||p.operator==="<="?i=Rxe(i,p,r):n.add(p.semver);if(n.size>1)return null;let a;if(s&&i){if(a=w$(s.semver,i.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let p of n){if(s&&!J1(p,String(s),r)||i&&!J1(p,String(i),r))return null;for(let m of e)if(!J1(p,String(m),r))return!1;return!0}let o,c,u,l,d=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1,f=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;d&&d.prerelease.length===1&&i.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let p of e){if(l=l||p.operator===">"||p.operator===">=",u=u||p.operator==="<"||p.operator==="<=",s){if(f&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===f.major&&p.semver.minor===f.minor&&p.semver.patch===f.patch&&(f=!1),p.operator===">"||p.operator===">="){if(o=wxe(s,p,r),o===p&&o!==s)return!1}else if(s.operator===">="&&!J1(s.semver,String(p),r))return!1}if(i){if(d&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===d.major&&p.semver.minor===d.minor&&p.semver.patch===d.patch&&(d=!1),p.operator==="<"||p.operator==="<="){if(c=Rxe(i,p,r),c===p&&c!==i)return!1}else if(i.operator==="<="&&!J1(i.semver,String(p),r))return!1}if(!p.operator&&(i||s)&&a!==0)return!1}return!(s&&u&&!i&&a!==0||i&&l&&!s&&a!==0||f||d)},wxe=(t,e,r)=>{if(!t)return e;let n=w$(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},Rxe=(t,e,r)=>{if(!t)return e;let n=w$(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};Nxe.exports=F2t});var N$=E((LDr,Dxe)=>{"use strict";var R$=iy(),Pxe=Q1(),j2t=Oi(),kxe=p$(),H2t=Bm(),Q2t=iye(),G2t=oye(),K2t=lye(),V2t=pye(),z2t=hye(),Y2t=Aye(),J2t=xye(),X2t=Eye(),Z2t=Yo(),eRt=Iye(),tRt=Tye(),rRt=NN(),nRt=Oye(),sRt=kye(),iRt=K1(),aRt=ON(),oRt=g$(),cRt=A$(),uRt=PN(),lRt=kN(),dRt=y$(),fRt=qye(),pRt=V1(),mRt=Jo(),hRt=Y1(),gRt=nxe(),ARt=ixe(),yRt=oxe(),xRt=lxe(),bRt=fxe(),ERt=LN(),_Rt=yxe(),SRt=bxe(),vRt=Sxe(),IRt=Ixe(),CRt=Oxe();Dxe.exports={parse:H2t,valid:Q2t,clean:G2t,inc:K2t,diff:V2t,major:z2t,minor:Y2t,patch:J2t,prerelease:X2t,compare:Z2t,rcompare:eRt,compareLoose:tRt,compareBuild:rRt,sort:nRt,rsort:sRt,gt:iRt,lt:aRt,eq:oRt,neq:cRt,gte:uRt,lte:lRt,cmp:dRt,coerce:fRt,Comparator:pRt,Range:mRt,satisfies:hRt,toComparators:gRt,maxSatisfying:ARt,minSatisfying:yRt,minVersion:xRt,validRange:bRt,outside:ERt,gtr:_Rt,ltr:SRt,intersects:vRt,simplifyRange:IRt,subset:CRt,SemVer:j2t,re:R$.re,src:R$.src,tokens:R$.t,SEMVER_SPEC_VERSION:Pxe.SEMVER_SPEC_VERSION,RELEASE_TYPES:Pxe.RELEASE_TYPES,compareIdentifiers:kxe.compareIdentifiers,rcompareIdentifiers:kxe.rcompareIdentifiers}});var WN=E((MDr,D$)=>{"use strict";var MN=GAe(),TRt=N$(),{FSTDEP005:wRt,FSTDEP012:RRt,FSTDEP015:NRt,FSTDEP016:ORt,FSTDEP017:PRt,FSTDEP018:kRt}=od(),{kHasBeenDecorated:DRt,kSchemaBody:BRt,kSchemaHeaders:LRt,kSchemaParams:MRt,kSchemaQuerystring:Bxe,kSchemaController:O$,kOptions:WRt,kRequestCacheValidateFns:_p,kRouteContext:us,kPublicRouteContext:Lxe,kRequestOriginalUrl:P$}=Gs(),{FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:$Rt}=Ci(),Mxe={body:BRt,headers:LRt,params:MRt,querystring:Bxe,query:Bxe};function k$(t,e,r,n,s,i){this.id=t,this[us]=i,this.params=e,this.raw=r,this.query=n,this.log=s,this.body=void 0}k$.props=[];function FRt(t){if(typeof t=="function")return t;if(t===!0)return function(){return!0};if(typeof t=="number")return function(e,r){return r<t};if(typeof t=="string"){let e=t.split(",").map(r=>r.trim());return MN.compile(e)}return MN.compile(t)}function URt(t,e){return e?qRt(t,e):$xe(t)}function $xe(t){let e=t.props.slice();function r(n,s,i,a,o,c){this.id=n,this[us]=c,this.params=s,this.raw=i,this.query=a,this.log=o,this.body=void 0;for(var u,l=0;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 Wxe(t){let e=t.lastIndexOf(",");return e===-1?t.trim():t.slice(e+1).trim()}function qRt(t,e){let r=$xe(t),n=FRt(e);return r[DRt]=!0,Object.defineProperties(r.prototype,{ip:{get(){return MN(this.raw,n)}},ips:{get(){return MN.all(this.raw,n)}},hostname:{get(){return this.ip!==void 0&&this.headers["x-forwarded-host"]?Wxe(this.headers["x-forwarded-host"]):this.headers.host||this.headers[":authority"]}},protocol:{get(){if(this.headers["x-forwarded-proto"])return Wxe(this.headers["x-forwarded-proto"]);if(this.socket)return this.socket.encrypted?"https":"http"}}}),r}Object.defineProperties(k$.prototype,{server:{get(){return this[us].server}},url:{get(){return this.raw.url}},originalUrl:{get(){return this[P$]||(this[P$]=this.raw.originalUrl||this.raw.url),this[P$]}},method:{get(){return this.raw.method}},context:{get(){return RRt(),this[us]}},routerPath:{get(){return PRt(),this[us].config?.url}},routeOptions:{get(){let t=this[us],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 kRt(),this[us].config?.method}},routeConfig:{get(){return ORt(),this[us][Lxe]?.config}},routeSchema:{get(){return NRt(),this[us][Lxe].schema}},is404:{get(){return this[us].config?.url===void 0}},connection:{get(){return TRt.gte(process.versions.node,"13.0.0")&&wRt(),this.raw.connection}},socket:{get(){return this.raw.socket}},ip:{get(){if(this.socket)return this.socket.remoteAddress}},hostname:{get(){return this.raw.headers.host||this.raw.headers[":authority"]}},protocol:{get(){if(this.socket)return this.socket.encrypted?"https":"http"}},headers:{get(){return this.additionalHeaders?Object.assign({},this.raw.headers,this.additionalHeaders):this.raw.headers},set(t){this.additionalHeaders=t}},getValidationFunction:{value:function(t){if(typeof t=="string"){let e=Mxe[t];return this[us][e]}else if(typeof t=="object")return this[us][_p]?.get(t)}},compileValidationSchema:{value:function(t,e=null){let{method:r,url:n}=this;if(this[us][_p]?.has(t))return this[us][_p].get(t);let i=(this[us].validatorCompiler||this.server[O$].validatorCompiler||this.server[O$].setupValidator(this.server[WRt])||this.server[O$].validatorCompiler)({schema:t,method:r,url:n,httpPart:e});return this[us][_p]==null&&(this[us][_p]=new WeakMap),this[us][_p].set(t,i),i}},validateInput:{value:function(t,e,r){r=typeof e=="string"?e:r;let n=r!=null&&typeof r=="string"&&Mxe[r],s;if(n&&(s=this[us][n]),s==null&&(e==null||typeof e!="object"||Array.isArray(e)))throw new $Rt(r);return s==null&&(this[us][_p]?.has(e)?s=this[us][_p].get(e):s=this.compileValidationSchema(e,r)),s(t)}}});D$.exports=k$;D$.exports.buildRequest=URt});var $N=E((WDr,Fxe)=>{"use strict";var{kFourOhFourContext:jRt,kReplySerializerDefault:HRt,kSchemaErrorFormatter:QRt,kErrorHandler:GRt,kChildLoggerFactory:KRt,kOptions:VRt,kReply:zRt,kRequest:YRt,kBodyLimit:JRt,kLogLevel:XRt,kContentTypeParser:ZRt,kRouteByFastify:eNt,kRequestCacheValidateFns:tNt,kReplyCacheSerializeFns:rNt,kPublicRouteContext:nNt}=Gs();function sNt({schema:t,handler:e,config:r,requestIdLogLabel:n,childLoggerFactory:s,errorHandler:i,bodyLimit:a,logLevel:o,logSerializers:c,attachValidation:u,validatorCompiler:l,serializerCompiler:d,replySerializer:f,schemaErrorFormatter:p,exposeHeadRoute:m,prefixTrailingSlash:h,server:A,isFastify:g}){this.schema=t,this.handler=e,this.Reply=A[zRt],this.Request=A[YRt],this.contentTypeParser=A[ZRt],this.onRequest=null,this.onSend=null,this.onError=null,this.onTimeout=null,this.preHandler=null,this.onResponse=null,this.preSerialization=null,this.onRequestAbort=null,this.config=r,this.errorHandler=i||A[GRt],this.requestIdLogLabel=n||A[VRt].requestIdLogLabel,this.childLoggerFactory=s||A[KRt],this._middie=null,this._parserOptions={limit:a||A[JRt]},this.exposeHeadRoute=m,this.prefixTrailingSlash=h,this.logLevel=o||A[XRt],this.logSerializers=c,this[jRt]=null,this.attachValidation=u,this[HRt]=f,this.schemaErrorFormatter=p||A[QRt]||aNt,this[eNt]=g,this[tNt]=null,this[rNt]=null,this.validatorCompiler=l||null,this.serializerCompiler=d||null,this[nNt]=iNt(this),this.server=A}function iNt(t){return Object.create(null,{schema:{enumerable:!0,get(){return t.schema}},config:{enumerable:!0,get(){return t.config}}})}function aNt(t,e){let r="",n=", ";for(var s=0;s!==t.length;++s){let i=t[s];r+=e+(i.instancePath||"")+" "+i.message+n}return new Error(r.slice(0,-n.length))}Fxe.exports=sNt});var B$=E(($Dr,Uxe)=>{"use strict";Uxe.exports={supportedMethods:["DELETE","GET","HEAD","PATCH","POST","PUT","OPTIONS","PROPFIND","PROPPATCH","MKCOL","COPY","MOVE","LOCK","UNLOCK","TRACE","SEARCH"]}});var F$=E((FDr,Qxe)=>{"use strict";var{kReply:L$,kRequest:M$,kState:oNt,kHasBeenDecorated:cNt}=Gs(),{FST_ERR_DEC_ALREADY_PRESENT:qxe,FST_ERR_DEC_MISSING_DEPENDENCY:uNt,FST_ERR_DEC_AFTER_START:lNt,FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:dNt}=Ci(),{FSTDEP006:fNt}=od();function pNt(t,e,r,n){if(Object.prototype.hasOwnProperty.call(t,e))throw new qxe(e);W$(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(t,e,{get:r.getter,set:r.setter}):t[e]=r}function jxe(t,e,r,n){let s=t.prototype;if(Object.prototype.hasOwnProperty.call(s,e)||UN(t,e))throw new qxe(e);t[cNt]=!0,W$(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(s,e,{get:r.getter,set:r.setter}):typeof r=="function"?s[e]=r:t.props.push({key:e,value:r})}function Hxe(t,e){typeof e=="object"&&e&&!(typeof e.getter=="function"||typeof e.setter=="function")&&fNt(t)}function mNt(t,e,r){return $$(this,t),pNt(this,t,e,r),this}function FN(t,e){return e?e in t||t.prototype&&e in t.prototype||UN(t,e):t in this}function UN(t,e){return t.props?t.props.find(({key:r})=>r===e):!1}function hNt(t){return t&&UN(this[M$],t)?!0:FN(this[M$].prototype,t)}function gNt(t){return t&&UN(this[L$],t)?!0:FN(this[L$].prototype,t)}function W$(t,e,r){if(r!=null){if(!Array.isArray(r))throw new dNt(e);for(var n=0;n!==r.length;++n)if(!FN(t,r[n]))throw new uNt(r[n])}}function ANt(t,e,r){return $$(this,t),Hxe(t,e),jxe(this[L$],t,e,r),this}function yNt(t,e,r){return $$(this,t),Hxe(t,e),jxe(this[M$],t,e,r),this}function $$(t,e){if(t[oNt].started)throw new lNt(e)}Qxe.exports={add:mNt,exist:FN,existRequest:hNt,existReply:gNt,dependencies:W$,decorateReply:ANt,decorateRequest:yNt}});var Kxe=E(Vu=>{"use strict";var U$=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=e,this.ttl=r}get size(){return this.items.size}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;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}},q$=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=e,this.ttl=r}get size(){return this.items.size}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;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}},X1=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=e,this.ttl=r}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;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}},qN=class{constructor(){this.records={}}initForCache(e,r){this.records[e]={[r]:{cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}}resetForCache(e){for(let r of Object.keys(this.records[e]))this.records[e][r]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}getStatistics(){return this.records}};function Gxe(t){return`${t.getFullYear()}-${(t.getMonth()+1).toString().padStart(2,"0")}-${t.getDate().toString().padStart(2,"0")}`}var j$=class{constructor(e,r,n){this.cacheId=e,this.statisticTtlInHours=r,this.collectionStart=new Date,this.currentTimeStamp=Gxe(this.collectionStart),this.records=n||new qN,this.records.initForCache(this.cacheId,this.currentTimeStamp)}get currentRecord(){return this.records.records[this.cacheId][this.currentTimeStamp]||(this.records.records[this.cacheId][this.currentTimeStamp]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,sets:0,invalidateOne:0,invalidateAll:0}),this.records.records[this.cacheId][this.currentTimeStamp]}hoursPassed(){return(Date.now()-this.collectionStart)/1e3/60/60}addHit(){this.archiveIfNeeded(),this.currentRecord.hits++}addFalsyHit(){this.archiveIfNeeded(),this.currentRecord.falsyHits++}addEmptyHit(){this.archiveIfNeeded(),this.currentRecord.emptyHits++}addMiss(){this.archiveIfNeeded(),this.currentRecord.misses++}addEviction(){this.archiveIfNeeded(),this.currentRecord.evictions++}setCacheSize(e){this.archiveIfNeeded(),this.currentRecord.cacheSize=e}addExpiration(){this.archiveIfNeeded(),this.currentRecord.expirations++}addSet(){this.archiveIfNeeded(),this.currentRecord.sets++}addInvalidateOne(){this.archiveIfNeeded(),this.currentRecord.invalidateOne++}addInvalidateAll(){this.archiveIfNeeded(),this.currentRecord.invalidateAll++}getStatistics(){return this.records.getStatistics()}archiveIfNeeded(){this.hoursPassed()>=this.statisticTtlInHours&&(this.collectionStart=new Date,this.currentTimeStamp=Gxe(this.collectionStart),this.records.initForCache(this.cacheId,this.currentTimeStamp))}},jN=class extends X1{constructor(e,r,n,s,i){if(super(e||1e3,r||0),!n)throw new Error("Cache id is mandatory");this.hitStatistics=new j$(n,i!==void 0?i:24,s)}getStatistics(){return this.hitStatistics.getStatistics()}set(e,r){super.set(e,r),this.hitStatistics.addSet(),this.hitStatistics.setCacheSize(this.size)}evict(){super.evict(),this.hitStatistics.addEviction(),this.hitStatistics.setCacheSize(this.size)}delete(e,r=!1){super.delete(e),r||this.hitStatistics.addInvalidateOne(),this.hitStatistics.setCacheSize(this.size)}clear(){super.clear(),this.hitStatistics.addInvalidateAll(),this.hitStatistics.setCacheSize(this.size)}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e,!0),this.hitStatistics.addExpiration();return}return this.bumpLru(r),r.value||this.hitStatistics.addFalsyHit(),(r.value===void 0||r.value===null||r.value==="")&&this.hitStatistics.addEmptyHit(),this.hitStatistics.addHit(),r.value}this.hitStatistics.addMiss()}},HN=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=e,this.ttl=r}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;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}};Vu.Fifo=HN;Vu.FifoMap=U$;Vu.FifoObject=HN;Vu.HitStatisticsRecord=qN;Vu.Lru=X1;Vu.LruHitStatistics=jN;Vu.LruMap=q$;Vu.LruObject=X1;Vu.LruObjectHitStatistics=jN});var Jxe=E((qDr,Z1)=>{"use strict";var KN=function(){};KN.prototype=Object.create(null);var QN=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,GN=/\\([\v\u0020-\u00ff])/gu,Vxe=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,Lm={type:"",parameters:new KN};Object.freeze(Lm.parameters);Object.freeze(Lm);function zxe(t){if(typeof t!="string")throw new TypeError("argument header is required and must be a string");let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(Vxe.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new KN};if(e===-1)return n;let s,i,a;for(QN.lastIndex=e;i=QN.exec(t);){if(i.index!==e)throw new TypeError("invalid parameter format");e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),GN.test(a)&&(a=a.replace(GN,"$1"))),n.parameters[s]=a}if(e!==t.length)throw new TypeError("invalid parameter format");return n}function Yxe(t){if(typeof t!="string")return Lm;let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(Vxe.test(r)===!1)return Lm;let n={type:r.toLowerCase(),parameters:new KN};if(e===-1)return n;let s,i,a;for(QN.lastIndex=e;i=QN.exec(t);){if(i.index!==e)return Lm;e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),GN.test(a)&&(a=a.replace(GN,"$1"))),n.parameters[s]=a}return e!==t.length?Lm:n}Z1.exports.default={parse:zxe,safeParse:Yxe};Z1.exports.parse=zxe;Z1.exports.safeParse=Yxe;Z1.exports.defaultContentType=Lm});var rbe=E((jDr,ay)=>{"use strict";var xNt=typeof Buffer<"u",Xxe=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,Zxe=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function ebe(t,e,r){r==null&&e!==null&&typeof e=="object"&&(r=e,e=void 0),xNt&&Buffer.isBuffer(t)&&(t=t.toString()),t&&t.charCodeAt(0)===65279&&(t=t.slice(1));let n=JSON.parse(t,e);if(n===null||typeof n!="object")return n;let s=r&&r.protoAction||"error",i=r&&r.constructorAction||"error";if(s==="ignore"&&i==="ignore")return n;if(s!=="ignore"&&i!=="ignore"){if(Xxe.test(t)===!1&&Zxe.test(t)===!1)return n}else if(s!=="ignore"&&i==="ignore"){if(Xxe.test(t)===!1)return n}else if(Zxe.test(t)===!1)return n;return tbe(n,{protoAction:s,constructorAction:i,safe:r&&r.safe})}function tbe(t,{protoAction:e="error",constructorAction:r="error",safe:n}={}){let s=[t];for(;s.length;){let i=s;s=[];for(let a of i){if(e!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"__proto__")){if(n===!0)return null;if(e==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.__proto__}if(r!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"constructor")&&Object.prototype.hasOwnProperty.call(a.constructor,"prototype")){if(n===!0)return null;if(r==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.constructor}for(let o in a){let c=a[o];c&&typeof c=="object"&&s.push(c)}}}return t}function H$(t,e,r){let n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return ebe(t,e,r)}finally{Error.stackTraceLimit=n}}function bNt(t,e){let r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return ebe(t,e,{safe:!0})}catch{return null}finally{Error.stackTraceLimit=r}}ay.exports=H$;ay.exports.default=H$;ay.exports.parse=H$;ay.exports.safeParse=bNt;ay.exports.scan=tbe});var z$=E((HDr,t_)=>{"use strict";var{AsyncResource:ENt}=require("node:async_hooks"),{Fifo:sbe}=Kxe(),{safeParse:ibe,defaultContentType:_Nt}=Jxe(),SNt=rbe(),{kDefaultJsonParse:e_,kContentTypeParser:oy,kBodyLimit:vNt,kRequestPayloadStream:abe,kState:G$,kTestInternals:INt,kReplyIsError:obe,kRouteContext:CNt}=Gs(),{FST_ERR_CTP_INVALID_TYPE:cbe,FST_ERR_CTP_EMPTY_TYPE:TNt,FST_ERR_CTP_ALREADY_PRESENT:wNt,FST_ERR_CTP_INVALID_HANDLER:RNt,FST_ERR_CTP_INVALID_PARSE_TYPE:NNt,FST_ERR_CTP_BODY_TOO_LARGE:nbe,FST_ERR_CTP_INVALID_MEDIA_TYPE:ONt,FST_ERR_CTP_INVALID_CONTENT_LENGTH:PNt,FST_ERR_CTP_EMPTY_JSON_BODY:kNt,FST_ERR_CTP_INSTANCE_ALREADY_STARTED:K$}=Ci();function gd(t,e,r){this[e_]=lbe(e,r),this.customParsers=new Map,this.customParsers.set("application/json",new Q$(!0,!1,t,this[e_])),this.customParsers.set("text/plain",new Q$(!0,!1,t,V$)),this.parserList=[new VN("application/json"),new VN("text/plain")],this.parserRegExpList=[],this.cache=new sbe(100)}gd.prototype.add=function(t,e,r){let n=typeof t=="string";if(!n&&!(t instanceof RegExp))throw new cbe;if(n&&t.length===0)throw new TNt;if(typeof r!="function")throw new RNt;if(this.existingParser(t))throw new wNt(t);if(e.parseAs!==void 0&&e.parseAs!=="string"&&e.parseAs!=="buffer")throw new NNt(e.parseAs);let s=new Q$(e.parseAs==="string",e.parseAs==="buffer",e.bodyLimit,r);n&&t==="*"?this.customParsers.set("",s):(n?this.parserList.unshift(new VN(t)):(t.isEssence=t.source.indexOf(";")===-1,this.parserRegExpList.unshift(t)),this.customParsers.set(t.toString(),s))};gd.prototype.hasParser=function(t){return this.customParsers.has(typeof t=="string"?t:t.toString())};gd.prototype.existingParser=function(t){return t==="application/json"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==this[e_]:t==="text/plain"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==V$:this.hasParser(t)};gd.prototype.getParser=function(t){if(this.hasParser(t))return this.customParsers.get(t);let e=this.cache.get(t);if(e!==void 0)return e;let r=ibe(t);if(r===_Nt)return this.customParsers.get("");for(var n=0;n!==this.parserList.length;++n){let i=this.parserList[n];if($Nt(r,i)){let a=this.customParsers.get(i.name);return this.cache.set(t,a),a}}for(var s=0;s!==this.parserRegExpList.length;++s){let i=this.parserRegExpList[s];if(FNt(t,r.type,i)){let a=this.customParsers.get(i.toString());return this.cache.set(t,a),a}}return this.customParsers.get("")};gd.prototype.removeAll=function(){this.customParsers=new Map,this.parserRegExpList=[],this.parserList=[],this.cache=new sbe(100)};gd.prototype.remove=function(t){if(!(typeof t=="string"||t instanceof RegExp))throw new cbe;let e=this.customParsers.delete(t.toString()),r=typeof t=="string"?this.parserList:this.parserRegExpList,n=r.findIndex(s=>s.toString()===t.toString());return n>-1&&r.splice(n,1),e||n>-1};gd.prototype.run=function(t,e,r,n){let s=this.getParser(t);if(s===void 0){r.is404?e(r,n):n.send(new ONt(t||void 0));return}let i=new ENt("content-type-parser:run",r);if(s.asString===!0||s.asBuffer===!0)ube(r,n,n[CNt]._parserOptions,s,a);else{let o=s.fn(r,r[abe],a);o&&typeof o.then=="function"&&o.then(c=>a(null,c),a)}function a(o,c){i.runInAsyncScope(()=>{i.emitDestroy(),o?(n[obe]=!0,n.send(o)):(r.body=c,e(r,n))})}};function ube(t,e,r,n,s){let i=n.asString,a=r.limit===null?n.bodyLimit:r.limit,o=t.headers["content-length"]===void 0?NaN:Number(t.headers["content-length"]);if(o>a){e.header("connection","close"),e.send(new nbe);return}let c=0,u=i===!0?"":[],l=t[abe]||t.raw;i===!0&&l.setEncoding("utf8"),l.on("data",d),l.on("end",f),l.on("error",f),l.resume();function d(p){c+=p.length;let{receivedEncodedLength:m=0}=l;if(c>a||m>a){l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),e.send(new nbe);return}i===!0?u+=p:u.push(p)}function f(p){if(l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),p!==void 0){typeof p.statusCode=="number"&&p.statusCode>=400||(p.statusCode=400),e[obe]=!0,e.code(p.statusCode).send(p);return}if(i===!0&&(c=Buffer.byteLength(u)),!Number.isNaN(o)&&(l.receivedEncodedLength||c)!==o){e.header("connection","close"),e.send(new PNt);return}i===!1&&(u=Buffer.concat(u));let m=n.fn(t,u,s);m&&typeof m.then=="function"&&m.then(h=>s(null,h),s)}}function lbe(t,e){return r;function r(n,s,i){if(s===""||s==null||Buffer.isBuffer(s)&&s.length===0)return i(new kNt,void 0);let a;try{a=SNt.parse(s,{protoAction:t,constructorAction:e})}catch(o){return o.statusCode=400,i(o,void 0)}i(null,a)}}function V$(t,e,r){r(null,e)}function Q$(t,e,r,n){this.asString=t,this.asBuffer=e,this.bodyLimit=r,this.fn=n}function DNt(t){let e=new gd;return e[e_]=t[e_],e.customParsers=new Map(t.customParsers.entries()),e.parserList=t.parserList.slice(),e.parserRegExpList=t.parserRegExpList.slice(),e}function BNt(t,e,r){if(this[G$].started)throw new K$("addContentTypeParser");return typeof e=="function"&&(r=e,e={}),e||(e={}),e.bodyLimit||(e.bodyLimit=this[vNt]),Array.isArray(t)?t.forEach(n=>this[oy].add(n,e,r)):this[oy].add(t,e,r),this}function LNt(t){return this[oy].hasParser(t)}function MNt(t){if(this[G$].started)throw new K$("removeContentTypeParser");if(Array.isArray(t))for(let e of t)this[oy].remove(e);else this[oy].remove(t)}function WNt(){if(this[G$].started)throw new K$("removeAllContentTypeParsers");this[oy].removeAll()}function $Nt(t,e){if(e.isEssence)return t.type.indexOf(e)!==-1;if(t.type.indexOf(e.type)===-1)return!1;for(let r of e.parameterKeys)if(!(r in t.parameters)||t.parameters[r]!==e.parameters[r])return!1;return!0}function FNt(t,e,r){return r.isEssence?r.test(e):r.test(t)}function VN(t){this.name=t;let e=ibe(t);if(this.isEssence=t.indexOf(";")===-1,this.isEssence===!1&&e.type===""){let r=t.split(";",1)[0];this.type=r===""?t:r}else this.type=e.type;this.parameters=e.parameters,this.parameterKeys=Object.keys(e.parameters)}VN.prototype.toString=function(){return this.name};t_.exports=gd;t_.exports.helpers={buildContentTypeParser:DNt,addContentTypeParser:BNt,hasContentTypeParser:LNt,removeContentTypeParser:MNt,removeAllContentTypeParsers:WNt};t_.exports.defaultParsers={getDefaultJsonParser:lbe,defaultTextParser:V$};t_.exports[INt]={rawBody:ube}});var mbe=E((QDr,pbe)=>{"use strict";var dbe=Ko(),UNt=Symbol.for("json-schema-ref"),Y$=class{#e;#t;#r;#n;#a;constructor(e={}){this.#e={},this.#t={},this.#r=e.insertRefSymbol??!1,this.#n=e.allowEqualDuplicates??!0,this.#a=e.cloneSchemaWithoutRefs??!1}addSchema(e,r){e.$id!==void 0&&e.$id.charAt(0)!=="#"?r=e.$id:this.#l(e,r),this.#s(e,r)}getSchema(e,r="#"){let n=this.#e[e];if(n===void 0)throw new Error(`Cannot resolve ref "${e}${r}". Schema with id "${e}" is not found.`);return n.anchors[r]!==void 0?n.anchors[r]:fbe(n.schema,r)}hasSchema(e){return this.#e[e]!==void 0}getSchemaRefs(e){let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);return r.refs}getSchemaDependencies(e,r={}){let n=this.#e[e];for(let s of n.refs){let i=s.schemaId;r[i]===void 0&&(r[i]=this.getSchema(i),this.getSchemaDependencies(i,r))}return r}derefSchema(e){if(this.#t[e]!==void 0)return;let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);!this.#a&&r.refs.length===0&&(this.#t[e]={schema:r.schema,anchors:r.anchors});let n=[];this.#i(r.schema,e,n);let s=this.getSchemaDependencies(e);for(let i in s){let a=s[i];this.#i(a,i,n)}for(let i of n){let{refSchemaId:a,refJsonPointer:o}=this.#o(i.ref,i.sourceSchemaId),c=this.getDerefSchema(a,o);if(c===null)throw new Error(`Cannot resolve ref "${i.ref}". Ref "${o}" is not found in schema "${a}".`);i.targetSchema=c,i.targetSchemaId=a}for(let i of n)this.#c(i,n)}getDerefSchema(e,r="#"){let n=this.#t[e];return n===void 0&&(this.derefSchema(e),n=this.#t[e]),n.anchors[r]!==void 0?n.anchors[r]:fbe(n.schema,r)}#o(e,r){let n=e.indexOf("#");return n===-1?{refSchemaId:e,refJsonPointer:"#"}:n===0?{refSchemaId:r,refJsonPointer:e}:{refSchemaId:e.slice(0,n),refJsonPointer:e.slice(n)}}#s(e,r){let n=e.$id;n!==void 0&&typeof n=="string"&&(n.charAt(0)==="#"?this.#h(e,r,n):(this.#l(e,n),r=n));let s=e.$ref;if(s!==void 0&&typeof s=="string"){let{refSchemaId:i,refJsonPointer:a}=this.#o(s,r);this.#e[r].refs.push({schemaId:i,jsonPointer:a})}for(let i in e)typeof e[i]=="object"&&e[i]!==null&&this.#s(e[i],r)}#i(e,r,n=[]){let s=Array.isArray(e)?[...e]:{...e},i=s.$id;i!==void 0&&typeof i=="string"&&(i.charAt(0)==="#"?this.#d(s,r,i):(this.#p(s,i),r=i)),s.$ref!==void 0&&n.push({ref:s.$ref,sourceSchemaId:r,sourceSchema:s});for(let a in s){let o=s[a];typeof o=="object"&&o!==null&&(s[a]=this.#i(o,r,n))}return s}#c(e,r){let{sourceSchema:n,targetSchema:s}=e;if(n.$ref){if(this.#r&&(n[UNt]=n.$ref),delete n.$ref,s.$ref){let i=r.find(a=>a.sourceSchema===s);this.#c(i,r)}for(let i in s)if(i!=="$id"){if(n[i]!==void 0){if(dbe(n[i],s[i]))continue;throw new Error(`Cannot resolve ref "${e.ref}". Property "${i}" is already exist in schema "${e.sourceSchemaId}".`)}n[i]=s[i]}e.isResolved=!0}}#l(e,r){let n=this.#e[r];if(n!==void 0){if(this.#n&&dbe(e,n.schema))return;throw new Error(`There is already another schema with id "${r}".`)}this.#e[r]={schema:e,anchors:{},refs:[]}}#h(e,r,n){let{anchors:s}=this.#e[r];if(s[n]!==void 0)throw new Error(`There is already another anchor "${n}" in a schema "${r}".`);s[n]=e}#p(e,r){this.#t[r]===void 0&&(this.#t[r]={schema:e,anchors:{}})}#d(e,r,n){let{anchors:s}=this.#t[r];s[n]=e}};function fbe(t,e){let r=e.split("/"),n=t;for(let s of r)if(!(s===""||s==="#")){if(typeof n!="object"||n===null)return null;n=n[s]}return n??null}pbe.exports={RefResolver:Y$}});var gbe=E((GDr,hbe)=>{"use strict";var J$=class t{constructor(e,r,n="#"){this.schema=e,this.schemaId=r,this.jsonPointer=n}getPropertyLocation(e){return new t(this.schema[e],this.schemaId,this.jsonPointer+"/"+e)}getSchemaRef(){return this.schemaId+this.jsonPointer}};hbe.exports=J$});var Ebe=E((KDr,Z$)=>{"use strict";Z$.exports=De;Z$.exports.default=De;var qNt={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0},Abe={enum:["array","boolean","integer","null","number","object","string"]},ybe=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,jNt=pN().fullFormats.uri,xbe=pN().fullFormats.regex;function Xo(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a;return typeof t=="number"&&!(t%1)&&!isNaN(t)&&isFinite(t)?a===o&&typeof t=="number"&&isFinite(t)&&(t<0||isNaN(t))?(Xo.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1):(Xo.errors=i,a===0):(Xo.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1)}var X$={validate:De};function sa(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(Array.isArray(t)){if(t.length<1)return sa.errors=[{instancePath:e,schemaPath:"#/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{var o=!0;let c=t.length;for(let u=0;u<c;u++){let l=a;X$.validate(t[u],{instancePath:e+"/"+u,parentData:t,parentDataProperty:u,rootData:s})||(i=i===null?X$.validate.errors:i.concat(X$.validate.errors),a=i.length);var o=l===a;if(!o)break}}}else return sa.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;return sa.errors=i,a===0}var bbe=k1().default;function De(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 De.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:qNt.type},message:"must be object,boolean"}],!1;if(a===0&&t&&typeof t=="object"&&!Array.isArray(t)){if(t.$id!==void 0){let y=t.$id,x=a;if(a===x&&a===x)if(typeof y=="string"){if(!ybe.test(y))return De.errors=[{instancePath:e+"/$id",schemaPath:"#/properties/%24id/format",keyword:"format",params:{format:"uri-reference"},message:'must match format "uri-reference"'}],!1}else return De.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 y=t.$schema,x=a;if(a===x&&a===x)if(typeof y=="string"){if(!jNt(y))return De.errors=[{instancePath:e+"/$schema",schemaPath:"#/properties/%24schema/format",keyword:"format",params:{format:"uri"},message:'must match format "uri"'}],!1}else return De.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 y=t.$ref,x=a;if(a===x&&a===x)if(typeof y=="string"){if(!ybe.test(y))return De.errors=[{instancePath:e+"/$ref",schemaPath:"#/properties/%24ref/format",keyword:"format",params:{format:"uri-reference"},message:'must match format "uri-reference"'}],!1}else return De.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 y=a;if(typeof t.$comment!="string")return De.errors=[{instancePath:e+"/$comment",schemaPath:"#/properties/%24comment/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.title!==void 0){let y=a;if(typeof t.title!="string")return De.errors=[{instancePath:e+"/title",schemaPath:"#/properties/title/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.description!==void 0){let y=a;if(typeof t.description!="string")return De.errors=[{instancePath:e+"/description",schemaPath:"#/properties/description/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.readOnly!==void 0){let y=a;if(typeof t.readOnly!="boolean")return De.errors=[{instancePath:e+"/readOnly",schemaPath:"#/properties/readOnly/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=y===a}else var o=!0;if(o){if(t.examples!==void 0){let y=a;if(a===y&&!Array.isArray(t.examples))return De.errors=[{instancePath:e+"/examples",schemaPath:"#/properties/examples/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=y===a}else var o=!0;if(o){if(t.multipleOf!==void 0){let y=t.multipleOf,x=a;if(a===x)if(typeof y=="number"&&isFinite(y)){if(y<=0||isNaN(y))return De.errors=[{instancePath:e+"/multipleOf",schemaPath:"#/properties/multipleOf/exclusiveMinimum",keyword:"exclusiveMinimum",params:{comparison:">",limit:0},message:"must be > 0"}],!1}else return De.errors=[{instancePath:e+"/multipleOf",schemaPath:"#/properties/multipleOf/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.maximum!==void 0){let y=t.maximum,x=a;if(!(typeof y=="number"&&isFinite(y)))return De.errors=[{instancePath:e+"/maximum",schemaPath:"#/properties/maximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.exclusiveMaximum!==void 0){let y=t.exclusiveMaximum,x=a;if(!(typeof y=="number"&&isFinite(y)))return De.errors=[{instancePath:e+"/exclusiveMaximum",schemaPath:"#/properties/exclusiveMaximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.minimum!==void 0){let y=t.minimum,x=a;if(!(typeof y=="number"&&isFinite(y)))return De.errors=[{instancePath:e+"/minimum",schemaPath:"#/properties/minimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.exclusiveMinimum!==void 0){let y=t.exclusiveMinimum,x=a;if(!(typeof y=="number"&&isFinite(y)))return De.errors=[{instancePath:e+"/exclusiveMinimum",schemaPath:"#/properties/exclusiveMinimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.maxLength!==void 0){let y=t.maxLength,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return De.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return De.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minLength!==void 0){let y=a;Xo(t.minLength,{instancePath:e+"/minLength",parentData:t,parentDataProperty:"minLength",rootData:s})||(i=i===null?Xo.errors:i.concat(Xo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.pattern!==void 0){let y=t.pattern,x=a;if(a===x&&a===x)if(typeof y=="string"){if(!xbe(y))return De.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"'}],!1}else return De.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.additionalItems!==void 0){let y=a;De(t.additionalItems,{instancePath:e+"/additionalItems",parentData:t,parentDataProperty:"additionalItems",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.items!==void 0){let y=t.items,x=a,v=a,I=!1,R=a;De(y,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var c=R===a;if(I=I||c,!I){let N=a;sa(y,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var c=N===a;I=I||c}if(I)a=v,i!==null&&(v?i.length=v:i=null);else{let N={instancePath:e+"/items",schemaPath:"#/properties/items/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,De.errors=i,!1}var o=x===a}else var o=!0;if(o){if(t.maxItems!==void 0){let y=t.maxItems,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return De.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return De.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minItems!==void 0){let y=a;Xo(t.minItems,{instancePath:e+"/minItems",parentData:t,parentDataProperty:"minItems",rootData:s})||(i=i===null?Xo.errors:i.concat(Xo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.uniqueItems!==void 0){let y=a;if(typeof t.uniqueItems!="boolean")return De.errors=[{instancePath:e+"/uniqueItems",schemaPath:"#/properties/uniqueItems/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=y===a}else var o=!0;if(o){if(t.contains!==void 0){let y=a;De(t.contains,{instancePath:e+"/contains",parentData:t,parentDataProperty:"contains",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.maxProperties!==void 0){let y=t.maxProperties,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return De.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return De.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minProperties!==void 0){let y=a;Xo(t.minProperties,{instancePath:e+"/minProperties",parentData:t,parentDataProperty:"minProperties",rootData:s})||(i=i===null?Xo.errors:i.concat(Xo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.required!==void 0){let y=t.required,x=a;if(a===a)if(Array.isArray(y)){var u=!0;let R=y.length;for(let w=0;w<R;w++){let N=a;if(typeof y[w]!="string")return De.errors=[{instancePath:e+"/required/"+w,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 w=y.length,N;if(w>1){let P={};for(;w--;){let B=y[w];if(typeof B=="string"){if(typeof P[B]=="number"){return N=P[B],De.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:w,j:N},message:"must NOT have duplicate items (items ## "+N+" and "+w+" are identical)"}],!1;break}P[B]=w}}}}}else return De.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=x===a}else var o=!0;if(o){if(t.additionalProperties!==void 0){let y=a;De(t.additionalProperties,{instancePath:e+"/additionalProperties",parentData:t,parentDataProperty:"additionalProperties",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.definitions!==void 0){let y=t.definitions,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let I in y){let R=a;De(y[I],{instancePath:e+"/definitions/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:I,rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var l=R===a;if(!l)break}else return De.errors=[{instancePath:e+"/definitions",schemaPath:"#/properties/definitions/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.properties!==void 0){let y=t.properties,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let I in y){let R=a;De(y[I],{instancePath:e+"/properties/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:I,rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var d=R===a;if(!d)break}else return De.errors=[{instancePath:e+"/properties",schemaPath:"#/properties/properties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.patternProperties!==void 0){let y=t.patternProperties,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y)){for(let I in y){let R=a;if(a===R&&typeof I=="string"&&!xbe(I)){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"',propertyName:I};i===null?i=[w]:i.push(w),a++}var f=R===a;if(!f){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames",keyword:"propertyNames",params:{propertyName:I},message:"property name must be valid"};return i===null?i=[w]:i.push(w),a++,De.errors=i,!1;break}}if(f)for(let I in y){let R=a;De(y[I],{instancePath:e+"/patternProperties/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:I,rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var p=R===a;if(!p)break}}else return De.errors=[{instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.dependencies!==void 0){let y=t.dependencies,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let I in y){let R=y[I],w=a,N=a,P=!1,B=a;De(R,{instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:I,rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var m=B===a;if(P=P||m,!P){let M=a;if(a===a)if(Array.isArray(R)){var h=!0;let Z=R.length;for(let W=0;W<Z;W++){let F=a;if(typeof R[W]!="string"){let j={instancePath:e+"/dependencies/"+I.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=F===a;if(!h)break}if(h){let W=R.length,F;if(W>1){let K={};for(;W--;){let j=R[W];if(typeof j=="string"){if(typeof K[j]=="number"){F=K[j];let J={instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:W,j:F},message:"must NOT have duplicate items (items ## "+F+" and "+W+" are identical)"};i===null?i=[J]:i.push(J),a++;break}K[j]=W}}}}}else{let Z={instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[Z]:i.push(Z),a++}var m=M===a;P=P||m}if(P)a=N,i!==null&&(N?i.length=N:i=null);else{let M={instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/dependencies/additionalProperties/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[M]:i.push(M),a++,De.errors=i,!1}var A=w===a;if(!A)break}else return De.errors=[{instancePath:e+"/dependencies",schemaPath:"#/properties/dependencies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.propertyNames!==void 0){let y=a;De(t.propertyNames,{instancePath:e+"/propertyNames",parentData:t,parentDataProperty:"propertyNames",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.enum!==void 0){let y=t.enum,x=a;if(a===x)if(Array.isArray(y)){if(y.length<1)return De.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{let I=y.length,R;if(I>1){e:for(;I--;)for(R=I;R--;)if(bbe(y[I],y[R])){return De.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/uniqueItems",keyword:"uniqueItems",params:{i:I,j:R},message:"must NOT have duplicate items (items ## "+R+" and "+I+" are identical)"}],!1;break e}}}}else return De.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=x===a}else var o=!0;if(o){if(t.type!==void 0){let y=t.type,x=a,v=a,I=!1,R=a;if(!(y==="array"||y==="boolean"||y==="integer"||y==="null"||y==="number"||y==="object"||y==="string")){let N={instancePath:e+"/type",schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:Abe.enum},message:"must be equal to one of the allowed values"};i===null?i=[N]:i.push(N),a++}var g=R===a;if(I=I||g,!I){let N=a;if(a===N)if(Array.isArray(y))if(y.length<1){let B={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"};i===null?i=[B]:i.push(B),a++}else{var b=!0;let B=y.length;for(let M=0;M<B;M++){let D=y[M],L=a;if(!(D==="array"||D==="boolean"||D==="integer"||D==="null"||D==="number"||D==="object"||D==="string")){let W={instancePath:e+"/type/"+M,schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:Abe.enum},message:"must be equal to one of the allowed values"};i===null?i=[W]:i.push(W),a++}var b=L===a;if(!b)break}if(b){let M=y.length,D;if(M>1){e:for(;M--;)for(D=M;D--;)if(bbe(y[M],y[D])){let L={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/uniqueItems",keyword:"uniqueItems",params:{i:M,j:D},message:"must NOT have duplicate items (items ## "+D+" and "+M+" are identical)"};i===null?i=[L]:i.push(L),a++;break e}}}}else{let B={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[B]:i.push(B),a++}var g=N===a;I=I||g}if(I)a=v,i!==null&&(v?i.length=v:i=null);else{let N={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,De.errors=i,!1}var o=x===a}else var o=!0;if(o){if(t.format!==void 0){let y=a;if(typeof t.format!="string")return De.errors=[{instancePath:e+"/format",schemaPath:"#/properties/format/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.contentMediaType!==void 0){let y=a;if(typeof t.contentMediaType!="string")return De.errors=[{instancePath:e+"/contentMediaType",schemaPath:"#/properties/contentMediaType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.contentEncoding!==void 0){let y=a;if(typeof t.contentEncoding!="string")return De.errors=[{instancePath:e+"/contentEncoding",schemaPath:"#/properties/contentEncoding/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.if!==void 0){let y=a;De(t.if,{instancePath:e+"/if",parentData:t,parentDataProperty:"if",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.then!==void 0){let y=a;De(t.then,{instancePath:e+"/then",parentData:t,parentDataProperty:"then",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.else!==void 0){let y=a;De(t.else,{instancePath:e+"/else",parentData:t,parentDataProperty:"else",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.allOf!==void 0){let y=a;sa(t.allOf,{instancePath:e+"/allOf",parentData:t,parentDataProperty:"allOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.anyOf!==void 0){let y=a;sa(t.anyOf,{instancePath:e+"/anyOf",parentData:t,parentDataProperty:"anyOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.oneOf!==void 0){let y=a;sa(t.oneOf,{instancePath:e+"/oneOf",parentData:t,parentDataProperty:"oneOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o)if(t.not!==void 0){let y=a;De(t.not,{instancePath:e+"/not",parentData:t,parentDataProperty:"not",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return De.errors=i,a===0}});var nF=E((VDr,_be)=>{"use strict";var eF=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Failed to merge "${e}" keyword schemas.`,this.schemas=r}},tF=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Resolver for "${e}" keyword not found.`,this.schemas=r}},rF=class extends Error{constructor(e){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Invalid "onConflict" option: "${e}".`}};_be.exports={MergeError:eF,ResolverNotFoundError:tF,InvalidOnConflictOptionError:rF}});var Ibe=E((zDr,vbe)=>{"use strict";var HNt=Ko(),{MergeError:sF}=nF();function Sbe(t){let e=t[0];for(let r=1;r<t.length;r++)e=e.filter(n=>t[r].includes(n));return e}function QNt(t,e,r){let n=Sbe(e);if(n.length===0)throw new sF(t,e);r[t]=n}function GNt(t,e,r){for(let s=0;s<e.length;s++)Array.isArray(e[s])||(e[s]=[e[s]]);let n=Sbe(e);if(n.length===0)throw new sF(t,e);n.length===1?r[t]=n[0]:r[t]=n}function KNt(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 VNt(t,e,r){r[t]=Math.min(...e)}function zNt(t,e,r){r[t]=Math.max(...e)}function YNt(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 JNt(t,e,r){let n=e[0];for(let s=1;s<e.length;s++)if(!HNt(e[s],n))throw new sF(t,e);r[t]=n}function XNt(){}function ZNt(t,e,r){for(let n of e)if(n===!1){r[t]=!1;return}r[t]=!0}function eOt(t,e,r){for(let n of e)if(n===!0){r[t]=!0;return}r[t]=!1}vbe.exports={arraysIntersection:QNt,hybridArraysIntersection:GNt,arraysUnion:KNt,minNumber:VNt,maxNumber:zNt,commonMultiple:YNt,allEqual:JNt,booleanAnd:ZNt,booleanOr:eOt,skip:XNt}});var Obe=E((YDr,Nbe)=>{"use strict";var tOt=Ko(),jn=Ibe(),JN=nF(),wbe={$id:jn.skip,type:jn.hybridArraysIntersection,enum:jn.arraysIntersection,minLength:jn.maxNumber,maxLength:jn.minNumber,minimum:jn.maxNumber,maximum:jn.minNumber,multipleOf:jn.commonMultiple,exclusiveMinimum:jn.maxNumber,exclusiveMaximum:jn.minNumber,minItems:jn.maxNumber,maxItems:jn.minNumber,maxProperties:jn.minNumber,minProperties:jn.maxNumber,const:jn.allEqual,default:jn.allEqual,format:jn.allEqual,required:jn.arraysUnion,properties:oOt,patternProperties:YN,additionalProperties:zN,items:sOt,additionalItems:iOt,definitions:YN,$defs:YN,nullable:jn.booleanAnd,oneOf:Cbe,anyOf:Cbe,allOf:jn.arraysUnion,not:zN,if:cOt,then:jn.skip,else:jn.skip,dependencies:Tbe,dependentRequired:Tbe,dependentSchemas:YN,propertyNames:zN,uniqueItems:jn.booleanOr,contains:zN};function zN(t,e,r,n,s){r[t]=Qc(e,s)}function rOt(t){let e=[[]];for(let r of t){let n=[];for(let s of e)for(let i of r)n.push([...s,i]);e=n}return e}function Cbe(t,e,r,n,s){if(e.length===1){r[t]=e[0];return}let i=rOt(e),a=[];for(let o of i)try{let c=Qc(o,s);c!==void 0&&a.push(c)}catch(c){if(c instanceof JN.MergeError)continue;throw c}r[t]=a}function nOt(t,e){let{items:r,additionalItems:n}=t;return Array.isArray(r)?e<r.length?r[e]:n:r!==void 0?r:n}function sOt(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]=Qc(e,s);return}let a=[];for(let o=0;o<i;o++){let c=[];for(let u of n){let l=nOt(u,o);l!==void 0&&c.push(l)}a[o]=Qc(c,s)}r[t]=a}function iOt(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]=Qc(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]=Qc(a,s)}function aOt(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 oOt(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=aOt(d,u);f!==void 0&&i[u].push(f)}}}let a={};for(let o of Object.keys(i)){let c=i[o];a[o]=Qc(c,s)}r[t]=a}function YN(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=Qc(c,s);a[o]=u}r[t]=a}function cOt(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=Qc([r.then,a],s)),r.else!==void 0&&(r.else=Qc([r.else,a],s))}}}function Tbe(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 Qc(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 Rbe(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(!tOt(e[o],e[0])){a=!1;break}if(a){r[t]=e[0];return}if(i==="throw")throw new JN.ResolverNotFoundError(t,e);if(i!=="skip")throw new JN.InvalidOnConflictOptionError(i)}function uOt(t,e={}){return e.defaultResolver===void 0&&(e.defaultResolver=Rbe),e.resolvers={...wbe,...e.resolvers},Qc(t,e)}Nbe.exports={mergeSchemas:uOt,keywordsResolvers:wbe,defaultResolver:Rbe,...JN}});var kbe=E((JDr,Pbe)=>{"use strict";var{mergeSchemas:lOt}=Obe();function dOt(t){return lOt(t,{onConflict:"skip"})}Pbe.exports=dOt});var qbe=E((XDr,cy)=>{"use strict";var{RefResolver:fOt}=mbe(),pOt=r8(),mOt=ZW(),Mm=gbe(),Dbe=Ebe(),hOt=kbe(),gOt=/'/g,XN=2e4,Lbe="default",AOt=["floor","ceil","round","trunc"],Mbe=["default","json-stringify"],r_=0;function iF(t,e){if(!Dbe(t)){e?e=`"${e}" `:e="";let r=Dbe.errors[0],n=new Error(`${e}schema is invalid: data${r.instancePath} ${r.message}`);throw n.errors=iF.errors,n}}function n_(t,e){let r=e.schema.$ref,n=r.indexOf("#");n===-1&&(n=r.length);let s=r.slice(0,n)||e.schemaId,i=r.slice(n)||"#",a=t.refResolver.getSchema(s,i);if(a===null)throw new Error(`Cannot find reference "${r}"`);let o=new Mm(a,s,i);return a.$ref!==void 0?n_(t,o):o}function ZN(t,e){let r=t.refResolver.getSchema(e,"#");return new Mm(r,e,"#")}function Bbe(t,e){return t.$id&&t.$id.charAt(0)!=="#"?t.$id:e}function aF(t,e){iF(t),e=e||{};let r={functions:[],functionsCounter:0,functionsNamesBySchema:new Map,options:e,refResolver:new fOt,rootSchemaId:t.$id||`__fjs_root_${r_++}`,validatorSchemasIds:new Set,mergedSchemasIds:new Map},n=Bbe(t,r.rootSchemaId);if(r.refResolver.hasSchema(n)||r.refResolver.addSchema(t,r.rootSchemaId),e.schema)for(let l in e.schema){let d=e.schema[l],f=Bbe(d,l);r.refResolver.hasSchema(f)||(iF(d,l),r.refResolver.addSchema(d,l))}if(e.rounding&&!AOt.includes(e.rounding))throw new Error(`Unsupported integer rounding method ${e.rounding}`);if(e.largeArrayMechanism)if(Mbe.includes(e.largeArrayMechanism))Lbe=e.largeArrayMechanism;else throw new Error(`Unsupported large array mechanism ${e.largeArrayMechanism}`);if(e.largeArraySize)if(typeof e.largeArraySize=="string"&&Number.isFinite(Number.parseInt(e.largeArraySize,10)))XN=Number.parseInt(e.largeArraySize,10);else if(typeof e.largeArraySize=="number"&&Number.isInteger(e.largeArraySize))XN=e.largeArraySize;else if(typeof e.largeArraySize=="bigint")XN=Number(e.largeArraySize);else throw new Error(`Unsupported large array size. Expected integer-like, got ${typeof e.largeArraySize} with value ${e.largeArraySize}`);let s=new Mm(t,r.rootSchemaId),i=bo(r,s,"input"),a=`
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 pOt(e),c=new mOt(e.ajv);for(let l of r.validatorSchemasIds){let d=r.refResolver.getSchema(l);c.addSchema(d,l);let f=r.refResolver.getSchemaDependencies(l);for(let[p,m]of Object.entries(f))c.addSchema(m,p)}if(e.debugMode&&(e.mode="debug"),e.mode==="debug")return{validator:c,serializer:o,code:`validator
serializer
${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode==="standalone"?t$()(u,r,o,c):u(c,o)}var yOt=["properties","required","additionalProperties","patternProperties","maxProperties","minProperties","dependencies"],xOt=["items","additionalItems","maxItems","minItems","uniqueItems","contains"],bOt=["maxLength","minLength","pattern"],EOt=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum"];function _Ot(t){for(var e of yOt)if(e in t)return"object";for(var e of xOt)if(e in t)return"array";for(var e of bOt)if(e in t)return"string";for(var e of EOt)if(e in t)return"number";return t.type}function SOt(t,e,r){let n=e.schema,s=Object.keys(n.properties||{}),i=`
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
${bo(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
${bo(t,l,"value")}
`}return i+=`
}
`,i}function vOt(t,e){let r=e.schema,n=e.getPropertyLocation("properties"),s=r.required||[],i=Object.keys(r.properties||{}).sort((u,l)=>{let d=s.includes(u),f=s.includes(l);return d===f?0:d?-1:1}),a=s.includes(i[0]),o=`let value
`;for(let u of s)if(!i.includes(u)){let l=JSON.stringify(u);o+=`if (obj[${l}] === undefined) throw new Error('${l.replace(/'/g,"\\'")} is required!')
`}o+=`let json = JSON_STR_BEGIN_OBJECT
`;let c="";a||(o+=`let addComma = false
`,c="!addComma && (addComma = true) || (json += JSON_STR_COMMA)");for(let u of i){let l=n.getPropertyLocation(u);l.schema.$ref&&(l=n_(t,l));let d=JSON.stringify(u),f=l.schema.default,p=s.includes(u);o+=`
value = obj[${d}]
if (value !== undefined) {
${c}
json += ${JSON.stringify(d+":")}
${bo(t,l,"value")}
}`,f!==void 0?o+=` else {
${c}
json += ${JSON.stringify(d+":"+JSON.stringify(f))}
}
`:p?o+=` else {
throw new Error('${d.replace(/'/g,"\\'")} is required!')
}
`:o+=`
`,a&&(c="json += ','")}return(r.patternProperties||r.additionalProperties)&&(o+=SOt(t,e,c)),o+=`
return json + JSON_STR_END_OBJECT
`,o}function eO(t,e,r){for(let a=0;a<r.length;a++){let o=r[a];o.schema.$ref&&(r[a]=n_(t,o))}let n=[];for(let a of r){let o=Wbe(t,a.schema,a.schemaId);delete o.$id,n.push(o)}let s=hOt(n),i=new Mm(s,e);return t.refResolver.addSchema(s,e),i}function Wbe(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=Wbe(t,a,r)),n[i]=a}return n}function IOt(t){return`(${t} && typeof ${t}.toJSON === 'function')
? ${t}.toJSON()
: ${t}
`}function COt(t,e){let r=e.schema;if(t.functionsNamesBySchema.has(r))return t.functionsNamesBySchema.get(r);let n=Fbe(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 = ${IOt("input")}
${a?"":"if (obj === null) return JSON_STR_EMPTY_OBJECT"}
${vOt(t,e)}
}
`,t.functions.push(i),n}function TOt(t,e){let r=e.schema,n=e.getPropertyLocation("items");n.schema=n.schema||{},n.schema.$ref&&(n=n_(t,n));let s=n.schema;if(t.functionsNamesBySchema.has(r))return t.functionsNamesBySchema.get(r);let i=Fbe(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.\`)
}
`),Lbe==="json-stringify"&&(o+=`if (arrayLength >= ${XN}) 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=bo(t,n.getPropertyLocation(u),"value");o+=`
if (${u} < arrayLength) {
if (${$be(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=bo(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 $be(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=>$be(s,e)).join(" || ")})`)}return r}function Fbe(t){return"anonymous"+t.functionsCounter++}function wOt(t,e,r){let s=e.schema.type.sort(o=>o==="null"?-1:1),i="";s.forEach((o,c)=>{e.schema={...e.schema,type:o};let u=Ube(t,e,r),l=c===0?"if":"else if";switch(o){case"null":i+=`
${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 Ube(t,e,r){let n=e.schema;switch(n.type){case"null":return"json += JSON_STR_NULL";case"string":return n.format==="date-time"?`json += serializer.asDateTime(${r})`:n.format==="date"?`json += serializer.asDate(${r})`:n.format==="time"?`json += serializer.asTime(${r})`:n.format==="unsafe"?`json += serializer.asUnsafeString(${r})`:`
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 += ${COt(t,e)}(${r})`;case"array":return`json += ${TOt(t,e)}(${r})`;case void 0:return`json += JSON.stringify(${r})`;default:throw new Error(`${n.type} unsupported`)}}function ROt(t,e){let r=t.schema,n=r.type,s=Array.isArray(n)&&n.includes("null"),i="";return s&&(i+=`
if (${e} === null) {
json += JSON_STR_NULL
} else {
`),i+=`json += '${JSON.stringify(r.const).replace(gOt,"\\'")}'`,s&&(i+=`
}
`),i}function NOt(t,e,r){let n=e.schema,s=t.mergedSchemasIds.get(n);if(s){let l=ZN(t,s);return bo(t,l,r)}s=`__fjs_merged_${r_++}`,t.mergedSchemasIds.set(n,s);let{allOf:i,...a}=e.schema,o=[new Mm(a,e.schemaId,e.jsonPointer)],c=e.getPropertyLocation("allOf");for(let l=0;l<i.length;l++)o.push(c.getPropertyLocation(l));let u=eO(t,s,o);return bo(t,u,r)}function OOt(t,e,r){t.validatorSchemasIds.add(e.schemaId);let s=e.schema.anyOf?"anyOf":"oneOf",{[s]:i,...a}=e.schema,o=new Mm(a,e.schemaId,e.jsonPointer),c=e.getPropertyLocation(s),u="";for(let d=0;d<i.length;d++){let f=c.getPropertyLocation(d),p=f.schema,m=t.mergedSchemasIds.get(p),h=null;m?h=ZN(t,m):(m=`__fjs_merged_${r_++}`,t.mergedSchemasIds.set(p,m),h=eO(t,m,[o,f]));let A=bo(t,h,r),g=f.getSchemaRef();u+=`
${d===0?"if":"else if"}(validator.validate("${g}", ${r}))
${A}
`}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 POt(t,e,r){t.validatorSchemasIds.add(e.schemaId);let{if:n,then:s,else:i,...a}=e.schema,o=new Mm(a,e.schemaId,e.jsonPointer),u=e.getPropertyLocation("if").getSchemaRef(),l=e.getPropertyLocation("then"),d=t.mergedSchemasIds.get(s),f=null;if(d?f=ZN(t,d):(d=`__fjs_merged_${r_++}`,t.mergedSchemasIds.set(s,d),f=eO(t,d,[o,l])),!i)return`
if (validator.validate("${u}", ${r})) {
${bo(t,f,r)}
} else {
${bo(t,o,r)}
}
`;let p=e.getPropertyLocation("else"),m=t.mergedSchemasIds.get(i),h=null;return m?h=ZN(t,m):(m=`__fjs_merged_${r_++}`,t.mergedSchemasIds.set(i,m),h=eO(t,m,[o,p])),`
if (validator.validate("${u}", ${r})) {
${bo(t,f,r)}
} else {
${bo(t,h,r)}
}
`}function bo(t,e,r){let n=e.schema;if(typeof n=="boolean")return`json += JSON.stringify(${r})`;if(n.$ref&&(e=n_(t,e),n=e.schema),n.allOf)return NOt(t,e,r);if(n.anyOf||n.oneOf)return OOt(t,e,r);if(n.if&&n.then)return POt(t,e,r);if(n.type===void 0){let o=_Ot(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+=ROt(e,r):Array.isArray(i)?s+=wOt(t,e,r):s+=Ube(t,e,r),a&&(s+=`
}
`),s}cy.exports=aF;cy.exports.default=aF;cy.exports.build=aF;cy.exports.validLargeArrayMechanisms=Mbe;cy.exports.restore=function({code:t,validator:e,serializer:r}){return Function.apply(null,["validator","serializer",t]).apply(null,[e,r])}});var Hbe=E((ZDr,oF)=>{"use strict";var kOt=cF();function jbe(t={readMode:!0}){if(t.readMode===!0&&typeof t.restoreFunction!="function")throw new Error("You must provide a function for the restoreFunction-option when readMode ON");if(t.readMode!==!0&&typeof t.storeFunction!="function")throw new Error("You must provide a function for the storeFunction-option when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=kOt();return function(n,s={}){s.mode="standalone";let i=e(n,s);return function(a){let o=i(a);return t.storeFunction(a,o),new Function(o)}}}oF.exports=jbe;oF.exports.default=jbe});var cF=E((e3r,s_)=>{"use strict";var DOt=qbe();function uF(){return function(e,r){let n=Object.assign({},r,{schema:e});return BOt.bind(null,n)}}function BOt(t,{schema:e}){return t.schema&&e.$id&&t.schema[e.$id]&&(t.schema={...t.schema},delete t.schema[e.$id]),DOt(e,t)}s_.exports=uF;s_.exports.default=uF;s_.exports.SerializerSelector=uF;s_.exports.StandaloneSerializer=Hbe()});var uy=E(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.regexpCode=Br.getEsmExportName=Br.getProperty=Br.safeStringify=Br.stringify=Br.strConcat=Br.addCodeArg=Br.str=Br._=Br.nil=Br._Code=Br.Name=Br.IDENTIFIER=Br._CodeOrName=void 0;var i_=class{};Br._CodeOrName=i_;Br.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Wm=class extends i_{constructor(e){if(super(),!Br.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Br.Name=Wm;var Zo=class extends i_{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Wm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Br._Code=Zo;Br.nil=new Zo("");function Qbe(t,...e){let r=[t[0]],n=0;for(;n<e.length;)dF(r,e[n]),r.push(t[++n]);return new Zo(r)}Br._=Qbe;var lF=new Zo("+");function Gbe(t,...e){let r=[a_(t[0])],n=0;for(;n<e.length;)r.push(lF),dF(r,e[n]),r.push(lF,a_(t[++n]));return LOt(r),new Zo(r)}Br.str=Gbe;function dF(t,e){e instanceof Zo?t.push(...e._items):e instanceof Wm?t.push(e):t.push($Ot(e))}Br.addCodeArg=dF;function LOt(t){let e=1;for(;e<t.length-1;){if(t[e]===lF){let r=MOt(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function MOt(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Wm||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 Wm))return`"${t}${e.slice(1)}`}function WOt(t,e){return e.emptyStr()?t:t.emptyStr()?e:Gbe`${t}${e}`}Br.strConcat=WOt;function $Ot(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:a_(Array.isArray(t)?t.join(","):t)}function FOt(t){return new Zo(a_(t))}Br.stringify=FOt;function a_(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Br.safeStringify=a_;function UOt(t){return typeof t=="string"&&Br.IDENTIFIER.test(t)?new Zo(`.${t}`):Qbe`[${t}]`}Br.getProperty=UOt;function qOt(t){if(typeof t=="string"&&Br.IDENTIFIER.test(t))return new Zo(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Br.getEsmExportName=qOt;function jOt(t){return new Zo(t.toString())}Br.regexpCode=jOt});var sO=E(Ma=>{"use strict";Object.defineProperty(Ma,"__esModule",{value:!0});Ma.ValueScope=Ma.ValueScopeName=Ma.Scope=Ma.varKinds=Ma.UsedValueState=void 0;var La=uy(),fF=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},tO;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(tO||(Ma.UsedValueState=tO={}));Ma.varKinds={const:new La.Name("const"),let:new La.Name("let"),var:new La.Name("var")};var rO=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof La.Name?e:this.name(e)}name(e){return new La.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ma.Scope=rO;var nO=class extends La.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,La._)`.${new La.Name(r)}[${n}]`}};Ma.ValueScopeName=nO;var HOt=(0,La._)`\n`,pF=class extends rO{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?HOt:La.nil}}get(){return this._scope}name(e){return new nO(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,La._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=La.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,tO.Started);let l=r(u);if(l){let d=this.opts.es5?Ma.varKinds.var:Ma.varKinds.const;i=(0,La._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,La._)`${i}${l}${this.opts._n}`;else throw new fF(u);c.set(u,tO.Completed)})}return i}};Ma.ValueScope=pF});var Et=E(Xt=>{"use strict";Object.defineProperty(Xt,"__esModule",{value:!0});Xt.or=Xt.and=Xt.not=Xt.CodeGen=Xt.operators=Xt.varKinds=Xt.ValueScopeName=Xt.ValueScope=Xt.Scope=Xt.Name=Xt.regexpCode=Xt.stringify=Xt.getProperty=Xt.nil=Xt.strConcat=Xt.str=Xt._=void 0;var Ar=uy(),Gc=sO(),Sp=uy();Object.defineProperty(Xt,"_",{enumerable:!0,get:function(){return Sp._}});Object.defineProperty(Xt,"str",{enumerable:!0,get:function(){return Sp.str}});Object.defineProperty(Xt,"strConcat",{enumerable:!0,get:function(){return Sp.strConcat}});Object.defineProperty(Xt,"nil",{enumerable:!0,get:function(){return Sp.nil}});Object.defineProperty(Xt,"getProperty",{enumerable:!0,get:function(){return Sp.getProperty}});Object.defineProperty(Xt,"stringify",{enumerable:!0,get:function(){return Sp.stringify}});Object.defineProperty(Xt,"regexpCode",{enumerable:!0,get:function(){return Sp.regexpCode}});Object.defineProperty(Xt,"Name",{enumerable:!0,get:function(){return Sp.Name}});var cO=sO();Object.defineProperty(Xt,"Scope",{enumerable:!0,get:function(){return cO.Scope}});Object.defineProperty(Xt,"ValueScope",{enumerable:!0,get:function(){return cO.ValueScope}});Object.defineProperty(Xt,"ValueScopeName",{enumerable:!0,get:function(){return cO.ValueScopeName}});Object.defineProperty(Xt,"varKinds",{enumerable:!0,get:function(){return cO.varKinds}});Xt.operators={GT:new Ar._Code(">"),GTE:new Ar._Code(">="),LT:new Ar._Code("<"),LTE:new Ar._Code("<="),EQ:new Ar._Code("==="),NEQ:new Ar._Code("!=="),NOT:new Ar._Code("!"),OR:new Ar._Code("||"),AND:new Ar._Code("&&"),ADD:new Ar._Code("+")};var Ad=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},mF=class extends Ad{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Gc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=dy(this.rhs,e,r)),this}get names(){return this.rhs instanceof Ar._CodeOrName?this.rhs.names:{}}},iO=class extends Ad{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Ar.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=dy(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Ar.Name?{}:{...this.lhs.names};return oO(e,this.rhs)}},hF=class extends iO{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},gF=class extends Ad{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},AF=class extends Ad{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},yF=class extends Ad{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},xF=class extends Ad{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=dy(this.code,e,r),this}get names(){return this.code instanceof Ar._CodeOrName?this.code.names:{}}},o_=class extends Ad{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(QOt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Um(e,r.names),{})}},yd=class extends o_{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},bF=class extends o_{},ly=class extends yd{};ly.kind="else";var $m=class t extends yd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new ly(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Kbe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=dy(this.condition,e,r),this}get names(){let e=super.names;return oO(e,this.condition),this.else&&Um(e,this.else.names),e}};$m.kind="if";var Fm=class extends yd{};Fm.kind="for";var EF=class extends Fm{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=dy(this.iteration,e,r),this}get names(){return Um(super.names,this.iteration.names)}},_F=class extends Fm{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Gc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=oO(super.names,this.from);return oO(e,this.to)}},aO=class extends Fm{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=dy(this.iterable,e,r),this}get names(){return Um(super.names,this.iterable.names)}},c_=class extends yd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};c_.kind="func";var u_=class extends o_{render(e){return"return "+super.render(e)}};u_.kind="return";var SF=class extends yd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Um(e,this.catch.names),this.finally&&Um(e,this.finally.names),e}},l_=class extends yd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};l_.kind="catch";var d_=class extends yd{render(e){return"finally"+super.render(e)}};d_.kind="finally";var vF=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
`:""},this._extScope=e,this._scope=new Gc.Scope({parent:e}),this._nodes=[new bF]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new mF(e,i,n)),i}const(e,r,n){return this._def(Gc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Gc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Gc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new iO(e,r,n))}add(e,r){return this._leafNode(new hF(e,Xt.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Ar.nil&&this._leafNode(new xF(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,Ar.addCodeArg)(r,s));return r.push("}"),new Ar._Code(r)}if(e,r,n){if(this._blockNode(new $m(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new $m(e))}else(){return this._elseNode(new ly)}endIf(){return this._endBlockNode($m,ly)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new EF(e),r)}forRange(e,r,n,s,i=this.opts.es5?Gc.varKinds.var:Gc.varKinds.let){let a=this._scope.toName(e);return this._for(new _F(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Gc.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Ar.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Ar._)`${a}.length`,o=>{this.var(i,(0,Ar._)`${a}[${o}]`),n(i)})}return this._for(new aO("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Gc.varKinds.var:Gc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Ar._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new aO("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Fm)}label(e){return this._leafNode(new gF(e))}break(e){return this._leafNode(new AF(e))}return(e){let r=new u_;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(u_)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new SF;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new l_(i),r(i)}return n&&(this._currNode=s.finally=new d_,this.code(n)),this._endBlockNode(l_,d_)}throw(e){return this._leafNode(new yF(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Ar.nil,n,s){return this._blockNode(new c_(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(c_)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof $m))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Xt.CodeGen=vF;function Um(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function oO(t,e){return e instanceof Ar._CodeOrName?Um(t,e.names):t}function dy(t,e,r){if(t instanceof Ar.Name)return n(t);if(!s(t))return t;return new Ar._Code(t._items.reduce((i,a)=>(a instanceof Ar.Name&&(a=n(a)),a instanceof Ar._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof Ar._Code&&i._items.some(a=>a instanceof Ar.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function QOt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Kbe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Ar._)`!${IF(t)}`}Xt.not=Kbe;var GOt=Vbe(Xt.operators.AND);function KOt(...t){return t.reduce(GOt)}Xt.and=KOt;var VOt=Vbe(Xt.operators.OR);function zOt(...t){return t.reduce(VOt)}Xt.or=zOt;function Vbe(t){return(e,r)=>e===Ar.nil?r:r===Ar.nil?e:(0,Ar._)`${IF(e)} ${t} ${IF(r)}`}function IF(t){return t instanceof Ar.Name?t:(0,Ar._)`(${t})`}});var Vt=E(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.checkStrictMode=rr.getErrorPath=rr.Type=rr.useFunc=rr.setEvaluated=rr.evaluatedPropsToName=rr.mergeEvaluated=rr.eachItem=rr.unescapeJsonPointer=rr.escapeJsonPointer=rr.escapeFragment=rr.unescapeFragment=rr.schemaRefOrVal=rr.schemaHasRulesButRef=rr.schemaHasRules=rr.checkUnknownRules=rr.alwaysValidSchema=rr.toHash=void 0;var fn=Et(),YOt=uy();function JOt(t){let e={};for(let r of t)e[r]=!0;return e}rr.toHash=JOt;function XOt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Jbe(t,e),!Xbe(e,t.self.RULES.all))}rr.alwaysValidSchema=XOt;function Jbe(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||tEe(t,`unknown keyword: "${i}"`)}rr.checkUnknownRules=Jbe;function Xbe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}rr.schemaHasRules=Xbe;function ZOt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}rr.schemaHasRulesButRef=ZOt;function ePt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,fn._)`${r}`}return(0,fn._)`${t}${e}${(0,fn.getProperty)(n)}`}rr.schemaRefOrVal=ePt;function tPt(t){return Zbe(decodeURIComponent(t))}rr.unescapeFragment=tPt;function rPt(t){return encodeURIComponent(TF(t))}rr.escapeFragment=rPt;function TF(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}rr.escapeJsonPointer=TF;function Zbe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}rr.unescapeJsonPointer=Zbe;function nPt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}rr.eachItem=nPt;function zbe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof fn.Name?(i instanceof fn.Name?t(s,i,a):e(s,i,a),a):i instanceof fn.Name?(e(s,a,i),i):r(i,a);return o===fn.Name&&!(c instanceof fn.Name)?n(s,c):c}}rr.mergeEvaluated={props:zbe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,fn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,fn._)`${r} || {}`).code((0,fn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,fn._)`${r} || {}`),wF(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:eEe}),items:zbe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,fn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,fn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function eEe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,fn._)`{}`);return e!==void 0&&wF(t,r,e),r}rr.evaluatedPropsToName=eEe;function wF(t,e,r){Object.keys(r).forEach(n=>t.assign((0,fn._)`${e}${(0,fn.getProperty)(n)}`,!0))}rr.setEvaluated=wF;var Ybe={};function sPt(t,e){return t.scopeValue("func",{ref:e,code:Ybe[e.code]||(Ybe[e.code]=new YOt._Code(e.code))})}rr.useFunc=sPt;var CF;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(CF||(rr.Type=CF={}));function iPt(t,e,r){if(t instanceof fn.Name){let n=e===CF.Num;return r?n?(0,fn._)`"[" + ${t} + "]"`:(0,fn._)`"['" + ${t} + "']"`:n?(0,fn._)`"/" + ${t}`:(0,fn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,fn.getProperty)(t).toString():"/"+TF(t)}rr.getErrorPath=iPt;function tEe(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}rr.checkStrictMode=tEe});var ec=E(RF=>{"use strict";Object.defineProperty(RF,"__esModule",{value:!0});var ki=Et(),aPt={data:new ki.Name("data"),valCxt:new ki.Name("valCxt"),instancePath:new ki.Name("instancePath"),parentData:new ki.Name("parentData"),parentDataProperty:new ki.Name("parentDataProperty"),rootData:new ki.Name("rootData"),dynamicAnchors:new ki.Name("dynamicAnchors"),vErrors:new ki.Name("vErrors"),errors:new ki.Name("errors"),this:new ki.Name("this"),self:new ki.Name("self"),scope:new ki.Name("scope"),json:new ki.Name("json"),jsonPos:new ki.Name("jsonPos"),jsonLen:new ki.Name("jsonLen"),jsonPart:new ki.Name("jsonPart")};RF.default=aPt});var f_=E(Di=>{"use strict";Object.defineProperty(Di,"__esModule",{value:!0});Di.extendErrors=Di.resetErrorsCount=Di.reportExtraError=Di.reportError=Di.keyword$DataError=Di.keywordError=void 0;var vr=Et(),uO=Vt(),ia=ec();Di.keywordError={message:({keyword:t})=>(0,vr.str)`must pass "${t}" keyword validation`};Di.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,vr.str)`"${t}" keyword must be ${e} ($data)`:(0,vr.str)`"${t}" keyword is invalid ($data)`};function oPt(t,e=Di.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=sEe(t,e,r);n??(a||o)?rEe(i,c):nEe(s,(0,vr._)`[${c}]`)}Di.reportError=oPt;function cPt(t,e=Di.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=sEe(t,e,r);rEe(s,o),i||a||nEe(n,ia.default.vErrors)}Di.reportExtraError=cPt;function uPt(t,e){t.assign(ia.default.errors,e),t.if((0,vr._)`${ia.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,vr._)`${ia.default.vErrors}.length`,e),()=>t.assign(ia.default.vErrors,null)))}Di.resetErrorsCount=uPt;function lPt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ia.default.errors,o=>{t.const(a,(0,vr._)`${ia.default.vErrors}[${o}]`),t.if((0,vr._)`${a}.instancePath === undefined`,()=>t.assign((0,vr._)`${a}.instancePath`,(0,vr.strConcat)(ia.default.instancePath,i.errorPath))),t.assign((0,vr._)`${a}.schemaPath`,(0,vr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,vr._)`${a}.schema`,r),t.assign((0,vr._)`${a}.data`,n))})}Di.extendErrors=lPt;function rEe(t,e){let r=t.const("err",e);t.if((0,vr._)`${ia.default.vErrors} === null`,()=>t.assign(ia.default.vErrors,(0,vr._)`[${r}]`),(0,vr._)`${ia.default.vErrors}.push(${r})`),t.code((0,vr._)`${ia.default.errors}++`)}function nEe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,vr._)`new ${t.ValidationError}(${e})`):(r.assign((0,vr._)`${n}.errors`,e),r.return(!1))}var qm={keyword:new vr.Name("keyword"),schemaPath:new vr.Name("schemaPath"),params:new vr.Name("params"),propertyName:new vr.Name("propertyName"),message:new vr.Name("message"),schema:new vr.Name("schema"),parentSchema:new vr.Name("parentSchema")};function sEe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,vr._)`{}`:dPt(t,e,r)}function dPt(t,e,r={}){let{gen:n,it:s}=t,i=[fPt(s,r),pPt(t,r)];return mPt(t,e,i),n.object(...i)}function fPt({errorPath:t},{instancePath:e}){let r=e?(0,vr.str)`${t}${(0,uO.getErrorPath)(e,uO.Type.Str)}`:t;return[ia.default.instancePath,(0,vr.strConcat)(ia.default.instancePath,r)]}function pPt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,vr.str)`${e}/${t}`;return r&&(s=(0,vr.str)`${s}${(0,uO.getErrorPath)(r,uO.Type.Str)}`),[qm.schemaPath,s]}function mPt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([qm.keyword,s],[qm.params,typeof e=="function"?e(t):e||(0,vr._)`{}`]),c.messages&&n.push([qm.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([qm.schema,a],[qm.parentSchema,(0,vr._)`${l}${d}`],[ia.default.data,i]),u&&n.push([qm.propertyName,u])}});var aEe=E(fy=>{"use strict";Object.defineProperty(fy,"__esModule",{value:!0});fy.boolOrEmptySchema=fy.topBoolOrEmptySchema=void 0;var hPt=f_(),gPt=Et(),APt=ec(),yPt={message:"boolean schema is false"};function xPt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?iEe(t,!1):typeof r=="object"&&r.$async===!0?e.return(APt.default.data):(e.assign((0,gPt._)`${n}.errors`,null),e.return(!0))}fy.topBoolOrEmptySchema=xPt;function bPt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),iEe(t)):r.var(e,!0)}fy.boolOrEmptySchema=bPt;function iEe(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,hPt.reportError)(s,yPt,void 0,e)}});var NF=E(py=>{"use strict";Object.defineProperty(py,"__esModule",{value:!0});py.getRules=py.isJSONType=void 0;var EPt=["string","number","integer","boolean","null","object","array"],_Pt=new Set(EPt);function SPt(t){return typeof t=="string"&&_Pt.has(t)}py.isJSONType=SPt;function vPt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}py.getRules=vPt});var OF=E(vp=>{"use strict";Object.defineProperty(vp,"__esModule",{value:!0});vp.shouldUseRule=vp.shouldUseGroup=vp.schemaHasRulesForType=void 0;function IPt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&oEe(t,n)}vp.schemaHasRulesForType=IPt;function oEe(t,e){return e.rules.some(r=>cEe(t,r))}vp.shouldUseGroup=oEe;function cEe(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}vp.shouldUseRule=cEe});var p_=E(Bi=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});Bi.reportTypeError=Bi.checkDataTypes=Bi.checkDataType=Bi.coerceAndCheckDataType=Bi.getJSONTypes=Bi.getSchemaTypes=Bi.DataType=void 0;var CPt=NF(),TPt=OF(),wPt=f_(),jt=Et(),uEe=Vt(),my;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(my||(Bi.DataType=my={}));function RPt(t){let e=lEe(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Bi.getSchemaTypes=RPt;function lEe(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(CPt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Bi.getJSONTypes=lEe;function NPt(t,e){let{gen:r,data:n,opts:s}=t,i=OPt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,TPt.schemaHasRulesForType)(t,e[0]));if(a){let o=kF(e,n,s.strictNumbers,my.Wrong);r.if(o,()=>{i.length?PPt(t,e,i):DF(t)})}return a}Bi.coerceAndCheckDataType=NPt;var dEe=new Set(["string","number","integer","boolean","null"]);function OPt(t,e){return e?t.filter(r=>dEe.has(r)||e==="array"&&r==="array"):[]}function PPt(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,jt._)`typeof ${s}`),o=n.let("coerced",(0,jt._)`undefined`);i.coerceTypes==="array"&&n.if((0,jt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,jt._)`${s}[0]`).assign(a,(0,jt._)`typeof ${s}`).if(kF(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,jt._)`${o} !== undefined`);for(let u of r)(dEe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),DF(t),n.endIf(),n.if((0,jt._)`${o} !== undefined`,()=>{n.assign(s,o),kPt(t,o)});function c(u){switch(u){case"string":n.elseIf((0,jt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,jt._)`"" + ${s}`).elseIf((0,jt._)`${s} === null`).assign(o,(0,jt._)`""`);return;case"number":n.elseIf((0,jt._)`${a} == "boolean" || ${s} === null
|| (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,jt._)`+${s}`);return;case"integer":n.elseIf((0,jt._)`${a} === "boolean" || ${s} === null
|| (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,jt._)`+${s}`);return;case"boolean":n.elseIf((0,jt._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,jt._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,jt._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,jt._)`${a} === "string" || ${a} === "number"
|| ${a} === "boolean" || ${s} === null`).assign(o,(0,jt._)`[${s}]`)}}}function kPt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,jt._)`${e} !== undefined`,()=>t.assign((0,jt._)`${e}[${r}]`,n))}function PF(t,e,r,n=my.Correct){let s=n===my.Correct?jt.operators.EQ:jt.operators.NEQ,i;switch(t){case"null":return(0,jt._)`${e} ${s} null`;case"array":i=(0,jt._)`Array.isArray(${e})`;break;case"object":i=(0,jt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,jt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,jt._)`typeof ${e} ${s} ${t}`}return n===my.Correct?i:(0,jt.not)(i);function a(o=jt.nil){return(0,jt.and)((0,jt._)`typeof ${e} == "number"`,o,r?(0,jt._)`isFinite(${e})`:jt.nil)}}Bi.checkDataType=PF;function kF(t,e,r,n){if(t.length===1)return PF(t[0],e,r,n);let s,i=(0,uEe.toHash)(t);if(i.array&&i.object){let a=(0,jt._)`typeof ${e} != "object"`;s=i.null?a:(0,jt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=jt.nil;i.number&&delete i.integer;for(let a in i)s=(0,jt.and)(s,PF(a,e,r,n));return s}Bi.checkDataTypes=kF;var DPt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,jt._)`{type: ${t}}`:(0,jt._)`{type: ${e}}`};function DF(t){let e=BPt(t);(0,wPt.reportError)(e,DPt)}Bi.reportTypeError=DF;function BPt(t){let{gen:e,data:r,schema:n}=t,s=(0,uEe.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var pEe=E(lO=>{"use strict";Object.defineProperty(lO,"__esModule",{value:!0});lO.assignDefaults=void 0;var hy=Et(),LPt=Vt();function MPt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)fEe(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>fEe(t,i,s.default))}lO.assignDefaults=MPt;function fEe(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,hy._)`${i}${(0,hy.getProperty)(e)}`;if(s){(0,LPt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,hy._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,hy._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,hy._)`${o} = ${(0,hy.stringify)(r)}`)}});var fi=E(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.validateUnion=en.validateArray=en.usePattern=en.callValidateCode=en.schemaProperties=en.allSchemaProperties=en.noPropertyInData=en.propertyInData=en.isOwnProperty=en.hasPropFunc=en.reportMissingProp=en.checkMissingProp=en.checkReportMissingProp=void 0;var Pn=Et(),BF=Vt(),Ip=ec(),WPt=Vt();function $Pt(t,e){let{gen:r,data:n,it:s}=t;r.if(MF(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Pn._)`${e}`},!0),t.error()})}en.checkReportMissingProp=$Pt;function FPt({gen:t,data:e,it:{opts:r}},n,s){return(0,Pn.or)(...n.map(i=>(0,Pn.and)(MF(t,e,i,r.ownProperties),(0,Pn._)`${s} = ${i}`)))}en.checkMissingProp=FPt;function UPt(t,e){t.setParams({missingProperty:e},!0),t.error()}en.reportMissingProp=UPt;function mEe(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Pn._)`Object.prototype.hasOwnProperty`})}en.hasPropFunc=mEe;function LF(t,e,r){return(0,Pn._)`${mEe(t)}.call(${e}, ${r})`}en.isOwnProperty=LF;function qPt(t,e,r,n){let s=(0,Pn._)`${e}${(0,Pn.getProperty)(r)} !== undefined`;return n?(0,Pn._)`${s} && ${LF(t,e,r)}`:s}en.propertyInData=qPt;function MF(t,e,r,n){let s=(0,Pn._)`${e}${(0,Pn.getProperty)(r)} === undefined`;return n?(0,Pn.or)(s,(0,Pn.not)(LF(t,e,r))):s}en.noPropertyInData=MF;function hEe(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}en.allSchemaProperties=hEe;function jPt(t,e){return hEe(e).filter(r=>!(0,BF.alwaysValidSchema)(t,e[r]))}en.schemaProperties=jPt;function HPt({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Pn._)`${t}, ${e}, ${n}${s}`:e,d=[[Ip.default.instancePath,(0,Pn.strConcat)(Ip.default.instancePath,i)],[Ip.default.parentData,a.parentData],[Ip.default.parentDataProperty,a.parentDataProperty],[Ip.default.rootData,Ip.default.rootData]];a.opts.dynamicRef&&d.push([Ip.default.dynamicAnchors,Ip.default.dynamicAnchors]);let f=(0,Pn._)`${l}, ${r.object(...d)}`;return c!==Pn.nil?(0,Pn._)`${o}.call(${c}, ${f})`:(0,Pn._)`${o}(${f})`}en.callValidateCode=HPt;var QPt=(0,Pn._)`new RegExp`;function GPt({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Pn._)`${s.code==="new RegExp"?QPt:(0,WPt.useFunc)(t,s)}(${r}, ${n})`})}en.usePattern=GPt;function KPt(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Pn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:BF.Type.Num},i),e.if((0,Pn.not)(i),o)})}}en.validateArray=KPt;function VPt(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,BF.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Pn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Pn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}en.validateUnion=VPt});var yEe=E(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});zu.validateKeywordUsage=zu.validSchemaType=zu.funcKeywordCode=zu.macroKeywordCode=void 0;var aa=Et(),jm=ec(),zPt=fi(),YPt=f_();function JPt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=AEe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:aa.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}zu.macroKeywordCode=JPt;function XPt(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;ekt(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=AEe(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&gEe(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&gEe(t),A(()=>ZPt(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,aa._)`await `),b=>n.assign(d,!1).if((0,aa._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,aa._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,aa._)`${l}.errors`;return n.assign(g,null),h(aa.nil),g}function h(g=e.async?(0,aa._)`await `:aa.nil){let b=c.opts.passContext?jm.default.this:jm.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,aa._)`${g}${(0,zPt.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,aa.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}zu.funcKeywordCode=XPt;function gEe(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,aa._)`${n.parentData}[${n.parentDataProperty}]`))}function ZPt(t,e){let{gen:r}=t;r.if((0,aa._)`Array.isArray(${e})`,()=>{r.assign(jm.default.vErrors,(0,aa._)`${jm.default.vErrors} === null ? ${e} : ${jm.default.vErrors}.concat(${e})`).assign(jm.default.errors,(0,aa._)`${jm.default.vErrors}.length`),(0,YPt.extendErrors)(t)},()=>t.error())}function ekt({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function AEe(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,aa.stringify)(r)})}function tkt(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}zu.validSchemaType=tkt;function rkt({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}zu.validateKeywordUsage=rkt});var bEe=E(Cp=>{"use strict";Object.defineProperty(Cp,"__esModule",{value:!0});Cp.extendSubschemaMode=Cp.extendSubschemaData=Cp.getSubschema=void 0;var Yu=Et(),xEe=Vt();function nkt(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,Yu._)`${t.schemaPath}${(0,Yu.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,Yu._)`${t.schemaPath}${(0,Yu.getProperty)(e)}${(0,Yu.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,xEe.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Cp.getSubschema=nkt;function skt(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,Yu._)`${e.data}${(0,Yu.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Yu.str)`${u}${(0,xEe.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Yu._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof Yu.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Cp.extendSubschemaData=skt;function ikt(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Cp.extendSubschemaMode=ikt});var _Ee=E((h3r,EEe)=>{"use strict";var Tp=EEe.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};dO(e,n,s,t,"",t)};Tp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Tp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Tp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Tp.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function dO(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Tp.arrayKeywords)for(var f=0;f<d.length;f++)dO(t,e,r,d[f],s+"/"+l+"/"+f,i,s,l,n,f)}else if(l in Tp.propsKeywords){if(d&&typeof d=="object")for(var p in d)dO(t,e,r,d[p],s+"/"+l+"/"+akt(p),i,s,l,n,p)}else(l in Tp.keywords||t.allKeys&&!(l in Tp.skipKeywords))&&dO(t,e,r,d,s+"/"+l,i,s,l,n)}r(n,s,i,a,o,c,u)}}function akt(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var m_=E(Wa=>{"use strict";Object.defineProperty(Wa,"__esModule",{value:!0});Wa.getSchemaRefs=Wa.resolveUrl=Wa.normalizeId=Wa._getFullPath=Wa.getFullPath=Wa.inlineRef=void 0;var okt=Vt(),ckt=Ko(),ukt=_Ee(),lkt=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function dkt(t,e=!0){return typeof t=="boolean"?!0:e===!0?!WF(t):e?SEe(t)<=e:!1}Wa.inlineRef=dkt;var fkt=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function WF(t){for(let e in t){if(fkt.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(WF)||typeof r=="object"&&WF(r))return!0}return!1}function SEe(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!lkt.has(r)&&(typeof t[r]=="object"&&(0,okt.eachItem)(t[r],n=>e+=SEe(n)),e===1/0))return 1/0}return e}function vEe(t,e="",r){r!==!1&&(e=gy(e));let n=t.parse(e);return IEe(t,n)}Wa.getFullPath=vEe;function IEe(t,e){return t.serialize(e).split("#")[0]+"#"}Wa._getFullPath=IEe;var pkt=/#\/?$/;function gy(t){return t?t.replace(pkt,""):""}Wa.normalizeId=gy;function mkt(t,e,r){return r=gy(r),t.resolve(e,r)}Wa.resolveUrl=mkt;var hkt=/^[a-z_][-a-z0-9._]*$/i;function gkt(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=gy(t[r]||e),i={"":s},a=vEe(n,s,!1),o={},c=new Set;return ukt(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=gy(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==gy(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!hkt.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!ckt(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Wa.getSchemaRefs=gkt});var Ay=E(wp=>{"use strict";Object.defineProperty(wp,"__esModule",{value:!0});wp.getData=wp.KeywordCxt=wp.validateFunctionCode=void 0;var NEe=aEe(),CEe=p_(),FF=OF(),fO=p_(),Akt=pEe(),g_=yEe(),$F=bEe(),at=Et(),Rt=ec(),ykt=m_(),xd=Vt(),h_=f_();function xkt(t){if(kEe(t)&&(DEe(t),PEe(t))){_kt(t);return}OEe(t,()=>(0,NEe.topBoolOrEmptySchema)(t))}wp.validateFunctionCode=xkt;function OEe({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,at._)`${Rt.default.data}, ${Rt.default.valCxt}`,n.$async,()=>{t.code((0,at._)`"use strict"; ${TEe(r,s)}`),Ekt(t,s),t.code(i)}):t.func(e,(0,at._)`${Rt.default.data}, ${bkt(s)}`,n.$async,()=>t.code(TEe(r,s)).code(i))}function bkt(t){return(0,at._)`{${Rt.default.instancePath}="", ${Rt.default.parentData}, ${Rt.default.parentDataProperty}, ${Rt.default.rootData}=${Rt.default.data}${t.dynamicRef?(0,at._)`, ${Rt.default.dynamicAnchors}={}`:at.nil}}={}`}function Ekt(t,e){t.if(Rt.default.valCxt,()=>{t.var(Rt.default.instancePath,(0,at._)`${Rt.default.valCxt}.${Rt.default.instancePath}`),t.var(Rt.default.parentData,(0,at._)`${Rt.default.valCxt}.${Rt.default.parentData}`),t.var(Rt.default.parentDataProperty,(0,at._)`${Rt.default.valCxt}.${Rt.default.parentDataProperty}`),t.var(Rt.default.rootData,(0,at._)`${Rt.default.valCxt}.${Rt.default.rootData}`),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,at._)`${Rt.default.valCxt}.${Rt.default.dynamicAnchors}`)},()=>{t.var(Rt.default.instancePath,(0,at._)`""`),t.var(Rt.default.parentData,(0,at._)`undefined`),t.var(Rt.default.parentDataProperty,(0,at._)`undefined`),t.var(Rt.default.rootData,Rt.default.data),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,at._)`{}`)})}function _kt(t){let{schema:e,opts:r,gen:n}=t;OEe(t,()=>{r.$comment&&e.$comment&&LEe(t),Tkt(t),n.let(Rt.default.vErrors,null),n.let(Rt.default.errors,0),r.unevaluated&&Skt(t),BEe(t),Nkt(t)})}function Skt(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,at._)`${r}.evaluated`),e.if((0,at._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,at._)`${t.evaluated}.props`,(0,at._)`undefined`)),e.if((0,at._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,at._)`${t.evaluated}.items`,(0,at._)`undefined`))}function TEe(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,at._)`/*# sourceURL=${r} */`:at.nil}function vkt(t,e){if(kEe(t)&&(DEe(t),PEe(t))){Ikt(t,e);return}(0,NEe.boolOrEmptySchema)(t,e)}function PEe({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function kEe(t){return typeof t.schema!="boolean"}function Ikt(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&LEe(t),wkt(t),Rkt(t);let i=n.const("_errs",Rt.default.errors);BEe(t,i),n.var(e,(0,at._)`${i} === ${Rt.default.errors}`)}function DEe(t){(0,xd.checkUnknownRules)(t),Ckt(t)}function BEe(t,e){if(t.opts.jtd)return wEe(t,[],!1,e);let r=(0,CEe.getSchemaTypes)(t.schema),n=(0,CEe.coerceAndCheckDataType)(t,r);wEe(t,r,!n,e)}function Ckt(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,xd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function Tkt(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,xd.checkStrictMode)(t,"default is ignored in the schema root")}function wkt(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,ykt.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function Rkt(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function LEe({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,at._)`${Rt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,at.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,at._)`${Rt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function Nkt(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,at._)`${Rt.default.errors} === 0`,()=>e.return(Rt.default.data),()=>e.throw((0,at._)`new ${s}(${Rt.default.vErrors})`)):(e.assign((0,at._)`${n}.errors`,Rt.default.vErrors),i.unevaluated&&Okt(t),e.return((0,at._)`${Rt.default.errors} === 0`))}function Okt({gen:t,evaluated:e,props:r,items:n}){r instanceof at.Name&&t.assign((0,at._)`${e}.props`,r),n instanceof at.Name&&t.assign((0,at._)`${e}.items`,n)}function wEe(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,xd.schemaHasRulesButRef)(i,l))){s.block(()=>WEe(t,"$ref",l.all.$ref.definition));return}c.jtd||Pkt(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,FF.shouldUseGroup)(i,f)&&(f.type?(s.if((0,fO.checkDataType)(f.type,a,c.strictNumbers)),REe(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,fO.reportTypeError)(t)),s.endIf()):REe(t,f),o||s.if((0,at._)`${Rt.default.errors} === ${n||0}`))}}function REe(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,Akt.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,FF.shouldUseRule)(n,i)&&WEe(t,i.keyword,i.definition,e.type)})}function Pkt(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(kkt(t,e),t.opts.allowUnionTypes||Dkt(t,e),Bkt(t,t.dataTypes))}function kkt(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{MEe(t.dataTypes,r)||UF(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),Mkt(t,e)}}function Dkt(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&UF(t,"use allowUnionTypes to allow union type keyword")}function Bkt(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,FF.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>Lkt(e,a))&&UF(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function Lkt(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function MEe(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function Mkt(t,e){let r=[];for(let n of t.dataTypes)MEe(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function UF(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,xd.checkStrictMode)(t,e,t.opts.strictTypes)}var pO=class{constructor(e,r,n){if((0,g_.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,xd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",$Ee(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,g_.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Rt.default.errors))}result(e,r,n){this.failResult((0,at.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,at.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,at._)`${r} !== undefined && (${(0,at.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?h_.reportExtraError:h_.reportError)(this,this.def.error,r)}$dataError(){(0,h_.reportError)(this,this.def.$dataError||h_.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,h_.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=at.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=at.nil,r=at.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,at.or)((0,at._)`${s} === undefined`,r)),e!==at.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==at.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,at.or)(a(),o());function a(){if(n.length){if(!(r instanceof at.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,at._)`${(0,fO.checkDataTypes)(c,r,i.opts.strictNumbers,fO.DataType.Wrong)}`}return at.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,at._)`!${c}(${r})`}return at.nil}}subschema(e,r){let n=(0,$F.getSubschema)(this.it,e);(0,$F.extendSubschemaData)(n,this.it,e),(0,$F.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return vkt(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=xd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=xd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,at.Name)),!0}};wp.KeywordCxt=pO;function WEe(t,e,r,n){let s=new pO(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,g_.funcKeywordCode)(s,r):"macro"in r?(0,g_.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,g_.funcKeywordCode)(s,r)}var Wkt=/^\/(?:[^~]|~0|~1)*$/,$kt=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function $Ee(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Rt.default.rootData;if(t[0]==="/"){if(!Wkt.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Rt.default.rootData}else{let u=$kt.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,at._)`${i}${(0,at.getProperty)((0,xd.unescapeJsonPointer)(u))}`,a=(0,at._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}wp.getData=$Ee});var A_=E(jF=>{"use strict";Object.defineProperty(jF,"__esModule",{value:!0});var qF=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};jF.default=qF});var bd=E(GF=>{"use strict";Object.defineProperty(GF,"__esModule",{value:!0});var HF=m_(),QF=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,HF.resolveUrl)(e,r,n),this.missingSchema=(0,HF.normalizeId)((0,HF.getFullPath)(e,this.missingRef))}};GF.default=QF});var Qm=E(tc=>{"use strict";Object.defineProperty(tc,"__esModule",{value:!0});tc.resolveSchema=tc.getCompilingSchema=tc.resolveRef=tc.compileSchema=tc.SchemaEnv=void 0;var Kc=Et(),Fkt=A_(),Hm=ec(),Vc=m_(),FEe=Vt(),Ukt=Ay(),yy=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Vc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};tc.SchemaEnv=yy;function VF(t){let e=UEe.call(this,t);if(e)return e;let r=(0,Vc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Kc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:Fkt.default,code:(0,Kc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Hm.default.data,parentData:Hm.default.parentData,parentDataProperty:Hm.default.parentDataProperty,dataNames:[Hm.default.data],dataPathArr:[Kc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Kc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Kc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Kc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,Ukt.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Hm.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Hm.default.self}`,`${Hm.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Kc.Name?void 0:m,items:h instanceof Kc.Name?void 0:h,dynamicProps:m instanceof Kc.Name,dynamicItems:h instanceof Kc.Name},p.source&&(p.source.evaluated=(0,Kc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}tc.compileSchema=VF;function qkt(t,e,r){var n;r=(0,Vc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=Qkt.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new yy({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=jkt.call(this,i)}tc.resolveRef=qkt;function jkt(t){return(0,Vc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:VF.call(this,t)}function UEe(t){for(let e of this._compilations)if(Hkt(e,t))return e}tc.getCompilingSchema=UEe;function Hkt(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function Qkt(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||mO.call(this,t,e)}function mO(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Vc._getFullPath)(this.opts.uriResolver,r),s=(0,Vc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return KF.call(this,r,t);let i=(0,Vc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=mO.call(this,t,a);return typeof o?.schema!="object"?void 0:KF.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||VF.call(this,a),i===(0,Vc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Vc.resolveUrl)(this.opts.uriResolver,s,u)),new yy({schema:o,schemaId:c,root:t,baseId:s})}return KF.call(this,r,a)}}tc.resolveSchema=mO;var Gkt=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function KF(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,FEe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!Gkt.has(o)&&u&&(e=(0,Vc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,FEe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Vc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=mO.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new yy({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var qEe=E((E3r,Kkt)=>{Kkt.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var YF=E((_3r,GEe)=>{"use strict";var Vkt=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),HEe=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function zF(t){let e="",r=0,n=0;for(n=0;n<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 zkt=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function jEe(t){return t.length=0,!0}function Ykt(t,e,r){if(t.length){let n=zF(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function Jkt(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=Ykt;for(let c=0;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=jEe}else{s.push(u);continue}}return s.length&&(o===jEe?r.zone=s.join(""):a?n.push(s.join("")):n.push(zF(s))),r.address=n.join(""),r}function QEe(t){if(Xkt(t,":")<2)return{host:t,isIPV6:!1};let e=Jkt(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function Xkt(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function Zkt(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 eDt(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 tDt(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!HEe(r)){let n=QEe(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}GEe.exports={nonSimpleDomain:zkt,recomposeAuthority:tDt,normalizeComponentEncoding:eDt,removeDotSegments:Zkt,isIPv4:HEe,isUUID:Vkt,normalizeIPv6:QEe,stringArrayToHexStripped:zF}});var JEe=E((S3r,YEe)=>{"use strict";var{isUUID:rDt}=YF(),nDt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,sDt=["http","https","ws","wss","urn","urn:uuid"];function iDt(t){return sDt.indexOf(t)!==-1}function JF(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function KEe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function VEe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function aDt(t){return t.secure=JF(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function oDt(t){if((t.port===(JF(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function cDt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(nDt);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=XF(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function uDt(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=XF(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function lDt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!rDt(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function dDt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var zEe={scheme:"http",domainHost:!0,parse:KEe,serialize:VEe},fDt={scheme:"https",domainHost:zEe.domainHost,parse:KEe,serialize:VEe},hO={scheme:"ws",domainHost:!0,parse:aDt,serialize:oDt},pDt={scheme:"wss",domainHost:hO.domainHost,parse:hO.parse,serialize:hO.serialize},mDt={scheme:"urn",parse:cDt,serialize:uDt,skipNormalize:!0},hDt={scheme:"urn:uuid",parse:lDt,serialize:dDt,skipNormalize:!0},gO={http:zEe,https:fDt,ws:hO,wss:pDt,urn:mDt,"urn:uuid":hDt};Object.setPrototypeOf(gO,null);function XF(t){return t&&(gO[t]||gO[t.toLowerCase()])||void 0}YEe.exports={wsIsSecure:JF,SCHEMES:gO,isValidSchemeName:iDt,getSchemeHandler:XF}});var e1e=E((v3r,yO)=>{"use strict";var{normalizeIPv6:gDt,removeDotSegments:y_,recomposeAuthority:ADt,normalizeComponentEncoding:AO,isIPv4:yDt,nonSimpleDomain:xDt}=YF(),{SCHEMES:bDt,getSchemeHandler:XEe}=JEe();function EDt(t,e){return typeof t=="string"?t=Ju(Ed(t,e),e):typeof t=="object"&&(t=Ed(Ju(t,e),e)),t}function _Dt(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=ZEe(Ed(t,n),Ed(e,n),n,!0);return n.skipEscape=!0,Ju(s,n)}function ZEe(t,e,r,n){let s={};return n||(t=Ed(Ju(t,r),r),e=Ed(Ju(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=y_(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=y_(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=y_(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=y_(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function SDt(t,e,r){return typeof t=="string"?(t=unescape(t),t=Ju(AO(Ed(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Ju(AO(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Ju(AO(Ed(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Ju(AO(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Ju(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=XEe(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=ADt(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=y_(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var vDt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Ed(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(vDt);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(yDt(n.host)===!1){let c=gDt(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=XEe(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&xDt(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var ZF={SCHEMES:bDt,normalize:EDt,resolve:_Dt,resolveComponent:ZEe,equal:SDt,serialize:Ju,parse:Ed};yO.exports=ZF;yO.exports.default=ZF;yO.exports.fastUri=ZF});var r1e=E(eU=>{"use strict";Object.defineProperty(eU,"__esModule",{value:!0});var t1e=e1e();t1e.code='require("ajv/dist/runtime/uri").default';eU.default=t1e});var nU=E(pi=>{"use strict";Object.defineProperty(pi,"__esModule",{value:!0});pi.CodeGen=pi.Name=pi.nil=pi.stringify=pi.str=pi._=pi.KeywordCxt=void 0;var IDt=Ay();Object.defineProperty(pi,"KeywordCxt",{enumerable:!0,get:function(){return IDt.KeywordCxt}});var xy=Et();Object.defineProperty(pi,"_",{enumerable:!0,get:function(){return xy._}});Object.defineProperty(pi,"str",{enumerable:!0,get:function(){return xy.str}});Object.defineProperty(pi,"stringify",{enumerable:!0,get:function(){return xy.stringify}});Object.defineProperty(pi,"nil",{enumerable:!0,get:function(){return xy.nil}});Object.defineProperty(pi,"Name",{enumerable:!0,get:function(){return xy.Name}});Object.defineProperty(pi,"CodeGen",{enumerable:!0,get:function(){return xy.CodeGen}});var CDt=A_(),o1e=bd(),TDt=NF(),x_=Qm(),wDt=Et(),b_=m_(),xO=p_(),rU=Vt(),n1e=qEe(),RDt=r1e(),c1e=(t,e)=>new RegExp(t,e);c1e.code="new RegExp";var NDt=["removeAdditional","useDefaults","coerceTypes"],ODt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),PDt={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},kDt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},s1e=200;function DDt(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,I,R,w,N;let P=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:c1e,L=(s=t.uriResolver)!==null&&s!==void 0?s:RDt.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:s1e,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:s1e,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var E_=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...DDt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new wDt.ValueScope({scope:{},prefixes:ODt,es5:r,lines:n}),this.logger=FDt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,TDt.getRules)(),i1e.call(this,PDt,e,"NOT SUPPORTED"),i1e.call(this,kDt,e,"DEPRECATED","warn"),this._metaOpts=WDt.call(this),e.formats&&LDt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&MDt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),BDt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=n1e;n==="id"&&(s={...n1e},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof o1e.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,b_.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=a1e.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new x_.SchemaEnv({schema:{},schemaId:n});if(r=x_.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=a1e.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,b_.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(qDt.call(this,n,r),!r)return(0,rU.eachItem)(n,i=>tU.call(this,i)),this;HDt.call(this,r);let s={...r,type:(0,xO.getJSONTypes)(r.type),schemaType:(0,xO.getJSONTypes)(r.schemaType)};return(0,rU.eachItem)(n,s.type.length===0?i=>tU.call(this,i,s):i=>s.type.forEach(a=>tU.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=u1e(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,b_.normalizeId)(a||n);let u=b_.getSchemaRefs.call(this,e,n);return c=new x_.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):x_.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{x_.compileSchema.call(this,e)}finally{this.opts=r}}};E_.ValidationError=CDt.default;E_.MissingRefError=o1e.default;pi.default=E_;function i1e(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function a1e(t){return t=(0,b_.normalizeId)(t),this.schemas[t]||this.refs[t]}function BDt(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function LDt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function MDt(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function WDt(){let t={...this.opts};for(let e of NDt)delete t[e];return t}var $Dt={log(){},warn(){},error(){}};function FDt(t){if(t===!1)return $Dt;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var UDt=/^[a-z_$][a-z0-9_$:-]*$/i;function qDt(t,e){let{RULES:r}=this;if((0,rU.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!UDt.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function tU(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,xO.getJSONTypes)(e.type),schemaType:(0,xO.getJSONTypes)(e.schemaType)}};e.before?jDt.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function jDt(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function HDt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=u1e(e)),t.validateSchema=this.compile(e,!0))}var QDt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function u1e(t){return{anyOf:[t,QDt]}}});var l1e=E(sU=>{"use strict";Object.defineProperty(sU,"__esModule",{value:!0});var GDt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};sU.default=GDt});var iU=E(Gm=>{"use strict";Object.defineProperty(Gm,"__esModule",{value:!0});Gm.callRef=Gm.getValidate=void 0;var KDt=bd(),d1e=fi(),$a=Et(),by=ec(),f1e=Qm(),bO=Vt(),VDt={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=f1e.resolveRef.call(c,u,s,r);if(l===void 0)throw new KDt.default(n.opts.uriResolver,s,r);if(l instanceof f1e.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return EO(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return EO(t,(0,$a._)`${m}.validate`,u,u.$async)}function f(m){let h=p1e(t,m);EO(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,$a.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:$a.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function p1e(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,$a._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Gm.getValidate=p1e;function EO(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?by.default.this:$a.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,$a._)`await ${(0,d1e.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,$a._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,d1e.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,$a._)`${m}.errors`;s.assign(by.default.vErrors,(0,$a._)`${by.default.vErrors} === null ? ${h} : ${by.default.vErrors}.concat(${h})`),s.assign(by.default.errors,(0,$a._)`${by.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=bO.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,$a._)`${m}.evaluated.props`);i.props=bO.mergeEvaluated.props(s,g,i.props,$a.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=bO.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,$a._)`${m}.evaluated.items`);i.items=bO.mergeEvaluated.items(s,g,i.items,$a.Name)}}}Gm.callRef=EO;Gm.default=VDt});var m1e=E(aU=>{"use strict";Object.defineProperty(aU,"__esModule",{value:!0});var zDt=l1e(),YDt=iU(),JDt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",zDt.default,YDt.default];aU.default=JDt});var h1e=E(oU=>{"use strict";Object.defineProperty(oU,"__esModule",{value:!0});var _O=Et(),Rp=_O.operators,SO={maximum:{okStr:"<=",ok:Rp.LTE,fail:Rp.GT},minimum:{okStr:">=",ok:Rp.GTE,fail:Rp.LT},exclusiveMaximum:{okStr:"<",ok:Rp.LT,fail:Rp.GTE},exclusiveMinimum:{okStr:">",ok:Rp.GT,fail:Rp.LTE}},XDt={message:({keyword:t,schemaCode:e})=>(0,_O.str)`must be ${SO[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,_O._)`{comparison: ${SO[t].okStr}, limit: ${e}}`},ZDt={keyword:Object.keys(SO),type:"number",schemaType:"number",$data:!0,error:XDt,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,_O._)`${r} ${SO[e].fail} ${n} || isNaN(${r})`)}};oU.default=ZDt});var g1e=E(cU=>{"use strict";Object.defineProperty(cU,"__esModule",{value:!0});var __=Et(),e3t={message:({schemaCode:t})=>(0,__.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,__._)`{multipleOf: ${t}}`},t3t={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:e3t,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,__._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,__._)`${a} !== parseInt(${a})`;t.fail$data((0,__._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};cU.default=t3t});var y1e=E(uU=>{"use strict";Object.defineProperty(uU,"__esModule",{value:!0});function A1e(t){let e=t.length,r=0,n=0,s;for(;n<e;)r++,s=t.charCodeAt(n++),s>=55296&&s<=56319&&n<e&&(s=t.charCodeAt(n),(s&64512)===56320&&n++);return r}uU.default=A1e;A1e.code='require("ajv/dist/runtime/ucs2length").default'});var x1e=E(lU=>{"use strict";Object.defineProperty(lU,"__esModule",{value:!0});var Km=Et(),r3t=Vt(),n3t=y1e(),s3t={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Km.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Km._)`{limit: ${t}}`},i3t={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:s3t,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?Km.operators.GT:Km.operators.LT,a=s.opts.unicode===!1?(0,Km._)`${r}.length`:(0,Km._)`${(0,r3t.useFunc)(t.gen,n3t.default)}(${r})`;t.fail$data((0,Km._)`${a} ${i} ${n}`)}};lU.default=i3t});var b1e=E(dU=>{"use strict";Object.defineProperty(dU,"__esModule",{value:!0});var a3t=fi(),vO=Et(),o3t={message:({schemaCode:t})=>(0,vO.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,vO._)`{pattern: ${t}}`},c3t={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:o3t,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,vO._)`(new RegExp(${s}, ${a}))`:(0,a3t.usePattern)(t,n);t.fail$data((0,vO._)`!${o}.test(${e})`)}};dU.default=c3t});var E1e=E(fU=>{"use strict";Object.defineProperty(fU,"__esModule",{value:!0});var S_=Et(),u3t={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,S_.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,S_._)`{limit: ${t}}`},l3t={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:u3t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?S_.operators.GT:S_.operators.LT;t.fail$data((0,S_._)`Object.keys(${r}).length ${s} ${n}`)}};fU.default=l3t});var _1e=E(pU=>{"use strict";Object.defineProperty(pU,"__esModule",{value:!0});var v_=fi(),I_=Et(),d3t=Vt(),f3t={message:({params:{missingProperty:t}})=>(0,I_.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,I_._)`{missingProperty: ${t}}`},p3t={keyword:"required",type:"object",schemaType:"array",$data:!0,error:f3t,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,d3t.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(I_.nil,d);else for(let p of r)(0,v_.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,v_.checkMissingProp)(t,r,p)),(0,v_.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,v_.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,v_.propertyInData)(e,s,p,o.ownProperties)),e.if((0,I_.not)(m),()=>{t.error(),e.break()})},I_.nil)}}};pU.default=p3t});var S1e=E(mU=>{"use strict";Object.defineProperty(mU,"__esModule",{value:!0});var C_=Et(),m3t={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,C_.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,C_._)`{limit: ${t}}`},h3t={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:m3t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?C_.operators.GT:C_.operators.LT;t.fail$data((0,C_._)`${r}.length ${s} ${n}`)}};mU.default=h3t});var IO=E(hU=>{"use strict";Object.defineProperty(hU,"__esModule",{value:!0});var v1e=Ko();v1e.code='require("ajv/dist/runtime/equal").default';hU.default=v1e});var I1e=E(AU=>{"use strict";Object.defineProperty(AU,"__esModule",{value:!0});var gU=p_(),mi=Et(),g3t=Vt(),A3t=IO(),y3t={message:({params:{i:t,j:e}})=>(0,mi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,mi._)`{i: ${t}, j: ${e}}`},x3t={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:y3t,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,gU.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,mi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,mi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,mi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,gU.checkDataTypes)(u,A,o.opts.strictNumbers,gU.DataType.Wrong),b=e.const("indices",(0,mi._)`{}`);e.for((0,mi._)`;${m}--;`,()=>{e.let(A,(0,mi._)`${r}[${m}]`),e.if(g,(0,mi._)`continue`),u.length>1&&e.if((0,mi._)`typeof ${A} == "string"`,(0,mi._)`${A} += "_"`),e.if((0,mi._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,mi._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,mi._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,g3t.useFunc)(e,A3t.default),g=e.name("outer");e.label(g).for((0,mi._)`;${m}--;`,()=>e.for((0,mi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,mi._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};AU.default=x3t});var C1e=E(xU=>{"use strict";Object.defineProperty(xU,"__esModule",{value:!0});var yU=Et(),b3t=Vt(),E3t=IO(),_3t={message:"must be equal to constant",params:({schemaCode:t})=>(0,yU._)`{allowedValue: ${t}}`},S3t={keyword:"const",$data:!0,error:_3t,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,yU._)`!${(0,b3t.useFunc)(e,E3t.default)}(${r}, ${s})`):t.fail((0,yU._)`${i} !== ${r}`)}};xU.default=S3t});var T1e=E(bU=>{"use strict";Object.defineProperty(bU,"__esModule",{value:!0});var T_=Et(),v3t=Vt(),I3t=IO(),C3t={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,T_._)`{allowedValues: ${t}}`},T3t={keyword:"enum",schemaType:"array",$data:!0,error:C3t,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,v3t.useFunc)(e,I3t.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,T_.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,T_._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,T_._)`${u()}(${r}, ${p}[${m}])`:(0,T_._)`${r} === ${h}`}}};bU.default=T3t});var w1e=E(EU=>{"use strict";Object.defineProperty(EU,"__esModule",{value:!0});var w3t=h1e(),R3t=g1e(),N3t=x1e(),O3t=b1e(),P3t=E1e(),k3t=_1e(),D3t=S1e(),B3t=I1e(),L3t=C1e(),M3t=T1e(),W3t=[w3t.default,R3t.default,N3t.default,O3t.default,P3t.default,k3t.default,D3t.default,B3t.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},L3t.default,M3t.default];EU.default=W3t});var SU=E(w_=>{"use strict";Object.defineProperty(w_,"__esModule",{value:!0});w_.validateAdditionalItems=void 0;var Vm=Et(),_U=Vt(),$3t={message:({params:{len:t}})=>(0,Vm.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Vm._)`{limit: ${t}}`},F3t={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:$3t,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,_U.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}R1e(t,n)}};function R1e(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,Vm._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Vm._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,_U.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Vm._)`${o} <= ${e.length}`);r.if((0,Vm.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:_U.Type.Num},u),a.allErrors||r.if((0,Vm.not)(u),()=>r.break())})}}w_.validateAdditionalItems=R1e;w_.default=F3t});var vU=E(R_=>{"use strict";Object.defineProperty(R_,"__esModule",{value:!0});R_.validateTuple=void 0;var N1e=Et(),CO=Vt(),U3t=fi(),q3t={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return O1e(t,"additionalItems",e);r.items=!0,!(0,CO.alwaysValidSchema)(r,e)&&t.ok((0,U3t.validateArray)(t))}};function O1e(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=CO.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,N1e._)`${i}.length`);r.forEach((d,f)=>{(0,CO.alwaysValidSchema)(o,d)||(n.if((0,N1e._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,CO.checkStrictMode)(o,A,f.strictTuples)}}}R_.validateTuple=O1e;R_.default=q3t});var P1e=E(IU=>{"use strict";Object.defineProperty(IU,"__esModule",{value:!0});var j3t=vU(),H3t={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,j3t.validateTuple)(t,"items")};IU.default=H3t});var D1e=E(CU=>{"use strict";Object.defineProperty(CU,"__esModule",{value:!0});var k1e=Et(),Q3t=Vt(),G3t=fi(),K3t=SU(),V3t={message:({params:{len:t}})=>(0,k1e.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,k1e._)`{limit: ${t}}`},z3t={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:V3t,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,Q3t.alwaysValidSchema)(n,e)&&(s?(0,K3t.validateAdditionalItems)(t,s):t.ok((0,G3t.validateArray)(t)))}};CU.default=z3t});var B1e=E(TU=>{"use strict";Object.defineProperty(TU,"__esModule",{value:!0});var rc=Et(),TO=Vt(),Y3t={message:({params:{min:t,max:e}})=>e===void 0?(0,rc.str)`must contain at least ${t} valid item(s)`:(0,rc.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,rc._)`{minContains: ${t}}`:(0,rc._)`{minContains: ${t}, maxContains: ${e}}`},J3t={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Y3t,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,rc._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,TO.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,TO.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,TO.alwaysValidSchema)(i,r)){let h=(0,rc._)`${l} >= ${a}`;o!==void 0&&(h=(0,rc._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,rc._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:TO.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,rc._)`${h}++`),o===void 0?e.if((0,rc._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,rc._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,rc._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};TU.default=J3t});var W1e=E(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});Xu.validateSchemaDeps=Xu.validatePropertyDeps=Xu.error=void 0;var wU=Et(),X3t=Vt(),N_=fi();Xu.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,wU.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,wU._)`{property: ${t},
missingProperty: ${n},
depsCount: ${e},
deps: ${r}}`};var Z3t={keyword:"dependencies",type:"object",schemaType:"object",error:Xu.error,code(t){let[e,r]=eBt(t);L1e(t,e),M1e(t,r)}};function eBt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function L1e(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,N_.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,N_.checkReportMissingProp)(t,u)}):(r.if((0,wU._)`${c} && (${(0,N_.checkMissingProp)(t,o,i)})`),(0,N_.reportMissingProp)(t,i),r.else())}}Xu.validatePropertyDeps=L1e;function M1e(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,X3t.alwaysValidSchema)(i,e[o])||(r.if((0,N_.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}Xu.validateSchemaDeps=M1e;Xu.default=Z3t});var F1e=E(RU=>{"use strict";Object.defineProperty(RU,"__esModule",{value:!0});var $1e=Et(),tBt=Vt(),rBt={message:"property name must be valid",params:({params:t})=>(0,$1e._)`{propertyName: ${t.propertyName}}`},nBt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:rBt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,tBt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,$1e.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};RU.default=nBt});var OU=E(NU=>{"use strict";Object.defineProperty(NU,"__esModule",{value:!0});var wO=fi(),zc=Et(),sBt=ec(),RO=Vt(),iBt={message:"must NOT have additional properties",params:({params:t})=>(0,zc._)`{additionalProperty: ${t.additionalProperty}}`},aBt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:iBt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,RO.alwaysValidSchema)(a,r))return;let u=(0,wO.allSchemaProperties)(n.properties),l=(0,wO.allSchemaProperties)(n.patternProperties);d(),t.ok((0,zc._)`${i} === ${sBt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,RO.schemaRefOrVal)(a,n.properties,"properties");g=(0,wO.isOwnProperty)(e,b,A)}else u.length?g=(0,zc.or)(...u.map(b=>(0,zc._)`${A} === ${b}`)):g=zc.nil;return l.length&&(g=(0,zc.or)(g,...l.map(b=>(0,zc._)`${(0,wO.usePattern)(t,b)}.test(${A})`))),(0,zc.not)(g)}function p(A){e.code((0,zc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,RO.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,zc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,zc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:RO.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};NU.default=aBt});var j1e=E(kU=>{"use strict";Object.defineProperty(kU,"__esModule",{value:!0});var oBt=Ay(),U1e=fi(),PU=Vt(),q1e=OU(),cBt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&q1e.default.code(new oBt.KeywordCxt(i,q1e.default,"additionalProperties"));let a=(0,U1e.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=PU.mergeEvaluated.props(e,(0,PU.toHash)(a),i.props));let o=a.filter(d=>!(0,PU.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,U1e.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};kU.default=cBt});var K1e=E(DU=>{"use strict";Object.defineProperty(DU,"__esModule",{value:!0});var H1e=fi(),NO=Et(),Q1e=Vt(),G1e=Vt(),uBt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,H1e.allSchemaProperties)(r),c=o.filter(h=>(0,Q1e.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof NO.Name)&&(i.props=(0,G1e.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,Q1e.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,NO._)`${(0,H1e.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:G1e.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,NO._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,NO.not)(l),()=>e.break())})})}}};DU.default=uBt});var V1e=E(BU=>{"use strict";Object.defineProperty(BU,"__esModule",{value:!0});var lBt=Vt(),dBt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,lBt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};BU.default=dBt});var z1e=E(LU=>{"use strict";Object.defineProperty(LU,"__esModule",{value:!0});var fBt=fi(),pBt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:fBt.validateUnion,error:{message:"must match a schema in anyOf"}};LU.default=pBt});var Y1e=E(MU=>{"use strict";Object.defineProperty(MU,"__esModule",{value:!0});var OO=Et(),mBt=Vt(),hBt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,OO._)`{passingSchemas: ${t.passing}}`},gBt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:hBt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,mBt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,OO._)`${c} && ${a}`).assign(a,!1).assign(o,(0,OO._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,OO.Name)})})}}};MU.default=gBt});var J1e=E(WU=>{"use strict";Object.defineProperty(WU,"__esModule",{value:!0});var ABt=Vt(),yBt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,ABt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};WU.default=yBt});var e_e=E($U=>{"use strict";Object.defineProperty($U,"__esModule",{value:!0});var PO=Et(),Z1e=Vt(),xBt={message:({params:t})=>(0,PO.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,PO._)`{failingKeyword: ${t.ifClause}}`},bBt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:xBt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Z1e.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=X1e(n,"then"),i=X1e(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,PO.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,PO._)`${l}`):t.setParams({ifClause:l})}}}};function X1e(t,e){let r=t.schema[e];return r!==void 0&&!(0,Z1e.alwaysValidSchema)(t,r)}$U.default=bBt});var t_e=E(FU=>{"use strict";Object.defineProperty(FU,"__esModule",{value:!0});var EBt=Vt(),_Bt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,EBt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};FU.default=_Bt});var r_e=E(UU=>{"use strict";Object.defineProperty(UU,"__esModule",{value:!0});var SBt=SU(),vBt=P1e(),IBt=vU(),CBt=D1e(),TBt=B1e(),wBt=W1e(),RBt=F1e(),NBt=OU(),OBt=j1e(),PBt=K1e(),kBt=V1e(),DBt=z1e(),BBt=Y1e(),LBt=J1e(),MBt=e_e(),WBt=t_e();function $Bt(t=!1){let e=[kBt.default,DBt.default,BBt.default,LBt.default,MBt.default,WBt.default,RBt.default,NBt.default,wBt.default,OBt.default,PBt.default];return t?e.push(vBt.default,CBt.default):e.push(SBt.default,IBt.default),e.push(TBt.default),e}UU.default=$Bt});var n_e=E(qU=>{"use strict";Object.defineProperty(qU,"__esModule",{value:!0});var ls=Et(),FBt={message:({schemaCode:t})=>(0,ls.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ls._)`{format: ${t}}`},UBt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:FBt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ls._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,ls._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,ls._)`${h}.type || "string"`).assign(g,(0,ls._)`${h}.validate`),()=>r.assign(A,(0,ls._)`"string"`).assign(g,h)),t.fail$data((0,ls.or)(b(),y()));function b(){return c.strictSchema===!1?ls.nil:(0,ls._)`${a} && !${g}`}function y(){let x=l.$async?(0,ls._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ls._)`${g}(${n})`,v=(0,ls._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,ls._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function y(v){let I=v instanceof RegExp?(0,ls.regexpCode)(v):c.code.formats?(0,ls._)`${c.code.formats}${(0,ls.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:I});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,ls._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ls._)`await ${g}(${n})`}return typeof A=="function"?(0,ls._)`${g}(${n})`:(0,ls._)`${g}.test(${n})`}}}};qU.default=UBt});var s_e=E(jU=>{"use strict";Object.defineProperty(jU,"__esModule",{value:!0});var qBt=n_e(),jBt=[qBt.default];jU.default=jBt});var i_e=E(Ey=>{"use strict";Object.defineProperty(Ey,"__esModule",{value:!0});Ey.contentVocabulary=Ey.metadataVocabulary=void 0;Ey.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ey.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var o_e=E(HU=>{"use strict";Object.defineProperty(HU,"__esModule",{value:!0});var HBt=m1e(),QBt=w1e(),GBt=r_e(),KBt=s_e(),a_e=i_e(),VBt=[HBt.default,QBt.default,(0,GBt.default)(),KBt.default,a_e.metadataVocabulary,a_e.contentVocabulary];HU.default=VBt});var QU=E(kO=>{"use strict";Object.defineProperty(kO,"__esModule",{value:!0});kO.DiscrError=void 0;var c_e;(function(t){t.Tag="tag",t.Mapping="mapping"})(c_e||(kO.DiscrError=c_e={}))});var l_e=E(KU=>{"use strict";Object.defineProperty(KU,"__esModule",{value:!0});var _y=Et(),GU=QU(),u_e=Qm(),zBt=bd(),YBt=Vt(),JBt={message:({params:{discrError:t,tagName:e}})=>t===GU.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,_y._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},XBt={keyword:"discriminator",type:"object",schemaType:"object",error:JBt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,_y._)`${r}${(0,_y.getProperty)(o)}`);e.if((0,_y._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:GU.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,_y._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:GU.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,_y.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x<a.length;x++){let v=a[x];if(v?.$ref&&!(0,YBt.schemaHasRulesButRef)(v,i.self.RULES)){let R=v.$ref;if(v=u_e.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,R),v instanceof u_e.SchemaEnv&&(v=v.schema),v===void 0)throw new zBt.default(i.opts.uriResolver,i.baseId,R)}let I=(p=v?.properties)===null||p===void 0?void 0:p[o];if(typeof I!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${o}"`);A=A&&(h||g(v)),b(I,x)}if(!A)throw new Error(`discriminator: "${o}" must be required`);return m;function g({required:x}){return Array.isArray(x)&&x.includes(o)}function b(x,v){if(x.const)y(x.const,v);else if(x.enum)for(let I of x.enum)y(I,v);else throw new Error(`discriminator: "properties/${o}" must have "const" or "enum"`)}function y(x,v){if(typeof x!="string"||x in m)throw new Error(`discriminator: "${o}" values must be unique strings`);m[x]=v}}}};KU.default=XBt});var d_e=E((fBr,ZBt)=>{ZBt.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var p_e=E((kn,VU)=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});kn.MissingRefError=kn.ValidationError=kn.CodeGen=kn.Name=kn.nil=kn.stringify=kn.str=kn._=kn.KeywordCxt=kn.Ajv=void 0;var eLt=nU(),tLt=o_e(),rLt=l_e(),f_e=d_e(),nLt=["/properties"],DO="http://json-schema.org/draft-07/schema",Sy=class extends eLt.default{_addVocabularies(){super._addVocabularies(),tLt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(rLt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(f_e,nLt):f_e;this.addMetaSchema(e,DO,!1),this.refs["http://json-schema.org/schema"]=DO}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(DO)?DO:void 0)}};kn.Ajv=Sy;VU.exports=kn=Sy;VU.exports.Ajv=Sy;Object.defineProperty(kn,"__esModule",{value:!0});kn.default=Sy;var sLt=Ay();Object.defineProperty(kn,"KeywordCxt",{enumerable:!0,get:function(){return sLt.KeywordCxt}});var vy=Et();Object.defineProperty(kn,"_",{enumerable:!0,get:function(){return vy._}});Object.defineProperty(kn,"str",{enumerable:!0,get:function(){return vy.str}});Object.defineProperty(kn,"stringify",{enumerable:!0,get:function(){return vy.stringify}});Object.defineProperty(kn,"nil",{enumerable:!0,get:function(){return vy.nil}});Object.defineProperty(kn,"Name",{enumerable:!0,get:function(){return vy.Name}});Object.defineProperty(kn,"CodeGen",{enumerable:!0,get:function(){return vy.CodeGen}});var iLt=A_();Object.defineProperty(kn,"ValidationError",{enumerable:!0,get:function(){return iLt.default}});var aLt=bd();Object.defineProperty(kn,"MissingRefError",{enumerable:!0,get:function(){return aLt.default}})});var _d=E(O_=>{"use strict";Object.defineProperty(O_,"__esModule",{value:!0});O_.checkMetadata=void 0;var oLt=Vt(),cLt={keyword:"metadata",schemaType:"object",code(t){m_e(t);let{gen:e,schema:r,it:n}=t;if((0,oLt.alwaysValidSchema)(n,r))return;let s=e.name("valid");t.subschema({keyword:"metadata",jtdMetadata:!0},s),t.ok(s)}};function m_e({it:t,keyword:e},r){if(t.jtdMetadata!==r)throw new Error(`JTD: "${e}" cannot be used in this schema location`)}O_.checkMetadata=m_e;O_.default=cLt});var BO=E(k_=>{"use strict";Object.defineProperty(k_,"__esModule",{value:!0});k_.hasRef=void 0;var h_e=Qm(),P_=Et(),uLt=bd(),g_e=ec(),A_e=iU(),lLt=_d(),dLt={keyword:"ref",schemaType:"string",code(t){(0,lLt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{schemaEnv:{root:a}}=i,o=e.name("valid");s.nullable?(e.var(o,(0,P_._)`${r} === null`),e.if((0,P_.not)(o),c)):(e.var(o,!1),c()),t.ok(o);function c(){var d;let f=(d=a.schema.definitions)===null||d===void 0?void 0:d[n];if(!f)throw new uLt.default(i.opts.uriResolver,"",n,`No definition ${n}`);zU(f)||!i.opts.inlineRefs?u(f):l(f)}function u(d){let f=h_e.compileSchema.call(i.self,new h_e.SchemaEnv({schema:d,root:a,schemaPath:`/definitions/${n}`})),p=(0,A_e.getValidate)(t,f),m=e.const("_errs",g_e.default.errors);(0,A_e.callRef)(t,p,f,f.$async),e.assign(o,(0,P_._)`${m} === ${g_e.default.errors}`)}function l(d){let f=e.scopeValue("schema",i.opts.code.source===!0?{ref:d,code:(0,P_.stringify)(d)}:{ref:d});t.subschema({schema:d,dataTypes:[],schemaPath:P_.nil,topSchemaRef:f,errSchemaPath:`/definitions/${n}`},o)}}};function zU(t){for(let e in t){let r;if(e==="ref"||typeof(r=t[e])=="object"&&zU(r))return!0}return!1}k_.hasRef=zU;k_.default=dLt});var JU=E(YU=>{"use strict";Object.defineProperty(YU,"__esModule",{value:!0});var fLt=/t|\s/i,pLt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,mLt=/^(\d\d):(\d\d):(\d\d)(?:\.\d+)?(?:z|([+-]\d\d)(?::?(\d\d))?)$/i,hLt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function x_e(t,e){let r=t.split(fLt);return r.length===2&&y_e(r[0])&&gLt(r[1])||e&&r.length===1&&y_e(r[0])}YU.default=x_e;function y_e(t){let e=pLt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&(s<=hLt[n]||n===2&&s===29&&(r%100===0?r%400===0:r%4===0))}function gLt(t){let e=mLt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3],i=+(e[4]||0),a=+(e[5]||0);return r<=23&&n<=59&&s<=59||r-i===23&&n-a===59&&s===60}x_e.code='require("ajv/dist/runtime/timestamp").default'});var Iy=E(Np=>{"use strict";Object.defineProperty(Np,"__esModule",{value:!0});Np.typeErrorParams=Np.typeErrorMessage=Np.typeError=void 0;var ALt=Et();function yLt(t){return{message:e=>b_e(e,t),params:e=>E_e(e,t)}}Np.typeError=yLt;function b_e({parentSchema:t},e){return t?.nullable?`must be ${e} or null`:`must be ${e}`}Np.typeErrorMessage=b_e;function E_e({parentSchema:t},e){return(0,ALt._)`{type: ${e}, nullable: ${!!t?.nullable}}`}Np.typeErrorParams=E_e});var XU=E(Cy=>{"use strict";Object.defineProperty(Cy,"__esModule",{value:!0});Cy.intRange=void 0;var Eo=Et(),xLt=JU(),bLt=Vt(),ELt=_d(),__e=Iy();Cy.intRange={int8:[-128,127,3],uint8:[0,255,3],int16:[-32768,32767,5],uint16:[0,65535,5],int32:[-2147483648,2147483647,10],uint32:[0,4294967295,10]};var _Lt={message:t=>(0,__e.typeErrorMessage)(t,t.schema),params:t=>(0,__e.typeErrorParams)(t,t.schema)};function SLt(t){let{gen:e,data:r,it:n}=t,{timestamp:s,allowDate:i}=n.opts;if(s==="date")return(0,Eo._)`${r} instanceof Date `;let a=(0,bLt.useFunc)(e,xLt.default),o=i?(0,Eo._)`, true`:Eo.nil,c=(0,Eo._)`typeof ${r} == "string" && ${a}(${r}${o})`;return s==="string"?c:(0,Eo.or)((0,Eo._)`${r} instanceof Date`,c)}var vLt={keyword:"type",schemaType:"string",error:_Lt,code(t){(0,ELt.checkMetadata)(t);let{data:e,schema:r,parentSchema:n,it:s}=t,i;switch(r){case"boolean":case"string":i=(0,Eo._)`typeof ${e} == ${r}`;break;case"timestamp":{i=SLt(t);break}case"float32":case"float64":i=(0,Eo._)`typeof ${e} == "number"`;break;default:{let a=r;if(i=(0,Eo._)`typeof ${e} == "number" && isFinite(${e}) && !(${e} % 1)`,!s.opts.int32range&&(a==="int32"||a==="uint32"))a==="uint32"&&(i=(0,Eo._)`${i} && ${e} >= 0`);else{let[o,c]=Cy.intRange[a];i=(0,Eo._)`${i} && ${e} >= ${o} && ${e} <= ${c}`}}}t.pass(n.nullable?(0,Eo.or)((0,Eo._)`${e} === null`,i):i)}};Cy.default=vLt});var wy=E(Ty=>{"use strict";Object.defineProperty(Ty,"__esModule",{value:!0});Ty.checkNullableObject=Ty.checkNullable=void 0;var LO=Et();function S_e({gen:t,data:e,parentSchema:r},n=LO.nil){let s=t.name("valid");return r.nullable?(t.let(s,(0,LO._)`${e} === null`),n=(0,LO.not)(s)):t.let(s,!1),[s,n]}Ty.checkNullable=S_e;function ILt(t,e){let[r,n]=S_e(t,e);return[r,(0,LO._)`${n} && typeof ${t.data} == "object" && !Array.isArray(${t.data})`]}Ty.checkNullableObject=ILt});var v_e=E(ZU=>{"use strict";Object.defineProperty(ZU,"__esModule",{value:!0});var Op=Et(),CLt=_d(),TLt=wy(),wLt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Op._)`{allowedValues: ${t}}`},RLt={keyword:"enum",schemaType:"array",error:wLt,code(t){(0,CLt.checkMetadata)(t);let{gen:e,data:r,schema:n,schemaValue:s,parentSchema:i,it:a}=t;if(n.length===0)throw new Error("enum must have non-empty array");if(n.length!==new Set(n).size)throw new Error("enum items must be unique");let o,c=(0,Op._)`typeof ${r} == "string"`;if(n.length>=a.opts.loopEnum){let l;[o,l]=(0,TLt.checkNullable)(t,c),e.if(l,u)}else{if(!Array.isArray(n))throw new Error("ajv implementation error");o=(0,Op.and)(c,(0,Op.or)(...n.map(l=>(0,Op._)`${r} === ${l}`))),i.nullable&&(o=(0,Op.or)((0,Op._)`${r} === null`,o))}t.pass(o);function u(){e.forOf("v",s,l=>e.if((0,Op._)`${o} = ${r} === ${l}`,()=>e.break()))}}};ZU.default=RLt});var C_e=E(e7=>{"use strict";Object.defineProperty(e7,"__esModule",{value:!0});var NLt=Vt(),OLt=fi(),I_e=Et(),PLt=_d(),kLt=wy(),DLt=Iy(),BLt={keyword:"elements",schemaType:"object",error:(0,DLt.typeError)("array"),code(t){(0,PLt.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t;if((0,NLt.alwaysValidSchema)(s,n))return;let[i]=(0,kLt.checkNullable)(t);e.if((0,I_e.not)(i),()=>e.if((0,I_e._)`Array.isArray(${r})`,()=>e.assign(i,(0,OLt.validateArray)(t)),()=>t.error())),t.ok(i)}};e7.default=BLt});var r7=E(Pp=>{"use strict";Object.defineProperty(Pp,"__esModule",{value:!0});Pp.validateProperties=Pp.error=void 0;var t7=fi(),T_e=Vt(),Sd=Et(),LLt=_d(),MLt=wy(),w_e=Iy(),Ry;(function(t){t.Additional="additional",t.Missing="missing"})(Ry||(Ry={}));Pp.error={message:t=>{let{params:e}=t;return e.propError?e.propError===Ry.Additional?"must NOT have additional properties":`must have property '${e.missingProperty}'`:(0,w_e.typeErrorMessage)(t,"object")},params:t=>{let{params:e}=t;return e.propError?e.propError===Ry.Additional?(0,Sd._)`{error: ${e.propError}, additionalProperty: ${e.additionalProperty}}`:(0,Sd._)`{error: ${e.propError}, missingProperty: ${e.missingProperty}}`:(0,w_e.typeErrorParams)(t,"object")}};var WLt={keyword:"properties",schemaType:"object",error:Pp.error,code:R_e};function R_e(t){(0,LLt.checkMetadata)(t);let{gen:e,data:r,parentSchema:n,it:s}=t,{additionalProperties:i,nullable:a}=n;if(s.jtdDiscriminator&&a)throw new Error("JTD: nullable inside discriminator mapping");if(p())throw new Error("JTD: properties and optionalProperties have common members");let[o,c]=m("properties"),[u,l]=m("optionalProperties");if(c.length===0&&l.length===0&&i)return;let[d,f]=s.jtdDiscriminator===void 0?(0,MLt.checkNullableObject)(t,r):[e.let("valid",!1),!0];e.if(f,()=>e.assign(d,!0).block(()=>{h(c,"properties",!0),h(l,"optionalProperties"),i||g()})),t.pass(d);function p(){let y=n.properties,x=n.optionalProperties;if(!(y&&x))return!1;for(let v in y)if(Object.prototype.hasOwnProperty.call(x,v))return!0;return!1}function m(y){let x=n[y],v=x?(0,t7.allSchemaProperties)(x):[];if(s.jtdDiscriminator&&v.some(R=>R===s.jtdDiscriminator))throw new Error(`JTD: discriminator tag used in ${y}`);let I=v.filter(R=>!(0,T_e.alwaysValidSchema)(s,x[R]));return[v,I]}function h(y,x,v){let I=e.var("valid");for(let w of y)e.if((0,t7.propertyInData)(e,r,w,s.opts.ownProperties),()=>A(w,x,I),()=>R(w)),t.ok(I);function R(w){v?(e.assign(I,!1),t.error(!1,{propError:Ry.Missing,missingProperty:w},{schemaPath:w})):e.assign(I,!0)}}function A(y,x,v){t.subschema({keyword:x,schemaProp:y,dataProp:y},v)}function g(){e.forIn("key",r,y=>{let x=b(y,o,"properties",s.jtdDiscriminator),v=b(y,u,"optionalProperties"),I=x===!0?v:v===!0?x:(0,Sd.and)(x,v);e.if(I,()=>{s.opts.removeAdditional?e.code((0,Sd._)`delete ${r}[${y}]`):(t.error(!1,{propError:Ry.Additional,additionalProperty:y},{instancePath:y,parentSchema:!0}),s.opts.allErrors||e.break())})})}function b(y,x,v,I){let R;if(x.length>8){let w=(0,T_e.schemaRefOrVal)(s,n[v],v);R=(0,Sd.not)((0,t7.isOwnProperty)(e,w,y)),I!==void 0&&(R=(0,Sd.and)(R,(0,Sd._)`${y} !== ${I}`))}else if(x.length||I!==void 0){let w=I===void 0?x:[I].concat(x);R=(0,Sd.and)(...w.map(N=>(0,Sd._)`${y} !== ${N}`))}else R=!0;return R}}Pp.validateProperties=R_e;Pp.default=WLt});var O_e=E(n7=>{"use strict";Object.defineProperty(n7,"__esModule",{value:!0});var N_e=r7(),$Lt={keyword:"optionalProperties",schemaType:"object",error:N_e.error,code(t){t.parentSchema.properties||(0,N_e.validateProperties)(t)}};n7.default=$Lt});var k_e=E(s7=>{"use strict";Object.defineProperty(s7,"__esModule",{value:!0});var zm=Et(),FLt=_d(),ULt=wy(),P_e=Iy(),MO=QU(),qLt={message:t=>{let{schema:e,params:r}=t;return r.discrError?r.discrError===MO.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in mapping`:(0,P_e.typeErrorMessage)(t,"object")},params:t=>{let{schema:e,params:r}=t;return r.discrError?(0,zm._)`{error: ${r.discrError}, tag: ${e}, tagValue: ${r.tag}}`:(0,P_e.typeErrorParams)(t,"object")}},jLt={keyword:"discriminator",schemaType:"string",implements:["mapping"],error:qLt,code(t){(0,FLt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s}=t,[i,a]=(0,ULt.checkNullableObject)(t,r);e.if(a),o(),e.elseIf((0,zm.not)(i)),t.error(),e.endIf(),t.ok(i);function o(){let l=e.const("tag",(0,zm._)`${r}${(0,zm.getProperty)(n)}`);e.if((0,zm._)`${l} === undefined`),t.error(!1,{discrError:MO.DiscrError.Tag,tag:l}),e.elseIf((0,zm._)`typeof ${l} == "string"`),c(l),e.else(),t.error(!1,{discrError:MO.DiscrError.Tag,tag:l},{instancePath:n}),e.endIf()}function c(l){e.if(!1);for(let d in s.mapping)e.elseIf((0,zm._)`${l} === ${d}`),e.assign(i,u(d));e.else(),t.error(!1,{discrError:MO.DiscrError.Mapping,tag:l},{instancePath:n,schemaPath:"mapping",parentSchema:!0}),e.endIf()}function u(l){let d=e.name("valid");return t.subschema({keyword:"mapping",schemaProp:l,jtdDiscriminator:n},d),d}}};s7.default=jLt});var B_e=E(i7=>{"use strict";Object.defineProperty(i7,"__esModule",{value:!0});var D_e=Vt(),WO=Et(),HLt=_d(),QLt=wy(),GLt=Iy(),KLt={keyword:"values",schemaType:"object",error:(0,GLt.typeError)("object"),code(t){(0,HLt.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t,[i,a]=(0,QLt.checkNullableObject)(t,r);(0,D_e.alwaysValidSchema)(s,n)?e.if((0,WO.not)((0,WO.or)(a,i)),()=>t.error()):(e.if(a),e.assign(i,o()),e.elseIf((0,WO.not)(i)),t.error(),e.endIf()),t.ok(i);function o(){let c=e.name("valid");if(s.allErrors){let l=e.let("valid",!0);return u(()=>e.assign(l,!1)),l}return e.var(c,!0),u(()=>e.break()),c;function u(l){e.forIn("key",r,d=>{t.subschema({keyword:"values",dataProp:d,dataPropType:D_e.Type.Str},c),e.if((0,WO.not)(c),l)})}}}};i7.default=KLt});var L_e=E(a7=>{"use strict";Object.defineProperty(a7,"__esModule",{value:!0});var VLt=fi(),zLt={keyword:"union",schemaType:"array",trackErrors:!0,code:VLt.validateUnion,error:{message:"must match a schema in union"}};a7.default=zLt});var M_e=E(o7=>{"use strict";Object.defineProperty(o7,"__esModule",{value:!0});var YLt=BO(),JLt=XU(),XLt=v_e(),ZLt=C_e(),e4t=r7(),t4t=O_e(),r4t=k_e(),n4t=B_e(),s4t=L_e(),i4t=_d(),a4t=["definitions",YLt.default,JLt.default,XLt.default,ZLt.default,e4t.default,t4t.default,r4t.default,n4t.default,s4t.default,i4t.default,{keyword:"additionalProperties",schemaType:"boolean"},{keyword:"nullable",schemaType:"boolean"}];o7.default=a4t});var U_e=E(c7=>{"use strict";Object.defineProperty(c7,"__esModule",{value:!0});var vd=t=>{let e={nullable:{type:"boolean"},metadata:{optionalProperties:{union:{elements:{ref:"schema"}}},additionalProperties:!0}};return t&&(e.definitions={values:{ref:"schema"}}),e},o4t=t=>({optionalProperties:vd(t)}),c4t=t=>({properties:{ref:{type:"string"}},optionalProperties:vd(t)}),u4t=t=>({properties:{type:{enum:["boolean","timestamp","string","float32","float64","int8","uint8","int16","uint16","int32","uint32"]}},optionalProperties:vd(t)}),l4t=t=>({properties:{enum:{elements:{type:"string"}}},optionalProperties:vd(t)}),d4t=t=>({properties:{elements:{ref:"schema"}},optionalProperties:vd(t)}),$_e=t=>({properties:{properties:{values:{ref:"schema"}}},optionalProperties:{optionalProperties:{values:{ref:"schema"}},additionalProperties:{type:"boolean"},...vd(t)}}),F_e=t=>({properties:{optionalProperties:{values:{ref:"schema"}}},optionalProperties:{additionalProperties:{type:"boolean"},...vd(t)}}),f4t=t=>({properties:{discriminator:{type:"string"},mapping:{values:{metadata:{union:[$_e(!1),F_e(!1)]}}}},optionalProperties:vd(t)}),p4t=t=>({properties:{values:{ref:"schema"}},optionalProperties:vd(t)}),W_e=t=>({metadata:{union:[o4t,c4t,u4t,l4t,d4t,$_e,F_e,f4t,p4t].map(e=>e(t))}}),m4t={definitions:{schema:W_e(!1)},...W_e(!0)};c7.default=m4t});var u7=E($O=>{"use strict";Object.defineProperty($O,"__esModule",{value:!0});$O.jtdForms=void 0;$O.jtdForms=["elements","values","discriminator","properties","optionalProperties","enum","type","ref"]});var j_e=E(d7=>{"use strict";Object.defineProperty(d7,"__esModule",{value:!0});var l7=/[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,h4t={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function q_e(t){return l7.lastIndex=0,'"'+(l7.test(t)?t.replace(l7,e=>{let r=h4t[e];return typeof r=="string"?r:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}):t)+'"'}d7.default=q_e;q_e.code='require("ajv/dist/runtime/quote").default'});var z_e=E(p7=>{"use strict";Object.defineProperty(p7,"__esModule",{value:!0});var g4t=u7(),Q_e=Qm(),dr=Et(),A4t=bd(),En=ec(),y4t=fi(),x4t=BO(),b4t=Vt(),E4t=j_e(),_4t={elements:v4t,values:I4t,discriminator:C4t,properties:H_e,optionalProperties:H_e,enum:D_,type:T4t,ref:R4t};function G_e(t,e){let r=Q_e.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new dr.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("serialize"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:En.default.data},u;try{this._compilations.add(t),t.serializeName=o,a.func(o,En.default.data,!1,()=>{a.let(En.default.json,(0,dr.str)``),B_(c),a.return(En.default.json)}),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(En.default.scope)}return ${l}`;let f=new Function(`${En.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.serialize=f}catch(l){throw u&&this.logger.error("Error compiling serializer, function code:",u),delete t.serialize,delete t.serializeName,l}finally{this._compilations.delete(t)}return t}p7.default=G_e;function B_(t){let e;for(let r of g4t.jtdForms)if(r in t.schema){e=r;break}S4t(t,e?_4t[e]:O4t)}function S4t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);r.if((0,dr._)`${s} === undefined || ${s} === null`,()=>r.add(En.default.json,(0,dr._)`"null"`),()=>e(t))}function v4t(t){let{gen:e,schema:r,data:n}=t;e.add(En.default.json,(0,dr.str)`[`);let s=e.let("first",!0);e.forOf("el",n,i=>{f7(t,s),B_({...t,schema:r.elements,data:i})}),e.add(En.default.json,(0,dr.str)`]`)}function I4t(t){let{gen:e,schema:r,data:n}=t;e.add(En.default.json,(0,dr.str)`{`);let s=e.let("first",!0);e.forIn("key",n,i=>K_e(t,i,r.values,s)),e.add(En.default.json,(0,dr.str)`}`)}function K_e(t,e,r,n){let{gen:s,data:i}=t;f7(t,n),D_({...t,data:e}),s.add(En.default.json,(0,dr.str)`:`);let a=s.const("value",(0,dr._)`${i}${(0,dr.getProperty)(e)}`);B_({...t,schema:r,data:a})}function C4t(t){let{gen:e,schema:r,data:n}=t,{discriminator:s}=r;e.add(En.default.json,(0,dr.str)`{${JSON.stringify(s)}:`);let i=e.const("tag",(0,dr._)`${n}${(0,dr.getProperty)(s)}`);D_({...t,data:i}),e.if(!1);for(let a in r.mapping){e.elseIf((0,dr._)`${i} === ${a}`);let o=r.mapping[a];V_e({...t,schema:o},s)}e.endIf(),e.add(En.default.json,(0,dr.str)`}`)}function H_e(t){let{gen:e}=t;e.add(En.default.json,(0,dr.str)`{`),V_e(t),e.add(En.default.json,(0,dr.str)`}`)}function V_e(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a}=n,o=f(i),c=f(a),u=p(o.concat(c)),l=!e,d;for(let g of o)l?l=!1:r.add(En.default.json,(0,dr.str)`,`),h(g,i[g],m(g));l&&(d=r.let("first",!0));for(let g of c){let b=m(g);r.if((0,dr.and)((0,dr._)`${b} !== undefined`,(0,y4t.isOwnProperty)(r,s,g)),()=>{f7(t,d),h(g,a[g],b)})}n.additionalProperties&&r.forIn("key",s,g=>r.if(A(g,u),()=>K_e(t,g,{},d)));function f(g){return g?Object.keys(g):[]}function p(g){if(e&&g.push(e),new Set(g).size!==g.length)throw new Error("JTD: properties/optionalProperties/disciminator overlap");return g}function m(g){return r.const("value",(0,dr._)`${s}${(0,dr.getProperty)(g)}`)}function h(g,b,y){r.add(En.default.json,(0,dr.str)`${JSON.stringify(g)}:`),B_({...t,schema:b,data:y})}function A(g,b){return b.length?(0,dr.and)(...b.map(y=>(0,dr._)`${g} !== ${y}`)):!0}}function T4t(t){let{gen:e,schema:r,data:n}=t;switch(r.type){case"boolean":e.add(En.default.json,(0,dr._)`${n} ? "true" : "false"`);break;case"string":D_(t);break;case"timestamp":e.if((0,dr._)`${n} instanceof Date`,()=>e.add(En.default.json,(0,dr._)`'"' + ${n}.toISOString() + '"'`),()=>D_(t));break;default:w4t(t)}}function D_({gen:t,data:e}){t.add(En.default.json,(0,dr._)`${(0,b4t.useFunc)(t,E4t.default)}(${e})`)}function w4t({gen:t,data:e}){t.add(En.default.json,(0,dr._)`"" + ${e}`)}function R4t(t){let{gen:e,self:r,data:n,definitions:s,schema:i,schemaEnv:a}=t,{ref:o}=i,c=s[o];if(!c)throw new A4t.default(r.opts.uriResolver,"",o,`No definition ${o}`);if(!(0,x4t.hasRef)(c))return B_({...t,schema:c});let{root:u}=a,l=G_e.call(r,new Q_e.SchemaEnv({schema:c,root:u}),s);e.add(En.default.json,(0,dr._)`${N4t(e,l)}(${n})`)}function N4t(t,e){return e.serialize?t.scopeValue("serialize",{ref:e.serialize}):(0,dr._)`${t.scopeValue("wrapper",{ref:e})}.serialize`}function O4t({gen:t,data:e}){t.add(En.default.json,(0,dr._)`JSON.stringify(${e})`)}function f7({gen:t},e){e?t.if(e,()=>t.assign(e,!1),()=>t.add(En.default.json,(0,dr.str)`,`)):t.add(En.default.json,(0,dr.str)`,`)}});var J_e=E(Dp=>{"use strict";Object.defineProperty(Dp,"__esModule",{value:!0});Dp.parseJsonString=Dp.parseJsonNumber=Dp.parseJson=void 0;var P4t=/position\s(\d+)(?: \(line \d+ column \d+\))?$/;function Id(t,e){let r;Id.message=void 0;let n;e&&(t=t.slice(e));try{return Id.position=e+t.length,JSON.parse(t)}catch(s){if(n=P4t.exec(s.message),!n){Id.message="unexpected end";return}r=+n[1];let i=t[r];t=t.slice(0,r),Id.position=e+r;try{return JSON.parse(t)}catch{Id.message=`unexpected token ${i}`;return}}}Dp.parseJson=Id;Id.message=void 0;Id.position=0;Id.code='require("ajv/dist/runtime/parseJson").parseJson';function Cd(t,e,r){let n="",s;if(Cd.message=void 0,t[e]==="-"&&(n+="-",e++),t[e]==="0")n+="0",e++;else if(!i(r)){a();return}if(r)return Cd.position=e,+n;if(t[e]==="."&&(n+=".",e++,!i())){a();return}if(s=t[e],(s==="e"||s==="E")&&(n+="e",e++,s=t[e],(s==="+"||s==="-")&&(n+=s,e++),!i())){a();return}return Cd.position=e,+n;function i(o){let c=!1;for(;s=t[e],s>="0"&&s<="9"&&(o===void 0||o-- >0);)c=!0,n+=s,e++;return c}function a(){Cd.position=e,Cd.message=e<t.length?`unexpected token ${t[e]}`:"unexpected end"}}Dp.parseJsonNumber=Cd;Cd.message=void 0;Cd.position=0;Cd.code='require("ajv/dist/runtime/parseJson").parseJsonNumber';var Y_e={b:"\b",f:"\f",n:`
`,r:"\r",t:" ",'"':'"',"/":"/","\\":"\\"},k4t=97,D4t=48;function kp(t,e){let r="",n;for(kp.message=void 0;n=t[e++],n!=='"';)if(n==="\\")if(n=t[e],n in Y_e)r+=Y_e[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)-k4t+10;else if(n>="0"&&n<="9")a+=n.charCodeAt(0)-D4t;else{s(`unexpected token ${n}`);return}e++}r+=String.fromCharCode(a)}else{s(`unexpected token ${n}`);return}else if(n===void 0){s("unexpected end");return}else if(n.charCodeAt(0)>=32)r+=n;else{s(`unexpected token ${n}`);return}return kp.position=e,r;function s(i){kp.position=e,kp.message=i}}Dp.parseJsonString=kp;kp.message=void 0;kp.position=0;kp.code='require("ajv/dist/runtime/parseJson").parseJsonString'});var cSe=E(E7=>{"use strict";Object.defineProperty(E7,"__esModule",{value:!0});var B4t=u7(),tSe=Qm(),ut=Et(),L4t=bd(),or=ec(),M4t=fi(),W4t=BO(),$4t=XU(),g7=J_e(),rSe=Vt(),F4t=JU(),U4t={elements:Q4t,values:G4t,discriminator:V4t,properties:X_e,optionalProperties:X_e,enum:Y4t,type:z4t,ref:J4t};function nSe(t,e){let r=tSe.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new ut.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("parse"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:or.default.data,parseName:o,char:a.name("c")},u;try{this._compilations.add(t),t.parseName=o,q4t(c),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(or.default.scope)}return ${l}`;let f=new Function(`${or.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.parse=f}catch(l){throw u&&this.logger.error("Error compiling parser, function code:",u),delete t.parse,delete t.parseName,l}finally{this._compilations.delete(t)}return t}E7.default=nSe;var h7=(0,ut._)`undefined`;function q4t(t){let{gen:e,parseName:r,char:n}=t;e.func(r,(0,ut._)`${or.default.json}, ${or.default.jsonPos}, ${or.default.jsonPart}`,!1,()=>{e.let(or.default.data),e.let(n),e.assign((0,ut._)`${r}.message`,h7),e.assign((0,ut._)`${r}.position`,h7),e.assign(or.default.jsonPos,(0,ut._)`${or.default.jsonPos} || 0`),e.const(or.default.jsonLen,(0,ut._)`${or.default.json}.length`),FO(t),b7(t),e.if(or.default.jsonPart,()=>{e.assign((0,ut._)`${r}.position`,or.default.jsonPos),e.return(or.default.data)}),e.if((0,ut._)`${or.default.jsonPos} === ${or.default.jsonLen}`,()=>e.return(or.default.data)),Ny(t)})}function FO(t){let e;for(let r of B4t.jtdForms)if(r in t.schema){e=r;break}e?H4t(t,U4t[e]):y7(t)}var j4t=eSe(!0,eSe(!1,Ny));function H4t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);L_(t,"null",e,()=>r.assign(s,null))}function Q4t(t){let{gen:e,schema:r,data:n}=t;Zu(t,"[");let s=e.let("i",0);e.assign(n,(0,ut._)`[]`),A7(t,"]",()=>{let i=e.let("el");FO({...t,schema:r.elements,data:i}),e.assign((0,ut._)`${n}[${s}++]`,i)})}function G4t(t){let{gen:e,schema:r,data:n}=t;Zu(t,"{"),e.assign(n,(0,ut._)`{}`),A7(t,"}",()=>K4t(t,r.values))}function A7(t,e,r){sSe(t,e,r),Zu(t,e)}function sSe(t,e,r){let{gen:n}=t;n.for((0,ut._)`;${or.default.jsonPos}<${or.default.jsonLen} && ${UO(1)}!==${e};`,()=>{r(),L_(t,",",()=>n.break(),s)});function s(){L_(t,e,()=>{},Ny)}}function K4t(t,e){let{gen:r}=t,n=r.let("key");Ym({...t,data:n}),Zu(t,":"),aSe(t,n,e)}function V4t(t){let{gen:e,data:r,schema:n}=t,{discriminator:s,mapping:i}=n;Zu(t,"{"),e.assign(r,(0,ut._)`{}`);let a=e.const("pos",or.default.jsonPos),o=e.let("value"),c=e.let("tag");sSe(t,"}",()=>{let u=e.let("key");Ym({...t,data:u}),Zu(t,":"),e.if((0,ut._)`${u} === ${s}`,()=>{Ym({...t,data:c}),e.assign((0,ut._)`${r}[${u}]`,c),e.break()},()=>y7({...t,data:o}))}),e.assign(or.default.jsonPos,a),e.if((0,ut._)`${c} === undefined`),Td(t,(0,ut.str)`discriminator tag not found`);for(let u in i)e.elseIf((0,ut._)`${c} === ${u}`),iSe({...t,schema:i[u]},s);e.else(),Td(t,(0,ut.str)`discriminator value not in schema`),e.endIf()}function X_e(t){let{gen:e,data:r}=t;Zu(t,"{"),e.assign(r,(0,ut._)`{}`),iSe(t)}function iSe(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a,additionalProperties:o}=n;if(A7(t,"}",()=>{let c=r.let("key");if(Ym({...t,data:c}),Zu(t,":"),r.if(!1),Z_e(t,c,i),Z_e(t,c,a),e){r.elseIf((0,ut._)`${c} === ${e}`);let u=r.let("tag");Ym({...t,data:u})}r.else(),o?y7({...t,data:(0,ut._)`${s}[${c}]`}):Td(t,(0,ut.str)`property ${c} not allowed`),r.endIf()}),i){let c=(0,M4t.hasPropFunc)(r),u=(0,ut.and)(...Object.keys(i).map(l=>(0,ut._)`${c}.call(${s}, ${l})`));r.if((0,ut.not)(u),()=>Td(t,(0,ut.str)`missing required properties`))}}function Z_e(t,e,r={}){let{gen:n}=t;for(let s in r)n.elseIf((0,ut._)`${e} === ${s}`),aSe(t,e,r[s])}function aSe(t,e,r){FO({...t,schema:r,data:(0,ut._)`${t.data}[${e}]`})}function z4t(t){let{gen:e,schema:r,data:n,self:s}=t;switch(r.type){case"boolean":j4t(t);break;case"string":Ym(t);break;case"timestamp":{Ym(t);let i=(0,rSe.useFunc)(e,F4t.default),{allowDate:a,parseDate:o}=s.opts,c=a?(0,ut._)`!${i}(${n}, true)`:(0,ut._)`!${i}(${n})`,u=o?(0,ut.or)(c,(0,ut._)`(${n} = new Date(${n}), false)`,(0,ut._)`isNaN(${n}.valueOf())`):c;e.if(u,()=>Td(t,(0,ut.str)`invalid timestamp`));break}case"float32":case"float64":m7(t);break;default:{let i=r.type;if(!s.opts.int32range&&(i==="int32"||i==="uint32"))m7(t,16),i==="uint32"&&e.if((0,ut._)`${n} < 0`,()=>Td(t,(0,ut.str)`integer out of range`));else{let[a,o,c]=$4t.intRange[i];m7(t,c),e.if((0,ut._)`${n} < ${a} || ${n} > ${o}`,()=>Td(t,(0,ut.str)`integer out of range`))}}}}function Ym(t){Zu(t,'"'),x7(t,g7.parseJsonString)}function Y4t(t){let{gen:e,data:r,schema:n}=t,s=n.enum;Zu(t,'"'),e.if(!1);for(let i of s){let a=JSON.stringify(i).slice(1);e.elseIf((0,ut._)`${UO(a.length)} === ${a}`),e.assign(r,(0,ut.str)`${i}`),e.add(or.default.jsonPos,a.length)}e.else(),Ny(t),e.endIf()}function m7(t,e){let{gen:r}=t;b7(t),r.if((0,ut._)`"-0123456789".indexOf(${UO(1)}) < 0`,()=>Ny(t),()=>x7(t,g7.parseJsonNumber,e))}function eSe(t,e){return r=>{let{gen:n,data:s}=r;L_(r,`${t}`,()=>e(r),()=>n.assign(s,t))}}function J4t(t){let{gen:e,self:r,definitions:n,schema:s,schemaEnv:i}=t,{ref:a}=s,o=n[a];if(!o)throw new L4t.default(r.opts.uriResolver,"",a,`No definition ${a}`);if(!(0,W4t.hasRef)(o))return FO({...t,schema:o});let{root:c}=i,u=nSe.call(r,new tSe.SchemaEnv({schema:o,root:c}),n);oSe(t,X4t(e,u),!0)}function X4t(t,e){return e.parse?t.scopeValue("parse",{ref:e.parse}):(0,ut._)`${t.scopeValue("wrapper",{ref:e})}.parse`}function y7(t){x7(t,g7.parseJson)}function x7(t,e,r){oSe(t,(0,rSe.useFunc)(t.gen,e),r)}function oSe(t,e,r){let{gen:n,data:s}=t;n.assign(s,(0,ut._)`${e}(${or.default.json}, ${or.default.jsonPos}${r?(0,ut._)`, ${r}`:ut.nil})`),n.assign(or.default.jsonPos,(0,ut._)`${e}.position`),n.if((0,ut._)`${s} === undefined`,()=>Td(t,(0,ut._)`${e}.message`))}function Zu(t,e){L_(t,e,Ny)}function L_(t,e,r,n){let{gen:s}=t,i=e.length;b7(t),s.if((0,ut._)`${UO(i)} === ${e}`,()=>{s.add(or.default.jsonPos,i),n?.(t)},()=>r(t))}function b7({gen:t,char:e}){t.code((0,ut._)`while((${e}=${or.default.json}[${or.default.jsonPos}],${e}===" "||${e}==="\\n"||${e}==="\\r"||${e}==="\\t"))${or.default.jsonPos}++;`)}function UO(t){return t===1?(0,ut._)`${or.default.json}[${or.default.jsonPos}]`:(0,ut._)`${or.default.json}.slice(${or.default.jsonPos}, ${or.default.jsonPos}+${t})`}function Ny(t){Td(t,(0,ut._)`"unexpected token " + ${or.default.json}[${or.default.jsonPos}]`)}function Td({gen:t,parseName:e},r){t.assign((0,ut._)`${e}.message`,r),t.assign((0,ut._)`${e}.position`,or.default.jsonPos),t.return(h7)}});var v7=E((Dn,S7)=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.MissingRefError=Dn.ValidationError=Dn.CodeGen=Dn.Name=Dn.nil=Dn.stringify=Dn.str=Dn._=Dn.KeywordCxt=Dn.Ajv=void 0;var Z4t=nU(),eMt=M_e(),tMt=U_e(),rMt=z_e(),nMt=cSe(),_7="JTD-meta-schema",Oy=class extends Z4t.default{constructor(e={}){super({...e,jtd:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(eMt.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema(),this.opts.meta&&this.addMetaSchema(tMt.default,_7,!1)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(_7)?_7:void 0)}compileSerializer(e){let r=this._addSchema(e);return r.serialize||this._compileSerializer(r)}compileParser(e){let r=this._addSchema(e);return r.parse||this._compileParser(r)}_compileSerializer(e){if(rMt.default.call(this,e,e.schema.definitions||{}),!e.serialize)throw new Error("ajv implementation error");return e.serialize}_compileParser(e){if(nMt.default.call(this,e,e.schema.definitions||{}),!e.parse)throw new Error("ajv implementation error");return e.parse}};Dn.Ajv=Oy;S7.exports=Dn=Oy;S7.exports.Ajv=Oy;Object.defineProperty(Dn,"__esModule",{value:!0});Dn.default=Oy;var sMt=Ay();Object.defineProperty(Dn,"KeywordCxt",{enumerable:!0,get:function(){return sMt.KeywordCxt}});var Py=Et();Object.defineProperty(Dn,"_",{enumerable:!0,get:function(){return Py._}});Object.defineProperty(Dn,"str",{enumerable:!0,get:function(){return Py.str}});Object.defineProperty(Dn,"stringify",{enumerable:!0,get:function(){return Py.stringify}});Object.defineProperty(Dn,"nil",{enumerable:!0,get:function(){return Py.nil}});Object.defineProperty(Dn,"Name",{enumerable:!0,get:function(){return Py.Name}});Object.defineProperty(Dn,"CodeGen",{enumerable:!0,get:function(){return Py.CodeGen}});var iMt=A_();Object.defineProperty(Dn,"ValidationError",{enumerable:!0,get:function(){return iMt.default}});var aMt=bd();Object.defineProperty(Dn,"MissingRefError",{enumerable:!0,get:function(){return aMt.default}})});var I7=E((kBr,uSe)=>{"use strict";var oMt=HW();uSe.exports=Object.freeze({coerceTypes:"array",useDefaults:!0,removeAdditional:!0,uriResolver:oMt,addUsedSchema:!1,allErrors:!1})});var hSe=E(el=>{"use strict";Object.defineProperty(el,"__esModule",{value:!0});el.formatNames=el.fastFormats=el.fullFormats=void 0;function ky(t,e){return{validate:t,compare:e}}el.fullFormats={date:ky(fSe,w7),time:ky(pSe,R7),"date-time":ky(dMt,mSe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:mMt,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:EMt,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:hMt,int32:{type:"number",validate:yMt},int64:{type:"number",validate:xMt},float:{type:"number",validate:dSe},double:{type:"number",validate:dSe},password:!0,binary:!0};el.fastFormats={...el.fullFormats,date:ky(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,w7),time:ky(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,R7),"date-time":ky(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,mSe),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};el.formatNames=Object.keys(el.fullFormats);function cMt(t){return t%4===0&&(t%100!==0||t%400===0)}var uMt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,lMt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function fSe(t){let e=uMt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&cMt(r)?29:lMt[n])}function w7(t,e){if(t&&e)return t>e?1:t<e?-1:0}var C7=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i;function pSe(t,e){let r=C7.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 R7(t,e){if(!(t&&e))return;let r=C7.exec(t),n=C7.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 T7=/t|\s/i;function dMt(t){let e=t.split(T7);return e.length===2&&fSe(e[0])&&pSe(e[1],!0)}function mSe(t,e){if(!(t&&e))return;let[r,n]=t.split(T7),[s,i]=e.split(T7),a=w7(r,s);if(a!==void 0)return a||R7(n,i)}var fMt=/\/|:/,pMt=/^(?:[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 mMt(t){return fMt.test(t)&&pMt.test(t)}var lSe=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function hMt(t){return lSe.lastIndex=0,lSe.test(t)}var gMt=-(2**31),AMt=2**31-1;function yMt(t){return Number.isInteger(t)&&t<=AMt&&t>=gMt}function xMt(t){return Number.isInteger(t)}function dSe(){return!0}var bMt=/[^\\]\\Z/;function EMt(t){if(bMt.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var $_=E(Lr=>{"use strict";Object.defineProperty(Lr,"__esModule",{value:!0});Lr.regexpCode=Lr.getEsmExportName=Lr.getProperty=Lr.safeStringify=Lr.stringify=Lr.strConcat=Lr.addCodeArg=Lr.str=Lr._=Lr.nil=Lr._Code=Lr.Name=Lr.IDENTIFIER=Lr._CodeOrName=void 0;var M_=class{};Lr._CodeOrName=M_;Lr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Jm=class extends M_{constructor(e){if(super(),!Lr.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Lr.Name=Jm;var nc=class extends M_{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Jm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Lr._Code=nc;Lr.nil=new nc("");function gSe(t,...e){let r=[t[0]],n=0;for(;n<e.length;)O7(r,e[n]),r.push(t[++n]);return new nc(r)}Lr._=gSe;var N7=new nc("+");function ASe(t,...e){let r=[W_(t[0])],n=0;for(;n<e.length;)r.push(N7),O7(r,e[n]),r.push(N7,W_(t[++n]));return _Mt(r),new nc(r)}Lr.str=ASe;function O7(t,e){e instanceof nc?t.push(...e._items):e instanceof Jm?t.push(e):t.push(IMt(e))}Lr.addCodeArg=O7;function _Mt(t){let e=1;for(;e<t.length-1;){if(t[e]===N7){let r=SMt(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function SMt(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Jm||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 Jm))return`"${t}${e.slice(1)}`}function vMt(t,e){return e.emptyStr()?t:t.emptyStr()?e:ASe`${t}${e}`}Lr.strConcat=vMt;function IMt(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:W_(Array.isArray(t)?t.join(","):t)}function CMt(t){return new nc(W_(t))}Lr.stringify=CMt;function W_(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Lr.safeStringify=W_;function TMt(t){return typeof t=="string"&&Lr.IDENTIFIER.test(t)?new nc(`.${t}`):gSe`[${t}]`}Lr.getProperty=TMt;function wMt(t){if(typeof t=="string"&&Lr.IDENTIFIER.test(t))return new nc(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Lr.getEsmExportName=wMt;function RMt(t){return new nc(t.toString())}Lr.regexpCode=RMt});var D7=E(Ua=>{"use strict";Object.defineProperty(Ua,"__esModule",{value:!0});Ua.ValueScope=Ua.ValueScopeName=Ua.Scope=Ua.varKinds=Ua.UsedValueState=void 0;var Fa=$_(),P7=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},qO;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(qO||(Ua.UsedValueState=qO={}));Ua.varKinds={const:new Fa.Name("const"),let:new Fa.Name("let"),var:new Fa.Name("var")};var jO=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Fa.Name?e:this.name(e)}name(e){return new Fa.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ua.Scope=jO;var HO=class extends Fa.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Fa._)`.${new Fa.Name(r)}[${n}]`}};Ua.ValueScopeName=HO;var NMt=(0,Fa._)`\n`,k7=class extends jO{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?NMt:Fa.nil}}get(){return this._scope}name(e){return new HO(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Fa._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Fa.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,qO.Started);let l=r(u);if(l){let d=this.opts.es5?Ua.varKinds.var:Ua.varKinds.const;i=(0,Fa._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Fa._)`${i}${l}${this.opts._n}`;else throw new P7(u);c.set(u,qO.Completed)})}return i}};Ua.ValueScope=k7});var zt=E(Zt=>{"use strict";Object.defineProperty(Zt,"__esModule",{value:!0});Zt.or=Zt.and=Zt.not=Zt.CodeGen=Zt.operators=Zt.varKinds=Zt.ValueScopeName=Zt.ValueScope=Zt.Scope=Zt.Name=Zt.regexpCode=Zt.stringify=Zt.getProperty=Zt.nil=Zt.strConcat=Zt.str=Zt._=void 0;var yr=$_(),Yc=D7(),Bp=$_();Object.defineProperty(Zt,"_",{enumerable:!0,get:function(){return Bp._}});Object.defineProperty(Zt,"str",{enumerable:!0,get:function(){return Bp.str}});Object.defineProperty(Zt,"strConcat",{enumerable:!0,get:function(){return Bp.strConcat}});Object.defineProperty(Zt,"nil",{enumerable:!0,get:function(){return Bp.nil}});Object.defineProperty(Zt,"getProperty",{enumerable:!0,get:function(){return Bp.getProperty}});Object.defineProperty(Zt,"stringify",{enumerable:!0,get:function(){return Bp.stringify}});Object.defineProperty(Zt,"regexpCode",{enumerable:!0,get:function(){return Bp.regexpCode}});Object.defineProperty(Zt,"Name",{enumerable:!0,get:function(){return Bp.Name}});var VO=D7();Object.defineProperty(Zt,"Scope",{enumerable:!0,get:function(){return VO.Scope}});Object.defineProperty(Zt,"ValueScope",{enumerable:!0,get:function(){return VO.ValueScope}});Object.defineProperty(Zt,"ValueScopeName",{enumerable:!0,get:function(){return VO.ValueScopeName}});Object.defineProperty(Zt,"varKinds",{enumerable:!0,get:function(){return VO.varKinds}});Zt.operators={GT:new yr._Code(">"),GTE:new yr._Code(">="),LT:new yr._Code("<"),LTE:new yr._Code("<="),EQ:new yr._Code("==="),NEQ:new yr._Code("!=="),NOT:new yr._Code("!"),OR:new yr._Code("||"),AND:new yr._Code("&&"),ADD:new yr._Code("+")};var wd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},B7=class extends wd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Yc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=By(this.rhs,e,r)),this}get names(){return this.rhs instanceof yr._CodeOrName?this.rhs.names:{}}},QO=class extends wd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof yr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=By(this.rhs,e,r),this}get names(){let e=this.lhs instanceof yr.Name?{}:{...this.lhs.names};return KO(e,this.rhs)}},L7=class extends QO{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},M7=class extends wd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},W7=class extends wd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},$7=class extends wd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},F7=class extends wd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=By(this.code,e,r),this}get names(){return this.code instanceof yr._CodeOrName?this.code.names:{}}},F_=class extends wd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(OMt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>eh(e,r.names),{})}},Rd=class extends F_{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},U7=class extends F_{},Dy=class extends Rd{};Dy.kind="else";var Xm=class t extends Rd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Dy(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(ySe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=By(this.condition,e,r),this}get names(){let e=super.names;return KO(e,this.condition),this.else&&eh(e,this.else.names),e}};Xm.kind="if";var Zm=class extends Rd{};Zm.kind="for";var q7=class extends Zm{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=By(this.iteration,e,r),this}get names(){return eh(super.names,this.iteration.names)}},j7=class extends Zm{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Yc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=KO(super.names,this.from);return KO(e,this.to)}},GO=class extends Zm{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=By(this.iterable,e,r),this}get names(){return eh(super.names,this.iterable.names)}},U_=class extends Rd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};U_.kind="func";var q_=class extends F_{render(e){return"return "+super.render(e)}};q_.kind="return";var H7=class extends Rd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&eh(e,this.catch.names),this.finally&&eh(e,this.finally.names),e}},j_=class extends Rd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};j_.kind="catch";var H_=class extends Rd{render(e){return"finally"+super.render(e)}};H_.kind="finally";var Q7=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
`:""},this._extScope=e,this._scope=new Yc.Scope({parent:e}),this._nodes=[new U7]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new B7(e,i,n)),i}const(e,r,n){return this._def(Yc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Yc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Yc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new QO(e,r,n))}add(e,r){return this._leafNode(new L7(e,Zt.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==yr.nil&&this._leafNode(new F7(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,yr.addCodeArg)(r,s));return r.push("}"),new yr._Code(r)}if(e,r,n){if(this._blockNode(new Xm(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Xm(e))}else(){return this._elseNode(new Dy)}endIf(){return this._endBlockNode(Xm,Dy)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new q7(e),r)}forRange(e,r,n,s,i=this.opts.es5?Yc.varKinds.var:Yc.varKinds.let){let a=this._scope.toName(e);return this._for(new j7(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Yc.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof yr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,yr._)`${a}.length`,o=>{this.var(i,(0,yr._)`${a}[${o}]`),n(i)})}return this._for(new GO("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Yc.varKinds.var:Yc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,yr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new GO("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Zm)}label(e){return this._leafNode(new M7(e))}break(e){return this._leafNode(new W7(e))}return(e){let r=new q_;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(q_)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new H7;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new j_(i),r(i)}return n&&(this._currNode=s.finally=new H_,this.code(n)),this._endBlockNode(j_,H_)}throw(e){return this._leafNode(new $7(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=yr.nil,n,s){return this._blockNode(new U_(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(U_)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Xm))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Zt.CodeGen=Q7;function eh(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function KO(t,e){return e instanceof yr._CodeOrName?eh(t,e.names):t}function By(t,e,r){if(t instanceof yr.Name)return n(t);if(!s(t))return t;return new yr._Code(t._items.reduce((i,a)=>(a instanceof yr.Name&&(a=n(a)),a instanceof yr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof yr._Code&&i._items.some(a=>a instanceof yr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function OMt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function ySe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,yr._)`!${G7(t)}`}Zt.not=ySe;var PMt=xSe(Zt.operators.AND);function kMt(...t){return t.reduce(PMt)}Zt.and=kMt;var DMt=xSe(Zt.operators.OR);function BMt(...t){return t.reduce(DMt)}Zt.or=BMt;function xSe(t){return(e,r)=>e===yr.nil?r:r===yr.nil?e:(0,yr._)`${G7(e)} ${t} ${G7(r)}`}function G7(t){return t instanceof yr.Name?t:(0,yr._)`(${t})`}});var Mr=E(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.checkStrictMode=nr.getErrorPath=nr.Type=nr.useFunc=nr.setEvaluated=nr.evaluatedPropsToName=nr.mergeEvaluated=nr.eachItem=nr.unescapeJsonPointer=nr.escapeJsonPointer=nr.escapeFragment=nr.unescapeFragment=nr.schemaRefOrVal=nr.schemaHasRulesButRef=nr.schemaHasRules=nr.checkUnknownRules=nr.alwaysValidSchema=nr.toHash=void 0;var pn=zt(),LMt=$_();function MMt(t){let e={};for(let r of t)e[r]=!0;return e}nr.toHash=MMt;function WMt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(_Se(t,e),!SSe(e,t.self.RULES.all))}nr.alwaysValidSchema=WMt;function _Se(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||CSe(t,`unknown keyword: "${i}"`)}nr.checkUnknownRules=_Se;function SSe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}nr.schemaHasRules=SSe;function $Mt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}nr.schemaHasRulesButRef=$Mt;function FMt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,pn._)`${r}`}return(0,pn._)`${t}${e}${(0,pn.getProperty)(n)}`}nr.schemaRefOrVal=FMt;function UMt(t){return vSe(decodeURIComponent(t))}nr.unescapeFragment=UMt;function qMt(t){return encodeURIComponent(V7(t))}nr.escapeFragment=qMt;function V7(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}nr.escapeJsonPointer=V7;function vSe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}nr.unescapeJsonPointer=vSe;function jMt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}nr.eachItem=jMt;function bSe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof pn.Name?(i instanceof pn.Name?t(s,i,a):e(s,i,a),a):i instanceof pn.Name?(e(s,a,i),i):r(i,a);return o===pn.Name&&!(c instanceof pn.Name)?n(s,c):c}}nr.mergeEvaluated={props:bSe({mergeNames:(t,e,r)=>t.if((0,pn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,pn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,pn._)`${r} || {}`).code((0,pn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,pn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,pn._)`${r} || {}`),z7(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:ISe}),items:bSe({mergeNames:(t,e,r)=>t.if((0,pn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,pn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,pn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,pn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function ISe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,pn._)`{}`);return e!==void 0&&z7(t,r,e),r}nr.evaluatedPropsToName=ISe;function z7(t,e,r){Object.keys(r).forEach(n=>t.assign((0,pn._)`${e}${(0,pn.getProperty)(n)}`,!0))}nr.setEvaluated=z7;var ESe={};function HMt(t,e){return t.scopeValue("func",{ref:e,code:ESe[e.code]||(ESe[e.code]=new LMt._Code(e.code))})}nr.useFunc=HMt;var K7;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(K7||(nr.Type=K7={}));function QMt(t,e,r){if(t instanceof pn.Name){let n=e===K7.Num;return r?n?(0,pn._)`"[" + ${t} + "]"`:(0,pn._)`"['" + ${t} + "']"`:n?(0,pn._)`"/" + ${t}`:(0,pn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,pn.getProperty)(t).toString():"/"+V7(t)}nr.getErrorPath=QMt;function CSe(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}nr.checkStrictMode=CSe});var Nd=E(Y7=>{"use strict";Object.defineProperty(Y7,"__esModule",{value:!0});var Li=zt(),GMt={data:new Li.Name("data"),valCxt:new Li.Name("valCxt"),instancePath:new Li.Name("instancePath"),parentData:new Li.Name("parentData"),parentDataProperty:new Li.Name("parentDataProperty"),rootData:new Li.Name("rootData"),dynamicAnchors:new Li.Name("dynamicAnchors"),vErrors:new Li.Name("vErrors"),errors:new Li.Name("errors"),this:new Li.Name("this"),self:new Li.Name("self"),scope:new Li.Name("scope"),json:new Li.Name("json"),jsonPos:new Li.Name("jsonPos"),jsonLen:new Li.Name("jsonLen"),jsonPart:new Li.Name("jsonPart")};Y7.default=GMt});var Q_=E(Mi=>{"use strict";Object.defineProperty(Mi,"__esModule",{value:!0});Mi.extendErrors=Mi.resetErrorsCount=Mi.reportExtraError=Mi.reportError=Mi.keyword$DataError=Mi.keywordError=void 0;var Ir=zt(),zO=Mr(),oa=Nd();Mi.keywordError={message:({keyword:t})=>(0,Ir.str)`must pass "${t}" keyword validation`};Mi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Ir.str)`"${t}" keyword must be ${e} ($data)`:(0,Ir.str)`"${t}" keyword is invalid ($data)`};function KMt(t,e=Mi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=RSe(t,e,r);n??(a||o)?TSe(i,c):wSe(s,(0,Ir._)`[${c}]`)}Mi.reportError=KMt;function VMt(t,e=Mi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=RSe(t,e,r);TSe(s,o),i||a||wSe(n,oa.default.vErrors)}Mi.reportExtraError=VMt;function zMt(t,e){t.assign(oa.default.errors,e),t.if((0,Ir._)`${oa.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Ir._)`${oa.default.vErrors}.length`,e),()=>t.assign(oa.default.vErrors,null)))}Mi.resetErrorsCount=zMt;function YMt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,oa.default.errors,o=>{t.const(a,(0,Ir._)`${oa.default.vErrors}[${o}]`),t.if((0,Ir._)`${a}.instancePath === undefined`,()=>t.assign((0,Ir._)`${a}.instancePath`,(0,Ir.strConcat)(oa.default.instancePath,i.errorPath))),t.assign((0,Ir._)`${a}.schemaPath`,(0,Ir.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Ir._)`${a}.schema`,r),t.assign((0,Ir._)`${a}.data`,n))})}Mi.extendErrors=YMt;function TSe(t,e){let r=t.const("err",e);t.if((0,Ir._)`${oa.default.vErrors} === null`,()=>t.assign(oa.default.vErrors,(0,Ir._)`[${r}]`),(0,Ir._)`${oa.default.vErrors}.push(${r})`),t.code((0,Ir._)`${oa.default.errors}++`)}function wSe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Ir._)`new ${t.ValidationError}(${e})`):(r.assign((0,Ir._)`${n}.errors`,e),r.return(!1))}var th={keyword:new Ir.Name("keyword"),schemaPath:new Ir.Name("schemaPath"),params:new Ir.Name("params"),propertyName:new Ir.Name("propertyName"),message:new Ir.Name("message"),schema:new Ir.Name("schema"),parentSchema:new Ir.Name("parentSchema")};function RSe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Ir._)`{}`:JMt(t,e,r)}function JMt(t,e,r={}){let{gen:n,it:s}=t,i=[XMt(s,r),ZMt(t,r)];return e6t(t,e,i),n.object(...i)}function XMt({errorPath:t},{instancePath:e}){let r=e?(0,Ir.str)`${t}${(0,zO.getErrorPath)(e,zO.Type.Str)}`:t;return[oa.default.instancePath,(0,Ir.strConcat)(oa.default.instancePath,r)]}function ZMt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Ir.str)`${e}/${t}`;return r&&(s=(0,Ir.str)`${s}${(0,zO.getErrorPath)(r,zO.Type.Str)}`),[th.schemaPath,s]}function e6t(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([th.keyword,s],[th.params,typeof e=="function"?e(t):e||(0,Ir._)`{}`]),c.messages&&n.push([th.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([th.schema,a],[th.parentSchema,(0,Ir._)`${l}${d}`],[oa.default.data,i]),u&&n.push([th.propertyName,u])}});var OSe=E(Ly=>{"use strict";Object.defineProperty(Ly,"__esModule",{value:!0});Ly.boolOrEmptySchema=Ly.topBoolOrEmptySchema=void 0;var t6t=Q_(),r6t=zt(),n6t=Nd(),s6t={message:"boolean schema is false"};function i6t(t){let{gen:e,schema:r,validateName:n}=t;r===!1?NSe(t,!1):typeof r=="object"&&r.$async===!0?e.return(n6t.default.data):(e.assign((0,r6t._)`${n}.errors`,null),e.return(!0))}Ly.topBoolOrEmptySchema=i6t;function a6t(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),NSe(t)):r.var(e,!0)}Ly.boolOrEmptySchema=a6t;function NSe(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,t6t.reportError)(s,s6t,void 0,e)}});var J7=E(My=>{"use strict";Object.defineProperty(My,"__esModule",{value:!0});My.getRules=My.isJSONType=void 0;var o6t=["string","number","integer","boolean","null","object","array"],c6t=new Set(o6t);function u6t(t){return typeof t=="string"&&c6t.has(t)}My.isJSONType=u6t;function l6t(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}My.getRules=l6t});var X7=E(Lp=>{"use strict";Object.defineProperty(Lp,"__esModule",{value:!0});Lp.shouldUseRule=Lp.shouldUseGroup=Lp.schemaHasRulesForType=void 0;function d6t({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&PSe(t,n)}Lp.schemaHasRulesForType=d6t;function PSe(t,e){return e.rules.some(r=>kSe(t,r))}Lp.shouldUseGroup=PSe;function kSe(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Lp.shouldUseRule=kSe});var G_=E(Wi=>{"use strict";Object.defineProperty(Wi,"__esModule",{value:!0});Wi.reportTypeError=Wi.checkDataTypes=Wi.checkDataType=Wi.coerceAndCheckDataType=Wi.getJSONTypes=Wi.getSchemaTypes=Wi.DataType=void 0;var f6t=J7(),p6t=X7(),m6t=Q_(),Ht=zt(),DSe=Mr(),Wy;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Wy||(Wi.DataType=Wy={}));function h6t(t){let e=BSe(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Wi.getSchemaTypes=h6t;function BSe(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(f6t.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Wi.getJSONTypes=BSe;function g6t(t,e){let{gen:r,data:n,opts:s}=t,i=A6t(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,p6t.schemaHasRulesForType)(t,e[0]));if(a){let o=eq(e,n,s.strictNumbers,Wy.Wrong);r.if(o,()=>{i.length?y6t(t,e,i):tq(t)})}return a}Wi.coerceAndCheckDataType=g6t;var LSe=new Set(["string","number","integer","boolean","null"]);function A6t(t,e){return e?t.filter(r=>LSe.has(r)||e==="array"&&r==="array"):[]}function y6t(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Ht._)`typeof ${s}`),o=n.let("coerced",(0,Ht._)`undefined`);i.coerceTypes==="array"&&n.if((0,Ht._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Ht._)`${s}[0]`).assign(a,(0,Ht._)`typeof ${s}`).if(eq(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Ht._)`${o} !== undefined`);for(let u of r)(LSe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),tq(t),n.endIf(),n.if((0,Ht._)`${o} !== undefined`,()=>{n.assign(s,o),x6t(t,o)});function c(u){switch(u){case"string":n.elseIf((0,Ht._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Ht._)`"" + ${s}`).elseIf((0,Ht._)`${s} === null`).assign(o,(0,Ht._)`""`);return;case"number":n.elseIf((0,Ht._)`${a} == "boolean" || ${s} === null
|| (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Ht._)`+${s}`);return;case"integer":n.elseIf((0,Ht._)`${a} === "boolean" || ${s} === null
|| (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Ht._)`+${s}`);return;case"boolean":n.elseIf((0,Ht._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Ht._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Ht._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Ht._)`${a} === "string" || ${a} === "number"
|| ${a} === "boolean" || ${s} === null`).assign(o,(0,Ht._)`[${s}]`)}}}function x6t({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Ht._)`${e} !== undefined`,()=>t.assign((0,Ht._)`${e}[${r}]`,n))}function Z7(t,e,r,n=Wy.Correct){let s=n===Wy.Correct?Ht.operators.EQ:Ht.operators.NEQ,i;switch(t){case"null":return(0,Ht._)`${e} ${s} null`;case"array":i=(0,Ht._)`Array.isArray(${e})`;break;case"object":i=(0,Ht._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Ht._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Ht._)`typeof ${e} ${s} ${t}`}return n===Wy.Correct?i:(0,Ht.not)(i);function a(o=Ht.nil){return(0,Ht.and)((0,Ht._)`typeof ${e} == "number"`,o,r?(0,Ht._)`isFinite(${e})`:Ht.nil)}}Wi.checkDataType=Z7;function eq(t,e,r,n){if(t.length===1)return Z7(t[0],e,r,n);let s,i=(0,DSe.toHash)(t);if(i.array&&i.object){let a=(0,Ht._)`typeof ${e} != "object"`;s=i.null?a:(0,Ht._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Ht.nil;i.number&&delete i.integer;for(let a in i)s=(0,Ht.and)(s,Z7(a,e,r,n));return s}Wi.checkDataTypes=eq;var b6t={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Ht._)`{type: ${t}}`:(0,Ht._)`{type: ${e}}`};function tq(t){let e=E6t(t);(0,m6t.reportError)(e,b6t)}Wi.reportTypeError=tq;function E6t(t){let{gen:e,data:r,schema:n}=t,s=(0,DSe.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var WSe=E(YO=>{"use strict";Object.defineProperty(YO,"__esModule",{value:!0});YO.assignDefaults=void 0;var $y=zt(),_6t=Mr();function S6t(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)MSe(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>MSe(t,i,s.default))}YO.assignDefaults=S6t;function MSe(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,$y._)`${i}${(0,$y.getProperty)(e)}`;if(s){(0,_6t.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,$y._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,$y._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,$y._)`${o} = ${(0,$y.stringify)(r)}`)}});var sc=E(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.validateUnion=tn.validateArray=tn.usePattern=tn.callValidateCode=tn.schemaProperties=tn.allSchemaProperties=tn.noPropertyInData=tn.propertyInData=tn.isOwnProperty=tn.hasPropFunc=tn.reportMissingProp=tn.checkMissingProp=tn.checkReportMissingProp=void 0;var Bn=zt(),rq=Mr(),Mp=Nd(),v6t=Mr();function I6t(t,e){let{gen:r,data:n,it:s}=t;r.if(sq(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Bn._)`${e}`},!0),t.error()})}tn.checkReportMissingProp=I6t;function C6t({gen:t,data:e,it:{opts:r}},n,s){return(0,Bn.or)(...n.map(i=>(0,Bn.and)(sq(t,e,i,r.ownProperties),(0,Bn._)`${s} = ${i}`)))}tn.checkMissingProp=C6t;function T6t(t,e){t.setParams({missingProperty:e},!0),t.error()}tn.reportMissingProp=T6t;function $Se(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Bn._)`Object.prototype.hasOwnProperty`})}tn.hasPropFunc=$Se;function nq(t,e,r){return(0,Bn._)`${$Se(t)}.call(${e}, ${r})`}tn.isOwnProperty=nq;function w6t(t,e,r,n){let s=(0,Bn._)`${e}${(0,Bn.getProperty)(r)} !== undefined`;return n?(0,Bn._)`${s} && ${nq(t,e,r)}`:s}tn.propertyInData=w6t;function sq(t,e,r,n){let s=(0,Bn._)`${e}${(0,Bn.getProperty)(r)} === undefined`;return n?(0,Bn.or)(s,(0,Bn.not)(nq(t,e,r))):s}tn.noPropertyInData=sq;function FSe(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}tn.allSchemaProperties=FSe;function R6t(t,e){return FSe(e).filter(r=>!(0,rq.alwaysValidSchema)(t,e[r]))}tn.schemaProperties=R6t;function N6t({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Bn._)`${t}, ${e}, ${n}${s}`:e,d=[[Mp.default.instancePath,(0,Bn.strConcat)(Mp.default.instancePath,i)],[Mp.default.parentData,a.parentData],[Mp.default.parentDataProperty,a.parentDataProperty],[Mp.default.rootData,Mp.default.rootData]];a.opts.dynamicRef&&d.push([Mp.default.dynamicAnchors,Mp.default.dynamicAnchors]);let f=(0,Bn._)`${l}, ${r.object(...d)}`;return c!==Bn.nil?(0,Bn._)`${o}.call(${c}, ${f})`:(0,Bn._)`${o}(${f})`}tn.callValidateCode=N6t;var O6t=(0,Bn._)`new RegExp`;function P6t({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Bn._)`${s.code==="new RegExp"?O6t:(0,v6t.useFunc)(t,s)}(${r}, ${n})`})}tn.usePattern=P6t;function k6t(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Bn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:rq.Type.Num},i),e.if((0,Bn.not)(i),o)})}}tn.validateArray=k6t;function D6t(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,rq.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Bn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Bn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}tn.validateUnion=D6t});var jSe=E(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});tl.validateKeywordUsage=tl.validSchemaType=tl.funcKeywordCode=tl.macroKeywordCode=void 0;var ca=zt(),rh=Nd(),B6t=sc(),L6t=Q_();function M6t(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=qSe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ca.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}tl.macroKeywordCode=M6t;function W6t(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;F6t(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=qSe(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&USe(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&USe(t),A(()=>$6t(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ca._)`await `),b=>n.assign(d,!1).if((0,ca._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ca._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ca._)`${l}.errors`;return n.assign(g,null),h(ca.nil),g}function h(g=e.async?(0,ca._)`await `:ca.nil){let b=c.opts.passContext?rh.default.this:rh.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ca._)`${g}${(0,B6t.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,ca.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}tl.funcKeywordCode=W6t;function USe(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ca._)`${n.parentData}[${n.parentDataProperty}]`))}function $6t(t,e){let{gen:r}=t;r.if((0,ca._)`Array.isArray(${e})`,()=>{r.assign(rh.default.vErrors,(0,ca._)`${rh.default.vErrors} === null ? ${e} : ${rh.default.vErrors}.concat(${e})`).assign(rh.default.errors,(0,ca._)`${rh.default.vErrors}.length`),(0,L6t.extendErrors)(t)},()=>t.error())}function F6t({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function qSe(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ca.stringify)(r)})}function U6t(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}tl.validSchemaType=U6t;function q6t({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}tl.validateKeywordUsage=q6t});var QSe=E(Wp=>{"use strict";Object.defineProperty(Wp,"__esModule",{value:!0});Wp.extendSubschemaMode=Wp.extendSubschemaData=Wp.getSubschema=void 0;var rl=zt(),HSe=Mr();function j6t(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,rl._)`${t.schemaPath}${(0,rl.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,rl._)`${t.schemaPath}${(0,rl.getProperty)(e)}${(0,rl.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,HSe.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Wp.getSubschema=j6t;function H6t(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,rl._)`${e.data}${(0,rl.getProperty)(r)}`,!0);c(f),t.errorPath=(0,rl.str)`${u}${(0,HSe.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,rl._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof rl.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Wp.extendSubschemaData=H6t;function Q6t(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Wp.extendSubschemaMode=Q6t});var KSe=E((zBr,GSe)=>{"use strict";var $p=GSe.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};JO(e,n,s,t,"",t)};$p.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};$p.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};$p.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};$p.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function JO(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in $p.arrayKeywords)for(var f=0;f<d.length;f++)JO(t,e,r,d[f],s+"/"+l+"/"+f,i,s,l,n,f)}else if(l in $p.propsKeywords){if(d&&typeof d=="object")for(var p in d)JO(t,e,r,d[p],s+"/"+l+"/"+G6t(p),i,s,l,n,p)}else(l in $p.keywords||t.allKeys&&!(l in $p.skipKeywords))&&JO(t,e,r,d,s+"/"+l,i,s,l,n)}r(n,s,i,a,o,c,u)}}function G6t(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var K_=E(qa=>{"use strict";Object.defineProperty(qa,"__esModule",{value:!0});qa.getSchemaRefs=qa.resolveUrl=qa.normalizeId=qa._getFullPath=qa.getFullPath=qa.inlineRef=void 0;var K6t=Mr(),V6t=Ko(),z6t=KSe(),Y6t=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function J6t(t,e=!0){return typeof t=="boolean"?!0:e===!0?!iq(t):e?VSe(t)<=e:!1}qa.inlineRef=J6t;var X6t=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function iq(t){for(let e in t){if(X6t.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(iq)||typeof r=="object"&&iq(r))return!0}return!1}function VSe(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!Y6t.has(r)&&(typeof t[r]=="object"&&(0,K6t.eachItem)(t[r],n=>e+=VSe(n)),e===1/0))return 1/0}return e}function zSe(t,e="",r){r!==!1&&(e=Fy(e));let n=t.parse(e);return YSe(t,n)}qa.getFullPath=zSe;function YSe(t,e){return t.serialize(e).split("#")[0]+"#"}qa._getFullPath=YSe;var Z6t=/#\/?$/;function Fy(t){return t?t.replace(Z6t,""):""}qa.normalizeId=Fy;function e5t(t,e,r){return r=Fy(r),t.resolve(e,r)}qa.resolveUrl=e5t;var t5t=/^[a-z_][-a-z0-9._]*$/i;function r5t(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=Fy(t[r]||e),i={"":s},a=zSe(n,s,!1),o={},c=new Set;return z6t(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=Fy(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==Fy(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!t5t.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!V6t(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}qa.getSchemaRefs=r5t});var Y_=E(Fp=>{"use strict";Object.defineProperty(Fp,"__esModule",{value:!0});Fp.getData=Fp.KeywordCxt=Fp.validateFunctionCode=void 0;var tve=OSe(),JSe=G_(),oq=X7(),XO=G_(),n5t=WSe(),z_=jSe(),aq=QSe(),ot=zt(),Nt=Nd(),s5t=K_(),Od=Mr(),V_=Q_();function i5t(t){if(sve(t)&&(ive(t),nve(t))){c5t(t);return}rve(t,()=>(0,tve.topBoolOrEmptySchema)(t))}Fp.validateFunctionCode=i5t;function rve({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,ot._)`${Nt.default.data}, ${Nt.default.valCxt}`,n.$async,()=>{t.code((0,ot._)`"use strict"; ${XSe(r,s)}`),o5t(t,s),t.code(i)}):t.func(e,(0,ot._)`${Nt.default.data}, ${a5t(s)}`,n.$async,()=>t.code(XSe(r,s)).code(i))}function a5t(t){return(0,ot._)`{${Nt.default.instancePath}="", ${Nt.default.parentData}, ${Nt.default.parentDataProperty}, ${Nt.default.rootData}=${Nt.default.data}${t.dynamicRef?(0,ot._)`, ${Nt.default.dynamicAnchors}={}`:ot.nil}}={}`}function o5t(t,e){t.if(Nt.default.valCxt,()=>{t.var(Nt.default.instancePath,(0,ot._)`${Nt.default.valCxt}.${Nt.default.instancePath}`),t.var(Nt.default.parentData,(0,ot._)`${Nt.default.valCxt}.${Nt.default.parentData}`),t.var(Nt.default.parentDataProperty,(0,ot._)`${Nt.default.valCxt}.${Nt.default.parentDataProperty}`),t.var(Nt.default.rootData,(0,ot._)`${Nt.default.valCxt}.${Nt.default.rootData}`),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,ot._)`${Nt.default.valCxt}.${Nt.default.dynamicAnchors}`)},()=>{t.var(Nt.default.instancePath,(0,ot._)`""`),t.var(Nt.default.parentData,(0,ot._)`undefined`),t.var(Nt.default.parentDataProperty,(0,ot._)`undefined`),t.var(Nt.default.rootData,Nt.default.data),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,ot._)`{}`)})}function c5t(t){let{schema:e,opts:r,gen:n}=t;rve(t,()=>{r.$comment&&e.$comment&&ove(t),p5t(t),n.let(Nt.default.vErrors,null),n.let(Nt.default.errors,0),r.unevaluated&&u5t(t),ave(t),g5t(t)})}function u5t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,ot._)`${r}.evaluated`),e.if((0,ot._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,ot._)`${t.evaluated}.props`,(0,ot._)`undefined`)),e.if((0,ot._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,ot._)`${t.evaluated}.items`,(0,ot._)`undefined`))}function XSe(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,ot._)`/*# sourceURL=${r} */`:ot.nil}function l5t(t,e){if(sve(t)&&(ive(t),nve(t))){d5t(t,e);return}(0,tve.boolOrEmptySchema)(t,e)}function nve({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function sve(t){return typeof t.schema!="boolean"}function d5t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&ove(t),m5t(t),h5t(t);let i=n.const("_errs",Nt.default.errors);ave(t,i),n.var(e,(0,ot._)`${i} === ${Nt.default.errors}`)}function ive(t){(0,Od.checkUnknownRules)(t),f5t(t)}function ave(t,e){if(t.opts.jtd)return ZSe(t,[],!1,e);let r=(0,JSe.getSchemaTypes)(t.schema),n=(0,JSe.coerceAndCheckDataType)(t,r);ZSe(t,r,!n,e)}function f5t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Od.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function p5t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Od.checkStrictMode)(t,"default is ignored in the schema root")}function m5t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,s5t.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function h5t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function ove({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,ot._)`${Nt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,ot.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,ot._)`${Nt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function g5t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,ot._)`${Nt.default.errors} === 0`,()=>e.return(Nt.default.data),()=>e.throw((0,ot._)`new ${s}(${Nt.default.vErrors})`)):(e.assign((0,ot._)`${n}.errors`,Nt.default.vErrors),i.unevaluated&&A5t(t),e.return((0,ot._)`${Nt.default.errors} === 0`))}function A5t({gen:t,evaluated:e,props:r,items:n}){r instanceof ot.Name&&t.assign((0,ot._)`${e}.props`,r),n instanceof ot.Name&&t.assign((0,ot._)`${e}.items`,n)}function ZSe(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,Od.schemaHasRulesButRef)(i,l))){s.block(()=>uve(t,"$ref",l.all.$ref.definition));return}c.jtd||y5t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,oq.shouldUseGroup)(i,f)&&(f.type?(s.if((0,XO.checkDataType)(f.type,a,c.strictNumbers)),eve(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,XO.reportTypeError)(t)),s.endIf()):eve(t,f),o||s.if((0,ot._)`${Nt.default.errors} === ${n||0}`))}}function eve(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,n5t.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,oq.shouldUseRule)(n,i)&&uve(t,i.keyword,i.definition,e.type)})}function y5t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(x5t(t,e),t.opts.allowUnionTypes||b5t(t,e),E5t(t,t.dataTypes))}function x5t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{cve(t.dataTypes,r)||cq(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),S5t(t,e)}}function b5t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&cq(t,"use allowUnionTypes to allow union type keyword")}function E5t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,oq.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>_5t(e,a))&&cq(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function _5t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function cve(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function S5t(t,e){let r=[];for(let n of t.dataTypes)cve(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function cq(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Od.checkStrictMode)(t,e,t.opts.strictTypes)}var ZO=class{constructor(e,r,n){if((0,z_.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Od.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",lve(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,z_.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Nt.default.errors))}result(e,r,n){this.failResult((0,ot.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,ot.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,ot._)`${r} !== undefined && (${(0,ot.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?V_.reportExtraError:V_.reportError)(this,this.def.error,r)}$dataError(){(0,V_.reportError)(this,this.def.$dataError||V_.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,V_.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=ot.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=ot.nil,r=ot.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,ot.or)((0,ot._)`${s} === undefined`,r)),e!==ot.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==ot.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,ot.or)(a(),o());function a(){if(n.length){if(!(r instanceof ot.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,ot._)`${(0,XO.checkDataTypes)(c,r,i.opts.strictNumbers,XO.DataType.Wrong)}`}return ot.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,ot._)`!${c}(${r})`}return ot.nil}}subschema(e,r){let n=(0,aq.getSubschema)(this.it,e);(0,aq.extendSubschemaData)(n,this.it,e),(0,aq.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return l5t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Od.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Od.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,ot.Name)),!0}};Fp.KeywordCxt=ZO;function uve(t,e,r,n){let s=new ZO(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,z_.funcKeywordCode)(s,r):"macro"in r?(0,z_.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,z_.funcKeywordCode)(s,r)}var v5t=/^\/(?:[^~]|~0|~1)*$/,I5t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function lve(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Nt.default.rootData;if(t[0]==="/"){if(!v5t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Nt.default.rootData}else{let u=I5t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,ot._)`${i}${(0,ot.getProperty)((0,Od.unescapeJsonPointer)(u))}`,a=(0,ot._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Fp.getData=lve});var eP=E(lq=>{"use strict";Object.defineProperty(lq,"__esModule",{value:!0});var uq=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};lq.default=uq});var J_=E(pq=>{"use strict";Object.defineProperty(pq,"__esModule",{value:!0});var dq=K_(),fq=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,dq.resolveUrl)(e,r,n),this.missingSchema=(0,dq.normalizeId)((0,dq.getFullPath)(e,this.missingRef))}};pq.default=fq});var rP=E(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.resolveSchema=ic.getCompilingSchema=ic.resolveRef=ic.compileSchema=ic.SchemaEnv=void 0;var Jc=zt(),C5t=eP(),nh=Nd(),Xc=K_(),dve=Mr(),T5t=Y_(),Uy=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Xc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ic.SchemaEnv=Uy;function hq(t){let e=fve.call(this,t);if(e)return e;let r=(0,Xc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Jc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:C5t.default,code:(0,Jc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:nh.default.data,parentData:nh.default.parentData,parentDataProperty:nh.default.parentDataProperty,dataNames:[nh.default.data],dataPathArr:[Jc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Jc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Jc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Jc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,T5t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(nh.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${nh.default.self}`,`${nh.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Jc.Name?void 0:m,items:h instanceof Jc.Name?void 0:h,dynamicProps:m instanceof Jc.Name,dynamicItems:h instanceof Jc.Name},p.source&&(p.source.evaluated=(0,Jc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}ic.compileSchema=hq;function w5t(t,e,r){var n;r=(0,Xc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=O5t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new Uy({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=R5t.call(this,i)}ic.resolveRef=w5t;function R5t(t){return(0,Xc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:hq.call(this,t)}function fve(t){for(let e of this._compilations)if(N5t(e,t))return e}ic.getCompilingSchema=fve;function N5t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function O5t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||tP.call(this,t,e)}function tP(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Xc._getFullPath)(this.opts.uriResolver,r),s=(0,Xc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return mq.call(this,r,t);let i=(0,Xc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=tP.call(this,t,a);return typeof o?.schema!="object"?void 0:mq.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||hq.call(this,a),i===(0,Xc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Xc.resolveUrl)(this.opts.uriResolver,s,u)),new Uy({schema:o,schemaId:c,root:t,baseId:s})}return mq.call(this,r,a)}}ic.resolveSchema=tP;var P5t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function mq(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,dve.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!P5t.has(o)&&u&&(e=(0,Xc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,dve.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Xc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=tP.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new Uy({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var pve=E((tLr,k5t)=>{k5t.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var Aq=E((rLr,Ave)=>{"use strict";var D5t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),hve=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function gq(t){let e="",r=0,n=0;for(n=0;n<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 B5t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function mve(t){return t.length=0,!0}function L5t(t,e,r){if(t.length){let n=gq(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function M5t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=L5t;for(let c=0;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=mve}else{s.push(u);continue}}return s.length&&(o===mve?r.zone=s.join(""):a?n.push(s.join("")):n.push(gq(s))),r.address=n.join(""),r}function gve(t){if(W5t(t,":")<2)return{host:t,isIPV6:!1};let e=M5t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function W5t(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function $5t(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 F5t(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 U5t(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!hve(r)){let n=gve(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}Ave.exports={nonSimpleDomain:B5t,recomposeAuthority:U5t,normalizeComponentEncoding:F5t,removeDotSegments:$5t,isIPv4:hve,isUUID:D5t,normalizeIPv6:gve,stringArrayToHexStripped:gq}});var _ve=E((nLr,Eve)=>{"use strict";var{isUUID:q5t}=Aq(),j5t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,H5t=["http","https","ws","wss","urn","urn:uuid"];function Q5t(t){return H5t.indexOf(t)!==-1}function yq(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function yve(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function xve(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function G5t(t){return t.secure=yq(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function K5t(t){if((t.port===(yq(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function V5t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(j5t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=xq(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function z5t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=xq(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function Y5t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!q5t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function J5t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var bve={scheme:"http",domainHost:!0,parse:yve,serialize:xve},X5t={scheme:"https",domainHost:bve.domainHost,parse:yve,serialize:xve},nP={scheme:"ws",domainHost:!0,parse:G5t,serialize:K5t},Z5t={scheme:"wss",domainHost:nP.domainHost,parse:nP.parse,serialize:nP.serialize},e8t={scheme:"urn",parse:V5t,serialize:z5t,skipNormalize:!0},t8t={scheme:"urn:uuid",parse:Y5t,serialize:J5t,skipNormalize:!0},sP={http:bve,https:X5t,ws:nP,wss:Z5t,urn:e8t,"urn:uuid":t8t};Object.setPrototypeOf(sP,null);function xq(t){return t&&(sP[t]||sP[t.toLowerCase()])||void 0}Eve.exports={wsIsSecure:yq,SCHEMES:sP,isValidSchemeName:Q5t,getSchemeHandler:xq}});var Ive=E((sLr,aP)=>{"use strict";var{normalizeIPv6:r8t,removeDotSegments:X_,recomposeAuthority:n8t,normalizeComponentEncoding:iP,isIPv4:s8t,nonSimpleDomain:i8t}=Aq(),{SCHEMES:a8t,getSchemeHandler:Sve}=_ve();function o8t(t,e){return typeof t=="string"?t=nl(Pd(t,e),e):typeof t=="object"&&(t=Pd(nl(t,e),e)),t}function c8t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=vve(Pd(t,n),Pd(e,n),n,!0);return n.skipEscape=!0,nl(s,n)}function vve(t,e,r,n){let s={};return n||(t=Pd(nl(t,r),r),e=Pd(nl(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=X_(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=X_(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=X_(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=X_(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function u8t(t,e,r){return typeof t=="string"?(t=unescape(t),t=nl(iP(Pd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=nl(iP(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=nl(iP(Pd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=nl(iP(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function nl(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=Sve(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=n8t(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=X_(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var l8t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Pd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(l8t);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(s8t(n.host)===!1){let c=r8t(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=Sve(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&i8t(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var bq={SCHEMES:a8t,normalize:o8t,resolve:c8t,resolveComponent:vve,equal:u8t,serialize:nl,parse:Pd};aP.exports=bq;aP.exports.default=bq;aP.exports.fastUri=bq});var Tve=E(Eq=>{"use strict";Object.defineProperty(Eq,"__esModule",{value:!0});var Cve=Ive();Cve.code='require("ajv/dist/runtime/uri").default';Eq.default=Cve});var Bve=E(hi=>{"use strict";Object.defineProperty(hi,"__esModule",{value:!0});hi.CodeGen=hi.Name=hi.nil=hi.stringify=hi.str=hi._=hi.KeywordCxt=void 0;var d8t=Y_();Object.defineProperty(hi,"KeywordCxt",{enumerable:!0,get:function(){return d8t.KeywordCxt}});var qy=zt();Object.defineProperty(hi,"_",{enumerable:!0,get:function(){return qy._}});Object.defineProperty(hi,"str",{enumerable:!0,get:function(){return qy.str}});Object.defineProperty(hi,"stringify",{enumerable:!0,get:function(){return qy.stringify}});Object.defineProperty(hi,"nil",{enumerable:!0,get:function(){return qy.nil}});Object.defineProperty(hi,"Name",{enumerable:!0,get:function(){return qy.Name}});Object.defineProperty(hi,"CodeGen",{enumerable:!0,get:function(){return qy.CodeGen}});var f8t=eP(),Pve=J_(),p8t=J7(),Z_=rP(),m8t=zt(),eS=K_(),oP=G_(),Sq=Mr(),wve=pve(),h8t=Tve(),kve=(t,e)=>new RegExp(t,e);kve.code="new RegExp";var g8t=["removeAdditional","useDefaults","coerceTypes"],A8t=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),y8t={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},x8t={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Rve=200;function b8t(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,I,R,w,N;let P=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:kve,L=(s=t.uriResolver)!==null&&s!==void 0?s:h8t.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Rve,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:Rve,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var tS=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...b8t(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new m8t.ValueScope({scope:{},prefixes:A8t,es5:r,lines:n}),this.logger=C8t(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,p8t.getRules)(),Nve.call(this,y8t,e,"NOT SUPPORTED"),Nve.call(this,x8t,e,"DEPRECATED","warn"),this._metaOpts=v8t.call(this),e.formats&&_8t.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&S8t.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),E8t.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=wve;n==="id"&&(s={...wve},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Pve.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,eS.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=Ove.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new Z_.SchemaEnv({schema:{},schemaId:n});if(r=Z_.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Ove.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,eS.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(w8t.call(this,n,r),!r)return(0,Sq.eachItem)(n,i=>_q.call(this,i)),this;N8t.call(this,r);let s={...r,type:(0,oP.getJSONTypes)(r.type),schemaType:(0,oP.getJSONTypes)(r.schemaType)};return(0,Sq.eachItem)(n,s.type.length===0?i=>_q.call(this,i,s):i=>s.type.forEach(a=>_q.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=Dve(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,eS.normalizeId)(a||n);let u=eS.getSchemaRefs.call(this,e,n);return c=new Z_.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Z_.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Z_.compileSchema.call(this,e)}finally{this.opts=r}}};tS.ValidationError=f8t.default;tS.MissingRefError=Pve.default;hi.default=tS;function Nve(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function Ove(t){return t=(0,eS.normalizeId)(t),this.schemas[t]||this.refs[t]}function E8t(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function _8t(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function S8t(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function v8t(){let t={...this.opts};for(let e of g8t)delete t[e];return t}var I8t={log(){},warn(){},error(){}};function C8t(t){if(t===!1)return I8t;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var T8t=/^[a-z_$][a-z0-9_$:-]*$/i;function w8t(t,e){let{RULES:r}=this;if((0,Sq.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!T8t.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function _q(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,oP.getJSONTypes)(e.type),schemaType:(0,oP.getJSONTypes)(e.schemaType)}};e.before?R8t.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function R8t(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function N8t(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Dve(e)),t.validateSchema=this.compile(e,!0))}var O8t={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Dve(t){return{anyOf:[t,O8t]}}});var Lve=E(vq=>{"use strict";Object.defineProperty(vq,"__esModule",{value:!0});var P8t={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};vq.default=P8t});var Fve=E(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});sh.callRef=sh.getValidate=void 0;var k8t=J_(),Mve=sc(),ja=zt(),jy=Nd(),Wve=rP(),cP=Mr(),D8t={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=Wve.resolveRef.call(c,u,s,r);if(l===void 0)throw new k8t.default(n.opts.uriResolver,s,r);if(l instanceof Wve.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return uP(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return uP(t,(0,ja._)`${m}.validate`,u,u.$async)}function f(m){let h=$ve(t,m);uP(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,ja.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:ja.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function $ve(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,ja._)`${r.scopeValue("wrapper",{ref:e})}.validate`}sh.getValidate=$ve;function uP(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?jy.default.this:ja.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,ja._)`await ${(0,Mve.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,ja._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,Mve.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,ja._)`${m}.errors`;s.assign(jy.default.vErrors,(0,ja._)`${jy.default.vErrors} === null ? ${h} : ${jy.default.vErrors}.concat(${h})`),s.assign(jy.default.errors,(0,ja._)`${jy.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=cP.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,ja._)`${m}.evaluated.props`);i.props=cP.mergeEvaluated.props(s,g,i.props,ja.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=cP.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,ja._)`${m}.evaluated.items`);i.items=cP.mergeEvaluated.items(s,g,i.items,ja.Name)}}}sh.callRef=uP;sh.default=D8t});var Uve=E(Iq=>{"use strict";Object.defineProperty(Iq,"__esModule",{value:!0});var B8t=Lve(),L8t=Fve(),M8t=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",B8t.default,L8t.default];Iq.default=M8t});var qve=E(Cq=>{"use strict";Object.defineProperty(Cq,"__esModule",{value:!0});var lP=zt(),Up=lP.operators,dP={maximum:{okStr:"<=",ok:Up.LTE,fail:Up.GT},minimum:{okStr:">=",ok:Up.GTE,fail:Up.LT},exclusiveMaximum:{okStr:"<",ok:Up.LT,fail:Up.GTE},exclusiveMinimum:{okStr:">",ok:Up.GT,fail:Up.LTE}},W8t={message:({keyword:t,schemaCode:e})=>(0,lP.str)`must be ${dP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,lP._)`{comparison: ${dP[t].okStr}, limit: ${e}}`},$8t={keyword:Object.keys(dP),type:"number",schemaType:"number",$data:!0,error:W8t,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,lP._)`${r} ${dP[e].fail} ${n} || isNaN(${r})`)}};Cq.default=$8t});var jve=E(Tq=>{"use strict";Object.defineProperty(Tq,"__esModule",{value:!0});var rS=zt(),F8t={message:({schemaCode:t})=>(0,rS.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,rS._)`{multipleOf: ${t}}`},U8t={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:F8t,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,rS._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,rS._)`${a} !== parseInt(${a})`;t.fail$data((0,rS._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};Tq.default=U8t});var Qve=E(wq=>{"use strict";Object.defineProperty(wq,"__esModule",{value:!0});function Hve(t){let e=t.length,r=0,n=0,s;for(;n<e;)r++,s=t.charCodeAt(n++),s>=55296&&s<=56319&&n<e&&(s=t.charCodeAt(n),(s&64512)===56320&&n++);return r}wq.default=Hve;Hve.code='require("ajv/dist/runtime/ucs2length").default'});var Gve=E(Rq=>{"use strict";Object.defineProperty(Rq,"__esModule",{value:!0});var ih=zt(),q8t=Mr(),j8t=Qve(),H8t={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,ih.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,ih._)`{limit: ${t}}`},Q8t={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:H8t,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?ih.operators.GT:ih.operators.LT,a=s.opts.unicode===!1?(0,ih._)`${r}.length`:(0,ih._)`${(0,q8t.useFunc)(t.gen,j8t.default)}(${r})`;t.fail$data((0,ih._)`${a} ${i} ${n}`)}};Rq.default=Q8t});var Kve=E(Nq=>{"use strict";Object.defineProperty(Nq,"__esModule",{value:!0});var G8t=sc(),fP=zt(),K8t={message:({schemaCode:t})=>(0,fP.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,fP._)`{pattern: ${t}}`},V8t={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:K8t,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,fP._)`(new RegExp(${s}, ${a}))`:(0,G8t.usePattern)(t,n);t.fail$data((0,fP._)`!${o}.test(${e})`)}};Nq.default=V8t});var Vve=E(Oq=>{"use strict";Object.defineProperty(Oq,"__esModule",{value:!0});var nS=zt(),z8t={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,nS.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,nS._)`{limit: ${t}}`},Y8t={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:z8t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?nS.operators.GT:nS.operators.LT;t.fail$data((0,nS._)`Object.keys(${r}).length ${s} ${n}`)}};Oq.default=Y8t});var zve=E(Pq=>{"use strict";Object.defineProperty(Pq,"__esModule",{value:!0});var sS=sc(),iS=zt(),J8t=Mr(),X8t={message:({params:{missingProperty:t}})=>(0,iS.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,iS._)`{missingProperty: ${t}}`},Z8t={keyword:"required",type:"object",schemaType:"array",$data:!0,error:X8t,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,J8t.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(iS.nil,d);else for(let p of r)(0,sS.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,sS.checkMissingProp)(t,r,p)),(0,sS.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,sS.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,sS.propertyInData)(e,s,p,o.ownProperties)),e.if((0,iS.not)(m),()=>{t.error(),e.break()})},iS.nil)}}};Pq.default=Z8t});var Yve=E(kq=>{"use strict";Object.defineProperty(kq,"__esModule",{value:!0});var aS=zt(),eWt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,aS.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,aS._)`{limit: ${t}}`},tWt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:eWt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?aS.operators.GT:aS.operators.LT;t.fail$data((0,aS._)`${r}.length ${s} ${n}`)}};kq.default=tWt});var pP=E(Dq=>{"use strict";Object.defineProperty(Dq,"__esModule",{value:!0});var Jve=Ko();Jve.code='require("ajv/dist/runtime/equal").default';Dq.default=Jve});var Xve=E(Lq=>{"use strict";Object.defineProperty(Lq,"__esModule",{value:!0});var Bq=G_(),gi=zt(),rWt=Mr(),nWt=pP(),sWt={message:({params:{i:t,j:e}})=>(0,gi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,gi._)`{i: ${t}, j: ${e}}`},iWt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:sWt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,Bq.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,gi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,gi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,gi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,Bq.checkDataTypes)(u,A,o.opts.strictNumbers,Bq.DataType.Wrong),b=e.const("indices",(0,gi._)`{}`);e.for((0,gi._)`;${m}--;`,()=>{e.let(A,(0,gi._)`${r}[${m}]`),e.if(g,(0,gi._)`continue`),u.length>1&&e.if((0,gi._)`typeof ${A} == "string"`,(0,gi._)`${A} += "_"`),e.if((0,gi._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,gi._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,gi._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,rWt.useFunc)(e,nWt.default),g=e.name("outer");e.label(g).for((0,gi._)`;${m}--;`,()=>e.for((0,gi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,gi._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};Lq.default=iWt});var Zve=E(Wq=>{"use strict";Object.defineProperty(Wq,"__esModule",{value:!0});var Mq=zt(),aWt=Mr(),oWt=pP(),cWt={message:"must be equal to constant",params:({schemaCode:t})=>(0,Mq._)`{allowedValue: ${t}}`},uWt={keyword:"const",$data:!0,error:cWt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,Mq._)`!${(0,aWt.useFunc)(e,oWt.default)}(${r}, ${s})`):t.fail((0,Mq._)`${i} !== ${r}`)}};Wq.default=uWt});var eIe=E($q=>{"use strict";Object.defineProperty($q,"__esModule",{value:!0});var oS=zt(),lWt=Mr(),dWt=pP(),fWt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,oS._)`{allowedValues: ${t}}`},pWt={keyword:"enum",schemaType:"array",$data:!0,error:fWt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,lWt.useFunc)(e,dWt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,oS.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,oS._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,oS._)`${u()}(${r}, ${p}[${m}])`:(0,oS._)`${r} === ${h}`}}};$q.default=pWt});var tIe=E(Fq=>{"use strict";Object.defineProperty(Fq,"__esModule",{value:!0});var mWt=qve(),hWt=jve(),gWt=Gve(),AWt=Kve(),yWt=Vve(),xWt=zve(),bWt=Yve(),EWt=Xve(),_Wt=Zve(),SWt=eIe(),vWt=[mWt.default,hWt.default,gWt.default,AWt.default,yWt.default,xWt.default,bWt.default,EWt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},_Wt.default,SWt.default];Fq.default=vWt});var qq=E(cS=>{"use strict";Object.defineProperty(cS,"__esModule",{value:!0});cS.validateAdditionalItems=void 0;var ah=zt(),Uq=Mr(),IWt={message:({params:{len:t}})=>(0,ah.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ah._)`{limit: ${t}}`},CWt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:IWt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Uq.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}rIe(t,n)}};function rIe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,ah._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,ah._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,Uq.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,ah._)`${o} <= ${e.length}`);r.if((0,ah.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:Uq.Type.Num},u),a.allErrors||r.if((0,ah.not)(u),()=>r.break())})}}cS.validateAdditionalItems=rIe;cS.default=CWt});var jq=E(uS=>{"use strict";Object.defineProperty(uS,"__esModule",{value:!0});uS.validateTuple=void 0;var nIe=zt(),mP=Mr(),TWt=sc(),wWt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return sIe(t,"additionalItems",e);r.items=!0,!(0,mP.alwaysValidSchema)(r,e)&&t.ok((0,TWt.validateArray)(t))}};function sIe(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=mP.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,nIe._)`${i}.length`);r.forEach((d,f)=>{(0,mP.alwaysValidSchema)(o,d)||(n.if((0,nIe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,mP.checkStrictMode)(o,A,f.strictTuples)}}}uS.validateTuple=sIe;uS.default=wWt});var iIe=E(Hq=>{"use strict";Object.defineProperty(Hq,"__esModule",{value:!0});var RWt=jq(),NWt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,RWt.validateTuple)(t,"items")};Hq.default=NWt});var oIe=E(Qq=>{"use strict";Object.defineProperty(Qq,"__esModule",{value:!0});var aIe=zt(),OWt=Mr(),PWt=sc(),kWt=qq(),DWt={message:({params:{len:t}})=>(0,aIe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,aIe._)`{limit: ${t}}`},BWt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:DWt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,OWt.alwaysValidSchema)(n,e)&&(s?(0,kWt.validateAdditionalItems)(t,s):t.ok((0,PWt.validateArray)(t)))}};Qq.default=BWt});var cIe=E(Gq=>{"use strict";Object.defineProperty(Gq,"__esModule",{value:!0});var ac=zt(),hP=Mr(),LWt={message:({params:{min:t,max:e}})=>e===void 0?(0,ac.str)`must contain at least ${t} valid item(s)`:(0,ac.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ac._)`{minContains: ${t}}`:(0,ac._)`{minContains: ${t}, maxContains: ${e}}`},MWt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:LWt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,ac._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,hP.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,hP.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,hP.alwaysValidSchema)(i,r)){let h=(0,ac._)`${l} >= ${a}`;o!==void 0&&(h=(0,ac._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,ac._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:hP.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,ac._)`${h}++`),o===void 0?e.if((0,ac._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,ac._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,ac._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};Gq.default=MWt});var dIe=E(sl=>{"use strict";Object.defineProperty(sl,"__esModule",{value:!0});sl.validateSchemaDeps=sl.validatePropertyDeps=sl.error=void 0;var Kq=zt(),WWt=Mr(),lS=sc();sl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Kq.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Kq._)`{property: ${t},
missingProperty: ${n},
depsCount: ${e},
deps: ${r}}`};var $Wt={keyword:"dependencies",type:"object",schemaType:"object",error:sl.error,code(t){let[e,r]=FWt(t);uIe(t,e),lIe(t,r)}};function FWt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function uIe(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,lS.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,lS.checkReportMissingProp)(t,u)}):(r.if((0,Kq._)`${c} && (${(0,lS.checkMissingProp)(t,o,i)})`),(0,lS.reportMissingProp)(t,i),r.else())}}sl.validatePropertyDeps=uIe;function lIe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,WWt.alwaysValidSchema)(i,e[o])||(r.if((0,lS.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}sl.validateSchemaDeps=lIe;sl.default=$Wt});var pIe=E(Vq=>{"use strict";Object.defineProperty(Vq,"__esModule",{value:!0});var fIe=zt(),UWt=Mr(),qWt={message:"property name must be valid",params:({params:t})=>(0,fIe._)`{propertyName: ${t.propertyName}}`},jWt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:qWt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,UWt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,fIe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};Vq.default=jWt});var Yq=E(zq=>{"use strict";Object.defineProperty(zq,"__esModule",{value:!0});var gP=sc(),Zc=zt(),HWt=Nd(),AP=Mr(),QWt={message:"must NOT have additional properties",params:({params:t})=>(0,Zc._)`{additionalProperty: ${t.additionalProperty}}`},GWt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:QWt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,AP.alwaysValidSchema)(a,r))return;let u=(0,gP.allSchemaProperties)(n.properties),l=(0,gP.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Zc._)`${i} === ${HWt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,AP.schemaRefOrVal)(a,n.properties,"properties");g=(0,gP.isOwnProperty)(e,b,A)}else u.length?g=(0,Zc.or)(...u.map(b=>(0,Zc._)`${A} === ${b}`)):g=Zc.nil;return l.length&&(g=(0,Zc.or)(g,...l.map(b=>(0,Zc._)`${(0,gP.usePattern)(t,b)}.test(${A})`))),(0,Zc.not)(g)}function p(A){e.code((0,Zc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,AP.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,Zc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,Zc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:AP.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};zq.default=GWt});var gIe=E(Xq=>{"use strict";Object.defineProperty(Xq,"__esModule",{value:!0});var KWt=Y_(),mIe=sc(),Jq=Mr(),hIe=Yq(),VWt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&hIe.default.code(new KWt.KeywordCxt(i,hIe.default,"additionalProperties"));let a=(0,mIe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=Jq.mergeEvaluated.props(e,(0,Jq.toHash)(a),i.props));let o=a.filter(d=>!(0,Jq.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,mIe.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Xq.default=VWt});var bIe=E(Zq=>{"use strict";Object.defineProperty(Zq,"__esModule",{value:!0});var AIe=sc(),yP=zt(),yIe=Mr(),xIe=Mr(),zWt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,AIe.allSchemaProperties)(r),c=o.filter(h=>(0,yIe.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof yP.Name)&&(i.props=(0,xIe.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,yIe.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,yP._)`${(0,AIe.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:xIe.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,yP._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,yP.not)(l),()=>e.break())})})}}};Zq.default=zWt});var EIe=E(e9=>{"use strict";Object.defineProperty(e9,"__esModule",{value:!0});var YWt=Mr(),JWt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,YWt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};e9.default=JWt});var _Ie=E(t9=>{"use strict";Object.defineProperty(t9,"__esModule",{value:!0});var XWt=sc(),ZWt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:XWt.validateUnion,error:{message:"must match a schema in anyOf"}};t9.default=ZWt});var SIe=E(r9=>{"use strict";Object.defineProperty(r9,"__esModule",{value:!0});var xP=zt(),e$t=Mr(),t$t={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,xP._)`{passingSchemas: ${t.passing}}`},r$t={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:t$t,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,e$t.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,xP._)`${c} && ${a}`).assign(a,!1).assign(o,(0,xP._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,xP.Name)})})}}};r9.default=r$t});var vIe=E(n9=>{"use strict";Object.defineProperty(n9,"__esModule",{value:!0});var n$t=Mr(),s$t={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,n$t.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};n9.default=s$t});var TIe=E(s9=>{"use strict";Object.defineProperty(s9,"__esModule",{value:!0});var bP=zt(),CIe=Mr(),i$t={message:({params:t})=>(0,bP.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,bP._)`{failingKeyword: ${t.ifClause}}`},a$t={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:i$t,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,CIe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=IIe(n,"then"),i=IIe(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,bP.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,bP._)`${l}`):t.setParams({ifClause:l})}}}};function IIe(t,e){let r=t.schema[e];return r!==void 0&&!(0,CIe.alwaysValidSchema)(t,r)}s9.default=a$t});var wIe=E(i9=>{"use strict";Object.defineProperty(i9,"__esModule",{value:!0});var o$t=Mr(),c$t={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,o$t.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};i9.default=c$t});var RIe=E(a9=>{"use strict";Object.defineProperty(a9,"__esModule",{value:!0});var u$t=qq(),l$t=iIe(),d$t=jq(),f$t=oIe(),p$t=cIe(),m$t=dIe(),h$t=pIe(),g$t=Yq(),A$t=gIe(),y$t=bIe(),x$t=EIe(),b$t=_Ie(),E$t=SIe(),_$t=vIe(),S$t=TIe(),v$t=wIe();function I$t(t=!1){let e=[x$t.default,b$t.default,E$t.default,_$t.default,S$t.default,v$t.default,h$t.default,g$t.default,m$t.default,A$t.default,y$t.default];return t?e.push(l$t.default,f$t.default):e.push(u$t.default,d$t.default),e.push(p$t.default),e}a9.default=I$t});var NIe=E(o9=>{"use strict";Object.defineProperty(o9,"__esModule",{value:!0});var ds=zt(),C$t={message:({schemaCode:t})=>(0,ds.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ds._)`{format: ${t}}`},T$t={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:C$t,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ds._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,ds._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,ds._)`${h}.type || "string"`).assign(g,(0,ds._)`${h}.validate`),()=>r.assign(A,(0,ds._)`"string"`).assign(g,h)),t.fail$data((0,ds.or)(b(),y()));function b(){return c.strictSchema===!1?ds.nil:(0,ds._)`${a} && !${g}`}function y(){let x=l.$async?(0,ds._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ds._)`${g}(${n})`,v=(0,ds._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,ds._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function y(v){let I=v instanceof RegExp?(0,ds.regexpCode)(v):c.code.formats?(0,ds._)`${c.code.formats}${(0,ds.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:I});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,ds._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ds._)`await ${g}(${n})`}return typeof A=="function"?(0,ds._)`${g}(${n})`:(0,ds._)`${g}.test(${n})`}}}};o9.default=T$t});var OIe=E(c9=>{"use strict";Object.defineProperty(c9,"__esModule",{value:!0});var w$t=NIe(),R$t=[w$t.default];c9.default=R$t});var PIe=E(Hy=>{"use strict";Object.defineProperty(Hy,"__esModule",{value:!0});Hy.contentVocabulary=Hy.metadataVocabulary=void 0;Hy.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Hy.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var DIe=E(u9=>{"use strict";Object.defineProperty(u9,"__esModule",{value:!0});var N$t=Uve(),O$t=tIe(),P$t=RIe(),k$t=OIe(),kIe=PIe(),D$t=[N$t.default,O$t.default,(0,P$t.default)(),k$t.default,kIe.metadataVocabulary,kIe.contentVocabulary];u9.default=D$t});var LIe=E(EP=>{"use strict";Object.defineProperty(EP,"__esModule",{value:!0});EP.DiscrError=void 0;var BIe;(function(t){t.Tag="tag",t.Mapping="mapping"})(BIe||(EP.DiscrError=BIe={}))});var WIe=E(d9=>{"use strict";Object.defineProperty(d9,"__esModule",{value:!0});var Qy=zt(),l9=LIe(),MIe=rP(),B$t=J_(),L$t=Mr(),M$t={message:({params:{discrError:t,tagName:e}})=>t===l9.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Qy._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},W$t={keyword:"discriminator",type:"object",schemaType:"object",error:M$t,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,Qy._)`${r}${(0,Qy.getProperty)(o)}`);e.if((0,Qy._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:l9.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,Qy._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:l9.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,Qy.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x<a.length;x++){let v=a[x];if(v?.$ref&&!(0,L$t.schemaHasRulesButRef)(v,i.self.RULES)){let R=v.$ref;if(v=MIe.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,R),v instanceof MIe.SchemaEnv&&(v=v.schema),v===void 0)throw new B$t.default(i.opts.uriResolver,i.baseId,R)}let I=(p=v?.properties)===null||p===void 0?void 0:p[o];if(typeof I!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${o}"`);A=A&&(h||g(v)),b(I,x)}if(!A)throw new Error(`discriminator: "${o}" must be required`);return m;function g({required:x}){return Array.isArray(x)&&x.includes(o)}function b(x,v){if(x.const)y(x.const,v);else if(x.enum)for(let I of x.enum)y(I,v);else throw new Error(`discriminator: "properties/${o}" must have "const" or "enum"`)}function y(x,v){if(typeof x!="string"||x in m)throw new Error(`discriminator: "${o}" values must be unique strings`);m[x]=v}}}};d9.default=W$t});var $Ie=E((GLr,$$t)=>{$$t.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var UIe=E((Ln,f9)=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.MissingRefError=Ln.ValidationError=Ln.CodeGen=Ln.Name=Ln.nil=Ln.stringify=Ln.str=Ln._=Ln.KeywordCxt=Ln.Ajv=void 0;var F$t=Bve(),U$t=DIe(),q$t=WIe(),FIe=$Ie(),j$t=["/properties"],_P="http://json-schema.org/draft-07/schema",Gy=class extends F$t.default{_addVocabularies(){super._addVocabularies(),U$t.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(q$t.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(FIe,j$t):FIe;this.addMetaSchema(e,_P,!1),this.refs["http://json-schema.org/schema"]=_P}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(_P)?_P:void 0)}};Ln.Ajv=Gy;f9.exports=Ln=Gy;f9.exports.Ajv=Gy;Object.defineProperty(Ln,"__esModule",{value:!0});Ln.default=Gy;var H$t=Y_();Object.defineProperty(Ln,"KeywordCxt",{enumerable:!0,get:function(){return H$t.KeywordCxt}});var Ky=zt();Object.defineProperty(Ln,"_",{enumerable:!0,get:function(){return Ky._}});Object.defineProperty(Ln,"str",{enumerable:!0,get:function(){return Ky.str}});Object.defineProperty(Ln,"stringify",{enumerable:!0,get:function(){return Ky.stringify}});Object.defineProperty(Ln,"nil",{enumerable:!0,get:function(){return Ky.nil}});Object.defineProperty(Ln,"Name",{enumerable:!0,get:function(){return Ky.Name}});Object.defineProperty(Ln,"CodeGen",{enumerable:!0,get:function(){return Ky.CodeGen}});var Q$t=eP();Object.defineProperty(Ln,"ValidationError",{enumerable:!0,get:function(){return Q$t.default}});var G$t=J_();Object.defineProperty(Ln,"MissingRefError",{enumerable:!0,get:function(){return G$t.default}})});var qIe=E(Vy=>{"use strict";Object.defineProperty(Vy,"__esModule",{value:!0});Vy.formatLimitDefinition=void 0;var K$t=UIe(),eu=zt(),qp=eu.operators,SP={formatMaximum:{okStr:"<=",ok:qp.LTE,fail:qp.GT},formatMinimum:{okStr:">=",ok:qp.GTE,fail:qp.LT},formatExclusiveMaximum:{okStr:"<",ok:qp.LT,fail:qp.GTE},formatExclusiveMinimum:{okStr:">",ok:qp.GT,fail:qp.LTE}},V$t={message:({keyword:t,schemaCode:e})=>eu.str`should be ${SP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>eu._`{comparison: ${SP[t].okStr}, limit: ${e}}`};Vy.formatLimitDefinition={keyword:Object.keys(SP),type:"string",schemaType:"string",$data:!0,error:V$t,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new K$t.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",eu._`${f}[${c.schemaCode}]`);t.fail$data(eu.or(eu._`typeof ${p} != "object"`,eu._`${p} instanceof RegExp`,eu._`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?eu._`${a.code.formats}${eu.getProperty(f)}`:void 0});t.fail$data(d(m))}function d(f){return eu._`${f}.compare(${r}, ${n}) ${SP[s].fail} 0`}},dependencies:["format"]};var z$t=t=>(t.addKeyword(Vy.formatLimitDefinition),t);Vy.default=z$t});var GIe=E((dS,QIe)=>{"use strict";Object.defineProperty(dS,"__esModule",{value:!0});var zy=hSe(),Y$t=qIe(),p9=zt(),jIe=new p9.Name("fullFormats"),J$t=new p9.Name("fastFormats"),m9=(t,e={keywords:!0})=>{if(Array.isArray(e))return HIe(t,e,zy.fullFormats,jIe),t;let[r,n]=e.mode==="fast"?[zy.fastFormats,J$t]:[zy.fullFormats,jIe],s=e.formats||zy.formatNames;return HIe(t,s,r,n),e.keywords&&Y$t.default(t),t};m9.get=(t,e="full")=>{let n=(e==="fast"?zy.fastFormats:zy.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function HIe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=p9._`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}QIe.exports=dS=m9;Object.defineProperty(dS,"__esModule",{value:!0});dS.default=m9});var zIe=E((VLr,VIe)=>{"use strict";var X$t=p_e().default,Z$t=v7(),KIe=I7(),h9=class{constructor(e,r){r.mode==="JTD"?this.ajv=new Z$t(Object.assign({},KIe,r.customOptions)):this.ajv=new X$t(Object.assign({},KIe,r.customOptions));let n=!0;if(r.plugins&&r.plugins.length>0)for(let i of r.plugins)Array.isArray(i)?(n=n&&i[0].name!=="formatsPlugin",i[0](this.ajv,i[1])):(n=n&&i.name!=="formatsPlugin",i(this.ajv));n&&GIe()(this.ajv),r.onCreate?.(this.ajv);let s=Object.values(e);for(let i of s)this.ajv.addSchema(i)}buildValidatorFunction({schema:e}){if(e.$id){let r=this.ajv.getSchema(e.$id);if(r)return r}return this.ajv.compile(e)}};VIe.exports=h9});var JIe=E((zLr,YIe)=>{"use strict";var eFt=v7(),tFt=I7(),g9=class{constructor(e,r){this.ajv=new eFt(Object.assign({},tFt,r))}buildSerializerFunction({schema:e}){return this.ajv.compileSerializer(e)}};YIe.exports=g9});var eCe=E((pS,ZIe)=>{"use strict";Object.defineProperty(pS,"__esModule",{value:!0});var fS=sO(),tu=uy();function XIe(t,e){if(!t.opts.code.source)throw new Error("moduleCode: ajv instance must have code.source option");let{_n:r}=t.scope.opts;return typeof e=="function"?s(e.source):e!==void 0?i(e,n):i(t.schemas,o=>o.meta?void 0:t.compile(o.schema));function n(o){let c=t.getSchema(o);if(!c)throw new Error(`moduleCode: no schema with id ${o}`);return c}function s(o){let c={},u=o?.validateName,l=a(c,o);return t.opts.code.esm?`"use strict";${r}export const validate = ${u};${r}export default ${u};${r}${l}`:`"use strict";${r}module.exports = ${u};${r}module.exports.default = ${u};${r}${l}`}function i(o,c){var u;let l={},d=(0,tu._)`"use strict";`;for(let f in o){let p=c(o[f]);if(p){let m=a(l,p.source),h=t.opts.code.esm?(0,tu._)`export const ${(0,tu.getEsmExportName)(f)}`:(0,tu._)`exports${(0,tu.getProperty)(f)}`;d=(0,tu._)`${d}${r}${h} = ${(u=p.source)===null||u===void 0?void 0:u.validateName};${r}${m}`}}return`${d}`}function a(o,c){if(!c)throw new Error('moduleCode: function does not have "source" property');if(f(c.validateName)===fS.UsedValueState.Completed)return tu.nil;p(c.validateName,fS.UsedValueState.Started);let u=t.scope.scopeCode(c.scopeValues,o,d),l=new tu._Code(`${u}${r}${c.validateCode}`);return c.evaluated?(0,tu._)`${l}${c.validateName}.evaluated = ${c.evaluated};${r}`:l;function d(m){var h;let A=(h=m.value)===null||h===void 0?void 0:h.ref;if(m.prefix==="validate"&&typeof A=="function")return a(o,A.source);if((m.prefix==="root"||m.prefix==="wrapper")&&typeof A=="object"){let{validate:g,validateName:b}=A;if(!b)throw new Error("ajv internal error");let y=t.opts.code.es5?fS.varKinds.var:fS.varKinds.const,x=(0,tu._)`${y} ${m} = {validate: ${b}};`;if(f(b)===fS.UsedValueState.Started)return x;let v=a(o,g?.source);return(0,tu._)`${x}${r}${v}`}}function f(m){var h;return(h=o[m.prefix])===null||h===void 0?void 0:h.get(m)}function p(m,h){let{prefix:A}=m;(o[A]=o[A]||new Map).set(m,h)}}}ZIe.exports=pS=XIe;Object.defineProperty(pS,"__esModule",{value:!0});pS.default=XIe});var nCe=E((YLr,rCe)=>{"use strict";var tCe=A9(),rFt=eCe().default;function nFt(t={readMode:!0}){if(t.readMode===!0&&!t.restoreFunction)throw new Error("You must provide a restoreFunction options when readMode ON");if(t.readMode!==!0&&!t.storeFunction)throw new Error("You must provide a storeFunction options when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=tCe();return function(n,s={}){(!s.customOptions||!s.customOptions.code)&&(s.customOptions=Object.assign({},s.customOptions,{code:{source:!0}}));let i=e(n,s);return function(a){let o=i(a),c=rFt(i[tCe.AjvReference].ajv,o);return t.storeFunction(a,c),o}}}rCe.exports=nFt});var A9=E((JLr,Yy)=>{"use strict";var iCe=Symbol.for("fastify.ajv-compiler.reference"),sFt=zIe(),iFt=JIe();function y9(t){let e=new Map,r=new Map;return t&&t.jtdSerializer===!0?function(s,i){let a=sCe({},i);if(r.has(a))return r.get(a);let o=new iFt(s,i),c=o.buildSerializerFunction.bind(o);return r.set(a,c),c}:function(s,i){let a=sCe(s,i.customOptions);if(e.has(a))return e.get(a);let o=new sFt(s,i),c=o.buildValidatorFunction.bind(o);return e.set(a,c),i.customOptions.code!==void 0&&(c[iCe]=o),c}}function sCe(t,e){let r=JSON.stringify(t),n=JSON.stringify(e);return`${r}${n}`}Yy.exports=y9;Yy.exports.default=y9;Yy.exports.AjvCompiler=y9;Yy.exports.AjvReference=iCe;Yy.exports.StandaloneValidator=nCe()});var x9=E((XLr,aCe)=>{"use strict";var{buildSchemas:aFt}=c1(),oFt=cF(),cFt=A9();function uFt(t,e){if(t)return new Jy(t,e);let r=Object.assign({buildValidator:null,buildSerializer:null},e?.compilersFactory);r.buildValidator||(r.buildValidator=cFt()),r.buildSerializer||(r.buildSerializer=oFt());let n={bucket:e&&e.bucket||aFt,compilersFactory:r,isCustomValidatorCompiler:typeof e?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof e?.compilersFactory?.buildValidator=="function"};return new Jy(void 0,n)}var Jy=class{constructor(e,r){this.opts=r||e?.opts,this.addedSchemas=!1,this.compilersFactory=this.opts.compilersFactory,e?(this.schemaBucket=this.opts.bucket(e.getSchemas()),this.validatorCompiler=e.getValidatorCompiler(),this.serializerCompiler=e.getSerializerCompiler(),this.isCustomValidatorCompiler=e.isCustomValidatorCompiler,this.isCustomSerializerCompiler=e.isCustomSerializerCompiler,this.parent=e):(this.schemaBucket=this.opts.bucket(),this.isCustomValidatorCompiler=this.opts.isCustomValidatorCompiler||!1,this.isCustomSerializerCompiler=this.opts.isCustomSerializerCompiler||!1)}add(e){return this.addedSchemas=!0,this.schemaBucket.add(e)}getSchema(e){return this.schemaBucket.getSchema(e)}getSchemas(){return this.schemaBucket.getSchemas()}setValidatorCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildValidator:()=>e}),this.validatorCompiler=e,this.isCustomValidatorCompiler=!0}setSerializerCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildSerializer:()=>e}),this.serializerCompiler=e,this.isCustomSerializerCompiler=!0}getValidatorCompiler(){return this.validatorCompiler||this.parent&&this.parent.getValidatorCompiler()}getSerializerCompiler(){return this.serializerCompiler||this.parent&&this.parent.getSerializerCompiler()}getSerializerBuilder(){return this.compilersFactory.buildSerializer||this.parent&&this.parent.getSerializerBuilder()}getValidatorBuilder(){return this.compilersFactory.buildValidator||this.parent&&this.parent.getValidatorBuilder()}setupValidator(e){this.validatorCompiler!==void 0&&!this.addedSchemas||(this.validatorCompiler=this.getValidatorBuilder()(this.schemaBucket.getSchemas(),e.ajv))}setupSerializer(e){this.serializerCompiler!==void 0&&!this.addedSchemas||(this.serializerCompiler=this.getSerializerBuilder()(this.schemaBucket.getSchemas(),e.serializerOpts))}};Jy.buildSchemaController=uFt;aCe.exports=Jy});var I9=E((ZLr,v9)=>{"use strict";var b9=N$(),_9=require("node:assert"),S9=Symbol.for("registered-plugin"),{kTestInternals:lFt}=Gs(),{exist:dFt,existReply:fFt,existRequest:pFt}=F$(),{FST_ERR_PLUGIN_VERSION_MISMATCH:mFt,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:hFt}=Ci(),{FSTWRN002:gFt}=od();function mS(t){return t[Symbol.for("plugin-meta")]}function oCe(t){let e=cCe(t);if(e)return e;let r=require.cache;if(r){let n=Object.keys(r);for(let s=0;s<n.length;s++){let i=n[s];if(r[i].exports===t)return i}}return t.name?t.name:null}function AFt(t){return t.toString().split(`
`).slice(0,2).map(e=>e.trim()).join(" -- ")}function cCe(t){return t[Symbol.for("fastify.display-name")]}function uCe(t){return!!t[Symbol.for("skip-override")]}function lCe(t){let e=mS(t);if(!e)return;let r=e.dependencies;r&&(_9(Array.isArray(r),"The dependencies should be an array of strings"),r.forEach(n=>{_9(this[S9].indexOf(n)>-1,`The dependency '${n}' of plugin '${e.name}' is not registered`)}))}function dCe(t){let e=mS(t);if(!e)return;let{decorators:r,name:n}=e;r&&(r.fastify&&E9(this,"Fastify",r.fastify,n),r.reply&&E9(this,"Reply",r.reply,n),r.request&&E9(this,"Request",r.request,n))}var yFt={Fastify:dFt,Request:pFt,Reply:fFt};function E9(t,e,r,n){_9(Array.isArray(r),"The decorators should be an array of strings"),r.forEach(s=>{let i=typeof n=="string"?` required by '${n}'`:"";if(!yFt[e].call(t,s))throw new hFt(s,i,e)})}function xFt(t){let e=mS(t);if(!e)return;let r=e.fastify,n=/-rc.+$/.test(this.version);if(!(n===!0&&b9.gt(this.version,b9.coerce(r))===!0)&&r&&b9.satisfies(this.version,r,{includePrerelease:n})===!1)throw new mFt(e.name,r,this.version)}function bFt(t){let e=mS(t);if(!e)return;let r=e.name;if(r)return this[S9].push(r),r}function EFt(t,e){t.constructor.name==="AsyncFunction"&&t.length===3&&gFt(e||"anonymous")}function _Ft(t){let e=bFt.call(this,t)||oCe(t);return EFt.call(this,t,e),xFt.call(this,t),dCe.call(this,t),lCe.call(this,t),uCe(t)}v9.exports={getPluginName:oCe,getFuncPreview:AFt,kRegisteredPlugins:S9,getDisplayName:cCe,registerPlugin:_Ft};v9.exports[lFt]={shouldSkipOverride:uCe,getMeta:mS,checkDecorators:dCe,checkDependencies:lCe}});var vP=E((e4r,fCe)=>{"use strict";function SFt(t,e){let r=e||IFt();return t?CFt(t,r):r}function vFt(t,e){return t.genReqId(e)}function IFt(){let e=0;return function(){return e=e+1&2147483647,`req-${e.toString(36)}`}}function CFt(t,e){return function(r){return r.headers[t]||e(r)}}fCe.exports={getGenReqId:vFt,reqIdGenFactory:SFt}});var gCe=E((t4r,hCe)=>{"use strict";var pCe=12,TFt=0,C9=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,127,63,63,63,0,31,15,15,15,7,7,7];function wFt(t){var e=t.indexOf("%");if(e===-1)return t;for(var r=t.length,n="",s=0,i=0,a=e,o=pCe;e>-1&&e<r;){var c=mCe(t[e+1],4),u=mCe(t[e+2],0),l=c|u,d=C9[l];if(o=C9[256+o+d],i=i<<6|l&C9[364+d],o===pCe)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===TFt)return null;if(e+=3,e<r&&t.charCodeAt(e)===37)continue;return null}}return n+t.slice(s)}var RFt={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 mCe(t,e){var r=RFt[t];return r===void 0?255:r<<e}hCe.exports=wFt});var ECe=E((r4r,bCe)=>{"use strict";var ACe=gCe(),yCe=/\+/g,xCe=function(){};xCe.prototype=Object.create(null);function NFt(t){let e=new xCe;if(typeof t!="string")return e;let r=t.length,n="",s="",i=-1,a=-1,o=!1,c=!1,u=!1,l=!1,d=!1,f=0;for(let p=0;p<r+1;p++)if(f=p!==r?t.charCodeAt(p):38,f===38){if(d=a>i,d||(a=p),n=t.slice(i+1,a),d||n.length>0){u&&(n=n.replace(yCe," ")),o&&(n=ACe(n)||n),d&&(s=t.slice(a+1,p),l&&(s=s.replace(yCe," ")),c&&(s=ACe(s)||s));let m=e[n];m===void 0?e[n]=s:m.pop?m.push(s):e[n]=[m,s]}s="",i=p,a=p,o=!1,c=!1,u=!1,l=!1}else f===61?a<=i?a=p:c=!0:f===43?a>i?l=!0:u=!0:f===37&&(a>i?c=!0:o=!0);return e}bCe.exports=NFt});var SCe=E((n4r,_Ce)=>{var il=Array.from({length:256},(t,e)=>"%"+((e<16?"0":"")+e.toString(16)).toUpperCase()),OFt=new Int8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0]);function PFt(t){let e=t.length;if(e===0)return"";let r="",n=0,s=0;e:for(;s<e;s++){let i=t.charCodeAt(s);for(;i<128;){if(OFt[i]!==1&&(n<s&&(r+=t.slice(n,s)),n=s+1,r+=il[i]),++s===e)break e;i=t.charCodeAt(s)}if(n<s&&(r+=t.slice(n,s)),i<2048){n=s+1,r+=il[192|i>>6]+il[128|i&63];continue}if(i<55296||i>=57344){n=s+1,r+=il[224|i>>12]+il[128|i>>6&63]+il[128|i&63];continue}if(++s,s>=e)throw new Error("URI malformed");let a=t.charCodeAt(s)&1023;n=s+1,i=65536+((i&1023)<<10|a),r+=il[240|i>>18]+il[128|i>>12&63]+il[128|i>>6&63]+il[128|i&63]}return n===0?t:n<e?r+t.slice(n):r}_Ce.exports={encodeString:PFt}});var CCe=E((s4r,ICe)=>{"use strict";var{encodeString:T9}=SCe();function vCe(t){let e=typeof t;return e==="string"?T9(t):e==="bigint"?t.toString():e==="boolean"?t?"true":"false":e==="number"&&Number.isFinite(t)?t<1e21?""+t:T9(""+t):""}function kFt(t){let e="";if(t===null||typeof t!="object")return e;let r="&",n=Object.keys(t),s=n.length,i=0;for(let a=0;a<s;a++){let o=n[a],c=t[o],u=T9(o)+"=";if(a&&(e+=r),Array.isArray(c)){i=c.length;for(let l=0;l<i;l++)l&&(e+=r),e+=u,e+=vCe(c[l])}else e+=u,e+=vCe(c)}return e}ICe.exports=kFt});var NCe=E((i4r,hS)=>{"use strict";var TCe=ECe(),wCe=CCe(),RCe={parse:TCe,stringify:wCe};hS.exports=RCe;hS.exports.default=RCe;hS.exports.parse=TCe;hS.exports.stringify=wCe});var PCe=E(OCe=>{"use strict";Object.defineProperty(OCe,"__esModule",{value:!0})});var kCe=E(gS=>{"use strict";Object.defineProperty(gS,"__esModule",{value:!0});gS.types=void 0;var DFt;(function(t){t[t.ROOT=0]="ROOT",t[t.GROUP=1]="GROUP",t[t.POSITION=2]="POSITION",t[t.SET=3]="SET",t[t.RANGE=4]="RANGE",t[t.REPETITION=5]="REPETITION",t[t.REFERENCE=6]="REFERENCE",t[t.CHAR=7]="CHAR"})(DFt=gS.types||(gS.types={}))});var BCe=E(DCe=>{"use strict";Object.defineProperty(DCe,"__esModule",{value:!0})});var Dd=E(kd=>{"use strict";var BFt=kd&&kd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),w9=kd&&kd.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&BFt(e,t,r)};Object.defineProperty(kd,"__esModule",{value:!0});w9(PCe(),kd);w9(kCe(),kd);w9(BCe(),kd)});var IP=E($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.anyChar=$i.notWhitespace=$i.whitespace=$i.notInts=$i.ints=$i.notWords=$i.words=void 0;var Hr=Dd(),LCe=()=>[{type:Hr.types.RANGE,from:48,to:57}],MCe=()=>[{type:Hr.types.CHAR,value:95},{type:Hr.types.RANGE,from:97,to:122},{type:Hr.types.RANGE,from:65,to:90},{type:Hr.types.RANGE,from:48,to:57}],WCe=()=>[{type:Hr.types.CHAR,value:9},{type:Hr.types.CHAR,value:10},{type:Hr.types.CHAR,value:11},{type:Hr.types.CHAR,value:12},{type:Hr.types.CHAR,value:13},{type:Hr.types.CHAR,value:32},{type:Hr.types.CHAR,value:160},{type:Hr.types.CHAR,value:5760},{type:Hr.types.RANGE,from:8192,to:8202},{type:Hr.types.CHAR,value:8232},{type:Hr.types.CHAR,value:8233},{type:Hr.types.CHAR,value:8239},{type:Hr.types.CHAR,value:8287},{type:Hr.types.CHAR,value:12288},{type:Hr.types.CHAR,value:65279}],LFt=()=>[{type:Hr.types.CHAR,value:10},{type:Hr.types.CHAR,value:13},{type:Hr.types.CHAR,value:8232},{type:Hr.types.CHAR,value:8233}];$i.words=()=>({type:Hr.types.SET,set:MCe(),not:!1});$i.notWords=()=>({type:Hr.types.SET,set:MCe(),not:!0});$i.ints=()=>({type:Hr.types.SET,set:LCe(),not:!1});$i.notInts=()=>({type:Hr.types.SET,set:LCe(),not:!0});$i.whitespace=()=>({type:Hr.types.SET,set:WCe(),not:!1});$i.notWhitespace=()=>({type:Hr.types.SET,set:WCe(),not:!0});$i.anyChar=()=>({type:Hr.types.SET,set:LFt(),not:!0})});var FCe=E(oc=>{"use strict";var MFt=oc&&oc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),WFt=oc&&oc.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),$Ft=oc&&oc.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&MFt(e,t,r);return WFt(e,t),e};Object.defineProperty(oc,"__esModule",{value:!0});oc.tokenizeClass=oc.strToChars=void 0;var $Ce=Dd(),Xy=$Ft(IP()),FFt="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";oc.strToChars=t=>{let e=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;return t.replace(e,(r,n,s,i,a,o,c)=>{if(s)return r;let u=n?8:i?parseInt(i,16):a?parseInt(a,16):o?FFt.indexOf(o):{0:0,t:9,n:10,v:11,f:12,r:13}[c],l=String.fromCharCode(u);return/[[\]{}^$.|?*+()]/.test(l)?`\\${l}`:l})};oc.tokenizeClass=(t,e)=>{var r,n,s,i,a,o,c;let u=[],l,d,f=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(l=f.exec(t))!==null;){let p=(c=(o=(a=(i=(s=(n=(r=l[1]&&Xy.words())!==null&&r!==void 0?r:l[2]&&Xy.ints())!==null&&n!==void 0?n:l[3]&&Xy.whitespace())!==null&&s!==void 0?s:l[4]&&Xy.notWords())!==null&&i!==void 0?i:l[5]&&Xy.notInts())!==null&&a!==void 0?a:l[6]&&Xy.notWhitespace())!==null&&o!==void 0?o:l[7]&&{type:$Ce.types.RANGE,from:(l[8]||l[9]).charCodeAt(0),to:(d=l[10]).charCodeAt(d.length-1)})!==null&&c!==void 0?c:(d=l[16])&&{type:$Ce.types.CHAR,value:d.charCodeAt(0)};if(p)u.push(p);else return[u,f.lastIndex]}throw new SyntaxError(`Invalid regular expression: /${e}/: Unterminated character class`)}});var R9=E(al=>{"use strict";var UFt=al&&al.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),qFt=al&&al.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qCe=al&&al.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&UFt(e,t,r);return qFt(e,t),e};Object.defineProperty(al,"__esModule",{value:!0});al.tokenizer=void 0;var UCe=qCe(FCe()),Ai=Dd(),oh=qCe(IP());al.tokenizer=t=>{let e=0,r,n={type:Ai.types.ROOT,stack:[]},s=n,i=n.stack,a=[],o=[],c=0,u=d=>{throw new SyntaxError(`Invalid regular expression: /${t}/: Nothing to repeat at column ${d-1}`)},l=UCe.strToChars(t);for(;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:Ai.types.POSITION,value:"b"});break;case"B":i.push({type:Ai.types.POSITION,value:"B"});break;case"w":i.push(oh.words());break;case"W":i.push(oh.notWords());break;case"d":i.push(oh.ints());break;case"D":i.push(oh.notInts());break;case"s":i.push(oh.whitespace());break;case"S":i.push(oh.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),p={type:Ai.types.REFERENCE,value:f};i.push(p),o.push({reference:p,stack:i,index:i.length-1})}else i.push({type:Ai.types.CHAR,value:r.charCodeAt(0)})}break;case"^":i.push({type:Ai.types.POSITION,value:"^"});break;case"$":i.push({type:Ai.types.POSITION,value:"$"});break;case"[":{let d;l[e]==="^"?(d=!0,e++):d=!1;let f=UCe.tokenizeClass(l.slice(e),t);e+=f[1],i.push({type:Ai.types.SET,set:f[0],not:d});break}case".":i.push(oh.anyChar());break;case"(":{let d={type:Ai.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,p;d!==null?(i.length===0&&u(e),f=parseInt(d[1],10),p=d[2]?d[3]?parseInt(d[3],10):1/0:f,e+=d[0].length,i.push({type:Ai.types.REPETITION,min:f,max:p,value:i.pop()})):i.push({type:Ai.types.CHAR,value:123});break}case"?":i.length===0&&u(e),i.push({type:Ai.types.REPETITION,min:0,max:1,value:i.pop()});break;case"+":i.length===0&&u(e),i.push({type:Ai.types.REPETITION,min:1,max:1/0,value:i.pop()});break;case"*":i.length===0&&u(e),i.push({type:Ai.types.REPETITION,min:0,max:1/0,value:i.pop()});break;default:i.push({type:Ai.types.CHAR,value:r.charCodeAt(0)})}if(a.length!==0)throw new SyntaxError(`Invalid regular expression: /${t}/: Unterminated group`);return jFt(o,c),n};function jFt(t,e){for(let r of t.reverse())if(e<r.reference.value){r.reference.type=Ai.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:Ai.types.CHAR,value:a.charCodeAt(0)});r.stack.push(...i)}}}}});var HCe=E(Fi=>{"use strict";var HFt=Fi&&Fi.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),QFt=Fi&&Fi.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),GFt=Fi&&Fi.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&HFt(e,t,r);return QFt(e,t),e};Object.defineProperty(Fi,"__esModule",{value:!0});Fi.NOTANYCHAR=Fi.WHITESPACE=Fi.WORDS=Fi.INTS=void 0;var CP=GFt(IP()),jCe=Dd();function TP(t){let e={},r=0;for(let n of t)n.type===jCe.types.CHAR&&(e[n.value]=!0),n.type===jCe.types.RANGE&&(e[`${n.from}-${n.to}`]=!0),r+=1;return{lookup:()=>Object.assign({},e),len:r}}Fi.INTS=TP(CP.ints().set);Fi.WORDS=TP(CP.words().set);Fi.WHITESPACE=TP(CP.whitespace().set);Fi.NOTANYCHAR=TP(CP.anyChar().set)});var GCe=E(cc=>{"use strict";var KFt=cc&&cc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),VFt=cc&&cc.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),zFt=cc&&cc.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&KFt(e,t,r);return VFt(e,t),e};Object.defineProperty(cc,"__esModule",{value:!0});cc.writeSetTokens=cc.setChar=void 0;var OP=Dd(),wP=zFt(HCe());function NP(t){return t===94?"\\^":t===92?"\\\\":t===93?"\\]":t===45?"\\-":String.fromCharCode(t)}cc.setChar=NP;function RP(t,{lookup:e,len:r}){if(r!==t.length)return!1;let n=e();for(let s of t){if(s.type===OP.types.SET)return!1;let i=s.type===OP.types.CHAR?s.value:`${s.from}-${s.to}`;if(n[i])n[i]=!1;else return!1}return!0}function QCe(t,e=!1){if(RP(t.set,wP.INTS))return t.not?"\\D":"\\d";if(RP(t.set,wP.WORDS))return t.not?"\\W":"\\w";if(t.not&&RP(t.set,wP.NOTANYCHAR))return".";if(RP(t.set,wP.WHITESPACE))return t.not?"\\S":"\\s";let r="";for(let s=0;s<t.set.length;s++){let i=t.set[s];r+=YFt(i)}let n=`${t.not?"^":""}${r}`;return e?n:`[${n}]`}cc.writeSetTokens=QCe;function YFt(t){return t.type===OP.types.CHAR?NP(t.value):t.type===OP.types.RANGE?`${NP(t.from)}-${NP(t.to)}`:QCe(t,!0)}});var O9=E(Zy=>{"use strict";Object.defineProperty(Zy,"__esModule",{value:!0});Zy.reconstruct=void 0;var jp=Dd(),N9=GCe(),KCe=t=>t.map(Zy.reconstruct).join(""),VCe=t=>{if("options"in t)return t.options.map(KCe).join("|");if("stack"in t)return KCe(t.stack);throw new Error("options or stack must be Root or Group token")};Zy.reconstruct=t=>{switch(t.type){case jp.types.ROOT:return VCe(t);case jp.types.CHAR:{let e=String.fromCharCode(t.value);return(/[[\\{}$^.|?*+()]/.test(e)?"\\":"")+e}case jp.types.POSITION:return t.value==="^"||t.value==="$"?t.value:`\\${t.value}`;case jp.types.REFERENCE:return`\\${t.value}`;case jp.types.SET:return N9.writeSetTokens(t);case jp.types.GROUP:return`(${t.remember?"":t.followedBy?"?=":t.notFollowedBy?"?!":"?:"}${VCe(t)})`;case jp.types.REPETITION:{let{min:e,max:r}=t,n;return e===0&&r===1?n="?":e===1&&r===1/0?n="+":e===0&&r===1/0?n="*":r===1/0?n=`{${e},}`:e===r?n=`{${e}}`:n=`{${e},${r}}`,`${Zy.reconstruct(t.value)}${n}`}case jp.types.RANGE:return`${N9.setChar(t.from)}-${N9.setChar(t.to)}`;default:throw new Error(`Invalid token type ${t}`)}}});var JCe=E((uc,PP)=>{"use strict";var JFt=uc&&uc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),P9=uc&&uc.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&JFt(e,t,r)};Object.defineProperty(uc,"__esModule",{value:!0});uc.types=void 0;var zCe=Dd();Object.defineProperty(uc,"types",{enumerable:!0,get:function(){return zCe.types}});P9(R9(),uc);P9(O9(),uc);var YCe=R9(),XFt=O9();P9(Dd(),uc);uc.default=YCe.tokenizer;PP.exports=YCe.tokenizer;PP.exports.types=zCe.types;PP.exports.reconstruct=XFt.reconstruct});var ZCe=E((g4r,kP)=>{"use strict";var XCe=JCe(),ZFt=XCe.types;function k9(t,e){e||(e={});let r=e.limit===void 0?25:e.limit;eUt(t)?t=t.source:typeof t!="string"&&(t=String(t));try{t=XCe(t)}catch{return!1}let n=0;return function s(i,a){let o,c,u;if(i.type===ZFt.REPETITION&&(a++,n++,a>1||n>r))return!1;if(i.options){for(o=0,u=i.options.length;o<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 eUt(t){return{}.toString.call(t)==="[object RegExp]"}kP.exports=k9;kP.exports.default=k9;kP.exports.safeRegex=k9});var DP=E((A4r,eTe)=>{"use strict";eTe.exports={name:"__fmw_internal_strategy_merged_tree_http_method__",storage:function(){let t={};return{get:e=>t[e]||null,set:(e,r)=>{t[e]=r}}},deriveConstraint:t=>t.method,mustMatchWhenDerived:!0}});var oTe=E((y4r,aTe)=>{"use strict";var tTe=Ko(),rTe=DP(),nTe=Symbol("treeData");function sTe(t,e=""){let r="",n=Object.keys(t);for(let s=0;s<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[nTe]||"").split(`
`).join(`
`+e+u);r+=e+c+i+d+`
`,r+=sTe(a,e+u)}return r}function tUt(t){let e=t.name||"";return e=e.replace("bound","").trim(),e=(e||"anonymous")+"()",e}function iTe(t){return Array.isArray(t)?t.map(e=>iTe(e)):typeof t=="symbol"?t.toString():typeof t=="function"?tUt(t):t}function rUt(t,e){if(!e.includeMeta)return{};let r=e.buildPrettyMeta(t),n={},s=e.includeMeta;Array.isArray(s)||(s=Reflect.ownKeys(r));for(let i of s){if(!Object.prototype.hasOwnProperty.call(r,i))continue;let a=i.toString(),o=r[i];if(o!=null){let c=JSON.stringify(iTe(o));n[a]=c}}return n}function nUt(t){let e="";for(let[r,n]of Object.entries(t))e+=`
\u2022 (${r}) ${n}`;return e}function sUt(t){let e={...t.opts.constraints},r=e[rTe.name];return delete e[rTe.name],{...t,method:r,opts:{constraints:e}}}function iUt(t){let e=` (${t.method})`,r=t.opts.constraints||{};return Object.keys(r).length!==0&&(e+=" "+JSON.stringify(r)),e+=nUt(t.metaData),e}function aUt(t){return t.reduce((e,r)=>{for(let n of e)if(tTe(r.opts.constraints,n.opts.constraints)&&tTe(r.metaData,n.metaData))return n.method+=", "+r.method,e;return e.push(r),e},[])}function oUt(t,e,r){let n=t.routes;return r.method===void 0&&(n=n.map(sUt)),n=n.map(s=>(s.metaData=rUt(s,r),s)),r.method===void 0&&(n=aUt(n)),n.map(iUt).join(`
${e}`)}function BP(t,e,r,n){if((t.isLeafNode||n.commonPrefix!==!1)&&(r=r||"(empty root node)",e=e[r]={},t.isLeafNode&&(e[nTe]=oUt(t,r,n)),r=""),t.staticChildren)for(let s of Object.values(t.staticChildren))BP(s,e,r+s.prefix,n);if(t.parametricChildren)for(let s of Object.values(t.parametricChildren)){let i=Array.from(s.nodePaths).join("|");BP(s,e,r+i,n)}t.wildcardChild&&BP(t.wildcardChild,e,"*",n)}function cUt(t,e){let r={};return BP(t,r,t.prefix,e),sTe(r)}aTe.exports={prettyPrintTree:cUt}});var uTe=E((x4r,cTe)=>{"use strict";var uUt=DP(),D9=class{constructor(){this.unconstrainedHandler=null,this.constraints=[],this.handlers=[],this.constrainedHandlerStores=null}getMatchingHandler(e){return e===void 0?this.unconstrainedHandler:this._getHandlerMatchingConstraints(e)}addHandler(e,r){let n=r.params,s=r.opts.constraints||{},i={params:n,constraints:s,handler:r.handler,store:r.store||null,_createParamsObject:this._compileCreateParamsObject(n)},a=Object.keys(s);a.length===0&&(this.unconstrainedHandler=i);for(let c of a)this.constraints.includes(c)||(c==="version"?this.constraints.unshift(c):this.constraints.push(c));let o=a.includes(uUt.name);if(!o&&this.handlers.length>=31)throw new Error("find-my-way supports a maximum of 31 route handlers per node when there are constraints, limit reached");this.handlers.push(i),this.handlers.sort((c,u)=>Object.keys(c.constraints).length-Object.keys(u.constraints).length),o||this._compileGetHandlerMatchingConstraints(e,s)}_compileCreateParamsObject(e){let r=[];for(let n=0;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(`
`))}};cTe.exports=D9});var dTe=E((b4r,lTe)=>{"use strict";var lUt=uTe(),UP={STATIC:0,PARAMETRIC:1,WILDCARD:2},LP=class{constructor(){this.isLeafNode=!1,this.routes=null,this.handlerStorage=null}addRoute(e,r){this.routes===null&&(this.routes=[]),this.handlerStorage===null&&(this.handlerStorage=new lUt),this.isLeafNode=!0,this.routes.push(e),this.handlerStorage.addHandler(r,e)}},MP=class extends LP{constructor(){super(),this.staticChildren={}}findStaticMatchingChild(e,r){let n=this.staticChildren[e.charAt(r)];return n===void 0||!n.matchPrefix(e,r)?null:n}getStaticChild(e,r=0){if(e.length===r)return this;let n=this.findStaticMatchingChild(e,r);return n?n.getStaticChild(e,r+n.prefix.length):null}createStaticChild(e){if(e.length===0)return this;let r=this.staticChildren[e.charAt(0)];if(r){let s=1;for(;s<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 WP(e),this.staticChildren[n]}},WP=class t extends MP{constructor(e){super(),this.prefix=e,this.wildcardChild=null,this.parametricChildren=[],this.kind=UP.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 $P(e,r,n),this.parametricChildren.push(s),this.parametricChildren.sort((i,a)=>i.isRegex?a.isRegex?i.staticSuffix===null?1:a.staticSuffix===null?-1:a.staticSuffix.endsWith(i.staticSuffix)?1:i.staticSuffix.endsWith(a.staticSuffix)?-1:0:-1:1),s)}getWildcardChild(){return this.wildcardChild}createWildcardChild(){return this.wildcardChild=this.getWildcardChild()||new FP,this.wildcardChild}split(e,r){let n=this.prefix.slice(0,r),s=this.prefix.slice(r);this.prefix=s,this._compilePrefixMatch();let i=new t(n);return i.staticChildren[s.charAt(0)]=this,e.staticChildren[n.charAt(0)]=i,i}getNextNode(e,r,n,s){let i=this.findStaticMatchingChild(e,r),a=0;if(i===null){if(this.parametricChildren.length===0)return this.wildcardChild;i=this.parametricChildren[0],a=1}this.wildcardChild!==null&&n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.wildcardChild});for(let o=this.parametricChildren.length-1;o>=a;o--)n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.parametricChildren[o]});return i}_compilePrefixMatch(){if(this.prefix.length===1){this.matchPrefix=()=>!0;return}let e=[];for(let r=1;r<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(" && ")}`)}},$P=class extends MP{constructor(e,r,n){super(),this.isRegex=!!e,this.regex=e||null,this.staticSuffix=r||null,this.kind=UP.PARAMETRIC,this.nodePaths=new Set([n])}getNextNode(e,r){return this.findStaticMatchingChild(e,r)}},FP=class extends LP{constructor(){super(),this.kind=UP.WILDCARD}getNextNode(){return null}};lTe.exports={StaticNode:WP,ParametricNode:$P,WildcardNode:FP,NODE_TYPES:UP}});var pTe=E((E4r,fTe)=>{"use strict";var dUt=require("node:assert");function AS(){if(!(this instanceof AS))return new AS;this.store={},this.maxMajor=0,this.maxMinors={},this.maxPatches={}}AS.prototype.set=function(t,e){if(typeof t!="string")throw new TypeError("Version should be a string");let[r,n,s]=t.split(".");if(isNaN(r))throw new TypeError("Major version must be a numeric value");return r=Number(r),n=Number(n)||0,s=Number(s)||0,r>=this.maxMajor&&(this.maxMajor=r,this.store.x=e,this.store["*"]=e,this.store["x.x"]=e,this.store["x.x.x"]=e),n>=(this.maxMinors[r]||0)&&(this.maxMinors[r]=n,this.store[`${r}.x`]=e,this.store[`${r}.x.x`]=e),s>=(this.maxPatches[`${r}.${n}`]||0)&&(this.maxPatches[`${r}.${n}`]=s,this.store[`${r}.${n}.x`]=e),this.store[`${r}.${n}.${s}`]=e,this};AS.prototype.get=function(t){return this.store[t]};fTe.exports={name:"version",mustMatchWhenDerived:!0,storage:AS,validate(t){dUt(typeof t=="string","Version should be a string")}}});var hTe=E((_4r,mTe)=>{"use strict";var fUt=require("node:assert");function pUt(){let t={},e=[];return{get:r=>{let n=t[r];if(n)return n;for(let s of e)if(s.host.test(r))return s.value},set:(r,n)=>{r instanceof RegExp?e.push({host:r,value:n}):t[r]=n}}}mTe.exports={name:"host",mustMatchWhenDerived:!1,storage:pUt,validate(t){fUt(typeof t=="string"||Object.prototype.toString.call(t)==="[object RegExp]","Host should be a string or a RegExp")}}});var ATe=E((S4r,gTe)=>{"use strict";var mUt=pTe(),hUt=hTe(),B9=require("node:assert"),L9=class{constructor(e){if(this.strategies={version:mUt,host:hUt},this.strategiesInUse=new Set,this.asyncStrategiesInUse=new Set,e)for(let r of Object.values(e))this.addConstraintStrategy(r)}isStrategyUsed(e){return this.strategiesInUse.has(e)||this.asyncStrategiesInUse.has(e)}hasConstraintStrategy(e){let r=this.strategies[e];return r!==void 0?r.isCustom||this.isStrategyUsed(e):!1}addConstraintStrategy(e){if(B9(typeof e.name=="string"&&e.name!=="","strategy.name is required."),B9(e.storage&&typeof e.storage=="function","strategy.storage function is required."),B9(e.deriveConstraint&&typeof e.deriveConstraint=="function","strategy.deriveConstraint function is required."),this.strategies[e.name]&&this.strategies[e.name].isCustom)throw new Error(`There already exists a custom constraint with the name ${e.name}.`);if(this.isStrategyUsed(e.name))throw new Error(`There already exists a route with ${e.name} constraint.`);e.isCustom=!0,e.isAsync=e.deriveConstraint.length===3,this.strategies[e.name]=e,e.mustMatchWhenDerived&&this.noteUsage({[e.name]:e})}deriveConstraints(e,r,n){let s=this.deriveSyncConstraints(e,r);if(n===void 0)return s;this.deriveAsyncConstraints(s,e,r,n)}deriveSyncConstraints(e,r){}noteUsage(e){if(e){let r=this.strategiesInUse.size;for(let n in e)this.strategies[n].isAsync?this.asyncStrategiesInUse.add(n):this.strategiesInUse.add(n);r!==this.strategiesInUse.size&&this._buildDeriveConstraints()}}newStoreForConstraint(e){if(!this.strategies[e])throw new Error(`No strategy registered for constraint key ${e}`);return this.strategies[e].storage()}validateConstraints(e){for(let r in e){let n=e[r];if(typeof n>"u")throw new Error("Can't pass an undefined constraint value, must pass null or no key at all");let s=this.strategies[r];if(!s)throw new Error(`No strategy registered for constraint key ${r}`);s.validate&&s.validate(n)}}deriveAsyncConstraints(e,r,n,s){let i=this.asyncStrategiesInUse.size;if(i===0){s(null,e);return}e=e||{};for(let a of this.asyncStrategiesInUse)this.strategies[a].deriveConstraint(r,n,(c,u)=>{if(c!==null){s(c);return}e[a]=u,--i===0&&s(null,e)})}_buildDeriveConstraints(){if(this.strategiesInUse.size===0)return;let e=["return {"];for(let r of this.strategiesInUse){let n=this.strategies[r];n.isCustom?e.push(` ${n.name}: this.strategies.${r}.deriveConstraint(req, ctx),`):r==="version"?e.push(" version: req.headers['accept-version'],"):e.push(" host: req.headers.host || req.headers[':authority'],")}e.push("}"),this.deriveSyncConstraints=new Function("req","ctx",e.join(`
`)).bind(this)}};gTe.exports=L9});var xTe=E((v4r,yTe)=>{"use strict";var gUt=["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE"];yTe.exports=gUt});var _Te=E((I4r,ETe)=>{"use strict";function bTe(t,e){return t===50?e===53?"%":e===51?"#":e===52?"$":e===54?"&":e===66||e===98?"+":e===67||e===99?",":e===70||e===102?"/":null:t===51?e===65||e===97?":":e===66||e===98?";":e===68||e===100?"=":e===70||e===102?"?":null:t===52&&e===48?"@":null}function AUt(t,e){let r=!1,n=!1,s="";for(let a=1;a<t.length;a++){let o=t.charCodeAt(a);if(o===37){let c=t.charCodeAt(a+1),u=t.charCodeAt(a+2);bTe(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 yUt(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=bTe(i,a);r+=t.slice(n,s)+o,n=s+3}return t.slice(0,e)+r+t.slice(n)}ETe.exports={safeDecodeURI:AUt,safeDecodeURIComponent:yUt}});var U9=E((C4r,NTe)=>{"use strict";var fs=require("node:assert"),xUt=NCe(),qP=ZCe(),W9=Ko(),{prettyPrintTree:bUt}=oTe(),{StaticNode:STe,NODE_TYPES:vTe}=dTe(),EUt=ATe(),ex=xTe(),M9=DP(),{safeDecodeURI:_Ut,safeDecodeURIComponent:ITe}=_Te(),CTe=/^https?:\/\/.*?\//,ch=/(\/:[^/()]*?)\?(\/?)/;if(!qP(CTe))throw new Error("the FULL_PATH_REGEXP is not safe, update this module");if(!qP(ch))throw new Error("the OPTIONAL_PARAM_REGEXP is not safe, update this module");function Vn(t){if(!(this instanceof Vn))return new Vn(t);t=t||{},this._opts=t,t.defaultRoute?(fs(typeof t.defaultRoute=="function","The default route must be a function"),this.defaultRoute=t.defaultRoute):this.defaultRoute=null,t.onBadUrl?(fs(typeof t.onBadUrl=="function","The bad url handler must be a function"),this.onBadUrl=t.onBadUrl):this.onBadUrl=null,t.buildPrettyMeta?(fs(typeof t.buildPrettyMeta=="function","buildPrettyMeta must be a function"),this.buildPrettyMeta=t.buildPrettyMeta):this.buildPrettyMeta=SUt,t.querystringParser?(fs(typeof t.querystringParser=="function","querystringParser must be a function"),this.querystringParser=t.querystringParser):this.querystringParser=e=>e===""?{}:xUt.parse(e),this.caseSensitive=t.caseSensitive===void 0?!0:t.caseSensitive,this.ignoreTrailingSlash=t.ignoreTrailingSlash||!1,this.ignoreDuplicateSlashes=t.ignoreDuplicateSlashes||!1,this.maxParamLength=t.maxParamLength||100,this.allowUnsafeRegex=t.allowUnsafeRegex||!1,this.constrainer=new EUt(t.constraints),this.useSemicolonDelimiter=t.useSemicolonDelimiter||!1,this.routes=[],this.trees={}}Vn.prototype.on=function(e,r,n,s,i){typeof n=="function"&&(s!==void 0&&(i=s),s=n,n={}),fs(typeof r=="string","Path should be a string"),fs(r.length>0,"The path could not be empty"),fs(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),fs(typeof s=="function","Handler should be a function");let a=r.match(ch);if(a){fs(r.length===a.index+a[0].length,"Optional Parameter needs to be the last parameter of the path");let u=r.replace(ch,"$1$2"),l=r.replace(ch,"$2")||"/";this.on(e,u,n,s,i),this.on(e,l,n,s,i);return}let o=r;this.ignoreDuplicateSlashes&&(r=$9(r)),this.ignoreTrailingSlash&&(r=F9(r));let c=Array.isArray(e)?e:[e];for(let u of c)fs(typeof u=="string","Method should be a string"),fs(ex.includes(u),`Method '${u}' is not an http method.`),this._on(u,r,n,s,i,o)};Vn.prototype._on=function(e,r,n,s,i){let a={};n.constraints!==void 0&&(fs(typeof n.constraints=="object"&&n.constraints!==null,"Constraints should be an object"),Object.keys(n.constraints).length!==0&&(a=n.constraints)),this.constrainer.validateConstraints(a),this.constrainer.noteUsage(a),this.trees[e]===void 0&&(this.trees[e]=new STe("/"));let o=r;if(o==="*"&&this.trees[e].prefix.length!==0){let f=this.trees[e];this.trees[e]=new STe(""),this.trees[e].staticChildren["/"]=f}let c=this.trees[e],u=c.prefix.length,l=[];for(let f=0;f<=o.length;f++){if(o.charCodeAt(f)===58&&o.charCodeAt(f+1)===58){f++;continue}let p=o.charCodeAt(f)===58&&o.charCodeAt(f+1)!==58,m=o.charCodeAt(f)===42;if(p||m||f===o.length&&f!==u){let h=o.slice(u,f);this.caseSensitive||(h=h.toLowerCase()),h=h.split("::").join(":"),h=h.split("%").join("%25"),c=c.createStaticChild(h)}if(p){let h=!1,A=!0,g="",b=[],y=f+1;for(let x=y;;x++){let v=o.charCodeAt(x),I=v===40,R=v===45||v===46,w=v===47||x===o.length;if(I||R||w){let N=o.slice(y,x);if(l.push(N),h=h||I||R,I){let M=RTe(o,x),D=o.slice(x,M+1);this.allowUnsafeRegex||fs(qP(new RegExp(D)),`The regex '${D}' is not safe!`),b.push(wTe(D)),x=M+1,A=!0}else b.push(A?"(.*?)":`(${g}|(?:(?!${g}).)*)`),A=!1;let P=x;for(;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(P,x);if(B&&(B=B.split("::").join(":"),B=B.split("%").join("%25"),b.push(g=TTe(B))),y=x+1,w||o.charCodeAt(x)===47||x===o.length){let M=h?"()"+B:B,D=o.slice(f,x);o=o.slice(0,f+1)+M+o.slice(x),f+=M.length;let L=h?new RegExp("^"+b.join("")+"$"):null;c=c.createParametricChild(L,B||null,D),u=f+1;break}}}}else if(m&&(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 p=f.opts.constraints||{};if(f.method===e&&f.pattern===o&&W9(p,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)};Vn.prototype.hasRoute=function(e,r,n){return this.findRoute(e,r,n)!==null};Vn.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,p="",m=[],h=c+1;for(let A=h;;A++){let g=s.charCodeAt(A),b=g===40,y=g===45||g===46,x=g===47||A===s.length;if(b||y||x){let v=s.slice(h,A);if(o.push(v),d=d||b||y,b){let w=RTe(s,A),N=s.slice(A,w+1);this.allowUnsafeRegex||fs(qP(new RegExp(N)),`The regex '${N}' is not safe!`),m.push(wTe(N)),A=w+1,f=!1}else m.push(f?"(.*?)":`(${p}|(?:(?!${p}).)*)`),f=!1;let I=A;for(;A<s.length;A++){let w=s.charCodeAt(A);if(w===47)break;if(w===58)if(s.charCodeAt(A+1)===58)A++;else break}let R=s.slice(I,A);if(R&&(R=R.split("::").join(":"),R=R.split("%").join("%25"),m.push(p=TTe(R))),h=A+1,x||s.charCodeAt(A)===47||A===s.length){let w=d?"()"+R:R,N=s.slice(c,A);s=s.slice(0,c+1)+w+s.slice(A),c+=w.length;let P=d?new RegExp("^"+m.join("")+"$"):null;if(i=i.getParametricChild(P,R||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&&W9(u,n))return{handler:c.handler,store:c.store,params:c.params}}return null};Vn.prototype.hasConstraintStrategy=function(t){return this.constrainer.hasConstraintStrategy(t)};Vn.prototype.addConstraintStrategy=function(t){this.constrainer.addConstraintStrategy(t),this._rebuild(this.routes)};Vn.prototype.reset=function(){this.trees={},this.routes=[]};Vn.prototype.off=function(e,r,n){fs(typeof r=="string","Path should be a string"),fs(r.length>0,"The path could not be empty"),fs(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),fs(typeof n>"u"||typeof n=="object"&&!Array.isArray(n)&&n!==null,"Constraints should be an object or undefined.");let s=r.match(ch);if(s){fs(r.length===s.index+s[0].length,"Optional Parameter needs to be the last parameter of the path");let a=r.replace(ch,"$1$2"),o=r.replace(ch,"$2");this.off(e,a,n),this.off(e,o,n);return}this.ignoreDuplicateSlashes&&(r=$9(r)),this.ignoreTrailingSlash&&(r=F9(r));let i=Array.isArray(e)?e:[e];for(let a of i)this._off(a,r,n)};Vn.prototype._off=function(e,r,n){fs(typeof e=="string","Method should be a string"),fs(ex.includes(e),`Method '${e}' is not an http method.`);function s(c){return e!==c.method||r!==c.path}function i(c){return s(c)||!W9(n,c.opts.constraints||{})}let a=n?i:s,o=this.routes.filter(a);this._rebuild(o)};Vn.prototype.lookup=function(e,r,n,s){if(typeof n=="function"&&(s=n,n=void 0),s===void 0){let i=this.constrainer.deriveConstraints(e,n),a=this.find(e.method,e.url,i);return this.callHandler(a,e,r,n)}this.constrainer.deriveConstraints(e,n,(i,a)=>{if(i!==null){s(i);return}try{let o=this.find(e.method,e.url,a),c=this.callHandler(o,e,r,n);s(null,c)}catch(o){s(o)}})};Vn.prototype.callHandler=function(e,r,n,s){return e===null?this._defaultRoute(r,n,s):s===void 0?e.handler(r,n,e.params,e.store,e.searchParams):e.handler.call(s,r,n,e.params,e.store,e.searchParams)};Vn.prototype.find=function(e,r,n){let s=this.trees[e];if(s===void 0)return null;r.charCodeAt(0)!==47&&(r=r.replace(CTe,"/")),this.ignoreDuplicateSlashes&&(r=$9(r));let i,a,o;try{i=_Ut(r,this.useSemicolonDelimiter),r=i.path,a=i.querystring,o=i.shouldDecodeParam}catch{return this._onBadUrl(r)}this.ignoreTrailingSlash&&(r=F9(r));let c=r;this.caseSensitive===!1&&(r=r.toLowerCase());let u=this.maxParamLength,l=s.prefix.length,d=[],f=r.length,p=[];for(;;){if(l===f&&s.isLeafNode){let g=s.handlerStorage.getMatchingHandler(n);if(g!==null)return{handler:g.handler,store:g.store,params:g._createParamsObject(d),searchParams:this.querystringParser(a)}}let m=s.getNextNode(r,l,p,d.length);if(m===null){if(p.length===0)return null;let g=p.pop();l=g.brotherPathIndex,d.splice(g.paramsCount),m=g.brotherNode}if(s=m,s.kind===vTe.STATIC){l+=s.prefix.length;continue}if(s.kind===vTe.WILDCARD){let g=c.slice(l);o&&(g=ITe(g)),d.push(g),l=f;continue}let h=c.indexOf("/",l);h===-1&&(h=f);let A=c.slice(l,h);if(o&&(A=ITe(A)),s.isRegex){let g=s.regex.exec(A);if(g===null)continue;for(let b=1;b<g.length;b++){let y=g[b];if(y.length>u)return null;d.push(y)}}else{if(A.length>u)return null;d.push(A)}l=h}};Vn.prototype._rebuild=function(t){this.reset();for(let e of t){let{method:r,path:n,opts:s,handler:i,store:a}=e;this._on(r,n,s,i,a)}};Vn.prototype._defaultRoute=function(t,e,r){if(this.defaultRoute!==null)return r===void 0?this.defaultRoute(t,e):this.defaultRoute.call(r,t,e);e.statusCode=404,e.end()};Vn.prototype._onBadUrl=function(t){if(this.onBadUrl===null)return null;let e=this.onBadUrl;return{handler:(r,n,s)=>e(t,r,n),params:{},store:null}};Vn.prototype.prettyPrint=function(t={}){let e=t.method;t.buildPrettyMeta=this.buildPrettyMeta.bind(this);let r=null;if(e===void 0){let{version:n,host:s,...i}=this.constrainer.strategies;i[M9.name]=M9;let a=new Vn({...this._opts,constraints:i}),o=this.routes.map(c=>{let u={...c.opts.constraints,[M9.name]:c.method};return{...c,method:"MERGED",opts:{constraints:u}}});a._rebuild(o),r=a.trees.MERGED}else r=this.trees[e];return r==null?"(empty tree)":bUt(r,t)};for(let t in ex){if(!ex.hasOwnProperty(t))continue;let e=ex[t],r=e.toLowerCase();Vn.prototype[r]=function(n,s,i){return this.on(e,n,s,i)}}Vn.prototype.all=function(t,e,r){this.on(ex,t,e,r)};NTe.exports=Vn;function TTe(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function $9(t){return t.replace(/\/\/+/g,"/")}function F9(t){return t.length>1&&t.charCodeAt(t.length-1)===47?t.slice(0,-1):t}function wTe(t){return t.charCodeAt(1)===94&&(t=t.slice(0,1)+t.slice(2)),t.charCodeAt(t.length-2)===36&&(t=t.slice(0,t.length-2)+t.slice(t.length-1)),t}function RTe(t,e){let r=1;for(;e<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 SUt(t){return t?t.store?Object.assign({},t.store):{}:{}}});var PTe=E((T4r,OTe)=>{"use strict";function q9(t,e,r,n){if(r===void 0)return e.header("content-length","0"),n(null,null);if(typeof r.resume=="function")return r.on("error",i=>{e.log.error({err:i},"Error on Stream found for HEAD route")}),r.resume(),n(null,null);let s=""+Buffer.byteLength(r);e.header("content-length",s),n(null,null)}function vUt(t){return t==null?q9:Array.isArray(t)?[...t,q9]:[t,q9]}OTe.exports={parseHeadOnSendHandlers:vUt}});var zTe=E((w4r,VTe)=>{"use strict";var IUt=U9(),CUt=$N(),kTe=n5(),{onRequestAbortHookRunner:TUt,lifecycleHooks:DTe,preParsingHookRunner:wUt,onTimeoutHookRunner:RUt,onRequestHookRunner:NUt}=cp(),{supportedMethods:OUt}=B$(),{normalizeSchema:PUt}=c1(),{parseHeadOnSendHandlers:kUt}=PTe(),{FSTDEP007:DUt,FSTDEP008:BUt,FSTDEP014:BTe}=od(),{compileSchemasForValidation:LUt,compileSchemasForSerialization:MUt}=X6(),{FST_ERR_SCH_VALIDATION_BUILD:WUt,FST_ERR_SCH_SERIALIZATION_BUILD:$Ut,FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:FUt,FST_ERR_DUPLICATED_ROUTE:UUt,FST_ERR_INVALID_URL:qUt,FST_ERR_HOOK_INVALID_HANDLER:LTe,FST_ERR_ROUTE_OPTIONS_NOT_OBJ:jUt,FST_ERR_ROUTE_DUPLICATED_HANDLER:HUt,FST_ERR_ROUTE_HANDLER_NOT_FN:MTe,FST_ERR_ROUTE_MISSING_HANDLER:QUt,FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:GUt,FST_ERR_ROUTE_METHOD_INVALID:KUt,FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:VUt,FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:zUt,FST_ERR_HOOK_INVALID_ASYNC_HANDLER:j9}=Ci(),{kRoutePrefix:YUt,kLogLevel:JUt,kLogSerializers:WTe,kHooks:$Te,kSchemaController:XUt,kOptions:FTe,kReplySerializerDefault:H9,kReplyIsError:ZUt,kRequestPayloadStream:e7t,kDisableRequestLogging:t7t,kSchemaErrorFormatter:r7t,kErrorHandler:UTe,kHasBeenDecorated:qTe,kRequestAcceptVersion:Q9,kRouteByFastify:G9,kRouteContext:jTe}=Gs(),{buildErrorHandler:n7t}=F1(),{createChildLogger:s7t}=o1(),{getGenReqId:i7t}=vP();function a7t(t){let e=IUt(t.config),r,n,s,i,a,o,c,u,l,d,f,p,m,h=!1;return{setup(w,N){r=N.avvio,n=N.fourOhFour,s=N.logger,i=N.hasLogger,a=N.setupResponseListeners,o=N.throwIfAlreadyStarted,p=N.validateHTTPVersion,f=w.exposeHeadRoutes,c=w.disableRequestLogging,u=w.ignoreTrailingSlash,l=w.ignoreDuplicateSlashes,d=Object.prototype.hasOwnProperty.call(w,"return503OnClosing")?w.return503OnClosing:!0,m=N.keepAliveConnections},routing:e.lookup.bind(e),route:I,hasRoute:x,prepareRoute:y,getDefaultRoute:function(){return BTe(),e.defaultRoute},setDefaultRoute:function(w){if(BTe(),typeof w!="function")throw new FUt;e.defaultRoute=w},routeHandler:R,closeRoutes:()=>{h=!0},printRoutes:e.prettyPrint.bind(e),addConstraintStrategy:A,hasConstraintStrategy:g,isAsyncConstraint:b,findRoute:v};function A(w){return o("Cannot add constraint strategy!"),e.addConstraintStrategy(w)}function g(w){return e.hasConstraintStrategy(w)}function b(){return e.constrainer.asyncStrategiesInUse.size>0}function y({method:w,url:N,options:P,handler:B,isFastify:M}){if(typeof N!="string")throw new qUt(typeof N);if(!B&&typeof P=="function")B=P,P={};else if(B&&typeof B=="function"){if(Object.prototype.toString.call(P)!=="[object Object]")throw new jUt(w,N);if(P.handler)throw typeof P.handler=="function"?new HUt(w,N):new MTe(w,N)}return P=Object.assign({},P,{method:w,url:N,path:N,handler:B||P&&P.handler}),I.call(this,{options:P,isFastify:M})}function x({options:w}){return v(w)!==null}function v(w){let N=e.find(w.method,w.url||"",w.constraints);return N?{handler:N.handler,params:N.params,searchParams:N.searchParams}:null}function I({options:w,isFastify:N}){let P={...w},{exposeHeadRoute:B}=P,D=B!=null?B:f,L=P.method==="GET"||Array.isArray(P.method)&&P.method.includes("GET"),Z=P.method==="HEAD"||Array.isArray(P.method)&&P.method.includes("HEAD"),W=D&&L?{...w}:null;o("Cannot add route!");let F=P.url||P.path||"";if(Array.isArray(P.method))for(var K=0;K<P.method.length;++K)P.method[K]=HTe(P.method[K]),QTe(P.method[K],F,P.schema);else P.method=HTe(P.method),QTe(P.method,F,P.schema);if(!P.handler)throw new QUt(P.method,F);if(P.errorHandler!==void 0&&typeof P.errorHandler!="function")throw new MTe(P.method,F);KTe(P.bodyLimit);let j=this[YUt];if(F==="/"&&j.length>0&&P.method!=="HEAD")switch(P.prefixTrailingSlash){case"slash":J.call(this,{path:F,isFastify:N});break;case"no-slash":J.call(this,{path:"",isFastify:N});break;case"both":default:J.call(this,{path:"",isFastify:N}),u!==!0&&(l!==!0||!j.endsWith("/"))&&J.call(this,{path:F,prefixing:!0,isFastify:N})}else F[0]==="/"&&j.endsWith("/")?J.call(this,{path:F.slice(1),isFastify:N}):J.call(this,{path:F,isFastify:N});return this;function J({path:se,prefixing:oe=!1,isFastify:ue=!1}){let Ie=j+se;if(P.url=Ie,P.path=Ie,P.routePath=se,P.prefix=j,P.logLevel=P.logLevel||this[JUt],(this[WTe]||P.logSerializers)&&(P.logSerializers=Object.assign(Object.create(this[WTe]),P.logSerializers)),P.attachValidation==null&&(P.attachValidation=!1),oe===!1)for(let G of this[$Te].onRoute)G.call(this,P);for(let G of DTe)if(P&&G in P){if(Array.isArray(P[G]))for(let V of P[G]){if(typeof V!="function")throw new LTe(G,Object.prototype.toString.call(V));if(G==="onSend"||G==="preSerialization"||G==="onError"||G==="preParsing"){if(V.constructor.name==="AsyncFunction"&&V.length===4)throw new j9}else if(G==="onRequestAbort"){if(V.constructor.name==="AsyncFunction"&&V.length!==1)throw new j9}else if(V.constructor.name==="AsyncFunction"&&V.length===3)throw new j9}else if(P[G]!==void 0&&typeof P[G]!="function")throw new LTe(G,Object.prototype.toString.call(P[G]))}let we=P.constraints||{},qe={...P.config,url:Ie,method:P.method},Fe=new CUt({schema:P.schema,handler:P.handler.bind(this),config:qe,errorHandler:P.errorHandler,childLoggerFactory:P.childLoggerFactory,bodyLimit:P.bodyLimit,logLevel:P.logLevel,logSerializers:P.logSerializers,attachValidation:P.attachValidation,schemaErrorFormatter:P.schemaErrorFormatter,replySerializer:this[H9],validatorCompiler:P.validatorCompiler,serializerCompiler:P.serializerCompiler,exposeHeadRoute:D,prefixTrailingSlash:P.prefixTrailingSlash||"both",server:this,isFastify:ue});P.version&&(BUt(),we.version=P.version);let _e=e.findRoute("HEAD",P.url,we),U=_e!==null;Z&&U&&!Fe[G9]&&_e.store[G9]&&e.off("HEAD",P.url,we);try{e.on(P.method,P.url,{constraints:we},R,Fe)}catch(G){if(!Fe[G9])throw G.message.includes(`Method '${P.method}' already declared for route '${P.url}'`)?new UUt(P.method,P.url):G}if(this.after((G,V)=>{Fe.errorHandler=P.errorHandler?n7t(this[UTe],P.errorHandler):this[UTe],Fe._parserOptions.limit=P.bodyLimit||null,Fe.logLevel=P.logLevel,Fe.logSerializers=P.logSerializers,Fe.attachValidation=P.attachValidation,Fe[H9]=this[H9],Fe.schemaErrorFormatter=P.schemaErrorFormatter||this[r7t]||Fe.schemaErrorFormatter,r.once("preReady",()=>{for(let q of DTe){let H=this[$Te][q].concat(P[q]||[]).map(ee=>ee.bind(this));Fe[q]=H.length?H:null}for(;!Fe.Request[qTe]&&Fe.Request.parent;)Fe.Request=Fe.Request.parent;for(;!Fe.Reply[qTe]&&Fe.Reply.parent;)Fe.Reply=Fe.Reply.parent;if(n.setContext(this,Fe),P.schema){Fe.schema=PUt(Fe.schema,this.initialConfig);let q=this[XUt];!P.validatorCompiler&&(P.schema.body||P.schema.headers||P.schema.querystring||P.schema.params)&&q.setupValidator(this[FTe]);try{let H=typeof P?.validatorCompiler=="function"||q.isCustomValidatorCompiler;LUt(Fe,P.validatorCompiler||q.validatorCompiler,H)}catch(H){throw new WUt(P.method,Ie,H.message)}P.schema.response&&!P.serializerCompiler&&q.setupSerializer(this[FTe]);try{MUt(Fe,P.serializerCompiler||q.serializerCompiler)}catch(H){throw new $Ut(P.method,Ie,H.message)}}}),V(G)}),D&&L&&!Z&&!U){let G=kUt(W.onSend);y.call(this,{method:"HEAD",url:se,options:{...W,onSend:G},isFastify:!0})}else U&&B&&DUt()}}function R(w,N,P,B,M){let D=i7t(B.server,w),L={level:B.logLevel};B.logSerializers&&(L.serializers=B.logSerializers);let Z=s7t(B,s,w,D,L);if(Z[t7t]=c,!p(w.httpVersion)){Z.info({res:{statusCode:505}},"request aborted - invalid HTTP version");let j='{"error":"HTTP Version Not Supported","message":"HTTP Version Not Supported","statusCode":505}',J={"Content-Type":"application/json","Content-Length":j.length};N.writeHead(505,J),N.end(j);return}if(h===!0&&(w.httpVersionMajor!==2&&N.setHeader("Connection","close"),d)){let j={"Content-Type":"application/json","Content-Length":"80"};N.writeHead(503,j),N.end('{"error":"Service Unavailable","message":"Service Unavailable","statusCode":503}'),Z.info({res:{statusCode:503}},"request aborted - refusing to accept new requests as server is closing");return}String.prototype.toLowerCase.call(w.headers.connection||"")==="keep-alive"&&m.has(w.socket)===!1&&(m.add(w.socket),w.socket.on("close",u7t.bind({keepAliveConnections:m,socket:w.socket}))),w.headers[Q9]!==void 0&&(w.headers["accept-version"]=w.headers[Q9],w.headers[Q9]=void 0);let F=new B.Request(D,P,w,M,Z,B),K=new B.Reply(N,F,Z);c===!1&&Z.info({req:F},"incoming request"),(i===!0||B.onResponse!==null)&&a(K),B.onRequest!==null?NUt(B.onRequest,F,K,GTe):GTe(null,F,K),B.onRequestAbort!==null&&w.on("close",()=>{w.aborted&&TUt(B.onRequestAbort,F,o7t.bind(null,K))}),B.onTimeout!==null&&(F.raw.socket._meta||F.raw.socket.on("timeout",c7t),F.raw.socket._meta={context:B,request:F,reply:K})}}function o7t(t,e){e&&t.log.error({err:e},"onRequestAborted hook failed")}function c7t(){let{context:t,request:e,reply:r}=this._meta;RUt(t.onTimeout,e,r,l7t)}function HTe(t){if(typeof t!="string")throw new KUt;if(t=t.toUpperCase(),OUt.indexOf(t)===-1)throw new GUt(t);return t}function QTe(t,e,r){if((t==="GET"||t==="HEAD")&&r&&r.body)throw new VUt(t,e)}function KTe(t){if(t!==void 0&&(!Number.isInteger(t)||t<=0))throw new zUt(t)}function GTe(t,e,r){if(r.sent!==!0){if(t!=null){r[ZUt]=!0,r.send(t);return}e[e7t]=e.raw,e[jTe].preParsing!==null?wUt(e[jTe].preParsing,e,r,kTe):kTe(null,e,r)}}function u7t(){this.keepAliveConnections.delete(this.socket)}function l7t(){}VTe.exports={buildRouting:a7t,validateBodyLimitOption:KTe}});var rwe=E((R4r,twe)=>{"use strict";var d7t=U9(),YTe=EN(),JTe=WN(),f7t=$N(),{kRoutePrefix:p7t,kCanSetNotFoundHandler:yS,kFourOhFourLevelInstance:xS,kFourOhFourContext:ol,kHooks:m7t,kErrorHandler:XTe}=Gs(),{lifecycleHooks:h7t}=cp(),{buildErrorHandler:g7t}=F1(),{FST_ERR_NOT_FOUND:A7t}=Ci(),{createChildLogger:ZTe}=o1(),{getGenReqId:ewe}=vP();function y7t(t){let{logger:e}=t,r=d7t({onBadUrl:a(),defaultRoute:l}),n=null;return{router:r,setNotFoundHandler:c,setContext:o,arrange404:s};function s(d){d[xS]=d,d[yS]=!0,r.onBadUrl=r.onBadUrl.bind(d),r.defaultRoute=r.defaultRoute.bind(d)}function i(d,f){let{url:p,method:m}=d.raw,h=`Route ${m}:${p} not found`;d.log.info(h),f.code(404).send({message:h,error:"Not Found",statusCode:404})}function a(){return function(f,p,m){let h=this[xS][ol],A=ewe(h.server,p),g=ZTe(h,e,p,A),b=new JTe(A,null,p,null,g,h),y=new YTe(m,b,g);n(b,y)}}function o(d,f){let p=Object.assign({},d[ol]);p.onSend=f.onSend,f[ol]=p}function c(d,f,p,m){this[yS]===void 0&&(this[yS]=!0),this[ol]===void 0&&(this[ol]=null);let h=this,A=this[p7t]||"/";if(this[yS]===!1)throw new Error(`Not found handler already set for Fastify instance with prefix: '${A}'`);typeof d=="object"&&(d.preHandler&&(Array.isArray(d.preHandler)?d.preHandler=d.preHandler.map(g=>g.bind(h)):d.preHandler=d.preHandler.bind(h)),d.preValidation&&(Array.isArray(d.preValidation)?d.preValidation=d.preValidation.map(g=>g.bind(h)):d.preValidation=d.preValidation.bind(h))),typeof d=="function"&&(f=d,d=void 0),d=d||{},f?(this[xS][yS]=!1,f=f.bind(this),n=f):(f=i,n=i),this.after((g,b)=>{u.call(this,A,d,f,p,m),b(g)})}function u(d,f,p,m,h){let A=new f7t({schema:f.schema,handler:p,config:f.config||{},server:this});if(m.once("preReady",()=>{let g=this[ol];for(let b of h7t){let y=this[m7t][b].concat(f[b]||[]).map(x=>x.bind(this));g[b]=y.length?y:null}g.errorHandler=f.errorHandler?g7t(this[XTe],f.errorHandler):this[XTe]}),this[ol]!==null&&d==="/"){Object.assign(this[ol],A);return}this[xS][ol]=A,r.all(d+(d.endsWith("/")?"*":"/*"),h,A),r.all(d,h,A)}function l(d,f){let p=this[xS][ol],m=ewe(p.server,d),h=ZTe(p,e,d,m);h.info({req:d},"incoming request");let A=new JTe(m,null,d,null,h,p),g=new YTe(f,A,h);A.log.warn("the default handler for 404 did not catch this, this is likely a fastify bug, please report it"),A.log.warn(r.prettyPrint()),g.code(404).send(new A7t)}}twe.exports=y7t});var swe=E((N4r,jP)=>{"use strict";jP.exports=Wr;jP.exports.default=Wr;var nwe={type:"object",additionalProperties:!1,properties:{connectionTimeout:{type:"integer",default:0},keepAliveTimeout:{type:"integer",default:72e3},forceCloseConnections:{oneOf:[{type:"string",pattern:"idle"},{type:"boolean"}]},maxRequestsPerSocket:{type:"integer",default:0,nullable:!0},requestTimeout:{type:"integer",default:0},bodyLimit:{type:"integer",default:1048576},caseSensitive:{type:"boolean",default:!0},allowUnsafeRegex:{type:"boolean",default:!1},http2:{type:"boolean"},https:{if:{not:{oneOf:[{type:"boolean"},{type:"null"},{type:"object",additionalProperties:!1,required:["allowHTTP1"],properties:{allowHTTP1:{type:"boolean"}}}]}},then:{setDefaultValue:!0}},ignoreTrailingSlash:{type:"boolean",default:!1},ignoreDuplicateSlashes:{type:"boolean",default:!1},disableRequestLogging:{type:"boolean",default:!1},jsonShorthand:{type:"boolean",default:!0},maxParamLength:{type:"integer",default:100},onProtoPoisoning:{type:"string",default:"error"},onConstructorPoisoning:{type:"string",default:"error"},pluginTimeout:{type:"integer",default:1e4},requestIdHeader:{anyOf:[{enum:[!1]},{type:"string"}],default:"request-id"},requestIdLogLabel:{type:"string",default:"reqId"},http2SessionTimeout:{type:"integer",default:72e3},exposeHeadRoutes:{type:"boolean",default:!0},useSemicolonDelimiter:{type:"boolean",default:!0},versioning:{type:"object",additionalProperties:!0,required:["storage","deriveVersion"],properties:{storage:{},deriveVersion:{}}},constraints:{type:"object",additionalProperties:{type:"object",required:["name","storage","validate","deriveConstraint"],additionalProperties:!0,properties:{name:{type:"string"},storage:{},validate:{},deriveConstraint:{}}}}}},x7t=Object.prototype.hasOwnProperty,b7t=new RegExp("idle","u");function Wr(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){t.connectionTimeout===void 0&&(t.connectionTimeout=0),t.keepAliveTimeout===void 0&&(t.keepAliveTimeout=72e3),t.maxRequestsPerSocket===void 0&&(t.maxRequestsPerSocket=0),t.requestTimeout===void 0&&(t.requestTimeout=0),t.bodyLimit===void 0&&(t.bodyLimit=1048576),t.caseSensitive===void 0&&(t.caseSensitive=!0),t.allowUnsafeRegex===void 0&&(t.allowUnsafeRegex=!1),t.ignoreTrailingSlash===void 0&&(t.ignoreTrailingSlash=!1),t.ignoreDuplicateSlashes===void 0&&(t.ignoreDuplicateSlashes=!1),t.disableRequestLogging===void 0&&(t.disableRequestLogging=!1),t.jsonShorthand===void 0&&(t.jsonShorthand=!0),t.maxParamLength===void 0&&(t.maxParamLength=100),t.onProtoPoisoning===void 0&&(t.onProtoPoisoning="error"),t.onConstructorPoisoning===void 0&&(t.onConstructorPoisoning="error"),t.pluginTimeout===void 0&&(t.pluginTimeout=1e4),t.requestIdHeader===void 0&&(t.requestIdHeader="request-id"),t.requestIdLogLabel===void 0&&(t.requestIdLogLabel="reqId"),t.http2SessionTimeout===void 0&&(t.http2SessionTimeout=72e3),t.exposeHeadRoutes===void 0&&(t.exposeHeadRoutes=!0),t.useSemicolonDelimiter===void 0&&(t.useSemicolonDelimiter=!0);let m=a;for(let h in t)x7t.call(nwe.properties,h)||delete t[h];if(m===a){let h=t.connectionTimeout,A=a;if(!(typeof h=="number"&&!(h%1)&&!isNaN(h)&&isFinite(h))){let g=typeof h,b;if(b===void 0)if(g==="boolean"||h===null||g==="string"&&h&&h==+h&&!(h%1))b=+h;else return Wr.errors=[{instancePath:e+"/connectionTimeout",schemaPath:"#/properties/connectionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;b!==void 0&&(h=b,t!==void 0&&(t.connectionTimeout=b))}var o=A===a;if(o){let g=t.keepAliveTimeout,b=a;if(!(typeof g=="number"&&!(g%1)&&!isNaN(g)&&isFinite(g))){let x=typeof g,v;if(v===void 0)if(x==="boolean"||g===null||x==="string"&&g&&g==+g&&!(g%1))v=+g;else return Wr.errors=[{instancePath:e+"/keepAliveTimeout",schemaPath:"#/properties/keepAliveTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;v!==void 0&&(g=v,t!==void 0&&(t.keepAliveTimeout=v))}var o=b===a;if(o){if(t.forceCloseConnections!==void 0){let x=t.forceCloseConnections,v=a,I=a,R=!1,w=null,N=a;if(typeof x!="string"){let M=typeof x,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+x;else if(x===null)D="";else{let L={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(x=D,t!==void 0&&(t.forceCloseConnections=D))}if(a===N&&typeof x=="string"&&!b7t.test(x)){let M={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/pattern",keyword:"pattern",params:{pattern:"idle"},message:'must match pattern "idle"'};i===null?i=[M]:i.push(M),a++}var c=N===a;c&&(R=!0,w=0);let P=a;if(typeof x!="boolean"){let M;if(M===void 0)if(x==="false"||x===0||x===null)M=!1;else if(x==="true"||x===1)M=!0;else{let D={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/1/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"};i===null?i=[D]:i.push(D),a++}M!==void 0&&(x=M,t!==void 0&&(t.forceCloseConnections=M))}var c=P===a;if(c&&R?(R=!1,w=[w,1]):c&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let M={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,Wr.errors=i,!1}var o=v===a}else var o=!0;if(o){let x=t.maxRequestsPerSocket,v=a;if(!(typeof x=="number"&&!(x%1)&&!isNaN(x)&&isFinite(x))&&x!==null){let R=typeof x,w;if(w===void 0)if(R==="boolean"||x===null||R==="string"&&x&&x==+x&&!(x%1))w=+x;else if(x===""||x===0||x===!1)w=null;else return Wr.errors=[{instancePath:e+"/maxRequestsPerSocket",schemaPath:"#/properties/maxRequestsPerSocket/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.maxRequestsPerSocket=w))}var o=v===a;if(o){let R=t.requestTimeout,w=a;if(!(typeof R=="number"&&!(R%1)&&!isNaN(R)&&isFinite(R))){let P=typeof R,B;if(B===void 0)if(P==="boolean"||R===null||P==="string"&&R&&R==+R&&!(R%1))B=+R;else return Wr.errors=[{instancePath:e+"/requestTimeout",schemaPath:"#/properties/requestTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;B!==void 0&&(R=B,t!==void 0&&(t.requestTimeout=B))}var o=w===a;if(o){let P=t.bodyLimit,B=a;if(!(typeof P=="number"&&!(P%1)&&!isNaN(P)&&isFinite(P))){let D=typeof P,L;if(L===void 0)if(D==="boolean"||P===null||D==="string"&&P&&P==+P&&!(P%1))L=+P;else return Wr.errors=[{instancePath:e+"/bodyLimit",schemaPath:"#/properties/bodyLimit/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;L!==void 0&&(P=L,t!==void 0&&(t.bodyLimit=L))}var o=B===a;if(o){let D=t.caseSensitive,L=a;if(typeof D!="boolean"){let W;if(W===void 0)if(D==="false"||D===0||D===null)W=!1;else if(D==="true"||D===1)W=!0;else return Wr.errors=[{instancePath:e+"/caseSensitive",schemaPath:"#/properties/caseSensitive/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;W!==void 0&&(D=W,t!==void 0&&(t.caseSensitive=W))}var o=L===a;if(o){let W=t.allowUnsafeRegex,F=a;if(typeof W!="boolean"){let j;if(j===void 0)if(W==="false"||W===0||W===null)j=!1;else if(W==="true"||W===1)j=!0;else return Wr.errors=[{instancePath:e+"/allowUnsafeRegex",schemaPath:"#/properties/allowUnsafeRegex/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;j!==void 0&&(W=j,t!==void 0&&(t.allowUnsafeRegex=j))}var o=F===a;if(o){if(t.http2!==void 0){let j=t.http2,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return Wr.errors=[{instancePath:e+"/http2",schemaPath:"#/properties/http2/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.http2=oe))}var o=J===a}else var o=!0;if(o){if(t.https!==void 0){let j=t.https,J=a,se=a,oe=!0,ue=a,Ie=a,we=a,qe=a,Fe=!1,_e=null,U=a;if(typeof j!="boolean"){let q;if(q===void 0)if(j==="false"||j===0||j===null)q=!1;else if(j==="true"||j===1)q=!0;else{let H={};i===null?i=[H]:i.push(H),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=U===a;u&&(Fe=!0,_e=0);let G=a;if(j!==null){let q;if(q===void 0)if(j===""||j===0||j===!1)q=null;else{let H={};i===null?i=[H]:i.push(H),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=G===a;if(u&&Fe)Fe=!1,_e=[_e,1];else{u&&(Fe=!0,_e=1);let q=a;if(a===q)if(j&&typeof j=="object"&&!Array.isArray(j)){let ee;if(j.allowHTTP1===void 0&&(ee="allowHTTP1")){let ne={};i===null?i=[ne]:i.push(ne),a++}else{let ne=a;for(let re in j)re!=="allowHTTP1"&&delete j[re];if(ne===a&&j.allowHTTP1!==void 0){let re=j.allowHTTP1;if(typeof re!="boolean"){let X;if(X===void 0)if(re==="false"||re===0||re===null)X=!1;else if(re==="true"||re===1)X=!0;else{let ie={};i===null?i=[ie]:i.push(ie),a++}X!==void 0&&(re=X,j!==void 0&&(j.allowHTTP1=X))}}}}else{let ee={};i===null?i=[ee]:i.push(ee),a++}var u=q===a;u&&Fe?(Fe=!1,_e=[_e,2]):u&&(Fe=!0,_e=2)}if(Fe)a=qe,i!==null&&(qe?i.length=qe:i=null);else{let q={};i===null?i=[q]:i.push(q),a++}var l=we===a;if(l){let q={};i===null?i=[q]:i.push(q),a++}else a=Ie,i!==null&&(Ie?i.length=Ie:i=null);var d=ue===a;if(a=se,i!==null&&(se?i.length=se:i=null),d){let q=a;t.https=!0;var d=q===a;oe=d}if(!oe){let q={instancePath:e+"/https",schemaPath:"#/properties/https/if",keyword:"if",params:{failingKeyword:"then"},message:'must match "then" schema'};return i===null?i=[q]:i.push(q),a++,Wr.errors=i,!1}var o=J===a}else var o=!0;if(o){let j=t.ignoreTrailingSlash,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return Wr.errors=[{instancePath:e+"/ignoreTrailingSlash",schemaPath:"#/properties/ignoreTrailingSlash/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.ignoreTrailingSlash=oe))}var o=J===a;if(o){let oe=t.ignoreDuplicateSlashes,ue=a;if(typeof oe!="boolean"){let we;if(we===void 0)if(oe==="false"||oe===0||oe===null)we=!1;else if(oe==="true"||oe===1)we=!0;else return Wr.errors=[{instancePath:e+"/ignoreDuplicateSlashes",schemaPath:"#/properties/ignoreDuplicateSlashes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;we!==void 0&&(oe=we,t!==void 0&&(t.ignoreDuplicateSlashes=we))}var o=ue===a;if(o){let we=t.disableRequestLogging,qe=a;if(typeof we!="boolean"){let _e;if(_e===void 0)if(we==="false"||we===0||we===null)_e=!1;else if(we==="true"||we===1)_e=!0;else return Wr.errors=[{instancePath:e+"/disableRequestLogging",schemaPath:"#/properties/disableRequestLogging/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;_e!==void 0&&(we=_e,t!==void 0&&(t.disableRequestLogging=_e))}var o=qe===a;if(o){let _e=t.jsonShorthand,U=a;if(typeof _e!="boolean"){let V;if(V===void 0)if(_e==="false"||_e===0||_e===null)V=!1;else if(_e==="true"||_e===1)V=!0;else return Wr.errors=[{instancePath:e+"/jsonShorthand",schemaPath:"#/properties/jsonShorthand/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;V!==void 0&&(_e=V,t!==void 0&&(t.jsonShorthand=V))}var o=U===a;if(o){let V=t.maxParamLength,q=a;if(!(typeof V=="number"&&!(V%1)&&!isNaN(V)&&isFinite(V))){let ee=typeof V,ne;if(ne===void 0)if(ee==="boolean"||V===null||ee==="string"&&V&&V==+V&&!(V%1))ne=+V;else return Wr.errors=[{instancePath:e+"/maxParamLength",schemaPath:"#/properties/maxParamLength/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ne!==void 0&&(V=ne,t!==void 0&&(t.maxParamLength=ne))}var o=q===a;if(o){let ee=t.onProtoPoisoning,ne=a;if(typeof ee!="string"){let X=typeof ee,ie;if(ie===void 0)if(X=="number"||X=="boolean")ie=""+ee;else if(ee===null)ie="";else return Wr.errors=[{instancePath:e+"/onProtoPoisoning",schemaPath:"#/properties/onProtoPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;ie!==void 0&&(ee=ie,t!==void 0&&(t.onProtoPoisoning=ie))}var o=ne===a;if(o){let X=t.onConstructorPoisoning,ie=a;if(typeof X!="string"){let fe=typeof X,Ne;if(Ne===void 0)if(fe=="number"||fe=="boolean")Ne=""+X;else if(X===null)Ne="";else return Wr.errors=[{instancePath:e+"/onConstructorPoisoning",schemaPath:"#/properties/onConstructorPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Ne!==void 0&&(X=Ne,t!==void 0&&(t.onConstructorPoisoning=Ne))}var o=ie===a;if(o){let fe=t.pluginTimeout,Ne=a;if(!(typeof fe=="number"&&!(fe%1)&&!isNaN(fe)&&isFinite(fe))){let Ue=typeof fe,ze;if(ze===void 0)if(Ue==="boolean"||fe===null||Ue==="string"&&fe&&fe==+fe&&!(fe%1))ze=+fe;else return Wr.errors=[{instancePath:e+"/pluginTimeout",schemaPath:"#/properties/pluginTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ze!==void 0&&(fe=ze,t!==void 0&&(t.pluginTimeout=ze))}var o=Ne===a;if(o){let Ue=t.requestIdHeader,ze=a,Ye=a,Ze=!1,nt=a;if(Ue!==!1){let tt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/0/enum",keyword:"enum",params:{allowedValues:nwe.properties.requestIdHeader.anyOf[0].enum},message:"must be equal to one of the allowed values"};i===null?i=[tt]:i.push(tt),a++}var f=nt===a;if(Ze=Ze||f,!Ze){let tt=a;if(typeof Ue!="string"){let lt=typeof Ue,ke;if(ke===void 0)if(lt=="number"||lt=="boolean")ke=""+Ue;else if(Ue===null)ke="";else{let Je={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[Je]:i.push(Je),a++}ke!==void 0&&(Ue=ke,t!==void 0&&(t.requestIdHeader=ke))}var f=tt===a;Ze=Ze||f}if(Ze)a=Ye,i!==null&&(Ye?i.length=Ye:i=null);else{let tt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[tt]:i.push(tt),a++,Wr.errors=i,!1}var o=ze===a;if(o){let tt=t.requestIdLogLabel,Pt=a;if(typeof tt!="string"){let ke=typeof tt,Je;if(Je===void 0)if(ke=="number"||ke=="boolean")Je=""+tt;else if(tt===null)Je="";else return Wr.errors=[{instancePath:e+"/requestIdLogLabel",schemaPath:"#/properties/requestIdLogLabel/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Je!==void 0&&(tt=Je,t!==void 0&&(t.requestIdLogLabel=Je))}var o=Pt===a;if(o){let ke=t.http2SessionTimeout,Je=a;if(!(typeof ke=="number"&&!(ke%1)&&!isNaN(ke)&&isFinite(ke))){let rt=typeof ke,bt;if(bt===void 0)if(rt==="boolean"||ke===null||rt==="string"&&ke&&ke==+ke&&!(ke%1))bt=+ke;else return Wr.errors=[{instancePath:e+"/http2SessionTimeout",schemaPath:"#/properties/http2SessionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;bt!==void 0&&(ke=bt,t!==void 0&&(t.http2SessionTimeout=bt))}var o=Je===a;if(o){let rt=t.exposeHeadRoutes,bt=a;if(typeof rt!="boolean"){let vt;if(vt===void 0)if(rt==="false"||rt===0||rt===null)vt=!1;else if(rt==="true"||rt===1)vt=!0;else return Wr.errors=[{instancePath:e+"/exposeHeadRoutes",schemaPath:"#/properties/exposeHeadRoutes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;vt!==void 0&&(rt=vt,t!==void 0&&(t.exposeHeadRoutes=vt))}var o=bt===a;if(o){let vt=t.useSemicolonDelimiter,_r=a;if(typeof vt!="boolean"){let Pr;if(Pr===void 0)if(vt==="false"||vt===0||vt===null)Pr=!1;else if(vt==="true"||vt===1)Pr=!0;else return Wr.errors=[{instancePath:e+"/useSemicolonDelimiter",schemaPath:"#/properties/useSemicolonDelimiter/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Pr!==void 0&&(vt=Pr,t!==void 0&&(t.useSemicolonDelimiter=Pr))}var o=_r===a;if(o){if(t.versioning!==void 0){let Pr=t.versioning,js=a;if(a===js)if(Pr&&typeof Pr=="object"&&!Array.isArray(Pr)){let ys;if(Pr.storage===void 0&&(ys="storage")||Pr.deriveVersion===void 0&&(ys="deriveVersion"))return Wr.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/required",keyword:"required",params:{missingProperty:ys},message:"must have required property '"+ys+"'"}],!1}else return Wr.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=js===a}else var o=!0;if(o)if(t.constraints!==void 0){let Pr=t.constraints,js=a;if(a===js)if(Pr&&typeof Pr=="object"&&!Array.isArray(Pr))for(let ys in Pr){let Qs=Pr[ys],Bu=a;if(a===Bu)if(Qs&&typeof Qs=="object"&&!Array.isArray(Qs)){let Ao;if(Qs.name===void 0&&(Ao="name")||Qs.storage===void 0&&(Ao="storage")||Qs.validate===void 0&&(Ao="validate")||Qs.deriveConstraint===void 0&&(Ao="deriveConstraint"))return Wr.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/required",keyword:"required",params:{missingProperty:Ao},message:"must have required property '"+Ao+"'"}],!1;if(Qs.name!==void 0){let Dc=Qs.name;if(typeof Dc!="string"){let Ta=typeof Dc,yn;if(yn===void 0)if(Ta=="number"||Ta=="boolean")yn=""+Dc;else if(Dc===null)yn="";else return Wr.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1")+"/name",schemaPath:"#/properties/constraints/additionalProperties/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;yn!==void 0&&(Dc=yn,Qs!==void 0&&(Qs.name=yn))}}}else return Wr.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var p=Bu===a;if(!p)break}else return Wr.errors=[{instancePath:e+"/constraints",schemaPath:"#/properties/constraints/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=js===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}else return Wr.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return Wr.errors=i,a===0}jP.exports.defaultInitOptions={connectionTimeout:0,keepAliveTimeout:72e3,maxRequestsPerSocket:0,requestTimeout:0,bodyLimit:1048576,caseSensitive:!0,allowUnsafeRegex:!1,disableRequestLogging:!1,jsonShorthand:!0,ignoreTrailingSlash:!1,ignoreDuplicateSlashes:!1,maxParamLength:100,onProtoPoisoning:"error",onConstructorPoisoning:"error",pluginTimeout:1e4,requestIdHeader:"request-id",requestIdLogLabel:"reqId",http2SessionTimeout:72e3,exposeHeadRoutes:!0,useSemicolonDelimiter:!0}});var iwe=E((O4r,QP)=>{"use strict";var HP=swe(),E7t=wR()({circles:!0,proto:!1}),{FST_ERR_INIT_OPTS_INVALID:_7t}=Ci();function S7t(t){let e=E7t(t);if(!HP(e)){let r=new _7t(JSON.stringify(HP.errors.map(n=>n.message)));throw r.errors=HP.errors,r}return K9(e)}function K9(t){let e=Object.getOwnPropertyNames(t);for(let r of e){let n=t[r];ArrayBuffer.isView(n)&&!(n instanceof DataView)||(t[r]=n&&typeof n=="object"?K9(n):n)}return Object.freeze(t)}QP.exports=S7t;QP.exports.defaultInitOptions=HP.defaultInitOptions;QP.exports.utils={deepFreezeObject:K9}});var mwe=E((P4r,pwe)=>{"use strict";var{kAvvioBoot:v7t,kChildren:awe,kRoutePrefix:owe,kLogLevel:cwe,kLogSerializers:V9,kHooks:z9,kSchemaController:tx,kContentTypeParser:uwe,kReply:lwe,kRequest:dwe,kFourOhFour:I7t,kPluginNameChain:fwe}=Gs(),C7t=EN(),T7t=WN(),w7t=x9(),R7t=z$(),{buildHooks:N7t}=cp(),bS=I9();pwe.exports=function(e,r,n){let s=bS.registerPlugin.call(e,r),i=bS.getPluginName(r)||bS.getFuncPreview(r);if(s)return e[fwe].push(i),e;let a=Object.create(e);e[awe].push(a),a.ready=e[v7t].bind(a),a[awe]=[],a[lwe]=C7t.buildReply(a[lwe]),a[dwe]=T7t.buildRequest(a[dwe]),a[uwe]=R7t.helpers.buildContentTypeParser(a[uwe]),a[z9]=N7t(a[z9]),a[owe]=O7t(a[owe],n.prefix),a[cwe]=n.logLevel||a[cwe],a[tx]=w7t.buildSchemaController(e[tx]),a.getSchema=a[tx].getSchema.bind(a[tx]),a.getSchemas=a[tx].getSchemas.bind(a[tx]),a[bS.kRegisteredPlugins]=Object.create(a[bS.kRegisteredPlugins]),a[fwe]=[i],(a[V9]||n.logSerializers)&&(a[V9]=Object.assign(Object.create(a[V9]),n.logSerializers)),n.prefix&&a[I7t].arrange404(a);for(let o of a[z9].onRegister)o.call(this,a,n);return a};function O7t(t,e){return e?(t.endsWith("/")&&e[0]==="/"?e=e.slice(1):e[0]!=="/"&&(e="/"+e),t+e):t}});var gwe=E((k4r,hwe)=>{"use strict";hwe.exports=function(){return{[Symbol.iterator]:function*(){},add(){},delete(){},has(){return!0}}}});var xwe=E(Y9=>{"use strict";Y9.parse=W7t;Y9.serialize=$7t;var P7t=Object.prototype.toString,k7t=Object.prototype.hasOwnProperty,D7t=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,B7t=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,L7t=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,M7t=/^[\u0020-\u003A\u003D-\u007E]*$/;function W7t(t,e){if(typeof t!="string")throw new TypeError("argument str must be a string");var r={},n=t.length;if(n<2)return r;var s=e&&e.decode||F7t,i=0,a=0,o=0;do{if(a=t.indexOf("=",i),a===-1)break;if(o=t.indexOf(";",i),o===-1)o=n;else if(a>o){i=t.lastIndexOf(";",a-1)+1;continue}var c=Awe(t,i,a),u=ywe(t,a,c),l=t.slice(c,u);if(!k7t.call(r,l)){var d=Awe(t,a+1,o),f=ywe(t,o,d);t.charCodeAt(d)===34&&t.charCodeAt(f-1)===34&&(d++,f--);var p=t.slice(d,f);r[l]=q7t(p,s)}i=o+1}while(i<n);return r}function Awe(t,e,r){do{var n=t.charCodeAt(e);if(n!==32&&n!==9)return e}while(++e<r);return r}function ywe(t,e,r){for(;e>r;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function $7t(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!D7t.test(t))throw new TypeError("argument name is invalid");var s=n(e);if(!B7t.test(s))throw new TypeError("argument val is invalid");var i=t+"="+s;if(!r)return i;if(r.maxAge!=null){var a=Math.floor(r.maxAge);if(!isFinite(a))throw new TypeError("option maxAge is invalid");i+="; Max-Age="+a}if(r.domain){if(!L7t.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!M7t.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){var o=r.expires;if(!U7t(o)||isNaN(o.valueOf()))throw new TypeError("option expires is invalid");i+="; Expires="+o.toUTCString()}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.partitioned&&(i+="; Partitioned"),r.priority){var c=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(c){case"low":i+="; Priority=Low";break;case"medium":i+="; Priority=Medium";break;case"high":i+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var u=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(u){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return i}function F7t(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function U7t(t){return P7t.call(t)==="[object Date]"}function q7t(t,e){try{return e(t)}catch{return t}}});var _we=E((B4r,Ewe)=>{"use strict";var{URL:bwe}=require("node:url"),J9="http://localhost";Ewe.exports=function(e,r){(typeof e=="string"||Object.prototype.toString.call(e)==="[object String]")&&e.startsWith("//")&&(e=J9+e);let n=typeof e=="object"?Object.assign(new bwe(J9),e):new bwe(e,J9);if(typeof r=="string"){r=new URLSearchParams(r);for(let s of r.keys()){n.searchParams.delete(s);for(let i of r.getAll(s))n.searchParams.append(s,i)}}else{let s=Object.assign({},e.query,r);for(let i in s){let a=s[i];if(Array.isArray(a)){n.searchParams.delete(i);for(let o of a)n.searchParams.append(i,o)}else n.searchParams.set(i,a)}}return n}});var Swe=E((L4r,X9)=>{"use strict";var{randomUUID:j7t}=require("node:crypto"),{Readable:H7t}=require("node:stream"),rx;function Q7t(t){return t&&typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&t[Symbol.toStringTag]==="FormData"}function G7t(t){rx=rx??new TextEncoder;let e=`----formdata-${j7t()}`,r=`--${e}\r
Content-Disposition: form-data`;let n=c=>c.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),s=c=>c.replace(/\r?\n|\r/g,`\r
`),i=new Uint8Array([13,10]);async function*a(){for(let[c,u]of t)if(typeof u=="string")yield rx.encode(`${r}; name="${n(s(c))}"\r
\r
`),yield rx.encode(`${s(u)}\r
`);else{let l=`${r}; name="${n(s(c))}"`;u.name&&(l+=`; filename="${n(u.name)}"`),l+=`\r
Content-Type: ${u.type||"application/octet-stream"}\r
\r
`,yield rx.encode(l),u.stream?yield*u.stream():yield u,yield i}yield rx.encode(`--${e}--`)}return{stream:H7t.from(a()),contentType:`multipart/form-data; boundary=${e}`}}X9.exports.isFormDataLike=Q7t;X9.exports.formDataToStream=G7t});var Cwe=E((M4r,GP)=>{"use strict";var{Readable:vwe,addAbortSignal:K7t}=require("node:stream"),ej=require("node:util"),V7t=xwe(),z7t=require("node:assert"),{createDeprecation:Y7t}=G6(),J7t=_we(),{isFormDataLike:X7t,formDataToStream:Z7t}=Swe(),{EventEmitter:eqt}=require("node:events"),tqt=Y7t({name:"FastifyDeprecationLightMyRequest",code:"FST_LIGHTMYREQUEST_DEP01",message:'You are accessing "request.connection", use "request.socket" instead.'});function rqt(t){return t.port?t.host:t.hostname+(t.protocol==="https:"?":443":":80")}var Z9=class extends eqt{constructor(e){super(),this.remoteAddress=e}};function Iwe(t){return new e(this);function e(r){cl.call(r,{...t,Request:void 0}),Object.assign(this,r);for(let n of Object.keys(cl.prototype))this.constructor.prototype[n]=cl.prototype[n];return ej.inherits(this.constructor,t.Request),this}}function cl(t){vwe.call(this,{autoDestroy:!1});let e=J7t(t.url||t.path,t.query);this.url=e.pathname+e.search,this.aborted=!1,this.httpVersionMajor=1,this.httpVersionMinor=1,this.httpVersion="1.1",this.method=t.method?t.method.toUpperCase():"GET",this.headers={},this.rawHeaders=[];let r=t.headers||{};for(let a in r){let o=a.toLowerCase();if((o==="user-agent"||o==="content-type")&&r[a]===void 0){this.headers[o]=void 0;continue}let c=r[a];z7t(c!==void 0,'invalid value "undefined" for header '+a),this.headers[o]=""+c}if("user-agent"in this.headers||(this.headers["user-agent"]="lightMyRequest"),this.headers.host=this.headers.host||t.authority||rqt(e),t.cookies){let{cookies:a}=t,o=Object.keys(a).map(c=>V7t.serialize(c,a[c]));this.headers.cookie&&o.unshift(this.headers.cookie),this.headers.cookie=o.join("; ")}this.socket=new Z9(t.remoteAddress||"127.0.0.1"),Object.defineProperty(this,"connection",{get(){return tqt(),this.socket},configurable:!0});let n=t.payload||t.body||null,s=n&&typeof n.resume=="function";if(X7t(n)){let a=Z7t(n);n=a.stream,s=!0,this.headers["content-type"]=a.contentType}n&&typeof n!="string"&&!s&&!Buffer.isBuffer(n)&&(n=JSON.stringify(n),"content-type"in this.headers||(this.headers["content-type"]="application/json")),n&&!s&&!Object.prototype.hasOwnProperty.call(this.headers,"content-length")&&(this.headers["content-length"]=(Buffer.isBuffer(n)?n.length:Buffer.byteLength(n)).toString());for(let a of Object.keys(this.headers))this.rawHeaders.push(a,this.headers[a]);this._lightMyRequest={payload:n,isDone:!1,simulate:t.simulate||{}};let i=t.signal;return i&&K7t(i,this),this}ej.inherits(cl,vwe);ej.inherits(Iwe,cl);cl.prototype.prepare=function(t){let e=this._lightMyRequest.payload;if(!e||typeof e.resume!="function")return t();let r=[];e.on("data",n=>r.push(Buffer.from(n))),e.on("end",()=>{let n=Buffer.concat(r);return this.headers["content-length"]=this.headers["content-length"]||""+n.length,this._lightMyRequest.payload=n,t()}),e.resume()};cl.prototype._read=function(t){setImmediate(()=>{if(this._lightMyRequest.isDone){this._lightMyRequest.simulate.end!==!1&&this.push(null);return}this._lightMyRequest.isDone=!0,this._lightMyRequest.payload&&(this._lightMyRequest.simulate.split?(this.push(this._lightMyRequest.payload.slice(0,1)),this.push(this._lightMyRequest.payload.slice(1))):this.push(this._lightMyRequest.payload)),this._lightMyRequest.simulate.error&&this.emit("error",new Error("Simulated")),this._lightMyRequest.simulate.close&&this.emit("close"),this._lightMyRequest.simulate.end!==!1&&this.push(null)})};cl.prototype.destroy=function(t){this.destroyed||this._lightMyRequest.isDone||(this.destroyed=!0,t&&(this._error=!0,process.nextTick(()=>this.emit("error",t))),process.nextTick(()=>this.emit("close")))};GP.exports=cl;GP.exports.Request=cl;GP.exports.CustomRequest=Iwe});var wwe=E((W4r,ES)=>{"use strict";var KP={decodeValues:!0,map:!1,silent:!1};function tj(t){return typeof t!="string"||t in{}}function rj(){return Object.create(null)}function nj(t){return typeof t=="string"&&!!t.trim()}function sj(t,e){var r=t.split(";").filter(nj),n=r.shift(),s=nqt(n),i=s.name,a=s.value;if(e=e?Object.assign({},KP,e):KP,tj(i))return null;try{a=e.decodeValues?decodeURIComponent(a):a}catch(c){console.error("set-cookie-parser: failed to decode cookie value. Set options.decodeValues=false to disable decoding.",c)}var o=rj();return o.name=i,o.value=a,r.forEach(function(c){var u=c.split("="),l=u.shift().trimLeft().toLowerCase();if(!tj(l)){var d=u.join("=");if(l==="expires")o.expires=new Date(d);else if(l==="max-age"){var f=parseInt(d,10);Number.isNaN(f)||(o.maxAge=f)}else l==="secure"?o.secure=!0:l==="httponly"?o.httpOnly=!0:l==="samesite"?o.sameSite=d:l==="partitioned"?o.partitioned=!0:l&&(o[l]=d)}}),o}function nqt(t){var e="",r="",n=t.split("=");return n.length>1?(e=n.shift(),r=n.join("=")):r=t,{name:e,value:r}}function Twe(t,e){if(e=e?Object.assign({},KP,e):KP,!t)return e.map?rj():[];if(t.headers)if(typeof t.headers.getSetCookie=="function")t=t.headers.getSetCookie();else if(t.headers["set-cookie"])t=t.headers["set-cookie"];else{var r=t.headers[Object.keys(t.headers).find(function(s){return s.toLowerCase()==="set-cookie"})];!r&&t.headers.cookie&&!e.silent&&console.warn("Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."),t=r}if(Array.isArray(t)||(t=[t]),e.map){var n=rj();return t.filter(nj).reduce(function(s,i){var a=sj(i,e);return a&&!tj(a.name)&&(s[a.name]=a),s},n)}else return t.filter(nj).map(function(s){return sj(s,e)}).filter(Boolean)}function sqt(t){if(Array.isArray(t))return t;if(typeof t!="string")return[];var e=[],r=0,n,s,i,a,o;function c(){for(;r<t.length&&/\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}ES.exports=Twe;ES.exports.parse=Twe;ES.exports.parseString=sj;ES.exports.splitCookiesString=sqt});var Owe=E(($4r,Nwe)=>{"use strict";var _S=require("node:http"),{Writable:iqt,Readable:aqt}=require("node:stream"),oqt=require("node:util"),cqt=wwe();function Hp(t,e,r){_S.ServerResponse.call(this,t),this._lightMyRequest={headers:null,trailers:{},payloadChunks:[]},this.setHeader("foo","bar"),this.removeHeader("foo"),this.assignSocket(lqt()),this._promiseCallback=typeof r=="function";let n=!1,s=a=>{if(n=!0,this._promiseCallback)return process.nextTick(()=>e(a));process.nextTick(()=>e(null,a))},i=a=>{if(!n){if(n=!0,this._promiseCallback)return process.nextTick(()=>r(a));process.nextTick(()=>e(a,null))}};this.once("finish",()=>{let a=uqt(this);a.raw.req=t,s(a)}),this.connection.once("error",i),this.once("error",i),this.once("close",i)}oqt.inherits(Hp,_S.ServerResponse);Hp.prototype.setTimeout=function(t,e){return this.timeoutHandle=setTimeout(()=>{this.emit("timeout")},t),this.on("timeout",e),this};Hp.prototype.writeHead=function(){let t=_S.ServerResponse.prototype.writeHead.apply(this,arguments);return Rwe(this),t};Hp.prototype.write=function(t,e,r){return this.timeoutHandle&&clearTimeout(this.timeoutHandle),_S.ServerResponse.prototype.write.call(this,t,e,r),this._lightMyRequest.payloadChunks.push(Buffer.from(t,e)),!0};Hp.prototype.end=function(t,e,r){t&&this.write(t,e),_S.ServerResponse.prototype.end.call(this,r),this.emit("finish"),this.destroy()};Hp.prototype.destroy=function(t){this.destroyed||(this.destroyed=!0,t&&process.nextTick(()=>this.emit("error",t)),process.nextTick(()=>this.emit("close")))};Hp.prototype.addTrailers=function(t){for(let e in t)this._lightMyRequest.trailers[e.toLowerCase().trim()]=t[e].toString().trim()};function uqt(t){t._lightMyRequest.headers===null&&Rwe(t),dqt(t);let e={raw:{res:t},headers:t._lightMyRequest.headers,statusCode:t.statusCode,statusMessage:t.statusMessage,trailers:{},get cookies(){return cqt.parse(this)}},r=Buffer.concat(t._lightMyRequest.payloadChunks);return e.rawPayload=r,e.payload=r.toString(),e.body=e.payload,e.trailers=t._lightMyRequest.trailers,e.json=function(){return JSON.parse(e.payload)},e.stream=function(){return aqt.from(t._lightMyRequest.payloadChunks)},e}function lqt(){return new iqt({write(t,e,r){setImmediate(r)}})}function dqt(t){let e=t._lightMyRequest.headers;for(let r of Object.keys(e)){let n=e[r];Array.isArray(n)?e[r]=n.map(s=>""+s):e[r]=""+n}}function Rwe(t){t._lightMyRequest.headers=Object.assign({},t.getHeaders()),["Date","Connection","Transfer-Encoding"].forEach(e=>{let r=new RegExp("\\r\\n"+e+": ([^\\r]*)\\r\\n"),n=t._header.match(r);n&&(t._lightMyRequest.headers[e.toLowerCase()]=n[1])})}Nwe.exports=Hp});var Pwe=E((F4r,ij)=>{"use strict";ij.exports=xs;ij.exports.default=xs;var fqt={type:"object",properties:{url:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},path:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},cookies:{type:"object",additionalProperties:!0},headers:{type:"object",additionalProperties:!0},query:{anyOf:[{type:"object",additionalProperties:!0},{type:"string"}]},simulate:{type:"object",properties:{end:{type:"boolean"},split:{type:"boolean"},error:{type:"boolean"},close:{type:"boolean"}}},authority:{type:"string"},remoteAddress:{type:"string"},method:{type:"string",enum:["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE","acl","bind","checkout","connect","copy","delete","get","head","link","lock","m-search","merge","mkactivity","mkcalendar","mkcol","move","notify","options","patch","post","propfind","proppatch","purge","put","rebind","report","search","source","subscribe","trace","unbind","unlink","unlock","unsubscribe"]},validate:{type:"boolean"}},additionalProperties:!0,oneOf:[{required:["url"]},{required:["path"]}]};function xs(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a,c=!1,u=null,l=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let x;if(t.url===void 0&&(x="url")){let v={instancePath:e,schemaPath:"#/oneOf/0/required",keyword:"required",params:{missingProperty:x},message:"must have required property '"+x+"'"};i===null?i=[v]:i.push(v),a++}}var f=l===a;f&&(c=!0,u=0);let d=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let x;if(t.path===void 0&&(x="path")){let v={instancePath:e,schemaPath:"#/oneOf/1/required",keyword:"required",params:{missingProperty:x},message:"must have required property '"+x+"'"};i===null?i=[v]:i.push(v),a++}}var f=d===a;if(f&&c?(c=!1,u=[u,1]):f&&(c=!0,u=1),c)a=o,i!==null&&(o?i.length=o:i=null);else{let x={instancePath:e,schemaPath:"#/oneOf",keyword:"oneOf",params:{passingSchemas:u},message:"must match exactly one schema in oneOf"};return i===null?i=[x]:i.push(x),a++,xs.errors=i,!1}if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){if(t.url!==void 0){let x=t.url,v=a,I=a,R=!1,w=null,N=a;if(typeof x!="string"){let B=typeof x,M;if(M===void 0)if(B=="number"||B=="boolean")M=""+x;else if(x===null)M="";else{let D={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[D]:i.push(D),a++}M!==void 0&&(x=M,t!==void 0&&(t.url=M))}var m=N===a;m&&(R=!0,w=0);let P=a;if(a===P)if(x&&typeof x=="object"&&!Array.isArray(x)){let B;if(x.pathname===void 0&&(B="pathname")){let M={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/required",keyword:"required",params:{missingProperty:B},message:"must have required property '"+B+"'"};i===null?i=[M]:i.push(M),a++}else{if(x.protocol!==void 0){let M=x.protocol,D=a;if(typeof M!="string"){let L=typeof M,Z;if(Z===void 0)if(L=="number"||L=="boolean")Z=""+M;else if(M===null)Z="";else{let W={instancePath:e+"/url/protocol",schemaPath:"#/properties/url/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[W]:i.push(W),a++}Z!==void 0&&(M=Z,x!==void 0&&(x.protocol=Z))}var p=D===a}else var p=!0;if(p){if(x.hostname!==void 0){let M=x.hostname,D=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let F={instancePath:e+"/url/hostname",schemaPath:"#/properties/url/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(M=W,x!==void 0&&(x.hostname=W))}var p=D===a}else var p=!0;if(p)if(x.pathname!==void 0){let M=x.pathname,D=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let F={instancePath:e+"/url/pathname",schemaPath:"#/properties/url/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(M=W,x!==void 0&&(x.pathname=W))}var p=D===a}else var p=!0}}}else{let B={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[B]:i.push(B),a++}var m=P===a;if(m&&R?(R=!1,w=[w,1]):m&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let B={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[B]:i.push(B),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.path!==void 0){let x=t.path,v=a,I=a,R=!1,w=null,N=a;if(typeof x!="string"){let M=typeof x,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+x;else if(x===null)D="";else{let L={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(x=D,t!==void 0&&(t.path=D))}var g=N===a;g&&(R=!0,w=0);let P=a;if(a===P)if(x&&typeof x=="object"&&!Array.isArray(x)){let M;if(x.pathname===void 0&&(M="pathname")){let D={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/required",keyword:"required",params:{missingProperty:M},message:"must have required property '"+M+"'"};i===null?i=[D]:i.push(D),a++}else{if(x.protocol!==void 0){let D=x.protocol,L=a;if(typeof D!="string"){let Z=typeof D,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+D;else if(D===null)W="";else{let F={instancePath:e+"/path/protocol",schemaPath:"#/properties/path/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(D=W,x!==void 0&&(x.protocol=W))}var A=L===a}else var A=!0;if(A){if(x.hostname!==void 0){let D=x.hostname,L=a;if(typeof D!="string"){let W=typeof D,F;if(F===void 0)if(W=="number"||W=="boolean")F=""+D;else if(D===null)F="";else{let K={instancePath:e+"/path/hostname",schemaPath:"#/properties/path/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[K]:i.push(K),a++}F!==void 0&&(D=F,x!==void 0&&(x.hostname=F))}var A=L===a}else var A=!0;if(A)if(x.pathname!==void 0){let D=x.pathname,L=a;if(typeof D!="string"){let W=typeof D,F;if(F===void 0)if(W=="number"||W=="boolean")F=""+D;else if(D===null)F="";else{let K={instancePath:e+"/path/pathname",schemaPath:"#/properties/path/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[K]:i.push(K),a++}F!==void 0&&(D=F,x!==void 0&&(x.pathname=F))}var A=L===a}else var A=!0}}}else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[M]:i.push(M),a++}var g=P===a;if(g&&R?(R=!1,w=[w,1]):g&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.cookies!==void 0){let x=t.cookies,v=a;if(a===v&&!(x&&typeof x=="object"&&!Array.isArray(x)))return xs.errors=[{instancePath:e+"/cookies",schemaPath:"#/properties/cookies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.headers!==void 0){let x=t.headers,v=a;if(a===v&&!(x&&typeof x=="object"&&!Array.isArray(x)))return xs.errors=[{instancePath:e+"/headers",schemaPath:"#/properties/headers/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.query!==void 0){let x=t.query,v=a,I=a,R=!1,w=a;if(a===w&&!(x&&typeof x=="object"&&!Array.isArray(x))){let P={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/0/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[P]:i.push(P),a++}var b=w===a;if(R=R||b,!R){let P=a;if(typeof x!="string"){let M=typeof x,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+x;else if(x===null)D="";else{let L={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(x=D,t!==void 0&&(t.query=D))}var b=P===a;R=R||b}if(R)a=I,i!==null&&(I?i.length=I:i=null);else{let P={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[P]:i.push(P),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.simulate!==void 0){let x=t.simulate,v=a;if(a===v)if(x&&typeof x=="object"&&!Array.isArray(x)){if(x.end!==void 0){let R=x.end,w=a;if(typeof R!="boolean"){let N;if(N===void 0)if(R==="false"||R===0||R===null)N=!1;else if(R==="true"||R===1)N=!0;else return xs.errors=[{instancePath:e+"/simulate/end",schemaPath:"#/properties/simulate/properties/end/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;N!==void 0&&(R=N,x!==void 0&&(x.end=N))}var y=w===a}else var y=!0;if(y){if(x.split!==void 0){let R=x.split,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/split",schemaPath:"#/properties/simulate/properties/split/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.split=P))}var y=w===a}else var y=!0;if(y){if(x.error!==void 0){let R=x.error,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/error",schemaPath:"#/properties/simulate/properties/error/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.error=P))}var y=w===a}else var y=!0;if(y)if(x.close!==void 0){let R=x.close,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/close",schemaPath:"#/properties/simulate/properties/close/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.close=P))}var y=w===a}else var y=!0}}}else return xs.errors=[{instancePath:e+"/simulate",schemaPath:"#/properties/simulate/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.authority!==void 0){let x=t.authority,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/authority",schemaPath:"#/properties/authority/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.authority=w))}var h=v===a}else var h=!0;if(h){if(t.remoteAddress!==void 0){let x=t.remoteAddress,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/remoteAddress",schemaPath:"#/properties/remoteAddress/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.remoteAddress=w))}var h=v===a}else var h=!0;if(h){if(t.method!==void 0){let x=t.method,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.method=w))}if(!(x==="ACL"||x==="BIND"||x==="CHECKOUT"||x==="CONNECT"||x==="COPY"||x==="DELETE"||x==="GET"||x==="HEAD"||x==="LINK"||x==="LOCK"||x==="M-SEARCH"||x==="MERGE"||x==="MKACTIVITY"||x==="MKCALENDAR"||x==="MKCOL"||x==="MOVE"||x==="NOTIFY"||x==="OPTIONS"||x==="PATCH"||x==="POST"||x==="PROPFIND"||x==="PROPPATCH"||x==="PURGE"||x==="PUT"||x==="REBIND"||x==="REPORT"||x==="SEARCH"||x==="SOURCE"||x==="SUBSCRIBE"||x==="TRACE"||x==="UNBIND"||x==="UNLINK"||x==="UNLOCK"||x==="UNSUBSCRIBE"||x==="acl"||x==="bind"||x==="checkout"||x==="connect"||x==="copy"||x==="delete"||x==="get"||x==="head"||x==="link"||x==="lock"||x==="m-search"||x==="merge"||x==="mkactivity"||x==="mkcalendar"||x==="mkcol"||x==="move"||x==="notify"||x==="options"||x==="patch"||x==="post"||x==="propfind"||x==="proppatch"||x==="purge"||x==="put"||x==="rebind"||x==="report"||x==="search"||x==="source"||x==="subscribe"||x==="trace"||x==="unbind"||x==="unlink"||x==="unlock"||x==="unsubscribe"))return xs.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/enum",keyword:"enum",params:{allowedValues:fqt.properties.method.enum},message:"must be equal to one of the allowed values"}],!1;var h=v===a}else var h=!0;if(h)if(t.validate!==void 0){let x=t.validate,v=a;if(typeof x!="boolean"){let R;if(R===void 0)if(x==="false"||x===0||x===null)R=!1;else if(x==="true"||x===1)R=!0;else return xs.errors=[{instancePath:e+"/validate",schemaPath:"#/properties/validate/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;R!==void 0&&(x=R,t!==void 0&&(t.validate=R))}var h=v===a}else var h=!0}}}}}}}}}else return xs.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return xs.errors=i,a===0}});var Bwe=E((U4r,vS)=>{"use strict";var pqt=require("node:assert"),aj=Cwe(),VP=Owe(),YP="The dispatch function has already been invoked",kwe=Pwe();function oj(t,e,r){return r===void 0?new SS(t,e):zP(t,e,r)}function Dwe(t,e,r,n){return r.once("error",function(s){this.destroyed&&n.destroy(s)}),r.once("close",function(){this.destroyed&&!this._error&&n.destroy()}),r.prepare(()=>t.call(e,r,n))}function zP(t,e,r){if(e=typeof e=="string"?{url:e}:e,e.validate!==!1&&(pqt(typeof t=="function","dispatchFunc should be a function"),!kwe(e)))throw new Error(kwe.errors.map(a=>a.message));let n=e.server||{},s=e.Request?aj.CustomRequest:aj;if(t.request&&t.request.app===t&&(Object.setPrototypeOf(Object.getPrototypeOf(t.request),s.prototype),Object.setPrototypeOf(Object.getPrototypeOf(t.response),VP.prototype)),typeof r=="function"){let i=new s(e),a=new VP(i,r);return Dwe(t,n,i,a)}else return new Promise((i,a)=>{let o=new s(e),c=new VP(o,i,a);Dwe(t,n,o,c)})}function SS(t,e){typeof e=="string"?this.option={url:e}:this.option=Object.assign({},e),this.dispatch=t,this._hasInvoked=!1,this._promise=null,this.option.autoStart!==!1&&process.nextTick(()=>{this._hasInvoked||this.end()})}var mqt=["delete","get","head","options","patch","post","put","trace"];mqt.forEach(t=>{SS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(YP);return this.option.url=e,this.option.method=t.toUpperCase(),this}});var hqt=["body","cookies","headers","payload","query"];hqt.forEach(t=>{SS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(YP);return this.option[t]=e,this}});SS.prototype.end=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(YP);if(this._hasInvoked=!0,typeof t=="function")zP(this.dispatch,this.option,t);else return this._promise=zP(this.dispatch,this.option),this._promise};Object.getOwnPropertyNames(Promise.prototype).forEach(t=>{t!=="constructor"&&(SS.prototype[t]=function(...e){if(!this._promise){if(this._hasInvoked===!0)throw new Error(YP);this._hasInvoked=!0,this._promise=zP(this.dispatch,this.option)}return this._promise[t](...e)})});function gqt(t){return t instanceof aj||t instanceof VP||t&&t.constructor&&t.constructor.name==="_CustomLMRRequest"}vS.exports=oj;vS.exports.default=oj;vS.exports.inject=oj;vS.exports.isInjection=gqt});var Ywe=E((q4r,ek)=>{"use strict";var Aqt="4.26.0",yqt=ffe(),cj=require("node:http"),IS,{kAvvioBoot:CS,kChildren:uj,kServerBindings:Lwe,kBodyLimit:xqt,kRoutePrefix:Mwe,kLogLevel:bqt,kLogSerializers:Eqt,kHooks:lj,kSchemaController:Qp,kRequestAcceptVersion:_qt,kReplySerializerDefault:Wwe,kContentTypeParser:Sqt,kReply:vqt,kRequest:Iqt,kFourOhFour:Cqt,kState:ps,kOptions:dj,kPluginNameChain:TS,kSchemaErrorFormatter:fj,kErrorHandler:JP,kKeepAliveConnections:pj,kChildLoggerFactory:mj,kGenReqId:hj}=Gs(),{createServer:Tqt,compileValidateHTTPVersion:wqt}=Bfe(),wS=EN(),XP=WN(),Rqt=$N(),{supportedMethods:Nqt}=B$(),nx=F$(),uh=z$(),$we=x9(),{Hooks:Oqt,hookRunnerApplication:Fwe,supportedHooks:gj}=cp(),{createLogger:Pqt,createChildLogger:Uwe,defaultChildLoggerFactory:kqt}=o1(),qwe=I9(),{getGenReqId:jwe,reqIdGenFactory:Hwe}=vP(),{buildRouting:Dqt,validateBodyLimitOption:Bqt}=zTe(),Lqt=rwe(),zwe=iwe(),Mqt=mwe(),{FSTDEP009:Wqt}=od(),$qt=gwe(),{appendStackTrace:Fqt,AVVIO_ERRORS_MAP:Qwe,...lh}=Ci(),{defaultInitOptions:Ha}=zwe,{FST_ERR_ASYNC_CONSTRAINT:Uqt,FST_ERR_BAD_URL:qqt,FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:jqt,FST_ERR_OPTIONS_NOT_OBJ:Hqt,FST_ERR_QSP_NOT_FN:Qqt,FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:Gqt,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:Kqt,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:Vqt,FST_ERR_VERSION_CONSTRAINT_NOT_STR:zqt,FST_ERR_INSTANCE_ALREADY_LISTENING:Yqt,FST_ERR_REOPENED_CLOSE_SERVER:Jqt,FST_ERR_ROUTE_REWRITE_NOT_STR:Xqt,FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:Gwe}=lh,{buildErrorHandler:Kwe}=F1();function Zqt(t){let e={};return["errorHandler","logLevel","logSerializers"].concat(gj).forEach(n=>{e[n]=t.store[n]}),Object.assign({},e)}function ZP(t){if(t=t||{},typeof t!="object")throw new Hqt;if(t.querystringParser&&typeof t.querystringParser!="function")throw new Qqt(typeof t.querystringParser);if(t.schemaController&&t.schemaController.bucket&&typeof t.schemaController.bucket!="function")throw new Gqt(typeof t.schemaController.bucket);Bqt(t.bodyLimit);let e=t.requestIdHeader===!1?!1:(t.requestIdHeader||Ha.requestIdHeader).toLowerCase(),r=Hwe(e,t.genReqId),n=t.requestIdLogLabel||"reqId",s=t.bodyLimit||Ha.bodyLimit,i=t.disableRequestLogging||!1,a=Object.assign({customOptions:{},plugins:[]},t.ajv),o=t.frameworkErrors;if(!a.customOptions||Object.prototype.toString.call(a.customOptions)!=="[object Object]")throw new Kqt(typeof a.customOptions);if(!a.plugins||!Array.isArray(a.plugins))throw new Vqt(typeof a.plugins);let{logger:c,hasLogger:u}=Pqt(t);t.connectionTimeout=t.connectionTimeout||Ha.connectionTimeout,t.keepAliveTimeout=t.keepAliveTimeout||Ha.keepAliveTimeout,t.maxRequestsPerSocket=t.maxRequestsPerSocket||Ha.maxRequestsPerSocket,t.requestTimeout=t.requestTimeout||Ha.requestTimeout,t.logger=c,t.requestIdHeader=e,t.requestIdLogLabel=n,t.disableRequestLogging=i,t.ajv=a,t.clientErrorHandler=t.clientErrorHandler||F;let l=zwe(t);t.exposeHeadRoutes=l.exposeHeadRoutes;let d=t.constraints;t.versioning&&(Wqt(),d={...d,version:{name:"version",mustMatchWhenDerived:!0,storage:t.versioning.storage,deriveConstraint:t.versioning.deriveVersion,validate(q){if(typeof q!="string")throw new zqt}}});let f=Dqt({config:{defaultRoute:K,onBadUrl:j,constraints:d,ignoreTrailingSlash:t.ignoreTrailingSlash||Ha.ignoreTrailingSlash,ignoreDuplicateSlashes:t.ignoreDuplicateSlashes||Ha.ignoreDuplicateSlashes,maxParamLength:t.maxParamLength||Ha.maxParamLength,caseSensitive:t.caseSensitive,allowUnsafeRegex:t.allowUnsafeRegex||Ha.allowUnsafeRegex,buildPrettyMeta:Zqt,querystringParser:t.querystringParser,useSemicolonDelimiter:t.useSemicolonDelimiter??Ha.useSemicolonDelimiter}}),p=Lqt(t),m=G(f,t);t.http2SessionTimeout=l.http2SessionTimeout;let{server:h,listen:A}=Tqt(t,m),g=typeof h.closeAllConnections=="function",b=typeof h.closeIdleConnections=="function",y=t.forceCloseConnections;if(y==="idle"&&!b)throw new jqt;typeof y!="boolean"&&(y=b?"idle":!1);let x=!g&&y===!0?new Set:$qt(),v=wS.setupResponseListeners,I=$we.buildSchemaController(null,t.schemaController),R={[ps]:{listening:!1,closing:!1,started:!1,ready:!1,booting:!1,readyPromise:null},[pj]:x,[dj]:t,[uj]:[],[Lwe]:[],[xqt]:s,[Mwe]:"",[bqt]:"",[Eqt]:null,[lj]:new Oqt,[Qp]:I,[fj]:null,[JP]:Kwe(),[mj]:kqt,[Wwe]:null,[Sqt]:new uh(s,t.onProtoPoisoning||Ha.onProtoPoisoning,t.onConstructorPoisoning||Ha.onConstructorPoisoning),[vqt]:wS.buildReply(wS),[Iqt]:XP.buildRequest(XP,t.trustProxy),[Cqt]:p,[qwe.kRegisteredPlugins]:[],[TS]:["fastify"],[CS]:null,[hj]:r,routing:m,getDefaultRoute:f.getDefaultRoute.bind(f),setDefaultRoute:f.setDefaultRoute.bind(f),delete:function(H,ee,ne){return f.prepareRoute.call(this,{method:"DELETE",url:H,options:ee,handler:ne})},get:function(H,ee,ne){return f.prepareRoute.call(this,{method:"GET",url:H,options:ee,handler:ne})},head:function(H,ee,ne){return f.prepareRoute.call(this,{method:"HEAD",url:H,options:ee,handler:ne})},patch:function(H,ee,ne){return f.prepareRoute.call(this,{method:"PATCH",url:H,options:ee,handler:ne})},post:function(H,ee,ne){return f.prepareRoute.call(this,{method:"POST",url:H,options:ee,handler:ne})},put:function(H,ee,ne){return f.prepareRoute.call(this,{method:"PUT",url:H,options:ee,handler:ne})},options:function(H,ee,ne){return f.prepareRoute.call(this,{method:"OPTIONS",url:H,options:ee,handler:ne})},all:function(H,ee,ne){return f.prepareRoute.call(this,{method:Nqt,url:H,options:ee,handler:ne})},route:function(H){return f.route.call(this,{options:H})},hasRoute:function(H){return f.hasRoute.call(this,{options:H})},findRoute:function(H){return f.findRoute(H)},log:c,withTypeProvider:L,addHook:Z,addSchema:W,getSchema:I.getSchema.bind(I),getSchemas:I.getSchemas.bind(I),setValidatorCompiler:oe,setSerializerCompiler:Ie,setSchemaController:we,setReplySerializer:qe,setSchemaErrorFormatter:ue,setGenReqId:V,addContentTypeParser:uh.helpers.addContentTypeParser,hasContentTypeParser:uh.helpers.hasContentTypeParser,getDefaultJsonParser:uh.defaultParsers.getDefaultJsonParser,defaultTextParser:uh.defaultParsers.defaultTextParser,removeContentTypeParser:uh.helpers.removeContentTypeParser,removeAllContentTypeParsers:uh.helpers.removeAllContentTypeParsers,register:null,after:null,ready:null,onClose:null,close:null,printPlugins:null,hasPlugin:function(q){return this[qwe.kRegisteredPlugins].includes(q)||this[TS].includes(q)},listen:A,server:h,addresses:function(){let q=this[Lwe].map(H=>H.address());return q.push(this.server.address()),q.filter(H=>H)},decorate:nx.add,hasDecorator:nx.exist,decorateReply:nx.decorateReply,decorateRequest:nx.decorateRequest,hasRequestDecorator:nx.existRequest,hasReplyDecorator:nx.existReply,inject:M,printRoutes:U,setNotFoundHandler:se,setErrorHandler:Fe,setChildLoggerFactory:_e,initialConfig:l,addConstraintStrategy:f.addConstraintStrategy.bind(f),hasConstraintStrategy:f.hasConstraintStrategy.bind(f)};Object.defineProperties(R,{listeningOrigin:{get(){let q=this.addresses().slice(-1).pop();if(typeof q=="string")return q;let H=q.family==="IPv6"?`[${q.address}]`:q.address;return`${this[dj].https?"https":"http"}://${H}:${q.port}`}},pluginName:{configurable:!0,get(){return this[TS].length>1?this[TS].join(" -> "):this[TS][0]}},prefix:{configurable:!0,get(){return this[Mwe]}},validatorCompiler:{configurable:!0,get(){return this[Qp].getValidatorCompiler()}},serializerCompiler:{configurable:!0,get(){return this[Qp].getSerializerCompiler()}},childLoggerFactory:{configurable:!0,get(){return this[mj]}},version:{configurable:!0,get(){return Aqt}},errorHandler:{configurable:!0,get(){return this[JP].func}},genReqId:{configurable:!0,get(){return this[hj]}}}),t.schemaErrorFormatter&&(Vwe(t.schemaErrorFormatter),R[fj]=t.schemaErrorFormatter.bind(R));let w=Number(t.pluginTimeout),N=yqt(R,{autostart:!1,timeout:isNaN(w)===!1?w:Ha.pluginTimeout,expose:{use:"register"}});N.override=Mqt,N.on("start",()=>R[ps].started=!0),R[CS]=R.ready,R.ready=D,R.printPlugins=N.prettyPrint.bind(N),N.once("preReady",()=>{R.onClose((q,H)=>{R[ps].closing=!0,f.closeRoutes(),Fwe("preClose",R[CS],R,function(){if(R[ps].listening){if(y==="idle")q.server.closeIdleConnections();else if(g&&y)q.server.closeAllConnections();else if(y===!0)for(let ee of R[pj])ee.destroy(),R[pj].delete(ee)}!t.serverFactory||R[ps].listening?q.server.close(function(ee){ee&&ee.code!=="ERR_SERVER_NOT_RUNNING"?H(null):H()}):process.nextTick(H,null)})})});let P=new Rqt({server:R,config:{}});R.setNotFoundHandler(),p.arrange404(R),f.setup(t,{avvio:N,fourOhFour:p,logger:c,hasLogger:u,setupResponseListeners:v,throwIfAlreadyStarted:B,validateHTTPVersion:wqt(t),keepAliveConnections:x}),h.on("clientError",t.clientErrorHandler.bind(R));try{let H=require("node:diagnostics_channel").channel("fastify.initialization");H.hasSubscribers&&H.publish({fastify:R})}catch{}return"asyncDispose"in Symbol&&(R[Symbol.asyncDispose]=function(){return R.close()}),R;function B(q){if(R[ps].started)throw new Yqt(q)}function M(q,H){if(IS===void 0&&(IS=Bwe()),R[ps].started){if(R[ps].closing){let ee=new Jqt;if(H){H(ee);return}else return Promise.reject(ee)}return IS(m,q,H)}if(H)this.ready(ee=>{ee?H(ee,null):IS(m,q,H)});else return IS((ee,ne)=>{this.ready(function(re){if(re){ne.emit("error",re);return}m(ee,ne)})},q)}function D(q){if(this[ps].readyPromise!==null){if(q!=null){this[ps].readyPromise.then(()=>q(null,R),q);return}return this[ps].readyPromise}let H,ee;if(process.nextTick(ne),this[ps].readyPromise=new Promise(function(X,ie){H=X,ee=ie}),q)this[ps].readyPromise.then(()=>q(null,R),q);else return this[ps].readyPromise;function ne(){R[CS]((X,ie)=>{X||R[ps].started||R[ps].ready||R[ps].booting?re(X):(R[ps].booting=!0,Fwe("onReady",R[CS],R,re)),ie()})}function re(X){if(X=X!=null&&Qwe[X.code]!=null?Fqt(X,new Qwe[X.code](X.message)):X,X)return ee(X);H(R),R[ps].booting=!1,R[ps].ready=!0,R[ps].promise=null}}function L(){return this}function Z(q,H){if(B('Cannot call "addHook"!'),H==null)throw new lh.FST_ERR_HOOK_INVALID_HANDLER(q,H);if(q==="onSend"||q==="preSerialization"||q==="onError"||q==="preParsing"){if(H.constructor.name==="AsyncFunction"&&H.length===4)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onReady"||q==="onListen"){if(H.constructor.name==="AsyncFunction"&&H.length!==0)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onRequestAbort"){if(H.constructor.name==="AsyncFunction"&&H.length!==1)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(H.constructor.name==="AsyncFunction"&&H.length===3)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER;return q==="onClose"?this.onClose(H):q==="onReady"||q==="onListen"||q==="onRoute"?this[lj].add(q,H):this.after((ne,re)=>{ee.call(this,q,H),re(ne)}),this;function ee(ne,re){this[lj].add(ne,re),this[uj].forEach(X=>ee.call(X,ne,re))}}function W(q){return B('Cannot call "addSchema"!'),this[Qp].add(q),this[uj].forEach(H=>H.addSchema(q)),this}function F(q,H){if(q.code==="ECONNRESET"||H.destroyed)return;let ee,ne,re,X;q.code==="ERR_HTTP_REQUEST_TIMEOUT"?(ne="408",re=cj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Timeout","statusCode":408}`,X="timeout"):q.code==="HPE_HEADER_OVERFLOW"?(ne="431",re=cj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Exceeded maximum allowed HTTP header size","statusCode":431}`,X="header_overflow"):(ne="400",re=cj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Error","statusCode":400}`,X="error"),this.log.trace({err:q},`client ${X}`),H.writable&&H.write(`HTTP/1.1 ${ne} ${re}\r
Content-Length: ${ee.length}\r
Content-Type: application/json\r
\r
${ee}`),H.destroy(q)}function K(q,H){q.headers["accept-version"]!==void 0&&(q.headers[_qt]=q.headers["accept-version"],q.headers["accept-version"]=void 0),p.router.lookup(q,H)}function j(q,H,ee){if(o){let re=jwe(P.server,H),X=Uwe(P,c,H,re),ie=new XP(re,null,H,null,X,P),ce=new wS(ee,ie,X);return i===!1&&X.info({req:ie},"incoming request"),o(new qqt(q),ie,ce)}let ne=`{"error":"Bad Request","code":"FST_ERR_BAD_URL","message":"'${q}' is not a valid url component","statusCode":400}`;ee.writeHead(400,{"Content-Type":"application/json","Content-Length":ne.length}),ee.end(ne)}function J(q,H,ee){if(q!==!1)return function(re){if(re){if(o){let ie=jwe(P.server,H),ce=Uwe(P,c,H,ie),fe=new XP(ie,null,H,null,ce,P),Ne=new wS(ee,fe,ce);return i===!1&&ce.info({req:fe},"incoming request"),o(new Uqt,fe,Ne)}let X='{"error":"Internal Server Error","message":"Unexpected error from async constraint","statusCode":500}';ee.writeHead(500,{"Content-Type":"application/json","Content-Length":X.length}),ee.end(X)}}}function se(q,H){return B('Cannot call "setNotFoundHandler"!'),p.setNotFoundHandler.call(this,q,H,N,f.routeHandler),this}function oe(q){return B('Cannot call "setValidatorCompiler"!'),this[Qp].setValidatorCompiler(q),this}function ue(q){return B('Cannot call "setSchemaErrorFormatter"!'),Vwe(q),this[fj]=q.bind(this),this}function Ie(q){return B('Cannot call "setSerializerCompiler"!'),this[Qp].setSerializerCompiler(q),this}function we(q){B('Cannot call "setSchemaController"!');let H=this[Qp],ee=$we.buildSchemaController(H,Object.assign({},H.opts,q));return this[Qp]=ee,this.getSchema=ee.getSchema.bind(ee),this.getSchemas=ee.getSchemas.bind(ee),this}function qe(q){return B('Cannot call "setReplySerializer"!'),this[Wwe]=q,this}function Fe(q){return B('Cannot call "setErrorHandler"!'),this[JP]=Kwe(this[JP],q.bind(this)),this}function _e(q){return B('Cannot call "setChildLoggerFactory"!'),this[mj]=q,this}function U(q={}){return q.includeMeta=q.includeHooks?q.includeMeta?gj.concat(q.includeMeta):gj:q.includeMeta,f.printRoutes(q)}function G(q,{rewriteUrl:H,logger:ee}){let ne;return function(X,ie){if(ne===void 0&&(ne=q.isAsyncConstraint()),H){X.originalUrl=X.url;let ce=H.call(R,X);if(typeof ce=="string")X.url=ce;else{let fe=new Xqt(X.url,typeof ce);X.destroy(fe)}}q.routing(X,ie,J(ne,X,ie))}}function V(q){return B('Cannot call "setGenReqId"!'),this[hj]=Hwe(this[dj].requestIdHeader,q),this}}ZP.errorCodes=lh;function Vwe(t){if(typeof t!="function")throw new Gwe(typeof t);if(t.constructor.name==="AsyncFunction")throw new Gwe("AsyncFunction")}ek.exports=ZP;ek.exports.fastify=ZP;ek.exports.default=ZP});var l2e=E((V4r,u2e)=>{var c2e=require("stream").Stream,D9t=require("util");u2e.exports=ru;function ru(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}D9t.inherits(ru,c2e);ru.create=function(t,e){var r=new this;e=e||{};for(var n in e)r[n]=e[n];r.source=t;var s=t.emit;return t.emit=function(){return r._handleEmit(arguments),s.apply(t,arguments)},t.on("error",function(){}),r.pauseStream&&t.pause(),r};Object.defineProperty(ru.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});ru.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};ru.prototype.resume=function(){this._released||this.release(),this.source.resume()};ru.prototype.pause=function(){this.source.pause()};ru.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(t){this.emit.apply(this,t)}.bind(this)),this._bufferedEvents=[]};ru.prototype.pipe=function(){var t=c2e.prototype.pipe.apply(this,arguments);return this.resume(),t};ru.prototype._handleEmit=function(t){if(this._released){this.emit.apply(this,t);return}t[0]==="data"&&(this.dataSize+=t[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(t)};ru.prototype._checkIfMaxDataSizeExceeded=function(){if(!this._maxDataSizeExceeded&&!(this.dataSize<=this.maxDataSize)){this._maxDataSizeExceeded=!0;var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(t))}}});var m2e=E((z4r,p2e)=>{var B9t=require("util"),f2e=require("stream").Stream,d2e=l2e();p2e.exports=zn;function zn(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2*1024*1024,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}B9t.inherits(zn,f2e);zn.create=function(t){var e=new this;t=t||{};for(var r in t)e[r]=t[r];return e};zn.isStreamLike=function(t){return typeof t!="function"&&typeof t!="string"&&typeof t!="boolean"&&typeof t!="number"&&!Buffer.isBuffer(t)};zn.prototype.append=function(t){var e=zn.isStreamLike(t);if(e){if(!(t instanceof d2e)){var r=d2e.create(t,{maxDataSize:1/0,pauseStream:this.pauseStreams});t.on("data",this._checkDataSize.bind(this)),t=r}this._handleErrors(t),this.pauseStreams&&t.pause()}return this._streams.push(t),this};zn.prototype.pipe=function(t,e){return f2e.prototype.pipe.call(this,t,e),this.resume(),t};zn.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop){this._pendingNext=!0;return}this._insideLoop=!0;try{do this._pendingNext=!1,this._realGetNext();while(this._pendingNext)}finally{this._insideLoop=!1}};zn.prototype._realGetNext=function(){var t=this._streams.shift();if(typeof t>"u"){this.end();return}if(typeof t!="function"){this._pipeNext(t);return}var e=t;e(function(r){var n=zn.isStreamLike(r);n&&(r.on("data",this._checkDataSize.bind(this)),this._handleErrors(r)),this._pipeNext(r)}.bind(this))};zn.prototype._pipeNext=function(t){this._currentStream=t;var e=zn.isStreamLike(t);if(e){t.on("end",this._getNext.bind(this)),t.pipe(this,{end:!1});return}var r=t;this.write(r),this._getNext()};zn.prototype._handleErrors=function(t){var e=this;t.on("error",function(r){e._emitError(r)})};zn.prototype.write=function(t){this.emit("data",t)};zn.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};zn.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&typeof this._currentStream.resume=="function"&&this._currentStream.resume(),this.emit("resume")};zn.prototype.end=function(){this._reset(),this.emit("end")};zn.prototype.destroy=function(){this._reset(),this.emit("close")};zn.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};zn.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(t))}};zn.prototype._updateDataSize=function(){this.dataSize=0;var t=this;this._streams.forEach(function(e){e.dataSize&&(t.dataSize+=e.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)};zn.prototype._emitError=function(t){this._reset(),this.emit("error",t)}});var h2e=E((Y4r,L9t)=>{L9t.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var A2e=E((J4r,g2e)=>{g2e.exports=h2e()});var b2e=E(Qa=>{"use strict";var ik=A2e(),M9t=require("path").extname,y2e=/^\s*([^;\s]*)(?:;|\s|$)/,W9t=/^text\//i;Qa.charset=x2e;Qa.charsets={lookup:x2e};Qa.contentType=$9t;Qa.extension=F9t;Qa.extensions=Object.create(null);Qa.lookup=U9t;Qa.types=Object.create(null);q9t(Qa.extensions,Qa.types);function x2e(t){if(!t||typeof t!="string")return!1;var e=y2e.exec(t),r=e&&ik[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&W9t.test(e[1])?"UTF-8":!1}function $9t(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?Qa.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=Qa.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function F9t(t){if(!t||typeof t!="string")return!1;var e=y2e.exec(t),r=e&&Qa.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function U9t(t){if(!t||typeof t!="string")return!1;var e=M9t("x."+t).toLowerCase().substr(1);return e&&Qa.types[e]||!1}function q9t(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(ik).forEach(function(s){var i=ik[s],a=i.extensions;if(!(!a||!a.length)){t[s]=a;for(var o=0;o<a.length;o++){var c=a[o];if(e[c]){var u=r.indexOf(ik[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 _2e=E((Z4r,E2e)=>{E2e.exports=j9t;function j9t(t){var e=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;e?e(t):setTimeout(t,0)}});var bj=E((eMr,v2e)=>{var S2e=_2e();v2e.exports=H9t;function H9t(t){var e=!1;return S2e(function(){e=!0}),function(n,s){e?t(n,s):S2e(function(){t(n,s)})}}});var Ej=E((tMr,I2e)=>{I2e.exports=Q9t;function Q9t(t){Object.keys(t.jobs).forEach(G9t.bind(t)),t.jobs={}}function G9t(t){typeof this.jobs[t]=="function"&&this.jobs[t]()}});var _j=E((rMr,T2e)=>{var C2e=bj(),K9t=Ej();T2e.exports=V9t;function V9t(t,e,r,n){var s=r.keyedList?r.keyedList[r.index]:r.index;r.jobs[s]=z9t(e,s,t[s],function(i,a){s in r.jobs&&(delete r.jobs[s],i?K9t(r):r.results[s]=a,n(i,r.results))})}function z9t(t,e,r,n){var s;return t.length==2?s=t(r,C2e(n)):s=t(r,e,C2e(n)),s}});var Sj=E((nMr,w2e)=>{w2e.exports=Y9t;function Y9t(t,e){var r=!Array.isArray(t),n={index:0,keyedList:r||e?Object.keys(t):null,jobs:{},results:r?{}:[],size:r?Object.keys(t).length:t.length};return e&&n.keyedList.sort(r?e:function(s,i){return e(t[s],t[i])}),n}});var vj=E((sMr,R2e)=>{var J9t=Ej(),X9t=bj();R2e.exports=Z9t;function Z9t(t){Object.keys(this.jobs).length&&(this.index=this.size,J9t(this),X9t(t)(null,this.results))}});var O2e=E((iMr,N2e)=>{var ejt=_j(),tjt=Sj(),rjt=vj();N2e.exports=njt;function njt(t,e,r){for(var n=tjt(t);n.index<(n.keyedList||t).length;)ejt(t,e,n,function(s,i){if(s){r(s,i);return}if(Object.keys(n.jobs).length===0){r(null,n.results);return}}),n.index++;return rjt.bind(n,r)}});var Ij=E((aMr,ak)=>{var P2e=_j(),sjt=Sj(),ijt=vj();ak.exports=ajt;ak.exports.ascending=k2e;ak.exports.descending=ojt;function ajt(t,e,r,n){var s=sjt(t,r);return P2e(t,e,s,function i(a,o){if(a){n(a,o);return}if(s.index++,s.index<(s.keyedList||t).length){P2e(t,e,s,i);return}n(null,s.results)}),ijt.bind(s,n)}function k2e(t,e){return t<e?-1:t>e?1:0}function ojt(t,e){return-1*k2e(t,e)}});var B2e=E((oMr,D2e)=>{var cjt=Ij();D2e.exports=ujt;function ujt(t,e,r){return cjt(t,e,null,r)}});var M2e=E((cMr,L2e)=>{L2e.exports={parallel:O2e(),serial:B2e(),serialOrdered:Ij()}});var Cj=E((uMr,W2e)=>{"use strict";W2e.exports=Object});var F2e=E((lMr,$2e)=>{"use strict";$2e.exports=Error});var q2e=E((dMr,U2e)=>{"use strict";U2e.exports=EvalError});var H2e=E((fMr,j2e)=>{"use strict";j2e.exports=RangeError});var G2e=E((pMr,Q2e)=>{"use strict";Q2e.exports=ReferenceError});var V2e=E((mMr,K2e)=>{"use strict";K2e.exports=SyntaxError});var Gp=E((hMr,z2e)=>{"use strict";z2e.exports=TypeError});var J2e=E((gMr,Y2e)=>{"use strict";Y2e.exports=URIError});var Z2e=E((AMr,X2e)=>{"use strict";X2e.exports=Math.abs});var tRe=E((yMr,eRe)=>{"use strict";eRe.exports=Math.floor});var nRe=E((xMr,rRe)=>{"use strict";rRe.exports=Math.max});var iRe=E((bMr,sRe)=>{"use strict";sRe.exports=Math.min});var oRe=E((EMr,aRe)=>{"use strict";aRe.exports=Math.pow});var uRe=E((_Mr,cRe)=>{"use strict";cRe.exports=Math.round});var dRe=E((SMr,lRe)=>{"use strict";lRe.exports=Number.isNaN||function(e){return e!==e}});var pRe=E((vMr,fRe)=>{"use strict";var ljt=dRe();fRe.exports=function(e){return ljt(e)||e===0?e:e<0?-1:1}});var hRe=E((IMr,mRe)=>{"use strict";mRe.exports=Object.getOwnPropertyDescriptor});var Tj=E((CMr,gRe)=>{"use strict";var ok=hRe();if(ok)try{ok([],"length")}catch{ok=null}gRe.exports=ok});var yRe=E((TMr,ARe)=>{"use strict";var ck=Object.defineProperty||!1;if(ck)try{ck({},"a",{value:1})}catch{ck=!1}ARe.exports=ck});var wj=E((wMr,xRe)=>{"use strict";xRe.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var s=42;e[r]=s;for(var i in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var a=Object.getOwnPropertySymbols(e);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(e,r);if(o.value!==s||o.enumerable!==!0)return!1}return!0}});var _Re=E((RMr,ERe)=>{"use strict";var bRe=typeof Symbol<"u"&&Symbol,djt=wj();ERe.exports=function(){return typeof bRe!="function"||typeof Symbol!="function"||typeof bRe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:djt()}});var Rj=E((NMr,SRe)=>{"use strict";SRe.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var Nj=E((OMr,vRe)=>{"use strict";var fjt=Cj();vRe.exports=fjt.getPrototypeOf||null});var TRe=E((PMr,CRe)=>{"use strict";var pjt="Function.prototype.bind called on incompatible ",mjt=Object.prototype.toString,hjt=Math.max,gjt="[object Function]",IRe=function(e,r){for(var n=[],s=0;s<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},Ajt=function(e,r){for(var n=[],s=r||0,i=0;s<e.length;s+=1,i+=1)n[i]=e[s];return n},yjt=function(t,e){for(var r="",n=0;n<t.length;n+=1)r+=t[n],n+1<t.length&&(r+=e);return r};CRe.exports=function(e){var r=this;if(typeof r!="function"||mjt.apply(r)!==gjt)throw new TypeError(pjt+r);for(var n=Ajt(arguments,1),s,i=function(){if(this instanceof s){var l=r.apply(this,IRe(n,arguments));return Object(l)===l?l:this}return r.apply(e,IRe(n,arguments))},a=hjt(0,r.length-n.length),o=[],c=0;c<a;c++)o[c]="$"+c;if(s=Function("binder","return function ("+yjt(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 PS=E((kMr,wRe)=>{"use strict";var xjt=TRe();wRe.exports=Function.prototype.bind||xjt});var uk=E((DMr,RRe)=>{"use strict";RRe.exports=Function.prototype.call});var Oj=E((BMr,NRe)=>{"use strict";NRe.exports=Function.prototype.apply});var PRe=E((LMr,ORe)=>{"use strict";ORe.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var DRe=E((MMr,kRe)=>{"use strict";var bjt=PS(),Ejt=Oj(),_jt=uk(),Sjt=PRe();kRe.exports=Sjt||bjt.call(_jt,Ejt)});var Pj=E((WMr,BRe)=>{"use strict";var vjt=PS(),Ijt=Gp(),Cjt=uk(),Tjt=DRe();BRe.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new Ijt("a function is required");return Tjt(vjt,Cjt,e)}});var URe=E(($Mr,FRe)=>{"use strict";var wjt=Pj(),LRe=Tj(),WRe;try{WRe=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var kj=!!WRe&&LRe&&LRe(Object.prototype,"__proto__"),$Re=Object,MRe=$Re.getPrototypeOf;FRe.exports=kj&&typeof kj.get=="function"?wjt([kj.get]):typeof MRe=="function"?function(e){return MRe(e==null?e:$Re(e))}:!1});var GRe=E((FMr,QRe)=>{"use strict";var qRe=Rj(),jRe=Nj(),HRe=URe();QRe.exports=qRe?function(e){return qRe(e)}:jRe?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return jRe(e)}:HRe?function(e){return HRe(e)}:null});var lk=E((UMr,KRe)=>{"use strict";var Rjt=Function.prototype.call,Njt=Object.prototype.hasOwnProperty,Ojt=PS();KRe.exports=Ojt.call(Rjt,Njt)});var LS=E((qMr,ZRe)=>{"use strict";var cr,Pjt=Cj(),kjt=F2e(),Djt=q2e(),Bjt=H2e(),Ljt=G2e(),ux=V2e(),cx=Gp(),Mjt=J2e(),Wjt=Z2e(),$jt=tRe(),Fjt=nRe(),Ujt=iRe(),qjt=oRe(),jjt=uRe(),Hjt=pRe(),JRe=Function,Dj=function(t){try{return JRe('"use strict"; return ('+t+").constructor;")()}catch{}},kS=Tj(),Qjt=yRe(),Bj=function(){throw new cx},Gjt=kS?function(){try{return arguments.callee,Bj}catch{try{return kS(arguments,"callee").get}catch{return Bj}}}():Bj,ax=_Re()(),Vs=GRe(),Kjt=Nj(),Vjt=Rj(),XRe=Oj(),DS=uk(),ox={},zjt=typeof Uint8Array>"u"||!Vs?cr:Vs(Uint8Array),dh={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?cr:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?cr:ArrayBuffer,"%ArrayIteratorPrototype%":ax&&Vs?Vs([][Symbol.iterator]()):cr,"%AsyncFromSyncIteratorPrototype%":cr,"%AsyncFunction%":ox,"%AsyncGenerator%":ox,"%AsyncGeneratorFunction%":ox,"%AsyncIteratorPrototype%":ox,"%Atomics%":typeof Atomics>"u"?cr:Atomics,"%BigInt%":typeof BigInt>"u"?cr:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?cr:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?cr:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?cr:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":kjt,"%eval%":eval,"%EvalError%":Djt,"%Float16Array%":typeof Float16Array>"u"?cr:Float16Array,"%Float32Array%":typeof Float32Array>"u"?cr:Float32Array,"%Float64Array%":typeof Float64Array>"u"?cr:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?cr:FinalizationRegistry,"%Function%":JRe,"%GeneratorFunction%":ox,"%Int8Array%":typeof Int8Array>"u"?cr:Int8Array,"%Int16Array%":typeof Int16Array>"u"?cr:Int16Array,"%Int32Array%":typeof Int32Array>"u"?cr:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":ax&&Vs?Vs(Vs([][Symbol.iterator]())):cr,"%JSON%":typeof JSON=="object"?JSON:cr,"%Map%":typeof Map>"u"?cr:Map,"%MapIteratorPrototype%":typeof Map>"u"||!ax||!Vs?cr:Vs(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Pjt,"%Object.getOwnPropertyDescriptor%":kS,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?cr:Promise,"%Proxy%":typeof Proxy>"u"?cr:Proxy,"%RangeError%":Bjt,"%ReferenceError%":Ljt,"%Reflect%":typeof Reflect>"u"?cr:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?cr:Set,"%SetIteratorPrototype%":typeof Set>"u"||!ax||!Vs?cr:Vs(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?cr:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":ax&&Vs?Vs(""[Symbol.iterator]()):cr,"%Symbol%":ax?Symbol:cr,"%SyntaxError%":ux,"%ThrowTypeError%":Gjt,"%TypedArray%":zjt,"%TypeError%":cx,"%Uint8Array%":typeof Uint8Array>"u"?cr:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?cr:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?cr:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?cr:Uint32Array,"%URIError%":Mjt,"%WeakMap%":typeof WeakMap>"u"?cr:WeakMap,"%WeakRef%":typeof WeakRef>"u"?cr:WeakRef,"%WeakSet%":typeof WeakSet>"u"?cr:WeakSet,"%Function.prototype.call%":DS,"%Function.prototype.apply%":XRe,"%Object.defineProperty%":Qjt,"%Object.getPrototypeOf%":Kjt,"%Math.abs%":Wjt,"%Math.floor%":$jt,"%Math.max%":Fjt,"%Math.min%":Ujt,"%Math.pow%":qjt,"%Math.round%":jjt,"%Math.sign%":Hjt,"%Reflect.getPrototypeOf%":Vjt};if(Vs)try{null.error}catch(t){VRe=Vs(Vs(t)),dh["%Error.prototype%"]=VRe}var VRe,Yjt=function t(e){var r;if(e==="%AsyncFunction%")r=Dj("async function () {}");else if(e==="%GeneratorFunction%")r=Dj("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=Dj("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var s=t("%AsyncGenerator%");s&&Vs&&(r=Vs(s.prototype))}return dh[e]=r,r},zRe={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},BS=PS(),dk=lk(),Jjt=BS.call(DS,Array.prototype.concat),Xjt=BS.call(XRe,Array.prototype.splice),YRe=BS.call(DS,String.prototype.replace),fk=BS.call(DS,String.prototype.slice),Zjt=BS.call(DS,RegExp.prototype.exec),eHt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,tHt=/\\(\\)?/g,rHt=function(e){var r=fk(e,0,1),n=fk(e,-1);if(r==="%"&&n!=="%")throw new ux("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new ux("invalid intrinsic syntax, expected opening `%`");var s=[];return YRe(e,eHt,function(i,a,o,c){s[s.length]=o?YRe(c,tHt,"$1"):a||i}),s},nHt=function(e,r){var n=e,s;if(dk(zRe,n)&&(s=zRe[n],n="%"+s[0]+"%"),dk(dh,n)){var i=dh[n];if(i===ox&&(i=Yjt(n)),typeof i>"u"&&!r)throw new cx("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new ux("intrinsic "+e+" does not exist!")};ZRe.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new cx("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new cx('"allowMissing" argument must be a boolean');if(Zjt(/^%?[^%]*%?$/,e)===null)throw new ux("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=rHt(e),s=n.length>0?n[0]:"",i=nHt("%"+s+"%",r),a=i.name,o=i.value,c=!1,u=i.alias;u&&(s=u[0],Xjt(n,Jjt([0,1],u)));for(var l=1,d=!0;l<n.length;l+=1){var f=n[l],p=fk(f,0,1),m=fk(f,-1);if((p==='"'||p==="'"||p==="`"||m==='"'||m==="'"||m==="`")&&p!==m)throw new ux("property names with quotes must have matching quotes");if((f==="constructor"||!d)&&(c=!0),s+="."+f,a="%"+s+"%",dk(dh,a))o=dh[a];else if(o!=null){if(!(f in o)){if(!r)throw new cx("base intrinsic for "+e+" exists, but the property is not available.");return}if(kS&&l+1>=n.length){var h=kS(o,f);d=!!h,d&&"get"in h&&!("originalValue"in h.get)?o=h.get:o=o[f]}else d=dk(o,f),o=o[f];d&&!c&&(dh[a]=o)}}return o}});var tNe=E((jMr,eNe)=>{"use strict";var sHt=wj();eNe.exports=function(){return sHt()&&!!Symbol.toStringTag}});var sNe=E((HMr,nNe)=>{"use strict";var iHt=LS(),rNe=iHt("%Object.defineProperty%",!0),aHt=tNe()(),oHt=lk(),cHt=Gp(),pk=aHt?Symbol.toStringTag:null;nNe.exports=function(e,r){var n=arguments.length>2&&!!arguments[2]&&arguments[2].force,s=arguments.length>2&&!!arguments[2]&&arguments[2].nonConfigurable;if(typeof n<"u"&&typeof n!="boolean"||typeof s<"u"&&typeof s!="boolean")throw new cHt("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");pk&&(n||!oHt(e,pk))&&(rNe?rNe(e,pk,{configurable:!s,enumerable:!1,value:r,writable:!1}):e[pk]=r)}});var aNe=E((QMr,iNe)=>{"use strict";iNe.exports=function(t,e){return Object.keys(e).forEach(function(r){t[r]=t[r]||e[r]}),t}});var cNe=E((GMr,oNe)=>{"use strict";var $j=m2e(),uHt=require("util"),Lj=require("path"),lHt=require("http"),dHt=require("https"),fHt=require("url").parse,pHt=require("fs"),mHt=require("stream").Stream,hHt=require("crypto"),Mj=b2e(),gHt=M2e(),AHt=sNe(),Kp=lk(),Wj=aNe();function Cr(t){if(!(this instanceof Cr))return new Cr(t);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],$j.call(this),t=t||{};for(var e in t)this[e]=t[e]}uHt.inherits(Cr,$j);Cr.LINE_BREAK=`\r
`;Cr.DEFAULT_CONTENT_TYPE="application/octet-stream";Cr.prototype.append=function(t,e,r){r=r||{},typeof r=="string"&&(r={filename:r});var n=$j.prototype.append.bind(this);if((typeof e=="number"||e==null)&&(e=String(e)),Array.isArray(e)){this._error(new Error("Arrays are not supported."));return}var s=this._multiPartHeader(t,e,r),i=this._multiPartFooter();n(s),n(e),n(i),this._trackLength(s,e,r)};Cr.prototype._trackLength=function(t,e,r){var n=0;r.knownLength!=null?n+=Number(r.knownLength):Buffer.isBuffer(e)?n=e.length:typeof e=="string"&&(n=Buffer.byteLength(e)),this._valueLength+=n,this._overheadLength+=Buffer.byteLength(t)+Cr.LINE_BREAK.length,!(!e||!e.path&&!(e.readable&&Kp(e,"httpVersion"))&&!(e instanceof mHt))&&(r.knownLength||this._valuesToMeasure.push(e))};Cr.prototype._lengthRetriever=function(t,e){Kp(t,"fd")?t.end!=null&&t.end!=1/0&&t.start!=null?e(null,t.end+1-(t.start?t.start:0)):pHt.stat(t.path,function(r,n){if(r){e(r);return}var s=n.size-(t.start?t.start:0);e(null,s)}):Kp(t,"httpVersion")?e(null,Number(t.headers["content-length"])):Kp(t,"httpModule")?(t.on("response",function(r){t.pause(),e(null,Number(r.headers["content-length"]))}),t.resume()):e("Unknown stream")};Cr.prototype._multiPartHeader=function(t,e,r){if(typeof r.header=="string")return r.header;var n=this._getContentDisposition(e,r),s=this._getContentType(e,r),i="",a={"Content-Disposition":["form-data",'name="'+t+'"'].concat(n||[]),"Content-Type":[].concat(s||[])};typeof r.header=="object"&&Wj(a,r.header);var o;for(var c in a)if(Kp(a,c)){if(o=a[c],o==null)continue;Array.isArray(o)||(o=[o]),o.length&&(i+=c+": "+o.join("; ")+Cr.LINE_BREAK)}return"--"+this.getBoundary()+Cr.LINE_BREAK+i+Cr.LINE_BREAK};Cr.prototype._getContentDisposition=function(t,e){var r;if(typeof e.filepath=="string"?r=Lj.normalize(e.filepath).replace(/\\/g,"/"):e.filename||t&&(t.name||t.path)?r=Lj.basename(e.filename||t&&(t.name||t.path)):t&&t.readable&&Kp(t,"httpVersion")&&(r=Lj.basename(t.client._httpMessage.path||"")),r)return'filename="'+r+'"'};Cr.prototype._getContentType=function(t,e){var r=e.contentType;return!r&&t&&t.name&&(r=Mj.lookup(t.name)),!r&&t&&t.path&&(r=Mj.lookup(t.path)),!r&&t&&t.readable&&Kp(t,"httpVersion")&&(r=t.headers["content-type"]),!r&&(e.filepath||e.filename)&&(r=Mj.lookup(e.filepath||e.filename)),!r&&t&&typeof t=="object"&&(r=Cr.DEFAULT_CONTENT_TYPE),r};Cr.prototype._multiPartFooter=function(){return function(t){var e=Cr.LINE_BREAK,r=this._streams.length===0;r&&(e+=this._lastBoundary()),t(e)}.bind(this)};Cr.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+Cr.LINE_BREAK};Cr.prototype.getHeaders=function(t){var e,r={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(e in t)Kp(t,e)&&(r[e.toLowerCase()]=t[e]);return r};Cr.prototype.setBoundary=function(t){if(typeof t!="string")throw new TypeError("FormData boundary must be a string");this._boundary=t};Cr.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};Cr.prototype.getBuffer=function(){for(var t=new Buffer.alloc(0),e=this.getBoundary(),r=0,n=this._streams.length;r<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(Cr.LINE_BREAK)])));return Buffer.concat([t,Buffer.from(this._lastBoundary())])};Cr.prototype._generateBoundary=function(){this._boundary="--------------------------"+hHt.randomBytes(12).toString("hex")};Cr.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};Cr.prototype.hasKnownLength=function(){var t=!0;return this._valuesToMeasure.length&&(t=!1),t};Cr.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}gHt.parallel(this._valuesToMeasure,this._lengthRetriever,function(r,n){if(r){t(r);return}n.forEach(function(s){e+=s}),t(null,e)})};Cr.prototype.submit=function(t,e){var r,n,s={method:"post"};return typeof t=="string"?(t=fHt(t),n=Wj({port:t.port,path:t.pathname,host:t.hostname,protocol:t.protocol},s)):(n=Wj(t,s),n.port||(n.port=n.protocol==="https:"?443:80)),n.headers=this.getHeaders(t.headers),n.protocol==="https:"?r=dHt.request(n):r=lHt.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};Cr.prototype._error=function(t){this.error||(this.error=t,this.pause(),this.emit("error",t))};Cr.prototype.toString=function(){return"[object FormData]"};AHt(Cr.prototype,"FormData");oNe.exports=Cr});var vNe=E(SNe=>{"use strict";var kHt=require("url").parse,DHt={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},BHt=String.prototype.endsWith||function(t){return t.length<=this.length&&this.indexOf(t,this.length-t.length)!==-1};function LHt(t){var e=typeof t=="string"?kHt(t):t||{},r=e.protocol,n=e.host,s=e.port;if(typeof n!="string"||!n||typeof r!="string"||(r=r.split(":",1)[0],n=n.replace(/:\d*$/,""),s=parseInt(s)||DHt[r]||0,!MHt(n,s)))return"";var i=px("npm_config_"+r+"_proxy")||px(r+"_proxy")||px("npm_config_proxy")||px("all_proxy");return i&&i.indexOf("://")===-1&&(i=r+"://"+i),i}function MHt(t,e){var r=(px("npm_config_no_proxy")||px("no_proxy")).toLowerCase();return r?r==="*"?!1:r.split(/[,\s]/).every(function(n){if(!n)return!0;var s=n.match(/^(.+):(\d+)$/),i=s?s[1]:n,a=s?parseInt(s[2]):0;return a&&a!==e?!0:/^[.*]/.test(i)?(i.charAt(0)==="*"&&(i=i.slice(1)),!BHt.call(t,i)):t!==i}):!0}function px(t){return process.env[t.toLowerCase()]||process.env[t.toUpperCase()]||""}SNe.getProxyForUrl=LHt});var CNe=E((K6r,INe)=>{var mx=1e3,hx=mx*60,gx=hx*60,mh=gx*24,WHt=mh*7,$Ht=mh*365.25;INe.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return FHt(t);if(r==="number"&&isFinite(t))return e.long?qHt(t):UHt(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function FHt(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*$Ht;case"weeks":case"week":case"w":return r*WHt;case"days":case"day":case"d":return r*mh;case"hours":case"hour":case"hrs":case"hr":case"h":return r*gx;case"minutes":case"minute":case"mins":case"min":case"m":return r*hx;case"seconds":case"second":case"secs":case"sec":case"s":return r*mx;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function UHt(t){var e=Math.abs(t);return e>=mh?Math.round(t/mh)+"d":e>=gx?Math.round(t/gx)+"h":e>=hx?Math.round(t/hx)+"m":e>=mx?Math.round(t/mx)+"s":t+"ms"}function qHt(t){var e=Math.abs(t);return e>=mh?Ak(t,e,mh,"day"):e>=gx?Ak(t,e,gx,"hour"):e>=hx?Ak(t,e,hx,"minute"):e>=mx?Ak(t,e,mx,"second"):t+" ms"}function Ak(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var zj=E((V6r,TNe)=>{function jHt(t){r.debug=r,r.default=r,r.coerce=c,r.disable=a,r.enable=s,r.enabled=o,r.humanize=CNe(),r.destroy=u,Object.keys(t).forEach(l=>{r[l]=t[l]}),r.names=[],r.skips=[],r.formatters={};function e(l){let d=0;for(let f=0;f<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,p,m;function h(...A){if(!h.enabled)return;let g=h,b=Number(new Date),y=b-(d||b);g.diff=y,g.prev=d,g.curr=b,d=b,A[0]=r.coerce(A[0]),typeof A[0]!="string"&&A.unshift("%O");let x=0;A[0]=A[0].replace(/%([a-zA-Z%])/g,(I,R)=>{if(I==="%%")return"%";x++;let w=r.formatters[R];if(typeof w=="function"){let N=A[x];I=w.call(g,N),A.splice(x,1),x--}return I}),r.formatArgs.call(g,A),(g.log||r.log).apply(g,A)}return h.namespace=l,h.useColors=r.useColors(),h.color=r.selectColor(l),h.extend=n,h.destroy=r.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(p!==r.namespaces&&(p=r.namespaces,m=r.enabled(l)),m),set:A=>{f=A}}),typeof r.init=="function"&&r.init(h),h}function n(l,d){let f=r(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function s(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let d=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?r.skips.push(f.slice(1)):r.names.push(f)}function i(l,d){let f=0,p=0,m=-1,h=0;for(;f<l.length;)if(p<d.length&&(d[p]===l[f]||d[p]==="*"))d[p]==="*"?(m=p,h=f,p++):(f++,p++);else if(m!==-1)p=m+1,h++,f=h;else return!1;for(;p<d.length&&d[p]==="*";)p++;return p===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}TNe.exports=jHt});var wNe=E((Ga,yk)=>{Ga.formatArgs=QHt;Ga.save=GHt;Ga.load=KHt;Ga.useColors=HHt;Ga.storage=VHt();Ga.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Ga.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function HHt(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function QHt(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+yk.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),t.splice(n,0,e)}Ga.log=console.debug||console.log||(()=>{});function GHt(t){try{t?Ga.storage.setItem("debug",t):Ga.storage.removeItem("debug")}catch{}}function KHt(){let t;try{t=Ga.storage.getItem("debug")||Ga.storage.getItem("DEBUG")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function VHt(){try{return localStorage}catch{}}yk.exports=zj()(Ga);var{formatters:zHt}=yk.exports;zHt.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var NNe=E((z6r,RNe)=>{"use strict";RNe.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),s=e.indexOf("--");return n!==-1&&(s===-1||n<s)}});var kNe=E((Y6r,PNe)=>{"use strict";var YHt=require("os"),ONe=require("tty"),dc=NNe(),{env:zs}=process,Yp;dc("no-color")||dc("no-colors")||dc("color=false")||dc("color=never")?Yp=0:(dc("color")||dc("colors")||dc("color=true")||dc("color=always"))&&(Yp=1);"FORCE_COLOR"in zs&&(zs.FORCE_COLOR==="true"?Yp=1:zs.FORCE_COLOR==="false"?Yp=0:Yp=zs.FORCE_COLOR.length===0?1:Math.min(parseInt(zs.FORCE_COLOR,10),3));function Yj(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function Jj(t,e){if(Yp===0)return 0;if(dc("color=16m")||dc("color=full")||dc("color=truecolor"))return 3;if(dc("color=256"))return 2;if(t&&!e&&Yp===void 0)return 0;let r=Yp||0;if(zs.TERM==="dumb")return r;if(process.platform==="win32"){let n=YHt.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in zs)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in zs)||zs.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in zs)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(zs.TEAMCITY_VERSION)?1:0;if(zs.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in zs){let n=parseInt((zs.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(zs.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(zs.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(zs.TERM)||"COLORTERM"in zs?1:r}function JHt(t){let e=Jj(t,t&&t.isTTY);return Yj(e)}PNe.exports={supportsColor:JHt,stdout:Yj(Jj(!0,ONe.isatty(1))),stderr:Yj(Jj(!0,ONe.isatty(2)))}});var BNe=E((Ys,bk)=>{var XHt=require("tty"),xk=require("util");Ys.init=iQt;Ys.log=rQt;Ys.formatArgs=eQt;Ys.save=nQt;Ys.load=sQt;Ys.useColors=ZHt;Ys.destroy=xk.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Ys.colors=[6,2,3,4,5,1];try{let t=kNe();t&&(t.stderr||t).level>=2&&(Ys.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Ys.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});function ZHt(){return"colors"in Ys.inspectOpts?!!Ys.inspectOpts.colors:XHt.isatty(process.stderr.fd)}function eQt(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${e} \x1B[0m`;t[0]=i+t[0].split(`
`).join(`
`+i),t.push(s+"m+"+bk.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=tQt()+e+" "+t[0]}function tQt(){return Ys.inspectOpts.hideDate?"":new Date().toISOString()+" "}function rQt(...t){return process.stderr.write(xk.formatWithOptions(Ys.inspectOpts,...t)+`
`)}function nQt(t){t?process.env.DEBUG=t:delete process.env.DEBUG}function sQt(){return process.env.DEBUG}function iQt(t){t.inspectOpts={};let e=Object.keys(Ys.inspectOpts);for(let r=0;r<e.length;r++)t.inspectOpts[e[r]]=Ys.inspectOpts[e[r]]}bk.exports=zj()(Ys);var{formatters:DNe}=bk.exports;DNe.o=function(t){return this.inspectOpts.colors=this.useColors,xk.inspect(t,this.inspectOpts).split(`
`).map(e=>e.trim()).join(" ")};DNe.O=function(t){return this.inspectOpts.colors=this.useColors,xk.inspect(t,this.inspectOpts)}});var LNe=E((J6r,Xj)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Xj.exports=wNe():Xj.exports=BNe()});var WNe=E((X6r,MNe)=>{var FS;MNe.exports=function(){if(!FS){try{FS=LNe()("follow-redirects")}catch{}typeof FS!="function"&&(FS=function(){})}FS.apply(null,arguments)}});var jNe=E((Z6r,lH)=>{var qS=require("url"),US=qS.URL,aQt=require("http"),oQt=require("https"),nH=require("stream").Writable,sH=require("assert"),$Ne=WNe();(function(){var e=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=gh(Error.captureStackTrace);!e&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var iH=!1;try{sH(new US(""))}catch(t){iH=t.code==="ERR_INVALID_URL"}var cQt=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],aH=["abort","aborted","connect","error","socket","timeout"],oH=Object.create(null);aH.forEach(function(t){oH[t]=function(e,r,n){this._redirectable.emit(t,e,r,n)}});var eH=jS("ERR_INVALID_URL","Invalid URL",TypeError),tH=jS("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),uQt=jS("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",tH),lQt=jS("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),dQt=jS("ERR_STREAM_WRITE_AFTER_END","write after end"),fQt=nH.prototype.destroy||UNe;function Ka(t,e){nH.call(this),this._sanitizeOptions(t),this._options=t,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],e&&this.on("response",e);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(s){r.emit("error",s instanceof tH?s:new tH({cause:s}))}},this._performRequest()}Ka.prototype=Object.create(nH.prototype);Ka.prototype.abort=function(){uH(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};Ka.prototype.destroy=function(t){return uH(this._currentRequest,t),fQt.call(this,t),this};Ka.prototype.write=function(t,e,r){if(this._ending)throw new dQt;if(!hh(t)&&!hQt(t))throw new TypeError("data should be a string, Buffer or Uint8Array");if(gh(e)&&(r=e,e=null),t.length===0){r&&r();return}this._requestBodyLength+t.length<=this._options.maxBodyLength?(this._requestBodyLength+=t.length,this._requestBodyBuffers.push({data:t,encoding:e}),this._currentRequest.write(t,e,r)):(this.emit("error",new lQt),this.abort())};Ka.prototype.end=function(t,e,r){if(gh(t)?(r=t,t=e=null):gh(e)&&(r=e,e=null),!t)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,s=this._currentRequest;this.write(t,e,function(){n._ended=!0,s.end(null,null,r)}),this._ending=!0}};Ka.prototype.setHeader=function(t,e){this._options.headers[t]=e,this._currentRequest.setHeader(t,e)};Ka.prototype.removeHeader=function(t){delete this._options.headers[t],this._currentRequest.removeHeader(t)};Ka.prototype.setTimeout=function(t,e){var r=this;function n(a){a.setTimeout(t),a.removeListener("timeout",a.destroy),a.addListener("timeout",a.destroy)}function s(a){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),i()},t),n(a)}function i(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",i),r.removeListener("error",i),r.removeListener("response",i),r.removeListener("close",i),e&&r.removeListener("timeout",e),r.socket||r._currentRequest.removeListener("socket",s)}return e&&this.on("timeout",e),this.socket?s(this.socket):this._currentRequest.once("socket",s),this.on("socket",n),this.on("abort",i),this.on("error",i),this.on("response",i),this.on("close",i),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(t){Ka.prototype[t]=function(e,r){return this._currentRequest[t](e,r)}});["aborted","connection","socket"].forEach(function(t){Object.defineProperty(Ka.prototype,t,{get:function(){return this._currentRequest[t]}})});Ka.prototype._sanitizeOptions=function(t){if(t.headers||(t.headers={}),t.host&&(t.hostname||(t.hostname=t.host),delete t.host),!t.pathname&&t.path){var e=t.path.indexOf("?");e<0?t.pathname=t.path:(t.pathname=t.path.substring(0,e),t.search=t.path.substring(e))}};Ka.prototype._performRequest=function(){var t=this._options.protocol,e=this._options.nativeProtocols[t];if(!e)throw new TypeError("Unsupported protocol "+t);if(this._options.agents){var r=t.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=e.request(this._options,this._onNativeResponse);n._redirectable=this;for(var s of aH)n.on(s,oH[s]);if(this._currentUrl=/^\//.test(this._options.path)?qS.format(this._options):this._options.path,this._isRedirect){var i=0,a=this,o=this._requestBodyBuffers;(function c(u){if(n===a._currentRequest)if(u)a.emit("error",u);else if(i<o.length){var l=o[i++];n.finished||n.write(l.data,l.encoding,c)}else a._ended&&n.end()})()}};Ka.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(uH(this._currentRequest),t.destroy(),++this._redirectCount>this._options.maxRedirects)throw new uQt;var n,s=this._options.beforeRedirect;s&&(n=Object.assign({Host:t.req.getHeader("host")},this._options.headers));var i=this._options.method;((e===301||e===302)&&this._options.method==="POST"||e===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],Zj(/^content-/i,this._options.headers));var a=Zj(/^host$/i,this._options.headers),o=cH(this._currentUrl),c=a||o.host,u=/^\w+:/.test(r)?this._currentUrl:qS.format(Object.assign(o,{host:c})),l=pQt(r,u);if($Ne("redirecting to",l.href),this._isRedirect=!0,rH(l,this._options),(l.protocol!==o.protocol&&l.protocol!=="https:"||l.host!==c&&!mQt(l.host,c))&&Zj(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),gh(s)){var d={headers:t.headers,statusCode:e},f={url:u,method:i,headers:n};s(this._options,d,f),this._sanitizeOptions(this._options)}this._performRequest()};function FNe(t){var e={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(t).forEach(function(n){var s=n+":",i=r[s]=t[n],a=e[n]=Object.create(i);function o(u,l,d){return gQt(u)?u=rH(u):hh(u)?u=rH(cH(u)):(d=l,l=qNe(u),u={protocol:s}),gh(l)&&(d=l,l=null),l=Object.assign({maxRedirects:e.maxRedirects,maxBodyLength:e.maxBodyLength},u,l),l.nativeProtocols=r,!hh(l.host)&&!hh(l.hostname)&&(l.hostname="::1"),sH.equal(l.protocol,s,"protocol mismatch"),$Ne("options",l),new Ka(l,d)}function c(u,l,d){var f=a.request(u,l,d);return f.end(),f}Object.defineProperties(a,{request:{value:o,configurable:!0,enumerable:!0,writable:!0},get:{value:c,configurable:!0,enumerable:!0,writable:!0}})}),e}function UNe(){}function cH(t){var e;if(iH)e=new US(t);else if(e=qNe(qS.parse(t)),!hh(e.protocol))throw new eH({input:t});return e}function pQt(t,e){return iH?new US(t,e):cH(qS.resolve(e,t))}function qNe(t){if(/^\[/.test(t.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(t.hostname))throw new eH({input:t.href||t});if(/^\[/.test(t.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(t.host))throw new eH({input:t.href||t});return t}function rH(t,e){var r=e||{};for(var n of cQt)r[n]=t[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function Zj(t,e){var r;for(var n in e)t.test(n)&&(r=e[n],delete e[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function jS(t,e,r){function n(s){gh(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,s||{}),this.code=t,this.message=this.cause?e+": "+this.cause.message:e}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+t+"]",enumerable:!1}}),n}function uH(t,e){for(var r of aH)t.removeListener(r,oH[r]);t.on("error",UNe),t.destroy(e)}function mQt(t,e){sH(hh(t)&&hh(e));var r=t.length-e.length-1;return r>0&&t[r]==="."&&t.endsWith(e)}function hh(t){return typeof t=="string"||t instanceof String}function gh(t){return typeof t=="function"}function hQt(t){return typeof t=="object"&&"length"in t}function gQt(t){return US&&t instanceof US}lH.exports=FNe({http:aQt,https:oQt});lH.exports.wrap=FNe});var Gk=E(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});dl.AttributeAction=dl.IgnoreCaseMode=dl.SelectorType=void 0;var WGt;(function(t){t.Attribute="attribute",t.Pseudo="pseudo",t.PseudoElement="pseudo-element",t.Tag="tag",t.Universal="universal",t.Adjacent="adjacent",t.Child="child",t.Descendant="descendant",t.Parent="parent",t.Sibling="sibling",t.ColumnCombinator="column-combinator"})(WGt=dl.SelectorType||(dl.SelectorType={}));dl.IgnoreCaseMode={Unknown:null,QuirksMode:"quirks",IgnoreCase:!0,CaseSensitive:!1};var $Gt;(function(t){t.Any="any",t.Element="element",t.End="end",t.Equals="equals",t.Exists="exists",t.Hyphen="hyphen",t.Not="not",t.Start="start"})($Gt=dl.AttributeAction||(dl.AttributeAction={}))});var hPe=E(Ix=>{"use strict";Object.defineProperty(Ix,"__esModule",{value:!0});Ix.parse=Ix.isTraversal=void 0;var Qr=Gk(),dPe=/^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/,FGt=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,UGt=new Map([[126,Qr.AttributeAction.Element],[94,Qr.AttributeAction.Start],[36,Qr.AttributeAction.End],[42,Qr.AttributeAction.Any],[33,Qr.AttributeAction.Not],[124,Qr.AttributeAction.Hyphen]]),qGt=new Set(["has","not","matches","is","where","host","host-context"]);function pPe(t){switch(t.type){case Qr.SelectorType.Adjacent:case Qr.SelectorType.Child:case Qr.SelectorType.Descendant:case Qr.SelectorType.Parent:case Qr.SelectorType.Sibling:case Qr.SelectorType.ColumnCombinator:return!0;default:return!1}}Ix.isTraversal=pPe;var jGt=new Set(["contains","icontains"]);function HGt(t,e,r){var n=parseInt(e,16)-65536;return n!==n||r?e:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,n&1023|56320)}function sv(t){return t.replace(FGt,HGt)}function qH(t){return t===39||t===34}function fPe(t){return t===32||t===9||t===10||t===12||t===13}function QGt(t){var e=[],r=mPe(e,"".concat(t),0);if(r<t.length)throw new Error("Unmatched selector: ".concat(t.slice(r)));return e}Ix.parse=QGt;function mPe(t,e,r){var n=[];function s(D){var L=e.slice(r+D).match(dPe);if(!L)throw new Error("Expected name, found ".concat(e.slice(r)));var Z=L[0];return r+=D+Z.length,sv(Z)}function i(D){for(r+=D;r<e.length&&fPe(e.charCodeAt(r));)r++}function a(){r+=1;for(var D=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 sv(e.slice(D,r-1))}function o(D){for(var L=0;e.charCodeAt(--D)===92;)L++;return(L&1)===1}function c(){if(n.length>0&&pPe(n[n.length-1]))throw new Error("Did not expect successive traversals.")}function u(D){if(n.length>0&&n[n.length-1].type===Qr.SelectorType.Descendant){n[n.length-1].type=D;return}c(),n.push({type:D})}function l(D,L){n.push({type:Qr.SelectorType.Attribute,name:D,action:L,value:s(1),namespace:null,ignoreCase:"quirks"})}function d(){if(n.length&&n[n.length-1].type===Qr.SelectorType.Descendant&&n.pop(),n.length===0)throw new Error("Empty sub-selector");t.push(n)}if(i(0),e.length===r)return r;e:for(;r<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!==Qr.SelectorType.Descendant)&&(c(),n.push({type:Qr.SelectorType.Descendant})),i(1);break}case 62:{u(Qr.SelectorType.Child),i(1);break}case 60:{u(Qr.SelectorType.Parent),i(1);break}case 126:{u(Qr.SelectorType.Sibling),i(1);break}case 43:{u(Qr.SelectorType.Adjacent),i(1);break}case 46:{l("class",Qr.AttributeAction.Element);break}case 35:{l("id",Qr.AttributeAction.Equals);break}case 91:{i(1);var p=void 0,m=null;e.charCodeAt(r)===124?p=s(1):e.startsWith("*|",r)?(m="*",p=s(2)):(p=s(0),e.charCodeAt(r)===124&&e.charCodeAt(r+1)!==61&&(m=p,p=s(1))),i(0);var h=Qr.AttributeAction.Exists,A=UGt.get(e.charCodeAt(r));if(A){if(h=A,e.charCodeAt(r+1)!==61)throw new Error("Expected `=`");i(2)}else e.charCodeAt(r)===61&&(h=Qr.AttributeAction.Equals,i(1));var g="",b=null;if(h!=="exists"){if(qH(e.charCodeAt(r))){for(var y=e.charCodeAt(r),x=r+1;x<e.length&&(e.charCodeAt(x)!==y||o(x));)x+=1;if(e.charCodeAt(x)!==y)throw new Error("Attribute value didn't end");g=sv(e.slice(r+1,x)),r=x+1}else{for(var v=r;r<e.length&&(!fPe(e.charCodeAt(r))&&e.charCodeAt(r)!==93||o(r));)r+=1;g=sv(e.slice(v,r))}i(0);var I=e.charCodeAt(r)|32;I===115?(b=!1,i(1)):I===105&&(b=!0,i(1))}if(e.charCodeAt(r)!==93)throw new Error("Attribute selector didn't terminate");r+=1;var R={type:Qr.SelectorType.Attribute,name:p,action:h,value:g,namespace:m,ignoreCase:b};n.push(R);break}case 58:{if(e.charCodeAt(r+1)===58){n.push({type:Qr.SelectorType.PseudoElement,name:s(2).toLowerCase(),data:e.charCodeAt(r)===40?a():null});continue}var w=s(1).toLowerCase(),N=null;if(e.charCodeAt(r)===40)if(qGt.has(w)){if(qH(e.charCodeAt(r+1)))throw new Error("Pseudo-selector ".concat(w," cannot be quoted"));if(N=[],r=mPe(N,e,r+1),e.charCodeAt(r)!==41)throw new Error("Missing closing parenthesis in :".concat(w," (").concat(e,")"));r+=1}else{if(N=a(),jGt.has(w)){var P=N.charCodeAt(0);P===N.charCodeAt(N.length-1)&&qH(P)&&(N=N.slice(1,-1))}N=sv(N)}n.push({type:Qr.SelectorType.Pseudo,name:w,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 m=null,M=void 0;if(f===42)r+=1,M="*";else if(f===124){if(M="",e.charCodeAt(r+1)===124){u(Qr.SelectorType.ColumnCombinator),i(2);break}}else if(dPe.test(e.slice(r)))M=s(0);else break e;e.charCodeAt(r)===124&&e.charCodeAt(r+1)!==124&&(m=M,e.charCodeAt(r+1)===42?(M="*",r+=2):M=s(1)),n.push(M==="*"?{type:Qr.SelectorType.Universal,namespace:m}:{type:Qr.SelectorType.Tag,name:M,namespace:m})}}}return d(),r}});var _Pe=E(Tx=>{"use strict";var Kk=Tx&&Tx.__spreadArray||function(t,e,r){if(r||arguments.length===2)for(var n=0,s=e.length,i;n<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(Tx,"__esModule",{value:!0});Tx.stringify=void 0;var Yn=Gk(),yPe=["\\",'"'],xPe=Kk(Kk([],yPe,!0),["(",")"],!1),GGt=new Set(yPe.map(function(t){return t.charCodeAt(0)})),gPe=new Set(xPe.map(function(t){return t.charCodeAt(0)})),Cx=new Set(Kk(Kk([],xPe,!0),["~","^","$","*","+","!","|",":","[","]"," ","."],!1).map(function(t){return t.charCodeAt(0)}));function bPe(t){return t.map(function(e){return e.map(KGt).join("")}).join(", ")}Tx.stringify=bPe;function KGt(t,e,r){switch(t.type){case Yn.SelectorType.Child:return e===0?"> ":" > ";case Yn.SelectorType.Parent:return e===0?"< ":" < ";case Yn.SelectorType.Sibling:return e===0?"~ ":" ~ ";case Yn.SelectorType.Adjacent:return e===0?"+ ":" + ";case Yn.SelectorType.Descendant:return" ";case Yn.SelectorType.ColumnCombinator:return e===0?"|| ":" || ";case Yn.SelectorType.Universal:return t.namespace==="*"&&e+1<r.length&&"name"in r[e+1]?"":"".concat(EPe(t.namespace),"*");case Yn.SelectorType.Tag:return APe(t);case Yn.SelectorType.PseudoElement:return"::".concat(Ud(t.name,Cx)).concat(t.data===null?"":"(".concat(Ud(t.data,gPe),")"));case Yn.SelectorType.Pseudo:return":".concat(Ud(t.name,Cx)).concat(t.data===null?"":"(".concat(typeof t.data=="string"?Ud(t.data,gPe):bPe(t.data),")"));case Yn.SelectorType.Attribute:{if(t.name==="id"&&t.action===Yn.AttributeAction.Equals&&t.ignoreCase==="quirks"&&!t.namespace)return"#".concat(Ud(t.value,Cx));if(t.name==="class"&&t.action===Yn.AttributeAction.Element&&t.ignoreCase==="quirks"&&!t.namespace)return".".concat(Ud(t.value,Cx));var n=APe(t);return t.action===Yn.AttributeAction.Exists?"[".concat(n,"]"):"[".concat(n).concat(VGt(t.action),'="').concat(Ud(t.value,GGt),'"').concat(t.ignoreCase===null?"":t.ignoreCase?" i":" s","]")}}}function VGt(t){switch(t){case Yn.AttributeAction.Equals:return"";case Yn.AttributeAction.Element:return"~";case Yn.AttributeAction.Start:return"^";case Yn.AttributeAction.End:return"$";case Yn.AttributeAction.Any:return"*";case Yn.AttributeAction.Not:return"!";case Yn.AttributeAction.Hyphen:return"|";case Yn.AttributeAction.Exists:throw new Error("Shouldn't be here")}}function APe(t){return"".concat(EPe(t.namespace)).concat(Ud(t.name,Cx))}function EPe(t){return t!==null?"".concat(t==="*"?"*":Ud(t,Cx),"|"):""}function Ud(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 wx=E(vo=>{"use strict";var zGt=vo&&vo.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),YGt=vo&&vo.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&zGt(e,t,r)};Object.defineProperty(vo,"__esModule",{value:!0});vo.stringify=vo.parse=vo.isTraversal=void 0;YGt(Gk(),vo);var SPe=hPe();Object.defineProperty(vo,"isTraversal",{enumerable:!0,get:function(){return SPe.isTraversal}});Object.defineProperty(vo,"parse",{enumerable:!0,get:function(){return SPe.parse}});var JGt=_Pe();Object.defineProperty(vo,"stringify",{enumerable:!0,get:function(){return JGt.stringify}})});var n0=E((W$r,vPe)=>{vPe.exports={trueFunc:function(){return!0},falseFunc:function(){return!1}}});var vv=E((NQ,OQ)=>{(function(t,e){typeof NQ=="object"&&typeof OQ<"u"?OQ.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(NQ,function(){"use strict";var t=1e3,e=6e4,r=36e5,n="millisecond",s="second",i="minute",a="hour",o="day",c="week",u="month",l="quarter",d="year",f="date",p="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,h=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,A={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(M){var D=["th","st","nd","rd"],L=M%100;return"["+M+(D[(L-20)%10]||D[L]||D[0])+"]"}},g=function(M,D,L){var Z=String(M);return!Z||Z.length>=D?M:""+Array(D+1-Z.length).join(L)+M},b={s:g,z:function(M){var D=-M.utcOffset(),L=Math.abs(D),Z=Math.floor(L/60),W=L%60;return(D<=0?"+":"-")+g(Z,2,"0")+":"+g(W,2,"0")},m:function M(D,L){if(D.date()<L.date())return-M(L,D);var Z=12*(L.year()-D.year())+(L.month()-D.month()),W=D.clone().add(Z,u),F=L-W<0,K=D.clone().add(Z+(F?-1:1),u);return+(-(Z+(L-W)/(F?W-K:K-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}},y="en",x={};x[y]=A;var v="$isDayjsObject",I=function(M){return M instanceof P||!(!M||!M[v])},R=function M(D,L,Z){var W;if(!D)return y;if(typeof D=="string"){var F=D.toLowerCase();x[F]&&(W=F),L&&(x[F]=L,W=F);var K=D.split("-");if(!W&&K.length>1)return M(K[0])}else{var j=D.name;x[j]=D,W=j}return!Z&&W&&(y=W),W||!Z&&y},w=function(M,D){if(I(M))return M.clone();var L=typeof D=="object"?D:{};return L.date=M,L.args=arguments,new P(L)},N=b;N.l=R,N.i=I,N.w=function(M,D){return w(M,{locale:D.$L,utc:D.$u,x:D.$x,$offset:D.$offset})};var P=function(){function M(L){this.$L=R(L.locale,null,!0),this.parse(L),this.$x=this.$x||L.x||{},this[v]=!0}var D=M.prototype;return D.parse=function(L){this.$d=function(Z){var W=Z.date,F=Z.utc;if(W===null)return new Date(NaN);if(N.u(W))return new Date;if(W instanceof Date)return new Date(W);if(typeof W=="string"&&!/Z$/i.test(W)){var K=W.match(m);if(K){var j=K[2]-1||0,J=(K[7]||"0").substring(0,3);return F?new Date(Date.UTC(K[1],j,K[3]||1,K[4]||0,K[5]||0,K[6]||0,J)):new Date(K[1],j,K[3]||1,K[4]||0,K[5]||0,K[6]||0,J)}}return new Date(W)}(L),this.init()},D.init=function(){var L=this.$d;this.$y=L.getFullYear(),this.$M=L.getMonth(),this.$D=L.getDate(),this.$W=L.getDay(),this.$H=L.getHours(),this.$m=L.getMinutes(),this.$s=L.getSeconds(),this.$ms=L.getMilliseconds()},D.$utils=function(){return N},D.isValid=function(){return this.$d.toString()!==p},D.isSame=function(L,Z){var W=w(L);return this.startOf(Z)<=W&&W<=this.endOf(Z)},D.isAfter=function(L,Z){return w(L)<this.startOf(Z)},D.isBefore=function(L,Z){return this.endOf(Z)<w(L)},D.$g=function(L,Z,W){return N.u(L)?this[Z]:this.set(W,L)},D.unix=function(){return Math.floor(this.valueOf()/1e3)},D.valueOf=function(){return this.$d.getTime()},D.startOf=function(L,Z){var W=this,F=!!N.u(Z)||Z,K=N.p(L),j=function(Fe,_e){var U=N.w(W.$u?Date.UTC(W.$y,_e,Fe):new Date(W.$y,_e,Fe),W);return F?U:U.endOf(o)},J=function(Fe,_e){return N.w(W.toDate()[Fe].apply(W.toDate("s"),(F?[0,0,0,0]:[23,59,59,999]).slice(_e)),W)},se=this.$W,oe=this.$M,ue=this.$D,Ie="set"+(this.$u?"UTC":"");switch(K){case d:return F?j(1,0):j(31,11);case u:return F?j(1,oe):j(0,oe+1);case c:var we=this.$locale().weekStart||0,qe=(se<we?se+7:se)-we;return j(F?ue-qe:ue+(6-qe),oe);case o:case f:return J(Ie+"Hours",0);case a:return J(Ie+"Minutes",1);case i:return J(Ie+"Seconds",2);case s:return J(Ie+"Milliseconds",3);default:return this.clone()}},D.endOf=function(L){return this.startOf(L,!1)},D.$set=function(L,Z){var W,F=N.p(L),K="set"+(this.$u?"UTC":""),j=(W={},W[o]=K+"Date",W[f]=K+"Date",W[u]=K+"Month",W[d]=K+"FullYear",W[a]=K+"Hours",W[i]=K+"Minutes",W[s]=K+"Seconds",W[n]=K+"Milliseconds",W)[F],J=F===o?this.$D+(Z-this.$W):Z;if(F===u||F===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},D.set=function(L,Z){return this.clone().$set(L,Z)},D.get=function(L){return this[N.p(L)]()},D.add=function(L,Z){var W,F=this;L=Number(L);var K=N.p(Z),j=function(oe){var ue=w(F);return N.w(ue.date(ue.date()+Math.round(oe*L)),F)};if(K===u)return this.set(u,this.$M+L);if(K===d)return this.set(d,this.$y+L);if(K===o)return j(1);if(K===c)return j(7);var J=(W={},W[i]=e,W[a]=r,W[s]=t,W)[K]||1,se=this.$d.getTime()+L*J;return N.w(se,this)},D.subtract=function(L,Z){return this.add(-1*L,Z)},D.format=function(L){var Z=this,W=this.$locale();if(!this.isValid())return W.invalidDate||p;var F=L||"YYYY-MM-DDTHH:mm:ssZ",K=N.z(this),j=this.$H,J=this.$m,se=this.$M,oe=W.weekdays,ue=W.months,Ie=W.meridiem,we=function(_e,U,G,V){return _e&&(_e[U]||_e(Z,F))||G[U].slice(0,V)},qe=function(_e){return N.s(j%12||12,_e,"0")},Fe=Ie||function(_e,U,G){var V=_e<12?"AM":"PM";return G?V.toLowerCase():V};return F.replace(h,function(_e,U){return U||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 we(W.monthsShort,se,ue,3);case"MMMM":return we(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 we(W.weekdaysMin,Z.$W,oe,2);case"ddd":return we(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 qe(1);case"hh":return qe(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 K}return null}(_e)||K.replace(":","")})},D.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},D.diff=function(L,Z,W){var F,K=this,j=N.p(Z),J=w(L),se=(J.utcOffset()-this.utcOffset())*e,oe=this-J,ue=function(){return N.m(K,J)};switch(j){case d:F=ue()/12;break;case u:F=ue();break;case l:F=ue()/3;break;case c:F=(oe-se)/6048e5;break;case o:F=(oe-se)/864e5;break;case a:F=oe/r;break;case i:F=oe/e;break;case s:F=oe/t;break;default:F=oe}return W?F:N.a(F)},D.daysInMonth=function(){return this.endOf(u).$D},D.$locale=function(){return x[this.$L]},D.locale=function(L,Z){if(!L)return this.$L;var W=this.clone(),F=R(L,Z,!0);return F&&(W.$L=F),W},D.clone=function(){return N.w(this.$d,this)},D.toDate=function(){return new Date(this.valueOf())},D.toJSON=function(){return this.isValid()?this.toISOString():null},D.toISOString=function(){return this.$d.toISOString()},D.toString=function(){return this.$d.toUTCString()},M}(),B=P.prototype;return w.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(D){return this.$g(D,M[0],M[1])}}),w.extend=function(M,D){return M.$i||(M(D,P,w),M.$i=!0),w},w.locale=R,w.isDayjs=I,w.unix=function(M){return w(1e3*M)},w.en=x[y],w.Ls=x,w.p={},w})});var fr=E((ID,aDe)=>{(function(t,e){typeof ID=="object"?aDe.exports=ID=e():typeof define=="function"&&define.amd?define([],e):t.CryptoJS=e()})(ID,function(){var t=t||function(e,r){var n;if(typeof window<"u"&&window.crypto&&(n=window.crypto),typeof self<"u"&&self.crypto&&(n=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(n=globalThis.crypto),!n&&typeof window<"u"&&window.msCrypto&&(n=window.msCrypto),!n&&typeof global<"u"&&global.crypto&&(n=global.crypto),!n&&typeof require=="function")try{n=require("crypto")}catch{}var s=function(){if(n){if(typeof n.getRandomValues=="function")try{return n.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof n.randomBytes=="function")try{return n.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},i=Object.create||function(){function g(){}return function(b){var y;return g.prototype=b,y=new g,g.prototype=null,y}}(),a={},o=a.lib={},c=o.Base=function(){return{extend:function(g){var b=i(this);return g&&b.mixIn(g),(!b.hasOwnProperty("init")||this.init===b.init)&&(b.init=function(){b.$super.init.apply(this,arguments)}),b.init.prototype=b,b.$super=this,b},create:function(){var g=this.extend();return g.init.apply(g,arguments),g},init:function(){},mixIn:function(g){for(var b in g)g.hasOwnProperty(b)&&(this[b]=g[b]);g.hasOwnProperty("toString")&&(this.toString=g.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),u=o.WordArray=c.extend({init:function(g,b){g=this.words=g||[],b!=r?this.sigBytes=b:this.sigBytes=g.length*4},toString:function(g){return(g||d).stringify(this)},concat:function(g){var b=this.words,y=g.words,x=this.sigBytes,v=g.sigBytes;if(this.clamp(),x%4)for(var I=0;I<v;I++){var R=y[I>>>2]>>>24-I%4*8&255;b[x+I>>>2]|=R<<24-(x+I)%4*8}else for(var w=0;w<v;w+=4)b[x+w>>>2]=y[w>>>2];return this.sigBytes+=v,this},clamp:function(){var g=this.words,b=this.sigBytes;g[b>>>2]&=4294967295<<32-b%4*8,g.length=e.ceil(b/4)},clone:function(){var g=c.clone.call(this);return g.words=this.words.slice(0),g},random:function(g){for(var b=[],y=0;y<g;y+=4)b.push(s());return new u.init(b,g)}}),l=a.enc={},d=l.Hex={stringify:function(g){for(var b=g.words,y=g.sigBytes,x=[],v=0;v<y;v++){var I=b[v>>>2]>>>24-v%4*8&255;x.push((I>>>4).toString(16)),x.push((I&15).toString(16))}return x.join("")},parse:function(g){for(var b=g.length,y=[],x=0;x<b;x+=2)y[x>>>3]|=parseInt(g.substr(x,2),16)<<24-x%8*4;return new u.init(y,b/2)}},f=l.Latin1={stringify:function(g){for(var b=g.words,y=g.sigBytes,x=[],v=0;v<y;v++){var I=b[v>>>2]>>>24-v%4*8&255;x.push(String.fromCharCode(I))}return x.join("")},parse:function(g){for(var b=g.length,y=[],x=0;x<b;x++)y[x>>>2]|=(g.charCodeAt(x)&255)<<24-x%4*8;return new u.init(y,b)}},p=l.Utf8={stringify:function(g){try{return decodeURIComponent(escape(f.stringify(g)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(g){return f.parse(unescape(encodeURIComponent(g)))}},m=o.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(g){typeof g=="string"&&(g=p.parse(g)),this._data.concat(g),this._nDataBytes+=g.sigBytes},_process:function(g){var b,y=this._data,x=y.words,v=y.sigBytes,I=this.blockSize,R=I*4,w=v/R;g?w=e.ceil(w):w=e.max((w|0)-this._minBufferSize,0);var N=w*I,P=e.min(N*4,v);if(N){for(var B=0;B<N;B+=I)this._doProcessBlock(x,B);b=x.splice(0,N),y.sigBytes-=P}return new u.init(b,P)},clone:function(){var g=c.clone.call(this);return g._data=this._data.clone(),g},_minBufferSize:0}),h=o.Hasher=m.extend({cfg:c.extend(),init:function(g){this.cfg=this.cfg.extend(g),this.reset()},reset:function(){m.reset.call(this),this._doReset()},update:function(g){return this._append(g),this._process(),this},finalize:function(g){g&&this._append(g);var b=this._doFinalize();return b},blockSize:512/32,_createHelper:function(g){return function(b,y){return new g.init(y).finalize(b)}},_createHmacHelper:function(g){return function(b,y){return new A.HMAC.init(g,y).finalize(b)}}}),A=a.algo={};return a}(Math);return t})});var Iv=E((CD,oDe)=>{(function(t,e){typeof CD=="object"?oDe.exports=CD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(CD,function(t){return function(e){var r=t,n=r.lib,s=n.Base,i=n.WordArray,a=r.x64={},o=a.Word=s.extend({init:function(u,l){this.high=u,this.low=l}}),c=a.WordArray=s.extend({init:function(u,l){u=this.words=u||[],l!=e?this.sigBytes=l:this.sigBytes=u.length*8},toX32:function(){for(var u=this.words,l=u.length,d=[],f=0;f<l;f++){var p=u[f];d.push(p.high),d.push(p.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 uDe=E((TD,cDe)=>{(function(t,e){typeof TD=="object"?cDe.exports=TD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(TD,function(t){return function(){if(typeof ArrayBuffer=="function"){var e=t,r=e.lib,n=r.WordArray,s=n.init,i=n.init=function(a){if(a instanceof ArrayBuffer&&(a=new Uint8Array(a)),(a instanceof Int8Array||typeof Uint8ClampedArray<"u"&&a instanceof Uint8ClampedArray||a instanceof Int16Array||a instanceof Uint16Array||a instanceof Int32Array||a instanceof Uint32Array||a instanceof Float32Array||a instanceof Float64Array)&&(a=new Uint8Array(a.buffer,a.byteOffset,a.byteLength)),a instanceof Uint8Array){for(var o=a.byteLength,c=[],u=0;u<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 dDe=E((wD,lDe)=>{(function(t,e){typeof wD=="object"?lDe.exports=wD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(wD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Utf16=s.Utf16BE={stringify:function(o){for(var c=o.words,u=o.sigBytes,l=[],d=0;d<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 d0=E((RD,fDe)=>{(function(t,e){typeof RD=="object"?fDe.exports=RD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(RD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Base64={stringify:function(o){var c=o.words,u=o.sigBytes,l=this._map;o.clamp();for(var d=[],f=0;f<u;f+=3)for(var p=c[f>>>2]>>>24-f%4*8&255,m=c[f+1>>>2]>>>24-(f+1)%4*8&255,h=c[f+2>>>2]>>>24-(f+2)%4*8&255,A=p<<16|m<<8|h,g=0;g<4&&f+g*.75<u;g++)d.push(l.charAt(A>>>6*(3-g)&63));var b=l.charAt(64);if(b)for(;d.length%4;)d.push(b);return d.join("")},parse:function(o){var c=o.length,u=this._map,l=this._reverseMap;if(!l){l=this._reverseMap=[];for(var d=0;d<u.length;d++)l[u.charCodeAt(d)]=d}var f=u.charAt(64);if(f){var p=o.indexOf(f);p!==-1&&(c=p)}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 p=u[o.charCodeAt(f-1)]<<f%4*2,m=u[o.charCodeAt(f)]>>>6-f%4*2,h=p|m;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64})});var mDe=E((ND,pDe)=>{(function(t,e){typeof ND=="object"?pDe.exports=ND=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(ND,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Base64url={stringify:function(o,c){c===void 0&&(c=!0);var u=o.words,l=o.sigBytes,d=c?this._safe_map:this._map;o.clamp();for(var f=[],p=0;p<l;p+=3)for(var m=u[p>>>2]>>>24-p%4*8&255,h=u[p+1>>>2]>>>24-(p+1)%4*8&255,A=u[p+2>>>2]>>>24-(p+2)%4*8&255,g=m<<16|h<<8|A,b=0;b<4&&p+b*.75<l;b++)f.push(d.charAt(g>>>6*(3-b)&63));var y=d.charAt(64);if(y)for(;f.length%4;)f.push(y);return f.join("")},parse:function(o,c){c===void 0&&(c=!0);var u=o.length,l=c?this._safe_map:this._map,d=this._reverseMap;if(!d){d=this._reverseMap=[];for(var f=0;f<l.length;f++)d[l.charCodeAt(f)]=f}var p=l.charAt(64);if(p){var m=o.indexOf(p);m!==-1&&(u=m)}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 p=u[o.charCodeAt(f-1)]<<f%4*2,m=u[o.charCodeAt(f)]>>>6-f%4*2,h=p|m;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64url})});var f0=E((OD,hDe)=>{(function(t,e){typeof OD=="object"?hDe.exports=OD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(OD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[];(function(){for(var p=0;p<64;p++)o[p]=e.abs(e.sin(p+1))*4294967296|0})();var c=a.MD5=i.extend({_doReset:function(){this._hash=new s.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(p,m){for(var h=0;h<16;h++){var A=m+h,g=p[A];p[A]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360}var b=this._hash.words,y=p[m+0],x=p[m+1],v=p[m+2],I=p[m+3],R=p[m+4],w=p[m+5],N=p[m+6],P=p[m+7],B=p[m+8],M=p[m+9],D=p[m+10],L=p[m+11],Z=p[m+12],W=p[m+13],F=p[m+14],K=p[m+15],j=b[0],J=b[1],se=b[2],oe=b[3];j=u(j,J,se,oe,y,7,o[0]),oe=u(oe,j,J,se,x,12,o[1]),se=u(se,oe,j,J,v,17,o[2]),J=u(J,se,oe,j,I,22,o[3]),j=u(j,J,se,oe,R,7,o[4]),oe=u(oe,j,J,se,w,12,o[5]),se=u(se,oe,j,J,N,17,o[6]),J=u(J,se,oe,j,P,22,o[7]),j=u(j,J,se,oe,B,7,o[8]),oe=u(oe,j,J,se,M,12,o[9]),se=u(se,oe,j,J,D,17,o[10]),J=u(J,se,oe,j,L,22,o[11]),j=u(j,J,se,oe,Z,7,o[12]),oe=u(oe,j,J,se,W,12,o[13]),se=u(se,oe,j,J,F,17,o[14]),J=u(J,se,oe,j,K,22,o[15]),j=l(j,J,se,oe,x,5,o[16]),oe=l(oe,j,J,se,N,9,o[17]),se=l(se,oe,j,J,L,14,o[18]),J=l(J,se,oe,j,y,20,o[19]),j=l(j,J,se,oe,w,5,o[20]),oe=l(oe,j,J,se,D,9,o[21]),se=l(se,oe,j,J,K,14,o[22]),J=l(J,se,oe,j,R,20,o[23]),j=l(j,J,se,oe,M,5,o[24]),oe=l(oe,j,J,se,F,9,o[25]),se=l(se,oe,j,J,I,14,o[26]),J=l(J,se,oe,j,B,20,o[27]),j=l(j,J,se,oe,W,5,o[28]),oe=l(oe,j,J,se,v,9,o[29]),se=l(se,oe,j,J,P,14,o[30]),J=l(J,se,oe,j,Z,20,o[31]),j=d(j,J,se,oe,w,4,o[32]),oe=d(oe,j,J,se,B,11,o[33]),se=d(se,oe,j,J,L,16,o[34]),J=d(J,se,oe,j,F,23,o[35]),j=d(j,J,se,oe,x,4,o[36]),oe=d(oe,j,J,se,R,11,o[37]),se=d(se,oe,j,J,P,16,o[38]),J=d(J,se,oe,j,D,23,o[39]),j=d(j,J,se,oe,W,4,o[40]),oe=d(oe,j,J,se,y,11,o[41]),se=d(se,oe,j,J,I,16,o[42]),J=d(J,se,oe,j,N,23,o[43]),j=d(j,J,se,oe,M,4,o[44]),oe=d(oe,j,J,se,Z,11,o[45]),se=d(se,oe,j,J,K,16,o[46]),J=d(J,se,oe,j,v,23,o[47]),j=f(j,J,se,oe,y,6,o[48]),oe=f(oe,j,J,se,P,10,o[49]),se=f(se,oe,j,J,F,15,o[50]),J=f(J,se,oe,j,w,21,o[51]),j=f(j,J,se,oe,Z,6,o[52]),oe=f(oe,j,J,se,I,10,o[53]),se=f(se,oe,j,J,D,15,o[54]),J=f(J,se,oe,j,x,21,o[55]),j=f(j,J,se,oe,B,6,o[56]),oe=f(oe,j,J,se,K,10,o[57]),se=f(se,oe,j,J,N,15,o[58]),J=f(J,se,oe,j,W,21,o[59]),j=f(j,J,se,oe,R,6,o[60]),oe=f(oe,j,J,se,L,10,o[61]),se=f(se,oe,j,J,v,15,o[62]),J=f(J,se,oe,j,M,21,o[63]),b[0]=b[0]+j|0,b[1]=b[1]+J|0,b[2]=b[2]+se|0,b[3]=b[3]+oe|0},_doFinalize:function(){var p=this._data,m=p.words,h=this._nDataBytes*8,A=p.sigBytes*8;m[A>>>5]|=128<<24-A%32;var g=e.floor(h/4294967296),b=h;m[(A+64>>>9<<4)+15]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,m[(A+64>>>9<<4)+14]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360,p.sigBytes=(m.length+1)*4,this._process();for(var y=this._hash,x=y.words,v=0;v<4;v++){var I=x[v];x[v]=(I<<8|I>>>24)&16711935|(I<<24|I>>>8)&4278255360}return y},clone:function(){var p=i.clone.call(this);return p._hash=this._hash.clone(),p}});function u(p,m,h,A,g,b,y){var x=p+(m&h|~m&A)+g+y;return(x<<b|x>>>32-b)+m}function l(p,m,h,A,g,b,y){var x=p+(m&A|h&~A)+g+y;return(x<<b|x>>>32-b)+m}function d(p,m,h,A,g,b,y){var x=p+(m^h^A)+g+y;return(x<<b|x>>>32-b)+m}function f(p,m,h,A,g,b,y){var x=p+(h^(m|~A))+g+y;return(x<<b|x>>>32-b)+m}r.MD5=i._createHelper(c),r.HmacMD5=i._createHmacHelper(c)}(Math),t.MD5})});var PQ=E((PD,gDe)=>{(function(t,e){typeof PD=="object"?gDe.exports=PD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(PD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.Hasher,i=e.algo,a=[],o=i.SHA1=s.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(c,u){for(var l=this._hash.words,d=l[0],f=l[1],p=l[2],m=l[3],h=l[4],A=0;A<80;A++){if(A<16)a[A]=c[u+A]|0;else{var g=a[A-3]^a[A-8]^a[A-14]^a[A-16];a[A]=g<<1|g>>>31}var b=(d<<5|d>>>27)+h+a[A];A<20?b+=(f&p|~f&m)+1518500249:A<40?b+=(f^p^m)+1859775393:A<60?b+=(f&p|f&m|p&m)-1894007588:b+=(f^p^m)-899497514,h=m,m=p,p=f<<30|f>>>2,f=d,d=b}l[0]=l[0]+d|0,l[1]=l[1]+f|0,l[2]=l[2]+p|0,l[3]=l[3]+m|0,l[4]=l[4]+h|0},_doFinalize:function(){var c=this._data,u=c.words,l=this._nDataBytes*8,d=c.sigBytes*8;return u[d>>>5]|=128<<24-d%32,u[(d+64>>>9<<4)+14]=Math.floor(l/4294967296),u[(d+64>>>9<<4)+15]=l,c.sigBytes=u.length*4,this._process(),this._hash},clone:function(){var c=s.clone.call(this);return c._hash=this._hash.clone(),c}});e.SHA1=s._createHelper(o),e.HmacSHA1=s._createHmacHelper(o)}(),t.SHA1})});var DD=E((kD,ADe)=>{(function(t,e){typeof kD=="object"?ADe.exports=kD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(kD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[],c=[];(function(){function d(h){for(var A=e.sqrt(h),g=2;g<=A;g++)if(!(h%g))return!1;return!0}function f(h){return(h-(h|0))*4294967296|0}for(var p=2,m=0;m<64;)d(p)&&(m<8&&(o[m]=f(e.pow(p,1/2))),c[m]=f(e.pow(p,1/3)),m++),p++})();var u=[],l=a.SHA256=i.extend({_doReset:function(){this._hash=new s.init(o.slice(0))},_doProcessBlock:function(d,f){for(var p=this._hash.words,m=p[0],h=p[1],A=p[2],g=p[3],b=p[4],y=p[5],x=p[6],v=p[7],I=0;I<64;I++){if(I<16)u[I]=d[f+I]|0;else{var R=u[I-15],w=(R<<25|R>>>7)^(R<<14|R>>>18)^R>>>3,N=u[I-2],P=(N<<15|N>>>17)^(N<<13|N>>>19)^N>>>10;u[I]=w+u[I-7]+P+u[I-16]}var B=b&y^~b&x,M=m&h^m&A^h&A,D=(m<<30|m>>>2)^(m<<19|m>>>13)^(m<<10|m>>>22),L=(b<<26|b>>>6)^(b<<21|b>>>11)^(b<<7|b>>>25),Z=v+L+B+c[I]+u[I],W=D+M;v=x,x=y,y=b,b=g+Z|0,g=A,A=h,h=m,m=Z+W|0}p[0]=p[0]+m|0,p[1]=p[1]+h|0,p[2]=p[2]+A|0,p[3]=p[3]+g|0,p[4]=p[4]+b|0,p[5]=p[5]+y|0,p[6]=p[6]+x|0,p[7]=p[7]+v|0},_doFinalize:function(){var d=this._data,f=d.words,p=this._nDataBytes*8,m=d.sigBytes*8;return f[m>>>5]|=128<<24-m%32,f[(m+64>>>9<<4)+14]=e.floor(p/4294967296),f[(m+64>>>9<<4)+15]=p,d.sigBytes=f.length*4,this._process(),this._hash},clone:function(){var d=i.clone.call(this);return d._hash=this._hash.clone(),d}});r.SHA256=i._createHelper(l),r.HmacSHA256=i._createHmacHelper(l)}(Math),t.SHA256})});var xDe=E((BD,yDe)=>{(function(t,e,r){typeof BD=="object"?yDe.exports=BD=e(fr(),DD()):typeof define=="function"&&define.amd?define(["./core","./sha256"],e):e(t.CryptoJS)})(BD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.algo,i=s.SHA256,a=s.SHA224=i.extend({_doReset:function(){this._hash=new n.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var o=i._doFinalize.call(this);return o.sigBytes-=4,o}});e.SHA224=i._createHelper(a),e.HmacSHA224=i._createHmacHelper(a)}(),t.SHA224})});var kQ=E((LD,bDe)=>{(function(t,e,r){typeof LD=="object"?bDe.exports=LD=e(fr(),Iv()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(LD,function(t){return function(){var e=t,r=e.lib,n=r.Hasher,s=e.x64,i=s.Word,a=s.WordArray,o=e.algo;function c(){return i.create.apply(i,arguments)}var u=[c(1116352408,3609767458),c(1899447441,602891725),c(3049323471,3964484399),c(3921009573,2173295548),c(961987163,4081628472),c(1508970993,3053834265),c(2453635748,2937671579),c(2870763221,3664609560),c(3624381080,2734883394),c(310598401,1164996542),c(607225278,1323610764),c(1426881987,3590304994),c(1925078388,4068182383),c(2162078206,991336113),c(2614888103,633803317),c(3248222580,3479774868),c(3835390401,2666613458),c(4022224774,944711139),c(264347078,2341262773),c(604807628,2007800933),c(770255983,1495990901),c(1249150122,1856431235),c(1555081692,3175218132),c(1996064986,2198950837),c(2554220882,3999719339),c(2821834349,766784016),c(2952996808,2566594879),c(3210313671,3203337956),c(3336571891,1034457026),c(3584528711,2466948901),c(113926993,3758326383),c(338241895,168717936),c(666307205,1188179964),c(773529912,1546045734),c(1294757372,1522805485),c(1396182291,2643833823),c(1695183700,2343527390),c(1986661051,1014477480),c(2177026350,1206759142),c(2456956037,344077627),c(2730485921,1290863460),c(2820302411,3158454273),c(3259730800,3505952657),c(3345764771,106217008),c(3516065817,3606008344),c(3600352804,1432725776),c(4094571909,1467031594),c(275423344,851169720),c(430227734,3100823752),c(506948616,1363258195),c(659060556,3750685593),c(883997877,3785050280),c(958139571,3318307427),c(1322822218,3812723403),c(1537002063,2003034995),c(1747873779,3602036899),c(1955562222,1575990012),c(2024104815,1125592928),c(2227730452,2716904306),c(2361852424,442776044),c(2428436474,593698344),c(2756734187,3733110249),c(3204031479,2999351573),c(3329325298,3815920427),c(3391569614,3928383900),c(3515267271,566280711),c(3940187606,3454069534),c(4118630271,4000239992),c(116418474,1914138554),c(174292421,2731055270),c(289380356,3203993006),c(460393269,320620315),c(685471733,587496836),c(852142971,1086792851),c(1017036298,365543100),c(1126000580,2618297676),c(1288033470,3409855158),c(1501505948,4234509866),c(1607167915,987167468),c(1816402316,1246189591)],l=[];(function(){for(var f=0;f<80;f++)l[f]=c()})();var d=o.SHA512=n.extend({_doReset:function(){this._hash=new a.init([new i.init(1779033703,4089235720),new i.init(3144134277,2227873595),new i.init(1013904242,4271175723),new i.init(2773480762,1595750129),new i.init(1359893119,2917565137),new i.init(2600822924,725511199),new i.init(528734635,4215389547),new i.init(1541459225,327033209)])},_doProcessBlock:function(f,p){for(var m=this._hash.words,h=m[0],A=m[1],g=m[2],b=m[3],y=m[4],x=m[5],v=m[6],I=m[7],R=h.high,w=h.low,N=A.high,P=A.low,B=g.high,M=g.low,D=b.high,L=b.low,Z=y.high,W=y.low,F=x.high,K=x.low,j=v.high,J=v.low,se=I.high,oe=I.low,ue=R,Ie=w,we=N,qe=P,Fe=B,_e=M,U=D,G=L,V=Z,q=W,H=F,ee=K,ne=j,re=J,X=se,ie=oe,ce=0;ce<80;ce++){var fe,Ne,Pe=l[ce];if(ce<16)Ne=Pe.high=f[p+ce*2]|0,fe=Pe.low=f[p+ce*2+1]|0;else{var Ue=l[ce-15],ze=Ue.high,Ye=Ue.low,Ze=(ze>>>1|Ye<<31)^(ze>>>8|Ye<<24)^ze>>>7,nt=(Ye>>>1|ze<<31)^(Ye>>>8|ze<<24)^(Ye>>>7|ze<<25),ct=l[ce-2],tt=ct.high,Pt=ct.low,lt=(tt>>>19|Pt<<13)^(tt<<3|Pt>>>29)^tt>>>6,ke=(Pt>>>19|tt<<13)^(Pt<<3|tt>>>29)^(Pt>>>6|tt<<26),Je=l[ce-7],ft=Je.high,rt=Je.low,bt=l[ce-16],An=bt.high,vt=bt.low;fe=nt+rt,Ne=Ze+ft+(fe>>>0<nt>>>0?1:0),fe=fe+ke,Ne=Ne+lt+(fe>>>0<ke>>>0?1:0),fe=fe+vt,Ne=Ne+An+(fe>>>0<vt>>>0?1:0),Pe.high=Ne,Pe.low=fe}var _r=V&H^~V&ne,qs=q&ee^~q&re,Pr=ue&we^ue&Fe^we&Fe,js=Ie&qe^Ie&_e^qe&_e,Hs=(ue>>>28|Ie<<4)^(ue<<30|Ie>>>2)^(ue<<25|Ie>>>7),ys=(Ie>>>28|ue<<4)^(Ie<<30|ue>>>2)^(Ie<<25|ue>>>7),Qs=(V>>>14|q<<18)^(V>>>18|q<<14)^(V<<23|q>>>9),Bu=(q>>>14|V<<18)^(q>>>18|V<<14)^(q<<23|V>>>9),Ao=u[ce],Dc=Ao.high,Ta=Ao.low,yn=ie+Bu,wa=X+Qs+(yn>>>0<ie>>>0?1:0),yn=yn+qs,wa=wa+_r+(yn>>>0<qs>>>0?1:0),yn=yn+Ta,wa=wa+Dc+(yn>>>0<Ta>>>0?1:0),yn=yn+fe,wa=wa+Ne+(yn>>>0<fe>>>0?1:0),td=ys+js,yo=Hs+Pr+(td>>>0<ys>>>0?1:0);X=ne,ie=re,ne=H,re=ee,H=V,ee=q,q=G+yn|0,V=U+wa+(q>>>0<G>>>0?1:0)|0,U=Fe,G=_e,Fe=we,_e=qe,we=ue,qe=Ie,Ie=yn+td|0,ue=wa+yo+(Ie>>>0<yn>>>0?1:0)|0}w=h.low=w+Ie,h.high=R+ue+(w>>>0<Ie>>>0?1:0),P=A.low=P+qe,A.high=N+we+(P>>>0<qe>>>0?1:0),M=g.low=M+_e,g.high=B+Fe+(M>>>0<_e>>>0?1:0),L=b.low=L+G,b.high=D+U+(L>>>0<G>>>0?1:0),W=y.low=W+q,y.high=Z+V+(W>>>0<q>>>0?1:0),K=x.low=K+ee,x.high=F+H+(K>>>0<ee>>>0?1:0),J=v.low=J+re,v.high=j+ne+(J>>>0<re>>>0?1:0),oe=I.low=oe+ie,I.high=se+X+(oe>>>0<ie>>>0?1:0)},_doFinalize:function(){var f=this._data,p=f.words,m=this._nDataBytes*8,h=f.sigBytes*8;p[h>>>5]|=128<<24-h%32,p[(h+128>>>10<<5)+30]=Math.floor(m/4294967296),p[(h+128>>>10<<5)+31]=m,f.sigBytes=p.length*4,this._process();var A=this._hash.toX32();return A},clone:function(){var f=n.clone.call(this);return f._hash=this._hash.clone(),f},blockSize:1024/32});e.SHA512=n._createHelper(d),e.HmacSHA512=n._createHmacHelper(d)}(),t.SHA512})});var _De=E((MD,EDe)=>{(function(t,e,r){typeof MD=="object"?EDe.exports=MD=e(fr(),Iv(),kQ()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./sha512"],e):e(t.CryptoJS)})(MD,function(t){return function(){var e=t,r=e.x64,n=r.Word,s=r.WordArray,i=e.algo,a=i.SHA512,o=i.SHA384=a.extend({_doReset:function(){this._hash=new s.init([new n.init(3418070365,3238371032),new n.init(1654270250,914150663),new n.init(2438529370,812702999),new n.init(355462360,4144912697),new n.init(1731405415,4290775857),new n.init(2394180231,1750603025),new n.init(3675008525,1694076839),new n.init(1203062813,3204075428)])},_doFinalize:function(){var c=a._doFinalize.call(this);return c.sigBytes-=16,c}});e.SHA384=a._createHelper(o),e.HmacSHA384=a._createHmacHelper(o)}(),t.SHA384})});var vDe=E((WD,SDe)=>{(function(t,e,r){typeof WD=="object"?SDe.exports=WD=e(fr(),Iv()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(WD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.x64,o=a.Word,c=r.algo,u=[],l=[],d=[];(function(){for(var m=1,h=0,A=0;A<24;A++){u[m+5*h]=(A+1)*(A+2)/2%64;var g=h%5,b=(2*m+3*h)%5;m=g,h=b}for(var m=0;m<5;m++)for(var h=0;h<5;h++)l[m+5*h]=h+(2*m+3*h)%5*5;for(var y=1,x=0;x<24;x++){for(var v=0,I=0,R=0;R<7;R++){if(y&1){var w=(1<<R)-1;w<32?I^=1<<w:v^=1<<w-32}y&128?y=y<<1^113:y<<=1}d[x]=o.create(v,I)}})();var f=[];(function(){for(var m=0;m<25;m++)f[m]=o.create()})();var p=c.SHA3=i.extend({cfg:i.cfg.extend({outputLength:512}),_doReset:function(){for(var m=this._state=[],h=0;h<25;h++)m[h]=new o.init;this.blockSize=(1600-2*this.cfg.outputLength)/32},_doProcessBlock:function(m,h){for(var A=this._state,g=this.blockSize/2,b=0;b<g;b++){var y=m[h+2*b],x=m[h+2*b+1];y=(y<<8|y>>>24)&16711935|(y<<24|y>>>8)&4278255360,x=(x<<8|x>>>24)&16711935|(x<<24|x>>>8)&4278255360;var v=A[b];v.high^=x,v.low^=y}for(var I=0;I<24;I++){for(var R=0;R<5;R++){for(var w=0,N=0,P=0;P<5;P++){var v=A[R+5*P];w^=v.high,N^=v.low}var B=f[R];B.high=w,B.low=N}for(var R=0;R<5;R++)for(var M=f[(R+4)%5],D=f[(R+1)%5],L=D.high,Z=D.low,w=M.high^(L<<1|Z>>>31),N=M.low^(Z<<1|L>>>31),P=0;P<5;P++){var v=A[R+5*P];v.high^=w,v.low^=N}for(var W=1;W<25;W++){var w,N,v=A[W],F=v.high,K=v.low,j=u[W];j<32?(w=F<<j|K>>>32-j,N=K<<j|F>>>32-j):(w=K<<j-32|F>>>64-j,N=F<<j-32|K>>>64-j);var J=f[l[W]];J.high=w,J.low=N}var se=f[0],oe=A[0];se.high=oe.high,se.low=oe.low;for(var R=0;R<5;R++)for(var P=0;P<5;P++){var W=R+5*P,v=A[W],ue=f[W],Ie=f[(R+1)%5+5*P],we=f[(R+2)%5+5*P];v.high=ue.high^~Ie.high&we.high,v.low=ue.low^~Ie.low&we.low}var v=A[0],qe=d[I];v.high^=qe.high,v.low^=qe.low}},_doFinalize:function(){var m=this._data,h=m.words,A=this._nDataBytes*8,g=m.sigBytes*8,b=this.blockSize*32;h[g>>>5]|=1<<24-g%32,h[(e.ceil((g+1)/b)*b>>>5)-1]|=128,m.sigBytes=h.length*4,this._process();for(var y=this._state,x=this.cfg.outputLength/8,v=x/8,I=[],R=0;R<v;R++){var w=y[R],N=w.high,P=w.low;N=(N<<8|N>>>24)&16711935|(N<<24|N>>>8)&4278255360,P=(P<<8|P>>>24)&16711935|(P<<24|P>>>8)&4278255360,I.push(P),I.push(N)}return new s.init(I,x)},clone:function(){for(var m=i.clone.call(this),h=m._state=this._state.slice(0),A=0;A<25;A++)h[A]=h[A].clone();return m}});r.SHA3=i._createHelper(p),r.HmacSHA3=i._createHmacHelper(p)}(Math),t.SHA3})});var CDe=E(($D,IDe)=>{(function(t,e){typeof $D=="object"?IDe.exports=$D=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})($D,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=s.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),c=s.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),u=s.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),l=s.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),d=s.create([0,1518500249,1859775393,2400959708,2840853838]),f=s.create([1352829926,1548603684,1836072691,2053994217,0]),p=a.RIPEMD160=i.extend({_doReset:function(){this._hash=s.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(x,v){for(var I=0;I<16;I++){var R=v+I,w=x[R];x[R]=(w<<8|w>>>24)&16711935|(w<<24|w>>>8)&4278255360}var N=this._hash.words,P=d.words,B=f.words,M=o.words,D=c.words,L=u.words,Z=l.words,W,F,K,j,J,se,oe,ue,Ie,we;se=W=N[0],oe=F=N[1],ue=K=N[2],Ie=j=N[3],we=J=N[4];for(var qe,I=0;I<80;I+=1)qe=W+x[v+M[I]]|0,I<16?qe+=m(F,K,j)+P[0]:I<32?qe+=h(F,K,j)+P[1]:I<48?qe+=A(F,K,j)+P[2]:I<64?qe+=g(F,K,j)+P[3]:qe+=b(F,K,j)+P[4],qe=qe|0,qe=y(qe,L[I]),qe=qe+J|0,W=J,J=j,j=y(K,10),K=F,F=qe,qe=se+x[v+D[I]]|0,I<16?qe+=b(oe,ue,Ie)+B[0]:I<32?qe+=g(oe,ue,Ie)+B[1]:I<48?qe+=A(oe,ue,Ie)+B[2]:I<64?qe+=h(oe,ue,Ie)+B[3]:qe+=m(oe,ue,Ie)+B[4],qe=qe|0,qe=y(qe,Z[I]),qe=qe+we|0,se=we,we=Ie,Ie=y(ue,10),ue=oe,oe=qe;qe=N[1]+K+Ie|0,N[1]=N[2]+j+we|0,N[2]=N[3]+J+se|0,N[3]=N[4]+W+oe|0,N[4]=N[0]+F+ue|0,N[0]=qe},_doFinalize:function(){var x=this._data,v=x.words,I=this._nDataBytes*8,R=x.sigBytes*8;v[R>>>5]|=128<<24-R%32,v[(R+64>>>9<<4)+14]=(I<<8|I>>>24)&16711935|(I<<24|I>>>8)&4278255360,x.sigBytes=(v.length+1)*4,this._process();for(var w=this._hash,N=w.words,P=0;P<5;P++){var B=N[P];N[P]=(B<<8|B>>>24)&16711935|(B<<24|B>>>8)&4278255360}return w},clone:function(){var x=i.clone.call(this);return x._hash=this._hash.clone(),x}});function m(x,v,I){return x^v^I}function h(x,v,I){return x&v|~x&I}function A(x,v,I){return(x|~v)^I}function g(x,v,I){return x&I|v&~I}function b(x,v,I){return x^(v|~I)}function y(x,v){return x<<v|x>>>32-v}r.RIPEMD160=i._createHelper(p),r.HmacRIPEMD160=i._createHmacHelper(p)}(Math),t.RIPEMD160})});var UD=E((FD,TDe)=>{(function(t,e){typeof FD=="object"?TDe.exports=FD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(FD,function(t){(function(){var e=t,r=e.lib,n=r.Base,s=e.enc,i=s.Utf8,a=e.algo,o=a.HMAC=n.extend({init:function(c,u){c=this._hasher=new c.init,typeof u=="string"&&(u=i.parse(u));var l=c.blockSize,d=l*4;u.sigBytes>d&&(u=c.finalize(u)),u.clamp();for(var f=this._oKey=u.clone(),p=this._iKey=u.clone(),m=f.words,h=p.words,A=0;A<l;A++)m[A]^=1549556828,h[A]^=909522486;f.sigBytes=p.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 RDe=E((qD,wDe)=>{(function(t,e,r){typeof qD=="object"?wDe.exports=qD=e(fr(),DD(),UD()):typeof define=="function"&&define.amd?define(["./core","./sha256","./hmac"],e):e(t.CryptoJS)})(qD,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.algo,a=i.SHA256,o=i.HMAC,c=i.PBKDF2=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:25e4}),init:function(u){this.cfg=this.cfg.extend(u)},compute:function(u,l){for(var d=this.cfg,f=o.create(d.hasher,u),p=s.create(),m=s.create([1]),h=p.words,A=m.words,g=d.keySize,b=d.iterations;h.length<g;){var y=f.update(l).finalize(m);f.reset();for(var x=y.words,v=x.length,I=y,R=1;R<b;R++){I=f.finalize(I),f.reset();for(var w=I.words,N=0;N<v;N++)x[N]^=w[N]}p.concat(y),A[0]++}return p.sigBytes=g*4,p}});e.PBKDF2=function(u,l,d){return c.create(d).compute(u,l)}}(),t.PBKDF2})});var Gd=E((jD,NDe)=>{(function(t,e,r){typeof jD=="object"?NDe.exports=jD=e(fr(),PQ(),UD()):typeof define=="function"&&define.amd?define(["./core","./sha1","./hmac"],e):e(t.CryptoJS)})(jD,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.algo,a=i.MD5,o=i.EvpKDF=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:1}),init:function(c){this.cfg=this.cfg.extend(c)},compute:function(c,u){for(var l,d=this.cfg,f=d.hasher.create(),p=s.create(),m=p.words,h=d.keySize,A=d.iterations;m.length<h;){l&&f.update(l),l=f.update(c).finalize(u),f.reset();for(var g=1;g<A;g++)l=f.finalize(l),f.reset();p.concat(l)}return p.sigBytes=h*4,p}});e.EvpKDF=function(c,u,l){return o.create(l).compute(c,u)}}(),t.EvpKDF})});var Os=E((HD,ODe)=>{(function(t,e,r){typeof HD=="object"?ODe.exports=HD=e(fr(),Gd()):typeof define=="function"&&define.amd?define(["./core","./evpkdf"],e):e(t.CryptoJS)})(HD,function(t){t.lib.Cipher||function(e){var r=t,n=r.lib,s=n.Base,i=n.WordArray,a=n.BufferedBlockAlgorithm,o=r.enc,c=o.Utf8,u=o.Base64,l=r.algo,d=l.EvpKDF,f=n.Cipher=a.extend({cfg:s.extend(),createEncryptor:function(B,M){return this.create(this._ENC_XFORM_MODE,B,M)},createDecryptor:function(B,M){return this.create(this._DEC_XFORM_MODE,B,M)},init:function(B,M,D){this.cfg=this.cfg.extend(D),this._xformMode=B,this._key=M,this.reset()},reset:function(){a.reset.call(this),this._doReset()},process:function(B){return this._append(B),this._process()},finalize:function(B){B&&this._append(B);var M=this._doFinalize();return M},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function B(M){return typeof M=="string"?P:R}return function(M){return{encrypt:function(D,L,Z){return B(L).encrypt(M,D,L,Z)},decrypt:function(D,L,Z){return B(L).decrypt(M,D,L,Z)}}}}()}),p=n.StreamCipher=f.extend({_doFinalize:function(){var B=this._process(!0);return B},blockSize:1}),m=r.mode={},h=n.BlockCipherMode=s.extend({createEncryptor:function(B,M){return this.Encryptor.create(B,M)},createDecryptor:function(B,M){return this.Decryptor.create(B,M)},init:function(B,M){this._cipher=B,this._iv=M}}),A=m.CBC=function(){var B=h.extend();B.Encryptor=B.extend({processBlock:function(D,L){var Z=this._cipher,W=Z.blockSize;M.call(this,D,L,W),Z.encryptBlock(D,L),this._prevBlock=D.slice(L,L+W)}}),B.Decryptor=B.extend({processBlock:function(D,L){var Z=this._cipher,W=Z.blockSize,F=D.slice(L,L+W);Z.decryptBlock(D,L),M.call(this,D,L,W),this._prevBlock=F}});function M(D,L,Z){var W,F=this._iv;F?(W=F,this._iv=e):W=this._prevBlock;for(var K=0;K<Z;K++)D[L+K]^=W[K]}return B}(),g=r.pad={},b=g.Pkcs7={pad:function(B,M){for(var D=M*4,L=D-B.sigBytes%D,Z=L<<24|L<<16|L<<8|L,W=[],F=0;F<L;F+=4)W.push(Z);var K=i.create(W,L);B.concat(K)},unpad:function(B){var M=B.words[B.sigBytes-1>>>2]&255;B.sigBytes-=M}},y=n.BlockCipher=f.extend({cfg:f.cfg.extend({mode:A,padding:b}),reset:function(){var B;f.reset.call(this);var M=this.cfg,D=M.iv,L=M.mode;this._xformMode==this._ENC_XFORM_MODE?B=L.createEncryptor:(B=L.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==B?this._mode.init(this,D&&D.words):(this._mode=B.call(L,this,D&&D.words),this._mode.__creator=B)},_doProcessBlock:function(B,M){this._mode.processBlock(B,M)},_doFinalize:function(){var B,M=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(M.pad(this._data,this.blockSize),B=this._process(!0)):(B=this._process(!0),M.unpad(B)),B},blockSize:128/32}),x=n.CipherParams=s.extend({init:function(B){this.mixIn(B)},toString:function(B){return(B||this.formatter).stringify(this)}}),v=r.format={},I=v.OpenSSL={stringify:function(B){var M,D=B.ciphertext,L=B.salt;return L?M=i.create([1398893684,1701076831]).concat(L).concat(D):M=D,M.toString(u)},parse:function(B){var M,D=u.parse(B),L=D.words;return L[0]==1398893684&&L[1]==1701076831&&(M=i.create(L.slice(2,4)),L.splice(0,4),D.sigBytes-=16),x.create({ciphertext:D,salt:M})}},R=n.SerializableCipher=s.extend({cfg:s.extend({format:I}),encrypt:function(B,M,D,L){L=this.cfg.extend(L);var Z=B.createEncryptor(D,L),W=Z.finalize(M),F=Z.cfg;return x.create({ciphertext:W,key:D,iv:F.iv,algorithm:B,mode:F.mode,padding:F.padding,blockSize:B.blockSize,formatter:L.format})},decrypt:function(B,M,D,L){L=this.cfg.extend(L),M=this._parse(M,L.format);var Z=B.createDecryptor(D,L).finalize(M.ciphertext);return Z},_parse:function(B,M){return typeof B=="string"?M.parse(B,this):B}}),w=r.kdf={},N=w.OpenSSL={execute:function(B,M,D,L,Z){if(L||(L=i.random(64/8)),Z)var W=d.create({keySize:M+D,hasher:Z}).compute(B,L);else var W=d.create({keySize:M+D}).compute(B,L);var F=i.create(W.words.slice(M),D*4);return W.sigBytes=M*4,x.create({key:W,iv:F,salt:L})}},P=n.PasswordBasedCipher=R.extend({cfg:R.cfg.extend({kdf:N}),encrypt:function(B,M,D,L){L=this.cfg.extend(L);var Z=L.kdf.execute(D,B.keySize,B.ivSize,L.salt,L.hasher);L.iv=Z.iv;var W=R.encrypt.call(this,B,M,Z.key,L);return W.mixIn(Z),W},decrypt:function(B,M,D,L){L=this.cfg.extend(L),M=this._parse(M,L.format);var Z=L.kdf.execute(D,B.keySize,B.ivSize,M.salt,L.hasher);L.iv=Z.iv;var W=R.decrypt.call(this,B,M,Z.key,L);return W}})}()})});var kDe=E((QD,PDe)=>{(function(t,e,r){typeof QD=="object"?PDe.exports=QD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(QD,function(t){return t.mode.CFB=function(){var e=t.lib.BlockCipherMode.extend();e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize;r.call(this,n,s,a,i),this._prevBlock=n.slice(s,s+a)}}),e.Decryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=n.slice(s,s+a);r.call(this,n,s,a,i),this._prevBlock=o}});function r(n,s,i,a){var o,c=this._iv;c?(o=c.slice(0),this._iv=void 0):o=this._prevBlock,a.encryptBlock(o,0);for(var u=0;u<i;u++)n[s+u]^=o[u]}return e}(),t.mode.CFB})});var BDe=E((GD,DDe)=>{(function(t,e,r){typeof GD=="object"?DDe.exports=GD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(GD,function(t){return t.mode.CTR=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._counter;o&&(c=this._counter=o.slice(0),this._iv=void 0);var u=c.slice(0);i.encryptBlock(u,0),c[a-1]=c[a-1]+1|0;for(var l=0;l<a;l++)n[s+l]^=u[l]}});return e.Decryptor=r,e}(),t.mode.CTR})});var MDe=E((KD,LDe)=>{(function(t,e,r){typeof KD=="object"?LDe.exports=KD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(KD,function(t){return t.mode.CTRGladman=function(){var e=t.lib.BlockCipherMode.extend();function r(i){if((i>>24&255)===255){var a=i>>16&255,o=i>>8&255,c=i&255;a===255?(a=0,o===255?(o=0,c===255?c=0:++c):++o):++a,i=0,i+=a<<16,i+=o<<8,i+=c}else i+=1<<24;return i}function n(i){return(i[0]=r(i[0]))===0&&(i[1]=r(i[1])),i}var s=e.Encryptor=e.extend({processBlock:function(i,a){var o=this._cipher,c=o.blockSize,u=this._iv,l=this._counter;u&&(l=this._counter=u.slice(0),this._iv=void 0),n(l);var d=l.slice(0);o.encryptBlock(d,0);for(var f=0;f<c;f++)i[a+f]^=d[f]}});return e.Decryptor=s,e}(),t.mode.CTRGladman})});var $De=E((VD,WDe)=>{(function(t,e,r){typeof VD=="object"?WDe.exports=VD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(VD,function(t){return t.mode.OFB=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._keystream;o&&(c=this._keystream=o.slice(0),this._iv=void 0),i.encryptBlock(c,0);for(var u=0;u<a;u++)n[s+u]^=c[u]}});return e.Decryptor=r,e}(),t.mode.OFB})});var UDe=E((zD,FDe)=>{(function(t,e,r){typeof zD=="object"?FDe.exports=zD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(zD,function(t){return t.mode.ECB=function(){var e=t.lib.BlockCipherMode.extend();return e.Encryptor=e.extend({processBlock:function(r,n){this._cipher.encryptBlock(r,n)}}),e.Decryptor=e.extend({processBlock:function(r,n){this._cipher.decryptBlock(r,n)}}),e}(),t.mode.ECB})});var jDe=E((YD,qDe)=>{(function(t,e,r){typeof YD=="object"?qDe.exports=YD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(YD,function(t){return t.pad.AnsiX923={pad:function(e,r){var n=e.sigBytes,s=r*4,i=s-n%s,a=n+i-1;e.clamp(),e.words[a>>>2]|=i<<24-a%4*8,e.sigBytes+=i},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Ansix923})});var QDe=E((JD,HDe)=>{(function(t,e,r){typeof JD=="object"?HDe.exports=JD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(JD,function(t){return t.pad.Iso10126={pad:function(e,r){var n=r*4,s=n-e.sigBytes%n;e.concat(t.lib.WordArray.random(s-1)).concat(t.lib.WordArray.create([s<<24],1))},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Iso10126})});var KDe=E((XD,GDe)=>{(function(t,e,r){typeof XD=="object"?GDe.exports=XD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(XD,function(t){return t.pad.Iso97971={pad:function(e,r){e.concat(t.lib.WordArray.create([2147483648],1)),t.pad.ZeroPadding.pad(e,r)},unpad:function(e){t.pad.ZeroPadding.unpad(e),e.sigBytes--}},t.pad.Iso97971})});var zDe=E((ZD,VDe)=>{(function(t,e,r){typeof ZD=="object"?VDe.exports=ZD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(ZD,function(t){return t.pad.ZeroPadding={pad:function(e,r){var n=r*4;e.clamp(),e.sigBytes+=n-(e.sigBytes%n||n)},unpad:function(e){for(var r=e.words,n=e.sigBytes-1,n=e.sigBytes-1;n>=0;n--)if(r[n>>>2]>>>24-n%4*8&255){e.sigBytes=n+1;break}}},t.pad.ZeroPadding})});var JDe=E((e3,YDe)=>{(function(t,e,r){typeof e3=="object"?YDe.exports=e3=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(e3,function(t){return t.pad.NoPadding={pad:function(){},unpad:function(){}},t.pad.NoPadding})});var ZDe=E((t3,XDe)=>{(function(t,e,r){typeof t3=="object"?XDe.exports=t3=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(t3,function(t){return function(e){var r=t,n=r.lib,s=n.CipherParams,i=r.enc,a=i.Hex,o=r.format,c=o.Hex={stringify:function(u){return u.ciphertext.toString(a)},parse:function(u){var l=a.parse(u);return s.create({ciphertext:l})}}}(),t.format.Hex})});var t3e=E((r3,e3e)=>{(function(t,e,r){typeof r3=="object"?e3e.exports=r3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(r3,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.algo,i=[],a=[],o=[],c=[],u=[],l=[],d=[],f=[],p=[],m=[];(function(){for(var g=[],b=0;b<256;b++)b<128?g[b]=b<<1:g[b]=b<<1^283;for(var y=0,x=0,b=0;b<256;b++){var v=x^x<<1^x<<2^x<<3^x<<4;v=v>>>8^v&255^99,i[y]=v,a[v]=y;var I=g[y],R=g[I],w=g[R],N=g[v]*257^v*16843008;o[y]=N<<24|N>>>8,c[y]=N<<16|N>>>16,u[y]=N<<8|N>>>24,l[y]=N;var N=w*16843009^R*65537^I*257^y*16843008;d[v]=N<<24|N>>>8,f[v]=N<<16|N>>>16,p[v]=N<<8|N>>>24,m[v]=N,y?(y=I^g[g[g[w^I]]],x^=g[g[x]]):y=x=1}})();var h=[0,1,2,4,8,16,32,64,128,27,54],A=s.AES=n.extend({_doReset:function(){var g;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var b=this._keyPriorReset=this._key,y=b.words,x=b.sigBytes/4,v=this._nRounds=x+6,I=(v+1)*4,R=this._keySchedule=[],w=0;w<I;w++)w<x?R[w]=y[w]:(g=R[w-1],w%x?x>6&&w%x==4&&(g=i[g>>>24]<<24|i[g>>>16&255]<<16|i[g>>>8&255]<<8|i[g&255]):(g=g<<8|g>>>24,g=i[g>>>24]<<24|i[g>>>16&255]<<16|i[g>>>8&255]<<8|i[g&255],g^=h[w/x|0]<<24),R[w]=R[w-x]^g);for(var N=this._invKeySchedule=[],P=0;P<I;P++){var w=I-P;if(P%4)var g=R[w];else var g=R[w-4];P<4||w<=4?N[P]=g:N[P]=d[i[g>>>24]]^f[i[g>>>16&255]]^p[i[g>>>8&255]]^m[i[g&255]]}}},encryptBlock:function(g,b){this._doCryptBlock(g,b,this._keySchedule,o,c,u,l,i)},decryptBlock:function(g,b){var y=g[b+1];g[b+1]=g[b+3],g[b+3]=y,this._doCryptBlock(g,b,this._invKeySchedule,d,f,p,m,a);var y=g[b+1];g[b+1]=g[b+3],g[b+3]=y},_doCryptBlock:function(g,b,y,x,v,I,R,w){for(var N=this._nRounds,P=g[b]^y[0],B=g[b+1]^y[1],M=g[b+2]^y[2],D=g[b+3]^y[3],L=4,Z=1;Z<N;Z++){var W=x[P>>>24]^v[B>>>16&255]^I[M>>>8&255]^R[D&255]^y[L++],F=x[B>>>24]^v[M>>>16&255]^I[D>>>8&255]^R[P&255]^y[L++],K=x[M>>>24]^v[D>>>16&255]^I[P>>>8&255]^R[B&255]^y[L++],j=x[D>>>24]^v[P>>>16&255]^I[B>>>8&255]^R[M&255]^y[L++];P=W,B=F,M=K,D=j}var W=(w[P>>>24]<<24|w[B>>>16&255]<<16|w[M>>>8&255]<<8|w[D&255])^y[L++],F=(w[B>>>24]<<24|w[M>>>16&255]<<16|w[D>>>8&255]<<8|w[P&255])^y[L++],K=(w[M>>>24]<<24|w[D>>>16&255]<<16|w[P>>>8&255]<<8|w[B&255])^y[L++],j=(w[D>>>24]<<24|w[P>>>16&255]<<16|w[B>>>8&255]<<8|w[M&255])^y[L++];g[b]=W,g[b+1]=F,g[b+2]=K,g[b+3]=j},keySize:256/32});e.AES=n._createHelper(A)}(),t.AES})});var n3e=E((n3,r3e)=>{(function(t,e,r){typeof n3=="object"?r3e.exports=n3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(n3,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.BlockCipher,i=e.algo,a=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],o=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],c=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],u=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],l=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],d=i.DES=s.extend({_doReset:function(){for(var h=this._key,A=h.words,g=[],b=0;b<56;b++){var y=a[b]-1;g[b]=A[y>>>5]>>>31-y%32&1}for(var x=this._subKeys=[],v=0;v<16;v++){for(var I=x[v]=[],R=c[v],b=0;b<24;b++)I[b/6|0]|=g[(o[b]-1+R)%28]<<31-b%6,I[4+(b/6|0)]|=g[28+(o[b+24]-1+R)%28]<<31-b%6;I[0]=I[0]<<1|I[0]>>>31;for(var b=1;b<7;b++)I[b]=I[b]>>>(b-1)*4+3;I[7]=I[7]<<5|I[7]>>>27}for(var w=this._invSubKeys=[],b=0;b<16;b++)w[b]=x[15-b]},encryptBlock:function(h,A){this._doCryptBlock(h,A,this._subKeys)},decryptBlock:function(h,A){this._doCryptBlock(h,A,this._invSubKeys)},_doCryptBlock:function(h,A,g){this._lBlock=h[A],this._rBlock=h[A+1],f.call(this,4,252645135),f.call(this,16,65535),p.call(this,2,858993459),p.call(this,8,16711935),f.call(this,1,1431655765);for(var b=0;b<16;b++){for(var y=g[b],x=this._lBlock,v=this._rBlock,I=0,R=0;R<8;R++)I|=u[R][((v^y[R])&l[R])>>>0];this._lBlock=v,this._rBlock=x^I}var w=this._lBlock;this._lBlock=this._rBlock,this._rBlock=w,f.call(this,1,1431655765),p.call(this,8,16711935),p.call(this,2,858993459),f.call(this,16,65535),f.call(this,4,252645135),h[A]=this._lBlock,h[A+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function f(h,A){var g=(this._lBlock>>>h^this._rBlock)&A;this._rBlock^=g,this._lBlock^=g<<h}function p(h,A){var g=(this._rBlock>>>h^this._lBlock)&A;this._lBlock^=g,this._rBlock^=g<<h}e.DES=s._createHelper(d);var m=i.TripleDES=s.extend({_doReset:function(){var h=this._key,A=h.words;if(A.length!==2&&A.length!==4&&A.length<6)throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");var g=A.slice(0,2),b=A.length<4?A.slice(0,2):A.slice(2,4),y=A.length<6?A.slice(0,2):A.slice(4,6);this._des1=d.createEncryptor(n.create(g)),this._des2=d.createEncryptor(n.create(b)),this._des3=d.createEncryptor(n.create(y))},encryptBlock:function(h,A){this._des1.encryptBlock(h,A),this._des2.decryptBlock(h,A),this._des3.encryptBlock(h,A)},decryptBlock:function(h,A){this._des3.decryptBlock(h,A),this._des2.encryptBlock(h,A),this._des1.decryptBlock(h,A)},keySize:192/32,ivSize:64/32,blockSize:64/32});e.TripleDES=s._createHelper(m)}(),t.TripleDES})});var i3e=E((s3,s3e)=>{(function(t,e,r){typeof s3=="object"?s3e.exports=s3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(s3,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=s.RC4=n.extend({_doReset:function(){for(var c=this._key,u=c.words,l=c.sigBytes,d=this._S=[],f=0;f<256;f++)d[f]=f;for(var f=0,p=0;f<256;f++){var m=f%l,h=u[m>>>2]>>>24-m%4*8&255;p=(p+d[f]+h)%256;var A=d[f];d[f]=d[p],d[p]=A}this._i=this._j=0},_doProcessBlock:function(c,u){c[u]^=a.call(this)},keySize:256/32,ivSize:0});function a(){for(var c=this._S,u=this._i,l=this._j,d=0,f=0;f<4;f++){u=(u+1)%256,l=(l+c[u])%256;var p=c[u];c[u]=c[l],c[l]=p,d|=c[(c[u]+c[l])%256]<<24-f*8}return this._i=u,this._j=l,d}e.RC4=n._createHelper(i);var o=s.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var c=this.cfg.drop;c>0;c--)a.call(this)}});e.RC4Drop=n._createHelper(o)}(),t.RC4})});var o3e=E((i3,a3e)=>{(function(t,e,r){typeof i3=="object"?a3e.exports=i3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(i3,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=[],a=[],o=[],c=s.Rabbit=n.extend({_doReset:function(){for(var l=this._key.words,d=this.cfg.iv,f=0;f<4;f++)l[f]=(l[f]<<8|l[f]>>>24)&16711935|(l[f]<<24|l[f]>>>8)&4278255360;var p=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],m=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var f=0;f<4;f++)u.call(this);for(var f=0;f<8;f++)m[f]^=p[f+4&7];if(d){var h=d.words,A=h[0],g=h[1],b=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360,y=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,x=b>>>16|y&4294901760,v=y<<16|b&65535;m[0]^=b,m[1]^=x,m[2]^=y,m[3]^=v,m[4]^=b,m[5]^=x,m[6]^=y,m[7]^=v;for(var f=0;f<4;f++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0<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 p=l[f]+d[f],m=p&65535,h=p>>>16,A=((m*m>>>17)+m*h>>>15)+h*h,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=A^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}e.Rabbit=n._createHelper(c)}(),t.Rabbit})});var u3e=E((a3,c3e)=>{(function(t,e,r){typeof a3=="object"?c3e.exports=a3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(a3,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=[],a=[],o=[],c=s.RabbitLegacy=n.extend({_doReset:function(){var l=this._key.words,d=this.cfg.iv,f=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],p=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var m=0;m<4;m++)u.call(this);for(var m=0;m<8;m++)p[m]^=f[m+4&7];if(d){var h=d.words,A=h[0],g=h[1],b=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360,y=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,x=b>>>16|y&4294901760,v=y<<16|b&65535;p[0]^=b,p[1]^=x,p[2]^=y,p[3]^=v,p[4]^=b,p[5]^=x,p[6]^=y,p[7]^=v;for(var m=0;m<4;m++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0<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 p=l[f]+d[f],m=p&65535,h=p>>>16,A=((m*m>>>17)+m*h>>>15)+h*h,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=A^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}e.RabbitLegacy=n._createHelper(c)}(),t.RabbitLegacy})});var d3e=E((o3,l3e)=>{(function(t,e,r){typeof o3=="object"?l3e.exports=o3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(o3,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.algo;let i=16,a=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],o=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];var c={pbox:[],sbox:[]};function u(m,h){let A=h>>24&255,g=h>>16&255,b=h>>8&255,y=h&255,x=m.sbox[0][A]+m.sbox[1][g];return x=x^m.sbox[2][b],x=x+m.sbox[3][y],x}function l(m,h,A){let g=h,b=A,y;for(let x=0;x<i;++x)g=g^m.pbox[x],b=u(m,g)^b,y=g,g=b,b=y;return y=g,g=b,b=y,b=b^m.pbox[i],g=g^m.pbox[i+1],{left:g,right:b}}function d(m,h,A){let g=h,b=A,y;for(let x=i+1;x>1;--x)g=g^m.pbox[x],b=u(m,g)^b,y=g,g=b,b=y;return y=g,g=b,b=y,b=b^m.pbox[1],g=g^m.pbox[0],{left:g,right:b}}function f(m,h,A){for(let v=0;v<4;v++){m.sbox[v]=[];for(let I=0;I<256;I++)m.sbox[v][I]=o[v][I]}let g=0;for(let v=0;v<i+2;v++)m.pbox[v]=a[v]^h[g],g++,g>=A&&(g=0);let b=0,y=0,x=0;for(let v=0;v<i+2;v+=2)x=l(m,b,y),b=x.left,y=x.right,m.pbox[v]=b,m.pbox[v+1]=y;for(let v=0;v<4;v++)for(let I=0;I<256;I+=2)x=l(m,b,y),b=x.left,y=x.right,m.sbox[v][I]=b,m.sbox[v][I+1]=y;return!0}var p=s.Blowfish=n.extend({_doReset:function(){if(this._keyPriorReset!==this._key){var m=this._keyPriorReset=this._key,h=m.words,A=m.sigBytes/4;f(c,h,A)}},encryptBlock:function(m,h){var A=l(c,m[h],m[h+1]);m[h]=A.left,m[h+1]=A.right},decryptBlock:function(m,h){var A=d(c,m[h],m[h+1]);m[h]=A.left,m[h+1]=A.right},blockSize:64/32,keySize:128/32,ivSize:64/32});e.Blowfish=n._createHelper(p)}(),t.Blowfish})});var Jn=E((c3,f3e)=>{(function(t,e,r){typeof c3=="object"?f3e.exports=c3=e(fr(),Iv(),uDe(),dDe(),d0(),mDe(),f0(),PQ(),DD(),xDe(),kQ(),_De(),vDe(),CDe(),UD(),RDe(),Gd(),Os(),kDe(),BDe(),MDe(),$De(),UDe(),jDe(),QDe(),KDe(),zDe(),JDe(),ZDe(),t3e(),n3e(),i3e(),o3e(),u3e(),d3e()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./lib-typedarrays","./enc-utf16","./enc-base64","./enc-base64url","./md5","./sha1","./sha256","./sha224","./sha512","./sha384","./sha3","./ripemd160","./hmac","./pbkdf2","./evpkdf","./cipher-core","./mode-cfb","./mode-ctr","./mode-ctr-gladman","./mode-ofb","./mode-ecb","./pad-ansix923","./pad-iso10126","./pad-iso97971","./pad-zeropadding","./pad-nopadding","./format-hex","./aes","./tripledes","./rc4","./rabbit","./rabbit-legacy","./blowfish"],e):t.CryptoJS=e(t.CryptoJS)})(c3,function(t){return t})});var wv=E(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.getOptions=sr.setOptions=sr.hasOwnProp=sr.formatDate=sr.camelify=sr.splitByCommaWithPreservingQuotes=sr.trim=sr.splitAt=sr.tryCatch=sr.byteSequenceToHex=sr.hexToByteSequence=sr.toNumber=sr.INVALIDPLAYLIST=sr.CONDITIONALPARAMCHECK=sr.PARAMCHECK=sr.CONDITIONALASSERT=sr.ASSERT=sr.THROW=void 0;var Tv={};function Nh(t){if(!Tv.strictMode){Tv.silent||console.error(t.message);return}throw t}sr.THROW=Nh;function lJt(t,...e){for(let[r,n]of e.entries())n||Nh(new Error(`${t} : Failed at [${r}]`))}sr.ASSERT=lJt;function dJt(...t){for(let[e,[r,n]]of t.entries())r&&(n||Nh(new Error(`Conditional Assert : Failed at [${e}]`)))}sr.CONDITIONALASSERT=dJt;function fJt(...t){for(let[e,r]of t.entries())r===void 0&&Nh(new Error(`Param Check : Failed at [${e}]`))}sr.PARAMCHECK=fJt;function pJt(...t){for(let[e,[r,n]]of t.entries())r&&n===void 0&&Nh(new Error(`Conditional Param Check : Failed at [${e}]`))}sr.CONDITIONALPARAMCHECK=pJt;function mJt(t){Nh(new Error(`Invalid Playlist : ${t}`))}sr.INVALIDPLAYLIST=mJt;function g3e(t,e=10){if(typeof t=="number")return t;let r=e===10?Number.parseFloat(t):Number.parseInt(t,e);return Number.isNaN(r)?0:r}sr.toNumber=g3e;function hJt(t){(t.startsWith("0x")||t.startsWith("0X"))&&(t=t.slice(2));let e=[];for(let r=0;r<t.length;r+=2)e.push(g3e(t.slice(r,r+2),16));return Buffer.from(e)}sr.hexToByteSequence=hJt;function gJt(t,e=0,r=t.length){r<=e&&Nh(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("")}`}sr.byteSequenceToHex=gJt;function AJt(t,e){try{return t()}catch(r){return e(r)}}sr.tryCatch=AJt;function yJt(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]}sr.splitAt=yJt;function xJt(t,e=" "){return!t||(t=t.trim(),e===" ")||(t.startsWith(e)&&(t=t.slice(1)),t.endsWith(e)&&(t=t.slice(0,-1))),t}sr.trim=xJt;function bJt(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}sr.splitByCommaWithPreservingQuotes=bJt;function EJt(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("")}sr.camelify=EJt;function _Jt(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`}sr.formatDate=_Jt;function SJt(t,e){return Object.hasOwnProperty.call(t,e)}sr.hasOwnProp=SJt;function vJt(t={}){Tv=Object.assign(Tv,t)}sr.setOptions=vJt;function IJt(){return Object.assign({},Tv)}sr.getOptions=IJt});var VQ=E(pr=>{"use strict";var CJt=pr&&pr.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),TJt=pr&&pr.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),wJt=pr&&pr.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&CJt(e,t,r);return TJt(e,t),e};Object.defineProperty(pr,"__esModule",{value:!0});pr.RenditionReport=pr.PrefetchSegment=pr.PartialSegment=pr.Segment=pr.MediaPlaylist=pr.MasterPlaylist=pr.Playlist=pr.SpliceInfo=pr.DateRange=pr.MediaInitializationSection=pr.Key=pr.SessionData=pr.Variant=pr.Rendition=void 0;var Es=wJt(wv()),BQ=class{constructor({type:e,uri:r,groupId:n,language:s,assocLanguage:i,name:a,isDefault:o,autoselect:c,forced:u,instreamId:l,characteristics:d,channels:f}){Es.PARAMCHECK(e,n,a),Es.CONDITIONALASSERT([e==="SUBTITLES",r],[e==="CLOSED-CAPTIONS",l],[e==="CLOSED-CAPTIONS",!r],[u,e==="SUBTITLES"]),this.type=e,this.uri=r,this.groupId=n,this.language=s,this.assocLanguage=i,this.name=a,this.isDefault=o,this.autoselect=c,this.forced=u,this.instreamId=l,this.characteristics=d,this.channels=f}};pr.Rendition=BQ;var LQ=class{constructor({uri:e,isIFrameOnly:r=!1,bandwidth:n,averageBandwidth:s,score:i,codecs:a,resolution:o,frameRate:c,hdcpLevel:u,allowedCpc:l,videoRange:d,stableVariantId:f,programId:p,audio:m=[],video:h=[],subtitles:A=[],closedCaptions:g=[],currentRenditions:b={audio:0,video:0,subtitles:0,closedCaptions:0}}){Es.PARAMCHECK(e,n),this.uri=e,this.isIFrameOnly=r,this.bandwidth=n,this.averageBandwidth=s,this.score=i,this.codecs=a,this.resolution=o,this.frameRate=c,this.hdcpLevel=u,this.allowedCpc=l,this.videoRange=d,this.stableVariantId=f,this.programId=p,this.audio=m,this.video=h,this.subtitles=A,this.closedCaptions=g,this.currentRenditions=b}};pr.Variant=LQ;var MQ=class{constructor({id:e,value:r,uri:n,language:s}){Es.PARAMCHECK(e,r||n),Es.ASSERT("SessionData cannot have both value and uri, shoud be either.",!(r&&n)),this.id=e,this.value=r,this.uri=n,this.language=s}};pr.SessionData=MQ;var WQ=class{constructor({method:e,uri:r,iv:n,format:s,formatVersion:i}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([e!=="NONE",r]),Es.CONDITIONALASSERT([e==="NONE",!(r||n||s||i)]),this.method=e,this.uri=r,this.iv=n,this.format=s,this.formatVersion=i}};pr.Key=WQ;var $Q=class{constructor({hint:e=!1,uri:r,mimeType:n,byterange:s}){Es.PARAMCHECK(r),this.hint=e,this.uri=r,this.mimeType=n,this.byterange=s}};pr.MediaInitializationSection=$Q;var FQ=class{constructor({id:e,classId:r,start:n,end:s,duration:i,plannedDuration:a,endOnNext:o,attributes:c={}}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([o===!0,r]),Es.CONDITIONALASSERT([s,n],[s,n<=s],[i,i>=0],[a,a>=0]),this.id=e,this.classId=r,this.start=n,this.end=s,this.duration=i,this.plannedDuration=a,this.endOnNext=o,this.attributes=c}};pr.DateRange=FQ;var UQ=class{constructor({type:e,duration:r,tagName:n,value:s}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([e==="OUT",r]),Es.CONDITIONALPARAMCHECK([e==="RAW",n]),this.type=e,this.duration=r,this.tagName=n,this.value=s}};pr.SpliceInfo=UQ;var $x=class{constructor(e){Es.PARAMCHECK(e),this.type=e}},Rv=class extends $x{constructor({isMasterPlaylist:e,uri:r,version:n,independentSegments:s=!1,start:i,source:a}){super("playlist"),Es.PARAMCHECK(e),this.isMasterPlaylist=e,this.uri=r,this.version=n,this.independentSegments=s,this.start=i,this.source=a}};pr.Playlist=Rv;var qQ=class extends Rv{constructor(e={}){super({...e,isMasterPlaylist:!0});let{variants:r=[],currentVariant:n,sessionDataList:s=[],sessionKeyList:i=[]}=e;this.variants=r,this.currentVariant=n,this.sessionDataList=s,this.sessionKeyList=i}};pr.MasterPlaylist=qQ;var jQ=class extends Rv{constructor(e={}){super({...e,isMasterPlaylist:!1});let{targetDuration:r,mediaSequenceBase:n=0,discontinuitySequenceBase:s=0,endlist:i=!1,playlistType:a,isIFrame:o,segments:c=[],prefetchSegments:u=[],lowLatencyCompatibility:l,partTargetDuration:d,renditionReports:f=[],skip:p=0,hash:m}=e;this.targetDuration=r,this.mediaSequenceBase=n,this.discontinuitySequenceBase=s,this.endlist=i,this.playlistType=a,this.isIFrame=o,this.segments=c,this.prefetchSegments=u,this.lowLatencyCompatibility=l,this.partTargetDuration=d,this.renditionReports=f,this.skip=p,this.hash=m}};pr.MediaPlaylist=jQ;var HQ=class extends $x{constructor({uri:e,mimeType:r,data:n,duration:s,title:i,byterange:a,discontinuity:o,mediaSequenceNumber:c=0,discontinuitySequence:u=0,key:l,map:d,programDateTime:f,dateRange:p,markers:m=[],parts:h=[]}){super("segment"),this.uri=e,this.mimeType=r,this.data=n,this.duration=s,this.title=i,this.byterange=a,this.discontinuity=o,this.mediaSequenceNumber=c,this.discontinuitySequence=u,this.key=l,this.map=d,this.programDateTime=f,this.dateRange=p,this.markers=m,this.parts=h}};pr.Segment=HQ;var QQ=class extends $x{constructor({hint:e=!1,uri:r,duration:n,independent:s,byterange:i,gap:a}){super("part"),Es.PARAMCHECK(r),this.hint=e,this.uri=r,this.duration=n,this.independent=s,this.duration=n,this.byterange=i,this.gap=a}};pr.PartialSegment=QQ;var GQ=class extends $x{constructor({uri:e,discontinuity:r,mediaSequenceNumber:n=0,discontinuitySequence:s=0,key:i}){super("prefetch"),Es.PARAMCHECK(e),this.uri=e,this.discontinuity=r,this.mediaSequenceNumber=n,this.discontinuitySequence=s,this.key=i}};pr.PrefetchSegment=GQ;var KQ=class{constructor({uri:e,lastMSN:r,lastPart:n}){Es.PARAMCHECK(e),this.uri=e,this.lastMSN=r,this.lastPart=n}};pr.RenditionReport=KQ});var v3e=E(Kd=>{"use strict";var RJt=Kd&&Kd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),NJt=Kd&&Kd.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),OJt=Kd&&Kd.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&RJt(e,t,r);return NJt(e,t),e};Object.defineProperty(Kd,"__esModule",{value:!0});var We=OJt(wv()),ti=VQ();function _3e(t){return We.trim(t,'"')}function PJt(t){switch(t){case"EXTM3U":case"EXT-X-VERSION":return"Basic";case"EXTINF":case"EXT-X-BYTERANGE":case"EXT-X-DISCONTINUITY":case"EXT-X-PREFETCH-DISCONTINUITY":case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-PROGRAM-DATE-TIME":case"EXT-X-DATERANGE":case"EXT-X-CUE-OUT":case"EXT-X-CUE-IN":case"EXT-X-CUE-OUT-CONT":case"EXT-X-CUE":case"EXT-OATCLS-SCTE35":case"EXT-X-ASSET":case"EXT-X-SCTE35":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":return"Segment";case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":case"EXT-X-ENDLIST":case"EXT-X-PLAYLIST-TYPE":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PREFETCH":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return"MediaPlaylist";case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":return"MasterPlaylist";case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-START":return"MediaorMasterPlaylist";default:return"Unknown"}}function kJt(t){let e=We.splitAt(t,",");return{duration:We.toNumber(e[0]),title:decodeURIComponent(escape(e[1]))}}function S3e(t){let e=We.splitAt(t,"@");return{length:We.toNumber(e[0]),offset:e[1]?We.toNumber(e[1]):-1}}function DJt(t){let e=We.splitAt(t,"x");return{width:We.toNumber(e[0]),height:We.toNumber(e[1])}}function BJt(t){let e="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",r=t.split(",");r.length===0&&We.INVALIDPLAYLIST(e);let n=[];for(let s of r){let[i,a]=We.splitAt(s,":");if(!i||!a){We.INVALIDPLAYLIST(e);continue}n.push({format:i,cpcList:a.split("/")})}return n}function LJt(t){let e=We.hexToByteSequence(t);return e.length!==16&&We.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),e}function MJt(t){return t.startsWith('"')?_3e(t):t.startsWith("0x")||t.startsWith("0X")?We.hexToByteSequence(t):We.toNumber(t)}function zQ(t,e){e.IV&&t.compatibleVersion<2&&(t.compatibleVersion=2),(e.KEYFORMAT||e.KEYFORMATVERSIONS)&&t.compatibleVersion<5&&(t.compatibleVersion=5)}function A3e(t){let e={};for(let r of We.splitByCommaWithPreservingQuotes(t)){let[n,s]=We.splitAt(r,"="),i=_3e(s);switch(n){case"URI":e[n]=i;break;case"START-DATE":case"END-DATE":e[n]=new Date(i);break;case"IV":e[n]=LJt(i);break;case"BYTERANGE":e[n]=S3e(i);break;case"RESOLUTION":e[n]=DJt(i);break;case"ALLOWED-CPC":e[n]=BJt(i);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":e[n]=i==="YES";break;case"DURATION":case"PLANNED-DURATION":case"BANDWIDTH":case"AVERAGE-BANDWIDTH":case"FRAME-RATE":case"TIME-OFFSET":case"CAN-SKIP-UNTIL":case"HOLD-BACK":case"PART-HOLD-BACK":case"PART-TARGET":case"BYTERANGE-START":case"BYTERANGE-LENGTH":case"LAST-MSN":case"LAST-PART":case"SKIPPED-SEGMENTS":case"SCORE":case"PROGRAM-ID":e[n]=We.toNumber(i);break;default:n.startsWith("SCTE35-")?e[n]=We.hexToByteSequence(i):n.startsWith("X-")?e[n]=MJt(s):(n==="VIDEO-RANGE"&&i!=="SDR"&&i!=="HLG"&&i!=="PQ"&&We.INVALIDPLAYLIST(`VIDEO-RANGE: unknown value "${i}"`),e[n]=i)}}return e}function WJt(t,e){switch(t){case"EXTM3U":case"EXT-X-DISCONTINUITY":case"EXT-X-ENDLIST":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-CUE-IN":return[null,null];case"EXT-X-VERSION":case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":return[We.toNumber(e),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(e))?[null,A3e(e)]:[We.toNumber(e),null];case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-DATERANGE":case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":case"EXT-X-START":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return[null,A3e(e)];case"EXTINF":return[kJt(e),null];case"EXT-X-BYTERANGE":return[S3e(e),null];case"EXT-X-PROGRAM-DATE-TIME":return[new Date(e),null];case"EXT-X-PLAYLIST-TYPE":return[e,null];default:return[e,null]}}function y3e(){We.INVALIDPLAYLIST("The file contains both media and master playlist tags.")}function $Jt(t){let e=t.indexOf(":");return e===-1?[t.slice(1).trim(),null]:[t.slice(1,e).trim(),t.slice(e+1).trim()]}function FJt({attributes:t}){return new ti.Rendition({type:t.TYPE,uri:t.URI,groupId:t["GROUP-ID"],language:t.LANGUAGE,assocLanguage:t["ASSOC-LANGUAGE"],name:t.NAME,isDefault:t.DEFAULT,autoselect:t.AUTOSELECT,forced:t.FORCED,instreamId:t["INSTREAM-ID"],characteristics:t.CHARACTERISTICS,channels:t.CHANNELS})}function UJt(t,e){let r=!1;for(let n of t){if(n.name===e.name)return"All EXT-X-MEDIA tags in the same Group MUST have different NAME attributes.";n.isDefault&&(r=!0)}return r&&e.isDefault?"EXT-X-MEDIA A Group MUST NOT have more than one member with a DEFAULT attribute of YES.":""}function qJt(t,e,r){let n=FJt(e),s=t[We.camelify(r)],i=UJt(s,n);i&&We.INVALIDPLAYLIST(i),s.push(n),n.isDefault&&(t.currentRenditions[We.camelify(r)]=s.length-1)}function jJt(t,e,r){for(let n of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])n==="CLOSED-CAPTIONS"&&t[n]==="NONE"?(r.isClosedCaptionsNone=!0,e.closedCaptions=[]):t[n]&&!e[We.camelify(n)].some(s=>s.groupId===t[n])&&We.INVALIDPLAYLIST(`${n} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${n}.`)}function x3e(t,e,r,n,s){let i=new ti.Variant({uri:r,bandwidth:e.BANDWIDTH,averageBandwidth:e["AVERAGE-BANDWIDTH"],score:e.SCORE,codecs:e.CODECS,resolution:e.RESOLUTION,frameRate:e["FRAME-RATE"],hdcpLevel:e["HDCP-LEVEL"],allowedCpc:e["ALLOWED-CPC"],videoRange:e["VIDEO-RANGE"],stableVariantId:e["STABLE-VARIANT-ID"],programId:e["PROGRAM-ID"]});for(let a of t)if(a.name==="EXT-X-MEDIA"){let o=a.attributes,c=o.TYPE;if((!c||!o["GROUP-ID"])&&We.INVALIDPLAYLIST("EXT-X-MEDIA TYPE attribute is REQUIRED."),e[c]===o["GROUP-ID"]&&(qJt(i,a,c),c==="CLOSED-CAPTIONS")){for(let{instreamId:u}of i.closedCaptions)if(u&&u.startsWith("SERVICE")&&s.compatibleVersion<7){s.compatibleVersion=7;break}}}return jJt(e,i,s),i.isIFrameOnly=n,i}function HJt(t,e){if(t.method!==e.method||t.uri!==e.uri)return!1;if(t.iv){if(!e.iv||t.iv.length!==e.iv.length)return!1;for(let r=0;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 QJt(t,e){let r=new ti.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"))&&We.INVALIDPLAYLIST("EXT-X-STREAM-INF must be followed by a URI line");let u=x3e(t,o,c,!1,e);u&&(typeof u.score=="number"&&(n=!0,u.score<0&&We.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=x3e(t,o,o.URI,!0,e);c&&r.variants.push(c)}else if(i==="EXT-X-SESSION-DATA"){let c=new ti.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)&&We.INVALIDPLAYLIST("A Playlist MUST NOT contain more than one EXT-X-SESSION-DATA tag with the same DATA-ID attribute and the same LANGUAGE attribute."),r.sessionDataList.push(c)}else if(i==="EXT-X-SESSION-KEY"){o.METHOD==="NONE"&&We.INVALIDPLAYLIST("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE");let c=new ti.Key({method:o.METHOD,uri:o.URI,iv:o.IV,format:o.KEYFORMAT,formatVersion:o.KEYFORMATVERSIONS});r.sessionKeyList.some(u=>HJt(u,c))&&We.INVALIDPLAYLIST("A Master Playlist MUST NOT contain more than one EXT-X-SESSION-KEY tag with the same METHOD, URI, IV, KEYFORMAT, and KEYFORMATVERSIONS attribute values."),zQ(e,o),r.sessionKeyList.push(c)}else i==="EXT-X-INDEPENDENT-SEGMENTS"?(r.independentSegments&&We.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0):i==="EXT-X-START"&&(r.start&&We.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof o["TIME-OFFSET"]!="number"&&We.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:o["TIME-OFFSET"],precise:o.PRECISE||!1});if(n)for(let s of r.variants)typeof s.score!="number"&&We.INVALIDPLAYLIST("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute");if(e.isClosedCaptionsNone)for(let s of r.variants)s.closedCaptions.length>0&&We.INVALIDPLAYLIST("If there is a variant with CLOSED-CAPTIONS attribute of NONE, all EXT-X-STREAM-INF tags MUST have this attribute with a value of NONE");return r}function b3e(t,e,r,n,s,i,a){let o=new ti.Segment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i}),c=!1,u=!1;for(let l=r;l<=n;l++){let{name:d,value:f,attributes:p}=t[l];if(d==="EXTINF")!Number.isInteger(f.duration)&&a.compatibleVersion<3&&(a.compatibleVersion=3),Math.round(f.duration)>a.targetDuration&&We.INVALIDPLAYLIST("EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration"),o.duration=f.duration,o.title=f.title;else if(d==="EXT-X-BYTERANGE")a.compatibleVersion<4&&(a.compatibleVersion=4),o.byterange=f;else if(d==="EXT-X-DISCONTINUITY")o.parts.length>0&&We.INVALIDPLAYLIST("EXT-X-DISCONTINUITY must appear before the first EXT-X-PART tag of the Parent Segment."),o.discontinuity=!0;else if(d==="EXT-X-KEY")o.parts.length>0&&We.INVALIDPLAYLIST("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment."),zQ(a,p),o.key=new ti.Key({method:p.METHOD,uri:p.URI,iv:p.IV,format:p.KEYFORMAT,formatVersion:p.KEYFORMATVERSIONS});else if(d==="EXT-X-MAP")o.parts.length>0&&We.INVALIDPLAYLIST("EXT-X-MAP must appear before the first EXT-X-PART tag of the Parent Segment."),a.compatibleVersion<5&&(a.compatibleVersion=5),a.hasMap=!0,o.map=new ti.MediaInitializationSection({uri:p.URI,byterange:p.BYTERANGE});else if(d==="EXT-X-PROGRAM-DATE-TIME")o.programDateTime=f;else if(d==="EXT-X-DATERANGE"){let m={};for(let h of Object.keys(p))(h.startsWith("SCTE35-")||h.startsWith("X-"))&&(m[h]=p[h]);o.dateRange=new ti.DateRange({id:p.ID,classId:p.CLASS,start:p["START-DATE"],end:p["END-DATE"],duration:p.DURATION,plannedDuration:p["PLANNED-DURATION"],endOnNext:p["END-ON-NEXT"],attributes:m})}else if(d==="EXT-X-CUE-OUT")o.markers.push(new ti.SpliceInfo({type:"OUT",duration:p&&p.DURATION||f}));else if(d==="EXT-X-CUE-IN")o.markers.push(new ti.SpliceInfo({type:"IN"}));else if(d==="EXT-X-CUE-OUT-CONT"||d==="EXT-X-CUE"||d==="EXT-OATCLS-SCTE35"||d==="EXT-X-ASSET"||d==="EXT-X-SCTE35")o.markers.push(new ti.SpliceInfo({type:"RAW",tagName:d,value:f}));else if(d==="EXT-X-PRELOAD-HINT"&&!p.TYPE)We.INVALIDPLAYLIST("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"&&u)We.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist.");else if((d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT")&&!p.URI)We.INVALIDPLAYLIST("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="MAP")c&&We.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist."),c=!0,a.hasMap=!0,o.map=new ti.MediaInitializationSection({hint:!0,uri:p.URI,byterange:{length:p["BYTERANGE-LENGTH"],offset:p["BYTERANGE-START"]||0}});else if(d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"){d==="EXT-X-PART"&&!p.DURATION&&We.INVALIDPLAYLIST("EXT-X-PART: DURATION attribute is mandatory"),d==="EXT-X-PRELOAD-HINT"&&(u=!0);let m=new ti.PartialSegment({hint:d==="EXT-X-PRELOAD-HINT",uri:p.URI,byterange:d==="EXT-X-PART"?p.BYTERANGE:{length:p["BYTERANGE-LENGTH"],offset:p["BYTERANGE-START"]||0},duration:p.DURATION,independent:p.INDEPENDENT,gap:p.GAP});o.parts.push(m)}}return o}function GJt(t,e,r,n,s,i,a){let o=new ti.PrefetchSegment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i});for(let c=r;c<=n;c++){let{name:u,attributes:l}=t[c];u==="EXTINF"?We.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXTINF tag."):u==="EXT-X-DISCONTINUITY"?We.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXT-X-DISCONTINUITY tag."):u==="EXT-X-PREFETCH-DISCONTINUITY"?o.discontinuity=!0:u==="EXT-X-KEY"?(zQ(a,l),o.key=new ti.Key({method:l.METHOD,uri:l.URI,iv:l.IV,format:l.KEYFORMAT,formatVersion:l.KEYFORMATVERSIONS})):u==="EXT-X-MAP"&&We.INVALIDPLAYLIST("Prefetch segments must not be advertised with an EXT-X-MAP tag.")}return o}function KJt(t,e){let r=new ti.MediaPlaylist,n=-1,s=0,i=!1,a=!1,o=0,c=null,u=null,l=!1;for(let[d,f]of t.entries()){let{name:p,value:m,attributes:h,category:A}=f;if(A==="Segment"){n===-1&&(n=d),p==="EXT-X-DISCONTINUITY"&&(i=!0);continue}if(p==="EXT-X-VERSION")r.version===void 0?r.version=m:We.INVALIDPLAYLIST("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.");else if(p==="EXT-X-TARGETDURATION")r.targetDuration=e.targetDuration=m;else if(p==="EXT-X-MEDIA-SEQUENCE")r.segments.length>0&&We.INVALIDPLAYLIST("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),r.mediaSequenceBase=s=m;else if(p==="EXT-X-DISCONTINUITY-SEQUENCE")r.segments.length>0&&We.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),i&&We.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag."),r.discontinuitySequenceBase=o=m;else if(p==="EXT-X-ENDLIST")r.endlist=!0;else if(p==="EXT-X-PLAYLIST-TYPE")r.playlistType=m;else if(p==="EXT-X-I-FRAMES-ONLY")e.compatibleVersion<4&&(e.compatibleVersion=4),r.isIFrame=!0;else if(p==="EXT-X-INDEPENDENT-SEGMENTS")r.independentSegments&&We.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0;else if(p==="EXT-X-START")r.start&&We.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof h["TIME-OFFSET"]!="number"&&We.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:h["TIME-OFFSET"],precise:h.PRECISE||!1};else if(p==="EXT-X-SERVER-CONTROL")h["CAN-BLOCK-RELOAD"]||We.INVALIDPLAYLIST("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS"),r.lowLatencyCompatibility={canBlockReload:h["CAN-BLOCK-RELOAD"],canSkipUntil:h["CAN-SKIP-UNTIL"],holdBack:h["HOLD-BACK"],partHoldBack:h["PART-HOLD-BACK"]};else if(p==="EXT-X-PART-INF")h["PART-TARGET"]||We.INVALIDPLAYLIST("EXT-X-PART-INF: PART-TARGET attribute is mandatory"),r.partTargetDuration=h["PART-TARGET"];else if(p==="EXT-X-RENDITION-REPORT")h.URI||We.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI attribute is mandatory"),h.URI.search(/^[a-z]+:/)===0&&We.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri"),r.renditionReports.push(new ti.RenditionReport({uri:h.URI,lastMSN:h["LAST-MSN"],lastPart:h["LAST-PART"]}));else if(p==="EXT-X-SKIP")h["SKIPPED-SEGMENTS"]||We.INVALIDPLAYLIST("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory"),e.compatibleVersion<9&&(e.compatibleVersion=9),r.skip=h["SKIPPED-SEGMENTS"],s+=r.skip;else if(p==="EXT-X-PREFETCH"){let g=GJt(t,m,n===-1?d:n,d-1,s++,o,e);g&&(g.discontinuity&&(g.discontinuitySequence++,o=g.discontinuitySequence),g.key?c=g.key:g.key=c,r.prefetchSegments.push(g)),a=!0,n=-1}else if(typeof f=="string"){n===-1&&We.INVALIDPLAYLIST("A URI line is not preceded by any segment tags"),r.targetDuration||We.INVALIDPLAYLIST("The EXT-X-TARGETDURATION tag is REQUIRED"),a&&We.INVALIDPLAYLIST("These segments must appear after all complete segments.");let g=b3e(t,f,n,d-1,s++,o,e);g&&([o,c,u]=E3e(r,g,o,c,u),!l&&g.parts.length>0&&(l=!0)),n=-1}}if(n!==-1){let d=b3e(t,"",n,t.length-1,s++,o,e);if(d){let{parts:f}=d;f.length>0&&!r.endlist&&!f.at(-1)?.hint&&We.INVALIDPLAYLIST("If the Playlist contains EXT-X-PART tags and does not contain an EXT-X-ENDLIST tag, the Playlist must contain an EXT-X-PRELOAD-HINT tag with a TYPE=PART attribute"),E3e(r,d,c,u),!l&&d.parts.length>0&&(l=!0)}}return VJt(r.segments),r.lowLatencyCompatibility&&zJt(r,l),r}function E3e(t,e,r,n,s){let{discontinuity:i,key:a,map:o,byterange:c,uri:u}=e;if(i&&(e.discontinuitySequence=r+1),a||(e.key=n),o||(e.map=s),c&&c.offset===-1){let{segments:l}=t;if(l.length>0){let d=l.at(-1);d.byterange&&d.uri===u?c.offset=d.byterange.offset+d.byterange.length:We.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST be a sub-range of the same media resource")}else We.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file")}return t.segments.push(e),[e.discontinuitySequence,e.key,e.map]}function VJt(t){let e=new Map,r=new Map,n=!1,s=!1;for(let i=t.length-1;i>=0;i--){let{programDateTime:a,dateRange:o}=t[i];if(a&&(s=!0),o&&o.start){n=!0,o.endOnNext&&(o.end||o.duration)&&We.INVALIDPLAYLIST("An EXT-X-DATERANGE tag with an END-ON-NEXT=YES attribute MUST NOT contain DURATION or END-DATE attributes.");let c=o.start.getTime(),u=o.duration||0;o.end&&o.duration&&c+u*1e3!==o.end.getTime()&&We.INVALIDPLAYLIST("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION"),o.endOnNext&&(o.end=e.get(o.classId)),e.set(o.classId,o.start);let l=o.end?o.end.getTime():o.start.getTime()+(o.duration||0)*1e3,d=r.get(o.classId);if(d){for(let f of d)(f.start<=c&&f.end>c||f.start>=c&&f.start<l)&&We.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&&We.INVALIDPLAYLIST("If a Playlist contains an EXT-X-DATERANGE tag, it MUST also contain at least one EXT-X-PROGRAM-DATE-TIME tag.")}function zJt({lowLatencyCompatibility:t,targetDuration:e,partTargetDuration:r,segments:n,renditionReports:s},i){let{canSkipUntil:a,holdBack:o,partHoldBack:c}=t;if(a<e*6&&We.INVALIDPLAYLIST("The Skip Boundary must be at least six times the EXT-X-TARGETDURATION."),o<e*3&&We.INVALIDPLAYLIST("HOLD-BACK must be at least three times the EXT-X-TARGETDURATION."),i){r===void 0&&We.INVALIDPLAYLIST("EXT-X-PART-INF is required if a Playlist contains one or more EXT-X-PART tags"),c===void 0&&We.INVALIDPLAYLIST("EXT-X-PART: PART-HOLD-BACK attribute is mandatory"),c<r&&We.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&&We.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&&We.INVALIDPLAYLIST("PART-TARGET is the maximum duration of any Partial Segment"),d<l.length-1&&f<r*.85&&We.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 YJt(t,e){if(t==="Segment"||t==="MediaPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!1;return}e.isMasterPlaylist&&y3e();return}if(t==="MasterPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!0;return}e.isMasterPlaylist===!1&&y3e()}}function JJt(t,e){let[r,n]=$Jt(t),s=PJt(r);if(YJt(s,e),s==="Unknown")return null;s==="MediaPlaylist"&&r!=="EXT-X-RENDITION-REPORT"&&r!=="EXT-X-PREFETCH"&&(e.hash[r]&&We.INVALIDPLAYLIST("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist"),e.hash[r]=!0);let[i,a]=WJt(r,n);return{name:r,category:s,value:i,attributes:a}}function XJt(t,e){let r=[];for(let n of t.split(`
`)){let s=Buffer.from(n.trim()).toString();if(s){if(s.startsWith("#")){if(s.startsWith("#EXT")){let i=JJt(s,e);i&&r.push(i)}continue}r.push(s)}}return(r.length===0||r[0].name!=="EXTM3U")&&We.INVALIDPLAYLIST("The EXTM3U tag MUST be the first line."),r}function ZJt(t,e){let r;return e.isMasterPlaylist?r=QJt(t,e):(r=KJt(t,e),!r.isIFrame&&e.hasMap&&e.compatibleVersion<6&&(e.compatibleVersion=6)),e.compatibleVersion>1&&(!r.version||r.version<e.compatibleVersion)&&We.INVALIDPLAYLIST(`EXT-X-VERSION needs to be ${e.compatibleVersion} or higher.`),r}function eXt(t){let e={version:void 0,isMasterPlaylist:void 0,hasMap:!1,targetDuration:0,compatibleVersion:1,isClosedCaptionsNone:!1,hash:{}},r=XJt(t,e),n=ZJt(r,e);return n.source=t,n}Kd.default=eXt});var C3e=E(Vd=>{"use strict";var tXt=Vd&&Vd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),rXt=Vd&&Vd.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),nXt=Vd&&Vd.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&tXt(e,t,r);return rXt(e,t),e};Object.defineProperty(Vd,"__esModule",{value:!0});var uu=nXt(wv()),sXt=["#EXTINF","#EXT-X-BYTERANGE","#EXT-X-DISCONTINUITY","#EXT-X-STREAM-INF","#EXT-X-CUE-OUT","#EXT-X-CUE-IN","#EXT-X-KEY","#EXT-X-MAP"],iXt=["#EXT-X-MEDIA"],YQ=class extends Array{constructor(e){super(),this.baseUri=e}push(...e){for(let r of e){if(!r.startsWith("#")){super.push(r);continue}if(sXt.some(n=>r.startsWith(n))){super.push(r);continue}if(this.includes(r)){if(iXt.some(n=>r.startsWith(n)))continue;uu.INVALIDPLAYLIST(`Redundant item (${r})`)}super.push(r)}return this.length}};function JQ(t,e){let r=1e3;e&&(r=10**e);let n=Math.round(t*r)/r;return e?n.toFixed(e):n}function aXt(t){let e=t.toString(10),r=e.indexOf(".");return r===-1?0:e.length-r-1}function oXt(t,e){for(let r of e.sessionDataList)t.push(cXt(r));for(let r of e.sessionKeyList)t.push(I3e(r,!0));for(let r of e.variants)uXt(t,r)}function cXt(t){let e=[`DATA-ID="${t.id}"`];return t.language&&e.push(`LANGUAGE="${t.language}"`),t.value?e.push(`VALUE="${t.value}"`):t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-SESSION-DATA:${e.join(",")}`}function I3e(t,e){let r=e?"#EXT-X-SESSION-KEY":"#EXT-X-KEY",n=[`METHOD=${t.method}`];return t.uri&&n.push(`URI="${t.uri}"`),t.iv&&(t.iv.length!==16&&uu.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),n.push(`IV=${uu.byteSequenceToHex(t.iv)}`)),t.format&&n.push(`KEYFORMAT="${t.format}"`),t.formatVersion&&n.push(`KEYFORMATVERSIONS="${t.formatVersion}"`),`${r}:${n.join(",")}`}function uXt(t,e){let r=e.isIFrameOnly?"#EXT-X-I-FRAME-STREAM-INF":"#EXT-X-STREAM-INF",n=[`BANDWIDTH=${e.bandwidth}`];if(e.averageBandwidth&&n.push(`AVERAGE-BANDWIDTH=${e.averageBandwidth}`),e.isIFrameOnly&&n.push(`URI="${e.uri}"`),e.codecs&&n.push(`CODECS="${e.codecs}"`),e.resolution&&n.push(`RESOLUTION=${e.resolution.width}x${e.resolution.height}`),e.frameRate&&n.push(`FRAME-RATE=${JQ(e.frameRate,3)}`),e.hdcpLevel&&n.push(`HDCP-LEVEL=${e.hdcpLevel}`),e.audio.length>0){n.push(`AUDIO="${e.audio[0].groupId}"`);for(let s of e.audio)t.push(u3(s))}if(e.video.length>0){n.push(`VIDEO="${e.video[0].groupId}"`);for(let s of e.video)t.push(u3(s))}if(e.subtitles.length>0){n.push(`SUBTITLES="${e.subtitles[0].groupId}"`);for(let s of e.subtitles)t.push(u3(s))}if(uu.getOptions().allowClosedCaptionsNone&&e.closedCaptions.length===0)n.push("CLOSED-CAPTIONS=NONE");else if(e.closedCaptions.length>0){n.push(`CLOSED-CAPTIONS="${e.closedCaptions[0].groupId}"`);for(let s of e.closedCaptions)t.push(u3(s))}if(e.score&&n.push(`SCORE=${e.score}`),e.allowedCpc){let s=[];for(let{format:i,cpcList:a}of e.allowedCpc)s.push(`${i}:${a.join("/")}`);n.push(`ALLOWED-CPC="${s.join(",")}"`)}e.videoRange&&n.push(`VIDEO-RANGE=${e.videoRange}`),e.stableVariantId&&n.push(`STABLE-VARIANT-ID="${e.stableVariantId}"`),e.programId&&n.push(`PROGRAM-ID=${e.programId}`),t.push(`${r}:${n.join(",")}`),e.isIFrameOnly||t.push(`${e.uri}`)}function u3(t){let e=[`TYPE=${t.type}`,`GROUP-ID="${t.groupId}"`,`NAME="${t.name}"`];return t.isDefault!==void 0&&e.push(`DEFAULT=${t.isDefault?"YES":"NO"}`),t.autoselect!==void 0&&e.push(`AUTOSELECT=${t.autoselect?"YES":"NO"}`),t.forced!==void 0&&e.push(`FORCED=${t.forced?"YES":"NO"}`),t.language&&e.push(`LANGUAGE="${t.language}"`),t.assocLanguage&&e.push(`ASSOC-LANGUAGE="${t.assocLanguage}"`),t.instreamId&&e.push(`INSTREAM-ID="${t.instreamId}"`),t.characteristics&&e.push(`CHARACTERISTICS="${t.characteristics}"`),t.channels&&e.push(`CHANNELS="${t.channels}"`),t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-MEDIA:${e.join(",")}`}function lXt(t,e){let r="",n="",s=!1;if(e.targetDuration&&t.push(`#EXT-X-TARGETDURATION:${e.targetDuration}`),e.lowLatencyCompatibility){let{canBlockReload:i,canSkipUntil:a,holdBack:o,partHoldBack:c}=e.lowLatencyCompatibility,u=[];u.push(`CAN-BLOCK-RELOAD=${i?"YES":"NO"}`),a!==void 0&&u.push(`CAN-SKIP-UNTIL=${a}`),o!==void 0&&u.push(`HOLD-BACK=${o}`),c!==void 0&&u.push(`PART-HOLD-BACK=${c}`),t.push(`#EXT-X-SERVER-CONTROL:${u.join(",")}`)}e.partTargetDuration&&t.push(`#EXT-X-PART-INF:PART-TARGET=${e.partTargetDuration}`),e.mediaSequenceBase&&t.push(`#EXT-X-MEDIA-SEQUENCE:${e.mediaSequenceBase}`),e.discontinuitySequenceBase&&t.push(`#EXT-X-DISCONTINUITY-SEQUENCE:${e.discontinuitySequenceBase}`),e.playlistType&&t.push(`#EXT-X-PLAYLIST-TYPE:${e.playlistType}`),e.isIFrame&&t.push("#EXT-X-I-FRAMES-ONLY"),e.skip>0&&t.push(`#EXT-X-SKIP:SKIPPED-SEGMENTS=${e.skip}`);for(let i of e.segments){let a="";[r,n,a]=dXt(t,i,r,n,e.version),a==="OUT"?s=!0:a==="IN"&&s&&(s=!1)}e.playlistType==="VOD"&&s&&t.push("#EXT-X-CUE-IN"),e.prefetchSegments.length>2&&uu.INVALIDPLAYLIST("The server must deliver no more than two prefetch segments");for(let i of e.prefetchSegments)i.discontinuity&&t.push("#EXT-X-PREFETCH-DISCONTINUITY"),t.push(`#EXT-X-PREFETCH:${i.uri}`);e.endlist&&t.push("#EXT-X-ENDLIST");for(let i of e.renditionReports){let a=[];a.push(`URI="${i.uri}"`,`LAST-MSN=${i.lastMSN}`),i.lastPart!==void 0&&a.push(`LAST-PART=${i.lastPart}`),t.push(`#EXT-X-RENDITION-REPORT:${a.join(",")}`)}}function dXt(t,e,r,n,s=1){let i=!1,a="";if(e.discontinuity&&t.push("#EXT-X-DISCONTINUITY"),e.key){let c=I3e(e.key);c!==r&&(t.push(c),r=c)}if(e.map){let c=fXt(e.map);c!==n&&(t.push(c),n=c)}if(e.programDateTime&&t.push(`#EXT-X-PROGRAM-DATE-TIME:${uu.formatDate(e.programDateTime)}`),e.dateRange&&t.push(pXt(e.dateRange)),e.markers.length>0&&(a=mXt(t,e.markers)),e.parts.length>0&&(i=hXt(t,e.parts)),i)return[r,n];let o=s<3?Math.round(e.duration):JQ(e.duration,aXt(e.duration));return t.push(`#EXTINF:${o},${unescape(encodeURIComponent(e.title||""))}`),e.byterange&&t.push(`#EXT-X-BYTERANGE:${XQ(e.byterange)}`),Array.prototype.push.call(t,`${e.uri}`),[r,n,a]}function fXt(t){let e=[`URI="${t.uri}"`];return t.byterange&&e.push(`BYTERANGE="${XQ(t.byterange)}"`),`#EXT-X-MAP:${e.join(",")}`}function XQ({offset:t,length:e}){return`${e}@${t}`}function pXt(t){let e=[`ID="${t.id}"`];t.start&&e.push(`START-DATE="${uu.formatDate(t.start)}"`),t.end&&e.push(`END-DATE="${uu.formatDate(t.end)}"`),t.duration&&e.push(`DURATION=${t.duration}`),t.plannedDuration&&e.push(`PLANNED-DURATION=${t.plannedDuration}`),t.classId&&e.push(`CLASS="${t.classId}"`),t.endOnNext&&e.push("END-ON-NEXT=YES");for(let r of Object.keys(t.attributes))r.startsWith("X-")?typeof t.attributes[r]=="number"?e.push(`${r}=${t.attributes[r]}`):e.push(`${r}="${t.attributes[r]}"`):r.startsWith("SCTE35-")&&e.push(`${r}=${uu.byteSequenceToHex(t.attributes[r])}`);return`#EXT-X-DATERANGE:${e.join(",")}`}function mXt(t,e){let r="";for(let n of e)if(n.type==="OUT")r="OUT",t.push(`#EXT-X-CUE-OUT:DURATION=${n.duration}`);else if(n.type==="IN")r="IN",t.push("#EXT-X-CUE-IN");else if(n.type==="RAW"){let s=n.value?`:${n.value}`:"";t.push(`#${n.tagName}${s}`)}return r}function hXt(t,e){let r=!1;for(let n of e)if(n.hint){let s=[];if(s.push("TYPE=PART",`URI="${n.uri}"`),n.byterange){let{offset:i,length:a}=n.byterange;s.push(`BYTERANGE-START=${i}`),a&&s.push(`BYTERANGE-LENGTH=${a}`)}t.push(`#EXT-X-PRELOAD-HINT:${s.join(",")}`),r=!0}else{let s=[];s.push(`DURATION=${n.duration}`,`URI="${n.uri}"`),n.byterange&&s.push(`BYTERANGE=${XQ(n.byterange)}`),n.independent&&s.push("INDEPENDENT=YES"),n.gap&&s.push("GAP=YES"),t.push(`#EXT-X-PART:${s.join(",")}`)}return r}function gXt(t){uu.PARAMCHECK(t),uu.ASSERT("Not a playlist",t.type==="playlist");let e=new YQ(t.uri);return e.push("#EXTM3U"),t.version&&e.push(`#EXT-X-VERSION:${t.version}`),t.independentSegments&&e.push("#EXT-X-INDEPENDENT-SEGMENTS"),t.start&&e.push(`#EXT-X-START:TIME-OFFSET=${JQ(t.start.offset)}${t.start.precise?",PRECISE=YES":""}`),t.isMasterPlaylist?oXt(e,t):lXt(e,t),e.join(`
`)}Vd.default=gXt});var R3e=E(_s=>{"use strict";var AXt=_s&&_s.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),yXt=_s&&_s.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),xXt=_s&&_s.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&AXt(e,t,r);return yXt(e,t),e},T3e=_s&&_s.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_s,"__esModule",{value:!0});_s.setOptions=_s.getOptions=_s.types=_s.stringify=_s.parse=void 0;var w3e=wv();Object.defineProperty(_s,"getOptions",{enumerable:!0,get:function(){return w3e.getOptions}});Object.defineProperty(_s,"setOptions",{enumerable:!0,get:function(){return w3e.setOptions}});var bXt=T3e(v3e());_s.parse=bXt.default;var EXt=T3e(C3e());_s.stringify=EXt.default;var _Xt=xXt(VQ());_s.types=_Xt});var fG=E((M7r,ABe)=>{ABe.exports=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}});var g0=E(Lh=>{var pG,tZt=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];Lh.getSymbolSize=function(e){if(!e)throw new Error('"version" cannot be null or undefined');if(e<1||e>40)throw new Error('"version" should be in range from 1 to 40');return e*4+17};Lh.getSymbolTotalCodewords=function(e){return tZt[e]};Lh.getBCHDigit=function(t){let e=0;for(;t!==0;)e++,t>>>=1;return e};Lh.setToSJISFunction=function(e){if(typeof e!="function")throw new Error('"toSJISFunc" is not a valid function.');pG=e};Lh.isKanjiModeEnabled=function(){return typeof pG<"u"};Lh.toSJIS=function(e){return pG(e)}});var S3=E(xc=>{xc.L={bit:1};xc.M={bit:0};xc.Q={bit:3};xc.H={bit:2};function rZt(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return xc.L;case"m":case"medium":return xc.M;case"q":case"quartile":return xc.Q;case"h":case"high":return xc.H;default:throw new Error("Unknown EC Level: "+t)}}xc.isValid=function(e){return e&&typeof e.bit<"u"&&e.bit>=0&&e.bit<4};xc.from=function(e,r){if(xc.isValid(e))return e;try{return rZt(e)}catch{return r}}});var bBe=E((F7r,xBe)=>{function yBe(){this.buffer=[],this.length=0}yBe.prototype={get:function(t){let e=Math.floor(t/8);return(this.buffer[e]>>>7-t%8&1)===1},put:function(t,e){for(let r=0;r<e;r++)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++}};xBe.exports=yBe});var _Be=E((U7r,EBe)=>{function Dv(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new Uint8Array(t*t),this.reservedBit=new Uint8Array(t*t)}Dv.prototype.set=function(t,e,r,n){let s=t*this.size+e;this.data[s]=r,n&&(this.reservedBit[s]=!0)};Dv.prototype.get=function(t,e){return this.data[t*this.size+e]};Dv.prototype.xor=function(t,e,r){this.data[t*this.size+e]^=r};Dv.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]};EBe.exports=Dv});var SBe=E(v3=>{var nZt=g0().getSymbolSize;v3.getRowColCoords=function(e){if(e===1)return[];let r=Math.floor(e/7)+2,n=nZt(e),s=n===145?26:Math.ceil((n-13)/(2*r-2))*2,i=[n-7];for(let a=1;a<r-1;a++)i[a]=i[a-1]-s;return i.push(6),i.reverse()};v3.getPositions=function(e){let r=[],n=v3.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 CBe=E(IBe=>{var sZt=g0().getSymbolSize,vBe=7;IBe.getPositions=function(e){let r=sZt(e);return[[0,0],[r-vBe,0],[0,r-vBe]]}});var TBe=E(Sn=>{Sn.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var Mh={N1:3,N2:3,N3:40,N4:10};Sn.isValid=function(e){return e!=null&&e!==""&&!isNaN(e)&&e>=0&&e<=7};Sn.from=function(e){return Sn.isValid(e)?parseInt(e,10):void 0};Sn.getPenaltyN1=function(e){let r=e.size,n=0,s=0,i=0,a=null,o=null;for(let c=0;c<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+=Mh.N1+(s-5)),a=l,s=1),l=e.get(u,c),l===o?i++:(i>=5&&(n+=Mh.N1+(i-5)),o=l,i=1)}s>=5&&(n+=Mh.N1+(s-5)),i>=5&&(n+=Mh.N1+(i-5))}return n};Sn.getPenaltyN2=function(e){let r=e.size,n=0;for(let s=0;s<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*Mh.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*Mh.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)*Mh.N4};function iZt(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,iZt(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 hG=E(mG=>{var A0=S3(),I3=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],C3=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];mG.getBlocksCount=function(e,r){switch(r){case A0.L:return I3[(e-1)*4+0];case A0.M:return I3[(e-1)*4+1];case A0.Q:return I3[(e-1)*4+2];case A0.H:return I3[(e-1)*4+3];default:return}};mG.getTotalCodewordsCount=function(e,r){switch(r){case A0.L:return C3[(e-1)*4+0];case A0.M:return C3[(e-1)*4+1];case A0.Q:return C3[(e-1)*4+2];case A0.H:return C3[(e-1)*4+3];default:return}}});var wBe=E(w3=>{var Bv=new Uint8Array(512),T3=new Uint8Array(256);(function(){let e=1;for(let r=0;r<255;r++)Bv[r]=e,T3[e]=r,e<<=1,e&256&&(e^=285);for(let r=255;r<512;r++)Bv[r]=Bv[r-255]})();w3.log=function(e){if(e<1)throw new Error("log("+e+")");return T3[e]};w3.exp=function(e){return Bv[e]};w3.mul=function(e,r){return e===0||r===0?0:Bv[T3[e]+T3[r]]}});var RBe=E(Lv=>{var gG=wBe();Lv.mul=function(e,r){let n=new Uint8Array(e.length+r.length-1);for(let s=0;s<e.length;s++)for(let i=0;i<r.length;i++)n[s+i]^=gG.mul(e[s],r[i]);return n};Lv.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]^=gG.mul(r[a],s);let i=0;for(;i<n.length&&n[i]===0;)i++;n=n.slice(i)}return n};Lv.generateECPolynomial=function(e){let r=new Uint8Array([1]);for(let n=0;n<e;n++)r=Lv.mul(r,new Uint8Array([1,gG.exp(n)]));return r}});var PBe=E((V7r,OBe)=>{var NBe=RBe();function AG(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}AG.prototype.initialize=function(e){this.degree=e,this.genPoly=NBe.generateECPolynomial(this.degree)};AG.prototype.encode=function(e){if(!this.genPoly)throw new Error("Encoder not initialized");let r=new Uint8Array(e.length+this.degree);r.set(e);let n=NBe.mod(r,this.genPoly),s=this.degree-n.length;if(s>0){let i=new Uint8Array(this.degree);return i.set(n,s),i}return n};OBe.exports=AG});var yG=E(kBe=>{kBe.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}});var xG=E(Yd=>{var DBe="[0-9]+",aZt="[A-Z $%*+\\-./:]+",Mv="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";Mv=Mv.replace(/u/g,"\\u");var oZt="(?:(?![A-Z0-9 $%*+\\-./:]|"+Mv+`)(?:.|[\r
]))+`;Yd.KANJI=new RegExp(Mv,"g");Yd.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");Yd.BYTE=new RegExp(oZt,"g");Yd.NUMERIC=new RegExp(DBe,"g");Yd.ALPHANUMERIC=new RegExp(aZt,"g");var cZt=new RegExp("^"+Mv+"$"),uZt=new RegExp("^"+DBe+"$"),lZt=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");Yd.testKanji=function(e){return cZt.test(e)};Yd.testNumeric=function(e){return uZt.test(e)};Yd.testAlphanumeric=function(e){return lZt.test(e)}});var y0=E(vs=>{var dZt=yG(),bG=xG();vs.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]};vs.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]};vs.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]};vs.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]};vs.MIXED={bit:-1};vs.getCharCountIndicator=function(e,r){if(!e.ccBits)throw new Error("Invalid mode: "+e);if(!dZt.isValid(r))throw new Error("Invalid version: "+r);return r>=1&&r<10?e.ccBits[0]:r<27?e.ccBits[1]:e.ccBits[2]};vs.getBestModeForData=function(e){return bG.testNumeric(e)?vs.NUMERIC:bG.testAlphanumeric(e)?vs.ALPHANUMERIC:bG.testKanji(e)?vs.KANJI:vs.BYTE};vs.toString=function(e){if(e&&e.id)return e.id;throw new Error("Invalid mode")};vs.isValid=function(e){return e&&e.bit&&e.ccBits};function fZt(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return vs.NUMERIC;case"alphanumeric":return vs.ALPHANUMERIC;case"kanji":return vs.KANJI;case"byte":return vs.BYTE;default:throw new Error("Unknown mode: "+t)}}vs.from=function(e,r){if(vs.isValid(e))return e;try{return fZt(e)}catch{return r}}});var $Be=E(Wh=>{var R3=g0(),pZt=hG(),BBe=S3(),x0=y0(),EG=yG(),MBe=7973,LBe=R3.getBCHDigit(MBe);function mZt(t,e,r){for(let n=1;n<=40;n++)if(e<=Wh.getCapacity(n,r,t))return n}function WBe(t,e){return x0.getCharCountIndicator(t,e)+4}function hZt(t,e){let r=0;return t.forEach(function(n){let s=WBe(n.mode,e);r+=s+n.getBitsLength()}),r}function gZt(t,e){for(let r=1;r<=40;r++)if(hZt(t,r)<=Wh.getCapacity(r,e,x0.MIXED))return r}Wh.from=function(e,r){return EG.isValid(e)?parseInt(e,10):r};Wh.getCapacity=function(e,r,n){if(!EG.isValid(e))throw new Error("Invalid QR Code version");typeof n>"u"&&(n=x0.BYTE);let s=R3.getSymbolTotalCodewords(e),i=pZt.getTotalCodewordsCount(e,r),a=(s-i)*8;if(n===x0.MIXED)return a;let o=a-WBe(n,e);switch(n){case x0.NUMERIC:return Math.floor(o/10*3);case x0.ALPHANUMERIC:return Math.floor(o/11*2);case x0.KANJI:return Math.floor(o/13);case x0.BYTE:default:return Math.floor(o/8)}};Wh.getBestVersionForData=function(e,r){let n,s=BBe.from(r,BBe.M);if(Array.isArray(e)){if(e.length>1)return gZt(e,s);if(e.length===0)return 1;n=e[0]}else n=e;return mZt(n.mode,n.getLength(),s)};Wh.getEncodedBits=function(e){if(!EG.isValid(e)||e<7)throw new Error("Invalid QR Code version");let r=e<<12;for(;R3.getBCHDigit(r)-LBe>=0;)r^=MBe<<R3.getBCHDigit(r)-LBe;return e<<12|r}});var jBe=E(qBe=>{var _G=g0(),UBe=1335,AZt=21522,FBe=_G.getBCHDigit(UBe);qBe.getEncodedBits=function(e,r){let n=e.bit<<3|r,s=n<<10;for(;_G.getBCHDigit(s)-FBe>=0;)s^=UBe<<_G.getBCHDigit(s)-FBe;return(n<<10|s)^AZt}});var QBe=E((eqr,HBe)=>{var yZt=y0();function jx(t){this.mode=yZt.NUMERIC,this.data=t.toString()}jx.getBitsLength=function(e){return 10*Math.floor(e/3)+(e%3?e%3*3+1:0)};jx.prototype.getLength=function(){return this.data.length};jx.prototype.getBitsLength=function(){return jx.getBitsLength(this.data.length)};jx.prototype.write=function(e){let r,n,s;for(r=0;r+3<=this.data.length;r+=3)n=this.data.substr(r,3),s=parseInt(n,10),e.put(s,10);let i=this.data.length-r;i>0&&(n=this.data.substr(r),s=parseInt(n,10),e.put(s,i*3+1))};HBe.exports=jx});var KBe=E((tqr,GBe)=>{var xZt=y0(),SG=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function Hx(t){this.mode=xZt.ALPHANUMERIC,this.data=t}Hx.getBitsLength=function(e){return 11*Math.floor(e/2)+6*(e%2)};Hx.prototype.getLength=function(){return this.data.length};Hx.prototype.getBitsLength=function(){return Hx.getBitsLength(this.data.length)};Hx.prototype.write=function(e){let r;for(r=0;r+2<=this.data.length;r+=2){let n=SG.indexOf(this.data[r])*45;n+=SG.indexOf(this.data[r+1]),e.put(n,11)}this.data.length%2&&e.put(SG.indexOf(this.data[r]),6)};GBe.exports=Hx});var zBe=E((rqr,VBe)=>{var bZt=y0();function Qx(t){this.mode=bZt.BYTE,typeof t=="string"?this.data=new TextEncoder().encode(t):this.data=new Uint8Array(t)}Qx.getBitsLength=function(e){return e*8};Qx.prototype.getLength=function(){return this.data.length};Qx.prototype.getBitsLength=function(){return Qx.getBitsLength(this.data.length)};Qx.prototype.write=function(t){for(let e=0,r=this.data.length;e<r;e++)t.put(this.data[e],8)};VBe.exports=Qx});var JBe=E((nqr,YBe)=>{var EZt=y0(),_Zt=g0();function Gx(t){this.mode=EZt.KANJI,this.data=t}Gx.getBitsLength=function(e){return e*13};Gx.prototype.getLength=function(){return this.data.length};Gx.prototype.getBitsLength=function(){return Gx.getBitsLength(this.data.length)};Gx.prototype.write=function(t){let e;for(e=0;e<this.data.length;e++){let r=_Zt.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)}};YBe.exports=Gx});var XBe=E((sqr,vG)=>{"use strict";var Wv={single_source_shortest_paths:function(t,e,r){var n={},s={};s[e]=0;var i=Wv.PriorityQueue.make();i.push(e,0);for(var a,o,c,u,l,d,f,p,m;!i.empty();){a=i.pop(),o=a.value,u=a.cost,l=t[o]||{};for(c in l)l.hasOwnProperty(c)&&(d=l[c],f=u+d,p=s[c],m=typeof s[c]>"u",(m||p>f)&&(s[c]=f,i.push(c,f),n[c]=o))}if(typeof r<"u"&&typeof s[r]>"u"){var h=["Could not find a path from ",e," to ",r,"."].join("");throw new Error(h)}return n},extract_shortest_path_from_predecessor_list:function(t,e){for(var r=[],n=e,s;n;)r.push(n),s=t[n],n=t[n];return r.reverse(),r},find_path:function(t,e,r){var n=Wv.single_source_shortest_paths(t,e,r);return Wv.extract_shortest_path_from_predecessor_list(n,r)},PriorityQueue:{make:function(t){var e=Wv.PriorityQueue,r={},n;t=t||{};for(n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return r.queue=[],r.sorter=t.sorter||e.default_sorter,r},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var r={value:t,cost:e};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};typeof vG<"u"&&(vG.exports=Wv)});var aLe=E(Kx=>{var Vr=y0(),tLe=QBe(),rLe=KBe(),nLe=zBe(),sLe=JBe(),$v=xG(),N3=g0(),SZt=XBe();function ZBe(t){return unescape(encodeURIComponent(t)).length}function Fv(t,e,r){let n=[],s;for(;(s=t.exec(r))!==null;)n.push({data:s[0],index:s.index,mode:e,length:s[0].length});return n}function iLe(t){let e=Fv($v.NUMERIC,Vr.NUMERIC,t),r=Fv($v.ALPHANUMERIC,Vr.ALPHANUMERIC,t),n,s;return N3.isKanjiModeEnabled()?(n=Fv($v.BYTE,Vr.BYTE,t),s=Fv($v.KANJI,Vr.KANJI,t)):(n=Fv($v.BYTE_KANJI,Vr.BYTE,t),s=[]),e.concat(r,n,s).sort(function(a,o){return a.index-o.index}).map(function(a){return{data:a.data,mode:a.mode,length:a.length}})}function IG(t,e){switch(e){case Vr.NUMERIC:return tLe.getBitsLength(t);case Vr.ALPHANUMERIC:return rLe.getBitsLength(t);case Vr.KANJI:return sLe.getBitsLength(t);case Vr.BYTE:return nLe.getBitsLength(t)}}function vZt(t){return t.reduce(function(e,r){let n=e.length-1>=0?e[e.length-1]:null;return n&&n.mode===r.mode?(e[e.length-1].data+=r.data,e):(e.push(r),e)},[])}function IZt(t){let e=[];for(let r=0;r<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:ZBe(n.data)}]);break;case Vr.BYTE:e.push([{data:n.data,mode:Vr.BYTE,length:ZBe(n.data)}])}}return e}function CZt(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]=IG(r[f].lastCount+u.length,u.mode)-IG(r[f].lastCount,u.mode),r[f].lastCount+=u.length):(r[f]&&(r[f].lastCount=u.length),n[f][l]=IG(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 eLe(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&&!N3.isKanjiModeEnabled()&&(r=Vr.BYTE),r){case Vr.NUMERIC:return new tLe(t);case Vr.ALPHANUMERIC:return new rLe(t);case Vr.KANJI:return new sLe(t);case Vr.BYTE:return new nLe(t)}}Kx.fromArray=function(e){return e.reduce(function(r,n){return typeof n=="string"?r.push(eLe(n,null)):n.data&&r.push(eLe(n.data,n.mode)),r},[])};Kx.fromString=function(e,r){let n=iLe(e,N3.isKanjiModeEnabled()),s=IZt(n),i=CZt(s,r),a=SZt.find_path(i.map,"start","end"),o=[];for(let c=1;c<a.length-1;c++)o.push(i.table[a[c]].node);return Kx.fromArray(vZt(o))};Kx.rawSplit=function(e){return Kx.fromArray(iLe(e,N3.isKanjiModeEnabled()))}});var OG=E(oLe=>{var P3=g0(),CG=S3(),TZt=bBe(),wZt=_Be(),RZt=SBe(),NZt=CBe(),RG=TBe(),NG=hG(),OZt=PBe(),O3=$Be(),PZt=jBe(),kZt=y0(),TG=aLe();function DZt(t,e){let r=t.size,n=NZt.getPositions(e);for(let s=0;s<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 BZt(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 LZt(t,e){let r=RZt.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 MZt(t,e){let r=t.size,n=O3.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 wG(t,e,r){let n=t.size,s=PZt.getEncodedBits(e,r),i,a;for(i=0;i<15;i++)a=(s>>i&1)===1,i<6?t.set(i,8,a,!0):i<8?t.set(i+1,8,a,!0):t.set(n-15+i,8,a,!0),i<8?t.set(8,n-i-1,a,!0):i<9?t.set(8,15-i-1+1,a,!0):t.set(8,15-i-1,a,!0);t.set(n-8,8,1,!0)}function WZt(t,e){let r=t.size,n=-1,s=r-1,i=7,a=0;for(let o=r-1;o>0;o-=2)for(o===6&&o--;;){for(let c=0;c<2;c++)if(!t.isReserved(s,o-c)){let u=!1;a<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 $Zt(t,e,r){let n=new TZt;r.forEach(function(c){n.put(c.mode.bit,4),n.put(c.getLength(),kZt.getCharCountIndicator(c.mode,t)),c.write(n)});let s=P3.getSymbolTotalCodewords(t),i=NG.getTotalCodewordsCount(t,e),a=(s-i)*8;for(n.getLengthInBits()+4<=a&&n.put(0,4);n.getLengthInBits()%8!==0;)n.putBit(0);let o=(a-n.getLengthInBits())/8;for(let c=0;c<o;c++)n.put(c%2?17:236,8);return FZt(n,t,e)}function FZt(t,e,r){let n=P3.getSymbolTotalCodewords(e),s=NG.getTotalCodewordsCount(e,r),i=n-s,a=NG.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,p=new OZt(f),m=0,h=new Array(a),A=new Array(a),g=0,b=new Uint8Array(t.buffer);for(let R=0;R<a;R++){let w=R<c?l:d;h[R]=b.slice(m,m+w),A[R]=p.encode(h[R]),m+=w,g=Math.max(g,w)}let y=new Uint8Array(n),x=0,v,I;for(v=0;v<g;v++)for(I=0;I<a;I++)v<h[I].length&&(y[x++]=h[I][v]);for(v=0;v<f;v++)for(I=0;I<a;I++)y[x++]=A[I][v];return y}function UZt(t,e,r,n){let s;if(Array.isArray(t))s=TG.fromArray(t);else if(typeof t=="string"){let u=e;if(!u){let l=TG.rawSplit(t);u=O3.getBestVersionForData(l,r)}s=TG.fromString(t,u||40)}else throw new Error("Invalid data");let i=O3.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=$Zt(e,r,s),o=P3.getSymbolSize(e),c=new wZt(o);return DZt(c,e),BZt(c),LZt(c,e),wG(c,r,0),e>=7&&MZt(c,e),WZt(c,a),isNaN(n)&&(n=RG.getBestMask(c,wG.bind(null,c,r))),RG.applyMask(n,c),wG(c,r,n),{modules:c,version:e,errorCorrectionLevel:r,maskPattern:n,segments:s}}oLe.create=function(e,r){if(typeof e>"u"||e==="")throw new Error("No input text");let n=CG.M,s,i;return typeof r<"u"&&(n=CG.from(r.errorCorrectionLevel,CG.M),s=O3.from(r.version),i=RG.from(r.maskPattern),r.toSJISFunc&&P3.setToSJISFunction(r.toSJISFunc)),UZt(e,s,n,i)}});var PG=E((oqr,uLe)=>{"use strict";var qZt=require("util"),cLe=require("stream"),fu=uLe.exports=function(){cLe.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};qZt.inherits(fu,cLe);fu.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))};fu.prototype.write=function(t,e){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let r;return Buffer.isBuffer(t)?r=t:r=Buffer.from(t,e||this._encoding),this._buffers.push(r),this._buffered+=r.length,this._process(),this._reads&&this._reads.length===0&&(this._paused=!0),this.writable&&!this._paused};fu.prototype.end=function(t,e){t&&this.write(t,e),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))};fu.prototype.destroySoon=fu.prototype.end;fu.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};fu.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};fu.prototype._processReadAllowingLess=function(t){this._reads.shift();let e=this._buffers[0];e.length>t.length?(this._buffered-=t.length,this._buffers[0]=e.slice(t.length),t.func.call(this,e.slice(0,t.length))):(this._buffered-=e.length,this._buffers.shift(),t.func.call(this,e))};fu.prototype._processRead=function(t){this._reads.shift();let e=0,r=0,n=Buffer.alloc(t.length);for(;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)};fu.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let t=this._reads[0];if(t.allowLess)this._processReadAllowingLess(t);else if(this._buffered>=t.length)this._processRead(t);else break}this._buffers&&!this.writable&&this._end()}catch(t){this.emit("error",t)}}});var DG=E(kG=>{"use strict";var b0=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];kG.getImagePasses=function(t,e){let r=[],n=t%8,s=e%8,i=(t-n)/8,a=(e-s)/8;for(let o=0;o<b0.length;o++){let c=b0[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};kG.getInterlaceIterator=function(t){return function(e,r,n){let s=e%b0[n].x.length,i=(e-s)/b0[n].x.length*8+b0[n].x[s],a=r%b0[n].y.length,o=(r-a)/b0[n].y.length*8+b0[n].y[a];return i*4+o*t*4}}});var BG=E((uqr,lLe)=>{"use strict";lLe.exports=function(e,r,n){let s=e+r-n,i=Math.abs(s-e),a=Math.abs(s-r),o=Math.abs(s-n);return i<=a&&i<=o?e:a<=o?r:n}});var LG=E((lqr,fLe)=>{"use strict";var jZt=DG(),HZt=BG();function dLe(t,e,r){let n=t*e;return r!==8&&(n=Math.ceil(n/(8/r))),n}var Vx=fLe.exports=function(t,e){let r=t.width,n=t.height,s=t.interlace,i=t.bpp,a=t.depth;if(this.read=e.read,this.write=e.write,this.complete=e.complete,this._imageIndex=0,this._images=[],s){let o=jZt.getImagePasses(r,n);for(let c=0;c<o.length;c++)this._images.push({byteWidth:dLe(o[c].width,i,a),height:o[c].height,lineIndex:0})}else this._images.push({byteWidth:dLe(r,i,a),height:n,lineIndex:0});a===8?this._xComparison=i:a===16?this._xComparison=i*2:this._xComparison=1};Vx.prototype.start=function(){this.read(this._images[this._imageIndex].byteWidth+1,this._reverseFilterLine.bind(this))};Vx.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}};Vx.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}};Vx.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}};Vx.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=HZt(u,c,l);e[a]=o+d}};Vx.prototype._reverseFilterLine=function(t){let e=t[0],r,n=this._images[this._imageIndex],s=n.byteWidth;if(e===0)r=t.slice(1,s+1);else switch(r=Buffer.alloc(s),e){case 1:this._unFilterType1(t,r,s);break;case 2:this._unFilterType2(t,r,s);break;case 3:this._unFilterType3(t,r,s);break;case 4:this._unFilterType4(t,r,s);break;default:throw new Error("Unrecognised filter type - "+e)}this.write(r),n.lineIndex++,n.lineIndex>=n.height?(this._lastLine=null,this._imageIndex++,n=this._images[this._imageIndex]):this._lastLine=r,n?this.read(n.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}});var hLe=E((dqr,mLe)=>{"use strict";var QZt=require("util"),pLe=PG(),GZt=LG(),KZt=mLe.exports=function(t){pLe.call(this);let e=[],r=this;this._filter=new GZt(t,{read:this.read.bind(this),write:function(n){e.push(n)},complete:function(){r.emit("complete",Buffer.concat(e))}}),this._filter.start()};QZt.inherits(KZt,pLe)});var zx=E((fqr,gLe)=>{"use strict";gLe.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var $G=E((pqr,ALe)=>{"use strict";var MG=[];(function(){for(let t=0;t<256;t++){let e=t;for(let r=0;r<8;r++)e&1?e=3988292384^e>>>1:e=e>>>1;MG[t]=e}})();var WG=ALe.exports=function(){this._crc=-1};WG.prototype.write=function(t){for(let e=0;e<t.length;e++)this._crc=MG[(this._crc^t[e])&255]^this._crc>>>8;return!0};WG.prototype.crc32=function(){return this._crc^-1};WG.crc32=function(t){let e=-1;for(let r=0;r<t.length;r++)e=MG[(e^t[r])&255]^e>>>8;return e^-1}});var FG=E((mqr,yLe)=>{"use strict";var ks=zx(),VZt=$G(),ri=yLe.exports=function(t,e){this._options=t,t.checkCRC=t.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[ks.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[ks.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[ks.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[ks.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[ks.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[ks.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=e.read,this.error=e.error,this.metadata=e.metadata,this.gamma=e.gamma,this.transColor=e.transColor,this.palette=e.palette,this.parsed=e.parsed,this.inflateData=e.inflateData,this.finished=e.finished,this.simpleTransparency=e.simpleTransparency,this.headersFinished=e.headersFinished||function(){}};ri.prototype.start=function(){this.read(ks.PNG_SIGNATURE.length,this._parseSignature.bind(this))};ri.prototype._parseSignature=function(t){let e=ks.PNG_SIGNATURE;for(let r=0;r<e.length;r++)if(t[r]!==e[r]){this.error(new Error("Invalid file signature"));return}this.read(8,this._parseChunkBegin.bind(this))};ri.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!==ks.TYPE_IHDR){this.error(new Error("Expected IHDR on beggining"));return}if(this._crc=new VZt,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))};ri.prototype._skipChunk=function(){this.read(8,this._parseChunkBegin.bind(this))};ri.prototype._handleChunkEnd=function(){this.read(4,this._parseChunkEnd.bind(this))};ri.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))};ri.prototype._handleIHDR=function(t){this.read(t,this._parseIHDR.bind(this))};ri.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 ks.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=ks.COLORTYPE_TO_BPP_MAP[this._colorType];this._hasIHDR=!0,this.metadata({width:e,height:r,depth:n,interlace:!!o,palette:!!(s&ks.COLORTYPE_PALETTE),color:!!(s&ks.COLORTYPE_COLOR),alpha:!!(s&ks.COLORTYPE_ALPHA),bpp:c,colorType:s}),this._handleChunkEnd()};ri.prototype._handlePLTE=function(t){this.read(t,this._parsePLTE.bind(this))};ri.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()};ri.prototype._handleTRNS=function(t){this.simpleTransparency(),this.read(t,this._parseTRNS.bind(this))};ri.prototype._parseTRNS=function(t){if(this._crc.write(t),this._colorType===ks.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===ks.COLORTYPE_GRAYSCALE&&this.transColor([t.readUInt16BE(0)]),this._colorType===ks.COLORTYPE_COLOR&&this.transColor([t.readUInt16BE(0),t.readUInt16BE(2),t.readUInt16BE(4)]),this._handleChunkEnd()};ri.prototype._handleGAMA=function(t){this.read(t,this._parseGAMA.bind(this))};ri.prototype._parseGAMA=function(t){this._crc.write(t),this.gamma(t.readUInt32BE(0)/ks.GAMMA_DIVISION),this._handleChunkEnd()};ri.prototype._handleIDAT=function(t){this._emittedHeadersFinished||(this._emittedHeadersFinished=!0,this.headersFinished()),this.read(-t,this._parseIDAT.bind(this,t))};ri.prototype._parseIDAT=function(t,e){if(this._crc.write(e),this._colorType===ks.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()};ri.prototype._handleIEND=function(t){this.read(t,this._parseIEND.bind(this))};ri.prototype._parseIEND=function(t){this._crc.write(t),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var UG=E(bLe=>{"use strict";var xLe=DG(),zZt=[function(){},function(t,e,r,n){if(n===e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=255},function(t,e,r,n){if(n+1>=e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=e[n+1]},function(t,e,r,n){if(n+2>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=255},function(t,e,r,n){if(n+3>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=e[n+3]}],YZt=[function(){},function(t,e,r,n){let s=e[0];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=n},function(t,e,r){let n=e[0];t[r]=n,t[r+1]=n,t[r+2]=n,t[r+3]=e[1]},function(t,e,r,n){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=n},function(t,e,r){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=e[3]}];function JZt(t,e){let r=[],n=0;function s(){if(n===t.length)throw new Error("Ran out of data");let i=t[n];n++;let a,o,c,u,l,d,f,p;switch(e){default:throw new Error("unrecognised depth");case 16:f=t[n],n++,r.push((i<<8)+f);break;case 4:f=i&15,p=i>>4,r.push(p,f);break;case 2:l=i&3,d=i>>2&3,f=i>>4&3,p=i>>6&3,r.push(p,f,d,l);break;case 1:a=i&1,o=i>>1&1,c=i>>2&1,u=i>>3&1,l=i>>4&1,d=i>>5&1,f=i>>6&1,p=i>>7&1,r.push(p,f,d,l,u,c,o,a);break}}return{get:function(i){for(;r.length<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 XZt(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);zZt[n](e,s,d,i),i+=n}return i}function ZZt(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);YZt[n](e,d,f,i)}s.resetAfterLine()}}bLe.dataToBitMap=function(t,e){let r=e.width,n=e.height,s=e.depth,i=e.bpp,a=e.interlace,o;s!==8&&(o=JZt(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=xLe.getImagePasses(r,n),f=xLe.getInterlaceIterator(r,n);else{let p=0;f=function(){let m=p;return p+=4,m},d=[{width:r,height:n}]}for(let p=0;p<d.length;p++)s===8?l=XZt(d[p],c,f,i,t,l):ZZt(d[p],c,f,i,o,u);if(s===8){if(l!==t.length)throw new Error("extra data found")}else o.end();return c}});var qG=E((gqr,ELe)=>{"use strict";function eer(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 ter(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 rer(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}}ELe.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?eer(t,c,n,s,o):(a&&ter(t,c,n,s,a),r!==8&&(r===16&&(c=Buffer.alloc(n*s*4)),rer(t,c,n,s,r))),c}});var vLe=E((Aqr,SLe)=>{"use strict";var ner=require("util"),jG=require("zlib"),_Le=PG(),ser=hLe(),ier=FG(),aer=UG(),oer=qG(),yl=SLe.exports=function(t){_Le.call(this),this._parser=new ier(t,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=t,this.writable=!0,this._parser.start()};ner.inherits(yl,_Le);yl.prototype._handleError=function(t){this.emit("error",t),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0};yl.prototype._inflateData=function(t){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=jG.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let r=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,n=Math.max(r,jG.Z_MIN_CHUNK);this._inflate=jG.createInflate({chunkSize:n});let s=r,i=this.emit.bind(this,"error");this._inflate.on("error",function(o){s&&i(o)}),this._filter.on("complete",this._complete.bind(this));let a=this._filter.write.bind(this._filter);this._inflate.on("data",function(o){s&&(o.length>s&&(o=o.slice(0,s)),s-=o.length,a(o))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(t)};yl.prototype._handleMetaData=function(t){this._metaData=t,this._bitmapInfo=Object.create(t),this._filter=new ser(this._bitmapInfo)};yl.prototype._handleTransColor=function(t){this._bitmapInfo.transColor=t};yl.prototype._handlePalette=function(t){this._bitmapInfo.palette=t};yl.prototype._simpleTransparency=function(){this._metaData.alpha=!0};yl.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};yl.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};yl.prototype._complete=function(t){if(this.errord)return;let e;try{let r=aer.dataToBitMap(t,this._bitmapInfo);e=oer(r,this._bitmapInfo),r=null}catch(r){this._handleError(r);return}this.emit("parsed",e)}});var CLe=E((yqr,ILe)=>{"use strict";var bc=zx();ILe.exports=function(t,e,r,n){let s=[bc.COLORTYPE_COLOR_ALPHA,bc.COLORTYPE_ALPHA].indexOf(n.colorType)!==-1;if(n.colorType===n.inputColorType){let m=function(){let h=new ArrayBuffer(2);return new DataView(h).setInt16(0,256,!0),new Int16Array(h)[0]!==256}();if(n.bitDepth===8||n.bitDepth===16&&m)return t}let i=n.bitDepth!==16?t:new Uint16Array(t.buffer),a=255,o=bc.COLORTYPE_TO_BPP_MAP[n.inputColorType];o===4&&!n.inputHasAlpha&&(o=3);let c=bc.COLORTYPE_TO_BPP_MAP[n.colorType];n.bitDepth===16&&(a=65535,c*=2);let u=Buffer.alloc(e*r*c),l=0,d=0,f=n.bgColor||{};f.red===void 0&&(f.red=a),f.green===void 0&&(f.green=a),f.blue===void 0&&(f.blue=a);function p(){let m,h,A,g=a;switch(n.inputColorType){case bc.COLORTYPE_COLOR_ALPHA:g=i[l+3],m=i[l],h=i[l+1],A=i[l+2];break;case bc.COLORTYPE_COLOR:m=i[l],h=i[l+1],A=i[l+2];break;case bc.COLORTYPE_ALPHA:g=i[l+1],m=i[l],h=m,A=m;break;case bc.COLORTYPE_GRAYSCALE:m=i[l],h=m,A=m;break;default:throw new Error("input color type:"+n.inputColorType+" is not supported at present")}return n.inputHasAlpha&&(s||(g/=a,m=Math.min(Math.max(Math.round((1-g)*f.red+g*m),0),a),h=Math.min(Math.max(Math.round((1-g)*f.green+g*h),0),a),A=Math.min(Math.max(Math.round((1-g)*f.blue+g*A),0),a))),{red:m,green:h,blue:A,alpha:g}}for(let m=0;m<r;m++)for(let h=0;h<e;h++){let A=p(i,l);switch(n.colorType){case bc.COLORTYPE_COLOR_ALPHA:case bc.COLORTYPE_COLOR:n.bitDepth===8?(u[d]=A.red,u[d+1]=A.green,u[d+2]=A.blue,s&&(u[d+3]=A.alpha)):(u.writeUInt16BE(A.red,d),u.writeUInt16BE(A.green,d+2),u.writeUInt16BE(A.blue,d+4),s&&u.writeUInt16BE(A.alpha,d+6));break;case bc.COLORTYPE_ALPHA:case bc.COLORTYPE_GRAYSCALE:{let g=(A.red+A.green+A.blue)/3;n.bitDepth===8?(u[d]=g,s&&(u[d+1]=A.alpha)):(u.writeUInt16BE(g,d),s&&u.writeUInt16BE(A.alpha,d+2));break}default:throw new Error("unrecognised color Type "+n.colorType)}l+=o,d+=c}return u}});var RLe=E((xqr,wLe)=>{"use strict";var TLe=BG();function cer(t,e,r,n,s){for(let i=0;i<r;i++)n[s+i]=t[e+i]}function uer(t,e,r){let n=0,s=e+r;for(let i=e;i<s;i++)n+=Math.abs(t[i]);return n}function ler(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 der(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 fer(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 per(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 mer(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 her(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 ger(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]-TLe(o,c,u);n[s+a]=l}}function Aer(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]-TLe(a,o,c);s+=Math.abs(u)}return s}var yer={0:cer,1:ler,2:fer,3:mer,4:ger},xer={0:uer,1:der,2:per,3:her,4:Aer};wLe.exports=function(t,e,r,n,s){let i;if(!("filterType"in n)||n.filterType===-1)i=[0,1,2,3,4];else if(typeof n.filterType=="number")i=[n.filterType];else throw new Error("unrecognised filter types");n.bitDepth===16&&(s*=2);let a=e*s,o=0,c=0,u=Buffer.alloc((a+1)*r),l=i[0];for(let d=0;d<r;d++){if(i.length>1){let f=1/0;for(let p=0;p<i.length;p++){let m=xer[i[p]](t,c,a,s);m<f&&(l=i[p],f=m)}}u[o]=l,o++,yer[l](t,c,a,u,o,s),o+=a,c+=a}return u}});var HG=E((bqr,NLe)=>{"use strict";var Qi=zx(),ber=$G(),Eer=CLe(),_er=RLe(),Ser=require("zlib"),E0=NLe.exports=function(t){if(this._options=t,t.deflateChunkSize=t.deflateChunkSize||32*1024,t.deflateLevel=t.deflateLevel!=null?t.deflateLevel:9,t.deflateStrategy=t.deflateStrategy!=null?t.deflateStrategy:3,t.inputHasAlpha=t.inputHasAlpha!=null?t.inputHasAlpha:!0,t.deflateFactory=t.deflateFactory||Ser.createDeflate,t.bitDepth=t.bitDepth||8,t.colorType=typeof t.colorType=="number"?t.colorType:Qi.COLORTYPE_COLOR_ALPHA,t.inputColorType=typeof t.inputColorType=="number"?t.inputColorType:Qi.COLORTYPE_COLOR_ALPHA,[Qi.COLORTYPE_GRAYSCALE,Qi.COLORTYPE_COLOR,Qi.COLORTYPE_COLOR_ALPHA,Qi.COLORTYPE_ALPHA].indexOf(t.colorType)===-1)throw new Error("option color type:"+t.colorType+" is not supported at present");if([Qi.COLORTYPE_GRAYSCALE,Qi.COLORTYPE_COLOR,Qi.COLORTYPE_COLOR_ALPHA,Qi.COLORTYPE_ALPHA].indexOf(t.inputColorType)===-1)throw new Error("option input color type:"+t.inputColorType+" is not supported at present");if(t.bitDepth!==8&&t.bitDepth!==16)throw new Error("option bit depth:"+t.bitDepth+" is not supported at present")};E0.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};E0.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};E0.prototype.filterData=function(t,e,r){let n=Eer(t,e,r,this._options),s=Qi.COLORTYPE_TO_BPP_MAP[this._options.colorType];return _er(n,e,r,this._options,s)};E0.prototype._packChunk=function(t,e){let r=e?e.length:0,n=Buffer.alloc(r+12);return n.writeUInt32BE(r,0),n.writeUInt32BE(t,4),e&&e.copy(n,8),n.writeInt32BE(ber.crc32(n.slice(4,n.length-4)),n.length-4),n};E0.prototype.packGAMA=function(t){let e=Buffer.alloc(4);return e.writeUInt32BE(Math.floor(t*Qi.GAMMA_DIVISION),0),this._packChunk(Qi.TYPE_gAMA,e)};E0.prototype.packIHDR=function(t,e){let r=Buffer.alloc(13);return r.writeUInt32BE(t,0),r.writeUInt32BE(e,4),r[8]=this._options.bitDepth,r[9]=this._options.colorType,r[10]=0,r[11]=0,r[12]=0,this._packChunk(Qi.TYPE_IHDR,r)};E0.prototype.packIDAT=function(t){return this._packChunk(Qi.TYPE_IDAT,t)};E0.prototype.packIEND=function(){return this._packChunk(Qi.TYPE_IEND,null)}});var DLe=E((Eqr,kLe)=>{"use strict";var ver=require("util"),OLe=require("stream"),Ier=zx(),Cer=HG(),PLe=kLe.exports=function(t){OLe.call(this);let e=t||{};this._packer=new Cer(e),this._deflate=this._packer.createDeflate(),this.readable=!0};ver.inherits(PLe,OLe);PLe.prototype.pack=function(t,e,r,n){this.emit("data",Buffer.from(Ier.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(e,r)),n&&this.emit("data",this._packer.packGAMA(n));let s=this._packer.filterData(t,e,r);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(i){this.emit("data",this._packer.packIDAT(i))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(s)}});var FLe=E((Uv,$Le)=>{"use strict";var BLe=require("assert").ok,Yx=require("zlib"),Ter=require("util"),LLe=require("buffer").kMaxLength;function $h(t){if(!(this instanceof $h))return new $h(t);t&&t.chunkSize<Yx.Z_MIN_CHUNK&&(t.chunkSize=Yx.Z_MIN_CHUNK),Yx.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 wer(t){return new $h(t)}function MLe(t,e){e&&process.nextTick(e),t._handle&&(t._handle.close(),t._handle=null)}$h.prototype._processChunk=function(t,e,r){if(typeof r=="function")return Yx.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(m){l=m});function d(m,h){if(n._hadError)return;let A=i-h;if(BLe(A>=0,"have should not go down"),A>0){let g=n._buffer.slice(n._offset,n._offset+A);if(n._offset+=A,g.length>a&&(g=g.slice(0,a)),c.push(g),u+=g.length,a-=g.length,a===0)return!1}return(h===0||n._offset>=n._chunkSize)&&(i=n._chunkSize,n._offset=0,n._buffer=Buffer.allocUnsafe(n._chunkSize)),h===0?(o+=s-m,s=m,!0):!1}BLe(this._handle,"zlib binding closed");let f;do f=this._handle.writeSync(e,t,o,s,this._buffer,this._offset,i),f=f||this._writeState;while(!this._hadError&&d(f[0],f[1]));if(this._hadError)throw l;if(u>=LLe)throw MLe(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+LLe.toString(16)+" bytes");let p=Buffer.concat(c,u);return MLe(this),p};Ter.inherits($h,Yx.Inflate);function Rer(t,e){if(typeof e=="string"&&(e=Buffer.from(e)),!(e instanceof Buffer))throw new TypeError("Not a string or buffer");let r=t._finishFlushFlag;return r==null&&(r=Yx.Z_FINISH),t._processChunk(e,r)}function WLe(t,e){return Rer(new $h(e),t)}$Le.exports=Uv=WLe;Uv.Inflate=$h;Uv.createInflate=wer;Uv.inflateSync=WLe});var QG=E((_qr,qLe)=>{"use strict";var ULe=qLe.exports=function(t){this._buffer=t,this._reads=[]};ULe.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e})};ULe.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let t=this._reads[0];if(this._buffer.length&&(this._buffer.length>=t.length||t.allowLess)){this._reads.shift();let e=this._buffer;this._buffer=e.slice(t.length),t.func.call(this,e.slice(0,t.length))}else break}if(this._reads.length>0)return new Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)return new Error("unrecognised content at end of stream")}});var HLe=E(jLe=>{"use strict";var Ner=QG(),Oer=LG();jLe.process=function(t,e){let r=[],n=new Ner(t);return new Oer(e,{read:n.read.bind(n),write:function(i){r.push(i)},complete:function(){}}).start(),n.process(),Buffer.concat(r)}});var VLe=E((vqr,KLe)=>{"use strict";var QLe=!0,GLe=require("zlib"),Per=FLe();GLe.deflateSync||(QLe=!1);var ker=QG(),Der=HLe(),Ber=FG(),Ler=UG(),Mer=qG();KLe.exports=function(t,e){if(!QLe)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r;function n(x){r=x}let s;function i(x){s=x}function a(x){s.transColor=x}function o(x){s.palette=x}function c(){s.alpha=!0}let u;function l(x){u=x}let d=[];function f(x){d.push(x)}let p=new ker(t);if(new Ber(e,{read:p.read.bind(p),error:n,metadata:i,gamma:l,palette:o,transColor:a,inflateData:f,simpleTransparency:c}).start(),p.process(),r)throw r;let h=Buffer.concat(d);d.length=0;let A;if(s.interlace)A=GLe.inflateSync(h);else{let v=((s.width*s.bpp*s.depth+7>>3)+1)*s.height;A=Per(h,{chunkSize:v,maxLength:v})}if(h=null,!A||!A.length)throw new Error("bad png - invalid inflate data response");let g=Der.process(A,s);h=null;let b=Ler.dataToBitMap(g,s);g=null;let y=Mer(b,s);return s.data=y,s.gamma=u||0,s}});var XLe=E((Iqr,JLe)=>{"use strict";var zLe=!0,YLe=require("zlib");YLe.deflateSync||(zLe=!1);var Wer=zx(),$er=HG();JLe.exports=function(t,e){if(!zLe)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r=e||{},n=new $er(r),s=[];s.push(Buffer.from(Wer.PNG_SIGNATURE)),s.push(n.packIHDR(t.width,t.height)),t.gamma&&s.push(n.packGAMA(t.gamma));let i=n.filterData(t.data,t.width,t.height),a=YLe.deflateSync(i,n.getDeflateOptions());if(i=null,!a||!a.length)throw new Error("bad png - invalid compressed data response");return s.push(n.packIDAT(a)),s.push(n.packIEND()),Buffer.concat(s)}});var ZLe=E(GG=>{"use strict";var Fer=VLe(),Uer=XLe();GG.read=function(t,e){return Fer(t,e||{})};GG.write=function(t,e){return Uer(t,e)}});var r4e=E(t4e=>{"use strict";var qer=require("util"),e4e=require("stream"),jer=vLe(),Her=DLe(),Qer=ZLe(),da=t4e.PNG=function(t){e4e.call(this),t=t||{},this.width=t.width|0,this.height=t.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,t.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new jer(t),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(e){this.data=e,this.emit("parsed",e)}.bind(this)),this._packer=new Her(t),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};qer.inherits(da,e4e);da.sync=Qer;da.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)};da.prototype.parse=function(t,e){if(e){let r,n;r=function(s){this.removeListener("error",n),this.data=s,e(null,this)}.bind(this),n=function(s){this.removeListener("parsed",r),e(s,null)}.bind(this),this.once("parsed",r),this.once("error",n)}return this.end(t),this};da.prototype.write=function(t){return this._parser.write(t),!0};da.prototype.end=function(t){this._parser.end(t)};da.prototype._metadata=function(t){this.width=t.width,this.height=t.height,this.emit("metadata",t)};da.prototype._gamma=function(t){this.gamma=t};da.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};da.bitblt=function(t,e,r,n,s,i,a,o){if(r|=0,n|=0,s|=0,i|=0,a|=0,o|=0,r>t.width||n>t.height||r+s>t.width||n+i>t.height)throw new Error("bitblt reading outside image");if(a>e.width||o>e.height||a+s>e.width||o+i>e.height)throw new Error("bitblt writing outside image");for(let c=0;c<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)};da.prototype.bitblt=function(t,e,r,n,s,i,a){return da.bitblt(this,t,e,r,n,s,i,a),this};da.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}};da.prototype.adjustGamma=function(){da.adjustGamma(this)}});var qv=E(Fh=>{function n4e(t){if(typeof t=="number"&&(t=t.toString()),typeof t!="string")throw new Error("Color should be defined as hex string");let e=t.slice().replace("#","").split("");if(e.length<3||e.length===5||e.length>8)throw new Error("Invalid hex color: "+t);(e.length===3||e.length===4)&&(e=Array.prototype.concat.apply([],e.map(function(n){return[n,n]}))),e.length===6&&e.push("F","F");let r=parseInt(e.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+e.slice(0,6).join("")}}Fh.getOptions=function(e){e||(e={}),e.color||(e.color={});let r=typeof e.margin>"u"||e.margin===null||e.margin<0?4:e.margin,n=e.width&&e.width>=21?e.width:void 0,s=e.scale||4;return{width:n,scale:n?4:s,margin:r,color:{dark:n4e(e.color.dark||"#000000ff"),light:n4e(e.color.light||"#ffffffff")},type:e.type,rendererOpts:e.rendererOpts||{}}};Fh.getScale=function(e,r){return r.width&&r.width>=e+r.margin*2?r.width/(e+r.margin*2):r.scale};Fh.getImageWidth=function(e,r){let n=Fh.getScale(e,r);return Math.floor((e+r.margin*2)*n)};Fh.qrToImageData=function(e,r,n){let s=r.modules.size,i=r.modules.data,a=Fh.getScale(s,n),o=Math.floor((s+n.margin*2)*a),c=n.margin*a,u=[n.color.light,n.color.dark];for(let l=0;l<o;l++)for(let d=0;d<o;d++){let f=(l*o+d)*4,p=n.color.light;if(l>=c&&d>=c&&l<o-c&&d<o-c){let m=Math.floor((l-c)/a),h=Math.floor((d-c)/a);p=u[i[m*s+h]?1:0]}e[f++]=p.r,e[f++]=p.g,e[f++]=p.b,e[f]=p.a}}});var s4e=E(xl=>{var Ger=require("fs"),Ker=r4e().PNG,KG=qv();xl.render=function(e,r){let n=KG.getOptions(r),s=n.rendererOpts,i=KG.getImageWidth(e.modules.size,n);s.width=i,s.height=i;let a=new Ker(s);return KG.qrToImageData(a.data,e,n),a};xl.renderToDataURL=function(e,r,n){typeof n>"u"&&(n=r,r=void 0),xl.renderToBuffer(e,r,function(s,i){s&&n(s);let a="data:image/png;base64,";a+=i.toString("base64"),n(null,a)})};xl.renderToBuffer=function(e,r,n){typeof n>"u"&&(n=r,r=void 0);let s=xl.render(e,r),i=[];s.on("error",n),s.on("data",function(a){i.push(a)}),s.on("end",function(){n(null,Buffer.concat(i))}),s.pack()};xl.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=!1,a=(...c)=>{i||(i=!0,s.apply(null,c))},o=Ger.createWriteStream(e);o.on("error",a),o.on("close",a),xl.renderToFileStream(o,r,n)};xl.renderToFileStream=function(e,r,n){xl.render(r,n).pack().pipe(e)}});var i4e=E(k3=>{var Ver=qv(),zer={WW:" ",WB:"\u2584",BB:"\u2588",BW:"\u2580"},Yer={BB:" ",BW:"\u2584",WW:"\u2588",WB:"\u2580"};function Jer(t,e,r){return t&&e?r.BB:t&&!e?r.BW:!t&&e?r.WB:r.WW}k3.render=function(t,e,r){let n=Ver.getOptions(e),s=zer;(n.color.dark.hex==="#ffffff"||n.color.light.hex==="#000000")&&(s=Yer);let i=t.modules.size,a=t.modules.data,o="",c=Array(i+n.margin*2+1).join(s.WW);c=Array(n.margin/2+1).join(c+`
`);let u=Array(n.margin+1).join(s.WW);o+=c;for(let l=0;l<i;l+=2){o+=u;for(let d=0;d<i;d++){let f=a[l*i+d],p=a[(l+1)*i+d];o+=Jer(f,p,s)}o+=u+`
`}return o+=c.slice(0,-1),typeof r=="function"&&r(null,o),o};k3.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),a=k3.render(r,n);i.writeFile(e,a,s)}});var o4e=E(a4e=>{a4e.render=function(t,e,r){let n=t.modules.size,s=t.modules.data,i="\x1B[40m \x1B[0m",a="\x1B[47m \x1B[0m",o="",c=Array(n+3).join(a),u=Array(2).join(a);o+=c+`
`;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 d4e=E(l4e=>{var Xer="\x1B[47m",Zer="\x1B[40m",VG="\x1B[37m",zG="\x1B[30m",Uh="\x1B[0m",etr=Xer+zG,ttr=Zer+VG,rtr=function(t,e,r){return{"00":Uh+" "+t,"01":Uh+e+"\u2584"+t,"02":Uh+r+"\u2584"+t,10:Uh+e+"\u2580"+t,11:" ",12:"\u2584",20:Uh+r+"\u2580"+t,21:"\u2580",22:"\u2588"}},c4e=function(t,e,r,n){let s=e+1;if(r>=s||n>=s||n<-1||r<-1)return"0";if(r>=e||n>=e||n<0||r<0)return"1";let i=n*e+r;return t[i]?"2":"1"},u4e=function(t,e,r,n){return c4e(t,e,r,n)+c4e(t,e,r,n+1)};l4e.render=function(t,e,r){let n=t.modules.size,s=t.modules.data,i=!!(e&&e.inverse),a=e&&e.inverse?ttr:etr,u=rtr(a,i?zG:VG,i?VG:zG),l=Uh+`
`+a,d=a;for(let f=-1;f<n+1;f+=2){for(let p=-1;p<n;p++)d+=u[u4e(s,n,p,f)];d+=u[u4e(s,n,n,f)]+l}return d+=Uh,typeof r=="function"&&r(null,d),d}});var p4e=E(f4e=>{var ntr=o4e(),str=d4e();f4e.render=function(t,e,r){return e&&e.small?str.render(t,e,r):ntr.render(t,e,r)}});var JG=E(h4e=>{var itr=qv();function m4e(t,e){let r=t.a/255,n=e+'="'+t.hex+'"';return r<1?n+" "+e+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function YG(t,e,r){let n=t+e;return typeof r<"u"&&(n+=" "+r),n}function atr(t,e,r){let n="",s=0,i=!1,a=0;for(let o=0;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?YG("M",c+r,.5+u+r):YG("m",s,0),s=0,i=!1),c+1<e&&t[o+1]||(n+=YG("h",a),a=0)):s++}return n}h4e.render=function(e,r,n){let s=itr.getOptions(r),i=e.modules.size,a=e.modules.data,o=i+s.margin*2,c=s.color.light.a?"<path "+m4e(s.color.light,"fill")+' d="M0 0h'+o+"v"+o+'H0z"/>':"",u="<path "+m4e(s.color.dark,"stroke")+' d="'+atr(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 g4e=E(D3=>{var otr=JG();D3.render=otr.render;D3.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),o='<?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">'+D3.render(r,n);i.writeFile(e,o,s)}});var A4e=E(B3=>{var XG=qv();function ctr(t,e,r){t.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=r,e.width=r,e.style.height=r+"px",e.style.width=r+"px"}function utr(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}B3.render=function(e,r,n){let s=n,i=r;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),r||(i=utr()),s=XG.getOptions(s);let a=XG.getImageWidth(e.modules.size,s),o=i.getContext("2d"),c=o.createImageData(a,a);return XG.qrToImageData(c.data,e,s),ctr(o,i,a),o.putImageData(c,0,0),i};B3.renderToDataURL=function(e,r,n){let s=n;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),s||(s={});let i=B3.render(e,r,s),a=s.type||"image/png",o=s.rendererOpts||{};return i.toDataURL(a,o.quality)}});var x4e=E(jv=>{var ltr=fG(),ZG=OG(),y4e=A4e(),dtr=JG();function eK(t,e,r,n,s){let i=[].slice.call(arguments,1),a=i.length,o=typeof i[a-1]=="function";if(!o&&!ltr())throw new Error("Callback required as last argument");if(o){if(a<2)throw new Error("Too few arguments provided");a===2?(s=r,r=e,e=n=void 0):a===3&&(e.getContext&&typeof s>"u"?(s=n,n=void 0):(s=n,n=r,r=e,e=void 0))}else{if(a<1)throw new Error("Too few arguments provided");return a===1?(r=e,e=n=void 0):a===2&&!e.getContext&&(n=r,r=e,e=void 0),new Promise(function(c,u){try{let l=ZG.create(r,n);c(t(l,e,n))}catch(l){u(l)}})}try{let c=ZG.create(r,n);s(null,t(c,e,n))}catch(c){s(c)}}jv.create=ZG.create;jv.toCanvas=eK.bind(null,y4e.render);jv.toDataURL=eK.bind(null,y4e.renderToDataURL);jv.toString=eK.bind(null,function(t,e,r){return dtr.render(t,r)})});var S4e=E(_0=>{var b4e=fG(),tK=OG(),ftr=s4e(),E4e=i4e(),ptr=p4e(),_4e=g4e();function Hv(t,e,r){if(typeof t>"u")throw new Error("String required as first argument");if(typeof r>"u"&&(r=e,e={}),typeof r!="function")if(b4e())e=r||{},r=null;else throw new Error("Callback required as last argument");return{opts:e,cb:r}}function mtr(t){return t.slice((t.lastIndexOf(".")-1>>>0)+2).toLowerCase()}function L3(t){switch(t){case"svg":return _4e;case"txt":case"utf8":return E4e;case"png":case"image/png":default:return ftr}}function htr(t){switch(t){case"svg":return _4e;case"terminal":return ptr;case"utf8":default:return E4e}}function Qv(t,e,r){if(!r.cb)return new Promise(function(n,s){try{let i=tK.create(e,r.opts);return t(i,r.opts,function(a,o){return a?s(a):n(o)})}catch(i){s(i)}});try{let n=tK.create(e,r.opts);return t(n,r.opts,r.cb)}catch(n){r.cb(n)}}_0.create=tK.create;_0.toCanvas=x4e().toCanvas;_0.toString=function(e,r,n){let s=Hv(e,r,n),i=s.opts?s.opts.type:void 0,a=htr(i);return Qv(a.render,e,s)};_0.toDataURL=function(e,r,n){let s=Hv(e,r,n),i=L3(s.opts.type);return Qv(i.renderToDataURL,e,s)};_0.toBuffer=function(e,r,n){let s=Hv(e,r,n),i=L3(s.opts.type);return Qv(i.renderToBuffer,e,s)};_0.toFile=function(e,r,n,s){if(typeof e!="string"||!(typeof r=="string"||typeof r=="object"))throw new Error("Invalid argument");if(arguments.length<3&&!b4e())throw new Error("Too few arguments provided");let i=Hv(r,n,s),a=i.opts.type||mtr(e),c=L3(a).renderToFile.bind(null,e);return Qv(c,r,i)};_0.toFileStream=function(e,r,n){if(arguments.length<2)throw new Error("Too few arguments provided");let s=Hv(r,n,e.emit.bind(e,"error")),a=L3("png").renderToFileStream.bind(null,e);Qv(a,r,s)}});var S0=E(($qr,v4e)=>{v4e.exports=S4e()});var U4e=E((Yqr,F4e)=>{F4e.exports=require("util").inspect});var Zv=E((Jqr,oMe)=>{var yK=typeof Map=="function"&&Map.prototype,uK=Object.getOwnPropertyDescriptor&&yK?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,j3=yK&&uK&&typeof uK.get=="function"?uK.get:null,q4e=yK&&Map.prototype.forEach,xK=typeof Set=="function"&&Set.prototype,lK=Object.getOwnPropertyDescriptor&&xK?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,H3=xK&&lK&&typeof lK.get=="function"?lK.get:null,j4e=xK&&Set.prototype.forEach,Itr=typeof WeakMap=="function"&&WeakMap.prototype,Yv=Itr?WeakMap.prototype.has:null,Ctr=typeof WeakSet=="function"&&WeakSet.prototype,Jv=Ctr?WeakSet.prototype.has:null,Ttr=typeof WeakRef=="function"&&WeakRef.prototype,H4e=Ttr?WeakRef.prototype.deref:null,wtr=Boolean.prototype.valueOf,Rtr=Object.prototype.toString,Ntr=Function.prototype.toString,Otr=String.prototype.match,bK=String.prototype.slice,I0=String.prototype.replace,Ptr=String.prototype.toUpperCase,Q4e=String.prototype.toLowerCase,eMe=RegExp.prototype.test,G4e=Array.prototype.concat,_l=Array.prototype.join,ktr=Array.prototype.slice,K4e=Math.floor,pK=typeof BigInt=="function"?BigInt.prototype.valueOf:null,dK=Object.getOwnPropertySymbols,mK=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,Jx=typeof Symbol=="function"&&typeof Symbol.iterator=="object",Xv=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===Jx||!0)?Symbol.toStringTag:null,tMe=Object.prototype.propertyIsEnumerable,V4e=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function z4e(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||eMe.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-K4e(-t):K4e(t);if(n!==t){var s=String(n),i=bK.call(e,s.length+1);return I0.call(s,r,"$&_")+"."+I0.call(I0.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return I0.call(e,r,"$&_")}var hK=U4e(),Y4e=hK.custom,J4e=sMe(Y4e)?Y4e:null,rMe={__proto__:null,double:'"',single:"'"},Dtr={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};oMe.exports=function t(e,r,n,s){var i=r||{};if(ef(i,"quoteStyle")&&!ef(rMe,i.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(ef(i,"maxStringLength")&&(typeof i.maxStringLength=="number"?i.maxStringLength<0&&i.maxStringLength!==1/0:i.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var a=ef(i,"customInspect")?i.customInspect:!0;if(typeof a!="boolean"&&a!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(ef(i,"indent")&&i.indent!==null&&i.indent!==" "&&!(parseInt(i.indent,10)===i.indent&&i.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(ef(i,"numericSeparator")&&typeof i.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var o=i.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return aMe(e,i);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return o?z4e(e,c):c}if(typeof e=="bigint"){var u=String(e)+"n";return o?z4e(e,u):u}var l=typeof i.depth>"u"?5:i.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof e=="object")return gK(e)?"[Array]":"[Object]";var d=Xtr(i,n);if(typeof s>"u")s=[];else if(iMe(s,e)>=0)return"[Circular]";function f(D,L,Z){if(L&&(s=ktr.call(s),s.push(L)),Z){var W={depth:i.depth};return ef(i,"quoteStyle")&&(W.quoteStyle=i.quoteStyle),t(D,W,n+1,s)}return t(D,i,n+1,s)}if(typeof e=="function"&&!X4e(e)){var p=jtr(e),m=q3(e,f);return"[Function"+(p?": "+p:" (anonymous)")+"]"+(m.length>0?" { "+_l.call(m,", ")+" }":"")}if(sMe(e)){var h=Jx?I0.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):mK.call(e);return typeof e=="object"&&!Jx?zv(h):h}if(ztr(e)){for(var A="<"+Q4e.call(String(e.nodeName)),g=e.attributes||[],b=0;b<g.length;b++)A+=" "+g[b].name+"="+nMe(Btr(g[b].value),"double",i);return A+=">",e.childNodes&&e.childNodes.length&&(A+="..."),A+="</"+Q4e.call(String(e.nodeName))+">",A}if(gK(e)){if(e.length===0)return"[]";var y=q3(e,f);return d&&!Jtr(y)?"["+AK(y,d)+"]":"[ "+_l.call(y,", ")+" ]"}if(Mtr(e)){var x=q3(e,f);return!("cause"in Error.prototype)&&"cause"in e&&!tMe.call(e,"cause")?"{ ["+String(e)+"] "+_l.call(G4e.call("[cause]: "+f(e.cause),x),", ")+" }":x.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+_l.call(x,", ")+" }"}if(typeof e=="object"&&a){if(J4e&&typeof e[J4e]=="function"&&hK)return hK(e,{depth:l-n});if(a!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(Htr(e)){var v=[];return q4e&&q4e.call(e,function(D,L){v.push(f(L,e,!0)+" => "+f(D,e))}),Z4e("Map",j3.call(e),v,d)}if(Ktr(e)){var I=[];return j4e&&j4e.call(e,function(D){I.push(f(D,e))}),Z4e("Set",H3.call(e),I,d)}if(Qtr(e))return fK("WeakMap");if(Vtr(e))return fK("WeakSet");if(Gtr(e))return fK("WeakRef");if($tr(e))return zv(f(Number(e)));if(Utr(e))return zv(f(pK.call(e)));if(Ftr(e))return zv(wtr.call(e));if(Wtr(e))return zv(f(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(typeof globalThis<"u"&&e===globalThis||typeof global<"u"&&e===global)return"{ [object globalThis] }";if(!Ltr(e)&&!X4e(e)){var R=q3(e,f),w=V4e?V4e(e)===Object.prototype:e instanceof Object||e.constructor===Object,N=e instanceof Object?"":"null prototype",P=!w&&Xv&&Object(e)===e&&Xv in e?bK.call(C0(e),8,-1):N?"Object":"",B=w||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",M=B+(P||N?"["+_l.call(G4e.call([],P||[],N||[]),": ")+"] ":"");return R.length===0?M+"{}":d?M+"{"+AK(R,d)+"}":M+"{ "+_l.call(R,", ")+" }"}return String(e)};function nMe(t,e,r){var n=r.quoteStyle||e,s=rMe[n];return s+t+s}function Btr(t){return I0.call(String(t),/"/g,"&quot;")}function jh(t){return!Xv||!(typeof t=="object"&&(Xv in t||typeof t[Xv]<"u"))}function gK(t){return C0(t)==="[object Array]"&&jh(t)}function Ltr(t){return C0(t)==="[object Date]"&&jh(t)}function X4e(t){return C0(t)==="[object RegExp]"&&jh(t)}function Mtr(t){return C0(t)==="[object Error]"&&jh(t)}function Wtr(t){return C0(t)==="[object String]"&&jh(t)}function $tr(t){return C0(t)==="[object Number]"&&jh(t)}function Ftr(t){return C0(t)==="[object Boolean]"&&jh(t)}function sMe(t){if(Jx)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!mK)return!1;try{return mK.call(t),!0}catch{}return!1}function Utr(t){if(!t||typeof t!="object"||!pK)return!1;try{return pK.call(t),!0}catch{}return!1}var qtr=Object.prototype.hasOwnProperty||function(t){return t in this};function ef(t,e){return qtr.call(t,e)}function C0(t){return Rtr.call(t)}function jtr(t){if(t.name)return t.name;var e=Otr.call(Ntr.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function iMe(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;r<n;r++)if(t[r]===e)return r;return-1}function Htr(t){if(!j3||!t||typeof t!="object")return!1;try{j3.call(t);try{H3.call(t)}catch{return!0}return t instanceof Map}catch{}return!1}function Qtr(t){if(!Yv||!t||typeof t!="object")return!1;try{Yv.call(t,Yv);try{Jv.call(t,Jv)}catch{return!0}return t instanceof WeakMap}catch{}return!1}function Gtr(t){if(!H4e||!t||typeof t!="object")return!1;try{return H4e.call(t),!0}catch{}return!1}function Ktr(t){if(!H3||!t||typeof t!="object")return!1;try{H3.call(t);try{j3.call(t)}catch{return!0}return t instanceof Set}catch{}return!1}function Vtr(t){if(!Jv||!t||typeof t!="object")return!1;try{Jv.call(t,Jv);try{Yv.call(t,Yv)}catch{return!0}return t instanceof WeakSet}catch{}return!1}function ztr(t){return!t||typeof t!="object"?!1:typeof HTMLElement<"u"&&t instanceof HTMLElement?!0:typeof t.nodeName=="string"&&typeof t.getAttribute=="function"}function aMe(t,e){if(t.length>e.maxStringLength){var r=t.length-e.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return aMe(bK.call(t,0,e.maxStringLength),e)+n}var s=Dtr[e.quoteStyle||"single"];s.lastIndex=0;var i=I0.call(I0.call(t,s,"\\$1"),/[\x00-\x1f]/g,Ytr);return nMe(i,"single",e)}function Ytr(t){var e=t.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return r?"\\"+r:"\\x"+(e<16?"0":"")+Ptr.call(e.toString(16))}function zv(t){return"Object("+t+")"}function fK(t){return t+" { ? }"}function Z4e(t,e,r,n){var s=n?AK(r,n):_l.call(r,", ");return t+" ("+e+") {"+s+"}"}function Jtr(t){for(var e=0;e<t.length;e++)if(iMe(t[e],`
`)>=0)return!1;return!0}function Xtr(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=_l.call(Array(t.indent+1)," ");else return null;return{base:r,prev:_l.call(Array(e+1),r)}}function AK(t,e){if(t.length===0)return"";var r=`
`+e.prev+e.base;return r+_l.call(t,","+r)+`
`+e.prev}function q3(t,e){var r=gK(t),n=[];if(r){n.length=t.length;for(var s=0;s<t.length;s++)n[s]=ef(t,s)?e(t[s],t):""}var i=typeof dK=="function"?dK(t):[],a;if(Jx){a={};for(var o=0;o<i.length;o++)a["$"+i[o]]=i[o]}for(var c in t)ef(t,c)&&(r&&String(Number(c))===c&&c<t.length||Jx&&a["$"+c]instanceof Symbol||(eMe.call(/[^\w$]/,c)?n.push(e(c,t)+": "+e(t[c],t)):n.push(c+": "+e(t[c],t))));if(typeof dK=="function")for(var u=0;u<i.length;u++)tMe.call(t,i[u])&&n.push("["+e(i[u])+"]: "+e(t[i[u]],t));return n}});var uMe=E((Xqr,cMe)=>{"use strict";var Ztr=Zv(),err=Gp(),Q3=function(t,e,r){for(var n=t,s;(s=n.next)!=null;n=s)if(s.key===e)return n.next=s.next,r||(s.next=t.next,t.next=s),s},trr=function(t,e){if(t){var r=Q3(t,e);return r&&r.value}},rrr=function(t,e,r){var n=Q3(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},nrr=function(t,e){return t?!!Q3(t,e):!1},srr=function(t,e){if(t)return Q3(t,e,!0)};cMe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new err("Side channel does not contain "+Ztr(n))},delete:function(n){var s=e&&e.next,i=srr(e,n);return i&&s&&s===i&&(e=void 0),!!i},get:function(n){return trr(e,n)},has:function(n){return nrr(e,n)},set:function(n,s){e||(e={next:void 0}),rrr(e,n,s)}};return r}});var EK=E((Zqr,fMe)=>{"use strict";var lMe=LS(),dMe=Pj(),irr=dMe([lMe("%String.prototype.indexOf%")]);fMe.exports=function(e,r){var n=lMe(e,!!r);return typeof n=="function"&&irr(e,".prototype.")>-1?dMe([n]):n}});var _K=E((e9r,mMe)=>{"use strict";var arr=LS(),eI=EK(),orr=Zv(),crr=Gp(),pMe=arr("%Map%",!0),urr=eI("Map.prototype.get",!0),lrr=eI("Map.prototype.set",!0),drr=eI("Map.prototype.has",!0),frr=eI("Map.prototype.delete",!0),prr=eI("Map.prototype.size",!0);mMe.exports=!!pMe&&function(){var e,r={assert:function(n){if(!r.has(n))throw new crr("Side channel does not contain "+orr(n))},delete:function(n){if(e){var s=frr(e,n);return prr(e)===0&&(e=void 0),s}return!1},get:function(n){if(e)return urr(e,n)},has:function(n){return e?drr(e,n):!1},set:function(n,s){e||(e=new pMe),lrr(e,n,s)}};return r}});var gMe=E((t9r,hMe)=>{"use strict";var mrr=LS(),K3=EK(),hrr=Zv(),G3=_K(),grr=Gp(),Xx=mrr("%WeakMap%",!0),Arr=K3("WeakMap.prototype.get",!0),yrr=K3("WeakMap.prototype.set",!0),xrr=K3("WeakMap.prototype.has",!0),brr=K3("WeakMap.prototype.delete",!0);hMe.exports=Xx?function(){var e,r,n={assert:function(s){if(!n.has(s))throw new grr("Side channel does not contain "+hrr(s))},delete:function(s){if(Xx&&s&&(typeof s=="object"||typeof s=="function")){if(e)return brr(e,s)}else if(G3&&r)return r.delete(s);return!1},get:function(s){return Xx&&s&&(typeof s=="object"||typeof s=="function")&&e?Arr(e,s):r&&r.get(s)},has:function(s){return Xx&&s&&(typeof s=="object"||typeof s=="function")&&e?xrr(e,s):!!r&&r.has(s)},set:function(s,i){Xx&&s&&(typeof s=="object"||typeof s=="function")?(e||(e=new Xx),yrr(e,s,i)):G3&&(r||(r=G3()),r.set(s,i))}};return n}:G3});var yMe=E((r9r,AMe)=>{"use strict";var Err=Gp(),_rr=Zv(),Srr=uMe(),vrr=_K(),Irr=gMe(),Crr=Irr||vrr||Srr;AMe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new Err("Side channel does not contain "+_rr(n))},delete:function(n){return!!e&&e.delete(n)},get:function(n){return e&&e.get(n)},has:function(n){return!!e&&e.has(n)},set:function(n,s){e||(e=Crr()),e.set(n,s)}};return r}});var V3=E((n9r,xMe)=>{"use strict";var Trr=String.prototype.replace,wrr=/%20/g,SK={RFC1738:"RFC1738",RFC3986:"RFC3986"};xMe.exports={default:SK.RFC3986,formatters:{RFC1738:function(t){return Trr.call(t,wrr,"+")},RFC3986:function(t){return String(t)}},RFC1738:SK.RFC1738,RFC3986:SK.RFC3986}});var CK=E((s9r,EMe)=>{"use strict";var Rrr=V3(),vK=Object.prototype.hasOwnProperty,Hh=Array.isArray,Sl=function(){for(var t=[],e=0;e<256;++e)t.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return t}(),Nrr=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(Hh(n)){for(var s=[],i=0;i<n.length;++i)typeof n[i]<"u"&&s.push(n[i]);r.obj[r.prop]=s}}},bMe=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},Orr=function t(e,r,n){if(!r)return e;if(typeof r!="object"&&typeof r!="function"){if(Hh(e))e.push(r);else if(e&&typeof e=="object")(n&&(n.plainObjects||n.allowPrototypes)||!vK.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 Hh(e)&&!Hh(r)&&(s=bMe(e,n)),Hh(e)&&Hh(r)?(r.forEach(function(i,a){if(vK.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 vK.call(i,a)?i[a]=t(i[a],o,n):i[a]=o,i},s)},Prr=function(e,r){return Object.keys(r).reduce(function(n,s){return n[s]=r[s],n},e)},krr=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}},IK=1024,Drr=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(p){return"%26%23"+parseInt(p.slice(2),16)+"%3B"});for(var o="",c=0;c<a.length;c+=IK){for(var u=a.length>=IK?a.slice(c,c+IK):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===Rrr.RFC1738&&(f===40||f===41)){l[l.length]=u.charAt(d);continue}if(f<128){l[l.length]=Sl[f];continue}if(f<2048){l[l.length]=Sl[192|f>>6]+Sl[128|f&63];continue}if(f<55296||f>=57344){l[l.length]=Sl[224|f>>12]+Sl[128|f>>6&63]+Sl[128|f&63];continue}d+=1,f=65536+((f&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=Sl[240|f>>18]+Sl[128|f>>12&63]+Sl[128|f>>6&63]+Sl[128|f&63]}o+=l.join("")}return o},Brr=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],s=0;s<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 Nrr(r),e},Lrr=function(e){return Object.prototype.toString.call(e)==="[object RegExp]"},Mrr=function(e){return!e||typeof e!="object"?!1:!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},Wrr=function(e,r){return[].concat(e,r)},$rr=function(e,r){if(Hh(e)){for(var n=[],s=0;s<e.length;s+=1)n.push(r(e[s]));return n}return r(e)};EMe.exports={arrayToObject:bMe,assign:Prr,combine:Wrr,compact:Brr,decode:krr,encode:Drr,isBuffer:Mrr,isRegExp:Lrr,maybeMap:$rr,merge:Orr}});var TMe=E((i9r,CMe)=>{"use strict";var SMe=yMe(),z3=CK(),tI=V3(),Frr=Object.prototype.hasOwnProperty,vMe={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},vl=Array.isArray,Urr=Array.prototype.push,IMe=function(t,e){Urr.apply(t,vl(e)?e:[e])},qrr=Date.prototype.toISOString,_Me=tI.default,Ds={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:z3.encode,encodeValuesOnly:!1,filter:void 0,format:_Me,formatter:tI.formatters[_Me],indices:!1,serializeDate:function(e){return qrr.call(e)},skipNulls:!1,strictNullHandling:!1},jrr=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},TK={},Hrr=function t(e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b){for(var y=e,x=b,v=0,I=!1;(x=x.get(TK))!==void 0&&!I;){var R=x.get(e);if(v+=1,typeof R<"u"){if(R===v)throw new RangeError("Cyclic object value");I=!0}typeof x.get(TK)>"u"&&(v=0)}if(typeof l=="function"?y=l(r,y):y instanceof Date?y=p(y):n==="comma"&&vl(y)&&(y=z3.maybeMap(y,function(J){return J instanceof Date?p(J):J})),y===null){if(a)return u&&!A?u(r,Ds.encoder,g,"key",m):r;y=""}if(jrr(y)||z3.isBuffer(y)){if(u){var w=A?r:u(r,Ds.encoder,g,"key",m);return[h(w)+"="+h(u(y,Ds.encoder,g,"value",m))]}return[h(r)+"="+h(String(y))]}var N=[];if(typeof y>"u")return N;var P;if(n==="comma"&&vl(y))A&&u&&(y=z3.maybeMap(y,u)),P=[{value:y.length>0?y.join(",")||null:void 0}];else if(vl(l))P=l;else{var B=Object.keys(y);P=d?B.sort(d):B}var M=c?String(r).replace(/\./g,"%2E"):String(r),D=s&&vl(y)&&y.length===1?M+"[]":M;if(i&&vl(y)&&y.length===0)return D+"[]";for(var L=0;L<P.length;++L){var Z=P[L],W=typeof Z=="object"&&Z&&typeof Z.value<"u"?Z.value:y[Z];if(!(o&&W===null)){var F=f&&c?String(Z).replace(/\./g,"%2E"):String(Z),K=vl(y)?typeof n=="function"?n(D,F):D:D+(f?"."+F:"["+F+"]");b.set(e,v);var j=SMe();j.set(TK,b),IMe(N,t(W,K,n,s,i,a,o,c,n==="comma"&&A&&vl(y)?null:u,l,d,f,p,m,h,A,g,j))}}return N},Qrr=function(e){if(!e)return Ds;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||Ds.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=tI.default;if(typeof e.format<"u"){if(!Frr.call(tI.formatters,e.format))throw new TypeError("Unknown format option provided.");n=e.format}var s=tI.formatters[n],i=Ds.filter;(typeof e.filter=="function"||vl(e.filter))&&(i=e.filter);var a;if(e.arrayFormat in vMe?a=e.arrayFormat:"indices"in e?a=e.indices?"indices":"repeat":a=Ds.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:Ds.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:Ds.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Ds.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Ds.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?Ds.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:Ds.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:Ds.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:Ds.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:Ds.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:Ds.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:Ds.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Ds.strictNullHandling}};CMe.exports=function(t,e){var r=t,n=Qrr(e),s,i;typeof n.filter=="function"?(i=n.filter,r=i("",r)):vl(n.filter)&&(i=n.filter,s=i);var a=[];if(typeof r!="object"||r===null)return"";var o=vMe[n.arrayFormat],c=o==="comma"&&n.commaRoundTrip;s||(s=Object.keys(r)),n.sort&&s.sort(n.sort);for(var u=SMe(),l=0;l<s.length;++l){var d=s[l],f=r[d];n.skipNulls&&f===null||IMe(a,Hrr(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 p=a.join(n.delimiter),m=n.addQueryPrefix===!0?"?":"";return n.charsetSentinel&&(n.charset==="iso-8859-1"?m+="utf8=%26%2310003%3B&":m+="utf8=%E2%9C%93&"),p.length>0?m+p:""}});var OMe=E((a9r,NMe)=>{"use strict";var Qh=CK(),wK=Object.prototype.hasOwnProperty,wMe=Array.isArray,Zn={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Qh.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},Grr=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},RMe=function(t,e,r){if(t&&typeof t=="string"&&e.comma&&t.indexOf(",")>-1)return t.split(",");if(e.throwOnLimitExceeded&&r>=e.arrayLimit)throw new RangeError("Array limit exceeded. Only "+e.arrayLimit+" element"+(e.arrayLimit===1?"":"s")+" allowed in an array.");return t},Krr="utf8=%26%2310003%3B",Vrr="utf8=%E2%9C%93",zrr=function(e,r){var n={__proto__:null},s=r.ignoreQueryPrefix?e.replace(/^\?/,""):e;s=s.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var i=r.parameterLimit===1/0?void 0:r.parameterLimit,a=s.split(r.delimiter,r.throwOnLimitExceeded?i+1:i);if(r.throwOnLimitExceeded&&a.length>i)throw new RangeError("Parameter limit exceeded. Only "+i+" parameter"+(i===1?"":"s")+" allowed.");var o=-1,c,u=r.charset;if(r.charsetSentinel)for(c=0;c<a.length;++c)a[c].indexOf("utf8=")===0&&(a[c]===Vrr?u="utf-8":a[c]===Krr&&(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,p,m;f===-1?(p=r.decoder(l,Zn.decoder,u,"key"),m=r.strictNullHandling?null:""):(p=r.decoder(l.slice(0,f),Zn.decoder,u,"key"),m=Qh.maybeMap(RMe(l.slice(f+1),r,wMe(n[p])?n[p].length:0),function(A){return r.decoder(A,Zn.decoder,u,"value")})),m&&r.interpretNumericEntities&&u==="iso-8859-1"&&(m=Grr(String(m))),l.indexOf("[]=")>-1&&(m=wMe(m)?[m]:m);var h=wK.call(n,p);h&&r.duplicates==="combine"?n[p]=Qh.combine(n[p],m):(!h||r.duplicates==="last")&&(n[p]=m)}return n},Yrr=function(t,e,r,n){var s=0;if(t.length>0&&t[t.length-1]==="[]"){var i=t.slice(0,-1).join("");s=Array.isArray(e)&&e[i]?e[i].length:0}for(var a=n?e:RMe(e,r,s),o=t.length-1;o>=0;--o){var c,u=t[o];if(u==="[]"&&r.parseArrays)c=r.allowEmptyArrays&&(a===""||r.strictNullHandling&&a===null)?[]:Qh.combine([],a);else{c=r.plainObjects?{__proto__:null}:{};var l=u.charAt(0)==="["&&u.charAt(u.length-1)==="]"?u.slice(1,-1):u,d=r.decodeDotInKeys?l.replace(/%2E/g,"."):l,f=parseInt(d,10);!r.parseArrays&&d===""?c={0:a}:!isNaN(f)&&u!==d&&String(f)===d&&f>=0&&r.parseArrays&&f<=r.arrayLimit?(c=[],c[f]=a):d!=="__proto__"&&(c[d]=a)}a=c}return a},Jrr=function(e,r,n,s){if(e){var i=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,a=/(\[[^[\]]*])/,o=/(\[[^[\]]*])/g,c=n.depth>0&&a.exec(i),u=c?i.slice(0,c.index):i,l=[];if(u){if(!n.plainObjects&&wK.call(Object.prototype,u)&&!n.allowPrototypes)return;l.push(u)}for(var d=0;n.depth>0&&(c=o.exec(i))!==null&&d<n.depth;){if(d+=1,!n.plainObjects&&wK.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 Yrr(l,r,n,s)}},Xrr=function(e){if(!e)return Zn;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"?Zn.charset:e.charset,n=typeof e.duplicates>"u"?Zn.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var s=typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:Zn.allowDots:!!e.allowDots;return{allowDots:s,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Zn.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:Zn.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:Zn.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:Zn.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Zn.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:Zn.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:Zn.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:Zn.decoder,delimiter:typeof e.delimiter=="string"||Qh.isRegExp(e.delimiter)?e.delimiter:Zn.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:Zn.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:Zn.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:Zn.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:Zn.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:Zn.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Zn.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};NMe.exports=function(t,e){var r=Xrr(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?zrr(t,r):t,s=r.plainObjects?{__proto__:null}:{},i=Object.keys(n),a=0;a<i.length;++a){var o=i[a],c=Jrr(o,n[o],r,typeof t=="string");s=Qh.merge(s,c,r)}return r.allowSparse===!0?s:Qh.compact(s)}});var rI=E((o9r,PMe)=>{"use strict";var Zrr=TMe(),enr=OMe(),tnr=V3();PMe.exports={formats:tnr,parse:enr,stringify:Zrr}});var RK=E((kMe,Y3)=>{(function(t){"use strict";var e,r=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,n=Math.ceil,s=Math.floor,i="[BigNumber Error] ",a=i+"Number primitive has more than 15 significant digits: ",o=1e14,c=14,u=9007199254740991,l=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],d=1e7,f=1e9;function p(v){var I,R,w,N=ue.prototype={constructor:ue,toString:null,valueOf:null},P=new ue(1),B=20,M=4,D=-7,L=21,Z=-1e7,W=1e7,F=!1,K=1,j=0,J={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},se="0123456789abcdefghijklmnopqrstuvwxyz",oe=!0;function ue(U,G){var V,q,H,ee,ne,re,X,ie,ce=this;if(!(ce instanceof ue))return new ue(U,G);if(G==null){if(U&&U._isBigNumber===!0){ce.s=U.s,!U.c||U.e>W?ce.c=ce.e=null:U.e<Z?ce.c=[ce.e=0]:(ce.e=U.e,ce.c=U.c.slice());return}if((re=typeof U=="number")&&U*0==0){if(ce.s=1/U<0?(U=-U,-1):1,U===~~U){for(ee=0,ne=U;ne>=10;ne/=10,ee++);ee>W?ce.c=ce.e=null:(ce.e=ee,ce.c=[U]);return}ie=String(U)}else{if(!r.test(ie=String(U)))return w(ce,ie,re);ce.s=ie.charCodeAt(0)==45?(ie=ie.slice(1),-1):1}(ee=ie.indexOf("."))>-1&&(ie=ie.replace(".","")),(ne=ie.search(/e/i))>0?(ee<0&&(ee=ne),ee+=+ie.slice(ne+1),ie=ie.substring(0,ne)):ee<0&&(ee=ie.length)}else{if(g(G,2,se.length,"Base"),G==10&&oe)return ce=new ue(U),Fe(ce,B+ce.e+1,M);if(ie=String(U),re=typeof U=="number"){if(U*0!=0)return w(ce,ie,re,G);if(ce.s=1/U<0?(ie=ie.slice(1),-1):1,ue.DEBUG&&ie.replace(/^0\.0*|\./,"").length>15)throw Error(a+U)}else ce.s=ie.charCodeAt(0)===45?(ie=ie.slice(1),-1):1;for(V=se.slice(0,G),ee=ne=0,X=ie.length;ne<X;ne++)if(V.indexOf(q=ie.charAt(ne))<0){if(q=="."){if(ne>ee){ee=X;continue}}else if(!H&&(ie==ie.toUpperCase()&&(ie=ie.toLowerCase())||ie==ie.toLowerCase()&&(ie=ie.toUpperCase()))){H=!0,ne=-1,ee=0;continue}return w(ce,String(U),re,G)}re=!1,ie=R(ie,G,10,ce.s),(ee=ie.indexOf("."))>-1?ie=ie.replace(".",""):ee=ie.length}for(ne=0;ie.charCodeAt(ne)===48;ne++);for(X=ie.length;ie.charCodeAt(--X)===48;);if(ie=ie.slice(ne,++X)){if(X-=ne,re&&ue.DEBUG&&X>15&&(U>u||U!==s(U)))throw Error(a+ce.s*U);if((ee=ee-ne-1)>W)ce.c=ce.e=null;else if(ee<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=p,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(U){var G,V;if(U!=null)if(typeof U=="object"){if(U.hasOwnProperty(G="DECIMAL_PLACES")&&(V=U[G],g(V,0,f,G),B=V),U.hasOwnProperty(G="ROUNDING_MODE")&&(V=U[G],g(V,0,8,G),M=V),U.hasOwnProperty(G="EXPONENTIAL_AT")&&(V=U[G],V&&V.pop?(g(V[0],-f,0,G),g(V[1],0,f,G),D=V[0],L=V[1]):(g(V,-f,f,G),D=-(L=V<0?-V:V))),U.hasOwnProperty(G="RANGE"))if(V=U[G],V&&V.pop)g(V[0],-f,-1,G),g(V[1],1,f,G),Z=V[0],W=V[1];else if(g(V,-f,f,G),V)Z=-(W=V<0?-V:V);else throw Error(i+G+" cannot be zero: "+V);if(U.hasOwnProperty(G="CRYPTO"))if(V=U[G],V===!!V)if(V)if(typeof crypto<"u"&&crypto&&(crypto.getRandomValues||crypto.randomBytes))F=V;else throw F=!V,Error(i+"crypto unavailable");else F=V;else throw Error(i+G+" not true or false: "+V);if(U.hasOwnProperty(G="MODULO_MODE")&&(V=U[G],g(V,0,9,G),K=V),U.hasOwnProperty(G="POW_PRECISION")&&(V=U[G],g(V,0,f,G),j=V),U.hasOwnProperty(G="FORMAT"))if(V=U[G],typeof V=="object")J=V;else throw Error(i+G+" not an object: "+V);if(U.hasOwnProperty(G="ALPHABET"))if(V=U[G],typeof V=="string"&&!/^.?$|[+\-.\s]|(.).*\1/.test(V))oe=V.slice(0,10)=="0123456789",se=V;else throw Error(i+G+" invalid: "+V)}else throw Error(i+"Object expected: "+U);return{DECIMAL_PLACES:B,ROUNDING_MODE:M,EXPONENTIAL_AT:[D,L],RANGE:[Z,W],CRYPTO:F,MODULO_MODE:K,POW_PRECISION:j,FORMAT:J,ALPHABET:se}},ue.isBigNumber=function(U){if(!U||U._isBigNumber!==!0)return!1;if(!ue.DEBUG)return!0;var G,V,q=U.c,H=U.e,ee=U.s;e:if({}.toString.call(q)=="[object Array]"){if((ee===1||ee===-1)&&H>=-f&&H<=f&&H===s(H)){if(q[0]===0){if(H===0&&q.length===1)return!0;break e}if(G=(H+1)%c,G<1&&(G+=c),String(q[0]).length==G){for(G=0;G<q.length;G++)if(V=q[G],V<0||V>=o||V!==s(V))break e;if(V!==0)return!0}}}else if(q===null&&H===null&&(ee===null||ee===1||ee===-1))return!0;throw Error(i+"Invalid BigNumber: "+U)},ue.maximum=ue.max=function(){return we(arguments,-1)},ue.minimum=ue.min=function(){return we(arguments,1)},ue.random=function(){var U=9007199254740992,G=Math.random()*U&2097151?function(){return s(Math.random()*U)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(V){var q,H,ee,ne,re,X=0,ie=[],ce=new ue(P);if(V==null?V=B:g(V,0,f),ne=n(V/c),F)if(crypto.getRandomValues){for(q=crypto.getRandomValues(new Uint32Array(ne*=2));X<ne;)re=q[X]*131072+(q[X+1]>>>11),re>=9e15?(H=crypto.getRandomValues(new Uint32Array(2)),q[X]=H[0],q[X+1]=H[1]):(ie.push(re%1e14),X+=2);X=ne/2}else if(crypto.randomBytes){for(q=crypto.randomBytes(ne*=7);X<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 F=!1,Error(i+"crypto unavailable");if(!F)for(;X<ne;)re=G(),re<9e15&&(ie[X++]=re%1e14);for(ne=ie[--X],V%=c,ne&&V&&(re=l[c-V],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 U=1,G=arguments,V=new ue(G[0]);U<G.length;)V=V.plus(G[U++]);return V},R=function(){var U="0123456789";function G(V,q,H,ee){for(var ne,re=[0],X,ie=0,ce=V.length;ie<ce;){for(X=re.length;X--;re[X]*=q);for(re[0]+=ee.indexOf(V.charAt(ie++)),ne=0;ne<re.length;ne++)re[ne]>H-1&&(re[ne+1]==null&&(re[ne+1]=0),re[ne+1]+=re[ne]/H|0,re[ne]%=H)}return re.reverse()}return function(V,q,H,ee,ne){var re,X,ie,ce,fe,Ne,Pe,Ue,ze=V.indexOf("."),Ye=B,Ze=M;for(ze>=0&&(ce=j,j=0,V=V.replace(".",""),Ue=new ue(q),Ne=Ue.pow(V.length-ze),j=ce,Ue.c=G(x(h(Ne.c),Ne.e,"0"),10,H,U),Ue.e=Ue.c.length),Pe=G(V,q,H,ne?(re=se,U):(re=U,se)),ie=ce=Pe.length;Pe[--ce]==0;Pe.pop());if(!Pe[0])return re.charAt(0);if(ze<0?--ie:(Ne.c=Pe,Ne.e=ie,Ne.s=ee,Ne=I(Ne,Ue,Ye,Ze,H),Pe=Ne.c,fe=Ne.r,ie=Ne.e),X=ie+Ye+1,ze=Pe[X],ce=H/2,fe=fe||X<0||Pe[X+1]!=null,fe=Ze<4?(ze!=null||fe)&&(Ze==0||Ze==(Ne.s<0?3:2)):ze>ce||ze==ce&&(Ze==4||fe||Ze==6&&Pe[X-1]&1||Ze==(Ne.s<0?8:7)),X<1||!Pe[0])V=fe?x(re.charAt(1),-Ye,re.charAt(0)):re.charAt(0);else{if(Pe.length=X,fe)for(--H;++Pe[--X]>H;)Pe[X]=0,X||(++ie,Pe=[1].concat(Pe));for(ce=Pe.length;!Pe[--ce];);for(ze=0,V="";ze<=ce;V+=re.charAt(Pe[ze++]));V=x(V,ie,re.charAt(0))}return V}}(),I=function(){function U(q,H,ee){var ne,re,X,ie,ce=0,fe=q.length,Ne=H%d,Pe=H/d|0;for(q=q.slice();fe--;)X=q[fe]%d,ie=q[fe]/d|0,ne=Pe*X+ie*Ne,re=Ne*X+ne%d*d+ce,ce=(re/ee|0)+(ne/d|0)+Pe*ie,q[fe]=re%ee;return ce&&(q=[ce].concat(q)),q}function G(q,H,ee,ne){var re,X;if(ee!=ne)X=ee>ne?1:-1;else for(re=X=0;re<ee;re++)if(q[re]!=H[re]){X=q[re]>H[re]?1:-1;break}return X}function V(q,H,ee,ne){for(var re=0;ee--;)q[ee]-=re,re=q[ee]<H[ee]?1:0,q[ee]=re*ne+q[ee]-H[ee];for(;!q[0]&&q.length>1;q.splice(0,1));}return function(q,H,ee,ne,re){var X,ie,ce,fe,Ne,Pe,Ue,ze,Ye,Ze,nt,ct,tt,Pt,lt,ke,Je,ft=q.s==H.s?1:-1,rt=q.c,bt=H.c;if(!rt||!rt[0]||!bt||!bt[0])return new ue(!q.s||!H.s||(rt?bt&&rt[0]==bt[0]:!bt)?NaN:rt&&rt[0]==0||!bt?ft*0:ft/0);for(ze=new ue(ft),Ye=ze.c=[],ie=q.e-H.e,ft=ee+ie+1,re||(re=o,ie=m(q.e/c)-m(H.e/c),ft=ft/c|0),ce=0;bt[ce]==(rt[ce]||0);ce++);if(bt[ce]>(rt[ce]||0)&&ie--,ft<0)Ye.push(1),fe=!0;else{for(Pt=rt.length,ke=bt.length,ce=0,ft+=2,Ne=s(re/(bt[0]+1)),Ne>1&&(bt=U(bt,Ne,re),rt=U(rt,Ne,re),ke=bt.length,Pt=rt.length),tt=ke,Ze=rt.slice(0,ke),nt=Ze.length;nt<ke;Ze[nt++]=0);Je=bt.slice(),Je=[0].concat(Je),lt=bt[0],bt[1]>=re/2&&lt++;do{if(Ne=0,X=G(bt,Ze,ke,nt),X<0){if(ct=Ze[0],ke!=nt&&(ct=ct*re+(Ze[1]||0)),Ne=s(ct/lt),Ne>1)for(Ne>=re&&(Ne=re-1),Pe=U(bt,Ne,re),Ue=Pe.length,nt=Ze.length;G(Pe,Ze,Ue,nt)==1;)Ne--,V(Pe,ke<Ue?Je:bt,Ue,re),Ue=Pe.length,X=1;else Ne==0&&(X=Ne=1),Pe=bt.slice(),Ue=Pe.length;if(Ue<nt&&(Pe=[0].concat(Pe)),V(Ze,Pe,nt,re),nt=Ze.length,X==-1)for(;G(bt,Ze,ke,nt)<1;)Ne++,V(Ze,ke<nt?Je:bt,nt,re),nt=Ze.length}else X===0&&(Ne++,Ze=[0]);Ye[ce++]=Ne,Ze[0]?Ze[nt++]=rt[tt]||0:(Ze=[rt[tt]],nt=1)}while((tt++<Pt||Ze[0]!=null)&&ft--);fe=Ze[0]!=null,Ye[0]||Ye.splice(0,1)}if(re==o){for(ce=1,ft=Ye[0];ft>=10;ft/=10,ce++);Fe(ze,ee+(ze.e=ce+ie*c-1)+1,ne,fe)}else ze.e=ie,ze.r=+fe;return ze}}();function Ie(U,G,V,q){var H,ee,ne,re,X;if(V==null?V=M:g(V,0,8),!U.c)return U.toString();if(H=U.c[0],ne=U.e,G==null)X=h(U.c),X=q==1||q==2&&(ne<=D||ne>=L)?y(X,ne):x(X,ne,"0");else if(U=Fe(new ue(U),G,V),ee=U.e,X=h(U.c),re=X.length,q==1||q==2&&(G<=ee||ee<=D)){for(;re<G;X+="0",re++);X=y(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 U.s<0&&H?"-"+X:X}function we(U,G){for(var V,q,H=1,ee=new ue(U[0]);H<U.length;H++)q=new ue(U[H]),(!q.s||(V=A(ee,q))===G||V===0&&ee.s===G)&&(ee=q);return ee}function qe(U,G,V){for(var q=1,H=G.length;!G[--H];G.pop());for(H=G[0];H>=10;H/=10,q++);return(V=q+V*c-1)>W?U.c=U.e=null:V<Z?U.c=[U.e=0]:(U.e=V,U.c=G),U}w=function(){var U=/^(-?)0([xbo])(?=\w[\w.]*$)/i,G=/^([^.]+)\.$/,V=/^\.([^.]+)$/,q=/^-?(Infinity|NaN)$/,H=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(ee,ne,re,X){var ie,ce=re?ne:ne.replace(H,"");if(q.test(ce))ee.s=isNaN(ce)?null:ce<0?-1:1;else{if(!re&&(ce=ce.replace(U,function(fe,Ne,Pe){return ie=(Pe=Pe.toLowerCase())=="x"?16:Pe=="b"?2:8,!X||X==ie?Ne:fe}),X&&(ie=X,ce=ce.replace(G,"$1").replace(V,"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(U,G,V,q){var H,ee,ne,re,X,ie,ce,fe=U.c,Ne=l;if(fe){e:{for(H=1,re=fe[0];re>=10;re/=10,H++);if(ee=G-H,ee<0)ee+=c,ne=G,X=fe[ie=0],ce=s(X/Ne[H-ne-1]%10);else if(ie=n((ee+1)/c),ie>=fe.length)if(q){for(;fe.length<=ie;fe.push(0));X=ce=0,H=1,ee%=c,ne=ee-c+1}else break e;else{for(X=re=fe[ie],H=1;re>=10;re/=10,H++);ee%=c,ne=ee-c+H,ce=ne<0?0:s(X/Ne[H-ne-1]%10)}if(q=q||G<0||fe[ie+1]!=null||(ne<0?X:X%Ne[H-ne-1]),q=V<4?(ce||q)&&(V==0||V==(U.s<0?3:2)):ce>5||ce==5&&(V==4||q||V==6&&(ee>0?ne>0?X/Ne[H-ne]:0:fe[ie-1])%10&1||V==(U.s<0?8:7)),G<1||!fe[0])return fe.length=0,q?(G-=U.e+1,fe[0]=Ne[(c-G%c)%c],U.e=-G||0):fe[0]=U.e=0,U;if(ee==0?(fe.length=ie,re=1,ie--):(fe.length=ie+1,re=Ne[c-ee],fe[ie]=ne>0?s(X/Ne[H-ne]%Ne[ne])*re:0),q)for(;;)if(ie==0){for(ee=1,ne=fe[0];ne>=10;ne/=10,ee++);for(ne=fe[0]+=re,re=1;ne>=10;ne/=10,re++);ee!=re&&(U.e++,fe[0]==o&&(fe[0]=1));break}else{if(fe[ie]+=re,fe[ie]!=o)break;fe[ie--]=0,re=1}for(ee=fe.length;fe[--ee]===0;fe.pop());}U.e>W?U.c=U.e=null:U.e<Z&&(U.c=[U.e=0])}return U}function _e(U){var G,V=U.e;return V===null?U.toString():(G=h(U.c),G=V<=D||V>=L?y(G,V):x(G,V,"0"),U.s<0?"-"+G:G)}return N.absoluteValue=N.abs=function(){var U=new ue(this);return U.s<0&&(U.s=1),U},N.comparedTo=function(U,G){return A(this,new ue(U,G))},N.decimalPlaces=N.dp=function(U,G){var V,q,H,ee=this;if(U!=null)return g(U,0,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),U+ee.e+1,G);if(!(V=ee.c))return null;if(q=((H=V.length-1)-m(this.e/c))*c,H=V[H])for(;H%10==0;H/=10,q--);return q<0&&(q=0),q},N.dividedBy=N.div=function(U,G){return I(this,new ue(U,G),B,M)},N.dividedToIntegerBy=N.idiv=function(U,G){return I(this,new ue(U,G),0,1)},N.exponentiatedBy=N.pow=function(U,G){var V,q,H,ee,ne,re,X,ie,ce,fe=this;if(U=new ue(U),U.c&&!U.isInteger())throw Error(i+"Exponent not an integer: "+_e(U));if(G!=null&&(G=new ue(G)),re=U.e>14,!fe.c||!fe.c[0]||fe.c[0]==1&&!fe.e&&fe.c.length==1||!U.c||!U.c[0])return ce=new ue(Math.pow(+_e(fe),re?U.s*(2-b(U)):+_e(U))),G?ce.mod(G):ce;if(X=U.s<0,G){if(G.c?!G.c[0]:!G.s)return new ue(NaN);q=!X&&fe.isInteger()&&G.isInteger(),q&&(fe=fe.mod(G))}else{if(U.e>9&&(fe.e>0||fe.e<-1||(fe.e==0?fe.c[0]>1||re&&fe.c[1]>=24e7:fe.c[0]<8e13||re&&fe.c[0]<=9999975e7)))return ee=fe.s<0&&b(U)?-0:0,fe.e>-1&&(ee=1/ee),new ue(X?1/ee:ee);j&&(ee=n(j/c+2))}for(re?(V=new ue(.5),X&&(U.s=1),ie=b(U)):(H=Math.abs(+_e(U)),ie=H%2),ce=new ue(P);;){if(ie){if(ce=ce.times(fe),!ce.c)break;ee?ce.c.length>ee&&(ce.c.length=ee):q&&(ce=ce.mod(G))}if(H){if(H=s(H/2),H===0)break;ie=H%2}else if(U=U.times(V),Fe(U,U.e+1,1),U.e>14)ie=b(U);else{if(H=+_e(U),H===0)break;ie=H%2}fe=fe.times(fe),ee?fe.c&&fe.c.length>ee&&(fe.c.length=ee):q&&(fe=fe.mod(G))}return q?ce:(X&&(ce=P.div(ce)),G?ce.mod(G):ee?Fe(ce,j,M,ne):ce)},N.integerValue=function(U){var G=new ue(this);return U==null?U=M:g(U,0,8),Fe(G,G.e+1,U)},N.isEqualTo=N.eq=function(U,G){return A(this,new ue(U,G))===0},N.isFinite=function(){return!!this.c},N.isGreaterThan=N.gt=function(U,G){return A(this,new ue(U,G))>0},N.isGreaterThanOrEqualTo=N.gte=function(U,G){return(G=A(this,new ue(U,G)))===1||G===0},N.isInteger=function(){return!!this.c&&m(this.e/c)>this.c.length-2},N.isLessThan=N.lt=function(U,G){return A(this,new ue(U,G))<0},N.isLessThanOrEqualTo=N.lte=function(U,G){return(G=A(this,new ue(U,G)))===-1||G===0},N.isNaN=function(){return!this.s},N.isNegative=function(){return this.s<0},N.isPositive=function(){return this.s>0},N.isZero=function(){return!!this.c&&this.c[0]==0},N.minus=function(U,G){var V,q,H,ee,ne=this,re=ne.s;if(U=new ue(U,G),G=U.s,!re||!G)return new ue(NaN);if(re!=G)return U.s=-G,ne.plus(U);var X=ne.e/c,ie=U.e/c,ce=ne.c,fe=U.c;if(!X||!ie){if(!ce||!fe)return ce?(U.s=-G,U):new ue(fe?ne:NaN);if(!ce[0]||!fe[0])return fe[0]?(U.s=-G,U):new ue(ce[0]?ne:M==3?-0:0)}if(X=m(X),ie=m(ie),ce=ce.slice(),re=X-ie){for((ee=re<0)?(re=-re,H=ce):(ie=X,H=fe),H.reverse(),G=re;G--;H.push(0));H.reverse()}else for(q=(ee=(re=ce.length)<(G=fe.length))?re:G,re=G=0;G<q;G++)if(ce[G]!=fe[G]){ee=ce[G]<fe[G];break}if(ee&&(H=ce,ce=fe,fe=H,U.s=-U.s),G=(q=fe.length)-(V=ce.length),G>0)for(;G--;ce[V++]=0);for(G=o-1;q>re;){if(ce[--q]<fe[q]){for(V=q;V&&!ce[--V];ce[V]=G);--ce[V],ce[q]+=o}ce[q]-=fe[q]}for(;ce[0]==0;ce.splice(0,1),--ie);return ce[0]?qe(U,ce,ie):(U.s=M==3?-1:1,U.c=[U.e=0],U)},N.modulo=N.mod=function(U,G){var V,q,H=this;return U=new ue(U,G),!H.c||!U.s||U.c&&!U.c[0]?new ue(NaN):!U.c||H.c&&!H.c[0]?new ue(H):(K==9?(q=U.s,U.s=1,V=I(H,U,0,3),U.s=q,V.s*=q):V=I(H,U,0,K),U=H.minus(V.times(U)),!U.c[0]&&K==1&&(U.s=H.s),U)},N.multipliedBy=N.times=function(U,G){var V,q,H,ee,ne,re,X,ie,ce,fe,Ne,Pe,Ue,ze,Ye,Ze=this,nt=Ze.c,ct=(U=new ue(U,G)).c;if(!nt||!ct||!nt[0]||!ct[0])return!Ze.s||!U.s||nt&&!nt[0]&&!ct||ct&&!ct[0]&&!nt?U.c=U.e=U.s=null:(U.s*=Ze.s,!nt||!ct?U.c=U.e=null:(U.c=[0],U.e=0)),U;for(q=m(Ze.e/c)+m(U.e/c),U.s*=Ze.s,X=nt.length,fe=ct.length,X<fe&&(Ue=nt,nt=ct,ct=Ue,H=X,X=fe,fe=H),H=X+fe,Ue=[];H--;Ue.push(0));for(ze=o,Ye=d,H=fe;--H>=0;){for(V=0,Ne=ct[H]%Ye,Pe=ct[H]/Ye|0,ne=X,ee=H+ne;ee>H;)ie=nt[--ne]%Ye,ce=nt[ne]/Ye|0,re=Pe*ie+ce*Ne,ie=Ne*ie+re%Ye*Ye+Ue[ee]+V,V=(ie/ze|0)+(re/Ye|0)+Pe*ce,Ue[ee--]=ie%ze;Ue[ee]=V}return V?++q:Ue.splice(0,1),qe(U,Ue,q)},N.negated=function(){var U=new ue(this);return U.s=-U.s||null,U},N.plus=function(U,G){var V,q=this,H=q.s;if(U=new ue(U,G),G=U.s,!H||!G)return new ue(NaN);if(H!=G)return U.s=-G,q.minus(U);var ee=q.e/c,ne=U.e/c,re=q.c,X=U.c;if(!ee||!ne){if(!re||!X)return new ue(H/0);if(!re[0]||!X[0])return X[0]?U:new ue(re[0]?q:H*0)}if(ee=m(ee),ne=m(ne),re=re.slice(),H=ee-ne){for(H>0?(ne=ee,V=X):(H=-H,V=re),V.reverse();H--;V.push(0));V.reverse()}for(H=re.length,G=X.length,H-G<0&&(V=X,X=re,re=V,G=H),H=0;G;)H=(re[--G]=re[G]+X[G]+H)/o|0,re[G]=o===re[G]?0:re[G]%o;return H&&(re=[H].concat(re),++ne),qe(U,re,ne)},N.precision=N.sd=function(U,G){var V,q,H,ee=this;if(U!=null&&U!==!!U)return g(U,1,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),U,G);if(!(V=ee.c))return null;if(H=V.length-1,q=H*c+1,H=V[H]){for(;H%10==0;H/=10,q--);for(H=V[0];H>=10;H/=10,q++);}return U&&ee.e+1>q&&(q=ee.e+1),q},N.shiftedBy=function(U){return g(U,-u,u),this.times("1e"+U)},N.squareRoot=N.sqrt=function(){var U,G,V,q,H,ee=this,ne=ee.c,re=ee.s,X=ee.e,ie=B+4,ce=new ue("0.5");if(re!==1||!ne||!ne[0])return new ue(!re||re<0&&(!ne||ne[0])?NaN:ne?ee:1/0);if(re=Math.sqrt(+_e(ee)),re==0||re==1/0?(G=h(ne),(G.length+X)%2==0&&(G+="0"),re=Math.sqrt(+G),X=m((X+1)/2)-(X<0||X%2),re==1/0?G="5e"+X:(G=re.toExponential(),G=G.slice(0,G.indexOf("e")+1)+X),V=new ue(G)):V=new ue(re+""),V.c[0]){for(X=V.e,re=X+ie,re<3&&(re=0);;)if(H=V,V=ce.times(H.plus(I(ee,H,ie,1))),h(H.c).slice(0,re)===(G=h(V.c)).slice(0,re))if(V.e<X&&--re,G=G.slice(re-3,re+1),G=="9999"||!q&&G=="4999"){if(!q&&(Fe(H,H.e+B+2,0),H.times(H).eq(ee))){V=H;break}ie+=4,re+=4,q=1}else{(!+G||!+G.slice(1)&&G.charAt(0)=="5")&&(Fe(V,V.e+B+2,1),U=!V.times(V).eq(ee));break}}return Fe(V,V.e+B+1,M,U)},N.toExponential=function(U,G){return U!=null&&(g(U,0,f),U++),Ie(this,U,G,1)},N.toFixed=function(U,G){return U!=null&&(g(U,0,f),U=U+this.e+1),Ie(this,U,G)},N.toFormat=function(U,G,V){var q,H=this;if(V==null)U!=null&&G&&typeof G=="object"?(V=G,G=null):U&&typeof U=="object"?(V=U,U=G=null):V=J;else if(typeof V!="object")throw Error(i+"Argument not an object: "+V);if(q=H.toFixed(U,G),H.c){var ee,ne=q.split("."),re=+V.groupSize,X=+V.secondaryGroupSize,ie=V.groupSeparator||"",ce=ne[0],fe=ne[1],Ne=H.s<0,Pe=Ne?ce.slice(1):ce,Ue=Pe.length;if(X&&(ee=re,re=X,X=ee,Ue-=ee),re>0&&Ue>0){for(ee=Ue%re||re,ce=Pe.substr(0,ee);ee<Ue;ee+=re)ce+=ie+Pe.substr(ee,re);X>0&&(ce+=ie+Pe.slice(ee)),Ne&&(ce="-"+ce)}q=fe?ce+(V.decimalSeparator||"")+((X=+V.fractionGroupSize)?fe.replace(new RegExp("\\d{"+X+"}\\B","g"),"$&"+(V.fractionGroupSeparator||"")):fe):ce}return(V.prefix||"")+q+(V.suffix||"")},N.toFraction=function(U){var G,V,q,H,ee,ne,re,X,ie,ce,fe,Ne,Pe=this,Ue=Pe.c;if(U!=null&&(re=new ue(U),!re.isInteger()&&(re.c||re.s!==1)||re.lt(P)))throw Error(i+"Argument "+(re.isInteger()?"out of range: ":"not an integer: ")+_e(re));if(!Ue)return new ue(Pe);for(G=new ue(P),ie=V=new ue(P),q=X=new ue(P),Ne=h(Ue),ee=G.e=Ne.length-Pe.e-1,G.c[0]=l[(ne=ee%c)<0?c+ne:ne],U=!U||re.comparedTo(G)>0?ee>0?G:ie:re,ne=W,W=1/0,re=new ue(Ne),X.c[0]=0;ce=I(re,G,0,1),H=V.plus(ce.times(q)),H.comparedTo(U)!=1;)V=q,q=H,ie=X.plus(ce.times(H=ie)),X=H,G=re.minus(ce.times(H=G)),re=H;return H=I(U.minus(V),q,0,1),X=X.plus(H.times(ie)),V=V.plus(H.times(q)),X.s=ie.s=Pe.s,ee=ee*2,fe=I(ie,q,ee,M).minus(Pe).abs().comparedTo(I(X,V,ee,M).minus(Pe).abs())<1?[ie,q]:[X,V],W=ne,fe},N.toNumber=function(){return+_e(this)},N.toPrecision=function(U,G){return U!=null&&g(U,1,f),Ie(this,U,G,2)},N.toString=function(U){var G,V=this,q=V.s,H=V.e;return H===null?q?(G="Infinity",q<0&&(G="-"+G)):G="NaN":(U==null?G=H<=D||H>=L?y(h(V.c),H):x(h(V.c),H,"0"):U===10&&oe?(V=Fe(new ue(V),B+H+1,M),G=x(h(V.c),V.e,"0")):(g(U,2,se.length,"Base"),G=R(x(h(V.c),H,"0"),10,U,q,!0)),q<0&&V.c[0]&&(G="-"+G)),G},N.valueOf=N.toJSON=function(){return _e(this)},N._isBigNumber=!0,v!=null&&ue.set(v),ue}function m(v){var I=v|0;return v>0||v===I?I:I-1}function h(v){for(var I,R,w=1,N=v.length,P=v[0]+"";w<N;){for(I=v[w++]+"",R=c-I.length;R--;I="0"+I);P+=I}for(N=P.length;P.charCodeAt(--N)===48;);return P.slice(0,N+1||1)}function A(v,I){var R,w,N=v.c,P=I.c,B=v.s,M=I.s,D=v.e,L=I.e;if(!B||!M)return null;if(R=N&&!N[0],w=P&&!P[0],R||w)return R?w?0:-M:B;if(B!=M)return B;if(R=B<0,w=D==L,!N||!P)return w?0:!N^R?1:-1;if(!w)return D>L^R?1:-1;for(M=(D=N.length)<(L=P.length)?D:L,B=0;B<M;B++)if(N[B]!=P[B])return N[B]>P[B]^R?1:-1;return D==L?0:D>L^R?1:-1}function g(v,I,R,w){if(v<I||v>R||v!==s(v))throw Error(i+(w||"Argument")+(typeof v=="number"?v<I||v>R?" out of range: ":" not an integer: ":" not a primitive number: ")+String(v))}function b(v){var I=v.c.length-1;return m(v.e/c)==I&&v.c[I]%2!=0}function y(v,I){return(v.length>1?v.charAt(0)+"."+v.slice(1):v)+(I<0?"e":"e+")+I}function x(v,I,R){var w,N;if(I<0){for(N=R+".";++I;N+=R);v=N+v}else if(w=v.length,++I>w){for(N=R,I-=w;--I;N+=R);v+=N}else I<w&&(v=v.slice(0,I)+"."+v.slice(I));return v}e=p(),e.default=e.BigNumber=e,typeof define=="function"&&define.amd?define(function(){return e}):typeof Y3<"u"&&Y3.exports?Y3.exports=e:(t||(t=typeof self<"u"&&self?self:window),t.BigNumber=e)})(kMe)});var MMe=E((c9r,LMe)=>{var DMe=RK(),BMe=LMe.exports;(function(){"use strict";function t(u){return u<10?"0"+u:u}var e=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,r=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,n,s,i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},a;function o(u){return r.lastIndex=0,r.test(u)?'"'+u.replace(r,function(l){var d=i[l];return typeof d=="string"?d:"\\u"+("0000"+l.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+u+'"'}function c(u,l){var d,f,p,m,h=n,A,g=l[u],b=g!=null&&(g instanceof DMe||DMe.isBigNumber(g));switch(g&&typeof g=="object"&&typeof g.toJSON=="function"&&(g=g.toJSON(u)),typeof a=="function"&&(g=a.call(l,u,g)),typeof g){case"string":return b?g:o(g);case"number":return isFinite(g)?String(g):"null";case"boolean":case"null":case"bigint":return String(g);case"object":if(!g)return"null";if(n+=s,A=[],Object.prototype.toString.apply(g)==="[object Array]"){for(m=g.length,d=0;d<m;d+=1)A[d]=c(d,g)||"null";return p=A.length===0?"[]":n?`[
`+n+A.join(`,
`+n)+`
`+h+"]":"["+A.join(",")+"]",n=h,p}if(a&&typeof a=="object")for(m=a.length,d=0;d<m;d+=1)typeof a[d]=="string"&&(f=a[d],p=c(f,g),p&&A.push(o(f)+(n?": ":":")+p));else Object.keys(g).forEach(function(y){var x=c(y,g);x&&A.push(o(y)+(n?": ":":")+x)});return p=A.length===0?"{}":n?`{
`+n+A.join(`,
`+n)+`
`+h+"}":"{"+A.join(",")+"}",n=h,p}}typeof BMe.stringify!="function"&&(BMe.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 $Me=E((u9r,WMe)=>{var J3=null,rnr=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,nnr=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/,snr=function(t){"use strict";var e={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(t!=null){if(t.strict===!0&&(e.strict=!0),t.storeAsString===!0&&(e.storeAsString=!0),e.alwaysParseAsBig=t.alwaysParseAsBig===!0?t.alwaysParseAsBig:!1,e.useNativeBigInt=t.useNativeBigInt===!0?t.useNativeBigInt:!1,typeof t.constructorAction<"u")if(t.constructorAction==="error"||t.constructorAction==="ignore"||t.constructorAction==="preserve")e.constructorAction=t.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${t.constructorAction}`);if(typeof t.protoAction<"u")if(t.protoAction==="error"||t.protoAction==="ignore"||t.protoAction==="preserve")e.protoAction=t.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${t.protoAction}`)}var r,n,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
`,r:"\r",t:" "},i,a=function(h){throw{name:"SyntaxError",message:h,at:r,text:i}},o=function(h){return h&&h!==n&&a("Expected '"+h+"' instead of '"+n+"'"),n=i.charAt(r),r+=1,n},c=function(){var h,A="";for(n==="-"&&(A="-",o("-"));n>="0"&&n<="9";)A+=n,o();if(n===".")for(A+=".";o()&&n>="0"&&n<="9";)A+=n;if(n==="e"||n==="E")for(A+=n,o(),(n==="-"||n==="+")&&(A+=n,o());n>="0"&&n<="9";)A+=n,o();if(h=+A,!isFinite(h))a("Bad number");else return J3==null&&(J3=RK()),A.length>15?e.storeAsString?A:e.useNativeBigInt?BigInt(A):new J3(A):e.alwaysParseAsBig?e.useNativeBigInt?BigInt(h):new J3(h):h},u=function(){var h,A,g="",b;if(n==='"')for(var y=r;o();){if(n==='"')return r-1>y&&(g+=i.substring(y,r-1)),o(),g;if(n==="\\"){if(r-1>y&&(g+=i.substring(y,r-1)),o(),n==="u"){for(b=0,A=0;A<4&&(h=parseInt(o(),16),!!isFinite(h));A+=1)b=b*16+h;g+=String.fromCharCode(b)}else if(typeof s[n]=="string")g+=s[n];else break;y=r}}a("Bad string")},l=function(){for(;n&&n<=" ";)o()},d=function(){switch(n){case"t":return o("t"),o("r"),o("u"),o("e"),!0;case"f":return o("f"),o("a"),o("l"),o("s"),o("e"),!1;case"n":return o("n"),o("u"),o("l"),o("l"),null}a("Unexpected '"+n+"'")},f,p=function(){var h=[];if(n==="["){if(o("["),l(),n==="]")return o("]"),h;for(;n;){if(h.push(f()),l(),n==="]")return o("]"),h;o(","),l()}}a("Bad array")},m=function(){var h,A=Object.create(null);if(n==="{"){if(o("{"),l(),n==="}")return o("}"),A;for(;n;){if(h=u(),l(),o(":"),e.strict===!0&&Object.hasOwnProperty.call(A,h)&&a('Duplicate key "'+h+'"'),rnr.test(h)===!0?e.protoAction==="error"?a("Object contains forbidden prototype property"):e.protoAction==="ignore"?f():A[h]=f():nnr.test(h)===!0?e.constructorAction==="error"?a("Object contains forbidden constructor property"):e.constructorAction==="ignore"?f():A[h]=f():A[h]=f(),l(),n==="}")return o("}"),A;o(","),l()}}a("Bad object")};return f=function(){switch(l(),n){case"{":return m();case"[":return p();case'"':return u();case"-":return c();default:return n>="0"&&n<="9"?c():d()}},function(h,A){var g;return i=h+"",r=0,n=" ",g=f(),l(),n&&a("Syntax error"),typeof A=="function"?function b(y,x){var v,I,R=y[x];return R&&typeof R=="object"&&Object.keys(R).forEach(function(w){I=b(R,w),I!==void 0?R[w]=I:delete R[w]}),A.call(y,x,R)}({"":g},""):g}};WMe.exports=snr});var qMe=E((l9r,X3)=>{var FMe=MMe().stringify,UMe=$Me();X3.exports=function(t){return{parse:UMe(t),stringify:FMe}};X3.exports.parse=UMe();X3.exports.stringify=FMe});function _5e(t){let e=t.match(/^S(\d+)$/i);if(e)return`S${String(parseInt(e[1])).padStart(2,"0")}`;let r=t.match(/^E(\d+)$/i);return r?`E${String(parseInt(r[1])).padStart(2,"0")}`:t}function S5e(t){return!t||typeof t!="string"?[]:t.split(",").map(e=>{let r=e.trim(),n=r.lastIndexOf(":");if(n===-1)return null;let s=r.substring(0,n),i=r.substring(n+1);if(!s||i==="")return null;let a=parseFloat(i);if(!Number.isFinite(a))return null;let o=!1,c=s.trim();c.endsWith("%")&&(o=!0,c=c.slice(0,-1).trim());let u=c.lastIndexOf("@"),l,d,f;if(u!==-1){l=c.substring(0,u);let g=c.substring(u+1).trim().toLowerCase();if(g==="all"||g==="*")d=null,f=!0;else if(d=g.split("&").map(b=>b.trim()).filter(Boolean),f=!1,d.length===0)return null}else l=c,d=null,f=!1;let p=l.trim().split("/"),m=p[0]||null;if(!m)return null;let h=p[1]?_5e(p[1]):null,A=p[2]?_5e(p[2]):null;return{anime:m,season:h,episode:A,sources:d,all:f,offset:a,usePercent:o}}).filter(Boolean)}function bV(t,{anime:e,season:r,episode:n,source:s}){if(!Array.isArray(t)||t.length===0||!e)return null;let i=new Set;if(s)for(let o of s.split("&")){let c=o.trim().toLowerCase();c&&(i.add(c),E5e[c]&&i.add(E5e[c]))}let a=[{matchSeason:!0,matchEpisode:!0},{matchSeason:!0,matchEpisode:!1},{matchSeason:!1,matchEpisode:!1}];for(let o of a){let c=null,u=null,l=null;for(let d of t)if(d.anime===e){if(o.matchEpisode){if(!d.season||!d.episode||d.season!==r||d.episode!==n)continue}else if(o.matchSeason){if(!d.season||d.episode||d.season!==r)continue}else if(d.season||d.episode)continue;d.sources?i.size>0&&d.sources.some(f=>i.has(f))&&(c=d):d.all?u=d:l=d}if(c!==null)return c;if(u!==null)return u;if(l!==null)return l}return null}function EV(t,e,r={}){let n=Number(e);if(!n||!Array.isArray(t)||t.length===0)return t;let s=r?.usePercent===!0,i=Number(r?.videoDuration||0),a=m=>{if(!m||typeof m!="object")return null;if(typeof m.p=="string"){let h=m.p.split(","),A=parseFloat(h[0]);if(Number.isFinite(A))return A}if(m.t!==void 0&&m.t!==null){let h=Number(m.t);if(Number.isFinite(h))return h}if(m.progress!==void 0&&m.progress!==null){let h=Number(m.progress);if(Number.isFinite(h))return h/1e3}if(m.timepoint!==void 0&&m.timepoint!==null){let h=Number(m.timepoint);if(Number.isFinite(h))return h}return null},o=i>0?i:a(t[t.length-1])||0,c=s&&Number.isFinite(o)&&o>0?(o+n)/o:null;if(s&&c===null)return t;let u=n*1e3,l=m=>Math.max(0,m),d=(m,h=2)=>Number(m.toFixed(h)),f=m=>{let h=l(c!==null?m*c:m+n);return c!==null?d(h,2):h},p=m=>{let h=l(c!==null?m*c:m+u);return c!==null?Math.round(h):h};return t.map(m=>{if(!m||typeof m!="object")return m;let h={...m};if(typeof h.p=="string"){let A=h.p.split(","),g=parseFloat(A[0]);Number.isFinite(g)&&(A[0]=f(g).toFixed(2),h.p=A.join(","))}if(h.t!==void 0&&h.t!==null){let A=Number(h.t);Number.isFinite(A)&&(h.t=f(A))}if(h.progress!==void 0&&h.progress!==null){let A=Number(h.progress);Number.isFinite(A)&&(h.progress=p(A))}if(h.timepoint!==void 0&&h.timepoint!==null){let A=Number(h.timepoint);Number.isFinite(A)&&(h.timepoint=f(A))}return h})}var E5e,_V=lr(()=>{E5e={tencent:"qq",iqiyi:"qiyi",bilibili:"bilibili1"}});var nf,v5e=lr(()=>{_V();nf=class{static env;static originalEnvVars=new Map;static accessedEnvVars=new Map;static VOD_ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","sohu","leshi","xigua","maiduidui","aiyifan"];static ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static ALLOWED_SOURCES=["360","vod","tmdb","douban","tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static MERGE_ALLOWED_SOURCES=["tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko"];static DEFAULT_AI_MATCH_PROMPT=`\u4F60\u662F\u4E00\u4E2A\u4E13\u4E1A\u7684\u5F71\u89C6\u5339\u914D\u4E13\u5BB6\uFF0C\u4F60\u7684\u7684\u4EFB\u52A1\u662F\u6839\u636E\u7528\u6237\u63D0\u4F9B\u7684 JSON \u6570\u636E\uFF0C\u4ECE\u5019\u9009\u52A8\u6F2B\u5217\u8868\u4E2D\u5339\u914D\u6700\u7B26\u5408\u6761\u4EF6\u7684\u52A8\u6F2B\u53CA\u96C6\u6570\u3002
\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(A=>A.trim());else if(a.includes("\xD7"))[c,u]=a.split("\xD7").map(A=>A.trim()),l="block";else continue;if(!c||!u)continue;let d=A=>{let g=A.match(/^(.+?)(?:\/S(\d+))?@([a-zA-Z0-9_&]+)$/i);return g?{title:g[1].trim(),season:g[2]?parseInt(g[2],10):null,source:g[3].toLowerCase()}:null},f=d(c),p=d(u);if(!f||!p)continue;let m=[],h=!1;if(l==="merge"&&o.trim()){h=!0;let A=o.split(",");for(let g of A){if(!g.trim())continue;let[b,y]=g.split(">").map(R=>R.trim());if(!b||!y)continue;let x=R=>{let w=R.match(/^E(\d+)(?:~E(\d+))?$/i);return w?{start:parseInt(w[1],10),end:w[2]?parseInt(w[2],10):parseInt(w[1],10)}:null},v=x(b),I=x(y);v&&I&&m.push({sec:v,prim:I})}}r.push({action:l,secondary:f,primary:p,routes:m,hasRoutes:h})}catch(i){console.warn(`[Envs] \u89E3\u6790\u5408\u5E76\u6620\u5C04\u8868\u89C4\u5219\u5931\u8D25: ${s}`,i)}return this.accessedEnvVars.set("CUSTOM_MERGE_RULES",e),r}static resolveEpisodeTitleFilter(){let e="(\u7279\u522B|\u60CA\u559C|\u7EB3\u51C9)?\u4F01\u5212(?!(\u4E66|\u6848|\u90E8))|\u5408\u4F19\u4EBA\u624B\u8BB0|\u8D85\u524D(\u8425\u4E1A|vlog)?|\u901F\u89C8|vlog|(?<!(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)?|\u76F4\u64AD(?!(.*(\u4E8B\u4EF6|\u6740\u4EBA|\u81EA\u6740|\u8C0B\u6740|\u72AF\u7F6A|\u73B0\u573A|\u6E38\u620F|\u6311\u6218)))|\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 p=f.split(".").map(A=>Number(A)),m=(p[0]<<8|p[1]).toString(16),h=(p[2]<<8|p[3]).toString(16);return[...d.slice(0,-1),m,h]},c=o(i);if(!c||(a=o(a),!a)||c.length+a.length>8)return!1;let l=d=>/^[0-9a-fA-F]{1,4}$/.test(d);return!(!c.every(l)||!a.every(l))}static resolveAnimeTitleFilter(){let e=this.get("ANIME_TITLE_FILTER","","string",!1).trim();if(!e)return this.accessedEnvVars.set("ANIME_TITLE_FILTER",""),null;this.accessedEnvVars.set("ANIME_TITLE_FILTER",e);try{return new RegExp(`^(.*?)(?:${e})(.*?)$`,"i")}catch{return console.warn("Invalid ANIME_TITLE_FILTER format, returning null."),null}}static getOriginalEnvVars(){return this.originalEnvVars}static resolveTitleMappingTable(){let e=this.get("TITLE_MAPPING_TABLE","","string").trim(),r=new Map;if(!e)return r;let n=e.split(";");for(let s of n)if(s.includes("->")){let[i,a]=s.split("->").map(o=>o.trim());i&&a&&r.set(i,a)}return r}static getAccessedEnvVars(){return this.accessedEnvVars}static load(e={}){this.env=e;let r={TOKEN:{category:"api",type:"text",description:"API\u8BBF\u95EE\u4EE4\u724C"},ADMIN_TOKEN:{category:"api",type:"text",description:"\u7CFB\u7EDF\u7BA1\u7406\u8BBF\u95EE\u4EE4\u724C"},RATE_LIMIT_MAX_REQUESTS:{category:"api",type:"number",description:"\u9650\u6D41\u914D\u7F6E\uFF1A1\u5206\u949F\u5185\u6700\u5927\u8BF7\u6C42\u6B21\u6570\uFF0C0\u8868\u793A\u4E0D\u9650\u6D41\uFF0C\u9ED8\u8BA43",min:0,max:50},SOURCE_ORDER:{category:"source",type:"multi-select",options:this.ALLOWED_SOURCES,description:"\u6E90\u6392\u5E8F\u914D\u7F6E\uFF0C\u9ED8\u8BA4douban,360,renren,hanjutv"},MERGE_SOURCE_PAIRS:{category:"source",type:"multi-select",options:this.MERGE_ALLOWED_SOURCES,description:`\u6E90\u5408\u5E76\u914D\u7F6E\uFF0C\u914D\u7F6E\u540E\u5C06\u5BF9\u5E94\u6E90\u5408\u5E76\u540C\u65F6\u4E00\u8D77\u83B7\u53D6\u5F39\u5E55\u8FD4\u56DE\uFF0C\u5141\u8BB8\u591A\u7EC4\uFF0C\u5141\u8BB8\u591A\u6E90\uFF0C\u5141\u8BB8\u586B\u5355\u6E90\u8868\u793A\u4FDD\u7559\u539F\u7ED3\u679C\uFF0C\u4E00\u7EC4\u4E2D\u7B2C\u4E00\u4E2A\u4E3A\u4E3B\u6E90\u5176\u4F59\u4E3A\u526F\u6E90\uFF0C\u526F\u6E90\u5F80\u4E3B\u6E90\u5408\u5E76\uFF0C\u4E3B\u6E90\u5982\u679C\u6CA1\u6709\u7ED3\u679C\u4F1A\u8F6E\u66FF\u4E0B\u4E00\u4E2A\u4F5C\u4E3A\u4E3B\u6E90\u3002
\u683C\u5F0F\uFF1A\u6E901&\u6E902&\u6E903 \uFF0C\u591A\u7EC4\u7528\u9017\u53F7\u5206\u9694\u3002
\u793A\u4F8B\uFF1Adandan&animeko&bahamut,bilibili&animeko,dandan`},CUSTOM_MERGE_RULES:{category:"source",type:"text",sources:this.MERGE_ALLOWED_SOURCES,description:`\u5408\u5E76\u6620\u5C04\u8868\uFF0C\u7528\u4E8E\u81EA\u5B9A\u4E49\u6E90\u5408\u5E76\u884C\u4E3A\u3002
\u683C\u5F0F1(\u5408\u5E76)\uFF1A\u526F\u6E90\u5267\u540D/S\u5B63\u6570@\u6765\u6E90 -> \u4E3B\u6E90\u5267\u540D/S\u5B63\u6570@\u6765\u6E90 | E\u526F\u6E90\u96C6\u6570>E\u4E3B\u6E90\u96C6\u6570
\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"'},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(),blockedWords:this.get("BLOCKED_WORDS","","string"),groupMinute:Math.min(this.get("GROUP_MINUTE",1,"number"),30),danmuLimit:this.get("DANMU_LIMIT",0,"number"),proxyUrl:this.get("PROXY_URL","","string",!0),danmuSimplifiedTraditional:this.get("DANMU_SIMPLIFIED_TRADITIONAL","default","string"),danmuPushUrl:this.get("DANMU_PUSH_URL","","string"),likeSwitch:this.get("LIKE_SWITCH",!0,"boolean"),danmuOffset:this.get("DANMU_OFFSET","","string"),danmuOffsetRules:S5e(this.get("DANMU_OFFSET","","string")),tmdbApiKey:this.get("TMDB_API_KEY","","string",!0),redisUrl:this.get("UPSTASH_REDIS_REST_URL","","string",!0),redisToken:this.get("UPSTASH_REDIS_REST_TOKEN","","string",!0),localRedisUrl:this.get("LOCAL_REDIS_URL","","string",!0),rateLimitMaxRequests:this.get("RATE_LIMIT_MAX_REQUESTS",3,"number"),enableAnimeEpisodeFilter:this.get("ENABLE_ANIME_EPISODE_FILTER",!1,"boolean"),logLevel:this.get("LOG_LEVEL","info","string"),searchCacheMinutes:this.get("SEARCH_CACHE_MINUTES",3,"number"),commentCacheMinutes:this.get("COMMENT_CACHE_MINUTES",3,"number"),convertTopBottomToScroll:this.get("CONVERT_TOP_BOTTOM_TO_SCROLL",!1,"boolean"),convertColor:this.get("CONVERT_COLOR","default","string"),colorPool:this.get("COLOR_POOL","16777215,16777215,16777215,16777215,16777215,16777215,16777215,16777215,16744319,16752762,16774799,9498256,8388564,8900346,14204888,16758465","string"),danmuOutputFormat:this.get("DANMU_OUTPUT_FORMAT","json","string"),strictTitleMatch:this.get("STRICT_TITLE_MATCH",!1,"boolean"),titleToChinese:this.get("TITLE_TO_CHINESE",!1,"boolean"),animeTitleSimplified:this.get("ANIME_TITLE_SIMPLIFIED",!1,"boolean"),titleMappingTable:this.resolveTitleMappingTable(),ipBlacklist:this.resolveIpBlacklist(),aiBaseUrl:this.get("AI_BASE_URL","https://api.openai.com/v1","string"),aiModel:this.get("AI_MODEL","gpt-4o","string"),aiApiKey:this.get("AI_API_KEY","","string",!0),aiMatchPrompt:this.get("AI_MATCH_PROMPT",this.DEFAULT_AI_MATCH_PROMPT,"string"),useBangumiData:this.get("USE_BANGUMI_DATA",!1,"boolean"),rememberLastSelect:this.get("REMEMBER_LAST_SELECT",!0,"boolean"),MAX_LAST_SELECT_MAP:this.get("MAX_LAST_SELECT_MAP",100,"number"),MAX_ANIMES:this.get("MAX_ANIMES",100,"number"),bangumiDataCacheDays:this.get("BANGUMI_DATA_CACHE_DAYS",7,"number"),deployPlatformAccount:this.get("DEPLOY_PLATFROM_ACCOUNT","","string",!0),deployPlatformProject:this.get("DEPLOY_PLATFROM_PROJECT","","string",!0),deployPlatformToken:this.get("DEPLOY_PLATFROM_TOKEN","","string",!0),NODE_TLS_REJECT_UNAUTHORIZED:this.get("NODE_TLS_REJECT_UNAUTHORIZED",1,"number"),envVarConfig:r}}}});var zh,O,Ot=lr(()=>{v5e();zh={env:{},envs:{},originalEnvVars:{},accessedEnvVars:{},VERSION:"1.19.13",MAX_LOGS:1e3,MAX_RECORDS:100,animes:[],episodeIds:[],episodeNum:10001,logBuffer:[],requestHistory:new Map,localCacheValid:!1,localCacheInitialized:!1,redisValid:!1,localRedisValid:!1,aiValid:!1,redisCacheInitialized:!1,lastSelectMap:new Map,reqRecords:[],todayReqNum:0,lastHashes:{animes:null,episodeIds:null,episodeNum:null,lastSelectMap:null,reqRecords:null,todayReqNum:null},searchCache:new Map,commentCache:new Map,deployPlatform:"",currentToken:"",init(t={}){return this.env=t,this.envs=nf.load(this.env),this.originalEnvVars=Object.fromEntries(nf.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(nf.getAccessedEnvVars()),this.getConfig()},reInit(){return this.envs=nf.load(this.env),this.originalEnvVars=Object.fromEntries(nf.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(nf.getAccessedEnvVars()),this.getConfig()},makeProxyUrl(t){let e=this.envs.proxyUrl||"";if(!e||!t)return t;let r=e.split(",").map(c=>c.trim()).filter(c=>c),n=null,s=null,i=null,a;try{a=new URL(t)}catch{return t}let o=a.hostname;for(let c of r)if(c.startsWith("bahamut@")&&o.includes("gamer.com.tw")){s=c.substring(8);break}else if(c.startsWith("tmdb@")&&o.includes("tmdb")){s=c.substring(5);break}else if(c.startsWith("bilibili@")&&o.includes("bilibili")){s=c.substring(9);break}else if(c.startsWith("animeko@")&&(o.includes("animeko")||o.includes("bgm.tv"))){s=c.substring(8);break}else c.startsWith("@")&&!i?i=c.substring(1):!c.includes("@")&&!n&&(n=c);if(s)try{let c=new URL(s);return a.protocol=c.protocol,a.host=c.host,a.port=c.port,c.pathname!=="/"&&(a.pathname=c.pathname.replace(/\/$/,"")+a.pathname),a.toString()}catch{return t}return i?`${i.replace(/\/$/,"")}/${t}`:n?`http://127.0.0.1:5321/proxy?url=${encodeURIComponent(t)}`:t},getConfig(){if(this._configProxy)return this._configProxy;let t=this;return this._configProxy=new Proxy({},{get(e,r){return r in t.envs?t.envs[r]:r==="version"?t.VERSION:r==="maxLogs"?t.MAX_LOGS:r==="maxAnimes"?t.envs.MAX_ANIMES:r==="maxRecords"?t.MAX_RECORDS:r==="maxLastSelectMap"?t.MAX_LAST_SELECT_MAP:r==="makeProxyUrl"?t.makeProxyUrl.bind(t):t[r]},set(e,r,n){return r in t.envs?t.envs[r]=n:t[r]=n,!0}}),this._configProxy}},O=new Proxy({},{get(t,e){return zh.getConfig()[e]},set(t,e,r){return zh.getConfig()[e]=r,!0},has(t,e){return e in zh.getConfig()},ownKeys(t){return Reflect.ownKeys(zh.getConfig())},getOwnPropertyDescriptor(t,e){return Object.getOwnPropertyDescriptor(zh.getConfig(),e)}})});function _(t,...e){let r={error:0,warn:1,info:2},n=r[O.logLevel]!==void 0?r[O.logLevel]:1;if((r[t]||0)>n)return;let s=e.map(u=>{if(typeof u=="object"){let l=JSON.stringify(u);return I5e(l)}else return typeof u=="string"?I5e(u):u}),i=s.map(u=>typeof u=="object"?JSON.stringify(u):u).join(" "),a=new Date,c=new Date(a.getTime()+8*60*60*1e3).toISOString().replace("Z","+08:00");O.logBuffer.push({timestamp:c,level:t,message:i}),O.logBuffer.length>O.MAX_LOGS&&O.logBuffer.shift(),console[t](...s)}function I5e(t){let e=t;if(O.originalEnvVars&&O.accessedEnvVars)for(let[r,n]of Object.entries(O.originalEnvVars)){let s=O.accessedEnvVars[r];if(n&&typeof n=="string"&&n.length>0&&s&&typeof s=="string"&&s.match(/^\*+$/)&&s.length===n.length){let i="*".repeat(n.length),a=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g");e=e.replace(a,i)}}return e}function C5e(t){try{let e=JSON.parse(t);return JSON.stringify(e,null,2).replace(/\n/g,`
`)}catch{return t}}var _t=lr(()=>{Ot()});function zsr(t){if(!/^data:/i.test(t))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');t=t.replace(/\r?\n/g,"");let e=t.indexOf(",");if(e===-1||e<=4)throw new TypeError("malformed data: URI");let r=t.substring(5,e).split(";"),n="",s=!1,i=r[0]||"text/plain",a=i;for(let l=1;l<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 T5e,w5e=lr(()=>{T5e=zsr});var N5e=E((hB,R5e)=>{(function(t,e){typeof hB=="object"&&typeof R5e<"u"?e(hB):typeof define=="function"&&define.amd?define(["exports"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t.WebStreamsPolyfill={}))})(hB,function(t){"use strict";function e(){}function r(S){return typeof S=="object"&&S!==null||typeof S=="function"}let n=e;function s(S,T){try{Object.defineProperty(S,"name",{value:T,configurable:!0})}catch{}}let i=Promise,a=Promise.prototype.then,o=Promise.reject.bind(i);function c(S){return new i(S)}function u(S){return c(T=>T(S))}function l(S){return o(S)}function d(S,T,k){return a.call(S,T,k)}function f(S,T,k){d(d(S,T,k),void 0,n)}function p(S,T){f(S,T)}function m(S,T){f(S,void 0,T)}function h(S,T,k){return d(S,T,k)}function A(S){d(S,void 0,n)}let g=S=>{if(typeof queueMicrotask=="function")g=queueMicrotask;else{let T=u(void 0);g=k=>d(T,k)}return g(S)};function b(S,T,k){if(typeof S!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(S,T,k)}function y(S,T,k){try{return u(b(S,T,k))}catch(z){return l(z)}}let x=16384;class v{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(T){let k=this._back,z=k;k._elements.length===x-1&&(z={_elements:[],_next:void 0}),k._elements.push(T),z!==k&&(this._back=z,k._next=z),++this._size}shift(){let T=this._front,k=T,z=this._cursor,ae=z+1,pe=T._elements,xe=pe[z];return ae===x&&(k=T._next,ae=0),--this._size,this._cursor=ae,T!==k&&(this._front=k),pe[z]=void 0,xe}forEach(T){let k=this._cursor,z=this._front,ae=z._elements;for(;(k!==ae.length||z._next!==void 0)&&!(k===ae.length&&(z=z._next,ae=z._elements,k=0,ae.length===0));)T(ae[k]),++k}peek(){let T=this._front,k=this._cursor;return T._elements[k]}}let I=Symbol("[[AbortSteps]]"),R=Symbol("[[ErrorSteps]]"),w=Symbol("[[CancelSteps]]"),N=Symbol("[[PullSteps]]"),P=Symbol("[[ReleaseSteps]]");function B(S,T){S._ownerReadableStream=T,T._reader=S,T._state==="readable"?Z(S):T._state==="closed"?F(S):W(S,T._storedError)}function M(S,T){let k=S._ownerReadableStream;return Lc(k,T)}function D(S){let T=S._ownerReadableStream;T._state==="readable"?K(S,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):j(S,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),T._readableStreamController[P](),T._reader=void 0,S._ownerReadableStream=void 0}function L(S){return new TypeError("Cannot "+S+" a stream using a released reader")}function Z(S){S._closedPromise=c((T,k)=>{S._closedPromise_resolve=T,S._closedPromise_reject=k})}function W(S,T){Z(S),K(S,T)}function F(S){Z(S),J(S)}function K(S,T){S._closedPromise_reject!==void 0&&(A(S._closedPromise),S._closedPromise_reject(T),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0)}function j(S,T){W(S,T)}function J(S){S._closedPromise_resolve!==void 0&&(S._closedPromise_resolve(void 0),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0)}let se=Number.isFinite||function(S){return typeof S=="number"&&isFinite(S)},oe=Math.trunc||function(S){return S<0?Math.ceil(S):Math.floor(S)};function ue(S){return typeof S=="object"||typeof S=="function"}function Ie(S,T){if(S!==void 0&&!ue(S))throw new TypeError(`${T} is not an object.`)}function we(S,T){if(typeof S!="function")throw new TypeError(`${T} is not a function.`)}function qe(S){return typeof S=="object"&&S!==null||typeof S=="function"}function Fe(S,T){if(!qe(S))throw new TypeError(`${T} is not an object.`)}function _e(S,T,k){if(S===void 0)throw new TypeError(`Parameter ${T} is required in '${k}'.`)}function U(S,T,k){if(S===void 0)throw new TypeError(`${T} is required in '${k}'.`)}function G(S){return Number(S)}function V(S){return S===0?0:S}function q(S){return V(oe(S))}function H(S,T){let z=Number.MAX_SAFE_INTEGER,ae=Number(S);if(ae=V(ae),!se(ae))throw new TypeError(`${T} is not a finite number`);if(ae=q(ae),ae<0||ae>z)throw new TypeError(`${T} is outside the accepted range of 0 to ${z}, inclusive`);return!se(ae)||ae===0?0:ae}function ee(S,T){if(!np(S))throw new TypeError(`${T} is not a ReadableStream.`)}function ne(S){return new fe(S)}function re(S,T){S._reader._readRequests.push(T)}function X(S,T,k){let ae=S._reader._readRequests.shift();k?ae._closeSteps():ae._chunkSteps(T)}function ie(S){return S._reader._readRequests.length}function ce(S){let T=S._reader;return!(T===void 0||!Ne(T))}class fe{constructor(T){if(_e(T,1,"ReadableStreamDefaultReader"),ee(T,"First parameter"),sp(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");B(this,T),this._readRequests=new v}get closed(){return Ne(this)?this._closedPromise:l(Ye("closed"))}cancel(T=void 0){return Ne(this)?this._ownerReadableStream===void 0?l(L("cancel")):M(this,T):l(Ye("cancel"))}read(){if(!Ne(this))return l(Ye("read"));if(this._ownerReadableStream===void 0)return l(L("read from"));let T,k,z=c((pe,xe)=>{T=pe,k=xe});return Pe(this,{_chunkSteps:pe=>T({value:pe,done:!1}),_closeSteps:()=>T({value:void 0,done:!0}),_errorSteps:pe=>k(pe)}),z}releaseLock(){if(!Ne(this))throw Ye("releaseLock");this._ownerReadableStream!==void 0&&Ue(this)}}Object.defineProperties(fe.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(fe.prototype.cancel,"cancel"),s(fe.prototype.read,"read"),s(fe.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(fe.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function Ne(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readRequests")?!1:S instanceof fe}function Pe(S,T){let k=S._ownerReadableStream;k._disturbed=!0,k._state==="closed"?T._closeSteps():k._state==="errored"?T._errorSteps(k._storedError):k._readableStreamController[N](T)}function Ue(S){D(S);let T=new TypeError("Reader was released");ze(S,T)}function ze(S,T){let k=S._readRequests;S._readRequests=new v,k.forEach(z=>{z._errorSteps(T)})}function Ye(S){return new TypeError(`ReadableStreamDefaultReader.prototype.${S} can only be used on a ReadableStreamDefaultReader`)}let Ze=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class nt{constructor(T,k){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=T,this._preventCancel=k}next(){let T=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?h(this._ongoingPromise,T,T):T(),this._ongoingPromise}return(T){let k=()=>this._returnSteps(T);return this._ongoingPromise?h(this._ongoingPromise,k,k):k()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let T=this._reader,k,z,ae=c((xe,Qe)=>{k=xe,z=Qe});return Pe(T,{_chunkSteps:xe=>{this._ongoingPromise=void 0,g(()=>k({value:xe,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,D(T),k({value:void 0,done:!0})},_errorSteps:xe=>{this._ongoingPromise=void 0,this._isFinished=!0,D(T),z(xe)}}),ae}_returnSteps(T){if(this._isFinished)return Promise.resolve({value:T,done:!0});this._isFinished=!0;let k=this._reader;if(!this._preventCancel){let z=M(k,T);return D(k),h(z,()=>({value:T,done:!0}))}return D(k),u({value:T,done:!0})}}let ct={next(){return Pt(this)?this._asyncIteratorImpl.next():l(lt("next"))},return(S){return Pt(this)?this._asyncIteratorImpl.return(S):l(lt("return"))}};Object.setPrototypeOf(ct,Ze);function tt(S,T){let k=ne(S),z=new nt(k,T),ae=Object.create(ct);return ae._asyncIteratorImpl=z,ae}function Pt(S){if(!r(S)||!Object.prototype.hasOwnProperty.call(S,"_asyncIteratorImpl"))return!1;try{return S._asyncIteratorImpl instanceof nt}catch{return!1}}function lt(S){return new TypeError(`ReadableStreamAsyncIterator.${S} can only be used on a ReadableSteamAsyncIterator`)}let ke=Number.isNaN||function(S){return S!==S};var Je,ft,rt;function bt(S){return S.slice()}function An(S,T,k,z,ae){new Uint8Array(S).set(new Uint8Array(k,z,ae),T)}let vt=S=>(typeof S.transfer=="function"?vt=T=>T.transfer():typeof structuredClone=="function"?vt=T=>structuredClone(T,{transfer:[T]}):vt=T=>T,vt(S)),_r=S=>(typeof S.detached=="boolean"?_r=T=>T.detached:_r=T=>T.byteLength===0,_r(S));function qs(S,T,k){if(S.slice)return S.slice(T,k);let z=k-T,ae=new ArrayBuffer(z);return An(ae,0,S,T,z),ae}function Pr(S,T){let k=S[T];if(k!=null){if(typeof k!="function")throw new TypeError(`${String(T)} is not a function`);return k}}function js(S){let T={[Symbol.iterator]:()=>S.iterator},k=async function*(){return yield*T}(),z=k.next;return{iterator:k,nextMethod:z,done:!1}}let Hs=(rt=(Je=Symbol.asyncIterator)!==null&&Je!==void 0?Je:(ft=Symbol.for)===null||ft===void 0?void 0:ft.call(Symbol,"Symbol.asyncIterator"))!==null&&rt!==void 0?rt:"@@asyncIterator";function ys(S,T="sync",k){if(k===void 0)if(T==="async"){if(k=Pr(S,Hs),k===void 0){let pe=Pr(S,Symbol.iterator),xe=ys(S,"sync",pe);return js(xe)}}else k=Pr(S,Symbol.iterator);if(k===void 0)throw new TypeError("The object is not iterable");let z=b(k,S,[]);if(!r(z))throw new TypeError("The iterator method must return an object");let ae=z.next;return{iterator:z,nextMethod:ae,done:!1}}function Qs(S){let T=b(S.nextMethod,S.iterator,[]);if(!r(T))throw new TypeError("The iterator.next() method must return an object");return T}function Bu(S){return!!S.done}function Ao(S){return S.value}function Dc(S){return!(typeof S!="number"||ke(S)||S<0)}function Ta(S){let T=qs(S.buffer,S.byteOffset,S.byteOffset+S.byteLength);return new Uint8Array(T)}function yn(S){let T=S._queue.shift();return S._queueTotalSize-=T.size,S._queueTotalSize<0&&(S._queueTotalSize=0),T.value}function wa(S,T,k){if(!Dc(k)||k===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");S._queue.push({value:T,size:k}),S._queueTotalSize+=k}function td(S){return S._queue.peek().value}function yo(S){S._queue=new v,S._queueTotalSize=0}function bA(S){return S===DataView}function u6(S){return bA(S.constructor)}function mpt(S){return bA(S)?1:S.BYTES_PER_ELEMENT}class dm{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!l6(this))throw h6("view");return this._view}respond(T){if(!l6(this))throw h6("respond");if(_e(T,1,"respond"),T=H(T,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(_r(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");C2(this._associatedReadableByteStreamController,T)}respondWithNewView(T){if(!l6(this))throw h6("respondWithNewView");if(_e(T,1,"respondWithNewView"),!ArrayBuffer.isView(T))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(_r(T.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");T2(this._associatedReadableByteStreamController,T)}}Object.defineProperties(dm.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),s(dm.prototype.respond,"respond"),s(dm.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(dm.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class rd{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!fm(this))throw GE("byobRequest");return m6(this)}get desiredSize(){if(!fm(this))throw GE("desiredSize");return Fle(this)}close(){if(!fm(this))throw GE("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let T=this._controlledReadableByteStream._state;if(T!=="readable")throw new TypeError(`The stream (in ${T} state) is not in the readable state and cannot be closed`);QE(this)}enqueue(T){if(!fm(this))throw GE("enqueue");if(_e(T,1,"enqueue"),!ArrayBuffer.isView(T))throw new TypeError("chunk must be an array buffer view");if(T.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(T.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let k=this._controlledReadableByteStream._state;if(k!=="readable")throw new TypeError(`The stream (in ${k} state) is not in the readable state and cannot be enqueued to`);I2(this,T)}error(T=void 0){if(!fm(this))throw GE("error");qo(this,T)}[w](T){Ole(this),yo(this);let k=this._cancelAlgorithm(T);return v2(this),k}[N](T){let k=this._controlledReadableByteStream;if(this._queueTotalSize>0){$le(this,T);return}let z=this._autoAllocateChunkSize;if(z!==void 0){let ae;try{ae=new ArrayBuffer(z)}catch(xe){T._errorSteps(xe);return}let pe={buffer:ae,bufferByteLength:z,byteOffset:0,byteLength:z,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(pe)}re(k,T),pm(this)}[P](){if(this._pendingPullIntos.length>0){let T=this._pendingPullIntos.peek();T.readerType="none",this._pendingPullIntos=new v,this._pendingPullIntos.push(T)}}}Object.defineProperties(rd.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),s(rd.prototype.close,"close"),s(rd.prototype.enqueue,"enqueue"),s(rd.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(rd.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function fm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledReadableByteStream")?!1:S instanceof rd}function l6(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_associatedReadableByteStreamController")?!1:S instanceof dm}function pm(S){if(!xpt(S))return;if(S._pulling){S._pullAgain=!0;return}S._pulling=!0;let k=S._pullAlgorithm();f(k,()=>(S._pulling=!1,S._pullAgain&&(S._pullAgain=!1,pm(S)),null),z=>(qo(S,z),null))}function Ole(S){f6(S),S._pendingPullIntos=new v}function d6(S,T){let k=!1;S._state==="closed"&&(k=!0);let z=Ple(T);T.readerType==="default"?X(S,z,k):Ipt(S,z,k)}function Ple(S){let T=S.bytesFilled,k=S.elementSize;return new S.viewConstructor(S.buffer,S.byteOffset,T/k)}function S2(S,T,k,z){S._queue.push({buffer:T,byteOffset:k,byteLength:z}),S._queueTotalSize+=z}function kle(S,T,k,z){let ae;try{ae=qs(T,k,k+z)}catch(pe){throw qo(S,pe),pe}S2(S,ae,0,z)}function Dle(S,T){T.bytesFilled>0&&kle(S,T.buffer,T.byteOffset,T.bytesFilled),EA(S)}function Ble(S,T){let k=Math.min(S._queueTotalSize,T.byteLength-T.bytesFilled),z=T.bytesFilled+k,ae=k,pe=!1,xe=z%T.elementSize,Qe=z-xe;Qe>=T.minimumFill&&(ae=Qe-T.bytesFilled,pe=!0);let It=S._queue;for(;ae>0;){let dt=It.peek(),Bt=Math.min(ae,dt.byteLength),Yt=T.byteOffset+T.bytesFilled;An(T.buffer,Yt,dt.buffer,dt.byteOffset,Bt),dt.byteLength===Bt?It.shift():(dt.byteOffset+=Bt,dt.byteLength-=Bt),S._queueTotalSize-=Bt,Lle(S,Bt,T),ae-=Bt}return pe}function Lle(S,T,k){k.bytesFilled+=T}function Mle(S){S._queueTotalSize===0&&S._closeRequested?(v2(S),XE(S._controlledReadableByteStream)):pm(S)}function f6(S){S._byobRequest!==null&&(S._byobRequest._associatedReadableByteStreamController=void 0,S._byobRequest._view=null,S._byobRequest=null)}function p6(S){for(;S._pendingPullIntos.length>0;){if(S._queueTotalSize===0)return;let T=S._pendingPullIntos.peek();Ble(S,T)&&(EA(S),d6(S._controlledReadableByteStream,T))}}function hpt(S){let T=S._controlledReadableByteStream._reader;for(;T._readRequests.length>0;){if(S._queueTotalSize===0)return;let k=T._readRequests.shift();$le(S,k)}}function gpt(S,T,k,z){let ae=S._controlledReadableByteStream,pe=T.constructor,xe=mpt(pe),{byteOffset:Qe,byteLength:It}=T,dt=k*xe,Bt;try{Bt=vt(T.buffer)}catch(un){z._errorSteps(un);return}let Yt={buffer:Bt,bufferByteLength:Bt.byteLength,byteOffset:Qe,byteLength:It,bytesFilled:0,minimumFill:dt,elementSize:xe,viewConstructor:pe,readerType:"byob"};if(S._pendingPullIntos.length>0){S._pendingPullIntos.push(Yt),jle(ae,z);return}if(ae._state==="closed"){let un=new pe(Yt.buffer,Yt.byteOffset,0);z._closeSteps(un);return}if(S._queueTotalSize>0){if(Ble(S,Yt)){let un=Ple(Yt);Mle(S),z._chunkSteps(un);return}if(S._closeRequested){let un=new TypeError("Insufficient bytes to fill elements in the given buffer");qo(S,un),z._errorSteps(un);return}}S._pendingPullIntos.push(Yt),jle(ae,z),pm(S)}function Apt(S,T){T.readerType==="none"&&EA(S);let k=S._controlledReadableByteStream;if(g6(k))for(;Hle(k)>0;){let z=EA(S);d6(k,z)}}function ypt(S,T,k){if(Lle(S,T,k),k.readerType==="none"){Dle(S,k),p6(S);return}if(k.bytesFilled<k.minimumFill)return;EA(S);let z=k.bytesFilled%k.elementSize;if(z>0){let ae=k.byteOffset+k.bytesFilled;kle(S,k.buffer,ae-z,z)}k.bytesFilled-=z,d6(S._controlledReadableByteStream,k),p6(S)}function Wle(S,T){let k=S._pendingPullIntos.peek();f6(S),S._controlledReadableByteStream._state==="closed"?Apt(S,k):ypt(S,T,k),pm(S)}function EA(S){return S._pendingPullIntos.shift()}function xpt(S){let T=S._controlledReadableByteStream;return T._state!=="readable"||S._closeRequested||!S._started?!1:!!(ce(T)&&ie(T)>0||g6(T)&&Hle(T)>0||Fle(S)>0)}function v2(S){S._pullAlgorithm=void 0,S._cancelAlgorithm=void 0}function QE(S){let T=S._controlledReadableByteStream;if(!(S._closeRequested||T._state!=="readable")){if(S._queueTotalSize>0){S._closeRequested=!0;return}if(S._pendingPullIntos.length>0){let k=S._pendingPullIntos.peek();if(k.bytesFilled%k.elementSize!==0){let z=new TypeError("Insufficient bytes to fill elements in the given buffer");throw qo(S,z),z}}v2(S),XE(T)}}function I2(S,T){let k=S._controlledReadableByteStream;if(S._closeRequested||k._state!=="readable")return;let{buffer:z,byteOffset:ae,byteLength:pe}=T;if(_r(z))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let xe=vt(z);if(S._pendingPullIntos.length>0){let Qe=S._pendingPullIntos.peek();if(_r(Qe.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");f6(S),Qe.buffer=vt(Qe.buffer),Qe.readerType==="none"&&Dle(S,Qe)}if(ce(k))if(hpt(S),ie(k)===0)S2(S,xe,ae,pe);else{S._pendingPullIntos.length>0&&EA(S);let Qe=new Uint8Array(xe,ae,pe);X(k,Qe,!1)}else g6(k)?(S2(S,xe,ae,pe),p6(S)):S2(S,xe,ae,pe);pm(S)}function qo(S,T){let k=S._controlledReadableByteStream;k._state==="readable"&&(Ole(S),yo(S),v2(S),mde(k,T))}function $le(S,T){let k=S._queue.shift();S._queueTotalSize-=k.byteLength,Mle(S);let z=new Uint8Array(k.buffer,k.byteOffset,k.byteLength);T._chunkSteps(z)}function m6(S){if(S._byobRequest===null&&S._pendingPullIntos.length>0){let T=S._pendingPullIntos.peek(),k=new Uint8Array(T.buffer,T.byteOffset+T.bytesFilled,T.byteLength-T.bytesFilled),z=Object.create(dm.prototype);Ept(z,S,k),S._byobRequest=z}return S._byobRequest}function Fle(S){let T=S._controlledReadableByteStream._state;return T==="errored"?null:T==="closed"?0:S._strategyHWM-S._queueTotalSize}function C2(S,T){let k=S._pendingPullIntos.peek();if(S._controlledReadableByteStream._state==="closed"){if(T!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(T===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(k.bytesFilled+T>k.byteLength)throw new RangeError("bytesWritten out of range")}k.buffer=vt(k.buffer),Wle(S,T)}function T2(S,T){let k=S._pendingPullIntos.peek();if(S._controlledReadableByteStream._state==="closed"){if(T.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(T.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(k.byteOffset+k.bytesFilled!==T.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(k.bufferByteLength!==T.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(k.bytesFilled+T.byteLength>k.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let ae=T.byteLength;k.buffer=vt(T.buffer),Wle(S,ae)}function Ule(S,T,k,z,ae,pe,xe){T._controlledReadableByteStream=S,T._pullAgain=!1,T._pulling=!1,T._byobRequest=null,T._queue=T._queueTotalSize=void 0,yo(T),T._closeRequested=!1,T._started=!1,T._strategyHWM=pe,T._pullAlgorithm=z,T._cancelAlgorithm=ae,T._autoAllocateChunkSize=xe,T._pendingPullIntos=new v,S._readableStreamController=T;let Qe=k();f(u(Qe),()=>(T._started=!0,pm(T),null),It=>(qo(T,It),null))}function bpt(S,T,k){let z=Object.create(rd.prototype),ae,pe,xe;T.start!==void 0?ae=()=>T.start(z):ae=()=>{},T.pull!==void 0?pe=()=>T.pull(z):pe=()=>u(void 0),T.cancel!==void 0?xe=It=>T.cancel(It):xe=()=>u(void 0);let Qe=T.autoAllocateChunkSize;if(Qe===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");Ule(S,z,ae,pe,xe,k,Qe)}function Ept(S,T,k){S._associatedReadableByteStreamController=T,S._view=k}function h6(S){return new TypeError(`ReadableStreamBYOBRequest.prototype.${S} can only be used on a ReadableStreamBYOBRequest`)}function GE(S){return new TypeError(`ReadableByteStreamController.prototype.${S} can only be used on a ReadableByteStreamController`)}function _pt(S,T){Ie(S,T);let k=S?.mode;return{mode:k===void 0?void 0:Spt(k,`${T} has member 'mode' that`)}}function Spt(S,T){if(S=`${S}`,S!=="byob")throw new TypeError(`${T} '${S}' is not a valid enumeration value for ReadableStreamReaderMode`);return S}function vpt(S,T){var k;Ie(S,T);let z=(k=S?.min)!==null&&k!==void 0?k:1;return{min:H(z,`${T} has member 'min' that`)}}function qle(S){return new tp(S)}function jle(S,T){S._reader._readIntoRequests.push(T)}function Ipt(S,T,k){let ae=S._reader._readIntoRequests.shift();k?ae._closeSteps(T):ae._chunkSteps(T)}function Hle(S){return S._reader._readIntoRequests.length}function g6(S){let T=S._reader;return!(T===void 0||!mm(T))}class tp{constructor(T){if(_e(T,1,"ReadableStreamBYOBReader"),ee(T,"First parameter"),sp(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!fm(T._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");B(this,T),this._readIntoRequests=new v}get closed(){return mm(this)?this._closedPromise:l(w2("closed"))}cancel(T=void 0){return mm(this)?this._ownerReadableStream===void 0?l(L("cancel")):M(this,T):l(w2("cancel"))}read(T,k={}){if(!mm(this))return l(w2("read"));if(!ArrayBuffer.isView(T))return l(new TypeError("view must be an array buffer view"));if(T.byteLength===0)return l(new TypeError("view must have non-zero byteLength"));if(T.buffer.byteLength===0)return l(new TypeError("view's buffer must have non-zero byteLength"));if(_r(T.buffer))return l(new TypeError("view's buffer has been detached"));let z;try{z=vpt(k,"options")}catch(dt){return l(dt)}let ae=z.min;if(ae===0)return l(new TypeError("options.min must be greater than 0"));if(u6(T)){if(ae>T.byteLength)return l(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(ae>T.length)return l(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return l(L("read from"));let pe,xe,Qe=c((dt,Bt)=>{pe=dt,xe=Bt});return Qle(this,T,ae,{_chunkSteps:dt=>pe({value:dt,done:!1}),_closeSteps:dt=>pe({value:dt,done:!0}),_errorSteps:dt=>xe(dt)}),Qe}releaseLock(){if(!mm(this))throw w2("releaseLock");this._ownerReadableStream!==void 0&&Cpt(this)}}Object.defineProperties(tp.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(tp.prototype.cancel,"cancel"),s(tp.prototype.read,"read"),s(tp.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(tp.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function mm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readIntoRequests")?!1:S instanceof tp}function Qle(S,T,k,z){let ae=S._ownerReadableStream;ae._disturbed=!0,ae._state==="errored"?z._errorSteps(ae._storedError):gpt(ae._readableStreamController,T,k,z)}function Cpt(S){D(S);let T=new TypeError("Reader was released");Gle(S,T)}function Gle(S,T){let k=S._readIntoRequests;S._readIntoRequests=new v,k.forEach(z=>{z._errorSteps(T)})}function w2(S){return new TypeError(`ReadableStreamBYOBReader.prototype.${S} can only be used on a ReadableStreamBYOBReader`)}function KE(S,T){let{highWaterMark:k}=S;if(k===void 0)return T;if(ke(k)||k<0)throw new RangeError("Invalid highWaterMark");return k}function R2(S){let{size:T}=S;return T||(()=>1)}function N2(S,T){Ie(S,T);let k=S?.highWaterMark,z=S?.size;return{highWaterMark:k===void 0?void 0:G(k),size:z===void 0?void 0:Tpt(z,`${T} has member 'size' that`)}}function Tpt(S,T){return we(S,T),k=>G(S(k))}function wpt(S,T){Ie(S,T);let k=S?.abort,z=S?.close,ae=S?.start,pe=S?.type,xe=S?.write;return{abort:k===void 0?void 0:Rpt(k,S,`${T} has member 'abort' that`),close:z===void 0?void 0:Npt(z,S,`${T} has member 'close' that`),start:ae===void 0?void 0:Opt(ae,S,`${T} has member 'start' that`),write:xe===void 0?void 0:Ppt(xe,S,`${T} has member 'write' that`),type:pe}}function Rpt(S,T,k){return we(S,k),z=>y(S,T,[z])}function Npt(S,T,k){return we(S,k),()=>y(S,T,[])}function Opt(S,T,k){return we(S,k),z=>b(S,T,[z])}function Ppt(S,T,k){return we(S,k),(z,ae)=>y(S,T,[z,ae])}function Kle(S,T){if(!_A(S))throw new TypeError(`${T} is not a WritableStream.`)}function kpt(S){if(typeof S!="object"||S===null)return!1;try{return typeof S.aborted=="boolean"}catch{return!1}}let Dpt=typeof AbortController=="function";function Bpt(){if(Dpt)return new AbortController}class rp{constructor(T={},k={}){T===void 0?T=null:Fe(T,"First parameter");let z=N2(k,"Second parameter"),ae=wpt(T,"First parameter");if(zle(this),ae.type!==void 0)throw new RangeError("Invalid type is specified");let xe=R2(z),Qe=KE(z,1);zpt(this,ae,Qe,xe)}get locked(){if(!_A(this))throw B2("locked");return SA(this)}abort(T=void 0){return _A(this)?SA(this)?l(new TypeError("Cannot abort a stream that already has a writer")):O2(this,T):l(B2("abort"))}close(){return _A(this)?SA(this)?l(new TypeError("Cannot close a stream that already has a writer")):Lu(this)?l(new TypeError("Cannot close an already-closing stream")):Yle(this):l(B2("close"))}getWriter(){if(!_A(this))throw B2("getWriter");return Vle(this)}}Object.defineProperties(rp.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),s(rp.prototype.abort,"abort"),s(rp.prototype.close,"close"),s(rp.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(rp.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function Vle(S){return new nd(S)}function Lpt(S,T,k,z,ae=1,pe=()=>1){let xe=Object.create(rp.prototype);zle(xe);let Qe=Object.create(vA.prototype);return rde(xe,Qe,S,T,k,z,ae,pe),xe}function zle(S){S._state="writable",S._storedError=void 0,S._writer=void 0,S._writableStreamController=void 0,S._writeRequests=new v,S._inFlightWriteRequest=void 0,S._closeRequest=void 0,S._inFlightCloseRequest=void 0,S._pendingAbortRequest=void 0,S._backpressure=!1}function _A(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_writableStreamController")?!1:S instanceof rp}function SA(S){return S._writer!==void 0}function O2(S,T){var k;if(S._state==="closed"||S._state==="errored")return u(void 0);S._writableStreamController._abortReason=T,(k=S._writableStreamController._abortController)===null||k===void 0||k.abort(T);let z=S._state;if(z==="closed"||z==="errored")return u(void 0);if(S._pendingAbortRequest!==void 0)return S._pendingAbortRequest._promise;let ae=!1;z==="erroring"&&(ae=!0,T=void 0);let pe=c((xe,Qe)=>{S._pendingAbortRequest={_promise:void 0,_resolve:xe,_reject:Qe,_reason:T,_wasAlreadyErroring:ae}});return S._pendingAbortRequest._promise=pe,ae||y6(S,T),pe}function Yle(S){let T=S._state;if(T==="closed"||T==="errored")return l(new TypeError(`The stream (in ${T} state) is not in the writable state and cannot be closed`));let k=c((ae,pe)=>{let xe={_resolve:ae,_reject:pe};S._closeRequest=xe}),z=S._writer;return z!==void 0&&S._backpressure&&T==="writable"&&C6(z),Ypt(S._writableStreamController),k}function Mpt(S){return c((k,z)=>{let ae={_resolve:k,_reject:z};S._writeRequests.push(ae)})}function A6(S,T){if(S._state==="writable"){y6(S,T);return}x6(S)}function y6(S,T){let k=S._writableStreamController;S._state="erroring",S._storedError=T;let z=S._writer;z!==void 0&&Xle(z,T),!qpt(S)&&k._started&&x6(S)}function x6(S){S._state="errored",S._writableStreamController[R]();let T=S._storedError;if(S._writeRequests.forEach(ae=>{ae._reject(T)}),S._writeRequests=new v,S._pendingAbortRequest===void 0){P2(S);return}let k=S._pendingAbortRequest;if(S._pendingAbortRequest=void 0,k._wasAlreadyErroring){k._reject(T),P2(S);return}let z=S._writableStreamController[I](k._reason);f(z,()=>(k._resolve(),P2(S),null),ae=>(k._reject(ae),P2(S),null))}function Wpt(S){S._inFlightWriteRequest._resolve(void 0),S._inFlightWriteRequest=void 0}function $pt(S,T){S._inFlightWriteRequest._reject(T),S._inFlightWriteRequest=void 0,A6(S,T)}function Fpt(S){S._inFlightCloseRequest._resolve(void 0),S._inFlightCloseRequest=void 0,S._state==="erroring"&&(S._storedError=void 0,S._pendingAbortRequest!==void 0&&(S._pendingAbortRequest._resolve(),S._pendingAbortRequest=void 0)),S._state="closed";let k=S._writer;k!==void 0&&ade(k)}function Upt(S,T){S._inFlightCloseRequest._reject(T),S._inFlightCloseRequest=void 0,S._pendingAbortRequest!==void 0&&(S._pendingAbortRequest._reject(T),S._pendingAbortRequest=void 0),A6(S,T)}function Lu(S){return!(S._closeRequest===void 0&&S._inFlightCloseRequest===void 0)}function qpt(S){return!(S._inFlightWriteRequest===void 0&&S._inFlightCloseRequest===void 0)}function jpt(S){S._inFlightCloseRequest=S._closeRequest,S._closeRequest=void 0}function Hpt(S){S._inFlightWriteRequest=S._writeRequests.shift()}function P2(S){S._closeRequest!==void 0&&(S._closeRequest._reject(S._storedError),S._closeRequest=void 0);let T=S._writer;T!==void 0&&v6(T,S._storedError)}function b6(S,T){let k=S._writer;k!==void 0&&T!==S._backpressure&&(T?n0t(k):C6(k)),S._backpressure=T}class nd{constructor(T){if(_e(T,1,"WritableStreamDefaultWriter"),Kle(T,"First parameter"),SA(T))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=T,T._writer=this;let k=T._state;if(k==="writable")!Lu(T)&&T._backpressure?M2(this):ode(this),L2(this);else if(k==="erroring")I6(this,T._storedError),L2(this);else if(k==="closed")ode(this),t0t(this);else{let z=T._storedError;I6(this,z),ide(this,z)}}get closed(){return hm(this)?this._closedPromise:l(gm("closed"))}get desiredSize(){if(!hm(this))throw gm("desiredSize");if(this._ownerWritableStream===void 0)throw zE("desiredSize");return Vpt(this)}get ready(){return hm(this)?this._readyPromise:l(gm("ready"))}abort(T=void 0){return hm(this)?this._ownerWritableStream===void 0?l(zE("abort")):Qpt(this,T):l(gm("abort"))}close(){if(!hm(this))return l(gm("close"));let T=this._ownerWritableStream;return T===void 0?l(zE("close")):Lu(T)?l(new TypeError("Cannot close an already-closing stream")):Jle(this)}releaseLock(){if(!hm(this))throw gm("releaseLock");this._ownerWritableStream!==void 0&&Zle(this)}write(T=void 0){return hm(this)?this._ownerWritableStream===void 0?l(zE("write to")):ede(this,T):l(gm("write"))}}Object.defineProperties(nd.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),s(nd.prototype.abort,"abort"),s(nd.prototype.close,"close"),s(nd.prototype.releaseLock,"releaseLock"),s(nd.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(nd.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function hm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_ownerWritableStream")?!1:S instanceof nd}function Qpt(S,T){let k=S._ownerWritableStream;return O2(k,T)}function Jle(S){let T=S._ownerWritableStream;return Yle(T)}function Gpt(S){let T=S._ownerWritableStream,k=T._state;return Lu(T)||k==="closed"?u(void 0):k==="errored"?l(T._storedError):Jle(S)}function Kpt(S,T){S._closedPromiseState==="pending"?v6(S,T):r0t(S,T)}function Xle(S,T){S._readyPromiseState==="pending"?cde(S,T):s0t(S,T)}function Vpt(S){let T=S._ownerWritableStream,k=T._state;return k==="errored"||k==="erroring"?null:k==="closed"?0:nde(T._writableStreamController)}function Zle(S){let T=S._ownerWritableStream,k=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");Xle(S,k),Kpt(S,k),T._writer=void 0,S._ownerWritableStream=void 0}function ede(S,T){let k=S._ownerWritableStream,z=k._writableStreamController,ae=Jpt(z,T);if(k!==S._ownerWritableStream)return l(zE("write to"));let pe=k._state;if(pe==="errored")return l(k._storedError);if(Lu(k)||pe==="closed")return l(new TypeError("The stream is closing or closed and cannot be written to"));if(pe==="erroring")return l(k._storedError);let xe=Mpt(k);return Xpt(z,T,ae),xe}let tde={};class vA{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!E6(this))throw S6("abortReason");return this._abortReason}get signal(){if(!E6(this))throw S6("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(T=void 0){if(!E6(this))throw S6("error");this._controlledWritableStream._state==="writable"&&sde(this,T)}[I](T){let k=this._abortAlgorithm(T);return k2(this),k}[R](){yo(this)}}Object.defineProperties(vA.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vA.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function E6(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledWritableStream")?!1:S instanceof vA}function rde(S,T,k,z,ae,pe,xe,Qe){T._controlledWritableStream=S,S._writableStreamController=T,T._queue=void 0,T._queueTotalSize=void 0,yo(T),T._abortReason=void 0,T._abortController=Bpt(),T._started=!1,T._strategySizeAlgorithm=Qe,T._strategyHWM=xe,T._writeAlgorithm=z,T._closeAlgorithm=ae,T._abortAlgorithm=pe;let It=_6(T);b6(S,It);let dt=k(),Bt=u(dt);f(Bt,()=>(T._started=!0,D2(T),null),Yt=>(T._started=!0,A6(S,Yt),null))}function zpt(S,T,k,z){let ae=Object.create(vA.prototype),pe,xe,Qe,It;T.start!==void 0?pe=()=>T.start(ae):pe=()=>{},T.write!==void 0?xe=dt=>T.write(dt,ae):xe=()=>u(void 0),T.close!==void 0?Qe=()=>T.close():Qe=()=>u(void 0),T.abort!==void 0?It=dt=>T.abort(dt):It=()=>u(void 0),rde(S,ae,pe,xe,Qe,It,k,z)}function k2(S){S._writeAlgorithm=void 0,S._closeAlgorithm=void 0,S._abortAlgorithm=void 0,S._strategySizeAlgorithm=void 0}function Ypt(S){wa(S,tde,0),D2(S)}function Jpt(S,T){try{return S._strategySizeAlgorithm(T)}catch(k){return VE(S,k),1}}function nde(S){return S._strategyHWM-S._queueTotalSize}function Xpt(S,T,k){try{wa(S,T,k)}catch(ae){VE(S,ae);return}let z=S._controlledWritableStream;if(!Lu(z)&&z._state==="writable"){let ae=_6(S);b6(z,ae)}D2(S)}function D2(S){let T=S._controlledWritableStream;if(!S._started||T._inFlightWriteRequest!==void 0)return;if(T._state==="erroring"){x6(T);return}if(S._queue.length===0)return;let z=td(S);z===tde?Zpt(S):e0t(S,z)}function VE(S,T){S._controlledWritableStream._state==="writable"&&sde(S,T)}function Zpt(S){let T=S._controlledWritableStream;jpt(T),yn(S);let k=S._closeAlgorithm();k2(S),f(k,()=>(Fpt(T),null),z=>(Upt(T,z),null))}function e0t(S,T){let k=S._controlledWritableStream;Hpt(k);let z=S._writeAlgorithm(T);f(z,()=>{Wpt(k);let ae=k._state;if(yn(S),!Lu(k)&&ae==="writable"){let pe=_6(S);b6(k,pe)}return D2(S),null},ae=>(k._state==="writable"&&k2(S),$pt(k,ae),null))}function _6(S){return nde(S)<=0}function sde(S,T){let k=S._controlledWritableStream;k2(S),y6(k,T)}function B2(S){return new TypeError(`WritableStream.prototype.${S} can only be used on a WritableStream`)}function S6(S){return new TypeError(`WritableStreamDefaultController.prototype.${S} can only be used on a WritableStreamDefaultController`)}function gm(S){return new TypeError(`WritableStreamDefaultWriter.prototype.${S} can only be used on a WritableStreamDefaultWriter`)}function zE(S){return new TypeError("Cannot "+S+" a stream using a released writer")}function L2(S){S._closedPromise=c((T,k)=>{S._closedPromise_resolve=T,S._closedPromise_reject=k,S._closedPromiseState="pending"})}function ide(S,T){L2(S),v6(S,T)}function t0t(S){L2(S),ade(S)}function v6(S,T){S._closedPromise_reject!==void 0&&(A(S._closedPromise),S._closedPromise_reject(T),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0,S._closedPromiseState="rejected")}function r0t(S,T){ide(S,T)}function ade(S){S._closedPromise_resolve!==void 0&&(S._closedPromise_resolve(void 0),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0,S._closedPromiseState="resolved")}function M2(S){S._readyPromise=c((T,k)=>{S._readyPromise_resolve=T,S._readyPromise_reject=k}),S._readyPromiseState="pending"}function I6(S,T){M2(S),cde(S,T)}function ode(S){M2(S),C6(S)}function cde(S,T){S._readyPromise_reject!==void 0&&(A(S._readyPromise),S._readyPromise_reject(T),S._readyPromise_resolve=void 0,S._readyPromise_reject=void 0,S._readyPromiseState="rejected")}function n0t(S){M2(S)}function s0t(S,T){I6(S,T)}function C6(S){S._readyPromise_resolve!==void 0&&(S._readyPromise_resolve(void 0),S._readyPromise_resolve=void 0,S._readyPromise_reject=void 0,S._readyPromiseState="fulfilled")}function i0t(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let T6=i0t();function a0t(S){if(!(typeof S=="function"||typeof S=="object")||S.name!=="DOMException")return!1;try{return new S,!0}catch{return!1}}function o0t(){let S=T6?.DOMException;return a0t(S)?S:void 0}function c0t(){let S=function(k,z){this.message=k||"",this.name=z||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return s(S,"DOMException"),S.prototype=Object.create(Error.prototype),Object.defineProperty(S.prototype,"constructor",{value:S,writable:!0,configurable:!0}),S}let u0t=o0t()||c0t();function ude(S,T,k,z,ae,pe){let xe=ne(S),Qe=Vle(T);S._disturbed=!0;let It=!1,dt=u(void 0);return c((Bt,Yt)=>{let un;if(pe!==void 0){if(un=()=>{let ht=pe.reason!==void 0?pe.reason:new u0t("Aborted","AbortError"),ur=[];z||ur.push(()=>T._state==="writable"?O2(T,ht):u(void 0)),ae||ur.push(()=>S._state==="readable"?Lc(S,ht):u(void 0)),Ra(()=>Promise.all(ur.map(xn=>xn())),!0,ht)},pe.aborted){un();return}pe.addEventListener("abort",un)}function Mc(){return c((ht,ur)=>{function xn(xo){xo?ht():d(wA(),xn,ur)}xn(!1)})}function wA(){return It?u(!0):d(Qe._readyPromise,()=>c((ht,ur)=>{Pe(xe,{_chunkSteps:xn=>{dt=d(ede(Qe,xn),void 0,e),ht(!1)},_closeSteps:()=>ht(!0),_errorSteps:ur})}))}if(id(S,xe._closedPromise,ht=>(z?jo(!0,ht):Ra(()=>O2(T,ht),!0,ht),null)),id(T,Qe._closedPromise,ht=>(ae?jo(!0,ht):Ra(()=>Lc(S,ht),!0,ht),null)),Zi(S,xe._closedPromise,()=>(k?jo():Ra(()=>Gpt(Qe)),null)),Lu(T)||T._state==="closed"){let ht=new TypeError("the destination writable stream closed before all data could be piped to it");ae?jo(!0,ht):Ra(()=>Lc(S,ht),!0,ht)}A(Mc());function ap(){let ht=dt;return d(dt,()=>ht!==dt?ap():void 0)}function id(ht,ur,xn){ht._state==="errored"?xn(ht._storedError):m(ur,xn)}function Zi(ht,ur,xn){ht._state==="closed"?xn():p(ur,xn)}function Ra(ht,ur,xn){if(It)return;It=!0,T._state==="writable"&&!Lu(T)?p(ap(),xo):xo();function xo(){return f(ht(),()=>ad(ur,xn),RA=>ad(!0,RA)),null}}function jo(ht,ur){It||(It=!0,T._state==="writable"&&!Lu(T)?p(ap(),()=>ad(ht,ur)):ad(ht,ur))}function ad(ht,ur){return Zle(Qe),D(xe),pe!==void 0&&pe.removeEventListener("abort",un),ht?Yt(ur):Bt(void 0),null}})}class sd{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!W2(this))throw F2("desiredSize");return w6(this)}close(){if(!W2(this))throw F2("close");if(!CA(this))throw new TypeError("The stream is not in a state that permits close");Am(this)}enqueue(T=void 0){if(!W2(this))throw F2("enqueue");if(!CA(this))throw new TypeError("The stream is not in a state that permits enqueue");return IA(this,T)}error(T=void 0){if(!W2(this))throw F2("error");Bc(this,T)}[w](T){yo(this);let k=this._cancelAlgorithm(T);return $2(this),k}[N](T){let k=this._controlledReadableStream;if(this._queue.length>0){let z=yn(this);this._closeRequested&&this._queue.length===0?($2(this),XE(k)):YE(this),T._chunkSteps(z)}else re(k,T),YE(this)}[P](){}}Object.defineProperties(sd.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),s(sd.prototype.close,"close"),s(sd.prototype.enqueue,"enqueue"),s(sd.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(sd.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function W2(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledReadableStream")?!1:S instanceof sd}function YE(S){if(!lde(S))return;if(S._pulling){S._pullAgain=!0;return}S._pulling=!0;let k=S._pullAlgorithm();f(k,()=>(S._pulling=!1,S._pullAgain&&(S._pullAgain=!1,YE(S)),null),z=>(Bc(S,z),null))}function lde(S){let T=S._controlledReadableStream;return!CA(S)||!S._started?!1:!!(sp(T)&&ie(T)>0||w6(S)>0)}function $2(S){S._pullAlgorithm=void 0,S._cancelAlgorithm=void 0,S._strategySizeAlgorithm=void 0}function Am(S){if(!CA(S))return;let T=S._controlledReadableStream;S._closeRequested=!0,S._queue.length===0&&($2(S),XE(T))}function IA(S,T){if(!CA(S))return;let k=S._controlledReadableStream;if(sp(k)&&ie(k)>0)X(k,T,!1);else{let z;try{z=S._strategySizeAlgorithm(T)}catch(ae){throw Bc(S,ae),ae}try{wa(S,T,z)}catch(ae){throw Bc(S,ae),ae}}YE(S)}function Bc(S,T){let k=S._controlledReadableStream;k._state==="readable"&&(yo(S),$2(S),mde(k,T))}function w6(S){let T=S._controlledReadableStream._state;return T==="errored"?null:T==="closed"?0:S._strategyHWM-S._queueTotalSize}function l0t(S){return!lde(S)}function CA(S){let T=S._controlledReadableStream._state;return!S._closeRequested&&T==="readable"}function dde(S,T,k,z,ae,pe,xe){T._controlledReadableStream=S,T._queue=void 0,T._queueTotalSize=void 0,yo(T),T._started=!1,T._closeRequested=!1,T._pullAgain=!1,T._pulling=!1,T._strategySizeAlgorithm=xe,T._strategyHWM=pe,T._pullAlgorithm=z,T._cancelAlgorithm=ae,S._readableStreamController=T;let Qe=k();f(u(Qe),()=>(T._started=!0,YE(T),null),It=>(Bc(T,It),null))}function d0t(S,T,k,z){let ae=Object.create(sd.prototype),pe,xe,Qe;T.start!==void 0?pe=()=>T.start(ae):pe=()=>{},T.pull!==void 0?xe=()=>T.pull(ae):xe=()=>u(void 0),T.cancel!==void 0?Qe=It=>T.cancel(It):Qe=()=>u(void 0),dde(S,ae,pe,xe,Qe,k,z)}function F2(S){return new TypeError(`ReadableStreamDefaultController.prototype.${S} can only be used on a ReadableStreamDefaultController`)}function f0t(S,T){return fm(S._readableStreamController)?m0t(S):p0t(S)}function p0t(S,T){let k=ne(S),z=!1,ae=!1,pe=!1,xe=!1,Qe,It,dt,Bt,Yt,un=c(Zi=>{Yt=Zi});function Mc(){return z?(ae=!0,u(void 0)):(z=!0,Pe(k,{_chunkSteps:Ra=>{g(()=>{ae=!1;let jo=Ra,ad=Ra;pe||IA(dt._readableStreamController,jo),xe||IA(Bt._readableStreamController,ad),z=!1,ae&&Mc()})},_closeSteps:()=>{z=!1,pe||Am(dt._readableStreamController),xe||Am(Bt._readableStreamController),(!pe||!xe)&&Yt(void 0)},_errorSteps:()=>{z=!1}}),u(void 0))}function wA(Zi){if(pe=!0,Qe=Zi,xe){let Ra=bt([Qe,It]),jo=Lc(S,Ra);Yt(jo)}return un}function ap(Zi){if(xe=!0,It=Zi,pe){let Ra=bt([Qe,It]),jo=Lc(S,Ra);Yt(jo)}return un}function id(){}return dt=JE(id,Mc,wA),Bt=JE(id,Mc,ap),m(k._closedPromise,Zi=>(Bc(dt._readableStreamController,Zi),Bc(Bt._readableStreamController,Zi),(!pe||!xe)&&Yt(void 0),null)),[dt,Bt]}function m0t(S){let T=ne(S),k=!1,z=!1,ae=!1,pe=!1,xe=!1,Qe,It,dt,Bt,Yt,un=c(ht=>{Yt=ht});function Mc(ht){m(ht._closedPromise,ur=>(ht!==T||(qo(dt._readableStreamController,ur),qo(Bt._readableStreamController,ur),(!pe||!xe)&&Yt(void 0)),null))}function wA(){mm(T)&&(D(T),T=ne(S),Mc(T)),Pe(T,{_chunkSteps:ur=>{g(()=>{z=!1,ae=!1;let xn=ur,xo=ur;if(!pe&&!xe)try{xo=Ta(ur)}catch(RA){qo(dt._readableStreamController,RA),qo(Bt._readableStreamController,RA),Yt(Lc(S,RA));return}pe||I2(dt._readableStreamController,xn),xe||I2(Bt._readableStreamController,xo),k=!1,z?id():ae&&Zi()})},_closeSteps:()=>{k=!1,pe||QE(dt._readableStreamController),xe||QE(Bt._readableStreamController),dt._readableStreamController._pendingPullIntos.length>0&&C2(dt._readableStreamController,0),Bt._readableStreamController._pendingPullIntos.length>0&&C2(Bt._readableStreamController,0),(!pe||!xe)&&Yt(void 0)},_errorSteps:()=>{k=!1}})}function ap(ht,ur){Ne(T)&&(D(T),T=qle(S),Mc(T));let xn=ur?Bt:dt,xo=ur?dt:Bt;Qle(T,ht,1,{_chunkSteps:NA=>{g(()=>{z=!1,ae=!1;let OA=ur?xe:pe;if(ur?pe:xe)OA||T2(xn._readableStreamController,NA);else{let Tde;try{Tde=Ta(NA)}catch(k6){qo(xn._readableStreamController,k6),qo(xo._readableStreamController,k6),Yt(Lc(S,k6));return}OA||T2(xn._readableStreamController,NA),I2(xo._readableStreamController,Tde)}k=!1,z?id():ae&&Zi()})},_closeSteps:NA=>{k=!1;let OA=ur?xe:pe,V2=ur?pe:xe;OA||QE(xn._readableStreamController),V2||QE(xo._readableStreamController),NA!==void 0&&(OA||T2(xn._readableStreamController,NA),!V2&&xo._readableStreamController._pendingPullIntos.length>0&&C2(xo._readableStreamController,0)),(!OA||!V2)&&Yt(void 0)},_errorSteps:()=>{k=!1}})}function id(){if(k)return z=!0,u(void 0);k=!0;let ht=m6(dt._readableStreamController);return ht===null?wA():ap(ht._view,!1),u(void 0)}function Zi(){if(k)return ae=!0,u(void 0);k=!0;let ht=m6(Bt._readableStreamController);return ht===null?wA():ap(ht._view,!0),u(void 0)}function Ra(ht){if(pe=!0,Qe=ht,xe){let ur=bt([Qe,It]),xn=Lc(S,ur);Yt(xn)}return un}function jo(ht){if(xe=!0,It=ht,pe){let ur=bt([Qe,It]),xn=Lc(S,ur);Yt(xn)}return un}function ad(){}return dt=pde(ad,id,Ra),Bt=pde(ad,Zi,jo),Mc(T),[dt,Bt]}function h0t(S){return r(S)&&typeof S.getReader<"u"}function g0t(S){return h0t(S)?y0t(S.getReader()):A0t(S)}function A0t(S){let T,k=ys(S,"async"),z=e;function ae(){let xe;try{xe=Qs(k)}catch(It){return l(It)}let Qe=u(xe);return h(Qe,It=>{if(!r(It))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(Bu(It))Am(T._readableStreamController);else{let Bt=Ao(It);IA(T._readableStreamController,Bt)}})}function pe(xe){let Qe=k.iterator,It;try{It=Pr(Qe,"return")}catch(Yt){return l(Yt)}if(It===void 0)return u(void 0);let dt;try{dt=b(It,Qe,[xe])}catch(Yt){return l(Yt)}let Bt=u(dt);return h(Bt,Yt=>{if(!r(Yt))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return T=JE(z,ae,pe,0),T}function y0t(S){let T,k=e;function z(){let pe;try{pe=S.read()}catch(xe){return l(xe)}return h(pe,xe=>{if(!r(xe))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(xe.done)Am(T._readableStreamController);else{let Qe=xe.value;IA(T._readableStreamController,Qe)}})}function ae(pe){try{return u(S.cancel(pe))}catch(xe){return l(xe)}}return T=JE(k,z,ae,0),T}function x0t(S,T){Ie(S,T);let k=S,z=k?.autoAllocateChunkSize,ae=k?.cancel,pe=k?.pull,xe=k?.start,Qe=k?.type;return{autoAllocateChunkSize:z===void 0?void 0:H(z,`${T} has member 'autoAllocateChunkSize' that`),cancel:ae===void 0?void 0:b0t(ae,k,`${T} has member 'cancel' that`),pull:pe===void 0?void 0:E0t(pe,k,`${T} has member 'pull' that`),start:xe===void 0?void 0:_0t(xe,k,`${T} has member 'start' that`),type:Qe===void 0?void 0:S0t(Qe,`${T} has member 'type' that`)}}function b0t(S,T,k){return we(S,k),z=>y(S,T,[z])}function E0t(S,T,k){return we(S,k),z=>y(S,T,[z])}function _0t(S,T,k){return we(S,k),z=>b(S,T,[z])}function S0t(S,T){if(S=`${S}`,S!=="bytes")throw new TypeError(`${T} '${S}' is not a valid enumeration value for ReadableStreamType`);return S}function v0t(S,T){return Ie(S,T),{preventCancel:!!S?.preventCancel}}function fde(S,T){Ie(S,T);let k=S?.preventAbort,z=S?.preventCancel,ae=S?.preventClose,pe=S?.signal;return pe!==void 0&&I0t(pe,`${T} has member 'signal' that`),{preventAbort:!!k,preventCancel:!!z,preventClose:!!ae,signal:pe}}function I0t(S,T){if(!kpt(S))throw new TypeError(`${T} is not an AbortSignal.`)}function C0t(S,T){Ie(S,T);let k=S?.readable;U(k,"readable","ReadableWritablePair"),ee(k,`${T} has member 'readable' that`);let z=S?.writable;return U(z,"writable","ReadableWritablePair"),Kle(z,`${T} has member 'writable' that`),{readable:k,writable:z}}class vi{constructor(T={},k={}){T===void 0?T=null:Fe(T,"First parameter");let z=N2(k,"Second parameter"),ae=x0t(T,"First parameter");if(R6(this),ae.type==="bytes"){if(z.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let pe=KE(z,0);bpt(this,ae,pe)}else{let pe=R2(z),xe=KE(z,1);d0t(this,ae,xe,pe)}}get locked(){if(!np(this))throw ym("locked");return sp(this)}cancel(T=void 0){return np(this)?sp(this)?l(new TypeError("Cannot cancel a stream that already has a reader")):Lc(this,T):l(ym("cancel"))}getReader(T=void 0){if(!np(this))throw ym("getReader");return _pt(T,"First parameter").mode===void 0?ne(this):qle(this)}pipeThrough(T,k={}){if(!np(this))throw ym("pipeThrough");_e(T,1,"pipeThrough");let z=C0t(T,"First parameter"),ae=fde(k,"Second parameter");if(sp(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(SA(z.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let pe=ude(this,z.writable,ae.preventClose,ae.preventAbort,ae.preventCancel,ae.signal);return A(pe),z.readable}pipeTo(T,k={}){if(!np(this))return l(ym("pipeTo"));if(T===void 0)return l("Parameter 1 is required in 'pipeTo'.");if(!_A(T))return l(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let z;try{z=fde(k,"Second parameter")}catch(ae){return l(ae)}return sp(this)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):SA(T)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):ude(this,T,z.preventClose,z.preventAbort,z.preventCancel,z.signal)}tee(){if(!np(this))throw ym("tee");let T=f0t(this);return bt(T)}values(T=void 0){if(!np(this))throw ym("values");let k=v0t(T,"First parameter");return tt(this,k.preventCancel)}[Hs](T){return this.values(T)}static from(T){return g0t(T)}}Object.defineProperties(vi,{from:{enumerable:!0}}),Object.defineProperties(vi.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),s(vi.from,"from"),s(vi.prototype.cancel,"cancel"),s(vi.prototype.getReader,"getReader"),s(vi.prototype.pipeThrough,"pipeThrough"),s(vi.prototype.pipeTo,"pipeTo"),s(vi.prototype.tee,"tee"),s(vi.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vi.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(vi.prototype,Hs,{value:vi.prototype.values,writable:!0,configurable:!0});function JE(S,T,k,z=1,ae=()=>1){let pe=Object.create(vi.prototype);R6(pe);let xe=Object.create(sd.prototype);return dde(pe,xe,S,T,k,z,ae),pe}function pde(S,T,k){let z=Object.create(vi.prototype);R6(z);let ae=Object.create(rd.prototype);return Ule(z,ae,S,T,k,0,void 0),z}function R6(S){S._state="readable",S._reader=void 0,S._storedError=void 0,S._disturbed=!1}function np(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readableStreamController")?!1:S instanceof vi}function sp(S){return S._reader!==void 0}function Lc(S,T){if(S._disturbed=!0,S._state==="closed")return u(void 0);if(S._state==="errored")return l(S._storedError);XE(S);let k=S._reader;if(k!==void 0&&mm(k)){let ae=k._readIntoRequests;k._readIntoRequests=new v,ae.forEach(pe=>{pe._closeSteps(void 0)})}let z=S._readableStreamController[w](T);return h(z,e)}function XE(S){S._state="closed";let T=S._reader;if(T!==void 0&&(J(T),Ne(T))){let k=T._readRequests;T._readRequests=new v,k.forEach(z=>{z._closeSteps()})}}function mde(S,T){S._state="errored",S._storedError=T;let k=S._reader;k!==void 0&&(K(k,T),Ne(k)?ze(k,T):Gle(k,T))}function ym(S){return new TypeError(`ReadableStream.prototype.${S} can only be used on a ReadableStream`)}function hde(S,T){Ie(S,T);let k=S?.highWaterMark;return U(k,"highWaterMark","QueuingStrategyInit"),{highWaterMark:G(k)}}let gde=S=>S.byteLength;s(gde,"size");class U2{constructor(T){_e(T,1,"ByteLengthQueuingStrategy"),T=hde(T,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!yde(this))throw Ade("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!yde(this))throw Ade("size");return gde}}Object.defineProperties(U2.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(U2.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function Ade(S){return new TypeError(`ByteLengthQueuingStrategy.prototype.${S} can only be used on a ByteLengthQueuingStrategy`)}function yde(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_byteLengthQueuingStrategyHighWaterMark")?!1:S instanceof U2}let xde=()=>1;s(xde,"size");class q2{constructor(T){_e(T,1,"CountQueuingStrategy"),T=hde(T,"First parameter"),this._countQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!Ede(this))throw bde("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!Ede(this))throw bde("size");return xde}}Object.defineProperties(q2.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(q2.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function bde(S){return new TypeError(`CountQueuingStrategy.prototype.${S} can only be used on a CountQueuingStrategy`)}function Ede(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_countQueuingStrategyHighWaterMark")?!1:S instanceof q2}function T0t(S,T){Ie(S,T);let k=S?.cancel,z=S?.flush,ae=S?.readableType,pe=S?.start,xe=S?.transform,Qe=S?.writableType;return{cancel:k===void 0?void 0:O0t(k,S,`${T} has member 'cancel' that`),flush:z===void 0?void 0:w0t(z,S,`${T} has member 'flush' that`),readableType:ae,start:pe===void 0?void 0:R0t(pe,S,`${T} has member 'start' that`),transform:xe===void 0?void 0:N0t(xe,S,`${T} has member 'transform' that`),writableType:Qe}}function w0t(S,T,k){return we(S,k),z=>y(S,T,[z])}function R0t(S,T,k){return we(S,k),z=>b(S,T,[z])}function N0t(S,T,k){return we(S,k),(z,ae)=>y(S,T,[z,ae])}function O0t(S,T,k){return we(S,k),z=>y(S,T,[z])}class j2{constructor(T={},k={},z={}){T===void 0&&(T=null);let ae=N2(k,"Second parameter"),pe=N2(z,"Third parameter"),xe=T0t(T,"First parameter");if(xe.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(xe.writableType!==void 0)throw new RangeError("Invalid writableType specified");let Qe=KE(pe,0),It=R2(pe),dt=KE(ae,1),Bt=R2(ae),Yt,un=c(Mc=>{Yt=Mc});P0t(this,un,dt,Bt,Qe,It),D0t(this,xe),xe.start!==void 0?Yt(xe.start(this._transformStreamController)):Yt(void 0)}get readable(){if(!_de(this))throw Cde("readable");return this._readable}get writable(){if(!_de(this))throw Cde("writable");return this._writable}}Object.defineProperties(j2.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(j2.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function P0t(S,T,k,z,ae,pe){function xe(){return T}function Qe(un){return M0t(S,un)}function It(un){return W0t(S,un)}function dt(){return $0t(S)}S._writable=Lpt(xe,Qe,dt,It,k,z);function Bt(){return F0t(S)}function Yt(un){return U0t(S,un)}S._readable=JE(xe,Bt,Yt,ae,pe),S._backpressure=void 0,S._backpressureChangePromise=void 0,S._backpressureChangePromise_resolve=void 0,H2(S,!0),S._transformStreamController=void 0}function _de(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_transformStreamController")?!1:S instanceof j2}function Sde(S,T){Bc(S._readable._readableStreamController,T),N6(S,T)}function N6(S,T){G2(S._transformStreamController),VE(S._writable._writableStreamController,T),O6(S)}function O6(S){S._backpressure&&H2(S,!1)}function H2(S,T){S._backpressureChangePromise!==void 0&&S._backpressureChangePromise_resolve(),S._backpressureChangePromise=c(k=>{S._backpressureChangePromise_resolve=k}),S._backpressure=T}class ip{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!Q2(this))throw K2("desiredSize");let T=this._controlledTransformStream._readable._readableStreamController;return w6(T)}enqueue(T=void 0){if(!Q2(this))throw K2("enqueue");vde(this,T)}error(T=void 0){if(!Q2(this))throw K2("error");B0t(this,T)}terminate(){if(!Q2(this))throw K2("terminate");L0t(this)}}Object.defineProperties(ip.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),s(ip.prototype.enqueue,"enqueue"),s(ip.prototype.error,"error"),s(ip.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(ip.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function Q2(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledTransformStream")?!1:S instanceof ip}function k0t(S,T,k,z,ae){T._controlledTransformStream=S,S._transformStreamController=T,T._transformAlgorithm=k,T._flushAlgorithm=z,T._cancelAlgorithm=ae,T._finishPromise=void 0,T._finishPromise_resolve=void 0,T._finishPromise_reject=void 0}function D0t(S,T){let k=Object.create(ip.prototype),z,ae,pe;T.transform!==void 0?z=xe=>T.transform(xe,k):z=xe=>{try{return vde(k,xe),u(void 0)}catch(Qe){return l(Qe)}},T.flush!==void 0?ae=()=>T.flush(k):ae=()=>u(void 0),T.cancel!==void 0?pe=xe=>T.cancel(xe):pe=()=>u(void 0),k0t(S,k,z,ae,pe)}function G2(S){S._transformAlgorithm=void 0,S._flushAlgorithm=void 0,S._cancelAlgorithm=void 0}function vde(S,T){let k=S._controlledTransformStream,z=k._readable._readableStreamController;if(!CA(z))throw new TypeError("Readable side is not in a state that permits enqueue");try{IA(z,T)}catch(pe){throw N6(k,pe),k._readable._storedError}l0t(z)!==k._backpressure&&H2(k,!0)}function B0t(S,T){Sde(S._controlledTransformStream,T)}function Ide(S,T){let k=S._transformAlgorithm(T);return h(k,void 0,z=>{throw Sde(S._controlledTransformStream,z),z})}function L0t(S){let T=S._controlledTransformStream,k=T._readable._readableStreamController;Am(k);let z=new TypeError("TransformStream terminated");N6(T,z)}function M0t(S,T){let k=S._transformStreamController;if(S._backpressure){let z=S._backpressureChangePromise;return h(z,()=>{let ae=S._writable;if(ae._state==="erroring")throw ae._storedError;return Ide(k,T)})}return Ide(k,T)}function W0t(S,T){let k=S._transformStreamController;if(k._finishPromise!==void 0)return k._finishPromise;let z=S._readable;k._finishPromise=c((pe,xe)=>{k._finishPromise_resolve=pe,k._finishPromise_reject=xe});let ae=k._cancelAlgorithm(T);return G2(k),f(ae,()=>(z._state==="errored"?TA(k,z._storedError):(Bc(z._readableStreamController,T),P6(k)),null),pe=>(Bc(z._readableStreamController,pe),TA(k,pe),null)),k._finishPromise}function $0t(S){let T=S._transformStreamController;if(T._finishPromise!==void 0)return T._finishPromise;let k=S._readable;T._finishPromise=c((ae,pe)=>{T._finishPromise_resolve=ae,T._finishPromise_reject=pe});let z=T._flushAlgorithm();return G2(T),f(z,()=>(k._state==="errored"?TA(T,k._storedError):(Am(k._readableStreamController),P6(T)),null),ae=>(Bc(k._readableStreamController,ae),TA(T,ae),null)),T._finishPromise}function F0t(S){return H2(S,!1),S._backpressureChangePromise}function U0t(S,T){let k=S._transformStreamController;if(k._finishPromise!==void 0)return k._finishPromise;let z=S._writable;k._finishPromise=c((pe,xe)=>{k._finishPromise_resolve=pe,k._finishPromise_reject=xe});let ae=k._cancelAlgorithm(T);return G2(k),f(ae,()=>(z._state==="errored"?TA(k,z._storedError):(VE(z._writableStreamController,T),O6(S),P6(k)),null),pe=>(VE(z._writableStreamController,pe),O6(S),TA(k,pe),null)),k._finishPromise}function K2(S){return new TypeError(`TransformStreamDefaultController.prototype.${S} can only be used on a TransformStreamDefaultController`)}function P6(S){S._finishPromise_resolve!==void 0&&(S._finishPromise_resolve(),S._finishPromise_resolve=void 0,S._finishPromise_reject=void 0)}function TA(S,T){S._finishPromise_reject!==void 0&&(A(S._finishPromise),S._finishPromise_reject(T),S._finishPromise_resolve=void 0,S._finishPromise_reject=void 0)}function Cde(S){return new TypeError(`TransformStream.prototype.${S} can only be used on a TransformStream`)}t.ByteLengthQueuingStrategy=U2,t.CountQueuingStrategy=q2,t.ReadableByteStreamController=rd,t.ReadableStream=vi,t.ReadableStreamBYOBReader=tp,t.ReadableStreamBYOBRequest=dm,t.ReadableStreamDefaultController=sd,t.ReadableStreamDefaultReader=fe,t.TransformStream=j2,t.TransformStreamDefaultController=ip,t.WritableStream=rp,t.WritableStreamDefaultController=vA,t.WritableStreamDefaultWriter=nd})});var O5e=E(()=>{if(!globalThis.ReadableStream)try{let t=require("node:process"),{emitWarning:e}=t;try{t.emitWarning=()=>{},Object.assign(globalThis,require("node:stream/web")),t.emitWarning=e}catch(r){throw t.emitWarning=e,r}}catch{Object.assign(globalThis,N5e())}try{let{Blob:t}=require("buffer");t&&!t.prototype.stream&&(t.prototype.stream=function(r){let n=0,s=this;return new ReadableStream({type:"bytes",async pull(i){let o=await s.slice(n,Math.min(s.size,n+65536)).arrayBuffer();n+=o.byteLength,i.enqueue(new Uint8Array(o)),n===s.size&&i.close()}})})}catch{}});async function*SV(t,e=!0){for(let r of t)if("stream"in r)yield*r.stream();else if(ArrayBuffer.isView(r))if(e){let n=r.byteOffset,s=r.byteOffset+r.byteLength;for(;n!==s;){let i=Math.min(s-n,P5e),a=r.buffer.slice(n,n+i);n+=a.byteLength,yield new Uint8Array(a)}}else yield r;else{let n=0,s=r;for(;n!==s.size;){let a=await s.slice(n,Math.min(s.size,n+P5e)).arrayBuffer();n+=a.byteLength,yield new Uint8Array(a)}}}var sjr,P5e,k5e,Ysr,hu,dI=lr(()=>{sjr=Re(O5e(),1);P5e=65536;k5e=class vV{#e=[];#t="";#r=0;#n="transparent";constructor(e=[],r={}){if(typeof e!="object"||e===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof e[Symbol.iterator]!="function")throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof r!="object"&&typeof r!="function")throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");r===null&&(r={});let n=new TextEncoder;for(let i of e){let a;ArrayBuffer.isView(i)?a=new Uint8Array(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):i instanceof ArrayBuffer?a=new Uint8Array(i.slice(0)):i instanceof vV?a=i:a=n.encode(`${i}`),this.#r+=ArrayBuffer.isView(a)?a.byteLength:a.size,this.#e.push(a)}this.#n=`${r.endings===void 0?"transparent":r.endings}`;let s=r.type===void 0?"":String(r.type);this.#t=/^[\x20-\x7E]*$/.test(s)?s:""}get size(){return this.#r}get type(){return this.#t}async text(){let e=new TextDecoder,r="";for await(let n of SV(this.#e,!1))r+=e.decode(n,{stream:!0});return r+=e.decode(),r}async arrayBuffer(){let e=new Uint8Array(this.size),r=0;for await(let n of SV(this.#e,!1))e.set(n,r),r+=n.length;return e.buffer}stream(){let e=SV(this.#e,!0);return new globalThis.ReadableStream({type:"bytes",async pull(r){let n=await e.next();n.done?r.close():r.enqueue(n.value)},async cancel(){await e.return()}})}slice(e=0,r=this.size,n=""){let{size:s}=this,i=e<0?Math.max(s+e,0):Math.min(e,s),a=r<0?Math.max(s+r,0):Math.min(r,s),o=Math.max(a-i,0),c=this.#e,u=[],l=0;for(let f of c){if(l>=o)break;let p=ArrayBuffer.isView(f)?f.byteLength:f.size;if(i&&p<=i)i-=p,a-=p;else{let m;ArrayBuffer.isView(f)?(m=f.subarray(i,Math.min(p,a)),l+=m.byteLength):(m=f.slice(i,Math.min(p,a)),l+=m.size),a-=p,u.push(m),i=0}}let d=new vV([],{type:String(n).toLowerCase()});return d.#r=o,d.#e=u,d}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](e){return e&&typeof e=="object"&&typeof e.constructor=="function"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}};Object.defineProperties(k5e.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});Ysr=k5e,hu=Ysr});var Jsr,Xsr,D0,IV=lr(()=>{dI();Jsr=class extends hu{#e=0;#t="";constructor(e,r,n={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(e,n),n===null&&(n={});let s=n.lastModified===void 0?Date.now():Number(n.lastModified);Number.isNaN(s)||(this.#e=s),this.#t=String(r)}get name(){return this.#t}get lastModified(){return this.#e}get[Symbol.toStringTag](){return"File"}static[Symbol.hasInstance](e){return!!e&&e instanceof hu&&/^(File)$/.test(e[Symbol.toStringTag])}},Xsr=Jsr,D0=Xsr});function L5e(t,e=hu){var r=`${D5e()}${D5e()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),n=[],s=`--${r}\r
Content-Disposition: form-data; name="`;return t.forEach((i,a)=>typeof i=="string"?n.push(s+CV(a)+`"\r
\r
${i.replace(/\r(?!\n)|(?<!\r)\n/g,`\r
`)}\r
`):n.push(s+CV(a)+`"; filename="${CV(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 fI,Zsr,eir,D5e,tir,B5e,CV,Yh,B0,gB=lr(()=>{dI();IV();({toStringTag:fI,iterator:Zsr,hasInstance:eir}=Symbol),D5e=Math.random,tir="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),B5e=(t,e,r)=>(t+="",/^(Blob|File)$/.test(e&&e[fI])?[(r=r!==void 0?r+"":e[fI]=="File"?e.name:"blob",t),e.name!==r||e[fI]=="blob"?new D0([e],r,e):e]:[t,e+""]),CV=(t,e)=>(e?t:t.replace(/\r?\n|\r/g,`\r
`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),Yh=(t,e,r)=>{if(e.length<r)throw new TypeError(`Failed to execute '${t}' on 'FormData': ${r} arguments required, but only ${e.length} present.`)},B0=class{#e=[];constructor(...e){if(e.length)throw new TypeError("Failed to construct 'FormData': parameter 1 is not of type 'HTMLFormElement'.")}get[fI](){return"FormData"}[Zsr](){return this.entries()}static[eir](e){return e&&typeof e=="object"&&e[fI]==="FormData"&&!tir.some(r=>typeof e[r]!="function")}append(...e){Yh("append",arguments,2),this.#e.push(B5e(...e))}delete(e){Yh("delete",arguments,1),e+="",this.#e=this.#e.filter(([r])=>r!==e)}get(e){Yh("get",arguments,1),e+="";for(var r=this.#e,n=r.length,s=0;s<n;s++)if(r[s][0]===e)return r[s][1];return null}getAll(e,r){return Yh("getAll",arguments,1),r=[],e+="",this.#e.forEach(n=>n[0]===e&&r.push(n[1])),r}has(e){return Yh("has",arguments,1),e+="",this.#e.some(r=>r[0]===e)}forEach(e,r){Yh("forEach",arguments,1);for(var[n,s]of this)e.call(r,s,n,this)}set(...e){Yh("set",arguments,2);var r=[],n=!0;e=B5e(...e),this.#e.forEach(s=>{s[0]===e[0]?n&&(n=!r.push(e)):r.push(s)}),n&&r.push(e),this.#e=r}*entries(){yield*this.#e}*keys(){for(var[e]of this)yield e}*values(){for(var[,e]of this)yield e}}});var sf,AB=lr(()=>{sf=class extends Error{constructor(e,r){super(e),Error.captureStackTrace(this,this.constructor),this.type=r}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var ha,TV=lr(()=>{AB();ha=class extends sf{constructor(e,r,n){super(e,r),n&&(this.code=this.errno=n.code,this.erroredSysCall=n.syscall)}}});var yB,wV,pI,M5e,W5e,$5e,xB=lr(()=>{yB=Symbol.toStringTag,wV=t=>typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&typeof t.sort=="function"&&t[yB]==="URLSearchParams",pI=t=>t&&typeof t=="object"&&typeof t.arrayBuffer=="function"&&typeof t.type=="string"&&typeof t.stream=="function"&&typeof t.constructor=="function"&&/^(Blob|File)$/.test(t[yB]),M5e=t=>typeof t=="object"&&(t[yB]==="AbortSignal"||t[yB]==="EventTarget"),W5e=(t,e)=>{let r=new URL(e).hostname,n=new URL(t).hostname;return r===n||r.endsWith(`.${n}`)},$5e=(t,e)=>{let r=new URL(e).protocol,n=new URL(t).protocol;return r===n}});var U5e=E((Ajr,F5e)=>{if(!globalThis.DOMException)try{let{MessageChannel:t}=require("worker_threads"),e=new t().port1,r=new ArrayBuffer;e.postMessage(r,[r,r])}catch(t){t.constructor.name==="DOMException"&&(globalThis.DOMException=t.constructor)}F5e.exports=globalThis.DOMException});var Jh,q5e,j5e,RV,H5e,Q5e,G5e,K5e,V5e,z5e,bB,NV=lr(()=>{Jh=require("node:fs"),q5e=require("node:path"),j5e=Re(U5e(),1);IV();dI();({stat:RV}=Jh.promises),H5e=(t,e)=>V5e((0,Jh.statSync)(t),t,e),Q5e=(t,e)=>RV(t).then(r=>V5e(r,t,e)),G5e=(t,e)=>RV(t).then(r=>z5e(r,t,e)),K5e=(t,e)=>z5e((0,Jh.statSync)(t),t,e),V5e=(t,e,r="")=>new hu([new bB({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],{type:r}),z5e=(t,e,r="")=>new D0([new bB({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],(0,q5e.basename)(e),{type:r,lastModified:t.mtimeMs}),bB=class t{#e;#t;constructor(e){this.#e=e.path,this.#t=e.start,this.size=e.size,this.lastModified=e.lastModified}slice(e,r){return new t({path:this.#e,lastModified:this.lastModified,size:r-e,start:this.#t+e})}async*stream(){let{mtimeMs:e}=await RV(this.#e);if(e>this.lastModified)throw new j5e.default("The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.","NotReadableError");yield*(0,Jh.createReadStream)(this.#e,{start:this.#t,end:this.#t+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var J5e={};is(J5e,{toFormData:()=>cir});function oir(t){let e=t.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!e)return;let r=e[2]||e[3]||"",n=r.slice(r.lastIndexOf("\\")+1);return n=n.replace(/%22/g,'"'),n=n.replace(/&#(\d{4});/g,(s,i)=>String.fromCharCode(i)),n}async function cir(t,e){if(!/multipart/i.test(e))throw new TypeError("Failed to fetch");let r=e.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!r)throw new TypeError("no or bad content-type header, no multipart boundary");let n=new OV(r[1]||r[2]),s,i,a,o,c,u,l=[],d=new B0,f=g=>{a+=A.decode(g,{stream:!0})},p=g=>{l.push(g)},m=()=>{let g=new D0(l,u,{type:c});d.append(o,g)},h=()=>{d.append(o,a)},A=new TextDecoder("utf-8");A.decode(),n.onPartBegin=function(){n.onPartData=f,n.onPartEnd=h,s="",i="",a="",o="",c="",u=null,l.length=0},n.onHeaderField=function(g){s+=A.decode(g,{stream:!0})},n.onHeaderValue=function(g){i+=A.decode(g,{stream:!0})},n.onHeaderEnd=function(){if(i+=A.decode(),s=s.toLowerCase(),s==="content-disposition"){let g=i.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);g&&(o=g[2]||g[3]||""),u=oir(i),u&&(n.onPartData=p,n.onPartEnd=m)}else s==="content-type"&&(c=i);i="",s=""};for await(let g of t)n.write(g);return n.end(),d}var Rl,vn,Y5e,L0,EB,_B,rir,mI,nir,sir,iir,air,Xh,OV,X5e=lr(()=>{NV();gB();Rl=0,vn={START_BOUNDARY:Rl++,HEADER_FIELD_START:Rl++,HEADER_FIELD:Rl++,HEADER_VALUE_START:Rl++,HEADER_VALUE:Rl++,HEADER_VALUE_ALMOST_DONE:Rl++,HEADERS_ALMOST_DONE:Rl++,PART_DATA_START:Rl++,PART_DATA:Rl++,END:Rl++},Y5e=1,L0={PART_BOUNDARY:Y5e,LAST_BOUNDARY:Y5e*=2},EB=10,_B=13,rir=32,mI=45,nir=58,sir=97,iir=122,air=t=>t|32,Xh=()=>{},OV=class{constructor(e){this.index=0,this.flags=0,this.onHeaderEnd=Xh,this.onHeaderField=Xh,this.onHeadersEnd=Xh,this.onHeaderValue=Xh,this.onPartBegin=Xh,this.onPartData=Xh,this.onPartEnd=Xh,this.boundaryChars={},e=`\r
--`+e;let r=new Uint8Array(e.length);for(let n=0;n<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=vn.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,p=e.length,m,h,A=x=>{this[x+"Mark"]=r},g=x=>{delete this[x+"Mark"]},b=(x,v,I,R)=>{(v===void 0||v!==I)&&this[x](R&&R.subarray(v,I))},y=(x,v)=>{let I=x+"Mark";I in this&&(v?(b(x,this[I],r,e),delete this[I]):(b(x,this[I],e.length,e),this[I]=0))};for(r=0;r<n;r++)switch(m=e[r],u){case vn.START_BOUNDARY:if(c===a.length-2){if(m===mI)l|=L0.LAST_BOUNDARY;else if(m!==_B)return;c++;break}else if(c-1===a.length-2){if(l&L0.LAST_BOUNDARY&&m===mI)u=vn.END,l=0;else if(!(l&L0.LAST_BOUNDARY)&&m===EB)c=0,b("onPartBegin"),u=vn.HEADER_FIELD_START;else return;break}m!==a[c+2]&&(c=-2),m===a[c+2]&&c++;break;case vn.HEADER_FIELD_START:u=vn.HEADER_FIELD,A("onHeaderField"),c=0;case vn.HEADER_FIELD:if(m===_B){g("onHeaderField"),u=vn.HEADERS_ALMOST_DONE;break}if(c++,m===mI)break;if(m===nir){if(c===1)return;y("onHeaderField",!0),u=vn.HEADER_VALUE_START;break}if(h=air(m),h<sir||h>iir)return;break;case vn.HEADER_VALUE_START:if(m===rir)break;A("onHeaderValue"),u=vn.HEADER_VALUE;case vn.HEADER_VALUE:m===_B&&(y("onHeaderValue",!0),b("onHeaderEnd"),u=vn.HEADER_VALUE_ALMOST_DONE);break;case vn.HEADER_VALUE_ALMOST_DONE:if(m!==EB)return;u=vn.HEADER_FIELD_START;break;case vn.HEADERS_ALMOST_DONE:if(m!==EB)return;b("onHeadersEnd"),u=vn.PART_DATA_START;break;case vn.PART_DATA_START:u=vn.PART_DATA,A("onPartData");case vn.PART_DATA:if(s=c,c===0){for(r+=f;r<p&&!(e[r]in o);)r+=d;r-=f,m=e[r]}if(c<a.length)a[c]===m?(c===0&&y("onPartData",!0),c++):c=0;else if(c===a.length)c++,m===_B?l|=L0.PART_BOUNDARY:m===mI?l|=L0.LAST_BOUNDARY:c=0;else if(c-1===a.length)if(l&L0.PART_BOUNDARY){if(c=0,m===EB){l&=~L0.PART_BOUNDARY,b("onPartEnd"),b("onPartBegin"),u=vn.HEADER_FIELD_START;break}}else l&L0.LAST_BOUNDARY&&m===mI?(b("onPartEnd"),u=vn.END,l=0):c=0;if(c>0)i[c-1]=m;else if(s>0){let x=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);b("onPartData",0,s,x),s=0,A("onPartData"),r--}break;case vn.END:break;default:throw new Error(`Unexpected state entered: ${u}`)}y("onHeaderField"),y("onHeaderValue"),y("onPartData"),this.index=c,this.state=u,this.flags=l}end(){if(this.state===vn.HEADER_FIELD_START&&this.index===0||this.state===vn.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==vn.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function PV(t){if(t[ro].disturbed)throw new TypeError(`body used already for: ${t.url}`);if(t[ro].disturbed=!0,t[ro].error)throw t[ro].error;let{body:e}=t;if(e===null)return To.Buffer.alloc(0);if(!(e instanceof Ic.default))return To.Buffer.alloc(0);let r=[],n=0;try{for await(let s of e){if(t.size>0&&n+s.length>t.size){let i=new ha(`content size at ${t.url} over limit: ${t.size}`,"max-size");throw e.destroy(i),i}n+=s.length,r.push(s)}}catch(s){throw s instanceof sf?s:new ha(`Invalid response body while trying to fetch ${t.url}: ${s.message}`,"system",s)}if(e.readableEnded===!0||e._readableState.ended===!0)try{return r.every(s=>typeof s=="string")?To.Buffer.from(r.join("")):To.Buffer.concat(r,n)}catch(s){throw new ha(`Could not create Buffer from response body for ${t.url}: ${s.message}`,"system",s)}else throw new ha(`Premature close of server response while trying to fetch ${t.url}`)}var Ic,af,To,uir,ro,Nl,ab,lir,SB,Z5e,e8e,vB=lr(()=>{Ic=Re(require("node:stream"),1),af=require("node:util"),To=require("node:buffer");dI();gB();TV();AB();xB();uir=(0,af.promisify)(Ic.default.pipeline),ro=Symbol("Body internals"),Nl=class{constructor(e,{size:r=0}={}){let n=null;e===null?e=null:wV(e)?e=To.Buffer.from(e.toString()):pI(e)||To.Buffer.isBuffer(e)||(af.types.isAnyArrayBuffer(e)?e=To.Buffer.from(e):ArrayBuffer.isView(e)?e=To.Buffer.from(e.buffer,e.byteOffset,e.byteLength):e instanceof Ic.default||(e instanceof B0?(e=L5e(e),n=e.type.split("=")[1]):e=To.Buffer.from(String(e))));let s=e;To.Buffer.isBuffer(e)?s=Ic.default.Readable.from(e):pI(e)&&(s=Ic.default.Readable.from(e.stream())),this[ro]={body:e,stream:s,boundary:n,disturbed:!1,error:null},this.size=r,e instanceof Ic.default&&e.on("error",i=>{let a=i instanceof sf?i:new ha(`Invalid response body while trying to fetch ${this.url}: ${i.message}`,"system",i);this[ro].error=a})}get body(){return this[ro].stream}get bodyUsed(){return this[ro].disturbed}async arrayBuffer(){let{buffer:e,byteOffset:r,byteLength:n}=await PV(this);return e.slice(r,r+n)}async formData(){let e=this.headers.get("content-type");if(e.startsWith("application/x-www-form-urlencoded")){let n=new B0,s=new URLSearchParams(await this.text());for(let[i,a]of s)n.append(i,a);return n}let{toFormData:r}=await Promise.resolve().then(()=>(X5e(),J5e));return r(this.body,e)}async blob(){let e=this.headers&&this.headers.get("content-type")||this[ro].body&&this[ro].body.type||"",r=await this.arrayBuffer();return new hu([r],{type:e})}async json(){let e=await this.text();return JSON.parse(e)}async text(){let e=await PV(this);return new TextDecoder().decode(e)}buffer(){return PV(this)}};Nl.prototype.buffer=(0,af.deprecate)(Nl.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Nl.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,af.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});ab=(t,e)=>{let r,n,{body:s}=t[ro];if(t.bodyUsed)throw new Error("cannot clone body after it is used");return s instanceof Ic.default&&typeof s.getBoundary!="function"&&(r=new Ic.PassThrough({highWaterMark:e}),n=new Ic.PassThrough({highWaterMark:e}),s.pipe(r),s.pipe(n),t[ro].stream=r,s=n),s},lir=(0,af.deprecate)(t=>t.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),SB=(t,e)=>t===null?null:typeof t=="string"?"text/plain;charset=UTF-8":wV(t)?"application/x-www-form-urlencoded;charset=UTF-8":pI(t)?t.type||null:To.Buffer.isBuffer(t)||af.types.isAnyArrayBuffer(t)||ArrayBuffer.isView(t)?null:t instanceof B0?`multipart/form-data; boundary=${e[ro].boundary}`:t&&typeof t.getBoundary=="function"?`multipart/form-data;boundary=${lir(t)}`:t instanceof Ic.default?null:"text/plain;charset=UTF-8",Z5e=t=>{let{body:e}=t[ro];return e===null?0:pI(e)?e.size:To.Buffer.isBuffer(e)?e.length:e&&typeof e.getLengthSync=="function"&&e.hasKnownLength&&e.hasKnownLength()?e.getLengthSync():null},e8e=async(t,{body:e})=>{e===null?t.end():await uir(e,t)}});function t8e(t=[]){return new no(t.reduce((e,r,n,s)=>(n%2===0&&e.push(s.slice(n,n+2)),e),[]).filter(([e,r])=>{try{return IB(e),DV(e,String(r)),!0}catch{return!1}}))}var kV,hI,IB,DV,no,CB=lr(()=>{kV=require("node:util"),hI=Re(require("node:http"),1),IB=typeof hI.default.validateHeaderName=="function"?hI.default.validateHeaderName:t=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(t)){let e=new TypeError(`Header name must be a valid HTTP token [${t}]`);throw Object.defineProperty(e,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),e}},DV=typeof hI.default.validateHeaderValue=="function"?hI.default.validateHeaderValue:(t,e)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(e)){let r=new TypeError(`Invalid character in header content ["${t}"]`);throw Object.defineProperty(r,"code",{value:"ERR_INVALID_CHAR"}),r}},no=class t extends URLSearchParams{constructor(e){let r=[];if(e instanceof t){let n=e.raw();for(let[s,i]of Object.entries(n))r.push(...i.map(a=>[s,a]))}else if(e!=null)if(typeof e=="object"&&!kV.types.isBoxedPrimitive(e)){let n=e[Symbol.iterator];if(n==null)r.push(...Object.entries(e));else{if(typeof n!="function")throw new TypeError("Header pairs must be iterable");r=[...e].map(s=>{if(typeof s!="object"||kV.types.isBoxedPrimitive(s))throw new TypeError("Each header pair must be an iterable object");return[...s]}).map(s=>{if(s.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return[...s]})}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence<sequence<ByteString>> or record<ByteString, ByteString>)");return r=r.length>0?r.map(([n,s])=>(IB(n),DV(n,String(s)),[String(n).toLowerCase(),String(s)])):void 0,super(r),new Proxy(this,{get(n,s,i){switch(s){case"append":case"set":return(a,o)=>(IB(a),DV(a,String(o)),URLSearchParams.prototype[s].call(n,String(a).toLowerCase(),String(o)));case"delete":case"has":case"getAll":return a=>(IB(a),URLSearchParams.prototype[s].call(n,String(a).toLowerCase()));case"keys":return()=>(n.sort(),new Set(URLSearchParams.prototype.keys.call(n)).keys());default:return Reflect.get(n,s,i)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(e){let r=this.getAll(e);if(r.length===0)return null;let n=r.join(", ");return/^content-encoding$/i.test(e)&&(n=n.toLowerCase()),n}forEach(e,r=void 0){for(let n of this.keys())Reflect.apply(e,r,[this.get(n),n,this])}*values(){for(let e of this.keys())yield this.get(e)}*entries(){for(let e of this.keys())yield[e,this.get(e)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((e,r)=>(e[r]=this.getAll(r),e),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((e,r)=>{let n=this.getAll(r);return r==="host"?e[r]=n[0]:e[r]=n.length>1?n:n[0],e},{})}};Object.defineProperties(no.prototype,["get","entries","forEach","values"].reduce((t,e)=>(t[e]={enumerable:!0},t),{}))});var dir,gI,BV=lr(()=>{dir=new Set([301,302,303,307,308]),gI=t=>dir.has(t)});var gu,wo,r8e=lr(()=>{CB();vB();BV();gu=Symbol("Response internals"),wo=class t extends Nl{constructor(e=null,r={}){super(e,r);let n=r.status!=null?r.status:200,s=new no(r.headers);if(e!==null&&!s.has("Content-Type")){let i=SB(e,this);i&&s.append("Content-Type",i)}this[gu]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:s,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[gu].type}get url(){return this[gu].url||""}get status(){return this[gu].status}get ok(){return this[gu].status>=200&&this[gu].status<300}get redirected(){return this[gu].counter>0}get statusText(){return this[gu].statusText}get headers(){return this[gu].headers}get highWaterMark(){return this[gu].highWaterMark}clone(){return new t(ab(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(e,r=302){if(!gI(r))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new t(null,{headers:{location:new URL(e).toString()},status:r})}static error(){let e=new t(null,{status:0,statusText:""});return e[gu].type="error",e}static json(e=void 0,r={}){let n=JSON.stringify(e);if(n===void 0)throw new TypeError("data is not JSON serializable");let s=new no(r&&r.headers);return s.has("content-type")||s.set("content-type","application/json"),new t(n,{...r,headers:s})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(wo.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var n8e,s8e=lr(()=>{n8e=t=>{if(t.search)return t.search;let e=t.href.length-1,r=t.hash||(t.href[e]==="#"?"#":"");return t.href[e-r.length]==="?"?"?":""}});function i8e(t,e=!1){return t==null||(t=new URL(t),/^(about|blob|data):$/.test(t.protocol))?"no-referrer":(t.username="",t.password="",t.hash="",e&&(t.pathname="",t.search=""),t)}function u8e(t){if(!o8e.has(t))throw new TypeError(`Invalid referrerPolicy: ${t}`);return t}function fir(t){if(/^(http|ws)s:$/.test(t.protocol))return!0;let e=t.host.replace(/(^\[)|(]$)/g,""),r=(0,a8e.isIP)(e);return r===4&&/^127\./.test(e)||r===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(e)?!0:t.host==="localhost"||t.host.endsWith(".localhost")?!1:t.protocol==="file:"}function ob(t){return/^about:(blank|srcdoc)$/.test(t)||t.protocol==="data:"||/^(blob|filesystem):$/.test(t.protocol)?!0:fir(t)}function l8e(t,{referrerURLCallback:e,referrerOriginCallback:r}={}){if(t.referrer==="no-referrer"||t.referrerPolicy==="")return null;let n=t.referrerPolicy;if(t.referrer==="about:client")return"no-referrer";let s=t.referrer,i=i8e(s),a=i8e(s,!0);i.toString().length>4096&&(i=a),e&&(i=e(i)),r&&(a=r(a));let o=new URL(t.url);switch(n){case"no-referrer":return"no-referrer";case"origin":return a;case"unsafe-url":return i;case"strict-origin":return ob(i)&&!ob(o)?"no-referrer":a.toString();case"strict-origin-when-cross-origin":return i.origin===o.origin?i:ob(i)&&!ob(o)?"no-referrer":a;case"same-origin":return i.origin===o.origin?i:"no-referrer";case"origin-when-cross-origin":return i.origin===o.origin?i:a;case"no-referrer-when-downgrade":return ob(i)&&!ob(o)?"no-referrer":i;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function d8e(t){let e=(t.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of e)n&&o8e.has(n)&&(r=n);return r}var a8e,o8e,c8e,LV=lr(()=>{a8e=require("node:net");o8e=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),c8e="strict-origin-when-cross-origin"});var f8e,p8e,ni,AI,pir,M0,m8e,h8e=lr(()=>{f8e=require("node:url"),p8e=require("node:util");CB();vB();xB();s8e();LV();ni=Symbol("Request internals"),AI=t=>typeof t=="object"&&typeof t[ni]=="object",pir=(0,p8e.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),M0=class t extends Nl{constructor(e,r={}){let n;if(AI(e)?n=new URL(e.url):(n=new URL(e),e={}),n.username!==""||n.password!=="")throw new TypeError(`${n} is an url with embedded credentials.`);let s=r.method||e.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(s)&&(s=s.toUpperCase()),!AI(r)&&"data"in r&&pir(),(r.body!=null||AI(e)&&e.body!==null)&&(s==="GET"||s==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let i=r.body?r.body:AI(e)&&e.body!==null?ab(e):null;super(i,{size:r.size||e.size||0});let a=new no(r.headers||e.headers||{});if(i!==null&&!a.has("Content-Type")){let u=SB(i,this);u&&a.set("Content-Type",u)}let o=AI(e)?e.signal:null;if("signal"in r&&(o=r.signal),o!=null&&!M5e(o))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let c=r.referrer==null?e.referrer:r.referrer;if(c==="")c="no-referrer";else if(c){let u=new URL(c);c=/^about:(\/\/)?client$/.test(u)?"client":u}else c=void 0;this[ni]={method:s,redirect:r.redirect||e.redirect||"follow",headers:a,parsedURL:n,signal:o,referrer:c},this.follow=r.follow===void 0?e.follow===void 0?20:e.follow:r.follow,this.compress=r.compress===void 0?e.compress===void 0?!0:e.compress:r.compress,this.counter=r.counter||e.counter||0,this.agent=r.agent||e.agent,this.highWaterMark=r.highWaterMark||e.highWaterMark||16384,this.insecureHTTPParser=r.insecureHTTPParser||e.insecureHTTPParser||!1,this.referrerPolicy=r.referrerPolicy||e.referrerPolicy||""}get method(){return this[ni].method}get url(){return(0,f8e.format)(this[ni].parsedURL)}get headers(){return this[ni].headers}get redirect(){return this[ni].redirect}get signal(){return this[ni].signal}get referrer(){if(this[ni].referrer==="no-referrer")return"";if(this[ni].referrer==="client")return"about:client";if(this[ni].referrer)return this[ni].referrer.toString()}get referrerPolicy(){return this[ni].referrerPolicy}set referrerPolicy(e){this[ni].referrerPolicy=u8e(e)}clone(){return new t(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(M0.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});m8e=t=>{let{parsedURL:e}=t[ni],r=new no(t[ni].headers);r.has("Accept")||r.set("Accept","*/*");let n=null;if(t.body===null&&/^(post|put)$/i.test(t.method)&&(n="0"),t.body!==null){let o=Z5e(t);typeof o=="number"&&!Number.isNaN(o)&&(n=String(o))}n&&r.set("Content-Length",n),t.referrerPolicy===""&&(t.referrerPolicy=c8e),t.referrer&&t.referrer!=="no-referrer"?t[ni].referrer=l8e(t):t[ni].referrer="no-referrer",t[ni].referrer instanceof URL&&r.set("Referer",t.referrer),r.has("User-Agent")||r.set("User-Agent","node-fetch"),t.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip, deflate, br");let{agent:s}=t;typeof s=="function"&&(s=s(e));let i=n8e(e),a={path:e.pathname+i,method:t.method,headers:r[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:t.insecureHTTPParser,agent:s};return{parsedURL:e,options:a}}});var yI,g8e=lr(()=>{AB();yI=class extends sf{constructor(e,r="aborted"){super(e,r)}}});var TB={};is(TB,{AbortError:()=>yI,Blob:()=>hu,FetchError:()=>ha,File:()=>D0,FormData:()=>B0,Headers:()=>no,Request:()=>M0,Response:()=>wo,blobFrom:()=>Q5e,blobFromSync:()=>H5e,default:()=>cb,fileFrom:()=>G5e,fileFromSync:()=>K5e,isRedirect:()=>gI});async function cb(t,e){return new Promise((r,n)=>{let s=new M0(t,e),{parsedURL:i,options:a}=m8e(s);if(!mir.has(i.protocol))throw new TypeError(`node-fetch cannot load ${t}. URL scheme "${i.protocol.replace(/:$/,"")}" is not supported.`);if(i.protocol==="data:"){let m=T5e(s.url),h=new wo(m,{headers:{"Content-Type":m.typeFull}});r(h);return}let o=(i.protocol==="https:"?y8e.default:A8e.default).request,{signal:c}=s,u=null,l=()=>{let m=new yI("The operation was aborted.");n(m),s.body&&s.body instanceof Ro.default.Readable&&s.body.destroy(m),!(!u||!u.body)&&u.body.emit("error",m)};if(c&&c.aborted){l();return}let d=()=>{l(),p()},f=o(i.toString(),a);c&&c.addEventListener("abort",d);let p=()=>{f.abort(),c&&c.removeEventListener("abort",d)};f.on("error",m=>{n(new ha(`request to ${s.url} failed, reason: ${m.message}`,"system",m)),p()}),hir(f,m=>{u&&u.body&&u.body.destroy(m)}),process.version<"v14"&&f.on("socket",m=>{let h;m.prependListener("end",()=>{h=m._eventsCount}),m.prependListener("close",A=>{if(u&&h<m._eventsCount&&!A){let g=new Error("Premature close");g.code="ERR_STREAM_PREMATURE_CLOSE",u.body.emit("error",g)}})}),f.on("response",m=>{f.setTimeout(0);let h=t8e(m.rawHeaders);if(gI(m.statusCode)){let x=h.get("Location"),v=null;try{v=x===null?null:new URL(x,s.url)}catch{if(s.redirect!=="manual"){n(new ha(`uri requested responds with an invalid redirect URL: ${x}`,"invalid-redirect")),p();return}}switch(s.redirect){case"error":n(new ha(`uri requested responds with a redirect, redirect mode is set to error: ${s.url}`,"no-redirect")),p();return;case"manual":break;case"follow":{if(v===null)break;if(s.counter>=s.follow){n(new ha(`maximum redirect reached at: ${s.url}`,"max-redirect")),p();return}let I={headers:new no(s.headers),follow:s.follow,counter:s.counter+1,agent:s.agent,compress:s.compress,method:s.method,body:ab(s),signal:s.signal,size:s.size,referrer:s.referrer,referrerPolicy:s.referrerPolicy};if(!W5e(s.url,v)||!$5e(s.url,v))for(let w of["authorization","www-authenticate","cookie","cookie2"])I.headers.delete(w);if(m.statusCode!==303&&s.body&&e.body instanceof Ro.default.Readable){n(new ha("Cannot follow redirect with body being a readable stream","unsupported-redirect")),p();return}(m.statusCode===303||(m.statusCode===301||m.statusCode===302)&&s.method==="POST")&&(I.method="GET",I.body=void 0,I.headers.delete("content-length"));let R=d8e(h);R&&(I.referrerPolicy=R),r(cb(new M0(v,I))),p();return}default:return n(new TypeError(`Redirect option '${s.redirect}' is not a valid value of RequestRedirect`))}}c&&m.once("end",()=>{c.removeEventListener("abort",d)});let A=(0,Ro.pipeline)(m,new Ro.PassThrough,x=>{x&&n(x)});process.version<"v12.10"&&m.on("aborted",d);let g={url:s.url,status:m.statusCode,statusText:m.statusMessage,headers:h,size:s.size,counter:s.counter,highWaterMark:s.highWaterMark},b=h.get("Content-Encoding");if(!s.compress||s.method==="HEAD"||b===null||m.statusCode===204||m.statusCode===304){u=new wo(A,g),r(u);return}let y={flush:Zh.default.Z_SYNC_FLUSH,finishFlush:Zh.default.Z_SYNC_FLUSH};if(b==="gzip"||b==="x-gzip"){A=(0,Ro.pipeline)(A,Zh.default.createGunzip(y),x=>{x&&n(x)}),u=new wo(A,g),r(u);return}if(b==="deflate"||b==="x-deflate"){let x=(0,Ro.pipeline)(m,new Ro.PassThrough,v=>{v&&n(v)});x.once("data",v=>{(v[0]&15)===8?A=(0,Ro.pipeline)(A,Zh.default.createInflate(),I=>{I&&n(I)}):A=(0,Ro.pipeline)(A,Zh.default.createInflateRaw(),I=>{I&&n(I)}),u=new wo(A,g),r(u)}),x.once("end",()=>{u||(u=new wo(A,g),r(u))});return}if(b==="br"){A=(0,Ro.pipeline)(A,Zh.default.createBrotliDecompress(),x=>{x&&n(x)}),u=new wo(A,g),r(u);return}u=new wo(A,g),r(u)}),e8e(f,s).catch(n)})}function hir(t,e){let r=xI.Buffer.from(`0\r
\r
`),n=!1,s=!1,i;t.on("response",a=>{let{headers:o}=a;n=o["transfer-encoding"]==="chunked"&&!o["content-length"]}),t.on("socket",a=>{let o=()=>{if(n&&!s){let u=new Error("Premature close");u.code="ERR_STREAM_PREMATURE_CLOSE",e(u)}},c=u=>{s=xI.Buffer.compare(u.slice(-5),r)===0,!s&&i&&(s=xI.Buffer.compare(i.slice(-3),r.slice(0,3))===0&&xI.Buffer.compare(u.slice(-2),r.slice(3))===0),i=u};a.prependListener("close",o),a.on("data",c),t.on("close",()=>{a.removeListener("close",o),a.removeListener("data",c)})})}var A8e,y8e,Zh,Ro,xI,mir,bI=lr(()=>{A8e=Re(require("node:http"),1),y8e=Re(require("node:https"),1),Zh=Re(require("node:zlib"),1),Ro=Re(require("node:stream"),1),xI=require("node:buffer");w5e();vB();r8e();CB();h8e();TV();g8e();BV();gB();xB();LV();NV();mir=new Set(["data:","http:","https:"])});function In(t){return gir[t]||t}function MV(t,e){if(!t)return()=>{};if(t.aborted)return e.abort(),()=>{};let r=()=>{e.abort()};return t.addEventListener("abort",r,{once:!0}),()=>{t.removeEventListener("abort",r)}}async function ge(t,e={}){let r=parseInt(e.retries||"0",10)||0,n=Array.isArray(e.validStatusCodes)?e.validStatusCodes:[],s;for(let a=0;a<=r;a++){let o=be.getStore()||"system";a>0?(_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${a} \u6B21\u91CD\u8BD5: ${t}`),s&&(s.cause?.code==="ETIMEDOUT"||s.cause?.code==="ECONNRESET"||s.name==="AbortError")?await new Promise(f=>setTimeout(f,100)):await new Promise(f=>setTimeout(f,Math.min(1e3*Math.pow(2,a-1),5e3)))):_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${t}`);let c=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,u=new AbortController,l=setTimeout(()=>u.abort(),c),d=MV(e.signal,u);try{let f;if(typeof WebAssembly>"u"){_("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let g=(await Promise.resolve().then(()=>(bI(),TB))).default;f=await g(t,{method:"GET",headers:{...e.headers},signal:u.signal})}else f=await fetch(t,{method:"GET",headers:{...e.headers},signal:u.signal});if(clearTimeout(l),!f.ok&&!n.includes(f.status))throw new Error(`HTTP error! status: ${f.status}`);let p;if(e.base64Data){_("info","[Utils] [HTTP] base64\u6A21\u5F0F");let g=await f.arrayBuffer(),b=new Uint8Array(g),y="",x=32768;for(let v=0;v<b.length;v+=x){let I=b.subarray(v,v+x);y+=String.fromCharCode.apply(null,I)}p=btoa(y)}else if(e.zlibMode){_("info","[Utils] [HTTP] zlib\u6A21\u5F0F");let g=await f.arrayBuffer(),b;if(typeof DecompressionStream<"u"){let y=new DecompressionStream("deflate"),x=new Response(new Blob([g]).stream().pipeThrough(y));try{b=await x.text()}catch(v){throw _("error",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u89E3\u538B\u7F29\u5931\u8D25`,v),v}}else{_("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528pako\u89E3\u538B");try{let x=(await import("pako")).inflate(new Uint8Array(g));b=new TextDecoder("utf-8").decode(x)}catch(y){throw _("error",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] pako\u89E3\u538B\u7F29\u5931\u8D25`,y),y}}p=b}else p=await f.text();let m;try{m=JSON.parse(p)}catch{m=p}let h={},A=[];for(let[g,b]of f.headers.entries())g.toLowerCase()==="set-cookie"?A.push(b):h[g]=b;return A.length>0&&(h["set-cookie"]=A.join(";")),a>0&&_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:m,status:f.status,headers:h}}catch(f){clearTimeout(l),s=f;let p=be.getStore()||"system";if(e.signal?.aborted)throw f;if(f.name==="AbortError"?(_("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,f.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u8D85\u65F6\u65F6\u95F4:",`${c}ms`),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`)):(_("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,f.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u9519\u8BEF\u7C7B\u578B:",f.name),_("error","- \u6D88\u606F:",f.message),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`),f.cause&&(_("error","- \u7801:",f.cause.code),_("error","- \u539F\u56E0:",f.cause.message))),a<r){_("info",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u51C6\u5907\u91CD\u8BD5...`);continue}}finally{d()}}let i=be.getStore()||"system";throw _("error",`[${i}] [\u8BF7\u6C42\u6A21\u62DF] \u6240\u6709\u91CD\u8BD5\u5747\u5931\u8D25 (${r+1} \u6B21\u5C1D\u8BD5)`),s}async function Kr(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=be.getStore()||"system";o>0?(_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${o} \u6B21\u91CD\u8BD5: ${t}`),i&&(i.cause?.code==="ETIMEDOUT"||i.cause?.code==="ECONNRESET"||i.name==="AbortError")?await new Promise(g=>setTimeout(g,100)):await new Promise(g=>setTimeout(g,Math.min(1e3*Math.pow(2,o-1),5e3)))):_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] HTTP POST: ${t}`);let u=parseInt(r.timeout||O.vodRequestTimeout||"5000",10)||5e3,l=new AbortController,d=setTimeout(()=>l.abort(),u),f=MV(r.signal,l),{headers:p={},params:m,allow_redirects:h=!0}=r,A={method:"POST",headers:{...p},body:e,signal:l.signal};h||(A.redirect="manual");try{let g;if(typeof WebAssembly>"u"){_("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let x=(await Promise.resolve().then(()=>(bI(),TB))).default;g=await x(t,A)}else g=await fetch(t,A);clearTimeout(d);let b=await g.text();if(!g.ok&&!s.includes(g.status))throw _("error",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] response data: `,b),new Error(`HTTP error! status: ${g.status}`);let y;try{y=JSON.parse(b)}catch{y=b}return o>0&&_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:y,status:g.status,headers:Object.fromEntries(g.headers.entries())}}catch(g){clearTimeout(d),i=g;let b=be.getStore()||"system";if(r.signal?.aborted)throw g;if(g.name==="AbortError"?(_("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,g.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u8D85\u65F6\u65F6\u95F4:",`${u}ms`),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`)):(_("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,g.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u9519\u8BEF\u7C7B\u578B:",g.name),_("error","- \u6D88\u606F:",g.message),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`),g.cause&&(_("error","- \u7801:",g.cause.code),_("error","- \u539F\u56E0:",g.cause.message))),o<n){_("info",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u51C6\u5907\u91CD\u8BD5...`);continue}}finally{f()}}let a=be.getStore()||"system";throw _("error",`[${a}] [\u8BF7\u6C42\u6A21\u62DF] \u6240\u6709\u91CD\u8BD5\u5747\u5931\u8D25 (${n+1} \u6B21\u5C1D\u8BD5)`),i}async function WV(t,e,r,n={}){let s=be.getStore()||"system";_("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 _("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=be.getStore()||"system";throw _("error",`[${u}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,c.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",e),_("error","- \u9519\u8BEF\u7C7B\u578B:",c.name),_("error","- \u6D88\u606F:",c.message),c.cause&&(_("error","- \u7801:",c.cause?.code),_("error","- \u539F\u56E0:",c.cause?.message)),c}}async function wB(t,e,r={}){return WV("PATCH",t,e,r)}async function b8e(t,e,r={}){return WV("PUT",t,e,r)}async function ub(t,e={}){return WV("DELETE",t,void 0,e)}async function E8e(t){try{let n=(await ge(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=be.getStore()||"system";return _("error",`[${r}] \u83B7\u53D6\u6807\u9898\u5931\u8D25: ${e.message}`),t}}function Le(t,e=200){return new Response(JSON.stringify(t),{status:e,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}function _8e(t,e=200){if(typeof t!="string"||!t.trim().startsWith("<?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 yi(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 EI(t={}){let e={};for(let[s,i]of Object.entries(t))typeof i=="boolean"?e[s]=i?"true":"false":i==null?e[s]="":e[s]=String(i);let r=[];for(let s in e)Object.prototype.hasOwnProperty.call(e,s)&&r.push(s);r.sort();let n=[];for(let s of r){let i=encodeURIComponent(s),a=encodeURIComponent(e[s]);n.push(`${i}=${a}`)}return n.join("&")}function lb(t,e){let r=t,n="",s=t.indexOf("#"),i="";s!==-1&&(r=t.substring(0,s),i=t.substring(s));let a=r.indexOf("?");a!==-1&&(n=r.substring(a+1),r=r.substring(0,a));let o={};if(n){let u=n.split("&");for(let l of u)if(l){let[d,f=""]=l.split("=").map(decodeURIComponent);o[d]=f}}for(let u in e)Object.prototype.hasOwnProperty.call(e,u)&&(o[u]=e[u]);let c=[];for(let u in o)Object.prototype.hasOwnProperty.call(o,u)&&c.push(`${encodeURIComponent(u)}=${encodeURIComponent(o[u])}`);return r+(c.length?"?"+c.join("&"):"")+i}function S8e(t){let e=t.indexOf("//")+2;e===1&&(e=0);let r=t.indexOf("/",e);if(r===-1)return"/";let n=t.indexOf("?",r),s=t.indexOf("#",r),i=n!==-1?n:s!==-1?s:t.length;return t.substring(r,i)||"/"}async function $V(t,e={},r){let{headers:n={},sniffLimit:s}=e,i=parseInt(s||"32768",10)||32768,a=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,o=new AbortController,c=setTimeout(()=>o.abort(),a),u=MV(e.signal,o);try{let l=be.getStore()||"system";_("info",`[${l}] [\u6D41\u5F0F\u8BF7\u6C42] HTTP GET: ${t}`);let d=await fetch(t,{method:"GET",headers:n,signal:o.signal});if(!d.ok)throw new Error(`HTTP error! status: ${d.status}`);let f=d.body.getReader?d.body.getReader():null;if(!f){let v=be.getStore()||"system";_("warn",`[${v}] [\u6D41\u5F0F\u8BF7\u6C42] \u73AF\u5883\u4E0D\u652F\u6301\u6D41\u5F0F\u8BFB\u53D6,\u56DE\u9000\u5230\u666E\u901A\u8BF7\u6C42`);let I=await d.text();if(clearTimeout(c),r&&!r(I.slice(0,i)))return _("info",`[${v}] [\u6D41\u5F0F\u8BF7\u6C42] \u68C0\u6D4B\u5230\u65E0\u6548\u6570\u636E(\u56DE\u9000\u6A21\u5F0F),\u4E22\u5F03\u7ED3\u679C`),null;try{return JSON.parse(I)}catch{return I}}let p=0,m=[],h=!1,A="",g=!1;for(;;){let{done:v,value:I}=await f.read();if(v)break;if(p+=I.length,!g&&r){let R=new TextDecoder("utf-8").decode(I,{stream:!0});if(A+=R,!r(A)){let w=be.getStore()||"system";_("info",`[${w}] [\u6D41\u5F0F\u8BF7\u6C42] \u55C5\u63A2\u5230\u65E0\u6548\u7279\u5F81(\u5DF2\u8BFB${p}\u5B57\u8282),\u7ACB\u5373\u7194\u65AD`),o.abort(),h=!0;break}p>i&&(g=!0,A=null)}m.push(I)}if(clearTimeout(c),h)return null;let b=new Uint8Array(p),y=0;for(let v of m)b.set(v,y),y+=v.length;let x=new TextDecoder("utf-8").decode(b);try{return JSON.parse(x)}catch{return x}}catch(l){let d=be.getStore()||"system";return clearTimeout(c),l.name==="AbortError"||_("error",`[${d}] [\u6D41\u5F0F\u8BF7\u6C42] \u5931\u8D25: ${l.message}`),null}finally{u()}}var x8e,be,gir,ir=lr(()=>{Ot();_t();x8e=require("node:async_hooks"),be=new x8e.AsyncLocalStorage,gir={360:"360kan",imgo:"mango"}});function an(t){let e=0;for(let r=0;r<t.length;r++){let n=t.charCodeAt(r);e=(e<<5)-e+n,e=e>>>0}return e.toString(16)}function db(t,e){return t==="lastSelectMap"&&e instanceof Map?JSON.stringify(Object.fromEntries(e)):JSON.stringify(e)}function Ls(t){function e(y){let x="";for(let v=0;v<y.length;v++){let I=y.charCodeAt(v);I<128?x+=String.fromCharCode(I):I<2048?(x+=String.fromCharCode(192|I>>6),x+=String.fromCharCode(128|I&63)):(x+=String.fromCharCode(224|I>>12),x+=String.fromCharCode(128|I>>6&63),x+=String.fromCharCode(128|I&63))}return x}t=e(t);function r(y,x){return y<<x|y>>>32-x}function n(y,x){let v=y&1073741824,I=x&1073741824,R=y&2147483648,w=x&2147483648,N=(y&1073741823)+(x&1073741823);return v&I?N^2147483648^R^w:v|I?N&1073741824?N^3221225472^R^w:N^1073741824^R^w:N^R^w}function s(y,x,v){return y&x|~y&v}function i(y,x,v){return y&v|x&~v}function a(y,x,v){return y^x^v}function o(y,x,v){return x^(y|~v)}function c(y,x,v,I,R,w,N){return y=n(y,n(n(s(x,v,I),R),N)),n(r(y,w),x)}function u(y,x,v,I,R,w,N){return y=n(y,n(n(i(x,v,I),R),N)),n(r(y,w),x)}function l(y,x,v,I,R,w,N){return y=n(y,n(n(a(x,v,I),R),N)),n(r(y,w),x)}function d(y,x,v,I,R,w,N){return y=n(y,n(n(o(x,v,I),R),N)),n(r(y,w),x)}function f(y){let x=y.length,v=((x+8>>>6)+1)*16,I=new Array(v).fill(0);for(let R=0;R<x;R++)I[R>>2]|=y.charCodeAt(R)<<R%4*8;return I[x>>2]|=128<<x%4*8,I[v-2]=x*8,I}function p(y){let x="";for(let v=0;v<=3;v++){let R="0"+(y>>>v*8&255).toString(16);x+=R.substr(R.length-2,2)}return x}let m=f(t),h=1732584193,A=4023233417,g=2562383102,b=271733878;for(let y=0;y<m.length;y+=16){let x=h,v=A,I=g,R=b;h=c(h,A,g,b,m[y+0],7,3614090360),b=c(b,h,A,g,m[y+1],12,3905402710),g=c(g,b,h,A,m[y+2],17,606105819),A=c(A,g,b,h,m[y+3],22,3250441966),h=c(h,A,g,b,m[y+4],7,4118548399),b=c(b,h,A,g,m[y+5],12,1200080426),g=c(g,b,h,A,m[y+6],17,2821735955),A=c(A,g,b,h,m[y+7],22,4249261313),h=c(h,A,g,b,m[y+8],7,1770035416),b=c(b,h,A,g,m[y+9],12,2336552879),g=c(g,b,h,A,m[y+10],17,4294925233),A=c(A,g,b,h,m[y+11],22,2304563134),h=c(h,A,g,b,m[y+12],7,1804603682),b=c(b,h,A,g,m[y+13],12,4254626195),g=c(g,b,h,A,m[y+14],17,2792965006),A=c(A,g,b,h,m[y+15],22,1236535329),h=u(h,A,g,b,m[y+1],5,4129170786),b=u(b,h,A,g,m[y+6],9,3225465664),g=u(g,b,h,A,m[y+11],14,643717713),A=u(A,g,b,h,m[y+0],20,3921069994),h=u(h,A,g,b,m[y+5],5,3593408605),b=u(b,h,A,g,m[y+10],9,38016083),g=u(g,b,h,A,m[y+15],14,3634488961),A=u(A,g,b,h,m[y+4],20,3889429448),h=u(h,A,g,b,m[y+9],5,568446438),b=u(b,h,A,g,m[y+14],9,3275163606),g=u(g,b,h,A,m[y+3],14,4107603335),A=u(A,g,b,h,m[y+8],20,1163531501),h=u(h,A,g,b,m[y+13],5,2850285829),b=u(b,h,A,g,m[y+2],9,4243563512),g=u(g,b,h,A,m[y+7],14,1735328473),A=u(A,g,b,h,m[y+12],20,2368359562),h=l(h,A,g,b,m[y+5],4,4294588738),b=l(b,h,A,g,m[y+8],11,2272392833),g=l(g,b,h,A,m[y+11],16,1839030562),A=l(A,g,b,h,m[y+14],23,4259657740),h=l(h,A,g,b,m[y+1],4,2763975236),b=l(b,h,A,g,m[y+4],11,1272893353),g=l(g,b,h,A,m[y+7],16,4139469664),A=l(A,g,b,h,m[y+10],23,3200236656),h=l(h,A,g,b,m[y+13],4,681279174),b=l(b,h,A,g,m[y+0],11,3936430074),g=l(g,b,h,A,m[y+3],16,3572445317),A=l(A,g,b,h,m[y+6],23,76029189),h=l(h,A,g,b,m[y+9],4,3654602809),b=l(b,h,A,g,m[y+12],11,3873151461),g=l(g,b,h,A,m[y+15],16,530742520),A=l(A,g,b,h,m[y+2],23,3299628645),h=d(h,A,g,b,m[y+0],6,4096336452),b=d(b,h,A,g,m[y+7],10,1126891415),g=d(g,b,h,A,m[y+14],15,2878612391),A=d(A,g,b,h,m[y+5],21,4237533241),h=d(h,A,g,b,m[y+12],6,1700485571),b=d(b,h,A,g,m[y+3],10,2399980690),g=d(g,b,h,A,m[y+10],15,4293915773),A=d(A,g,b,h,m[y+1],21,2240044497),h=d(h,A,g,b,m[y+8],6,1873313359),b=d(b,h,A,g,m[y+15],10,4264355552),g=d(g,b,h,A,m[y+6],15,2734768916),A=d(A,g,b,h,m[y+13],21,1309151649),h=d(h,A,g,b,m[y+4],6,4149444226),b=d(b,h,A,g,m[y+11],10,3174756917),g=d(g,b,h,A,m[y+2],15,718787259),A=d(A,g,b,h,m[y+9],21,3951481745),h=n(h,x),A=n(A,v),g=n(g,I),b=n(b,R)}return(p(h)+p(A)+p(g)+p(b)).toLowerCase()}function T8e(t){let e=vI(t),r=[],n=0;for(;n<e.length&&e[n++]===10;){let[i,a]=v8e(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,p]=qV(i,o);switch(o=p,l){case 1:c.id=f;break;case 2:c.progress=f;break;case 3:c.mode=f;break;case 4:c.fontsize=f;break;case 5:c.color=f;break;case 8:c.ctime=f;break;case 9:c.weight=f;break;case 11:c.pool=f;break;case 13:c.attr=f;break;case 15:c.like_num=f;break;case 17:c.dm_type_v2=f;break}}else if(d===2){let[f,p]=v8e(i,o);switch(o=p,l){case 6:c.midHash=Cc(f);break;case 7:c.content=Cc(f);break;case 10:c.action=Cc(f);break;case 12:c.idStr=Cc(f);break;case 14:c.animation=Cc(f);break;case 16:c.color_v2=Cc(f);break}}else{let[f,p]=qV(i,o);o=p}}r.push(c)}return r}function qV(t,e){let r=0n,n=0n,s=e;for(;;){let i=t[s++];if(r|=BigInt(i&127)<<n,!(i&128))break;n+=7n}return[Number(r),s]}function v8e(t,e){let[r,n]=qV(t,e),s=n,i=s+r;return[t.slice(s,i),i]}function Yr(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 I8e(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 yir(t){return Uint8Array.from([t[1],t[2],t[3],t[0]])}function RB(t){return Uint8Array.from(t.map(e=>w8e[e]))}function NB(t){let s=new Array(44);for(let i=0;i<4;i++)s[i]=t.slice(4*i,4*i+4);for(let i=4;i<4*11;i++){let a=s[i-1];i%4===0&&(a=I8e(RB(yir(a)),Uint8Array.from([Air[i/4],0,0,0]))),s[i]=I8e(s[i-4],a)}return s}function xir(t,e){let s=new Uint8Array(t);s=FV(s,e.slice(10*4,11*4));for(let i=9;i>=1;i--)s=SI(s),s=_I(s),s=FV(s,e.slice(i*4,(i+1)*4)),s=bir(s);return s=SI(s),s=_I(s),s=FV(s,e.slice(0,4)),s}function FV(t,e){let r=new Uint8Array(16);for(let n=0;n<4;n++)for(let s=0;s<4;s++)r[s+4*n]=t[s+4*n]^e[n][s];return r}function _I(t){let e=new Array(256);for(let r=0;r<256;r++)e[w8e[r]]=r;return Uint8Array.from(t.map(r=>e[r]))}function SI(t){let e=new Uint8Array(16);for(let r=0;r<4;r++)for(let n=0;n<4;n++)e[r+4*n]=t[r+4*((n-r+4)%4)];return e}function bir(t){function e(n,s){let i=0;for(let a=0;a<8;a++){s&1&&(i^=n);let o=n&128;n=n<<1&255,o&&(n^=27),s>>=1}return i}let r=new Uint8Array(16);for(let n=0;n<4;n++){let s=t.slice(4*n,4*n+4);r[4*n+0]=e(s[0],14)^e(s[1],11)^e(s[2],13)^e(s[3],9),r[4*n+1]=e(s[0],9)^e(s[1],14)^e(s[2],11)^e(s[3],13),r[4*n+2]=e(s[0],13)^e(s[1],9)^e(s[2],14)^e(s[3],11),r[4*n+3]=e(s[0],11)^e(s[1],13)^e(s[2],9)^e(s[3],14)}return r}function Eir(t,e){let r=NB(e),n=16,s=new Uint8Array(t.length);for(let i=0;i<t.length;i+=n){let a=t.slice(i,i+n),o=xir(a,r);s.set(o,i)}return s}function _ir(t){let e=t[t.length-1];return t.slice(0,t.length-e)}function vI(t){let e=typeof atob=="function"?atob(t):Sir(t),r=e.length,n=new Uint8Array(r);for(let s=0;s<r;s++)n[s]=e.charCodeAt(s);return n}function Sir(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 Cc(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 eg(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 vir(t,e){try{let r=vI(t),n=eg(e),s=Eir(r,n),i=_ir(s);return Cc(i)}catch(r){return _("error","[Utils] [Codec]",r),null}}function II(t){let e=typeof t=="string"?t.trim():JSON.stringify(t??"");try{return JSON.parse(e)}catch{}let n=vir(e,"3b744389882a4067");if(n!=null)try{return JSON.parse(n)}catch{return n}return e}function Iir(t){let e=[];for(let r=0;r<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 OB(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 UV(t){function e(u,l){return l>>>u|l<<32-u}let r=Math.pow(2,32),n=[],s=t.length*8;for(let u=0;u<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],p=a[3],m=a[4],h=a[5],A=a[6],g=a[7];for(let b=0;b<64;b++){if(b<16)i[b]=n[u+b]|0;else{let N=e(7,i[b-15])^e(18,i[b-15])^i[b-15]>>>3,P=e(17,i[b-2])^e(19,i[b-2])^i[b-2]>>>10;i[b]=i[b-16]+N+i[b-7]+P|0}let y=e(6,m)^e(11,m)^e(25,m),x=m&h^~m&A,v=g+y+x+o[b]+i[b]|0,I=e(2,l)^e(13,l)^e(22,l),R=l&d^l&f^d&f,w=I+R|0;g=A,A=h,h=m,m=p+v|0,p=f,f=d,d=l,l=v+w|0}a[0]=a[0]+l|0,a[1]=a[1]+d|0,a[2]=a[2]+f|0,a[3]=a[3]+p|0,a[4]=a[4]+m|0,a[5]=a[5]+h|0,a[6]=a[6]+A|0,a[7]=a[7]+g|0}let c=[];for(let u of a)c.push(u>>24&255),c.push(u>>16&255),c.push(u>>8&255),c.push(u&255);return c}function R8e(t,e){let n=Iir(t);n.length>64&&(n=UV(t)),n.length<64&&(n=n.concat(Array(64-n.length).fill(0)));let s=n.map(c=>c^92),i=n.map(c=>c^54),a=UV(String.fromCharCode(...i)+e),o=UV(String.fromCharCode(...s)+String.fromCharCode(...a));return OB(o)}function CI(t,e,r,n){let s=t+"t"+e;return r&&Object.keys(r).sort().forEach(a=>{s+=a+r[a]}),s+=n,Ls(s)}function C8e(t){if(t<=65535)return String.fromCharCode(t);t-=65536;let e=(t>>10)+55296,r=(t&1023)+56320;return String.fromCharCode(e,r)}function of(t){if(!t)return t;let e={"&lt;":"<","&gt;":">","&amp;":"&","&quot;":'"',"&apos;":"'"};return t.replace(/&[a-zA-Z]+;/g,r=>e[r]||r).replace(/&#(\d+);/g,(r,n)=>C8e(parseInt(n,10))).replace(/&#x([0-9a-fA-F]+);/g,(r,n)=>C8e(parseInt(n,16)))}var w8e,Air,Ts=lr(()=>{_t();w8e=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],Air=[0,1,2,4,8,16,32,64,128,27,54]});var O8e={};is(O8e,{getRedisCaches:()=>QV,getRedisKey:()=>Cir,judgeRedisValid:()=>GV,pingRedis:()=>N8e,runPipeline:()=>HV,setRedisKey:()=>jV,setRedisKeyWithExpiry:()=>Tir,updateRedisCaches:()=>PB});async function N8e(){let t=`${O.redisUrl}/ping`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PING \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(e){_("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",e.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",e.name),e.cause&&(_("error","- [Utils] [Redis] \u7801:",e.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",e.cause.message))}}async function Cir(t){let e=`${O.redisUrl}/get/${t}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 GET \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(r){_("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",r.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(_("error","- [Utils] [Redis] \u7801:",r.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function jV(t,e){let r=db(t,e),n=an(r);if(O.lastHashes[t]===n)return _("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};let s=`${O.redisUrl}/set/${t}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SET \u8BF7\u6C42:",s);try{let a=await(await fetch(s,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:r})).json();return O.lastHashes[t]=n,_("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),a}catch(i){_("error","[Utils] [Redis] SET \u8BF7\u6C42\u5931\u8D25:",i.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",i.name),i.cause&&(_("error","- [Utils] [Redis] \u7801:",i.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",i.cause.message))}}async function Tir(t,e,r){let n=db(t,e),s=an(n);if(O.lastHashes[t]===s)return _("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};let i=`${O.redisUrl}/set/${t}?EX=${r}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SETEX \u8BF7\u6C42:",i);try{let o=await(await fetch(i,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:n})).json();return O.lastHashes[t]=s,_("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),o}catch(a){_("error","[Utils] [Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",a.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",a.name),a.cause&&(_("error","- [Utils] [Redis] \u7801:",a.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",a.cause.message))}}async function HV(t){let e=`${O.redisUrl}/pipeline`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PIPELINE \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:JSON.stringify(t)})).json()}catch(r){_("error","[Utils] [Redis] Pipeline \u8BF7\u6C42\u5931\u8D25:",r.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(_("error","- [Utils] [Redis] \u7801:",r.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function QV(){if(!O.redisCacheInitialized)try{_("info","[Utils] [Redis] getRedisCaches start.");let e=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"].map(s=>["GET",s]),r=await HV(e);O.animes=r[0].result?JSON.parse(r[0].result):O.animes,O.episodeIds=r[1].result?JSON.parse(r[1].result):O.episodeIds,O.episodeNum=r[2].result?JSON.parse(r[2].result):O.episodeNum,O.reqRecords=r[3].result?JSON.parse(r[3].result):O.reqRecords;let n=r[4].result?JSON.parse(r[4].result):null;n&&typeof n=="object"&&(O.lastSelectMap=new Map(Object.entries(n)),_("info",`[Utils] [Redis] Restored lastSelectMap from Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=r[5].result?parseInt(r[5].result,10):O.todayReqNum,O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.redisCacheInitialized=!0,_("info","[Utils] [Redis] getRedisCaches completed successfully.")}catch(t){_("error",`[Utils] [Redis] getRedisCaches failed: ${t.message}`,t.stack),O.redisCacheInitialized=!0}}async function PB(){try{_("info","[Utils] [Redis] updateCaches start.");let t=[],e=[],r=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:n,value:s}of r){let i=JSON.stringify(n==="lastSelectMap"?Object.fromEntries(s):s),a=an(i);a!==O.lastHashes[n]&&(t.push(["SET",n,i]),e.push({key:n,hash:a}))}if(t.length>0){_("info",`[Utils] [Redis] Updating ${t.length} changed keys: ${e.map(a=>a.key).join(", ")}`);let n=await HV(t),s=0,i=0;Array.isArray(n)&&n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,_("warn",`[Utils] [Redis] Failed to update Redis key: ${e[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(e.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),_("info",`[Utils] [Redis] Redis update completed successfully: ${s} keys updated`)):_("warn",`[Utils] [Redis] Redis update partially failed: ${s} succeeded, ${i} failed`)}else _("info","[Utils] [Redis] No changes detected, skipping Redis update.")}catch(t){_("error",`[Utils] [Redis] updateRedisCaches failed: ${t.message}`,t.stack),_("error",`[Utils] [Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function GV(t){if(!O.redisValid&&O.redisUrl&&O.redisToken&&t!=="/favicon.ico"&&t!=="/robots.txt"){let e=await N8e();e&&e.result&&e.result==="PONG"&&(O.redisValid=!0)}}var kB=lr(()=>{Ot();_t();Ts()});function P8e(){return"\u9515\u7691\u853C\u788D\u7231\u55F3\u5AD2\u7477\u66A7\u972D\u8C19\u94F5\u9E4C\u80AE\u8884\u5965\u5AAA\u9A9C\u9CCC\u575D\u7F62\u94AF\u6446\u8D25\u5457\u9881\u529E\u7ECA\u94A3\u5E2E\u7ED1\u9551\u8C24\u5265\u9971\u5B9D\u62A5\u9C8D\u9E28\u9F85\u8F88\u8D1D\u94A1\u72C8\u5907\u60EB\u9E4E\u8D32\u951B\u7EF7\u7B14\u6BD5\u6BD9\u5E01\u95ED\u835C\u54D4\u6ED7\u94CB\u7B5A\u8DF8\u8FB9\u7F16\u8D2C\u53D8\u8FA9\u8FAB\u82C4\u7F0F\u7B3E\u6807\u9AA0\u98D1\u98D9\u9556\u9573\u9CD4\u9CD6\u522B\u762A\u6FD2\u6EE8\u5BBE\u6448\u50A7\u7F24\u69DF\u6BA1\u8191\u9554\u9ACC\u9B13\u997C\u7980\u62E8\u94B5\u94C2\u9A73\u997D\u94B9\u9E41\u8865\u94B8\u8D22\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u9A96\u9EEA\u82CD\u8231\u4ED3\u6CA7\u5395\u4FA7\u518C\u6D4B\u607B\u5C42\u8BE7\u9538\u4FAA\u9497\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u5181\u8C04\u8C36\u8487\u5FCF\u5A75\u9AA3\u89C7\u7985\u9561\u573A\u5C1D\u957F\u507F\u80A0\u5382\u7545\u4F25\u82CC\u6005\u960A\u9CB3\u949E\u8F66\u5F7B\u7817\u5C18\u9648\u886C\u4F27\u8C0C\u6987\u789C\u9F80\u6491\u79F0\u60E9\u8BDA\u9A8B\u67A8\u67FD\u94D6\u94DB\u75F4\u8FDF\u9A70\u803B\u9F7F\u70BD\u996C\u9E31\u51B2\u51B2\u866B\u5BA0\u94F3\u7574\u8E0C\u7B79\u7EF8\u4FE6\u5E31\u96E0\u6A71\u53A8\u9504\u96CF\u7840\u50A8\u89E6\u5904\u520D\u7ECC\u8E70\u4F20\u948F\u75AE\u95EF\u521B\u6006\u9524\u7F0D\u7EAF\u9E51\u7EF0\u8F8D\u9F8A\u8F9E\u8BCD\u8D50\u9E5A\u806A\u8471\u56F1\u4ECE\u4E1B\u82C1\u9AA2\u679E\u51D1\u8F8F\u8E7F\u7A9C\u64BA\u9519\u9509\u9E7E\u8FBE\u54D2\u9791\u5E26\u8D37\u9A80\u7ED0\u62C5\u5355\u90F8\u63B8\u80C6\u60EE\u8BDE\u5F39\u6B9A\u8D55\u7605\u7BAA\u5F53\u6321\u515A\u8361\u6863\u8C20\u7800\u88C6\u6363\u5C9B\u7977\u5BFC\u76D7\u7118\u706F\u9093\u956B\u654C\u6DA4\u9012\u7F14\u7C74\u8BCB\u8C1B\u7EE8\u89CC\u955D\u98A0\u70B9\u57AB\u7535\u5DC5\u94BF\u766B\u9493\u8C03\u94EB\u9CB7\u8C0D\u53E0\u9CBD\u9489\u9876\u952D\u8BA2\u94E4\u4E22\u94E5\u4E1C\u52A8\u680B\u51BB\u5CBD\u9E2B\u7AA6\u728A\u72EC\u8BFB\u8D4C\u9540\u6E0E\u691F\u724D\u7B03\u9EE9\u953B\u65AD\u7F0E\u7C16\u5151\u961F\u5BF9\u603C\u9566\u5428\u987F\u949D\u7096\u8DB8\u593A\u5815\u94CE\u9E45\u989D\u8BB9\u6076\u997F\u8C14\u57A9\u960F\u8F6D\u9507\u9537\u9E57\u989A\u989B\u9CC4\u8BF6\u513F\u5C14\u9975\u8D30\u8FE9\u94D2\u9E38\u9C95\u53D1\u7F5A\u9600\u73D0\u77FE\u9492\u70E6\u8D29\u996D\u8BBF\u7EBA\u94AB\u9C82\u98DE\u8BFD\u5E9F\u8D39\u7EEF\u9544\u9CB1\u7EB7\u575F\u594B\u6124\u7CAA\u507E\u4E30\u67AB\u950B\u98CE\u75AF\u51AF\u7F1D\u8BBD\u51E4\u6CA3\u80A4\u8F90\u629A\u8F85\u8D4B\u590D\u8D1F\u8BA3\u5987\u7F1A\u51EB\u9A78\u7EC2\u7ECB\u8D59\u9EB8\u9C8B\u9CC6\u9486\u8BE5\u9499\u76D6\u8D45\u6746\u8D76\u79C6\u8D63\u5C34\u64C0\u7EC0\u5188\u521A\u94A2\u7EB2\u5C97\u6206\u9550\u777E\u8BF0\u7F1F\u9506\u6401\u9E3D\u9601\u94EC\u4E2A\u7EA5\u9549\u988D\u7ED9\u4E98\u8D53\u7EE0\u9CA0\u9F9A\u5BAB\u5DE9\u8D21\u94A9\u6C9F\u82DF\u6784\u8D2D\u591F\u8BDF\u7F11\u89CF\u86CA\u987E\u8BC2\u6BC2\u94B4\u9522\u9E2A\u9E44\u9E58\u5250\u6302\u9E39\u63B4\u5173\u89C2\u9986\u60EF\u8D2F\u8BD6\u63BC\u9E73\u9CCF\u5E7F\u72B7\u89C4\u5F52\u9F9F\u95FA\u8F68\u8BE1\u8D35\u523D\u5326\u523F\u59AB\u6867\u9C91\u9CDC\u8F8A\u6EDA\u886E\u7EF2\u9CA7\u9505\u56FD\u8FC7\u57DA\u5459\u5E3C\u6901\u8748\u94EA\u9A87\u97E9\u6C49\u961A\u7ED7\u9889\u53F7\u704F\u98A2\u9602\u9E64\u8D3A\u8BC3\u9616\u86CE\u6A2A\u8F70\u9E3F\u7EA2\u9EC9\u8BA7\u836D\u95F3\u9C8E\u58F6\u62A4\u6CAA\u6237\u6D52\u9E55\u54D7\u534E\u753B\u5212\u8BDD\u9A85\u6866\u94E7\u6000\u574F\u6B22\u73AF\u8FD8\u7F13\u6362\u5524\u75EA\u7115\u6DA3\u5942\u7F33\u953E\u9CA9\u9EC4\u8C0E\u9CC7\u6325\u8F89\u6BC1\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8BD9\u835F\u54D5\u6D4D\u7F0B\u73F2\u6656\u8364\u6D51\u8BE8\u9984\u960D\u83B7\u8D27\u7978\u94AC\u956C\u51FB\u673A\u79EF\u9965\u8FF9\u8BA5\u9E21\u7EE9\u7F09\u6781\u8F91\u7EA7\u6324\u51E0\u84DF\u5242\u6D4E\u8BA1\u8BB0\u9645\u7EE7\u7EAA\u8BA6\u8BD8\u8360\u53FD\u54DC\u9AA5\u7391\u89CA\u9F51\u77F6\u7F81\u867F\u8DFB\u9701\u9C9A\u9CAB\u5939\u835A\u988A\u8D3E\u94BE\u4EF7\u9A7E\u90CF\u6D43\u94D7\u9553\u86F2\u6B7C\u76D1\u575A\u7B3A\u95F4\u8270\u7F04\u8327\u68C0\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u8C0F\u7F23\u620B\u622C\u7751\u9E63\u7B15\u9CA3\u97AF\u5C06\u6D46\u848B\u6868\u5956\u8BB2\u9171\u7EDB\u7F30\u80F6\u6D47\u9A84\u5A07\u6405\u94F0\u77EB\u4FA5\u811A\u997A\u7F34\u7EDE\u8F7F\u8F83\u6322\u5CE4\u9E6A\u9C9B\u9636\u8282\u6D01\u7ED3\u8BEB\u5C4A\u7596\u988C\u9C92\u7D27\u9526\u4EC5\u8C28\u8FDB\u664B\u70EC\u5C3D\u52B2\u8346\u830E\u537A\u8369\u9991\u7F19\u8D46\u89D0\u9CB8\u60CA\u7ECF\u9888\u9759\u955C\u5F84\u75C9\u7ADE\u51C0\u522D\u6CFE\u8FF3\u5F2A\u80EB\u9753\u7EA0\u53A9\u65E7\u9604\u9E20\u9E6B\u9A79\u4E3E\u636E\u952F\u60E7\u5267\u8BB5\u5C66\u6989\u98D3\u949C\u9514\u7AAD\u9F83\u9E43\u7EE2\u9529\u954C\u96BD\u89C9\u51B3\u7EDD\u8C32\u73CF\u94A7\u519B\u9A8F\u76B2\u5F00\u51EF\u5240\u57B2\u5FFE\u607A\u94E0\u9534\u9F9B\u95F6\u94AA\u94D0\u9897\u58F3\u8BFE\u9A92\u7F02\u8F72\u94B6\u951E\u9894\u57A6\u6073\u9F88\u94FF\u62A0\u5E93\u88E4\u55BE\u5757\u4FA9\u90D0\u54D9\u810D\u5BBD\u72EF\u9ACB\u77FF\u65F7\u51B5\u8BD3\u8BF3\u909D\u5739\u7EA9\u8D36\u4E8F\u5CBF\u7AA5\u9988\u6E83\u532E\u8489\u6126\u8069\u7BD1\u9603\u951F\u9CB2\u6269\u9614\u86F4\u8721\u814A\u83B1\u6765\u8D56\u5D03\u5F95\u6D9E\u6FD1\u8D49\u7750\u94FC\u765E\u7C41\u84DD\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u5C9A\u6984\u6593\u9567\u8934\u7405\u9606\u9512\u635E\u52B3\u6D9D\u5520\u5D02\u94D1\u94F9\u75E8\u4E50\u9CD3\u956D\u5792\u7C7B\u6CEA\u8BD4\u7F27\u7BF1\u72F8\u79BB\u9CA4\u793C\u4E3D\u5389\u52B1\u783E\u5386\u6CA5\u96B6\u4FEA\u90E6\u575C\u82C8\u8385\u84E0\u5456\u9026\u9A8A\u7F21\u67A5\u680E\u8F79\u783A\u9502\u9E42\u75A0\u7C9D\u8DDE\u96F3\u9CA1\u9CE2\u4FE9\u8054\u83B2\u8FDE\u9570\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u8539\u5941\u6F4B\u740F\u6B93\u88E2\u88E3\u9CA2\u7CAE\u51C9\u4E24\u8F86\u8C05\u9B49\u7597\u8FBD\u9563\u7F2D\u948C\u9E69\u730E\u4E34\u90BB\u9CDE\u51DB\u8D41\u853A\u5EEA\u6AA9\u8F9A\u8E8F\u9F84\u94C3\u7075\u5CAD\u9886\u7EEB\u68C2\u86CF\u9CAE\u998F\u5218\u6D4F\u9A9D\u7EFA\u954F\u9E68\u9F99\u804B\u5499\u7B3C\u5784\u62E2\u9647\u830F\u6CF7\u73D1\u680A\u80E7\u783B\u697C\u5A04\u6402\u7BD3\u507B\u848C\u55BD\u5D5D\u9542\u7618\u8027\u877C\u9AC5\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u8D42\u7984\u5F55\u9646\u5786\u64B8\u565C\u95FE\u6CF8\u6E0C\u680C\u6A79\u8F73\u8F82\u8F98\u6C07\u80EA\u9E2C\u9E6D\u823B\u9C88\u5CE6\u631B\u5B6A\u6EE6\u4E71\u8114\u5A08\u683E\u9E3E\u92AE\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u56F5\u841D\u7F57\u903B\u9523\u7BA9\u9AA1\u9A86\u7EDC\u8366\u7321\u6CFA\u6924\u8136\u9559\u9A74\u5415\u94DD\u4FA3\u5C61\u7F15\u8651\u6EE4\u7EFF\u6988\u891B\u950A\u5452\u5988\u739B\u7801\u8682\u9A6C\u9A82\u5417\u551B\u5B37\u6769\u4E70\u9EA6\u5356\u8FC8\u8109\u52A2\u7792\u9992\u86EE\u6EE1\u8C29\u7F26\u9558\u98A1\u9CD7\u732B\u951A\u94C6\u8D38\u4E48\u6CA1\u9541\u95E8\u95F7\u4EEC\u626A\u7116\u61D1\u9494\u9530\u68A6\u772F\u8C1C\u5F25\u89C5\u5E42\u8288\u8C27\u7315\u7962\u7EF5\u7F05\u6E11\u817C\u9EFE\u5E99\u7F08\u7F2A\u706D\u60AF\u95FD\u95F5\u7F17\u9E23\u94ED\u8C2C\u8C1F\u84E6\u998D\u6B81\u9546\u8C0B\u4EA9\u94BC\u5450\u94A0\u7EB3\u96BE\u6320\u8111\u607C\u95F9\u94D9\u8BB7\u9981\u5185\u62DF\u817B\u94CC\u9CB5\u64B5\u8F87\u9CB6\u917F\u9E1F\u8311\u8885\u8042\u556E\u954A\u954D\u9667\u8616\u55EB\u989F\u8E51\u67E0\u72DE\u5B81\u62E7\u6CDE\u82CE\u549B\u804D\u94AE\u7EBD\u8113\u6D53\u519C\u4FAC\u54DD\u9A7D\u9495\u8BFA\u50A9\u759F\u6B27\u9E25\u6BB4\u5455\u6CA4\u8BB4\u6004\u74EF\u76D8\u8E52\u5E9E\u629B\u75B1\u8D54\u8F94\u55B7\u9E4F\u7EB0\u7F74\u94CD\u9A97\u8C1D\u9A88\u98D8\u7F25\u9891\u8D2B\u5AD4\u82F9\u51ED\u8BC4\u6CFC\u9887\u948B\u6251\u94FA\u6734\u8C31\u9564\u9568\u6816\u8110\u9F50\u9A91\u5C82\u542F\u6C14\u5F03\u8BAB\u8572\u9A90\u7EEE\u6864\u789B\u9880\u9883\u9CCD\u7275\u948E\u94C5\u8FC1\u7B7E\u8C26\u94B1\u94B3\u6F5C\u6D45\u8C34\u5811\u4F65\u8368\u60AD\u9A9E\u7F31\u6920\u94A4\u67AA\u545B\u5899\u8537\u5F3A\u62A2\u5AF1\u6A2F\u6217\u709D\u9516\u9535\u956A\u7F9F\u8DC4\u9539\u6865\u4E54\u4FA8\u7FD8\u7A8D\u8BEE\u8C2F\u835E\u7F32\u7857\u8DF7\u7A83\u60EC\u9532\u7BA7\u94A6\u4EB2\u5BDD\u9513\u8F7B\u6C22\u503E\u9877\u8BF7\u5E86\u63FF\u9CAD\u743C\u7A77\u8315\u86F1\u5DEF\u8D47\u866E\u9CC5\u8D8B\u533A\u8EAF\u9A71\u9F8B\u8BCE\u5C96\u9612\u89D1\u9E32\u98A7\u6743\u529D\u8BE0\u7EFB\u8F81\u94E8\u5374\u9E4A\u786E\u9615\u9619\u60AB\u8BA9\u9976\u6270\u7ED5\u835B\u5A06\u6861\u70ED\u97E7\u8BA4\u7EAB\u996A\u8F6B\u8363\u7ED2\u5D58\u877E\u7F1B\u94F7\u98A6\u8F6F\u9510\u86AC\u95F0\u6DA6\u6D12\u8428\u98D2\u9CC3\u8D5B\u4F1E\u6BF5\u7CC1\u4E27\u9A9A\u626B\u7F2B\u6DA9\u556C\u94EF\u7A51\u6740\u5239\u7EB1\u94E9\u9CA8\u7B5B\u6652\u917E\u5220\u95EA\u9655\u8D61\u7F2E\u8BAA\u59D7\u9A9F\u9490\u9CDD\u5892\u4F24\u8D4F\u57A7\u6B87\u89DE\u70E7\u7ECD\u8D4A\u6444\u6151\u8BBE\u538D\u6EE0\u7572\u7EC5\u5BA1\u5A76\u80BE\u6E17\u8BDC\u8C02\u6E16\u58F0\u7EF3\u80DC\u5E08\u72EE\u6E7F\u8BD7\u65F6\u8680\u5B9E\u8BC6\u9A76\u52BF\u9002\u91CA\u9970\u89C6\u8BD5\u8C25\u57D8\u83B3\u5F11\u8F7C\u8D33\u94C8\u9CA5\u5BFF\u517D\u7EF6\u67A2\u8F93\u4E66\u8D4E\u5C5E\u672F\u6811\u7AD6\u6570\u6445\u7EBE\u5E05\u95E9\u53CC\u8C01\u7A0E\u987A\u8BF4\u7855\u70C1\u94C4\u4E1D\u9972\u53AE\u9A77\u7F0C\u9536\u9E36\u8038\u6002\u9882\u8BBC\u8BF5\u64DE\u85AE\u998A\u98D5\u953C\u82CF\u8BC9\u8083\u8C21\u7A23\u867D\u968F\u7EE5\u5C81\u8C07\u5B59\u635F\u7B0B\u836A\u72F2\u7F29\u7410\u9501\u5522\u7743\u736D\u631E\u95FC\u94CA\u9CCE\u53F0\u6001\u949B\u9C90\u644A\u8D2A\u762B\u6EE9\u575B\u8C2D\u8C08\u53F9\u6619\u94BD\u952C\u9878\u6C64\u70EB\u50A5\u9967\u94F4\u9557\u6D9B\u7EE6\u8BA8\u97EC\u94FD\u817E\u8A8A\u9511\u9898\u4F53\u5C49\u7F07\u9E48\u9617\u6761\u7C9C\u9F86\u9CA6\u8D34\u94C1\u5385\u542C\u70C3\u94DC\u7EDF\u6078\u5934\u94AD\u79C3\u56FE\u948D\u56E2\u629F\u9893\u8715\u9968\u8131\u9E35\u9A6E\u9A7C\u692D\u7BA8\u9F0D\u889C\u5A32\u817D\u5F2F\u6E7E\u987D\u4E07\u7EA8\u7EFE\u7F51\u8F8B\u97E6\u8FDD\u56F4\u4E3A\u6F4D\u7EF4\u82C7\u4F1F\u4F2A\u7EAC\u8C13\u536B\u8BFF\u5E0F\u95F1\u6CA9\u6DA0\u73AE\u97EA\u709C\u9C94\u6E29\u95FB\u7EB9\u7A33\u95EE\u960C\u74EE\u631D\u8717\u6DA1\u7A9D\u5367\u83B4\u9F8C\u545C\u94A8\u4E4C\u8BEC\u65E0\u829C\u5434\u575E\u96FE\u52A1\u8BEF\u90AC\u5E91\u6003\u59A9\u9A9B\u9E49\u9E5C\u9521\u727A\u88AD\u4E60\u94E3\u620F\u7EC6\u9969\u960B\u73BA\u89CB\u867E\u8F96\u5CE1\u4FA0\u72ED\u53A6\u5413\u7856\u9C9C\u7EA4\u8D24\u8854\u95F2\u663E\u9669\u73B0\u732E\u53BF\u9985\u7FA1\u5BAA\u7EBF\u82CB\u83B6\u85D3\u5C98\u7303\u5A34\u9E47\u75EB\u869D\u7C7C\u8DF9\u53A2\u9576\u4E61\u8BE6\u54CD\u9879\u8297\u9977\u9AA7\u7F03\u98E8\u8427\u56A3\u9500\u6653\u5578\u54D3\u6F47\u9A81\u7EE1\u67AD\u7BAB\u534F\u631F\u643A\u80C1\u8C10\u5199\u6CFB\u8C22\u4EB5\u64B7\u7EC1\u7F2C\u950C\u8845\u5174\u9649\u8365\u51F6\u6C79\u9508\u7EE3\u9990\u9E3A\u865A\u5618\u987B\u8BB8\u53D9\u7EEA\u7EED\u8BE9\u987C\u8F69\u60AC\u9009\u7663\u7EDA\u8C16\u94C9\u955F\u5B66\u8C11\u6CF6\u9CD5\u52CB\u8BE2\u5BFB\u9A6F\u8BAD\u8BAF\u900A\u57D9\u6D54\u9C9F\u538B\u9E26\u9E2D\u54D1\u4E9A\u8BB6\u57AD\u5A05\u6860\u6C29\u9609\u70DF\u76D0\u4E25\u5CA9\u989C\u960E\u8273\u538C\u781A\u5F66\u8C1A\u9A8C\u53A3\u8D5D\u4FE8\u5156\u8C33\u6079\u95EB\u917D\u9B47\u990D\u9F39\u9E2F\u6768\u626C\u75A1\u9633\u75D2\u517B\u6837\u7080\u7476\u6447\u5C27\u9065\u7A91\u8C23\u836F\u8F7A\u9E5E\u9CD0\u7237\u9875\u4E1A\u53F6\u9765\u8C12\u90BA\u6654\u70E8\u533B\u94F1\u9890\u9057\u4EEA\u8681\u827A\u4EBF\u5FC6\u4E49\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7ECE\u8BD2\u5453\u5CC4\u9974\u603F\u9A7F\u7F22\u8F76\u8D3B\u9487\u9552\u9571\u7617\u8223\u836B\u9634\u94F6\u996E\u9690\u94DF\u763E\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8D62\u9896\u8314\u83BA\u8426\u84E5\u6484\u5624\u6EE2\u6F46\u748E\u9E66\u763F\u988F\u7F42\u54DF\u62E5\u4F63\u75C8\u8E0A\u548F\u955B\u4F18\u5FE7\u90AE\u94C0\u72B9\u8BF1\u83B8\u94D5\u9C7F\u8206\u9C7C\u6E14\u5A31\u4E0E\u5C7F\u8BED\u72F1\u8A89\u9884\u9A6D\u4F1B\u4FE3\u8C00\u8C15\u84E3\u5D5B\u996B\u9608\u59AA\u7EA1\u89CE\u6B24\u94B0\u9E46\u9E6C\u9F89\u9E33\u6E0A\u8F95\u56ED\u5458\u5706\u7F18\u8FDC\u6A7C\u9E22\u9F0B\u7EA6\u8DC3\u94A5\u7CA4\u60A6\u9605\u94BA\u90E7\u5300\u9668\u8FD0\u8574\u915D\u6655\u97F5\u90D3\u82B8\u607D\u6120\u7EAD\u97EB\u6B92\u6C32\u6742\u707E\u8F7D\u6512\u6682\u8D5E\u74D2\u8DB1\u933E\u8D43\u810F\u9A75\u51FF\u67A3\u8D23\u62E9\u5219\u6CFD\u8D5C\u5567\u5E3B\u7BA6\u8D3C\u8C2E\u8D60\u7EFC\u7F2F\u8F67\u94E1\u95F8\u6805\u8BC8\u658B\u503A\u6BE1\u76CF\u65A9\u8F97\u5D2D\u6808\u6218\u7EFD\u8C35\u5F20\u6DA8\u5E10\u8D26\u80C0\u8D75\u8BCF\u948A\u86F0\u8F99\u9517\u8FD9\u8C2A\u8F84\u9E67\u8D1E\u9488\u4FA6\u8BCA\u9547\u9635\u6D48\u7F1C\u6862\u8F78\u8D48\u796F\u9E29\u6323\u7741\u72F0\u4E89\u5E27\u75C7\u90D1\u8BC1\u8BE4\u5CE5\u94B2\u94EE\u7B5D\u7EC7\u804C\u6267\u7EB8\u631A\u63B7\u5E1C\u8D28\u6EDE\u9A98\u6809\u6800\u8F75\u8F7E\u8D3D\u9E37\u86F3\u7D77\u8E2C\u8E2F\u89EF\u949F\u7EC8\u79CD\u80BF\u4F17\u953A\u8BCC\u8F74\u76B1\u663C\u9AA4\u7EA3\u7EC9\u732A\u8BF8\u8BDB\u70DB\u77A9\u5631\u8D2E\u94F8\u9A7B\u4F2B\u69E0\u94E2\u4E13\u7816\u8F6C\u8D5A\u556D\u9994\u989E\u6869\u5E84\u88C5\u5986\u58EE\u72B6\u9525\u8D58\u5760\u7F00\u9A93\u7F12\u8C06\u51C6\u7740\u6D4A\u8BFC\u956F\u5179\u8D44\u6E0D\u8C18\u7F01\u8F8E\u8D40\u7726\u9531\u9F87\u9CBB\u8E2A\u603B\u7EB5\u506C\u90B9\u8BF9\u9A7A\u9CB0\u8BC5\u7EC4\u955E\u94BB\u7F35\u8E9C\u9CDF\u7FF1\u5E76\u535C\u6C89\u4E11\u6DC0\u8FED\u6597\u8303\u5E72\u768B\u7845\u67DC\u540E\u4F19\u79F8\u6770\u8BC0\u5938\u91CC\u91CC\u51CC\u4E48\u9709\u637B\u51C4\u6266\u5723\u5C38\u62AC\u6D82\u6D3C\u5582\u6C61\u9528\u54B8\u874E\u5F5D\u6D8C\u6E38\u5401\u5FA1\u613F\u5CB3\u4E91\u7076\u624E\u672D\u7B51\u4E8E\u5FD7\u6CE8\u51CB\u8BA0\u8C2B\u90C4\u52D0\u51FC\u5742\u5785\u57B4\u57EF\u57DD\u82D8\u836C\u836E\u839C\u83BC\u83F0\u85C1\u63F8\u5412\u5423\u5494\u549D\u54B4\u5658\u567C\u56AF\u5E5E\u5C99\u5D74\u5F77\u5FBC\u72B8\u72CD\u9980\u9987\u9993\u9995\u6123\u61B7\u61D4\u4E2C\u6E86\u6EDF\u6EB7\u6F24\u6F74\u6FB9\u752F\u7E9F\u7ED4\u7EF1\u73C9\u67A7\u684A\u6849\u69D4\u6A65\u8F71\u8F77\u8D4D\u80B7\u80E8\u98DA\u7173\u7145\u7198\u610D\u6DFC\u781C\u78D9\u770D\u949A\u94B7\u94D8\u94DE\u9503\u950D\u950E\u950F\u9518\u951D\u952A\u952B\u953F\u9545\u954E\u9562\u9565\u9569\u9572\u7A06\u9E4B\u9E5B\u9E71\u75AC\u75B4\u75D6\u766F\u88E5\u8941\u8022\u98A5\u87A8\u9EB4\u9C85\u9C86\u9C87\u9C9E\u9CB4\u9CBA\u9CBC\u9CCA\u9CCB\u9CD8\u9CD9\u9792\u97B4\u9F44\u4E2C\u4E3A\u4EB8\u4F17\u4F2A\u4F59\u51A2\u51C0\u51CC\u51FC\u522C\u52CB\u52D0\u52DA\u5364\u53C6\u53C7\u542F\u5494\u54A4\u54B4\u54CC\u54D7\u551D\u5521\u5523\u553F\u556E\u5570\u5574\u5475\u567C\u56AF\u5785\u57A7\u57AF\u57B1\u57D9\u57DD\u5846\u5899\u58F8\u59AB\u59DC\u5A34\u5A73\u5C43\u5CBD\u5CC3\u5CE3\u5D04\u5D5A\u5D5B\u5D74\u5EBC\u5F5F\u5FA1\u610D\u616D\u61B7\u624E\u6266\u631C\u6326\u637B\u63F8\u65F8\u663D\u672D\u684A\u68BC\u68BE\u68C2\u69DA\u6A90\u6C61\u6C93\u6CA8\u6CA9\u6CB5\u6D49\u6D50\u6D55\u6D8C\u6DA2\u6E7F\u6E87\u6EEA\u6F24\u7145\u7173\u7198\u7266\u729F\u72CD\u72DD\u732C\u7399\u739A\u73B1\u73C9\u73CF\u73F0\u740E\u7487\u7572\u75B4\u7606\u7618\u766F\u772C\u7740\u7841\u7845\u7859\u785A\u7877\u78B9\u78D9\u794E\u79FE\u7B5C\u7B7E\u7B93\u7CC7\u7E9F\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EE6\u7EEC\u7EF1\u7EF9\u7F0A\u7F10\u7F1E\u7F30\u7FD9\u7FDA\u80B7\u810F\u814C\u8158\u816D\u81DC\u8273\u8279\u8359\u839C\u83BC\u841A\u85C1\u866C\u8780\u87CF\u8885\u8886\u88AF\u88C8\u88E5\u8941\u8955\u89C3\u89CD\u8A5F\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C1E\u8C25\u8C37\u8C6E\u8D20\u8D4D\u8D51\u8D52\u8D57\u8D5F\u8D6A\u8DD6\u8DF6\u8E0A\u8F6A\u8F80\u8F8C\u8F92\u90C1\u90C4\u9166\u9245\u9274\u948E\u9491\u9496\u9498\u94B5\u94BB\u94CF\u94DA\u94E6\u94FB\u9508\u950F\u951C\u9520\u9528\u9533\u953D\u9543\u9548\u9555\u955A\u9560\u9562\u956E\u9574\u95EC\u95F2\u95FF\u9607\u9613\u9618\u961B\u9655\u97B4\u97E8\u988B\u988E\u9892\u9895\u9899\u98A3\u98CF\u98D0\u98D4\u98D6\u98D7\u9964\u9965\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u998C\u998E\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9C7D\u9C7E\u9C80\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE\u9CBF\u9CC0\u9CC1\u9CC2\u9CC8\u9CC9\u9CD1\u9CD2\u9CDB\u9CE0\u9CE1\u9CE3\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E47\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6F\u9E72\u9E74\u9EE1\u9F0C\u9F17\u9F81\u9F82\u5FD7\u5236\u54A8\u53EA\u7CFB\u677E\u5C1D\u9762\u5E72\u62FC\u6076\u8D5E\u53D1\u50F5\u81F4\u5978\u83B7\u7EC3\u56DE\u7CFB\u8FF9\u53EA\u8F9F\u677F\u4F60"}function KV(){return"\u9312\u769A\u85F9\u7919\u611B\u566F\u5B21\u74A6\u66D6\u9744\u8AF3\u92A8\u9D6A\u9AAF\u8956\u5967\u5ABC\u9A41\u9C32\u58E9\u7F77\u9200\u64FA\u6557\u5504\u9812\u8FA6\u7D46\u9211\u5E6B\u7D81\u938A\u8B17\u525D\u98FD\u5BF6\u5831\u9B91\u9D07\u9F59\u8F29\u8C9D\u92C7\u72FD\u5099\u618A\u9D6F\u8CC1\u931B\u7E43\u7B46\u7562\u6583\u5E63\u9589\u84FD\u55F6\u6F77\u924D\u7BF3\u8E55\u908A\u7DE8\u8CB6\u8B8A\u8FAF\u8FAE\u8290\u7DF6\u7C69\u6A19\u9A43\u98AE\u98C6\u93E2\u9463\u9C3E\u9C49\u5225\u765F\u7015\u6FF1\u8CD3\u64EF\u5110\u7E7D\u6AB3\u6BAF\u81CF\u944C\u9AD5\u9B22\u9905\u7A1F\u64A5\u7F3D\u9251\u99C1\u9911\u9238\u9D53\u88DC\u923D\u8CA1\u53C3\u8836\u6B98\u615A\u6158\u71E6\u9A42\u9EF2\u84BC\u8259\u5009\u6EC4\u5EC1\u5074\u518A\u6E2C\u60FB\u5C64\u8A6B\u9364\u5115\u91F5\u6519\u647B\u87EC\u995E\u8B92\u7E8F\u93DF\u7522\u95E1\u986B\u56C5\u8AC2\u8B96\u8546\u61FA\u5B0B\u9A4F\u8998\u79AA\u9414\u5834\u5617\u9577\u511F\u8178\u5EE0\u66A2\u5000\u8407\u60B5\u95B6\u9BE7\u9214\u8ECA\u5FB9\u7868\u5875\u9673\u896F\u5096\u8AF6\u6AEC\u78E3\u9F54\u6490\u7A31\u61F2\u8AA0\u9A01\u68D6\u6A89\u92EE\u943A\u7661\u9072\u99B3\u6065\u9F52\u71BE\u98ED\u9D1F\u6C96\u885D\u87F2\u5BF5\u9283\u7587\u8E8A\u7C4C\u7DA2\u5114\u5E6C\u8B8E\u6AE5\u5EDA\u92E4\u96DB\u790E\u5132\u89F8\u8655\u82BB\u7D40\u8E95\u50B3\u91E7\u7621\u95D6\u5275\u6134\u9318\u7D9E\u7D14\u9D89\u7DBD\u8F1F\u9F6A\u8FAD\u8A5E\u8CDC\u9DBF\u8070\u8525\u56EA\u5F9E\u53E2\u84EF\u9A44\u6A05\u6E4A\u8F33\u8EA5\u7AC4\u651B\u932F\u92BC\u9E7A\u9054\u5660\u97C3\u5E36\u8CB8\u99D8\u7D3F\u64D4\u55AE\u9132\u64A3\u81BD\u619A\u8A95\u5F48\u6BAB\u8CE7\u7649\u7C1E\u7576\u64CB\u9EE8\u8569\u6A94\u8B9C\u78AD\u8960\u6417\u5CF6\u79B1\u5C0E\u76DC\u71FE\u71C8\u9127\u9419\u6575\u6ECC\u905E\u7DE0\u7CF4\u8A46\u8AE6\u7D88\u89BF\u93D1\u985B\u9EDE\u588A\u96FB\u5DD4\u923F\u7672\u91E3\u8ABF\u929A\u9BDB\u8ADC\u758A\u9C08\u91D8\u9802\u9320\u8A02\u92CC\u4E1F\u92A9\u6771\u52D5\u68DF\u51CD\u5D20\u9D87\u7AC7\u72A2\u7368\u8B80\u8CED\u934D\u7006\u6ADD\u7258\u7BE4\u9EF7\u935B\u65B7\u7DDE\u7C6A\u514C\u968A\u5C0D\u61DF\u9413\u5678\u9813\u920D\u71C9\u8E89\u596A\u58AE\u9438\u9D5D\u984D\u8A1B\u60E1\u9913\u8AE4\u580A\u95BC\u8EDB\u92E8\u9354\u9D9A\u984E\u9853\u9C77\u8A92\u5152\u723E\u990C\u8CB3\u9087\u927A\u9D2F\u9B9E\u767C\u7F70\u95A5\u743A\u792C\u91E9\u7169\u8CA9\u98EF\u8A2A\u7D21\u9201\u9B74\u98DB\u8AB9\u5EE2\u8CBB\u7DCB\u9428\u9BE1\u7D1B\u58B3\u596E\u61A4\u7CDE\u50E8\u8C50\u6953\u92D2\u98A8\u760B\u99AE\u7E2B\u8AF7\u9CF3\u7043\u819A\u8F3B\u64AB\u8F14\u8CE6\u5FA9\u8CA0\u8A03\u5A66\u7E1B\u9CE7\u99D9\u7D31\u7D3C\u8CFB\u9EA9\u9B92\u9C12\u91D3\u8A72\u9223\u84CB\u8CC5\u687F\u8D95\u7A08\u8D1B\u5C37\u641F\u7D3A\u5CA1\u525B\u92FC\u7DB1\u5D17\u6207\u93AC\u776A\u8AA5\u7E1E\u92EF\u64F1\u9D3F\u95A3\u927B\u500B\u7D07\u9398\u6F41\u7D66\u4E99\u8CE1\u7D86\u9BC1\u9F94\u5BAE\u978F\u8CA2\u9264\u6E9D\u830D\u69CB\u8CFC\u5920\u8A6C\u7DF1\u89AF\u8831\u9867\u8A41\u8F42\u9237\u932E\u9D23\u9D60\u9DBB\u526E\u639B\u9D30\u6451\u95DC\u89C0\u9928\u6163\u8CAB\u8A7F\u645C\u9E1B\u9C25\u5EE3\u7377\u898F\u6B78\u9F9C\u95A8\u8ECC\u8A6D\u8CB4\u528A\u532D\u528C\u5AAF\u6A9C\u9BAD\u9C56\u8F25\u6EFE\u889E\u7DC4\u9BC0\u934B\u570B\u904E\u581D\u54BC\u5E57\u69E8\u87C8\u927F\u99ED\u97D3\u6F22\u95DE\u7D4E\u9821\u865F\u705D\u9865\u95A1\u9DB4\u8CC0\u8A36\u95D4\u8823\u6A6B\u8F5F\u9D3B\u7D05\u9ECC\u8A0C\u8452\u958E\u9C5F\u58FA\u8B77\u6EEC\u6236\u6EF8\u9D98\u5629\u83EF\u756B\u5283\u8A71\u9A4A\u6A3A\u93F5\u61F7\u58DE\u6B61\u74B0\u9084\u7DE9\u63DB\u559A\u7613\u7165\u6E19\u5950\u7E6F\u9370\u9BC7\u9EC3\u8B0A\u9C09\u63EE\u8F1D\u6BC0\u8CC4\u7A62\u6703\u71F4\u532F\u8AF1\u8AA8\u7E6A\u8A7C\u8588\u5666\u6FAE\u7E62\u743F\u6689\u8477\u6E3E\u8AE2\u991B\u95BD\u7372\u8CA8\u798D\u9225\u944A\u64CA\u6A5F\u7A4D\u9951\u8DE1\u8B4F\u96DE\u7E3E\u7DDD\u6975\u8F2F\u7D1A\u64E0\u5E7E\u858A\u5291\u6FDF\u8A08\u8A18\u969B\u7E7C\u7D00\u8A10\u8A70\u85BA\u5630\u568C\u9A65\u74A3\u89AC\u9F4F\u78EF\u7F88\u8806\u8E8B\u973D\u9C6D\u9BFD\u593E\u83A2\u9830\u8CC8\u9240\u50F9\u99D5\u90DF\u6D79\u92CF\u93B5\u87EF\u6BB2\u76E3\u5805\u7B8B\u9593\u8271\u7DD8\u7E6D\u6AA2\u583F\u9E7C\u63C0\u64BF\u7C21\u5109\u6E1B\u85A6\u6ABB\u9452\u8E10\u8CE4\u898B\u9375\u8266\u528D\u991E\u6F38\u6FFA\u6F97\u8AEB\u7E11\u6214\u6229\u77BC\u9DBC\u7B67\u9C39\u97C9\u5C07\u6F3F\u8523\u69F3\u734E\u8B1B\u91AC\u7D73\u97C1\u81A0\u6F86\u9A55\u5B0C\u652A\u9278\u77EF\u50E5\u8173\u9903\u7E73\u7D5E\u8F4E\u8F03\u649F\u5DA0\u9DE6\u9BAB\u968E\u7BC0\u6F54\u7D50\u8AA1\u5C46\u7664\u981C\u9B9A\u7DCA\u9326\u50C5\u8B39\u9032\u6649\u71FC\u76E1\u52C1\u834A\u8396\u5DF9\u85CE\u9949\u7E09\u8D10\u89B2\u9BE8\u9A5A\u7D93\u9838\u975C\u93E1\u5F91\u75D9\u7AF6\u51C8\u5244\u6D87\u9015\u5F33\u811B\u975A\u7CFE\u5EC4\u820A\u9B2E\u9CE9\u9DF2\u99D2\u8209\u64DA\u92F8\u61FC\u5287\u8A4E\u5C68\u6AF8\u98B6\u9245\u92E6\u7AB6\u9F5F\u9D51\u7D79\u9308\u942B\u96CB\u89BA\u6C7A\u7D55\u8B4E\u73A8\u921E\u8ECD\u99FF\u76B8\u958B\u51F1\u5274\u584F\u613E\u6137\u93A7\u9347\u9F95\u958C\u9227\u92AC\u9846\u6BBC\u8AB2\u9A0D\u7DD9\u8EFB\u9233\u9301\u9837\u58BE\u61C7\u9F66\u93D7\u6473\u5EAB\u8932\u56B3\u584A\u5108\u9136\u5672\u81BE\u5BEC\u736A\u9AD6\u7926\u66E0\u6CC1\u8A86\u8A91\u913A\u58D9\u7E8A\u8CBA\u8667\u5DCB\u7ABA\u994B\u6F70\u5331\u8562\u6192\u8075\u7C23\u95AB\u9315\u9BE4\u64F4\u95CA\u8810\u881F\u81D8\u840A\u4F86\u8CF4\u5D0D\u5FA0\u6DF6\u7028\u8CDA\u775E\u9338\u7669\u7C5F\u85CD\u6B04\u6514\u7C43\u95CC\u862D\u703E\u8B95\u652C\u89BD\u61F6\u7E9C\u721B\u6FEB\u5D50\u6B16\u6595\u946D\u8964\u746F\u95AC\u92C3\u6488\u52DE\u6F87\u562E\u5D97\u92A0\u9412\u7646\u6A02\u9C33\u9433\u58D8\u985E\u6DDA\u8A84\u7E32\u7C6C\u8C8D\u96E2\u9BC9\u79AE\u9E97\u53B2\u52F5\u792B\u6B77\u701D\u96B8\u5137\u9148\u58E2\u85F6\u849E\u863A\u56A6\u9090\u9A6A\u7E2D\u6AEA\u6ADF\u8F62\u792A\u92F0\u9E1D\u7658\u7CF2\u8E92\u9742\u9C7A\u9C67\u5006\u806F\u84EE\u9023\u942E\u6190\u6F23\u7C3E\u6582\u81C9\u93C8\u6200\u7149\u7DF4\u861E\u5969\u7032\u7489\u6BAE\u8933\u895D\u9C31\u7CE7\u6DBC\u5169\u8F1B\u8AD2\u9B4E\u7642\u907C\u9410\u7E5A\u91D5\u9DEF\u7375\u81E8\u9130\u9C57\u51DC\u8CC3\u85FA\u5EE9\u6A81\u8F54\u8EAA\u9F61\u9234\u9748\u5DBA\u9818\u7DBE\u6B1E\u87F6\u9BEA\u993E\u5289\u700F\u9A2E\u7DB9\u93A6\u9DDA\u9F8D\u807E\u56A8\u7C60\u58DF\u650F\u96B4\u8622\u7027\u74CF\u6AF3\u6727\u7931\u6A13\u5A41\u645F\u7C0D\u50C2\u851E\u560D\u5D81\u93E4\u763A\u802C\u87BB\u9ACF\u8606\u76E7\u9871\u5EEC\u7210\u64C4\u9E75\u865C\u9B6F\u8CC2\u797F\u9304\u9678\u58DA\u64FC\u5695\u95AD\u7018\u6DE5\u6AE8\u6AD3\u8F64\u8F05\u8F46\u6C0C\u81DA\u9E15\u9DFA\u826B\u9C78\u5DD2\u6523\u5B7F\u7064\u4E82\u81E0\u5B4C\u6B12\u9E1E\u947E\u6384\u8F2A\u502B\u4F96\u6DEA\u7DB8\u8AD6\u5707\u863F\u7F85\u908F\u947C\u7C6E\u9A3E\u99F1\u7D61\u7296\u7380\u6FFC\u6B0F\u8161\u93CD\u9A62\u5442\u92C1\u4FB6\u5C62\u7E37\u616E\u6FFE\u7DA0\u6ADA\u8938\u92DD\u5638\u5ABD\u746A\u78BC\u879E\u99AC\u7F75\u55CE\u561C\u5B24\u69AA\u8CB7\u9EA5\u8CE3\u9081\u8108\u52F1\u779E\u9945\u883B\u6EFF\u8B3E\u7E35\u93DD\u9859\u9C3B\u8C93\u9328\u925A\u8CBF\u9EBC\u6C92\u9382\u9580\u60B6\u5011\u636B\u71DC\u61E3\u9346\u9333\u5922\u7787\u8B0E\u5F4C\u8993\u51AA\u7F8B\u8B10\u737C\u79B0\u7DBF\u7DEC\u6FA0\u9766\u9EFD\u5EDF\u7DF2\u7E46\u6EC5\u61AB\u95A9\u9594\u7DE1\u9CF4\u9298\u8B2C\u8B28\u9A40\u9943\u6B7F\u93CC\u8B00\u755D\u926C\u5436\u9209\u7D0D\u96E3\u6493\u8166\u60F1\u9B27\u9403\u8A25\u9912\u5167\u64EC\u81A9\u922E\u9BE2\u6506\u8F26\u9BF0\u91C0\u9CE5\u8526\u88CA\u8076\u5699\u9477\u93B3\u9689\u8617\u56C1\u9862\u8EA1\u6AB8\u7370\u5BE7\u64F0\u6FD8\u82E7\u5680\u8079\u9215\u7D10\u81BF\u6FC3\u8FB2\u5102\u5665\u99D1\u91F9\u8AFE\u513A\u7627\u6B50\u9DD7\u6BC6\u5614\u6F1A\u8B33\u616A\u750C\u76E4\u8E63\u9F90\u62CB\u76B0\u8CE0\u8F61\u5674\u9D6C\u7D15\u7F86\u9239\u9A19\u8ADE\u99E2\u98C4\u7E39\u983B\u8CA7\u5B2A\u860B\u6191\u8A55\u6F51\u9817\u91D9\u64B2\u92EA\u6A38\u8B5C\u93F7\u9420\u68F2\u81CD\u9F4A\u9A0E\u8C48\u555F\u6C23\u68C4\u8A16\u8604\u9A0F\u7DBA\u69BF\u78E7\u980E\u980F\u9C2D\u727D\u91EC\u925B\u9077\u7C3D\u8B19\u9322\u9257\u6F5B\u6DFA\u8B74\u5879\u50C9\u8541\u6173\u9A2B\u7E7E\u69E7\u9210\u69CD\u55C6\u58BB\u8594\u5F37\u6436\u5B19\u6AA3\u6227\u7197\u9306\u93D8\u93F9\u7FA5\u8E4C\u936C\u6A4B\u55AC\u50D1\u7FF9\u7AC5\u8A9A\u8B59\u854E\u7E70\u78FD\u8E7A\u7ACA\u611C\u9365\u7BCB\u6B3D\u89AA\u5BE2\u92DF\u8F15\u6C2B\u50BE\u9803\u8ACB\u6176\u64B3\u9BD6\u74CA\u7AAE\u7162\u86FA\u5DF0\u8CD5\u87E3\u9C0D\u8DA8\u5340\u8EC0\u9A45\u9F72\u8A58\u5D87\u95C3\u89B7\u9D1D\u9874\u6B0A\u52F8\u8A6E\u7DA3\u8F07\u9293\u537B\u9D72\u78BA\u95CB\u95D5\u6128\u8B93\u9952\u64FE\u7E5E\u8558\u5B08\u6A48\u71B1\u97CC\u8A8D\u7D09\u98EA\u8ED4\u69AE\u7D68\u5DB8\u8811\u7E1F\u92A3\u9870\u8EDF\u92B3\u8706\u958F\u6F64\u7051\u85A9\u98AF\u9C13\u8CFD\u5098\u6BFF\u7CDD\u55AA\u9A37\u6383\u7E45\u6F80\u55C7\u92AB\u7A61\u6BBA\u524E\u7D17\u93A9\u9BCA\u7BE9\u66EC\u91C3\u522A\u9583\u965C\u8D0D\u7E55\u8A15\u59CD\u9A38\u91E4\u9C54\u5891\u50B7\u8CDE\u5770\u6BA4\u89F4\u71D2\u7D39\u8CD2\u651D\u61FE\u8A2D\u5399\u7044\u756C\u7D33\u5BE9\u5B38\u814E\u6EF2\u8A75\u8AD7\u700B\u8072\u7E69\u52DD\u5E2B\u7345\u6FD5\u8A69\u6642\u8755\u5BE6\u8B58\u99DB\u52E2\u9069\u91CB\u98FE\u8996\u8A66\u8B1A\u5852\u8494\u5F12\u8EFE\u8CB0\u9230\u9C23\u58FD\u7378\u7DAC\u6A1E\u8F38\u66F8\u8D16\u5C6C\u8853\u6A39\u8C4E\u6578\u6504\u7D13\u5E25\u9582\u96D9\u8AB0\u7A05\u9806\u8AAA\u78A9\u720D\u9460\u7D72\u98FC\u5EDD\u99DF\u7DE6\u9376\u9DE5\u8073\u616B\u980C\u8A1F\u8AA6\u64FB\u85EA\u993F\u98BC\u93AA\u8607\u8A34\u8085\u8B16\u7A4C\u96D6\u96A8\u7D8F\u6B72\u8AB6\u5B6B\u640D\u7B4D\u84C0\u733B\u7E2E\u7463\u9396\u55E9\u8127\u737A\u64BB\u95E5\u9248\u9C28\u81FA\u614B\u9226\u9B90\u6524\u8CAA\u7671\u7058\u58C7\u8B5A\u8AC7\u5606\u66C7\u926D\u931F\u9807\u6E6F\u71D9\u513B\u9933\u940B\u93DC\u6FE4\u7D73\u8A0E\u97DC\u92F1\u9A30\u8B04\u92BB\u984C\u9AD4\u5C5C\u7DF9\u9D5C\u95D0\u689D\u7CF6\u9F60\u9C37\u8CBC\u9435\u5EF3\u807D\u70F4\u9285\u7D71\u615F\u982D\u9204\u79BF\u5716\u91F7\u5718\u6476\u9839\u86FB\u98E9\u812B\u9D15\u99B1\u99DD\u6A62\u7C5C\u9F09\u896A\u5AA7\u8183\u5F4E\u7063\u9811\u842C\u7D08\u7DB0\u7DB2\u8F1E\u97CB\u9055\u570D\u70BA\u6FF0\u7DAD\u8466\u5049\u507D\u7DEF\u8B02\u885B\u8AC9\u5E43\u95C8\u6E88\u6F7F\u744B\u97D9\u7152\u9BAA\u6EAB\u805E\u7D0B\u7A69\u554F\u95BF\u7515\u64BE\u8778\u6E26\u7AA9\u81E5\u8435\u9F77\u55DA\u93A2\u70CF\u8AA3\u7121\u856A\u5433\u5862\u9727\u52D9\u8AA4\u9114\u5EE1\u61AE\u5AF5\u9A16\u9D61\u9DA9\u932B\u72A7\u8972\u7FD2\u9291\u6232\u7D30\u993C\u9B29\u74BD\u89A1\u8766\u8F44\u5CFD\u4FE0\u72F9\u5EC8\u5687\u7864\u9BAE\u7E96\u8CE2\u929C\u9591\u986F\u96AA\u73FE\u737B\u7E23\u9921\u7FA8\u61B2\u7DDA\u83A7\u859F\u861A\u5CF4\u736B\u5AFB\u9DF4\u7647\u8814\u79C8\u8E9A\u5EC2\u9472\u9109\u8A73\u97FF\u9805\u858C\u9909\u9A64\u7DD7\u9957\u856D\u56C2\u92B7\u66C9\u562F\u5635\u701F\u9A4D\u7D83\u689F\u7C2B\u5354\u633E\u651C\u8105\u8AE7\u5BEB\u7009\u8B1D\u893B\u64F7\u7D32\u7E88\u92C5\u91C1\u8208\u9658\u6ECE\u5147\u6D36\u92B9\u7E61\u9948\u9D42\u865B\u5653\u9808\u8A31\u6558\u7DD2\u7E8C\u8A61\u980A\u8ED2\u61F8\u9078\u766C\u7D62\u8AFC\u9249\u93C7\u5B78\u8B14\u6FA9\u9C48\u52DB\u8A62\u5C0B\u99B4\u8A13\u8A0A\u905C\u5864\u6F6F\u9C58\u58D3\u9D09\u9D28\u555E\u4E9E\u8A1D\u57E1\u5A6D\u690F\u6C2C\u95B9\u7159\u9E7D\u56B4\u5DD6\u984F\u95BB\u8277\u53AD\u786F\u5F65\u8AFA\u9A57\u53B4\u8D17\u513C\u5157\u8B9E\u61E8\u9586\u91C5\u9B58\u995C\u9F34\u9D26\u694A\u63DA\u760D\u967D\u7662\u990A\u6A23\u716C\u7464\u6416\u582F\u9059\u7AAF\u8B20\u85E5\u8EFA\u9DC2\u9C29\u723A\u9801\u696D\u8449\u9768\u8B01\u9134\u66C4\u71C1\u91AB\u92A5\u9824\u907A\u5100\u87FB\u85DD\u5104\u61B6\u7FA9\u8A63\u8B70\u8ABC\u8B6F\u7570\u7E79\u8A52\u56C8\u5DA7\u98F4\u61CC\u9A5B\u7E0A\u8EFC\u8CBD\u91D4\u93B0\u943F\u761E\u8264\u852D\u9670\u9280\u98F2\u96B1\u92A6\u766E\u6AFB\u5B30\u9DF9\u61C9\u7E93\u7469\u87A2\u71DF\u7192\u8805\u8D0F\u7A4E\u584B\u9DAF\u7E08\u93A3\u6516\u56B6\u7005\u7020\u74D4\u9E1A\u766D\u9826\u7F4C\u55B2\u64C1\u50AD\u7670\u8E34\u8A60\u93DE\u512A\u6182\u90F5\u923E\u7336\u8A98\u8555\u92AA\u9B77\u8F3F\u9B5A\u6F01\u5A1B\u8207\u5DBC\u8A9E\u7344\u8B7D\u9810\u99AD\u50B4\u4FC1\u8ADB\u8AED\u8577\u5D33\u98EB\u95BE\u5AD7\u7D06\u89A6\u6B5F\u923A\u9D52\u9DF8\u9F6C\u9D1B\u6DF5\u8F45\u5712\u54E1\u5713\u7DE3\u9060\u6ADE\u9CF6\u9EFF\u7D04\u8E8D\u9470\u7CB5\u6085\u95B1\u925E\u9116\u52FB\u9695\u904B\u860A\u919E\u6688\u97FB\u9106\u8553\u60F2\u614D\u7D1C\u97DE\u6B9E\u6C33\u96DC\u707D\u8F09\u6522\u66AB\u8D0A\u74DA\u8DB2\u93E8\u8D13\u81DF\u99D4\u947F\u68D7\u8CAC\u64C7\u5247\u6FA4\u8CFE\u5616\u5E58\u7C00\u8CCA\u8B56\u8D08\u7D9C\u7E52\u8ECB\u9358\u9598\u67F5\u8A50\u9F4B\u50B5\u6C08\u76DE\u65AC\u8F3E\u5D84\u68E7\u6230\u7DBB\u8B6B\u5F35\u6F32\u5E33\u8CEC\u8139\u8D99\u8A54\u91D7\u87C4\u8F4D\u937A\u9019\u8B2B\u8F12\u9DD3\u8C9E\u91DD\u5075\u8A3A\u93AE\u9663\u6E5E\u7E1D\u6968\u8EEB\u8CD1\u798E\u9D06\u6399\u775C\u7319\u722D\u5E40\u7665\u912D\u8B49\u8ACD\u5D22\u9266\u931A\u7B8F\u7E54\u8077\u57F7\u7D19\u646F\u64F2\u5E5F\u8CEA\u6EEF\u9A2D\u6ADB\u6894\u8EF9\u8F0A\u8D04\u9DD9\u8784\u7E36\u8E93\u8E91\u89F6\u9418\u7D42\u7A2E\u816B\u773E\u937E\u8B05\u8EF8\u76BA\u665D\u9A5F\u7D02\u7E10\u8C6C\u8AF8\u8A85\u71ED\u77DA\u56D1\u8CAF\u9444\u99D0\u4F47\u6AE7\u9296\u5C08\u78DA\u8F49\u8CFA\u56C0\u994C\u9873\u6A01\u838A\u88DD\u599D\u58EF\u72C0\u9310\u8D05\u589C\u7DB4\u9A05\u7E0B\u8AC4\u6E96\u8457\u6FC1\u8AD1\u9432\u8332\u8CC7\u6F2C\u8AEE\u7DC7\u8F1C\u8CB2\u7725\u9319\u9F5C\u9BD4\u8E64\u7E3D\u7E31\u50AF\u9112\u8ACF\u9A36\u9BEB\u8A5B\u7D44\u93C3\u9246\u7E98\u8EA6\u9C52\u7FFA\u4E26\u8514\u6C88\u919C\u6FB1\u53E0\u9B25\u7BC4\u5E79\u81EF\u77FD\u6AC3\u5F8C\u5925\u7A2D\u5091\u8A23\u8A87\u88E1\u88CF\u6DE9\u9EBD\u9EF4\u649A\u6DD2\u6261\u8056\u5C4D\u64E1\u5857\u7AAA\u9935\u6C59\u9341\u9E79\u880D\u5F5C\u6E67\u904A\u7C72\u79A6\u9858\u5DBD\u96F2\u7AC8\u7D2E\u5284\u7BC9\u65BC\u8A8C\u8A3B\u96D5\u8A01\u8B7E\u90E4\u731B\u6C39\u962A\u58DF\u5816\u57B5\u588A\u6ABE\u8552\u8464\u84E7\u8493\u83C7\u69C1\u6463\u54A4\u551A\u54E2\u565D\u5645\u6485\u5288\u8B14\u8946\u5DB4\u810A\u4EFF\u50E5\u7341\u9E85\u9918\u9937\u994A\u9962\u695E\u6035\u61CD\u723F\u6F35\u7069\u6DF7\u6FEB\u7026\u6DE1\u5BE7\u7CF8\u7D5D\u7DD4\u7449\u6898\u68EC\u6848\u6A70\u6AEB\u8EF2\u8EE4\u8CEB\u8181\u8156\u98C8\u7CCA\u7146\u6E9C\u6E63\u6E3A\u78B8\u6EFE\u7798\u9208\u9255\u92E3\u92B1\u92E5\u92F6\u9426\u9427\u9369\u9340\u9343\u9307\u9384\u9387\u93BF\u941D\u9465\u9479\u9454\u7A6D\u9D93\u9DA5\u9E0C\u7667\u5C59\u7602\u81D2\u8947\u7E48\u802E\u986C\u87CE\u9EAF\u9B81\u9B83\u9B8E\u9BD7\u9BDD\u9BF4\u9C5D\u9BFF\u9C20\u9C35\u9C45\u97BD\u97DD\u9F47\u4E2C\u7232\u56B2\u8846\u50DE\u9918\u51A2\u6DE8\u51CC\u51FC\u5257\u52F3\u52D0\u52E9\u6EF7\u9749\u9746\u5553\u5494\u5412\u54B4\u54CC\u8B41\u55CA\u5562\u5523\u553F\u9F67\u56C9\u563D\u5475\u567C\u56AF\u58E0\u57A7\u58B6\u58CB\u58CE\u57DD\u58EA\u7246\u58FC\u5B00\u59DC\u5AFA\u5AFF\u5C53\u5D2C\u5DA8\u5DA2\u5DAE\u5D94\u5D5B\u5D74\u5ECE\u5F60\u5FA1\u610D\u6196\u61B7\u624E\u6266\u6397\u648F\u637B\u63F8\u6698\u66E8\u672D\u684A\u6AAE\u68F6\u6AFA\u6A9F\u6A90\u6C61\u6C93\u6E22\u6F59\u6CB5\u6EAE\u6EFB\u6FDC\u6D8C\u6EB3\u6EBC\u6F0A\u6FA6\u6F24\u7145\u7173\u7198\u729B\u729F\u72CD\u736E\u875F\u74B5\u7452\u7472\u73C9\u73CF\u74AB\u74A1\u7487\u7572\u75FE\u762E\u763B\u766F\u77D3\u7740\u785C\u7845\u78D1\u7904\u7906\u78B9\u78D9\u7995\u7A60\u7C39\u7C64\u7C59\u9931\u7CF9\u7D18\u7D1D\u7D35\u7D16\u7D70\u7D8C\u7D5B\u7DD3\u979D\u7DAF\u7E15\u7DDA\u7E17\u7E6E\u7FFD\u7FEC\u80B7\u9AD2\u9183\u8195\u9F76\u81E2\u8C54\u8279\u8598\u839C\u84F4\u8600\u85C1\u866F\u87BF\u8828\u5ACB\u8918\u894F\u890C\u8949\u8941\u8974\u898E\u89A5\u8B8B\u8A12\u8A29\u8A57\u8A56\u8B78\u8ADD\u8AE1\u8C37\u8C76\u8C9F\u9F4E\u8D14\u8CD9\u8CF5\u8D07\u8D6C\u8DD6\u8E82\u8E0A\u8ED1\u8F08\u8F2C\u8F40\u9B31\u90C4\u91B1\u9245\u9451\u91FA\u9212\u935A\u9203\u9262\u947D\u9276\u928D\u929B\u92D9\u93FD\u9417\u9321\u9329\u6774\u9348\u9360\u93A1\u939B\u9394\u93F0\u93D0\u9481\u9436\u945E\u9588\u9592\u95D3\u95CD\u95E0\u95D2\u95E4\u965D\u97B4\u97CD\u9832\u71B2\u982E\u9834\u9852\u7E87\u98BA\u98AD\u98B8\u98BB\u98C0\u98E3\u98E2\u98E5\u98FF\u9904\u990E\u990F\u9916\u9915\u991C\u9936\u9941\u993A\u99B9\u99F0\u9A6B\u9A02\u99F8\u9A0C\u9A4C\u9A24\u9A66\u9B5B\u9B62\u9B68\u9B7A\u9B8B\u9B93\u9B8A\u9B8D\u9BB3\u9BA6\u9C02\u9B9C\u9C60\u9BBA\u9BB6\u9BD2\u9BD5\u9C3A\u9C0F\u9C68\u9BF7\u9C2E\u9C03\u9C01\u9C42\u9C1F\u9C1C\u9C3C\u9C6F\u9C64\u9C63\u9CF2\u9DAC\u9D1E\u9D12\u9DFD\u9D34\u9D43\u9D50\u9DF3\u9D7E\u9D6E\u9D8A\u9D77\u9DEB\u9DA1\u9DCA\u9DB2\u9DB9\u9DBA\u9DC1\u9DD6\u9E07\u9E0F\u9E18\u9EF6\u9F02\u9780\u9F55\u9F57\u5FD7\u5236\u8AEE\u53EA\u7CFB\u9B06\u5690\u9762\u4E7E\u62FC\u5641\u8B9A\u9AEE\u6BAD\u7DFB\u59E6\u7A6B\u934A\u8FF4\u4FC2\u8E5F\u96BB\u95E2\u95C6\u59B3"}function No(t){let e="";for(let r=0;r<t.length;r++){let n=t.charAt(r);if(wir.has(n)){e+=n;continue}let s=P8e().indexOf(n);s!==-1?e+=KV().charAt(s):e+=n}return e}function Qt(t){let e="";for(let r=0;r<t.length;r++)KV().indexOf(t.charAt(r))!=-1?e+=P8e().charAt(KV().indexOf(t.charAt(r))):e+=t.charAt(r);return e}function cf(t){return!/[\u4e00-\u9fff]/.test(t)}var wir,so=lr(()=>{wir=new Map([["\u5403","\u5403"],["\u6CE8","\u6CE8"]])});function ts(t){let e;if(typeof t=="string")e=t;else if(Array.isArray(t))e=JSON.stringify(t);else if(typeof t=="object")e=JSON.stringify(t);else{_("error","[Utils] [Common] Unsupported data type");return}_("info","[Utils] [Common]",e.slice(0,200))}function W0(t){let e=t.match(/\((\d{4})\)/);return e?parseInt(e[1]):null}function tg(t){if(/^\d+$/.test(t))return Number(t);let e={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u58F9:1,\u8CB3:2,\u53C3:3,\u8086:4,\u4F0D:5,\u9678:6,\u67D2:7,\u634C:8,\u7396:9},r={\u5341:10,\u767E:100,\u5343:1e3,\u62FE:10,\u4F70:100,\u4EDF:1e3},n=0,s=0,i=1;for(let a=0;a<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 k8e(t){if(!t||typeof t!="string")return{cleanFileName:"",preferredPlatform:""};let e=t.indexOf("@");if(e===-1)return{cleanFileName:t.trim(),preferredPlatform:""};let r=t.substring(0,e).trim(),n=t.substring(e+1).trim(),s=n.match(/^(\w+)\s+(S\d+E\d+)$/);if(s){let i=s[1],a=s[2];return{cleanFileName:`${r} ${a}`,preferredPlatform:VV(i)}}else{let i=r.match(/^(.+?)\s+(S\d+E\d+)$/);if(i){let a=i[1],o=i[2];return{cleanFileName:`${a} ${o}`,preferredPlatform:VV(n)}}else return{cleanFileName:r,preferredPlatform:VV(n)}}}function VV(t){if(!t||typeof t!="string")return"";let e=t.trim();return O.allowedPlatforms.includes(e)?e:""}function D8e(t){if(!t)return[...O.platformOrderArr];if(!O.allowedPlatforms.includes(t))return _("warn",`[Utils] [Common] Invalid platform: ${t}, using default order`),[...O.platformOrderArr];let e=[t];for(let r of O.platformOrderArr)r!==t&&r!==null&&e.push(r);return e.push(null),e}function B8e(t){return t?String(t).replace(/[\u200B-\u200F\uFEFF]/g,"").trim():""}function Fr(t){return t?String(t).replace(/[^\u4e00-\u9fa5\u3400-\u4DBF\u{20000}-\u{2EE5F}\u{30000}-\u{323AF}\u3040-\u30ff\uFF65-\uFF9F\uAC00-\uD7AFa-zA-Z0-9\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\u2160-\u217F\u0400-\u04FF\u00C0-\u024F\u0370-\u03FF]/gu,""):""}function $0(t,e){if(!t||!e)return!1;let r=Fr(t),n=Fr(e);if(r===n)return!0;let s=[" ","(","\uFF08",":","\uFF1A","-","\u2014","\xB7","\u7B2C","S","s","\u5E74\u756A","\u5408\u96C6"];for(let i of s)if(r.startsWith(n+i))return!0;return!1}function Wt(t){if(!t)return null;let e=t.match(/(?:第\s*([0-9一二三四五六七八九十百千万]+)\s*[季期部])|(?:S(?:eason)?\s*(\d+))|(?:Part\s*(\d+))/i);if(e){let r=e[1]||e[2]||e[3];if(r)return tg(r)}return null}function yt(t,e,r=null){if(O.strictTitleMatch)return $0(t,e);let n=Fr(t).toLowerCase(),i=[Fr(e).toLowerCase()];try{i=[...new Set([e,Qt(e),No(e)])].map(o=>Fr(o).toLowerCase()).filter(Boolean)}catch{}if(i.some(o=>n.includes(o)))return!0;let a=r!==null?r:Wt(e);if(a!==null){let o=Wt(t);if(a>1){if((o||1)!==a)return!1}else if(a===1&&o!==null&&o!==1)return!1}return i.some(o=>{if(Math.abs(n.length-o.length)>Math.max(n.length,o.length)*.7||/^[a-zA-Z0-9]+$/.test(o))return!1;let c=0,u=0;for(let l of o){let d=n.indexOf(l,u);d!==-1&&(c++,u=d+1)}return c/o.length>.8})}function et(t,e){let r=t?.constructor?.name;if(e==="array"){if(!Array.isArray(t))throw new TypeError(`${t} \u5FC5\u987B\u662F\u4E00\u4E2A\u6570\u7EC4\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(e==="boolean"){if(typeof t!="boolean"&&typeof t!="number")throw new TypeError(`${t} \u5FC5\u987B\u662F boolean \u6216 number\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(typeof t!==e)throw new TypeError(`${t} \u5FC5\u987B\u662F ${e}\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}function Ct(t){if(!t)return{season:null,baseTitle:null};let e=t.match(/^(.*?)\(\d{4}\)/),r=e?e[1].trim():t.split("(")[0].trim(),n=Fr(r),s=n.match(/第\s*([0-9一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)\s*[季期部]/);if(s)return{season:tg(s[1]),baseTitle:n.replace(s[0],"").trim()};let i=n.match(/(?:S(?:eason)?|Season)\s*(\d+)/i);if(i)return{season:parseInt(i[1],10),baseTitle:n.replace(i[0],"").trim()};let a=n.match(/Part\s*(\d+)/i);if(a)return{season:parseInt(a[1],10),baseTitle:n.replace(a[0],"").trim()};let o=n.match(/(?:^|\s|[^\d])(\d{1,2})$/);if(o)return{season:parseInt(o[1],10),baseTitle:n.slice(0,n.lastIndexOf(o[1])).trim()};let c=n.match(/([一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)$/);return c?{season:tg(c[1]),baseTitle:n.replace(c[0],"").trim()}:{season:null,baseTitle:n}}function uf(t){if(!t)return null;let e=t.match(/第(\d+)集/);if(e)return parseInt(e[1],10);let r=t.match(/[Ee][Pp]?(\d+)/);if(r)return parseInt(r[1],10);let n=t.match(/(?:^|\s)(\d+)(?:\s|$)/);return n?parseInt(n[1],10):null}function YV(t,e){let{season:r,baseTitle:n}=Ct(t),s=uf(e);return{baseTitle:n,season:r,episode:s}}var rg,zV,hn=lr(()=>{Ot();_t();so();rg=t=>{let e=t.match(/【(.*?)】/);return e?e[1]:null},zV=t=>t.split("(")[0].trim()});var F0,DB,BB,LB,MB,JV,XV,WB,St,fb,hs=lr(()=>{hn();F0=class t{constructor({animeId:e=111,bangumiId:r="",animeTitle:n="",type:s="",typeDescription:i="",imageUrl:a="",startDate:o="",episodeCount:c=1,rating:u=0,isFavorited:l=!0,source:d="",links:f=[],mergedChildren:p=[],isHiddenChild:m=!1}={}){et(e,"number"),et(r,"string"),et(n,"string"),et(s,"string","type"),et(i,"string"),et(a,"string"),et(o,"string"),et(c,"number"),et(u,"number"),et(l,"boolean"),et(d,"string"),et(f,"array"),et(p,"array"),et(m,"boolean"),this.links=f.map(h=>DB.fromJson(h)),Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,type:s,typeDescription:i,imageUrl:a,startDate:o,episodeCount:c,rating:u,isFavorited:l,source:d,mergedChildren:p,isHiddenChild:m})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.links||[]).map(n=>DB.fromJson(n));return new t({...e,links:r})}toJson(){return{...this,links:this.links.map(e=>e.toJson())}}},DB=class t{constructor({name:e="",url:r="",title:n="",id:s=10001}={}){et(e,"string"),et(r,"string"),et(n,"string"),et(s,"number"),Object.assign(this,{name:e,url:r,title:n,id:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},BB=class t{constructor({episodeId:e=10001,animeId:r=111,animeTitle:n="",episodeTitle:s="",type:i="",typeDescription:a="",shift:o=1,imageUrl:c=""}={}){et(e,"number"),et(r,"number"),et(n,"string"),et(s,"string"),et(i,"string","type"),et(a,"string"),et(o,"number"),et(c,"string"),Object.assign(this,{episodeId:e,animeId:r,animeTitle:n,episodeTitle:s,type:i,typeDescription:a,shift:o,imageUrl:c})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},LB=class{constructor({episodeId:e="",episodeTitle:r=""}={}){this.episodeId=e,this.episodeTitle=r}};LB.prototype.toJson=function(){return{episodeId:this.episodeId,episodeTitle:this.episodeTitle}};MB=class t{constructor({animeId:e=111,animeTitle:r="",type:n="",typeDescription:s="",episodes:i=[]}={}){et(e,"number"),et(r,"string"),et(n,"string"),et(s,"string"),et(i,"array"),Object.assign(this,{animeId:e,animeTitle:r,type:n,typeDescription:s,episodes:i.map(a=>new LB(a))})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this,episodes:this.episodes.map(e=>e.toJson())}}},JV=class t{constructor({id:e="",airDate:r="",name:n="",episodeCount:s=0}={}){et(e,"string"),et(r,"string"),et(n,"string"),et(s,"number"),Object.assign(this,{id:e,airDate:r,name:n,episodeCount:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},XV=class t{constructor({seasonId:e="",episodeId:r=10001,episodeTitle:n="",episodeNumber:s="",airDate:i=""}={}){et(e,"string"),et(r,"number"),et(n,"string"),et(s,"string"),et(i,"string"),Object.assign(this,{seasonId:e,episodeId:r,episodeTitle:n,episodeNumber:s,airDate:i})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},WB=class t{constructor({animeId:e=111,bangumiId:r="",animeTitle:n="",imageUrl:s="",isOnAir:i=!0,airDay:a=1,isFavorited:o=!0,rating:c=0,type:u="",typeDescription:l="",seasons:d=[],episodes:f=[]}={}){et(e,"number"),et(r,"string"),et(n,"string"),et(s,"string"),et(i,"boolean"),et(a,"number"),et(o,"boolean"),et(c,"number"),et(u,"string"),et(l,"string"),et(d,"array"),et(f,"array");let p=d.map(m=>JV.fromJson(m));Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,imageUrl:s,isOnAir:i,airDay:a,isFavorited:o,rating:c,type:u,typeDescription:l,seasons:p,episodes:f})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=e.episodes.map(n=>XV.fromJson(n));return new t({...e,episodes:r})}toJson(){return{...this,seasons:this.seasons.map(e=>e.toJson()),episodes:this.episodes.map(e=>e.toJson())}}},St=class t{constructor({type:e="",segmentList:r=[],duration:n=0}={}){et(e,"string"),et(r,"array"),et(n,"number"),this.segmentList=r.map(s=>fb.fromJson(s)),Object.assign(this,{type:e,duration:n})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.segmentList||[]).map(n=>fb.fromJson(n));return new t({...e,segmentList:r})}toJson(){return{...this,segmentList:this.segmentList.map(e=>e.toJson())}}},fb=class t{constructor({type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o}={}){et(e,"string","type"),et(r,"number","segment_start"),et(n,"number","segment_end"),et(s,"string","url"),i!==void 0&&et(i,"string","data"),a!==void 0&&et(a,"string","_m_h5_tk"),o!==void 0&&et(o,"string","_m_h5_tk_enc"),Object.assign(this,{type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}}});var j8e={};is(j8e,{addAnime:()=>Dt,addEpisode:()=>U8e,cleanupExpiredIPs:()=>qB,findAnimeIdByCommentId:()=>UB,findAnimeTitleById:()=>rz,findIndexById:()=>FB,findTitleById:()=>tz,findUrlById:()=>DI,getCommentCache:()=>lf,getDirname:()=>jB,getLastSearch:()=>ez,getLocalCaches:()=>az,getPreferAnimeId:()=>iz,getSearchCache:()=>OI,isCommentCacheValid:()=>F8e,isSearchCacheValid:()=>$8e,judgeLocalCacheValid:()=>oz,readCacheFromFile:()=>ng,removeEarliestAnime:()=>$t,removeEpisodeByUrl:()=>q8e,resolveAnimeById:()=>sg,resolveAnimeByIdFromDetailStore:()=>ig,resolveEpisodeContextById:()=>mb,setCommentCache:()=>kI,setLastSearch:()=>ZV,setPreferByAnimeId:()=>sz,setSearchCache:()=>PI,storeAnimeIdsToMap:()=>nz,updateLocalCaches:()=>QB,writeCacheToFile:()=>HB});function ZV(t,e){if(TI.set(t,{...e,timestamp:Date.now()}),TI.size>200)for(let[r,n]of TI)Date.now()-n.timestamp>3600*1e3&&TI.delete(r)}function ez(t){return TI.get(t)}function pb(t){if(!t||typeof t!="object")return"";let e=t.source?String(t.source)+":":"";return t.bangumiId!==void 0&&t.bangumiId!==null&&String(t.bangumiId)!==""?"bangumi:"+e+String(t.bangumiId):t.animeId!==void 0&&t.animeId!==null&&String(t.animeId)!==""?"anime:"+e+String(t.animeId):""}function L8e(t,e){if(!(t instanceof Map)||!e)return;let r=pb(e);r&&t.set(r,e)}function*NI(t){if(!(t instanceof Map))return;let e=new Set;for(let r of t.values()){let n=pb(r);n&&e.has(n)||(n&&e.add(n),yield r)}}function Rir(t){let e=[];for(let r of NI(t))e.push(r);return e}function Nir(){let t=Date.now(),e=[];for(let[r,n]of O.searchCache.entries()){let s=(t-n.timestamp)/6e4;if(s>O.searchCacheMinutes){O.searchCache.delete(r),_("info",`[Cache] Search cache for "${r}" expired after ${s.toFixed(2)} minutes`);continue}e.push(n)}return e.sort((r,n)=>(n.timestamp||0)-(r.timestamp||0)),e}function M8e(t,e,r){let n=Date.now(),s=0;for(let[i,a]of t.entries())(n-a.timestamp)/6e4>e&&(t.delete(i),s++);s>0&&_("info",`[Cache] ${r} TTL \u626B\u63CF\u5B8C\u6BD5\uFF0C\u5DF2\u79FB\u9664 ${s} \u4E2A\u8FC7\u671F\u6761\u76EE\uFF0C\u5269\u4F59 ${t.size} \u4E2A`)}function Oir(t,e){return String(t?.animeId)===e||String(t?.bangumiId)===e}function $B(t,e,r=null){let n=null;for(let s of t)if(Oir(s,e)){if(r&&s?.source===r)return s;n||(n=s)}return n}function*W8e(){let t=new Set;for(let e of Nir())if(Array.isArray(e.details))for(let r of e.details){let n=pb(r);n&&t.has(n)||(n&&t.add(n),yield r)}}function sg(t,e=null,r=null){let n=String(t),s=$B(O.animes,n,r);return s||(s=$B(NI(e),n,r),s)?s:$B(W8e(),n,r)}function ig(t,e=null,r=null){let n=String(t);return $B(NI(e),n,r)}function mb(t,e=null){let r=Number(t);if(!Number.isFinite(r))return null;let n=i=>{if(!i?.links||!Array.isArray(i.links))return null;let a=i.links.findIndex(o=>o.id===r);return a===-1?null:{anime:i,link:i.links[a],index:a}};for(let i of O.animes){let a=n(i);if(a)return a}for(let i of NI(e)){let a=n(i);if(a)return a}let s=new Set;for(let i of O.animes){let a=pb(i);a&&s.add(a)}for(let i of NI(e)){let a=pb(i);a&&s.add(a)}for(let i of W8e()){let a=pb(i);if(a&&s.has(a))continue;a&&s.add(a);let o=n(i);if(o)return o}return null}function $8e(t){if(!O.searchCache.has(t))return!1;let e=O.searchCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.searchCacheMinutes?(O.searchCache.delete(t),_("info",`[Cache] Search cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function OI(t,e=null){if($8e(t)){_("info",`[Cache] Using search cache for "${t}"`);let r=O.searchCache.get(t);return e instanceof Map&&Array.isArray(r.details)&&r.details.forEach(n=>{L8e(e,n)}),r.results}return null}function PI(t,e,r=null){let n=Rir(r);if(M8e(O.searchCache,O.searchCacheMinutes,"searchCache"),O.searchCache.set(t,{results:e,details:n,timestamp:Date.now()}),O.searchCache.size>500){let s=O.searchCache.keys().next().value;O.searchCache.delete(s),_("info",`[Cache] searchCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${s}`)}_("info",`[Cache] Cached search results for "${t}" (${e.length} animes)`)}function F8e(t){if(!O.commentCache.has(t))return!1;let e=O.commentCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.commentCacheMinutes?(O.commentCache.delete(t),_("info",`[Cache] Comment cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function lf(t){return F8e(t)?(_("info",`[Cache] Using comment cache for "${t}"`),O.commentCache.get(t).comments):null}function kI(t,e){if(M8e(O.commentCache,O.commentCacheMinutes,"commentCache"),O.commentCache.set(t,{comments:e,timestamp:Date.now()}),O.commentCache.size>500){let r=O.commentCache.keys().next().value;O.commentCache.delete(r),_("info",`[Cache] commentCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${r}`)}_("info",`[Cache] Cached comments for "${t}" (${e.length} comments)`)}function U8e(t,e){let r=O.episodeIds.find(s=>s.url===t&&s.title===e);if(r)return _("info",`[Cache] Episode with URL ${t} and title ${e} already exists in episodeIds, returning existing episode.`),r;O.episodeNum++;let n={id:O.episodeNum,url:t,title:e};return O.episodeIds.push(n),_("info",`[Cache] Added to episodeIds: ${JSON.stringify(n)}`),n}function q8e(t){let e=O.episodeIds.length;O.episodeIds=O.episodeIds.filter(n=>n.url!==t);let r=e-O.episodeIds.length;return r>0?(_("info",`[Cache] Removed ${r} episode(s) from episodeIds with URL: ${t}`),!0):(_("error",`[Cache] No episode found in episodeIds with URL: ${t}`),!1)}function DI(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return _("info",`[Cache] Found URL for ID ${t}: ${e.url}`),e.url;let r=mb(t);return r?.link?.url?(_("info",`[Cache] Found URL for ID ${t} via cached anime details: ${r.link.url}`),r.link.url):(_("error",`[Cache] No URL found for ID: ${t}`),null)}function FB(t){let e=O.episodeIds.findIndex(n=>n.id===t);if(e!==-1)return _("info",`[Cache] Found index for ID ${t}: ${e}`),e;let r=mb(t);return r?(_("info",`[Cache] Found index for ID ${t} via cached anime details: ${r.index}`),r.index):(_("error",`[Cache] No index found for ID: ${t}`),-1)}function tz(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return _("info",`[Cache] Found TITLE for ID ${t}: ${e.title}`),e.title;let r=mb(t);return r?.link?.title?(_("info",`[Cache] Found TITLE for ID ${t} via cached anime details: ${r.link.title}`),r.link.title):(_("error",`[Cache] No TITLE found for ID: ${t}`),null)}function rz(t){let e=mb(t);return e?.anime?.animeTitle?(_("info",`[Cache] Found animeTitle for ID ${t}: ${e.anime.animeTitle}`),e.anime.animeTitle):(_("error",`[Cache] No animeTitle found for ID: ${t}`),null)}function Dt(t,e=null){t=F0.fromJson(t);try{if(!t.links||!Array.isArray(t.links))return _("error",`[Cache] Invalid or missing links in anime: ${JSON.stringify(t)}`),!1;let r=[];t.links.forEach(i=>{if(i.url){let a=U8e(i.url,i.title);a&&r.push(a)}else _("error",`[Cache] Invalid link in anime, missing url: ${JSON.stringify(i)}`)});let n=F0.fromJson({...t,links:r});L8e(e,n);let s=O.animes.findIndex(i=>i.animeId===t.animeId);return s!==-1&&(O.animes.splice(s,1),_("info",`[Cache] Removed old anime at index: ${s}`)),O.animes.push(n),_("info",`[Cache] Added anime to latest position: ${t.animeId}`),O.animes.length>O.MAX_ANIMES&&($t()||_("error","[Cache] Failed to remove earliest anime, but continuing")),_("info",`[Cache] animes: ${JSON.stringify(O.animes.map(i=>({links:i.links,animeId:i.animeId,bangumiId:i.bangumiId,animeTitle:i.animeTitle})),(i,a)=>i==="links"?a.length:a)}`),!0}catch(r){return _("error",`[Cache] addAnime failed: ${r.message}`),!1}}function $t(){if(O.animes.length===0)return _("error","[Cache] No animes to remove."),!1;let t=O.animes.shift();return _("info",`[Cache] Removed earliest anime: ${JSON.stringify(t)}`),t.links&&Array.isArray(t.links)&&t.links.forEach(e=>{e.url&&q8e(e.url)}),!0}function nz(t,e){let r=new Set,n=O.lastSelectMap.get(e);if(n&&Array.isArray(n.animeIds))for(let d of n.animeIds)r.add(d);for(let d of t)r.add(d.animeId);let s=n?.prefer,i=n?.source,a=n?.preferBySeason,o=n?.sourceBySeason,c=n?.offsets,u=a?{...a}:{},l=o?{...o}:{};if(s!==void 0&&(u.default=s),i!==void 0&&(l.default=i),O.lastSelectMap.has(e)&&O.lastSelectMap.delete(e),O.lastSelectMap.set(e,{animeIds:[...r],...Object.keys(u).length>0&&{preferBySeason:u},...Object.keys(l).length>0&&{sourceBySeason:l},...c!==void 0&&{offsets:c}}),O.lastSelectMap.size>O.MAX_LAST_SELECT_MAP){let d=O.lastSelectMap.keys().next().value;O.lastSelectMap.delete(d),_("info",`[Cache] Removed earliest entry from lastSelectMap: ${d}`)}}function UB(t){let e=mb(t);return e?[e.anime.animeId,e.anime.source,e.link.title,e.anime.aliases||[]]:[null,null,null,[]]}function sz(t,e,r=null,n=null){for(let[s,i]of O.lastSelectMap.entries())if(i.animeIds&&i.animeIds.includes(t)){let a=r===null?"default":String(r);return i.preferBySeason=i.preferBySeason||{},i.sourceBySeason=i.sourceBySeason||{},i.preferBySeason[a]=t,i.sourceBySeason[a]=e,r!==null&&n!==null&&(i.offsets=i.offsets||{},i.offsets[a]=n),O.lastSelectMap.set(s,i),s}return null}function iz(t,e=null){let r=O.lastSelectMap.get(t);if(!r)return[null,null,null];let n=e===null?"default":String(e),s=r.preferBySeason||{},i=r.sourceBySeason||{},a=s[n]??s.default??r.prefer??null,o=i[n]??i.default??r.source??null,c=r.offsets||null;return[a,o,c]}function qB(t){let r=0;for(let[n,s]of O.requestHistory.entries()){let i=s.filter(a=>t-a<=6e4);i.length===0?(O.requestHistory.delete(n),r++,_("info",`[Utils] [Rate Limit] Cleaned up expired IP record: ${n}`)):i.length<s.length&&O.requestHistory.set(n,i)}r>0&&_("info",`[Utils] [Rate Limit] Cleanup completed: removed ${r} expired IP records`)}function jB(){return typeof __dirname<"u"?__dirname:RI.join(process.cwd(),"danmu_api","utils")}function ng(t){let e=RI.join(jB(),"..","..",".cache",`${t}`);if(wI.existsSync(e)){let r=wI.readFileSync(e,"utf8");return JSON.parse(r)}return null}function HB(t,e){let r=RI.join(jB(),"..","..",".cache",`${t}`);wI.writeFileSync(r,JSON.stringify(e),"utf8")}async function az(){if(!O.localCacheInitialized)try{_("info","[Cache] getLocalCaches start."),O.animes=JSON.parse(ng("animes"))||O.animes,O.episodeIds=JSON.parse(ng("episodeIds"))||O.episodeIds,O.episodeNum=JSON.parse(ng("episodeNum"))||O.episodeNum,O.reqRecords=JSON.parse(ng("reqRecords"))||O.reqRecords,O.todayReqNum=JSON.parse(ng("todayReqNum"))||O.todayReqNum;let t=ng("lastSelectMap");t&&(O.lastSelectMap=new Map(Object.entries(JSON.parse(t))),_("info",`[Cache] Restored lastSelectMap from local cache with ${O.lastSelectMap.size} entries`)),O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.localCacheInitialized=!0,_("info","[Cache] getLocalCaches completed successfully.")}catch(t){_("error",`[Cache] getLocalCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function QB(){try{_("info","[Cache] updateLocalCaches start.");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=an(s);i!==O.lastHashes[r]&&(HB(r,s),t.push({key:r,hash:i}))}t.length>0?(_("info",`[Cache] Updated local caches for keys: ${t.map(r=>r.key).join(", ")}`),t.forEach(({key:r,hash:n})=>{O.lastHashes[r]=n})):_("info","[Cache] No changes detected, skipping local cache update.")}catch(t){_("error",`[Cache] updateLocalCaches failed: ${t.message}`,t.stack),_("error",`[Cache] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function oz(t,e){if(e==="node")try{if(wI=await import("fs"),RI=await import("path"),!O.localCacheValid&&t!=="/favicon.ico"&&t!=="/robots.txt"){let r=RI.join(jB(),"..","..",".cache");wI.existsSync(r)?O.localCacheValid=!0:O.localCacheValid=!1}}catch(r){_("warn","[Cache] Node.js modules not available:",r.message),O.localCacheValid=!1}}var wI,RI,TI,$n=lr(()=>{Ot();_t();hs();Ts();TI=new Map});var fz=E(JB=>{"use strict";Object.defineProperty(JB,"__esModule",{value:!0});JB.VerbatimString=void 0;var dz=class extends String{format;constructor(e,r){super(r),this.format=e}};JB.VerbatimString=dz});var Ol=E(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.MultiErrorReply=mr.CommandTimeoutDuringMaintenanceError=mr.SocketTimeoutDuringMaintenanceError=mr.TimeoutError=mr.BlobError=mr.SimpleError=mr.ErrorReply=mr.ReconnectStrategyError=mr.RootNodesUnavailableError=mr.SocketClosedUnexpectedlyError=mr.DisconnectsClientError=mr.ClientOfflineError=mr.ClientClosedError=mr.SocketTimeoutError=mr.ConnectionTimeoutError=mr.WatchError=mr.AbortError=void 0;var pz=class extends Error{constructor(){super("The command was aborted")}};mr.AbortError=pz;var mz=class extends Error{constructor(e="One (or more) of the watched keys has been changed"){super(e)}};mr.WatchError=mz;var hz=class extends Error{constructor(){super("Connection timeout")}};mr.ConnectionTimeoutError=hz;var gz=class extends Error{constructor(e){super(`Socket timeout timeout. Expecting data, but didn't receive any in ${e}ms.`)}};mr.SocketTimeoutError=gz;var Az=class extends Error{constructor(){super("The client is closed")}};mr.ClientClosedError=Az;var yz=class extends Error{constructor(){super("The client is offline")}};mr.ClientOfflineError=yz;var xz=class extends Error{constructor(){super("Disconnects client")}};mr.DisconnectsClientError=xz;var bz=class extends Error{constructor(){super("Socket closed unexpectedly")}};mr.SocketClosedUnexpectedlyError=bz;var Ez=class extends Error{constructor(){super("All the root nodes are unavailable")}};mr.RootNodesUnavailableError=Ez;var _z=class extends Error{originalError;socketError;constructor(e,r){super(e.message),this.originalError=e,this.socketError=r}};mr.ReconnectStrategyError=_z;var Ab=class extends Error{};mr.ErrorReply=Ab;var Sz=class extends Ab{};mr.SimpleError=Sz;var vz=class extends Ab{};mr.BlobError=vz;var MI=class extends Error{};mr.TimeoutError=MI;var Iz=class extends MI{constructor(e){super(`Socket timeout during maintenance. Expecting data, but didn't receive any in ${e}ms.`)}};mr.SocketTimeoutDuringMaintenanceError=Iz;var Cz=class extends MI{constructor(e){super(`Command timeout during maintenance. Waited to write command for more than ${e}ms.`)}};mr.CommandTimeoutDuringMaintenanceError=Cz;var Tz=class extends Ab{replies;errorIndexes;constructor(e,r){super(`${r.length} commands failed, see .replies and .errorIndexes for more information`),this.replies=e,this.errorIndexes=r}*errors(){for(let e of this.errorIndexes)yield this.replies[e]}};mr.MultiErrorReply=Tz});var eL=E(pt=>{"use strict";var wz;Object.defineProperty(pt,"__esModule",{value:!0});pt.Decoder=pt.PUSH_TYPE_MAPPING=pt.RESP_TYPES=void 0;var eWe=fz(),XB=Ol();pt.RESP_TYPES={NULL:95,BOOLEAN:35,NUMBER:58,BIG_NUMBER:40,DOUBLE:44,SIMPLE_STRING:43,BLOB_STRING:36,VERBATIM_STRING:61,SIMPLE_ERROR:45,BLOB_ERROR:33,ARRAY:42,SET:126,MAP:37,PUSH:62};var Jr={"\r":13,t:116,"+":43,"-":45,0:48,".":46,i:105,n:110,E:69,e:101};pt.PUSH_TYPE_MAPPING={[pt.RESP_TYPES.BLOB_STRING]:Buffer};var ZB=class{onReply;onErrorReply;onPush;getTypeMapping;#e=0;#t;constructor(e){this.onReply=e.onReply,this.onErrorReply=e.onErrorReply,this.onPush=e.onPush,this.getTypeMapping=e.getTypeMapping}reset(){this.#e=0,this.#t=void 0}write(e){if(this.#e>=e.length){this.#e-=e.length;return}if(this.#t&&(this.#t(e)||this.#e>=e.length)){this.#e-=e.length;return}do{let r=e[this.#e];if(++this.#e===e.length){this.#t=this.#r.bind(this,r);break}if(this.#n(r,e))break}while(this.#e<e.length);this.#e-=e.length}#r(e,r){return this.#t=void 0,this.#n(e,r)}#n(e,r){switch(e){case pt.RESP_TYPES.NULL:return this.onReply(this.#s()),!1;case pt.RESP_TYPES.BOOLEAN:return this.#a(this.onReply,this.#i(r));case pt.RESP_TYPES.NUMBER:return this.#a(this.onReply,this.#c(this.getTypeMapping()[pt.RESP_TYPES.NUMBER],r));case pt.RESP_TYPES.BIG_NUMBER:return this.#a(this.onReply,this.#d(this.getTypeMapping()[pt.RESP_TYPES.BIG_NUMBER],r));case pt.RESP_TYPES.DOUBLE:return this.#a(this.onReply,this.#g(this.getTypeMapping()[pt.RESP_TYPES.DOUBLE],r));case pt.RESP_TYPES.SIMPLE_STRING:return this.#a(this.onReply,this.#x(this.getTypeMapping()[pt.RESP_TYPES.SIMPLE_STRING],r));case pt.RESP_TYPES.BLOB_STRING:return this.#a(this.onReply,this.#T(this.getTypeMapping()[pt.RESP_TYPES.BLOB_STRING],r));case pt.RESP_TYPES.VERBATIM_STRING:return this.#a(this.onReply,this.#O(this.getTypeMapping()[pt.RESP_TYPES.VERBATIM_STRING],r));case pt.RESP_TYPES.SIMPLE_ERROR:return this.#a(this.onErrorReply,this.#Q(r));case pt.RESP_TYPES.BLOB_ERROR:return this.#a(this.onErrorReply,this.#K(r));case pt.RESP_TYPES.ARRAY:return this.#a(this.onReply,this.#q(this.getTypeMapping(),r));case pt.RESP_TYPES.SET:return this.#a(this.onReply,this.#J(this.getTypeMapping(),r));case pt.RESP_TYPES.MAP:return this.#a(this.onReply,this.#te(this.getTypeMapping(),r));case pt.RESP_TYPES.PUSH:return this.#a(this.onPush,this.#q(pt.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]===Jr.t;return this.#e+=3,r}#c(e,r){if(e===String)return this.#x(String,r);switch(r[this.#e]){case Jr["+"]:return this.#l(!1,r);case Jr["-"]: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===Jr["\r"])return this.#e=n+2,e;e=e*10+s-Jr[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 Jr["+"]:return this.#f(!1,r);case Jr["-"]:return this.#f(!0,r);default:return this.#m(!1,this.#y.bind(this,0n),r)}}#f(e,r){let n=this.#y.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}#y(e,r){let n=this.#e;do{let s=r[n];if(s===Jr["\r"])return this.#e=n+2,e;e=e*10n+BigInt(s-Jr[0])}while(++n<r.length);return this.#e=n,this.#y.bind(this,e)}#g(e,r){if(e===String)return this.#x(String,r);switch(r[this.#e]){case Jr.n:return this.#e+=5,NaN;case Jr["+"]:return this.#E(!1,r);case Jr["-"]:return this.#E(!0,r);default:return this.#S(!1,0,r)}}#E(e,r){return++this.#e===r.length?this.#S.bind(this,e,0):this.#S(e,0,r)}#S(e,r,n){return n[this.#e]===Jr.i?(this.#e+=5,e?-1/0:1/0):this.#A(e,r,n)}#A(e,r,n){let s=this.#e;do{let i=n[s];switch(i){case Jr["."]:return this.#e=s+1,this.#e<n.length?this.#_(e,0,r,n):this.#_.bind(this,e,0,r);case Jr.E:case Jr.e:this.#e=s+1;let a=e?-r:r;return this.#e<n.length?this.#v(a,n):this.#v.bind(this,a);case Jr["\r"]:return this.#e=s+2,e?-r:r;default:r=r*10+i-Jr[0]}}while(++s<n.length);return this.#e=s,this.#A.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,r,n,s){let i=this.#e;do{let a=s[i];switch(a){case Jr.E:case Jr.e:this.#e=i+1;let o=e?-n:n;return this.#e===s.length?this.#v.bind(this,o):this.#v(o,s);case Jr["\r"]:return this.#e=i+2,e?-n:n}r<wz.#I.length&&(n+=(a-Jr[0])*wz.#I[r++])}while(++i<s.length);return this.#e=i,this.#_.bind(this,e,r,n)}#v(e,r){switch(r[this.#e]){case Jr["+"]:return++this.#e===r.length?this.#b.bind(this,!1,e,0):this.#b(!1,e,0,r);case Jr["-"]: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===Jr["\r"])return this.#e=i+2,r*10**(e?-n:n);n=n*10+a-Jr[0]}while(++i<s.length);return this.#e=i,this.#b.bind(this,e,r,n)}#u(e,r){for(;e[r]!==Jr["\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.#P.bind(this,[r.subarray(n)],e);let i=r.subarray(n,s);return e===Buffer?i:i.toString()}#P(e,r,n){let s=this.#e,i=this.#u(n,s);if(i===-1)return e.push(n.subarray(s)),this.#P.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]===Jr["-"])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.#k(this.#p.bind(this,0),e,r)}#k(e,r,n){let s=e(n);return typeof s=="function"?this.#k.bind(this,s,r):this.#ce(s,r,n)}#ce(e,r,n){let s=e-4;return r===eWe.VerbatimString?this.#ue(s,n):(this.#e+=4,this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n))}#ue(e,r){let n=this.#N.bind(this,3,1,String);return this.#e>=r.length?this.#F.bind(this,e,n):this.#F(e,n,r)}#F(e,r,n){let s=r(n);return typeof s=="function"?this.#F.bind(this,e,s):this.#le(e,s,n)}#le(e,r,n){return this.#H(r,this.#R.bind(this,e,String),n)}#H(e,r,n){let s=r(n);return typeof s=="function"?this.#H.bind(this,e,s):new eWe.VerbatimString(e,s)}#Q(e){let r=this.#x(String,e);return typeof r=="function"?this.#G.bind(this,r):new XB.SimpleError(r)}#G(e,r){let n=e(r);return typeof n=="function"?this.#G.bind(this,n):new XB.SimpleError(n)}#K(e){let r=this.#T(String,e);return typeof r=="function"?this.#V.bind(this,r):new XB.BlobError(r)}#V(e,r){let n=e(r);return typeof n=="function"?this.#V.bind(this,n):new XB.BlobError(n)}#w(e,r){let n=r[this.#e];return++this.#e===r.length?this.#U.bind(this,n,e):this.#U(n,e,r)}#U(e,r,n){switch(e){case pt.RESP_TYPES.NULL:return this.#s();case pt.RESP_TYPES.BOOLEAN:return this.#i(n);case pt.RESP_TYPES.NUMBER:return this.#c(r[pt.RESP_TYPES.NUMBER],n);case pt.RESP_TYPES.BIG_NUMBER:return this.#d(r[pt.RESP_TYPES.BIG_NUMBER],n);case pt.RESP_TYPES.DOUBLE:return this.#g(r[pt.RESP_TYPES.DOUBLE],n);case pt.RESP_TYPES.SIMPLE_STRING:return this.#x(r[pt.RESP_TYPES.SIMPLE_STRING],n);case pt.RESP_TYPES.BLOB_STRING:return this.#T(r[pt.RESP_TYPES.BLOB_STRING],n);case pt.RESP_TYPES.VERBATIM_STRING:return this.#O(r[pt.RESP_TYPES.VERBATIM_STRING],n);case pt.RESP_TYPES.SIMPLE_ERROR:return this.#Q(n);case pt.RESP_TYPES.BLOB_ERROR:return this.#K(n);case pt.RESP_TYPES.ARRAY:return this.#q(r,n);case pt.RESP_TYPES.SET:return this.#J(r,n);case pt.RESP_TYPES.MAP:return this.#te(r,n);default:throw new Error(`Unknown RESP type ${e} "${String.fromCharCode(e)}"`)}}#q(e,r){return r[this.#e]===Jr["-"]?(this.#e+=4,null):this.#z(this.#p(0,r),e,r)}#z(e,r,n){return typeof e=="function"?this.#de.bind(this,e,r):this.#D(new Array(e),0,r,n)}#de(e,r,n){return this.#z(e(n),r,n)}#D(e,r,n,s){for(let i=r;i<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[pt.RESP_TYPES.SET]===Set?this.#j(new Set,e,r,n):this.#D(new Array(e),0,r,n)}#j(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#j.bind(this,e,r,n);let i=this.#w(n,s);if(typeof i=="function")return this.#ee.bind(this,e,r,i,n);e.add(i),--r}return e}#ee(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#ee.bind(this,e,r,a,s):(e.add(a),this.#j(e,r-1,s,i))}#te(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#re.bind(this,n,e):this.#ne(n,e,r)}#re(e,r,n){let s=e(n);return typeof s=="function"?this.#re.bind(this,s,r):this.#ne(s,r,n)}#ne(e,r,n){switch(r[pt.RESP_TYPES.MAP]){case Map:return this.#W(new Map,e,r,n);case Array:return this.#D(new Array(e*2),0,r,n);default:return this.#$(Object.create(null),e,r,n)}}#W(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#W.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#ae.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#B.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#B.bind(this,e,r,i,a,n);e.set(i,a),--r}return e}#se(e,r){let n=r[this.#e];return++this.#e===r.length?this.#ie.bind(this,n,e):this.#ie(n,e,r)}#ie(e,r,n){switch(e){case pt.RESP_TYPES.SIMPLE_STRING:return this.#x(String,n);case pt.RESP_TYPES.BLOB_STRING:return this.#T(String,n);default:return this.#U(e,r,n)}}#ae(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#ae.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#B.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#B.bind(this,e,r,a,o,s):(e.set(a,o),this.#W(e,r-1,s,i))}#B(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#B.bind(this,e,r,n,o,i):(e.set(n,o),this.#W(e,r-1,i,a))}#$(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#$.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#oe.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#L.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#L.bind(this,e,r,i,a,n);e[i]=a,--r}return e}#oe(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#oe.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#L.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#L.bind(this,e,r,a,o,s):(e[a]=o,this.#$(e,r-1,s,i))}#L(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#L.bind(this,e,r,n,o,i):(e[n]=o,this.#$(e,r-1,i,a))}};pt.Decoder=ZB;wz=ZB});var rWe=E(yb=>{"use strict";Object.defineProperty(yb,"__esModule",{value:!0});yb.scriptSha1=yb.defineScript=void 0;var Yir=require("node:crypto");function Jir(t){return{...t,SHA1:tWe(t.SCRIPT)}}yb.defineScript=Jir;function tWe(t){return(0,Yir.createHash)("sha1").update(t).digest("hex")}yb.scriptSha1=tWe});var nWe=E(tL=>{"use strict";Object.defineProperty(tL,"__esModule",{value:!0});tL.digest=void 0;var Rz=null;async function Xir(){if(!Rz)try{Rz=(await import("@node-rs/xxhash")).xxh3}catch{throw new Error('The "digest" function requires the "@node-rs/xxhash" package, but it was not found.')}return Rz}async function Zir(t){let e=await Xir(),r=typeof t=="string"?t:new Uint8Array(t);return e.xxh64(r).toString(16).padStart(16,"0")}tL.digest=Zir});var sWe=E(Nz=>{"use strict";Object.defineProperty(Nz,"__esModule",{value:!0});Nz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","CAT"),e&&t.push(e)},transformReply:void 0}});var iWe=E(Oz=>{"use strict";Object.defineProperty(Oz,"__esModule",{value:!0});Oz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","DELUSER"),t.pushVariadic(e)},transformReply:void 0}});var aWe=E(Pz=>{"use strict";Object.defineProperty(Pz,"__esModule",{value:!0});Pz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","DRYRUN",e,...r)},transformReply:void 0}});var oWe=E(kz=>{"use strict";Object.defineProperty(kz,"__esModule",{value:!0});kz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GENPASS"),e&&t.push(e.toString())},transformReply:void 0}});var cWe=E(Dz=>{"use strict";Object.defineProperty(Dz,"__esModule",{value:!0});Dz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GETUSER",e)},transformReply:{2:t=>({flags:t[1],passwords:t[3],commands:t[5],keys:t[7],channels:t[9],selectors:t[11]?.map(e=>{let r=e;return{commands:r[1],keys:r[3],channels:r[5]}})}),3:void 0}}});var uWe=E(Bz=>{"use strict";Object.defineProperty(Bz,"__esModule",{value:!0});Bz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LIST")},transformReply:void 0}});var lWe=E(Lz=>{"use strict";Object.defineProperty(Lz,"__esModule",{value:!0});Lz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LOAD")},transformReply:void 0}});var Pl=E(rL=>{"use strict";Object.defineProperty(rL,"__esModule",{value:!0});rL.BasicCommandParser=void 0;var Mz=class{#e=[];#t=[];preserve;get redisArgs(){return this.#e}get keys(){return this.#t}get firstKey(){return this.#t[0]}get cacheKey(){let e=new Array(this.#e.length*2);for(let r=0;r<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))}};rL.BasicCommandParser=Mz});var Ce=E(Be=>{"use strict";Object.defineProperty(Be,"__esModule",{value:!0});Be.transformRedisJsonNullReply=Be.transformRedisJsonReply=Be.transformRedisJsonArgument=Be.transformStreamsMessagesReplyResp3=Be.transformStreamsMessagesReplyResp2=Be.transformStreamMessagesReply=Be.transformStreamMessageNullReply=Be.transformStreamMessageReply=Be.parseArgs=Be.parseZKeysArguments=Be.transformRangeReply=Be.parseSlotRangesArguments=Be.transformFunctionListItemReply=Be.RedisFunctionFlags=Be.transformCommandReply=Be.CommandCategories=Be.CommandFlags=Be.parseOptionalVariadicArgument=Be.pushVariadicArgument=Be.pushVariadicNumberArguments=Be.pushVariadicArguments=Be.pushEvalArguments=Be.evalFirstKeyIndex=Be.transformPXAT=Be.transformEXAT=Be.transformSortedSetReply=Be.transformTuplesReply=Be.createTransformTuplesReplyFunc=Be.transformTuplesToMap=Be.transformNullableDoubleReply=Be.createTransformNullableDoubleReplyResp2Func=Be.transformDoubleArrayReply=Be.createTransformDoubleReplyResp2Func=Be.transformDoubleReply=Be.transformStringDoubleArgument=Be.transformDoubleArgument=Be.transformBooleanArrayReply=Be.transformBooleanReply=Be.isArrayReply=Be.isNullReply=void 0;var ear=Pl(),Wz=eL();function $z(t){return t===null}Be.isNullReply=$z;function tar(t){return Array.isArray(t)}Be.isArrayReply=tar;Be.transformBooleanReply={2:t=>t===1,3:void 0};Be.transformBooleanArrayReply={2:t=>t.map(Be.transformBooleanReply[2]),3:void 0};function nL(t){switch(t){case 1/0:return"+inf";case-1/0:return"-inf";default:return t.toString()}}Be.transformDoubleArgument=nL;function rar(t){return typeof t!="number"?t:nL(t)}Be.transformStringDoubleArgument=rar;Be.transformDoubleReply={2:(t,e,r)=>{switch(r?r[Wz.RESP_TYPES.DOUBLE]:void 0){case String:return t;default:{let s;switch(t.toString()){case"inf":case"+inf":s=1/0;case"-inf":s=-1/0;case"nan":s=NaN;default:s=Number(t)}return s}}},3:void 0};function hWe(t,e){return r=>Be.transformDoubleReply[2](r,t,e)}Be.createTransformDoubleReplyResp2Func=hWe;Be.transformDoubleArrayReply={2:(t,e,r)=>t.map(hWe(e,r)),3:void 0};function nar(t,e){return r=>Be.transformNullableDoubleReply[2](r,t,e)}Be.createTransformNullableDoubleReplyResp2Func=nar;Be.transformNullableDoubleReply={2:(t,e,r)=>t===null?null:Be.transformDoubleReply[2](t,e,r),3:void 0};function sar(t,e){let r=Object.create(null);for(let n=0;n<t.length;n+=2)r[t[n].toString()]=e(t[n+1]);return r}Be.transformTuplesToMap=sar;function iar(t,e){return r=>Fz(r,t,e)}Be.createTransformTuplesReplyFunc=iar;function Fz(t,e,r){let n=r?r[Wz.RESP_TYPES.MAP]:void 0,s=t;switch(n){case Array:return t;case Map:{let i=new Map;for(let a=0;a<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}}}Be.transformTuplesReply=Fz;Be.transformSortedSetReply={2:(t,e,r)=>{let n=t,s=[];for(let i=0;i<n.length;i+=2)s.push({value:n[i],score:Be.transformDoubleReply[2](n[i+1],e,r)});return s},3:t=>t.map(e=>{let[r,n]=e;return{value:r,score:n}})};function aar(t){return(typeof t=="number"?t:Math.floor(t.getTime()/1e3)).toString()}Be.transformEXAT=aar;function oar(t){return(typeof t=="number"?t:t.getTime()).toString()}Be.transformPXAT=oar;function car(t){return t?.keys?.[0]}Be.evalFirstKeyIndex=car;function uar(t,e){return e?.keys?t.push(e.keys.length.toString(),...e.keys):t.push("0"),e?.arguments&&t.push(...e.arguments),t}Be.pushEvalArguments=uar;function lar(t,e){return Array.isArray(e)?t=t.concat(e):t.push(e),t}Be.pushVariadicArguments=lar;function dar(t,e){if(Array.isArray(e))for(let r of e)t.push(r.toString());else t.push(e.toString());return t}Be.pushVariadicNumberArguments=dar;function far(t,e){return Array.isArray(e)?t.push(e.length.toString(),...e):t.push("1",e),t}Be.pushVariadicArgument=far;function par(t,e,r){r!==void 0&&(t.push(e),t.pushVariadicWithLength(r))}Be.parseOptionalVariadicArgument=par;var dWe;(function(t){t.WRITE="write",t.READONLY="readonly",t.DENYOOM="denyoom",t.ADMIN="admin",t.PUBSUB="pubsub",t.NOSCRIPT="noscript",t.RANDOM="random",t.SORT_FOR_SCRIPT="sort_for_script",t.LOADING="loading",t.STALE="stale",t.SKIP_MONITOR="skip_monitor",t.ASKING="asking",t.FAST="fast",t.MOVABLEKEYS="movablekeys"})(dWe||(Be.CommandFlags=dWe={}));var fWe;(function(t){t.KEYSPACE="@keyspace",t.READ="@read",t.WRITE="@write",t.SET="@set",t.SORTEDSET="@sortedset",t.LIST="@list",t.HASH="@hash",t.STRING="@string",t.BITMAP="@bitmap",t.HYPERLOGLOG="@hyperloglog",t.GEO="@geo",t.STREAM="@stream",t.PUBSUB="@pubsub",t.ADMIN="@admin",t.FAST="@fast",t.SLOW="@slow",t.BLOCKING="@blocking",t.DANGEROUS="@dangerous",t.CONNECTION="@connection",t.TRANSACTION="@transaction",t.SCRIPTING="@scripting"})(fWe||(Be.CommandCategories=fWe={}));function mar([t,e,r,n,s,i,a]){return{name:t,arity:e,flags:new Set(r),firstKeyIndex:n,lastKeyIndex:s,step:i,categories:new Set(a)}}Be.transformCommandReply=mar;var pWe;(function(t){t.NO_WRITES="no-writes",t.ALLOW_OOM="allow-oom",t.ALLOW_STALE="allow-stale",t.NO_CLUSTER="no-cluster"})(pWe||(Be.RedisFunctionFlags=pWe={}));function har(t){return{libraryName:t[1],engine:t[3],functions:t[5].map(e=>({name:e[1],description:e[3],flags:e[5]}))}}Be.transformFunctionListItemReply=har;function mWe(t,e){t.push(e.start.toString(),e.end.toString())}function gar(t,e){if(Array.isArray(e))for(let r of e)mWe(t,r);else mWe(t,e)}Be.parseSlotRangesArguments=gar;function Aar([t,e]){return{start:t,end:e}}Be.transformRangeReply=Aar;function yar(t,e){if(Array.isArray(e)){if(t.push(e.length.toString()),e.length)if(xar(e))t.pushKeys(e);else{for(let r=0;r<e.length;r++)t.pushKey(e[r].key);t.push("WEIGHTS");for(let r=0;r<e.length;r++)t.push(nL(e[r].weight))}}else t.push("1"),gWe(e)?t.pushKey(e):(t.pushKey(e.key),t.push("WEIGHTS",nL(e.weight)))}Be.parseZKeysArguments=yar;function gWe(t){return typeof t=="string"||t instanceof Buffer}function xar(t){return gWe(t[0])}function bar(t,...e){let r=new ear.BasicCommandParser;t.parseCommand(r,...e);let n=r.redisArgs;return r.preserve&&(n.preserve=r.preserve),n}Be.parseArgs=bar;function Uz(t,e){let[r,n,s,i]=e;return{id:r,message:Fz(n,void 0,t),...s!==void 0?{millisElapsedFromDelivery:s}:{},...i!==void 0?{deliveriesCounter:i}:{}}}Be.transformStreamMessageReply=Uz;function Ear(t,e){return $z(e)?e:Uz(t,e)}Be.transformStreamMessageNullReply=Ear;function WI(t,e){return t.map(Uz.bind(void 0,e))}Be.transformStreamMessagesReply=WI;function _ar(t,e,r){if(t===null)return null;switch(r?r[Wz.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:WI(i[1])})}return n}}}Be.transformStreamsMessagesReplyResp2=_ar;function Sar(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(),WI(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(WI(s))}return e}else{let e=Object.create(null);for(let[r,n]of Object.entries(t))e[r]=WI(n);return e}}Be.transformStreamsMessagesReplyResp3=Sar;function Iar(t){return JSON.stringify(t)}Be.transformRedisJsonArgument=Iar;function AWe(t){return JSON.parse(t.toString())}Be.transformRedisJsonReply=AWe;function Car(t){return $z(t)?t:AWe(t)}Be.transformRedisJsonNullReply=Car});var jz=E(qz=>{"use strict";Object.defineProperty(qz,"__esModule",{value:!0});var Tar=Ce();qz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","LOG"),e!=null&&t.push(e.toString())},transformReply:{2:(t,e,r)=>t.map(n=>{let s=n;return{count:s[1],reason:s[3],context:s[5],object:s[7],username:s[9],"age-seconds":Tar.transformDoubleReply[2](s[11],e,r),"client-info":s[13],"entry-id":s[15],"timestamp-created":s[17],"timestamp-last-updated":s[19]}}),3:void 0}}});var yWe=E($I=>{"use strict";var war=$I&&$I.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($I,"__esModule",{value:!0});var Rar=war(jz());$I.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:Rar.default.IS_READ_ONLY,parseCommand(t){t.push("ACL","LOG","RESET")},transformReply:void 0}});var xWe=E(Hz=>{"use strict";Object.defineProperty(Hz,"__esModule",{value:!0});Hz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","SAVE")},transformReply:void 0}});var bWe=E(Qz=>{"use strict";Object.defineProperty(Qz,"__esModule",{value:!0});Qz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","SETUSER",e),t.pushVariadic(r)},transformReply:void 0}});var EWe=E(Gz=>{"use strict";Object.defineProperty(Gz,"__esModule",{value:!0});Gz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","USERS")},transformReply:void 0}});var _We=E(Kz=>{"use strict";Object.defineProperty(Kz,"__esModule",{value:!0});Kz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","WHOAMI")},transformReply:void 0}});var SWe=E(Vz=>{"use strict";Object.defineProperty(Vz,"__esModule",{value:!0});Vz.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("APPEND",e,r)},transformReply:void 0}});var zz=E(xb=>{"use strict";Object.defineProperty(xb,"__esModule",{value:!0});xb.ASKING_CMD=void 0;xb.ASKING_CMD="ASKING";xb.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push(xb.ASKING_CMD)},transformReply:void 0}});var vWe=E(Yz=>{"use strict";Object.defineProperty(Yz,"__esModule",{value:!0});Yz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,{username:e,password:r}){t.push("AUTH"),e!==void 0&&t.push(e),t.push(r)},transformReply:void 0}});var IWe=E(Jz=>{"use strict";Object.defineProperty(Jz,"__esModule",{value:!0});Jz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("BGREWRITEAOF")},transformReply:void 0}});var CWe=E(Xz=>{"use strict";Object.defineProperty(Xz,"__esModule",{value:!0});Xz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("BGSAVE"),e?.SCHEDULE&&t.push("SCHEDULE")},transformReply:void 0}});var TWe=E(Zz=>{"use strict";Object.defineProperty(Zz,"__esModule",{value:!0});Zz.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITCOUNT"),t.pushKey(e),r&&(t.push(r.start.toString()),t.push(r.end.toString()),r.mode&&t.push(r.mode))},transformReply:void 0}});var wWe=E(eY=>{"use strict";Object.defineProperty(eY,"__esModule",{value:!0});eY.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITFIELD_RO"),t.pushKey(e);for(let n of r)t.push("GET"),t.push(n.encoding),t.push(n.offset.toString())},transformReply:void 0}});var RWe=E(tY=>{"use strict";Object.defineProperty(tY,"__esModule",{value:!0});tY.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BITFIELD"),t.pushKey(e);for(let n of r)switch(n.operation){case"GET":t.push("GET",n.encoding,n.offset.toString());break;case"SET":t.push("SET",n.encoding,n.offset.toString(),n.value.toString());break;case"INCRBY":t.push("INCRBY",n.encoding,n.offset.toString(),n.increment.toString());break;case"OVERFLOW":t.push("OVERFLOW",n.behavior);break}},transformReply:void 0}});var NWe=E(rY=>{"use strict";Object.defineProperty(rY,"__esModule",{value:!0});rY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BITOP",e),t.pushKey(r),t.pushKeys(n)},transformReply:void 0}});var OWe=E(nY=>{"use strict";Object.defineProperty(nY,"__esModule",{value:!0});nY.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i){t.push("BITPOS"),t.pushKey(e),t.push(r.toString()),n!==void 0&&t.push(n.toString()),s!==void 0&&t.push(s.toString()),i&&t.push(i)},transformReply:void 0}});var PWe=E(sY=>{"use strict";Object.defineProperty(sY,"__esModule",{value:!0});sY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("BLMOVE"),t.pushKeys([e,r]),t.push(n,s,i.toString())},transformReply:void 0}});var iY=E(FI=>{"use strict";Object.defineProperty(FI,"__esModule",{value:!0});FI.parseLMPopArguments=void 0;function kWe(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())}FI.parseLMPopArguments=kWe;FI.default={IS_READ_ONLY:!1,parseCommand(t,...e){t.push("LMPOP"),kWe(t,...e)},transformReply:void 0}});var BWe=E(ff=>{"use strict";var Nar=ff&&ff.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Oar=ff&&ff.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Par=ff&&ff.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Nar(e,t,r);return Oar(e,t),e};Object.defineProperty(ff,"__esModule",{value:!0});var DWe=Par(iY());ff.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BLMPOP",e.toString()),(0,DWe.parseLMPopArguments)(t,...r)},transformReply:DWe.default.transformReply}});var oY=E(aY=>{"use strict";Object.defineProperty(aY,"__esModule",{value:!0});aY.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BLPOP"),t.pushKeys(e),t.push(r.toString())},transformReply(t){return t===null?null:{key:t[0],element:t[1]}}}});var LWe=E(UI=>{"use strict";var kar=UI&&UI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(UI,"__esModule",{value:!0});var Dar=kar(oY());UI.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BRPOP"),t.pushKeys(e),t.push(r.toString())},transformReply:Dar.default.transformReply}});var MWe=E(cY=>{"use strict";Object.defineProperty(cY,"__esModule",{value:!0});cY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BRPOPLPUSH"),t.pushKeys([e,r]),t.push(n.toString())},transformReply:void 0}});var uY=E(qI=>{"use strict";Object.defineProperty(qI,"__esModule",{value:!0});qI.parseZMPopArguments=void 0;var WWe=Ce();function $We(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT&&t.push("COUNT",n.COUNT.toString())}qI.parseZMPopArguments=$We;qI.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZMPOP"),$We(t,e,r,n)},transformReply:{2(t,e,r){return t===null?null:{key:t[0],members:t[1].map(n=>{let[s,i]=n;return{value:s,score:WWe.transformDoubleReply[2](i,e,r)}})}},3(t){return t===null?null:{key:t[0],members:WWe.transformSortedSetReply[3](t[1])}}}}});var UWe=E(pf=>{"use strict";var Bar=pf&&pf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Lar=pf&&pf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Mar=pf&&pf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Bar(e,t,r);return Lar(e,t),e};Object.defineProperty(pf,"__esModule",{value:!0});var FWe=Mar(uY());pf.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BZMPOP",e.toString()),(0,FWe.parseZMPopArguments)(t,...r)},transformReply:FWe.default.transformReply}});var dY=E(lY=>{"use strict";Object.defineProperty(lY,"__esModule",{value:!0});var War=Ce();lY.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BZPOPMAX"),t.pushKeys(e),t.push(r.toString())},transformReply:{2(t,e,r){return t===null?null:{key:t[0],value:t[1],score:War.transformDoubleReply[2](t[2],e,r)}},3(t){return t===null?null:{key:t[0],value:t[1],score:t[2]}}}}});var jWe=E(jI=>{"use strict";var $ar=jI&&jI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jI,"__esModule",{value:!0});var qWe=$ar(dY());jI.default={IS_READ_ONLY:qWe.default.IS_READ_ONLY,parseCommand(t,e,r){t.push("BZPOPMIN"),t.pushKeys(e),t.push(r.toString())},transformReply:qWe.default.transformReply}});var HWe=E(fY=>{"use strict";Object.defineProperty(fY,"__esModule",{value:!0});fY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","CACHING",e?"YES":"NO")},transformReply:void 0}});var QWe=E(pY=>{"use strict";Object.defineProperty(pY,"__esModule",{value:!0});pY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETNAME")},transformReply:void 0}});var GWe=E(mY=>{"use strict";Object.defineProperty(mY,"__esModule",{value:!0});mY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETREDIR")},transformReply:void 0}});var KWe=E(hY=>{"use strict";Object.defineProperty(hY,"__esModule",{value:!0});hY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","ID")},transformReply:void 0}});var AY=E(gY=>{"use strict";Object.defineProperty(gY,"__esModule",{value:!0});var Far=/([^\s=]+)=([^\s]*)/g;gY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","INFO")},transformReply(t){let e={};for(let n of t.toString().matchAll(Far))e[n[1]]=n[2];let r={id:Number(e.id),addr:e.addr,fd:Number(e.fd),name:e.name,age:Number(e.age),idle:Number(e.idle),flags:e.flags,db:Number(e.db),sub:Number(e.sub),psub:Number(e.psub),multi:Number(e.multi),qbuf:Number(e.qbuf),qbufFree:Number(e["qbuf-free"]),argvMem:Number(e["argv-mem"]),obl:Number(e.obl),oll:Number(e.oll),omem:Number(e.omem),totMem:Number(e["tot-mem"]),events:e.events,cmd:e.cmd,user:e.user,libName:e["lib-name"],libVer:e["lib-ver"]};return e.laddr!==void 0&&(r.laddr=e.laddr),e.redir!==void 0&&(r.redir=Number(e.redir)),e.ssub!==void 0&&(r.ssub=Number(e.ssub)),e["multi-mem"]!==void 0&&(r.multiMem=Number(e["multi-mem"])),e.resp!==void 0&&(r.resp=Number(e.resp)),r}}});var zWe=E(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});Po.CLIENT_KILL_FILTERS=void 0;Po.CLIENT_KILL_FILTERS={ADDRESS:"ADDR",LOCAL_ADDRESS:"LADDR",ID:"ID",TYPE:"TYPE",USER:"USER",SKIP_ME:"SKIPME",MAXAGE:"MAXAGE"};Po.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){if(t.push("CLIENT","KILL"),Array.isArray(e))for(let r of e)VWe(t,r);else VWe(t,e)},transformReply:void 0};function VWe(t,e){if(e===Po.CLIENT_KILL_FILTERS.SKIP_ME){t.push("SKIPME");return}switch(t.push(e.filter),e.filter){case Po.CLIENT_KILL_FILTERS.ADDRESS:t.push(e.address);break;case Po.CLIENT_KILL_FILTERS.LOCAL_ADDRESS:t.push(e.localAddress);break;case Po.CLIENT_KILL_FILTERS.ID:t.push(typeof e.id=="number"?e.id.toString():e.id);break;case Po.CLIENT_KILL_FILTERS.TYPE:t.push(e.type);break;case Po.CLIENT_KILL_FILTERS.USER:t.push(e.username);break;case Po.CLIENT_KILL_FILTERS.SKIP_ME:t.push(e.skipMe?"yes":"no");break;case Po.CLIENT_KILL_FILTERS.MAXAGE:t.push(e.maxAge.toString());break}}});var YWe=E(HI=>{"use strict";var Uar=HI&&HI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(HI,"__esModule",{value:!0});var qar=Uar(AY());HI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","LIST"),e&&(e.TYPE!==void 0?t.push("TYPE",e.TYPE):(t.push("ID"),t.pushVariadic(e.ID)))},transformReply(t){let e=t.toString().split(`
`),r=e.length-1,n=[];for(let s=0;s<r;s++)n.push(qar.default.transformReply(e[s]));return n}}});var JWe=E(yY=>{"use strict";Object.defineProperty(yY,"__esModule",{value:!0});yY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-EVICT",e?"ON":"OFF")},transformReply:void 0}});var XWe=E(xY=>{"use strict";Object.defineProperty(xY,"__esModule",{value:!0});xY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-TOUCH",e?"ON":"OFF")},transformReply:void 0}});var ZWe=E(bY=>{"use strict";Object.defineProperty(bY,"__esModule",{value:!0});bY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLIENT","PAUSE",e.toString()),r&&t.push(r)},transformReply:void 0}});var e$e=E(EY=>{"use strict";Object.defineProperty(EY,"__esModule",{value:!0});EY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","SETNAME",e)},transformReply:void 0}});var t$e=E(_Y=>{"use strict";Object.defineProperty(_Y,"__esModule",{value:!0});_Y.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("CLIENT","TRACKING",e?"ON":"OFF"),e){if(r?.REDIRECT&&t.push("REDIRECT",r.REDIRECT.toString()),jar(r)){if(t.push("BCAST"),r?.PREFIX)if(Array.isArray(r.PREFIX))for(let n of r.PREFIX)t.push("PREFIX",n);else t.push("PREFIX",r.PREFIX)}else Har(r)?t.push("OPTIN"):Qar(r)&&t.push("OPTOUT");r?.NOLOOP&&t.push("NOLOOP")}},transformReply:void 0};function jar(t){return t?.BCAST===!0}function Har(t){return t?.OPTIN===!0}function Qar(t){return t?.OPTOUT===!0}});var r$e=E(SY=>{"use strict";Object.defineProperty(SY,"__esModule",{value:!0});SY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","TRACKINGINFO")},transformReply:{2:t=>({flags:t[1],redirect:t[3],prefixes:t[5]}),3:void 0}}});var n$e=E(vY=>{"use strict";Object.defineProperty(vY,"__esModule",{value:!0});vY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","UNPAUSE")},transformReply:void 0}});var s$e=E(IY=>{"use strict";Object.defineProperty(IY,"__esModule",{value:!0});IY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var i$e=E(CY=>{"use strict";Object.defineProperty(CY,"__esModule",{value:!0});var Gar=Ce();CY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTSRANGE"),(0,Gar.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var a$e=E(TY=>{"use strict";Object.defineProperty(TY,"__esModule",{value:!0});TY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","BUMPEPOCH")},transformReply:void 0}});var o$e=E(wY=>{"use strict";Object.defineProperty(wY,"__esModule",{value:!0});wY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNT-FAILURE-REPORTS",e)},transformReply:void 0}});var c$e=E(RY=>{"use strict";Object.defineProperty(RY,"__esModule",{value:!0});RY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNTKEYSINSLOT",e.toString())},transformReply:void 0}});var u$e=E(NY=>{"use strict";Object.defineProperty(NY,"__esModule",{value:!0});NY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var l$e=E(OY=>{"use strict";Object.defineProperty(OY,"__esModule",{value:!0});var Kar=Ce();OY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTSRANGE"),(0,Kar.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var d$e=E(QI=>{"use strict";Object.defineProperty(QI,"__esModule",{value:!0});QI.FAILOVER_MODES=void 0;QI.FAILOVER_MODES={FORCE:"FORCE",TAKEOVER:"TAKEOVER"};QI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FAILOVER"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var f$e=E(PY=>{"use strict";Object.defineProperty(PY,"__esModule",{value:!0});PY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","FLUSHSLOTS")},transformReply:void 0}});var p$e=E(kY=>{"use strict";Object.defineProperty(kY,"__esModule",{value:!0});kY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FORGET",e)},transformReply:void 0}});var m$e=E(DY=>{"use strict";Object.defineProperty(DY,"__esModule",{value:!0});DY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","GETKEYSINSLOT",e.toString(),r.toString())},transformReply:void 0}});var h$e=E(BY=>{"use strict";Object.defineProperty(BY,"__esModule",{value:!0});BY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","INFO")},transformReply:void 0}});var g$e=E(LY=>{"use strict";Object.defineProperty(LY,"__esModule",{value:!0});LY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","KEYSLOT",e)},transformReply:void 0}});var A$e=E(MY=>{"use strict";Object.defineProperty(MY,"__esModule",{value:!0});MY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","LINKS")},transformReply:{2:t=>t.map(e=>{let r=e;return{direction:r[1],node:r[3],"create-time":r[5],events:r[7],"send-buffer-allocated":r[9],"send-buffer-used":r[11]}}),3:void 0}}});var y$e=E(WY=>{"use strict";Object.defineProperty(WY,"__esModule",{value:!0});WY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","MEET",e,r.toString())},transformReply:void 0}});var x$e=E($Y=>{"use strict";Object.defineProperty($Y,"__esModule",{value:!0});$Y.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYID")},transformReply:void 0}});var b$e=E(FY=>{"use strict";Object.defineProperty(FY,"__esModule",{value:!0});FY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYSHARDID")},transformReply:void 0}});var E$e=E(UY=>{"use strict";Object.defineProperty(UY,"__esModule",{value:!0});UY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","NODES")},transformReply:void 0}});var _$e=E(qY=>{"use strict";Object.defineProperty(qY,"__esModule",{value:!0});qY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICAS",e)},transformReply:void 0}});var S$e=E(jY=>{"use strict";Object.defineProperty(jY,"__esModule",{value:!0});jY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICATE",e)},transformReply:void 0}});var v$e=E(HY=>{"use strict";Object.defineProperty(HY,"__esModule",{value:!0});HY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","RESET"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var I$e=E(QY=>{"use strict";Object.defineProperty(QY,"__esModule",{value:!0});QY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SAVECONFIG")},transformReply:void 0}});var C$e=E(GY=>{"use strict";Object.defineProperty(GY,"__esModule",{value:!0});GY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","SET-CONFIG-EPOCH",e.toString())},transformReply:void 0}});var T$e=E(GI=>{"use strict";Object.defineProperty(GI,"__esModule",{value:!0});GI.CLUSTER_SLOT_STATES=void 0;GI.CLUSTER_SLOT_STATES={IMPORTING:"IMPORTING",MIGRATING:"MIGRATING",STABLE:"STABLE",NODE:"NODE"};GI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("CLUSTER","SETSLOT",e.toString(),r),n&&t.push(n)},transformReply:void 0}});var R$e=E(KY=>{"use strict";Object.defineProperty(KY,"__esModule",{value:!0});KY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SLOTS")},transformReply(t){return t.map(([e,r,n,...s])=>({from:e,to:r,master:w$e(n),replicas:s.map(w$e)}))}};function w$e(t){let[e,r,n]=t;return{host:e,port:r,id:n}}});var N$e=E(VY=>{"use strict";Object.defineProperty(VY,"__esModule",{value:!0});VY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND","COUNT")},transformReply:void 0}});var O$e=E(zY=>{"use strict";Object.defineProperty(zY,"__esModule",{value:!0});zY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYS"),t.push(...e)},transformReply:void 0}});var P$e=E(YY=>{"use strict";Object.defineProperty(YY,"__esModule",{value:!0});YY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYSANDFLAGS"),t.push(...e)},transformReply(t){return t.map(e=>{let[r,n]=e;return{key:r,flags:n}})}}});var k$e=E(JY=>{"use strict";Object.defineProperty(JY,"__esModule",{value:!0});var Var=Ce();JY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","INFO",...e)},transformReply(t){return t.map(e=>e?(0,Var.transformCommandReply)(e):null)}}});var D$e=E(KI=>{"use strict";Object.defineProperty(KI,"__esModule",{value:!0});KI.COMMAND_LIST_FILTER_BY=void 0;KI.COMMAND_LIST_FILTER_BY={MODULE:"MODULE",ACLCAT:"ACLCAT",PATTERN:"PATTERN"};KI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","LIST"),e?.FILTERBY&&t.push("FILTERBY",e.FILTERBY.type,e.FILTERBY.value)},transformReply:void 0}});var B$e=E(XY=>{"use strict";Object.defineProperty(XY,"__esModule",{value:!0});var zar=Ce();XY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND")},transformReply(t){return t.map(zar.transformCommandReply)}}});var L$e=E(ZY=>{"use strict";Object.defineProperty(ZY,"__esModule",{value:!0});var Yar=Ce();ZY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CONFIG","GET"),t.pushVariadic(e)},transformReply:{2:Yar.transformTuplesReply,3:void 0}}});var M$e=E(eJ=>{"use strict";Object.defineProperty(eJ,"__esModule",{value:!0});eJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","RESETSTAT")},transformReply:void 0}});var W$e=E(tJ=>{"use strict";Object.defineProperty(tJ,"__esModule",{value:!0});tJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","REWRITE")},transformReply:void 0}});var $$e=E(rJ=>{"use strict";Object.defineProperty(rJ,"__esModule",{value:!0});rJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,...[e,r]){if(t.push("CONFIG","SET"),typeof e=="string"||e instanceof Buffer)t.push(e,r);else for(let[n,s]of Object.entries(e))t.push(n,s)},transformReply:void 0}});var F$e=E(nJ=>{"use strict";Object.defineProperty(nJ,"__esModule",{value:!0});nJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("COPY"),t.pushKeys([e,r]),n?.DB&&t.push("DB",n.DB.toString()),n?.REPLACE&&t.push("REPLACE")},transformReply:void 0}});var U$e=E(sJ=>{"use strict";Object.defineProperty(sJ,"__esModule",{value:!0});sJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("DBSIZE")},transformReply:void 0}});var q$e=E(iJ=>{"use strict";Object.defineProperty(iJ,"__esModule",{value:!0});iJ.default={parseCommand(t,e){t.push("DECR"),t.pushKey(e)},transformReply:void 0}});var j$e=E(aJ=>{"use strict";Object.defineProperty(aJ,"__esModule",{value:!0});aJ.default={parseCommand(t,e,r){t.push("DECRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var H$e=E(oJ=>{"use strict";Object.defineProperty(oJ,"__esModule",{value:!0});oJ.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("DEL"),t.pushKeys(e)},transformReply:void 0}});var Q$e=E(VI=>{"use strict";Object.defineProperty(VI,"__esModule",{value:!0});VI.DelexCondition=void 0;VI.DelexCondition={IFEQ:"IFEQ",IFNE:"IFNE",IFDEQ:"IFDEQ",IFDNE:"IFDNE"};VI.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("DELEX"),t.pushKey(e),r&&(t.push(r.condition),t.push(r.matchValue))},transformReply:void 0}});var G$e=E(cJ=>{"use strict";Object.defineProperty(cJ,"__esModule",{value:!0});cJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DIGEST"),t.pushKey(e)},transformReply:void 0}});var K$e=E(uJ=>{"use strict";Object.defineProperty(uJ,"__esModule",{value:!0});uJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DUMP"),t.pushKey(e)},transformReply:void 0}});var V$e=E(lJ=>{"use strict";Object.defineProperty(lJ,"__esModule",{value:!0});lJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ECHO",e)},transformReply:void 0}});var cg=E(zI=>{"use strict";Object.defineProperty(zI,"__esModule",{value:!0});zI.parseEvalArguments=void 0;function z$e(t,e,r){t.push(e),r?.keys?t.pushKeysLength(r.keys):t.push("0"),r?.arguments&&t.push(...r.arguments)}zI.parseEvalArguments=z$e;zI.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVAL"),z$e(...t)},transformReply:void 0}});var J$e=E(mf=>{"use strict";var Jar=mf&&mf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Xar=mf&&mf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Zar=mf&&mf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Jar(e,t,r);return Xar(e,t),e};Object.defineProperty(mf,"__esModule",{value:!0});var Y$e=Zar(cg());mf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVAL_RO"),(0,Y$e.parseEvalArguments)(...t)},transformReply:Y$e.default.transformReply}});var Z$e=E(hf=>{"use strict";var eor=hf&&hf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),tor=hf&&hf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),ror=hf&&hf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&eor(e,t,r);return tor(e,t),e};Object.defineProperty(hf,"__esModule",{value:!0});var X$e=ror(cg());hf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVALSHA_RO"),(0,X$e.parseEvalArguments)(...t)},transformReply:X$e.default.transformReply}});var tFe=E(gf=>{"use strict";var nor=gf&&gf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),sor=gf&&gf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),ior=gf&&gf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&nor(e,t,r);return sor(e,t),e};Object.defineProperty(gf,"__esModule",{value:!0});var eFe=ior(cg());gf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVALSHA"),(0,eFe.parseEvalArguments)(...t)},transformReply:eFe.default.transformReply}});var nFe=E(dJ=>{"use strict";Object.defineProperty(dJ,"__esModule",{value:!0});dJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){if(t.push("GEOADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.CH&&t.push("CH"),Array.isArray(r))for(let s of r)rFe(t,s);else rFe(t,r)},transformReply:void 0};function rFe(t,{longitude:e,latitude:r,member:n}){t.push(e.toString(),r.toString(),n)}});var sFe=E(fJ=>{"use strict";Object.defineProperty(fJ,"__esModule",{value:!0});fJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEODIST"),t.pushKey(e),t.push(r,n),s&&t.push(s)},transformReply(t){return t===null?null:Number(t)}}});var iFe=E(pJ=>{"use strict";Object.defineProperty(pJ,"__esModule",{value:!0});pJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOHASH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var aFe=E(mJ=>{"use strict";Object.defineProperty(mJ,"__esModule",{value:!0});mJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOPOS"),t.pushKey(e),t.pushVariadic(r)},transformReply(t){return t.map(e=>{let r=e;return r===null?null:{longitude:r[0],latitude:r[1]}})}}});var lg=E(ug=>{"use strict";Object.defineProperty(ug,"__esModule",{value:!0});ug.parseGeoSearchOptions=ug.parseGeoSearchArguments=void 0;function oFe(t,e,r,n,s){t.pushKey(e),typeof r=="string"||r instanceof Buffer?t.push("FROMMEMBER",r):t.push("FROMLONLAT",r.longitude.toString(),r.latitude.toString()),"radius"in n?t.push("BYRADIUS",n.radius.toString(),n.unit):t.push("BYBOX",n.width.toString(),n.height.toString(),n.unit),cFe(t,s)}ug.parseGeoSearchArguments=oFe;function cFe(t,e){e?.SORT&&t.push(e.SORT),e?.COUNT&&(typeof e.COUNT=="number"?t.push("COUNT",e.COUNT.toString()):(t.push("COUNT",e.COUNT.value.toString()),e.COUNT.ANY&&t.push("ANY")))}ug.parseGeoSearchOptions=cFe;ug.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEOSEARCH"),oFe(t,e,r,n,s)},transformReply:void 0}});var JI=E(YI=>{"use strict";Object.defineProperty(YI,"__esModule",{value:!0});YI.parseGeoRadiusArguments=void 0;var aor=lg();function uFe(t,e,r,n,s,i){t.pushKey(e),t.push(r.longitude.toString(),r.latitude.toString(),n.toString(),s),(0,aor.parseGeoSearchOptions)(t,i)}YI.parseGeoRadiusArguments=uFe;YI.default={IS_READ_ONLY:!1,parseCommand(...t){return t[0].push("GEORADIUS"),uFe(...t)},transformReply:void 0}});var XI=E(kl=>{"use strict";var oor=kl&&kl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kl,"__esModule",{value:!0});kl.GEO_REPLY_WITH=void 0;var lFe=oor(lg());kl.GEO_REPLY_WITH={DISTANCE:"WITHDIST",HASH:"WITHHASH",COORDINATES:"WITHCOORD"};kl.default={IS_READ_ONLY:lFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i){lFe.default.parseCommand(t,e,r,n,i),t.push(...s),t.preserve=s},transformReply(t,e){let r=new Set(e),n=0,s=r.has(kl.GEO_REPLY_WITH.DISTANCE)&&++n,i=r.has(kl.GEO_REPLY_WITH.HASH)&&++n,a=r.has(kl.GEO_REPLY_WITH.COORDINATES)&&++n;return t.map(o=>{let c=o,u={member:c[0]};if(s&&(u.distance=c[s]),i&&(u.hash=c[i]),a){let[l,d]=c[a];u.coordinates={longitude:l,latitude:d}}return u})}}});var sL=E(ko=>{"use strict";var cor=ko&&ko.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),uor=ko&&ko.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),lor=ko&&ko.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&cor(e,t,r);return uor(e,t),e},dor=ko&&ko.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ko,"__esModule",{value:!0});ko.parseGeoRadiusWithArguments=void 0;var dFe=lor(JI()),por=dor(XI());function fFe(t,e,r,n,s,i,a){(0,dFe.parseGeoRadiusArguments)(t,e,r,n,s,a),t.pushVariadic(i),t.preserve=i}ko.parseGeoRadiusWithArguments=fFe;ko.default={IS_READ_ONLY:dFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),fFe(t,e,r,n,s,i,a)},transformReply:por.default.transformReply}});var pFe=E(ZI=>{"use strict";var mor=ZI&&ZI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ZI,"__esModule",{value:!0});var hor=sL(),gor=mor(sL());ZI.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,hor.parseGeoRadiusWithArguments)(...t)},transformReply:gor.default.transformReply}});var hFe=E(Af=>{"use strict";var Aor=Af&&Af.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),yor=Af&&Af.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),xor=Af&&Af.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Aor(e,t,r);return yor(e,t),e};Object.defineProperty(Af,"__esModule",{value:!0});var mFe=xor(JI());Af.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,mFe.parseGeoRadiusArguments)(...t)},transformReply:mFe.default.transformReply}});var AFe=E(yf=>{"use strict";var bor=yf&&yf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Eor=yf&&yf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),_or=yf&&yf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&bor(e,t,r);return Eor(e,t),e};Object.defineProperty(yf,"__esModule",{value:!0});var gFe=_or(JI());yf.default={IS_READ_ONLY:gFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),(0,gFe.parseGeoRadiusArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var tC=E(eC=>{"use strict";Object.defineProperty(eC,"__esModule",{value:!0});eC.parseGeoRadiusByMemberArguments=void 0;var Sor=lg();function yFe(t,e,r,n,s,i){t.pushKey(e),t.push(r,n.toString(),s),(0,Sor.parseGeoSearchOptions)(t,i)}eC.parseGeoRadiusByMemberArguments=yFe;eC.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEORADIUSBYMEMBER"),yFe(t,e,r,n,s,i)},transformReply:void 0}});var hJ=E(dg=>{"use strict";var xFe=dg&&dg.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(dg,"__esModule",{value:!0});dg.parseGeoRadiusByMemberWithArguments=void 0;var vor=xFe(tC()),Ior=lg(),Cor=xFe(XI());function bFe(t,e,r,n,s,i,a){t.pushKey(e),t.push(r,n.toString(),s),(0,Ior.parseGeoSearchOptions)(t,a),t.push(...i),t.preserve=i}dg.parseGeoRadiusByMemberWithArguments=bFe;dg.default={IS_READ_ONLY:vor.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),bFe(t,e,r,n,s,i,a)},transformReply:Cor.default.transformReply}});var _Fe=E(xf=>{"use strict";var Tor=xf&&xf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),wor=xf&&xf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ror=xf&&xf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Tor(e,t,r);return wor(e,t),e};Object.defineProperty(xf,"__esModule",{value:!0});var EFe=Ror(hJ());xf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,EFe.parseGeoRadiusByMemberWithArguments)(...t)},transformReply:EFe.default.transformReply}});var vFe=E(bf=>{"use strict";var Nor=bf&&bf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Oor=bf&&bf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Por=bf&&bf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Nor(e,t,r);return Oor(e,t),e};Object.defineProperty(bf,"__esModule",{value:!0});var SFe=Por(tC());bf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,SFe.parseGeoRadiusByMemberArguments)(...t)},transformReply:SFe.default.transformReply}});var CFe=E(Ef=>{"use strict";var kor=Ef&&Ef.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Dor=Ef&&Ef.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Bor=Ef&&Ef.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&kor(e,t,r);return Dor(e,t),e};Object.defineProperty(Ef,"__esModule",{value:!0});var IFe=Bor(tC());Ef.default={IS_READ_ONLY:IFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),(0,IFe.parseGeoRadiusByMemberArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var TFe=E(gJ=>{"use strict";Object.defineProperty(gJ,"__esModule",{value:!0});var Lor=lg();gJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEOSEARCHSTORE"),e!==void 0&&t.pushKey(e),(0,Lor.parseGeoSearchArguments)(t,r,n,s,i),i?.STOREDIST&&t.push("STOREDIST")},transformReply:void 0}});var wFe=E(AJ=>{"use strict";Object.defineProperty(AJ,"__esModule",{value:!0});AJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("GET"),t.pushKey(e)},transformReply:void 0}});var RFe=E(yJ=>{"use strict";Object.defineProperty(yJ,"__esModule",{value:!0});yJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETBIT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var NFe=E(xJ=>{"use strict";Object.defineProperty(xJ,"__esModule",{value:!0});xJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("GETDEL"),t.pushKey(e)},transformReply:void 0}});var OFe=E(EJ=>{"use strict";Object.defineProperty(EJ,"__esModule",{value:!0});var bJ=Ce();EJ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("GETEX"),t.pushKey(e),"type"in r)switch(r.type){case"EX":case"PX":t.push(r.type,r.value.toString());break;case"EXAT":case"PXAT":t.push(r.type,(0,bJ.transformEXAT)(r.value));break;case"PERSIST":t.push("PERSIST");break}else"EX"in r?t.push("EX",r.EX.toString()):"PX"in r?t.push("PX",r.PX.toString()):"EXAT"in r?t.push("EXAT",(0,bJ.transformEXAT)(r.EXAT)):"PXAT"in r?t.push("PXAT",(0,bJ.transformPXAT)(r.PXAT)):t.push("PERSIST")},transformReply:void 0}});var PFe=E(_J=>{"use strict";Object.defineProperty(_J,"__esModule",{value:!0});_J.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("GETRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var kFe=E(SJ=>{"use strict";Object.defineProperty(SJ,"__esModule",{value:!0});SJ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETSET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var DFe=E(vJ=>{"use strict";Object.defineProperty(vJ,"__esModule",{value:!0});vJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXISTS"),t.pushKeys(e)},transformReply:void 0}});var BFe=E(IJ=>{"use strict";Object.defineProperty(IJ,"__esModule",{value:!0});IJ.default={parseCommand(t,e,r,n){t.push("EXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var LFe=E(CJ=>{"use strict";Object.defineProperty(CJ,"__esModule",{value:!0});var Mor=Ce();CJ.default={parseCommand(t,e,r,n){t.push("EXPIREAT"),t.pushKey(e),t.push((0,Mor.transformEXAT)(r)),n&&t.push(n)},transformReply:void 0}});var MFe=E(TJ=>{"use strict";Object.defineProperty(TJ,"__esModule",{value:!0});TJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var WFe=E(rC=>{"use strict";Object.defineProperty(rC,"__esModule",{value:!0});rC.REDIS_FLUSH_MODES=void 0;rC.REDIS_FLUSH_MODES={ASYNC:"ASYNC",SYNC:"SYNC"};rC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHALL"),e&&t.push(e)},transformReply:void 0}});var $Fe=E(wJ=>{"use strict";Object.defineProperty(wJ,"__esModule",{value:!0});wJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHDB"),e&&t.push(e)},transformReply:void 0}});var UFe=E(_f=>{"use strict";var Wor=_f&&_f.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),$or=_f&&_f.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),For=_f&&_f.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Wor(e,t,r);return $or(e,t),e};Object.defineProperty(_f,"__esModule",{value:!0});var FFe=For(cg());_f.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL"),(0,FFe.parseEvalArguments)(...t)},transformReply:FFe.default.transformReply}});var jFe=E(Sf=>{"use strict";var Uor=Sf&&Sf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),qor=Sf&&Sf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),jor=Sf&&Sf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Uor(e,t,r);return qor(e,t),e};Object.defineProperty(Sf,"__esModule",{value:!0});var qFe=jor(cg());Sf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL_RO"),(0,qFe.parseEvalArguments)(...t)},transformReply:qFe.default.transformReply}});var HFe=E(RJ=>{"use strict";Object.defineProperty(RJ,"__esModule",{value:!0});RJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","DELETE",e)},transformReply:void 0}});var QFe=E(NJ=>{"use strict";Object.defineProperty(NJ,"__esModule",{value:!0});NJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","DUMP")},transformReply:void 0}});var GFe=E(OJ=>{"use strict";Object.defineProperty(OJ,"__esModule",{value:!0});OJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","FLUSH"),e&&t.push(e)},transformReply:void 0}});var KFe=E(PJ=>{"use strict";Object.defineProperty(PJ,"__esModule",{value:!0});PJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","KILL")},transformReply:void 0}});var DJ=E(kJ=>{"use strict";Object.defineProperty(kJ,"__esModule",{value:!0});kJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","LIST"),e?.LIBRARYNAME&&t.push("LIBRARYNAME",e.LIBRARYNAME)},transformReply:{2:t=>t.map(e=>{let r=e;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}})}}),3:void 0}}});var VFe=E(nC=>{"use strict";var Hor=nC&&nC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(nC,"__esModule",{value:!0});var BJ=Hor(DJ());nC.default={NOT_KEYED_COMMAND:BJ.default.NOT_KEYED_COMMAND,IS_READ_ONLY:BJ.default.IS_READ_ONLY,parseCommand(...t){BJ.default.parseCommand(...t),t[0].push("WITHCODE")},transformReply:{2:t=>t.map(e=>{let r=e;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}}),library_code:r[7]}}),3:void 0}}});var zFe=E(LJ=>{"use strict";Object.defineProperty(LJ,"__esModule",{value:!0});LJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","LOAD"),r?.REPLACE&&t.push("REPLACE"),t.push(e)},transformReply:void 0}});var YFe=E(MJ=>{"use strict";Object.defineProperty(MJ,"__esModule",{value:!0});MJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","RESTORE",e),r?.mode&&t.push(r.mode)},transformReply:void 0}});var JFe=E(WJ=>{"use strict";Object.defineProperty(WJ,"__esModule",{value:!0});var Qor=Ce();WJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","STATS")},transformReply:{2:t=>({running_script:Gor(t[1]),engines:Kor(t[3])}),3:void 0}};function Gor(t){if((0,Qor.isNullReply)(t))return null;let e=t;return{name:e[1],command:e[3],duration_ms:e[5]}}function Kor(t){let e=t,r=Object.create(null);for(let n=0;n<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 XFe=E($J=>{"use strict";Object.defineProperty($J,"__esModule",{value:!0});$J.default={parseCommand(t,e,r){t.push("HDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var UJ=E(FJ=>{"use strict";Object.defineProperty(FJ,"__esModule",{value:!0});FJ.default={parseCommand(t,e,r){t.push("HELLO"),e&&(t.push(e.toString()),r?.AUTH&&t.push("AUTH",r.AUTH.username,r.AUTH.password),r?.SETNAME&&t.push("SETNAME",r.SETNAME))},transformReply:{2:t=>({server:t[1],version:t[3],proto:t[5],id:t[7],mode:t[9],role:t[11],modules:t[13]}),3:void 0}}});var ZFe=E(qJ=>{"use strict";Object.defineProperty(qJ,"__esModule",{value:!0});qJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXISTS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var eUe=E(sC=>{"use strict";Object.defineProperty(sC,"__esModule",{value:!0});sC.HASH_EXPIRATION=void 0;sC.HASH_EXPIRATION={FIELD_NOT_EXISTS:-2,CONDITION_NOT_MET:0,UPDATED:1,DELETED:2};sC.default={parseCommand(t,e,r,n,s){t.push("HEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var tUe=E(jJ=>{"use strict";Object.defineProperty(jJ,"__esModule",{value:!0});var Vor=Ce();jJ.default={parseCommand(t,e,r,n,s){t.push("HEXPIREAT"),t.pushKey(e),t.push((0,Vor.transformEXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var rUe=E(iC=>{"use strict";Object.defineProperty(iC,"__esModule",{value:!0});iC.HASH_EXPIRATION_TIME=void 0;iC.HASH_EXPIRATION_TIME={FIELD_NOT_EXISTS:-2,NO_EXPIRATION:-1};iC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var nUe=E(HJ=>{"use strict";Object.defineProperty(HJ,"__esModule",{value:!0});HJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HGET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var sUe=E(QJ=>{"use strict";Object.defineProperty(QJ,"__esModule",{value:!0});var zor=Ce();QJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HGETALL"),t.pushKey(e)},TRANSFORM_LEGACY_REPLY:!0,transformReply:{2:zor.transformTuplesReply,3:void 0}}});var iUe=E(GJ=>{"use strict";Object.defineProperty(GJ,"__esModule",{value:!0});GJ.default={parseCommand(t,e,r){t.push("HGETDEL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var aUe=E(KJ=>{"use strict";Object.defineProperty(KJ,"__esModule",{value:!0});KJ.default={parseCommand(t,e,r,n){t.push("HGETEX"),t.pushKey(e),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="PERSIST"?t.push("PERSIST"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var oUe=E(VJ=>{"use strict";Object.defineProperty(VJ,"__esModule",{value:!0});VJ.default={parseCommand(t,e,r,n){t.push("HINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var cUe=E(zJ=>{"use strict";Object.defineProperty(zJ,"__esModule",{value:!0});zJ.default={parseCommand(t,e,r,n){t.push("HINCRBYFLOAT"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var uUe=E(YJ=>{"use strict";Object.defineProperty(YJ,"__esModule",{value:!0});YJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HKEYS"),t.pushKey(e)},transformReply:void 0}});var lUe=E(JJ=>{"use strict";Object.defineProperty(JJ,"__esModule",{value:!0});JJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HLEN"),t.pushKey(e)},transformReply:void 0}});var dUe=E(XJ=>{"use strict";Object.defineProperty(XJ,"__esModule",{value:!0});XJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HMGET"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var fUe=E(ZJ=>{"use strict";Object.defineProperty(ZJ,"__esModule",{value:!0});ZJ.default={parseCommand(t,e,r){t.push("HPERSIST"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var pUe=E(eX=>{"use strict";Object.defineProperty(eX,"__esModule",{value:!0});eX.default={parseCommand(t,e,r,n,s){t.push("HPEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var mUe=E(tX=>{"use strict";Object.defineProperty(tX,"__esModule",{value:!0});var Yor=Ce();tX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("HPEXPIREAT"),t.pushKey(e),t.push((0,Yor.transformPXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var hUe=E(rX=>{"use strict";Object.defineProperty(rX,"__esModule",{value:!0});rX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var gUe=E(nX=>{"use strict";Object.defineProperty(nX,"__esModule",{value:!0});nX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var AUe=E(sX=>{"use strict";Object.defineProperty(sX,"__esModule",{value:!0});sX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString(),"WITHVALUES")},transformReply:{2:t=>{let e=[],r=0;for(;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 yUe=E(iX=>{"use strict";Object.defineProperty(iX,"__esModule",{value:!0});iX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var xUe=E(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});aX.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("HRANDFIELD"),t.pushKey(e)},transformReply:void 0}});var aC=E(fg=>{"use strict";Object.defineProperty(fg,"__esModule",{value:!0});fg.pushScanArguments=fg.parseScanArguments=void 0;function bUe(t,e,r){t.push(e),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString())}fg.parseScanArguments=bUe;function Jor(t,e,r){return t.push(e.toString()),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString()),t}fg.pushScanArguments=Jor;fg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SCAN"),bUe(t,e,r),r?.TYPE&&t.push("TYPE",r.TYPE)},transformReply([t,e]){return{cursor:t,keys:e}}}});var cX=E(oX=>{"use strict";Object.defineProperty(oX,"__esModule",{value:!0});var Xor=aC();oX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSCAN"),t.pushKey(e),(0,Xor.parseScanArguments)(t,r,n)},transformReply([t,e]){let r=[],n=0;for(;n<e.length;)r.push({field:e[n++],value:e[n++]});return{cursor:t,entries:r}}}});var EUe=E(oC=>{"use strict";var Zor=oC&&oC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(oC,"__esModule",{value:!0});var ecr=Zor(cX());oC.default={IS_READ_ONLY:!0,parseCommand(...t){let e=t[0];ecr.default.parseCommand(...t),e.push("NOVALUES")},transformReply([t,e]){return{cursor:t,fields:e}}}});var SUe=E(uX=>{"use strict";Object.defineProperty(uX,"__esModule",{value:!0});uX.default={parseCommand(t,...[e,r,n]){t.push("HSET"),t.pushKey(e),typeof r=="string"||typeof r=="number"||r instanceof Buffer?t.push(pg(r),pg(n)):r instanceof Map?tcr(t,r):Array.isArray(r)?_Ue(t,r):rcr(t,r)},transformReply:void 0};function tcr(t,e){for(let[r,n]of e.entries())t.push(pg(r),pg(n))}function _Ue(t,e){for(let r of e){if(Array.isArray(r)){_Ue(t,r);continue}t.push(pg(r))}}function rcr(t,e){for(let r of Object.keys(e))t.push(pg(r),pg(e[r]))}function pg(t){return typeof t=="number"?t.toString():t}});var IUe=E(lX=>{"use strict";Object.defineProperty(lX,"__esModule",{value:!0});var ncr=Pl();lX.default={parseCommand(t,e,r,n){t.push("HSETEX"),t.pushKey(e),n?.mode&&t.push(n.mode),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),r instanceof Map?scr(t,r):Array.isArray(r)?icr(t,r):acr(t,r)},transformReply:void 0};function scr(t,e){t.push(e.size.toString());for(let[r,n]of e.entries())t.push(cC(r),cC(n))}function icr(t,e){let r=new ncr.BasicCommandParser;if(vUe(r,e),r.redisArgs.length%2!=0)throw Error("invalid number of arguments, expected key value ....[key value] pairs, got key without value");t.push((r.redisArgs.length/2).toString()),t.push(...r.redisArgs)}function vUe(t,e){for(let r of e){if(Array.isArray(r)){vUe(t,r);continue}t.push(cC(r))}}function acr(t,e){let r=Object.keys(e).length;if(r==0)throw Error("object without keys");t.push(r.toString());for(let n of Object.keys(e))t.push(cC(n),cC(e[n]))}function cC(t){return typeof t=="number"?t.toString():t}});var CUe=E(dX=>{"use strict";Object.defineProperty(dX,"__esModule",{value:!0});dX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSETNX"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var TUe=E(fX=>{"use strict";Object.defineProperty(fX,"__esModule",{value:!0});fX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HSTRLEN"),t.pushKey(e),t.push(r)},transformReply:void 0}});var wUe=E(pX=>{"use strict";Object.defineProperty(pX,"__esModule",{value:!0});pX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var RUe=E(mX=>{"use strict";Object.defineProperty(mX,"__esModule",{value:!0});mX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HVALS"),t.pushKey(e)},transformReply:void 0}});var OUe=E(hX=>{"use strict";Object.defineProperty(hX,"__esModule",{value:!0});function NUe(t){let e=[];for(let r=0;r<t.length;r+=2)e.push({key:t[r].toString(),value:Number(t[r+1])});return e}function ocr(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 ccr(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=ocr(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=NUe(i);break;case"by-net-bytes":e.byNetBytes=NUe(i);break}}return e}hX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("HOTKEYS","GET")},transformReply:{2:t=>t===null?null:ccr(t),3:void 0},unstableResp3:!0}});var PUe=E(gX=>{"use strict";Object.defineProperty(gX,"__esModule",{value:!0});gX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","RESET")},transformReply:void 0}});var kUe=E(uC=>{"use strict";Object.defineProperty(uC,"__esModule",{value:!0});uC.HOTKEYS_METRICS=void 0;uC.HOTKEYS_METRICS={CPU:"CPU",NET:"NET"};uC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){if(t.push("HOTKEYS","START"),t.push("METRICS",e.METRICS.count.toString()),e.METRICS.CPU&&t.push("CPU"),e.METRICS.NET&&t.push("NET"),e.COUNT!==void 0&&t.push("COUNT",e.COUNT.toString()),e.DURATION!==void 0&&t.push("DURATION",e.DURATION.toString()),e.SAMPLE!==void 0&&t.push("SAMPLE",e.SAMPLE.toString()),e.SLOTS!==void 0){t.push("SLOTS",e.SLOTS.count.toString());for(let r of e.SLOTS.slots)t.push(r.toString())}},transformReply:void 0}});var DUe=E(AX=>{"use strict";Object.defineProperty(AX,"__esModule",{value:!0});AX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","STOP")},transformReply:void 0}});var BUe=E(yX=>{"use strict";Object.defineProperty(yX,"__esModule",{value:!0});yX.default={parseCommand(t,e){t.push("INCR"),t.pushKey(e)},transformReply:void 0}});var LUe=E(xX=>{"use strict";Object.defineProperty(xX,"__esModule",{value:!0});xX.default={parseCommand(t,e,r){t.push("INCRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var MUe=E(bX=>{"use strict";Object.defineProperty(bX,"__esModule",{value:!0});bX.default={parseCommand(t,e,r){t.push("INCRBYFLOAT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var WUe=E(EX=>{"use strict";Object.defineProperty(EX,"__esModule",{value:!0});EX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("INFO"),e&&t.push(e)},transformReply:void 0}});var $Ue=E(_X=>{"use strict";Object.defineProperty(_X,"__esModule",{value:!0});_X.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("KEYS",e)},transformReply:void 0}});var FUe=E(SX=>{"use strict";Object.defineProperty(SX,"__esModule",{value:!0});SX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LASTSAVE")},transformReply:void 0}});var UUe=E(vX=>{"use strict";Object.defineProperty(vX,"__esModule",{value:!0});vX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","DOCTOR")},transformReply:void 0}});var IX=E(lC=>{"use strict";Object.defineProperty(lC,"__esModule",{value:!0});lC.LATENCY_EVENTS=void 0;lC.LATENCY_EVENTS={ACTIVE_DEFRAG_CYCLE:"active-defrag-cycle",AOF_FSYNC_ALWAYS:"aof-fsync-always",AOF_STAT:"aof-stat",AOF_REWRITE_DIFF_WRITE:"aof-rewrite-diff-write",AOF_RENAME:"aof-rename",AOF_WRITE:"aof-write",AOF_WRITE_ACTIVE_CHILD:"aof-write-active-child",AOF_WRITE_ALONE:"aof-write-alone",AOF_WRITE_PENDING_FSYNC:"aof-write-pending-fsync",COMMAND:"command",EXPIRE_CYCLE:"expire-cycle",EVICTION_CYCLE:"eviction-cycle",EVICTION_DEL:"eviction-del",FAST_COMMAND:"fast-command",FORK:"fork",RDB_UNLINK_TEMP_FILE:"rdb-unlink-temp-file"};lC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","GRAPH",e)},transformReply:void 0}});var qUe=E(CX=>{"use strict";Object.defineProperty(CX,"__esModule",{value:!0});CX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","HISTORY",e)},transformReply:void 0}});var jUe=E(TX=>{"use strict";Object.defineProperty(TX,"__esModule",{value:!0});TX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","LATEST")},transformReply:void 0}});var HUe=E(dC=>{"use strict";Object.defineProperty(dC,"__esModule",{value:!0});dC.LATENCY_EVENTS=void 0;var ucr=IX();Object.defineProperty(dC,"LATENCY_EVENTS",{enumerable:!0,get:function(){return ucr.LATENCY_EVENTS}});dC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,...e){let r=["LATENCY","RESET"];e.length>0&&r.push(...e),t.push(...r)},transformReply:void 0}});var iL=E(wX=>{"use strict";Object.defineProperty(wX,"__esModule",{value:!0});wX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LCS"),t.pushKeys([e,r])},transformReply:void 0}});var RX=E(fC=>{"use strict";var lcr=fC&&fC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(fC,"__esModule",{value:!0});var QUe=lcr(iL());fC.default={IS_READ_ONLY:QUe.default.IS_READ_ONLY,parseCommand(t,e,r,n){QUe.default.parseCommand(t,e,r),t.push("IDX"),n?.MINMATCHLEN&&t.push("MINMATCHLEN",n.MINMATCHLEN.toString())},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var KUe=E(pC=>{"use strict";var dcr=pC&&pC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(pC,"__esModule",{value:!0});var GUe=dcr(RX());pC.default={IS_READ_ONLY:GUe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];GUe.default.parseCommand(...t),e.push("WITHMATCHLEN")},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var zUe=E(mC=>{"use strict";var fcr=mC&&mC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mC,"__esModule",{value:!0});var VUe=fcr(iL());mC.default={IS_READ_ONLY:VUe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];VUe.default.parseCommand(...t),e.push("LEN")},transformReply:void 0}});var YUe=E(NX=>{"use strict";Object.defineProperty(NX,"__esModule",{value:!0});NX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LINDEX"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var JUe=E(OX=>{"use strict";Object.defineProperty(OX,"__esModule",{value:!0});OX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("LINSERT"),t.pushKey(e),t.push(r,n,s)},transformReply:void 0}});var XUe=E(PX=>{"use strict";Object.defineProperty(PX,"__esModule",{value:!0});PX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LLEN"),t.pushKey(e)},transformReply:void 0}});var ZUe=E(kX=>{"use strict";Object.defineProperty(kX,"__esModule",{value:!0});kX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("LMOVE"),t.pushKeys([e,r]),t.push(n,s)},transformReply:void 0}});var e7e=E(DX=>{"use strict";Object.defineProperty(DX,"__esModule",{value:!0});DX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("LOLWUT"),e&&(t.push("VERSION",e.toString()),t.pushVariadic(r.map(String)))},transformReply:void 0}});var LX=E(BX=>{"use strict";Object.defineProperty(BX,"__esModule",{value:!0});BX.default={parseCommand(t,e){t.push("LPOP"),t.pushKey(e)},transformReply:void 0}});var t7e=E(hC=>{"use strict";var pcr=hC&&hC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hC,"__esModule",{value:!0});var mcr=pcr(LX());hC.default={IS_READ_ONLY:!1,parseCommand(t,e,r){mcr.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var WX=E(MX=>{"use strict";Object.defineProperty(MX,"__esModule",{value:!0});MX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LPOS"),t.pushKey(e),t.push(r),n?.RANK!==void 0&&t.push("RANK",n.RANK.toString()),n?.MAXLEN!==void 0&&t.push("MAXLEN",n.MAXLEN.toString())},transformReply:void 0}});var r7e=E(gC=>{"use strict";var hcr=gC&&gC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gC,"__esModule",{value:!0});var $X=hcr(WX());gC.default={CACHEABLE:$X.default.CACHEABLE,IS_READ_ONLY:$X.default.IS_READ_ONLY,parseCommand(t,e,r,n,s){$X.default.parseCommand(t,e,r,s),t.push("COUNT",n.toString())},transformReply:void 0}});var n7e=E(FX=>{"use strict";Object.defineProperty(FX,"__esModule",{value:!0});FX.default={parseCommand(t,e,r){t.push("LPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var s7e=E(UX=>{"use strict";Object.defineProperty(UX,"__esModule",{value:!0});UX.default={parseCommand(t,e,r){t.push("LPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var i7e=E(qX=>{"use strict";Object.defineProperty(qX,"__esModule",{value:!0});qX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var a7e=E(jX=>{"use strict";Object.defineProperty(jX,"__esModule",{value:!0});jX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LREM"),t.pushKey(e),t.push(r.toString()),t.push(n)},transformReply:void 0}});var o7e=E(HX=>{"use strict";Object.defineProperty(HX,"__esModule",{value:!0});HX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LSET"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var c7e=E(QX=>{"use strict";Object.defineProperty(QX,"__esModule",{value:!0});QX.default={parseCommand(t,e,r,n){t.push("LTRIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var u7e=E(GX=>{"use strict";Object.defineProperty(GX,"__esModule",{value:!0});GX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","DOCTOR")},transformReply:void 0}});var l7e=E(KX=>{"use strict";Object.defineProperty(KX,"__esModule",{value:!0});KX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","MALLOC-STATS")},transformReply:void 0}});var d7e=E(VX=>{"use strict";Object.defineProperty(VX,"__esModule",{value:!0});VX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("MEMORY","PURGE")},transformReply:void 0}});var f7e=E(zX=>{"use strict";Object.defineProperty(zX,"__esModule",{value:!0});var gcr=Ce();zX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","STATS")},transformReply:{2:(t,e,r)=>{let n={},s=0;for(;s<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++]]=gcr.transformDoubleReply[2](t[s++],e,r);break;default:n[t[s++]]=t[s++]}return n},3:void 0}}});var p7e=E(YX=>{"use strict";Object.defineProperty(YX,"__esModule",{value:!0});YX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MEMORY","USAGE"),t.pushKey(e),r?.SAMPLES&&t.push("SAMPLES",r.SAMPLES.toString())},transformReply:void 0}});var m7e=E(JX=>{"use strict";Object.defineProperty(JX,"__esModule",{value:!0});JX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MGET"),t.pushKeys(e)},transformReply:void 0}});var h7e=E(XX=>{"use strict";Object.defineProperty(XX,"__esModule",{value:!0});XX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("MIGRATE",e,r.toString());let o=Array.isArray(n);o?t.push(""):t.push(n),t.push(s.toString(),i.toString()),a?.COPY&&t.push("COPY"),a?.REPLACE&&t.push("REPLACE"),a?.AUTH&&(a.AUTH.username?t.push("AUTH2",a.AUTH.username,a.AUTH.password):t.push("AUTH",a.AUTH.password)),o&&(t.push("KEYS"),t.pushVariadic(n))},transformReply:void 0}});var g7e=E(ZX=>{"use strict";Object.defineProperty(ZX,"__esModule",{value:!0});ZX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MODULE","LIST")},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],ver:r[3]}}),3:void 0}}});var A7e=E(eZ=>{"use strict";Object.defineProperty(eZ,"__esModule",{value:!0});eZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MODULE","LOAD",e),r&&t.push(...r)},transformReply:void 0}});var y7e=E(tZ=>{"use strict";Object.defineProperty(tZ,"__esModule",{value:!0});tZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MODULE","UNLOAD",e)},transformReply:void 0}});var x7e=E(rZ=>{"use strict";Object.defineProperty(rZ,"__esModule",{value:!0});rZ.default={parseCommand(t,e,r){t.push("MOVE"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var nZ=E(AC=>{"use strict";Object.defineProperty(AC,"__esModule",{value:!0});AC.parseMSetArguments=void 0;function b7e(t,e){if(Array.isArray(e)){if(e.length==0)throw new Error("empty toSet Argument");if(Array.isArray(e[0]))for(let r of e)t.pushKey(r[0]),t.push(r[1]);else{let r=e;for(let n=0;n<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])}AC.parseMSetArguments=b7e;AC.default={IS_READ_ONLY:!0,parseCommand(t,e){return t.push("MSET"),b7e(t,e)},transformReply:void 0}});var S7e=E(xi=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.parseMSetExArguments=xi.ExpirationMode=xi.SetMode=void 0;var E7e=Ce();xi.SetMode={XX:"XX",NX:"NX"};xi.ExpirationMode={EX:"EX",PX:"PX",EXAT:"EXAT",PXAT:"PXAT",KEEPTTL:"KEEPTTL"};function _7e(t,e){let r=[];if(Array.isArray(e)){if(e.length==0)throw new Error("empty keyValuePairs Argument");if(Array.isArray(e[0]))r=e;else{let n=e;for(let s=0;s<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])}xi.parseMSetExArguments=_7e;xi.default={parseCommand(t,e,r){if(t.push("MSETEX"),_7e(t,e),r?.mode&&t.push(r.mode),r?.expiration)switch(r.expiration.type){case xi.ExpirationMode.EXAT:t.push(xi.ExpirationMode.EXAT,(0,E7e.transformEXAT)(r.expiration.value));break;case xi.ExpirationMode.PXAT:t.push(xi.ExpirationMode.PXAT,(0,E7e.transformPXAT)(r.expiration.value));break;case xi.ExpirationMode.KEEPTTL:t.push(xi.ExpirationMode.KEEPTTL);break;case xi.ExpirationMode.EX:case xi.ExpirationMode.PX:t.push(r.expiration.type,r.expiration.value?.toString());break}},transformReply:void 0}});var v7e=E(sZ=>{"use strict";Object.defineProperty(sZ,"__esModule",{value:!0});var Acr=nZ();sZ.default={IS_READ_ONLY:!0,parseCommand(t,e){return t.push("MSETNX"),(0,Acr.parseMSetArguments)(t,e)},transformReply:void 0}});var I7e=E(iZ=>{"use strict";Object.defineProperty(iZ,"__esModule",{value:!0});iZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","ENCODING"),t.pushKey(e)},transformReply:void 0}});var C7e=E(aZ=>{"use strict";Object.defineProperty(aZ,"__esModule",{value:!0});aZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","FREQ"),t.pushKey(e)},transformReply:void 0}});var T7e=E(oZ=>{"use strict";Object.defineProperty(oZ,"__esModule",{value:!0});oZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","IDLETIME"),t.pushKey(e)},transformReply:void 0}});var w7e=E(cZ=>{"use strict";Object.defineProperty(cZ,"__esModule",{value:!0});cZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","REFCOUNT"),t.pushKey(e)},transformReply:void 0}});var R7e=E(uZ=>{"use strict";Object.defineProperty(uZ,"__esModule",{value:!0});uZ.default={parseCommand(t,e){t.push("PERSIST"),t.pushKey(e)},transformReply:void 0}});var N7e=E(lZ=>{"use strict";Object.defineProperty(lZ,"__esModule",{value:!0});lZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var O7e=E(dZ=>{"use strict";Object.defineProperty(dZ,"__esModule",{value:!0});var ycr=Ce();dZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIREAT"),t.pushKey(e),t.push((0,ycr.transformPXAT)(r)),n&&t.push(n)},transformReply:void 0}});var P7e=E(fZ=>{"use strict";Object.defineProperty(fZ,"__esModule",{value:!0});fZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PEXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var k7e=E(pZ=>{"use strict";Object.defineProperty(pZ,"__esModule",{value:!0});pZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("PFADD"),t.pushKey(e),r&&t.pushVariadic(r)},transformReply:void 0}});var D7e=E(mZ=>{"use strict";Object.defineProperty(mZ,"__esModule",{value:!0});mZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PFCOUNT"),t.pushKeys(e)},transformReply:void 0}});var B7e=E(hZ=>{"use strict";Object.defineProperty(hZ,"__esModule",{value:!0});hZ.default={parseCommand(t,e,r){t.push("PFMERGE"),t.pushKey(e),r&&t.pushKeys(r)},transformReply:void 0}});var L7e=E(gZ=>{"use strict";Object.defineProperty(gZ,"__esModule",{value:!0});gZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PING"),e&&t.push(e)},transformReply:void 0}});var M7e=E(AZ=>{"use strict";Object.defineProperty(AZ,"__esModule",{value:!0});AZ.default={parseCommand(t,e,r,n){t.push("PSETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var W7e=E(yZ=>{"use strict";Object.defineProperty(yZ,"__esModule",{value:!0});yZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PTTL"),t.pushKey(e)},transformReply:void 0}});var $7e=E(xZ=>{"use strict";Object.defineProperty(xZ,"__esModule",{value:!0});xZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,IS_FORWARD_COMMAND:!0,parseCommand(t,e,r){t.push("PUBLISH",e,r)},transformReply:void 0}});var F7e=E(bZ=>{"use strict";Object.defineProperty(bZ,"__esModule",{value:!0});bZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","CHANNELS"),e&&t.push(e)},transformReply:void 0}});var U7e=E(EZ=>{"use strict";Object.defineProperty(EZ,"__esModule",{value:!0});EZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("PUBSUB","NUMPAT")},transformReply:void 0}});var q7e=E(_Z=>{"use strict";Object.defineProperty(_Z,"__esModule",{value:!0});_Z.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","NUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null),r=0;for(;r<t.length;)e[t[r++].toString()]=Number(t[r++]);return e}}});var j7e=E(SZ=>{"use strict";Object.defineProperty(SZ,"__esModule",{value:!0});SZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDNUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null);for(let r=0;r<t.length;r+=2)e[t[r].toString()]=t[r+1];return e}}});var H7e=E(vZ=>{"use strict";Object.defineProperty(vZ,"__esModule",{value:!0});vZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDCHANNELS"),e&&t.push(e)},transformReply:void 0}});var Q7e=E(IZ=>{"use strict";Object.defineProperty(IZ,"__esModule",{value:!0});IZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RANDOMKEY")},transformReply:void 0}});var G7e=E(CZ=>{"use strict";Object.defineProperty(CZ,"__esModule",{value:!0});CZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("READONLY")},transformReply:void 0}});var K7e=E(TZ=>{"use strict";Object.defineProperty(TZ,"__esModule",{value:!0});TZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAME"),t.pushKeys([e,r])},transformReply:void 0}});var V7e=E(wZ=>{"use strict";Object.defineProperty(wZ,"__esModule",{value:!0});wZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAMENX"),t.pushKeys([e,r])},transformReply:void 0}});var z7e=E(RZ=>{"use strict";Object.defineProperty(RZ,"__esModule",{value:!0});RZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("REPLICAOF",e,r.toString())},transformReply:void 0}});var Y7e=E(NZ=>{"use strict";Object.defineProperty(NZ,"__esModule",{value:!0});NZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RESTORE-ASKING")},transformReply:void 0}});var J7e=E(OZ=>{"use strict";Object.defineProperty(OZ,"__esModule",{value:!0});OZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("RESTORE"),t.pushKey(e),t.push(r.toString(),n),s?.REPLACE&&t.push("REPLACE"),s?.ABSTTL&&t.push("ABSTTL"),s?.IDLETIME&&t.push("IDLETIME",s.IDLETIME.toString()),s?.FREQ&&t.push("FREQ",s.FREQ.toString())},transformReply:void 0}});var X7e=E(PZ=>{"use strict";Object.defineProperty(PZ,"__esModule",{value:!0});PZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ROLE")},transformReply(t){switch(t[0]){case"master":{let[e,r,n]=t;return{role:e,replicationOffest:r,replicas:n.map(s=>{let[i,a,o]=s;return{host:i,port:Number(a),replicationOffest:Number(o)}})}}case"slave":{let[e,r,n,s,i]=t;return{role:e,master:{host:r,port:n},state:s,dataReceived:i}}case"sentinel":{let[e,r]=t;return{role:e,masterNames:r}}}}}});var Z7e=E(kZ=>{"use strict";Object.defineProperty(kZ,"__esModule",{value:!0});kZ.default={parseCommand(t,e,r){t.push("RPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var eqe=E(DZ=>{"use strict";Object.defineProperty(DZ,"__esModule",{value:!0});DZ.default={parseCommand(t,e){t.push("RPOP"),t.pushKey(e)},transformReply:void 0}});var tqe=E(BZ=>{"use strict";Object.defineProperty(BZ,"__esModule",{value:!0});BZ.default={parseCommand(t,e,r){t.push("RPOPLPUSH"),t.pushKeys([e,r])},transformReply:void 0}});var rqe=E(LZ=>{"use strict";Object.defineProperty(LZ,"__esModule",{value:!0});LZ.default={parseCommand(t,e,r){t.push("RPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var nqe=E(MZ=>{"use strict";Object.defineProperty(MZ,"__esModule",{value:!0});MZ.default={parseCommand(t,e,r){t.push("RPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var sqe=E(WZ=>{"use strict";Object.defineProperty(WZ,"__esModule",{value:!0});WZ.default={parseCommand(t,e,r){t.push("SADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var iqe=E($Z=>{"use strict";Object.defineProperty($Z,"__esModule",{value:!0});$Z.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCARD"),t.pushKey(e)},transformReply:void 0}});var aqe=E(FZ=>{"use strict";Object.defineProperty(FZ,"__esModule",{value:!0});FZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","DEBUG",e)},transformReply:void 0}});var oqe=E(UZ=>{"use strict";Object.defineProperty(UZ,"__esModule",{value:!0});UZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","EXISTS"),t.pushVariadic(e)},transformReply:void 0}});var cqe=E(qZ=>{"use strict";Object.defineProperty(qZ,"__esModule",{value:!0});qZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","FLUSH"),e&&t.push(e)},transformReply:void 0}});var uqe=E(jZ=>{"use strict";Object.defineProperty(jZ,"__esModule",{value:!0});jZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("SCRIPT","KILL")},transformReply:void 0}});var lqe=E(HZ=>{"use strict";Object.defineProperty(HZ,"__esModule",{value:!0});HZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","LOAD",e)},transformReply:void 0}});var dqe=E(QZ=>{"use strict";Object.defineProperty(QZ,"__esModule",{value:!0});QZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SDIFF"),t.pushKeys(e)},transformReply:void 0}});var fqe=E(GZ=>{"use strict";Object.defineProperty(GZ,"__esModule",{value:!0});GZ.default={parseCommand(t,e,r){t.push("SDIFFSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var pqe=E(KZ=>{"use strict";Object.defineProperty(KZ,"__esModule",{value:!0});KZ.default={parseCommand(t,e,r,n){t.push("SET"),t.pushKey(e),t.push(typeof r=="number"?r.toString():r),n?.expiration?typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString()):n?.EX!==void 0?t.push("EX",n.EX.toString()):n?.PX!==void 0?t.push("PX",n.PX.toString()):n?.EXAT!==void 0?t.push("EXAT",n.EXAT.toString()):n?.PXAT!==void 0?t.push("PXAT",n.PXAT.toString()):n?.KEEPTTL&&t.push("KEEPTTL"),n?.condition?(t.push(n.condition),n?.matchValue!==void 0&&t.push(n.matchValue)):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.GET&&t.push("GET")},transformReply:void 0}});var mqe=E(VZ=>{"use strict";Object.defineProperty(VZ,"__esModule",{value:!0});VZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SETBIT"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var hqe=E(zZ=>{"use strict";Object.defineProperty(zZ,"__esModule",{value:!0});zZ.default={parseCommand(t,e,r,n){t.push("SETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var gqe=E(YZ=>{"use strict";Object.defineProperty(YZ,"__esModule",{value:!0});YZ.default={parseCommand(t,e,r){t.push("SETNX"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Aqe=E(JZ=>{"use strict";Object.defineProperty(JZ,"__esModule",{value:!0});JZ.default={parseCommand(t,e,r,n){t.push("SETRANGE"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var yqe=E(XZ=>{"use strict";Object.defineProperty(XZ,"__esModule",{value:!0});XZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SINTER"),t.pushKeys(e)},transformReply:void 0}});var xqe=E(ZZ=>{"use strict";Object.defineProperty(ZZ,"__esModule",{value:!0});ZZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT!==void 0&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var bqe=E(eee=>{"use strict";Object.defineProperty(eee,"__esModule",{value:!0});eee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SINTERSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var Eqe=E(tee=>{"use strict";Object.defineProperty(tee,"__esModule",{value:!0});tee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SISMEMBER"),t.pushKey(e),t.push(r)},transformReply:void 0}});var _qe=E(ree=>{"use strict";Object.defineProperty(ree,"__esModule",{value:!0});ree.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SMEMBERS"),t.pushKey(e)},transformReply:{2:void 0,3:void 0}}});var Sqe=E(nee=>{"use strict";Object.defineProperty(nee,"__esModule",{value:!0});nee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SMISMEMBER"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var vqe=E(see=>{"use strict";Object.defineProperty(see,"__esModule",{value:!0});see.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SMOVE"),t.pushKeys([e,r]),t.push(n)},transformReply:void 0}});var aL=E(yC=>{"use strict";Object.defineProperty(yC,"__esModule",{value:!0});yC.parseSortArguments=void 0;function Iqe(t,e,r){if(t.pushKey(e),r?.BY&&t.push("BY",r.BY),r?.LIMIT&&t.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),r?.GET)if(Array.isArray(r.GET))for(let n of r.GET)t.push("GET",n);else t.push("GET",r.GET);r?.DIRECTION&&t.push(r.DIRECTION),r?.ALPHA&&t.push("ALPHA")}yC.parseSortArguments=Iqe;yC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SORT"),Iqe(t,e,r)},transformReply:void 0}});var Tqe=E(vf=>{"use strict";var xcr=vf&&vf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),bcr=vf&&vf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ecr=vf&&vf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&xcr(e,t,r);return bcr(e,t),e};Object.defineProperty(vf,"__esModule",{value:!0});var Cqe=Ecr(aL());vf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("SORT_RO"),(0,Cqe.parseSortArguments)(...t)},transformReply:Cqe.default.transformReply}});var wqe=E(xC=>{"use strict";var _cr=xC&&xC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(xC,"__esModule",{value:!0});var Scr=_cr(aL());xC.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){Scr.default.parseCommand(t,e,n),t.push("STORE",r)},transformReply:void 0}});var Rqe=E(iee=>{"use strict";Object.defineProperty(iee,"__esModule",{value:!0});iee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var Nqe=E(aee=>{"use strict";Object.defineProperty(aee,"__esModule",{value:!0});aee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("SPOP"),t.pushKey(e)},transformReply:void 0}});var Oqe=E(oee=>{"use strict";Object.defineProperty(oee,"__esModule",{value:!0});oee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SPUBLISH"),t.pushKey(e),t.push(r)},transformReply:void 0}});var uee=E(cee=>{"use strict";Object.defineProperty(cee,"__esModule",{value:!0});cee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("SRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var kqe=E(bC=>{"use strict";var vcr=bC&&bC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(bC,"__esModule",{value:!0});var Pqe=vcr(uee());bC.default={IS_READ_ONLY:Pqe.default.IS_READ_ONLY,parseCommand(t,e,r){Pqe.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var Dqe=E(lee=>{"use strict";Object.defineProperty(lee,"__esModule",{value:!0});lee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var Bqe=E(dee=>{"use strict";Object.defineProperty(dee,"__esModule",{value:!0});var Icr=aC();dee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("SSCAN"),t.pushKey(e),(0,Icr.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:e}}}});var Lqe=E(fee=>{"use strict";Object.defineProperty(fee,"__esModule",{value:!0});fee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("STRLEN"),t.pushKey(e)},transformReply:void 0}});var Mqe=E(pee=>{"use strict";Object.defineProperty(pee,"__esModule",{value:!0});pee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SUNION"),t.pushKeys(e)},transformReply:void 0}});var Wqe=E(mee=>{"use strict";Object.defineProperty(mee,"__esModule",{value:!0});mee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SUNIONSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var $qe=E(hee=>{"use strict";Object.defineProperty(hee,"__esModule",{value:!0});hee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SWAPDB",e.toString(),r.toString())},transformReply:void 0}});var Fqe=E(gee=>{"use strict";Object.defineProperty(gee,"__esModule",{value:!0});gee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("TIME")},transformReply:void 0}});var Uqe=E(Aee=>{"use strict";Object.defineProperty(Aee,"__esModule",{value:!0});Aee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TOUCH"),t.pushKeys(e)},transformReply:void 0}});var qqe=E(yee=>{"use strict";Object.defineProperty(yee,"__esModule",{value:!0});yee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TTL"),t.pushKey(e)},transformReply:void 0}});var jqe=E(xee=>{"use strict";Object.defineProperty(xee,"__esModule",{value:!0});xee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TYPE"),t.pushKey(e)},transformReply:void 0}});var Hqe=E(bee=>{"use strict";Object.defineProperty(bee,"__esModule",{value:!0});bee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("UNLINK"),t.pushKeys(e)},transformReply:void 0}});var Qqe=E(Eee=>{"use strict";Object.defineProperty(Eee,"__esModule",{value:!0});Eee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("WAIT",e.toString(),r.toString())},transformReply:void 0}});var Gqe=E(_ee=>{"use strict";Object.defineProperty(_ee,"__esModule",{value:!0});_ee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XACK"),t.pushKey(e),t.push(r),t.pushVariadic(n)},transformReply:void 0}});var Kqe=E(See=>{"use strict";Object.defineProperty(See,"__esModule",{value:!0});See.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XACKDEL"),t.pushKey(e),t.push(r),s&&t.push(s),t.push("IDS"),t.pushVariadicWithLength(n)},transformReply:void 0}});var vee=E(EC=>{"use strict";Object.defineProperty(EC,"__esModule",{value:!0});EC.parseXAddArguments=void 0;function Vqe(t,e,r,n,s,i){e.push("XADD"),e.pushKey(r),t&&e.push(t),i?.policy&&e.push(i.policy),i?.IDMPAUTO?e.push("IDMPAUTO",i.IDMPAUTO.pid):i?.IDMP&&e.push("IDMP",i.IDMP.pid,i.IDMP.iid),i?.TRIM&&(i.TRIM.strategy&&e.push(i.TRIM.strategy),i.TRIM.strategyModifier&&e.push(i.TRIM.strategyModifier),e.push(i.TRIM.threshold.toString()),i.TRIM.limit&&e.push("LIMIT",i.TRIM.limit.toString()),i.TRIM.policy&&e.push(i.TRIM.policy)),e.push(n);for(let[a,o]of Object.entries(s))e.push(a,o)}EC.parseXAddArguments=Vqe;EC.default={IS_READ_ONLY:!1,parseCommand(...t){return Vqe(void 0,...t)},transformReply:void 0}});var zqe=E(Iee=>{"use strict";Object.defineProperty(Iee,"__esModule",{value:!0});var Ccr=vee();Iee.default={IS_READ_ONLY:!1,parseCommand(...t){return(0,Ccr.parseXAddArguments)("NOMKSTREAM",...t)},transformReply:void 0}});var Tee=E(Cee=>{"use strict";Object.defineProperty(Cee,"__esModule",{value:!0});var Tcr=Ce();Cee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XAUTOCLAIM"),t.pushKey(e),t.push(r,n,s.toString(),i),a?.COUNT&&t.push("COUNT",a.COUNT.toString())},transformReply(t,e,r){return{nextId:t[0],messages:t[1].map(Tcr.transformStreamMessageNullReply.bind(void 0,r)),deletedMessages:t[2]}}}});var Jqe=E(_C=>{"use strict";var wcr=_C&&_C.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_C,"__esModule",{value:!0});var Yqe=wcr(Tee());_C.default={IS_READ_ONLY:Yqe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Yqe.default.parseCommand(...t),e.push("JUSTID")},transformReply(t){return{nextId:t[0],messages:t[1],deletedMessages:t[2]}}}});var Ree=E(wee=>{"use strict";Object.defineProperty(wee,"__esModule",{value:!0});var Rcr=Ce();wee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XCLAIM"),t.pushKey(e),t.push(r,n,s.toString()),t.pushVariadic(i),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),a?.TIME!==void 0&&t.push("TIME",(a.TIME instanceof Date?a.TIME.getTime():a.TIME).toString()),a?.RETRYCOUNT!==void 0&&t.push("RETRYCOUNT",a.RETRYCOUNT.toString()),a?.FORCE&&t.push("FORCE"),a?.LASTID!==void 0&&t.push("LASTID",a.LASTID)},transformReply(t,e,r){return t.map(Rcr.transformStreamMessageNullReply.bind(void 0,r))}}});var Zqe=E(SC=>{"use strict";var Ncr=SC&&SC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(SC,"__esModule",{value:!0});var Xqe=Ncr(Ree());SC.default={IS_READ_ONLY:Xqe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Xqe.default.parseCommand(...t),e.push("JUSTID")},transformReply:void 0}});var e9e=E(Nee=>{"use strict";Object.defineProperty(Nee,"__esModule",{value:!0});Nee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XCFGSET"),t.pushKey(e),r?.IDMP_DURATION!==void 0&&t.push("IDMP-DURATION",r.IDMP_DURATION.toString()),r?.IDMP_MAXSIZE!==void 0&&t.push("IDMP-MAXSIZE",r.IDMP_MAXSIZE.toString())},transformReply:void 0}});var t9e=E(Oee=>{"use strict";Object.defineProperty(Oee,"__esModule",{value:!0});Oee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var r9e=E(Pee=>{"use strict";Object.defineProperty(Pee,"__esModule",{value:!0});Pee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XDELEX"),t.pushKey(e),n&&t.push(n),t.push("IDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var n9e=E(kee=>{"use strict";Object.defineProperty(kee,"__esModule",{value:!0});kee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","CREATE"),t.pushKey(e),t.push(r,n),s?.MKSTREAM&&t.push("MKSTREAM"),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var s9e=E(Dee=>{"use strict";Object.defineProperty(Dee,"__esModule",{value:!0});Dee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","CREATECONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var i9e=E(Bee=>{"use strict";Object.defineProperty(Bee,"__esModule",{value:!0});Bee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","DELCONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var a9e=E(Lee=>{"use strict";Object.defineProperty(Lee,"__esModule",{value:!0});Lee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XGROUP","DESTROY"),t.pushKey(e),t.push(r)},transformReply:void 0}});var o9e=E(Mee=>{"use strict";Object.defineProperty(Mee,"__esModule",{value:!0});Mee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","SETID"),t.pushKey(e),t.push(r,n),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var c9e=E(Wee=>{"use strict";Object.defineProperty(Wee,"__esModule",{value:!0});Wee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XINFO","CONSUMERS"),t.pushKey(e),t.push(r)},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],pending:r[3],idle:r[5],inactive:r[7]}}),3:void 0}}});var u9e=E($ee=>{"use strict";Object.defineProperty($ee,"__esModule",{value:!0});$ee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","GROUPS"),t.pushKey(e)},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],consumers:r[3],pending:r[5],"last-delivered-id":r[7],"entries-read":r[9],lag:r[11]}}),3:void 0}}});var d9e=E(Fee=>{"use strict";Object.defineProperty(Fee,"__esModule",{value:!0});var l9e=Ce();Fee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","STREAM"),t.pushKey(e)},transformReply:{2(t){let e={};for(let r=0;r<t.length;r+=2)switch(t[r]){case"first-entry":case"last-entry":e[t[r]]=bb(t[r+1]);break;default:e[t[r]]=t[r+1];break}return e},3(t){if(t instanceof Map)t.set("first-entry",bb(t.get("first-entry"))),t.set("last-entry",bb(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]=bb(t[e+1]));else t["first-entry"]=bb(t["first-entry"]),t["last-entry"]=bb(t["last-entry"]);return t}}};function bb(t){if((0,l9e.isNullReply)(t))return t;let[e,r]=t;return{id:e,message:(0,l9e.transformTuplesReply)(r)}}});var f9e=E(Uee=>{"use strict";Object.defineProperty(Uee,"__esModule",{value:!0});Uee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("XLEN"),t.pushKey(e)},transformReply:void 0}});var p9e=E(qee=>{"use strict";Object.defineProperty(qee,"__esModule",{value:!0});qee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i,a){t.push("XPENDING"),t.pushKey(e),t.push(r),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),t.push(n,s,i.toString()),a?.consumer&&t.push(a.consumer)},transformReply(t){return t.map(e=>{let r=e;return{id:r[0],consumer:r[1],millisecondsSinceLastDelivery:r[2],deliveriesCounter:r[3]}})}}});var m9e=E(jee=>{"use strict";Object.defineProperty(jee,"__esModule",{value:!0});jee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XPENDING"),t.pushKey(e),t.push(r)},transformReply(t){let e=t[3];return{pending:t[0],firstId:t[1],lastId:t[2],consumers:e===null?null:e.map(r=>{let[n,s]=r;return{name:n,deliveriesCounter:Number(s)}})}}}});var Hee=E(vC=>{"use strict";Object.defineProperty(vC,"__esModule",{value:!0});vC.xRangeArguments=void 0;var Ocr=Ce();function h9e(t,e,r){let n=[t,e];return r?.COUNT&&n.push("COUNT",r.COUNT.toString()),n}vC.xRangeArguments=h9e;vC.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("XRANGE"),t.pushKey(e),t.pushVariadic(h9e(r[0],r[1],r[2]))},transformReply(t,e,r){return t.map(Ocr.transformStreamMessageReply.bind(void 0,r))}}});var Qee=E(IC=>{"use strict";Object.defineProperty(IC,"__esModule",{value:!0});IC.pushXReadStreams=void 0;var Pcr=Ce();function g9e(t,e){if(t.push("STREAMS"),Array.isArray(e)){for(let r=0;r<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)}IC.pushXReadStreams=g9e;IC.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()),g9e(t,e)},transformReply:{2:Pcr.transformStreamsMessagesReplyResp2,3:void 0},unstableResp3:!0}});var A9e=E(Gee=>{"use strict";Object.defineProperty(Gee,"__esModule",{value:!0});var kcr=Qee(),Dcr=Ce();Gee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("XREADGROUP","GROUP",e,r),s?.COUNT!==void 0&&t.push("COUNT",s.COUNT.toString()),s?.BLOCK!==void 0&&t.push("BLOCK",s.BLOCK.toString()),s?.NOACK&&t.push("NOACK"),s?.CLAIM!==void 0&&t.push("CLAIM",s.CLAIM.toString()),(0,kcr.pushXReadStreams)(t,n)},transformReply:{2:Dcr.transformStreamsMessagesReplyResp2,3:void 0}}});var y9e=E(If=>{"use strict";var Bcr=If&&If.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Lcr=If&&If.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Mcr=If&&If.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Bcr(e,t,r);return Lcr(e,t),e};Object.defineProperty(If,"__esModule",{value:!0});var oL=Mcr(Hee());If.default={CACHEABLE:oL.default.CACHEABLE,IS_READ_ONLY:oL.default.IS_READ_ONLY,parseCommand(t,e,...r){t.push("XREVRANGE"),t.pushKey(e),t.pushVariadic((0,oL.xRangeArguments)(r[0],r[1],r[2]))},transformReply:oL.default.transformReply}});var x9e=E(Kee=>{"use strict";Object.defineProperty(Kee,"__esModule",{value:!0});Kee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XSETID"),t.pushKey(e),t.push(r),n?.ENTRIESADDED&&t.push("ENTRIESADDED",n.ENTRIESADDED.toString()),n?.MAXDELETEDID&&t.push("MAXDELETEDID",n.MAXDELETEDID)},transformReply:void 0}});var b9e=E(Vee=>{"use strict";Object.defineProperty(Vee,"__esModule",{value:!0});Vee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XTRIM"),t.pushKey(e),t.push(r),s?.strategyModifier&&t.push(s.strategyModifier),t.push(n.toString()),s?.LIMIT&&t.push("LIMIT",s.LIMIT.toString()),s?.policy&&t.push(s.policy)},transformReply:void 0}});var zee=E(CC=>{"use strict";Object.defineProperty(CC,"__esModule",{value:!0});CC.pushMembers=void 0;var _9e=Ce();CC.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.comparison?t.push(n.comparison):n?.LT?t.push("LT"):n?.GT&&t.push("GT"),n?.CH&&t.push("CH"),S9e(t,r)},transformReply:_9e.transformDoubleReply};function S9e(t,e){if(Array.isArray(e))for(let r of e)E9e(t,r);else E9e(t,e)}CC.pushMembers=S9e;function E9e(t,e){t.push((0,_9e.transformDoubleArgument)(e.score),e.value)}});var v9e=E(Yee=>{"use strict";Object.defineProperty(Yee,"__esModule",{value:!0});var Wcr=zee(),$cr=Ce();Yee.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition&&t.push(n.condition),n?.comparison&&t.push(n.comparison),n?.CH&&t.push("CH"),t.push("INCR"),(0,Wcr.pushMembers)(t,r)},transformReply:$cr.transformNullableDoubleReply}});var I9e=E(Jee=>{"use strict";Object.defineProperty(Jee,"__esModule",{value:!0});Jee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZCARD"),t.pushKey(e)},transformReply:void 0}});var T9e=E(Xee=>{"use strict";Object.defineProperty(Xee,"__esModule",{value:!0});var C9e=Ce();Xee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZCOUNT"),t.pushKey(e),t.push((0,C9e.transformStringDoubleArgument)(r),(0,C9e.transformStringDoubleArgument)(n))},transformReply:void 0}});var ete=E(Zee=>{"use strict";Object.defineProperty(Zee,"__esModule",{value:!0});Zee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZDIFF"),t.pushKeysLength(e)},transformReply:void 0}});var R9e=E(TC=>{"use strict";var Fcr=TC&&TC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(TC,"__esModule",{value:!0});var Ucr=Ce(),w9e=Fcr(ete());TC.default={IS_READ_ONLY:w9e.default.IS_READ_ONLY,parseCommand(t,e){w9e.default.parseCommand(t,e),t.push("WITHSCORES")},transformReply:Ucr.transformSortedSetReply}});var N9e=E(tte=>{"use strict";Object.defineProperty(tte,"__esModule",{value:!0});tte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZDIFFSTORE"),t.pushKey(e),t.pushKeysLength(r)},transformReply:void 0}});var P9e=E(rte=>{"use strict";Object.defineProperty(rte,"__esModule",{value:!0});var O9e=Ce();rte.default={parseCommand(t,e,r,n){t.push("ZINCRBY"),t.pushKey(e),t.push((0,O9e.transformDoubleArgument)(r),n)},transformReply:O9e.transformDoubleReply}});var cL=E(wC=>{"use strict";Object.defineProperty(wC,"__esModule",{value:!0});wC.parseZInterArguments=void 0;var qcr=Ce();function k9e(t,e,r){(0,qcr.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)}wC.parseZInterArguments=k9e;wC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTER"),k9e(t,e,r)},transformReply:void 0}});var B9e=E(RC=>{"use strict";var jcr=RC&&RC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(RC,"__esModule",{value:!0});var Hcr=Ce(),D9e=jcr(cL());RC.default={IS_READ_ONLY:D9e.default.IS_READ_ONLY,parseCommand(...t){D9e.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:Hcr.transformSortedSetReply}});var L9e=E(nte=>{"use strict";Object.defineProperty(nte,"__esModule",{value:!0});nte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var M9e=E(ste=>{"use strict";Object.defineProperty(ste,"__esModule",{value:!0});var Qcr=cL();ste.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZINTERSTORE"),t.pushKey(e),(0,Qcr.parseZInterArguments)(t,r,n)},transformReply:void 0}});var W9e=E(ite=>{"use strict";Object.defineProperty(ite,"__esModule",{value:!0});ite.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZLEXCOUNT"),t.pushKey(e),t.push(r),t.push(n)},transformReply:void 0}});var $9e=E(ate=>{"use strict";Object.defineProperty(ate,"__esModule",{value:!0});var Gcr=Ce();ate.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZMSCORE"),t.pushKey(e),t.pushVariadic(r)},transformReply:{2:(t,e,r)=>t.map((0,Gcr.createTransformNullableDoubleReplyResp2Func)(e,r)),3:void 0}}});var F9e=E(ote=>{"use strict";Object.defineProperty(ote,"__esModule",{value:!0});var Kcr=Ce();ote.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMAX"),t.pushKey(e),t.push(r.toString())},transformReply:Kcr.transformSortedSetReply}});var ute=E(cte=>{"use strict";Object.defineProperty(cte,"__esModule",{value:!0});var Vcr=Ce();cte.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMAX"),t.pushKey(e)},transformReply:{2:(t,e,r)=>t.length===0?null:{value:t[0],score:Vcr.transformDoubleReply[2](t[1],e,r)},3:t=>t.length===0?null:{value:t[0],score:t[1]}}}});var U9e=E(lte=>{"use strict";Object.defineProperty(lte,"__esModule",{value:!0});var zcr=Ce();lte.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMIN"),t.pushKey(e),t.push(r.toString())},transformReply:zcr.transformSortedSetReply}});var q9e=E(NC=>{"use strict";var Ycr=NC&&NC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(NC,"__esModule",{value:!0});var Jcr=Ycr(ute());NC.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMIN"),t.pushKey(e)},transformReply:Jcr.default.transformReply}});var fte=E(dte=>{"use strict";Object.defineProperty(dte,"__esModule",{value:!0});dte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var pte=E(OC=>{"use strict";var Xcr=OC&&OC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(OC,"__esModule",{value:!0});var j9e=Xcr(fte());OC.default={IS_READ_ONLY:j9e.default.IS_READ_ONLY,parseCommand(t,e,r){j9e.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var Q9e=E(PC=>{"use strict";var Zcr=PC&&PC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(PC,"__esModule",{value:!0});var eur=Ce(),H9e=Zcr(pte());PC.default={IS_READ_ONLY:H9e.default.IS_READ_ONLY,parseCommand(t,e,r){H9e.default.parseCommand(t,e,r),t.push("WITHSCORES")},transformReply:eur.transformSortedSetReply}});var mte=E(kC=>{"use strict";Object.defineProperty(kC,"__esModule",{value:!0});kC.zRangeArgument=void 0;var G9e=Ce();function K9e(t,e,r){let n=[(0,G9e.transformStringDoubleArgument)(t),(0,G9e.transformStringDoubleArgument)(e)];switch(r?.BY){case"SCORE":n.push("BYSCORE");break;case"LEX":n.push("BYLEX");break}return r?.REV&&n.push("REV"),r?.LIMIT&&n.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),n}kC.zRangeArgument=K9e;kC.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGE"),t.pushKey(e),t.pushVariadic(K9e(r,n,s))},transformReply:void 0}});var V9e=E(DC=>{"use strict";var tur=DC&&DC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(DC,"__esModule",{value:!0});var rur=Ce(),hte=tur(mte());DC.default={CACHEABLE:hte.default.CACHEABLE,IS_READ_ONLY:hte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];hte.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:rur.transformSortedSetReply}});var Y9e=E(gte=>{"use strict";Object.defineProperty(gte,"__esModule",{value:!0});var z9e=Ce();gte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYLEX"),t.pushKey(e),t.push((0,z9e.transformStringDoubleArgument)(r),(0,z9e.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var yte=E(Ate=>{"use strict";Object.defineProperty(Ate,"__esModule",{value:!0});var J9e=Ce();Ate.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYSCORE"),t.pushKey(e),t.push((0,J9e.transformStringDoubleArgument)(r),(0,J9e.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var X9e=E(BC=>{"use strict";var nur=BC&&BC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(BC,"__esModule",{value:!0});var sur=Ce(),xte=nur(yte());BC.default={CACHEABLE:xte.default.CACHEABLE,IS_READ_ONLY:xte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];xte.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:sur.transformSortedSetReply}});var eje=E(bte=>{"use strict";Object.defineProperty(bte,"__esModule",{value:!0});var Z9e=Ce();bte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){switch(t.push("ZRANGESTORE"),t.pushKey(e),t.pushKey(r),t.push((0,Z9e.transformStringDoubleArgument)(n),(0,Z9e.transformStringDoubleArgument)(s)),i?.BY){case"SCORE":t.push("BYSCORE");break;case"LEX":t.push("BYLEX");break}i?.REV&&t.push("REV"),i?.LIMIT&&t.push("LIMIT",i.LIMIT.offset.toString(),i.LIMIT.count.toString())},transformReply:void 0}});var rje=E(Ete=>{"use strict";Object.defineProperty(Ete,"__esModule",{value:!0});var tje=Ce();Ete.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYSCORE"),t.pushKey(e),t.push((0,tje.transformStringDoubleArgument)(r),(0,tje.transformStringDoubleArgument)(n))},transformReply:void 0}});var Ste=E(_te=>{"use strict";Object.defineProperty(_te,"__esModule",{value:!0});_te.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var nje=E(LC=>{"use strict";var iur=LC&&LC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(LC,"__esModule",{value:!0});var vte=iur(Ste());LC.default={CACHEABLE:vte.default.CACHEABLE,IS_READ_ONLY:vte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];vte.default.parseCommand(...t),e.push("WITHSCORE")},transformReply:{2:t=>t===null?null:{rank:t[0],score:Number(t[1])},3:t=>t===null?null:{rank:t[0],score:t[1]}}}});var sje=E(Ite=>{"use strict";Object.defineProperty(Ite,"__esModule",{value:!0});Ite.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var aje=E(Cte=>{"use strict";Object.defineProperty(Cte,"__esModule",{value:!0});var ije=Ce();Cte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYLEX"),t.pushKey(e),t.push((0,ije.transformStringDoubleArgument)(r),(0,ije.transformStringDoubleArgument)(n))},transformReply:void 0}});var oje=E(Tte=>{"use strict";Object.defineProperty(Tte,"__esModule",{value:!0});Tte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYRANK"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var cje=E(wte=>{"use strict";Object.defineProperty(wte,"__esModule",{value:!0});wte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZREVRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var uje=E(Rte=>{"use strict";Object.defineProperty(Rte,"__esModule",{value:!0});var aur=aC(),our=Ce();Rte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZSCAN"),t.pushKey(e),(0,aur.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:our.transformSortedSetReply[2](e)}}}});var lje=E(Nte=>{"use strict";Object.defineProperty(Nte,"__esModule",{value:!0});var cur=Ce();Nte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZSCORE"),t.pushKey(e),t.push(r)},transformReply:cur.transformNullableDoubleReply}});var Pte=E(Ote=>{"use strict";Object.defineProperty(Ote,"__esModule",{value:!0});var uur=Ce();Ote.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZUNION"),(0,uur.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)},transformReply:void 0}});var fje=E(MC=>{"use strict";var lur=MC&&MC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(MC,"__esModule",{value:!0});var dur=Ce(),dje=lur(Pte());MC.default={IS_READ_ONLY:dje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];dje.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:dur.transformSortedSetReply}});var pje=E(kte=>{"use strict";Object.defineProperty(kte,"__esModule",{value:!0});var fur=Ce();kte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZUNIONSTORE"),t.pushKey(e),(0,fur.parseZKeysArguments)(t,r),n?.AGGREGATE&&t.push("AGGREGATE",n.AGGREGATE)},transformReply:void 0}});var hje=E(Dte=>{"use strict";Object.defineProperty(Dte,"__esModule",{value:!0});var mje=Ce();Dte.default={parseCommand(t,e,r,n,s){t.push("VADD"),t.pushKey(e),s?.REDUCE!==void 0&&t.push("REDUCE",s.REDUCE.toString()),t.push("VALUES",r.length.toString());for(let i of r)t.push((0,mje.transformDoubleArgument)(i));t.push(n),s?.CAS&&t.push("CAS"),s?.QUANT&&t.push(s.QUANT),s?.EF!==void 0&&t.push("EF",s.EF.toString()),s?.SETATTR&&t.push("SETATTR",JSON.stringify(s.SETATTR)),s?.M!==void 0&&t.push("M",s.M.toString())},transformReply:mje.transformBooleanReply}});var gje=E(Bte=>{"use strict";Object.defineProperty(Bte,"__esModule",{value:!0});Bte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VCARD"),t.pushKey(e)},transformReply:void 0}});var Aje=E(Lte=>{"use strict";Object.defineProperty(Lte,"__esModule",{value:!0});Lte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VDIM"),t.pushKey(e)},transformReply:void 0}});var Wte=E(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});var pur=Ce();Mte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VEMB"),t.pushKey(e),t.push(r)},transformReply:pur.transformDoubleArrayReply}});var xje=E(WC=>{"use strict";var mur=WC&&WC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(WC,"__esModule",{value:!0});var yje=Ce(),hur=mur(Wte()),gur={2:t=>({quantization:t[0],raw:t[1],l2Norm:yje.transformDoubleReply[2](t[2]),...t[3]!==void 0&&{quantizationRange:yje.transformDoubleReply[2](t[3])}}),3:t=>({quantization:t[0],raw:t[1],l2Norm:t[2],quantizationRange:t[3]})};WC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){hur.default.parseCommand(t,e,r),t.push("RAW")},transformReply:gur}});var bje=E($te=>{"use strict";Object.defineProperty($te,"__esModule",{value:!0});var Aur=Ce();$te.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VGETATTR"),t.pushKey(e),t.push(r)},transformReply:Aur.transformRedisJsonNullReply}});var Eje=E(Fte=>{"use strict";Object.defineProperty(Fte,"__esModule",{value:!0});Fte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VINFO"),t.pushKey(e)},transformReply:{2:t=>{let e=Object.create(null);for(let r=0;r<t.length;r+=2)e[t[r].toString()]=t[r+1];return e},3:void 0}}});var qte=E(Ute=>{"use strict";Object.defineProperty(Ute,"__esModule",{value:!0});Ute.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VLINKS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Sje=E($C=>{"use strict";var yur=$C&&$C.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($C,"__esModule",{value:!0});var xur=Ce(),_je=yur(qte());function bur(t){let e=[];for(let r of t){let n=Object.create(null);for(let s=0;s<r.length;s+=2){let i=r[s],a=xur.transformDoubleReply[2](r[s+1]);n[i.toString()]=a}e.push(n)}return e}$C.default={IS_READ_ONLY:_je.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];_je.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:{2:bur,3:void 0}}});var vje=E(jte=>{"use strict";Object.defineProperty(jte,"__esModule",{value:!0});jte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VRANDMEMBER"),t.pushKey(e),r!==void 0&&t.push(r.toString())},transformReply:void 0}});var Ije=E(Hte=>{"use strict";Object.defineProperty(Hte,"__esModule",{value:!0});Hte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("VRANGE"),t.pushKey(e),t.push(r,n),s!==void 0&&t.push(s.toString())},transformReply:void 0}});var Cje=E(Qte=>{"use strict";Object.defineProperty(Qte,"__esModule",{value:!0});var Eur=Ce();Qte.default={parseCommand(t,e,r){t.push("VREM"),t.pushKey(e),t.push(r)},transformReply:Eur.transformBooleanReply}});var Tje=E(Gte=>{"use strict";Object.defineProperty(Gte,"__esModule",{value:!0});var _ur=Ce();Gte.default={parseCommand(t,e,r,n){t.push("VSETATTR"),t.pushKey(e),t.push(r),typeof n=="object"&&n!==null?t.push(JSON.stringify(n)):t.push(n)},transformReply:_ur.transformBooleanReply}});var Vte=E(Kte=>{"use strict";Object.defineProperty(Kte,"__esModule",{value:!0});var Sur=Ce();Kte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("VSIM"),t.pushKey(e),Array.isArray(r)){t.push("VALUES",r.length.toString());for(let s of r)t.push((0,Sur.transformDoubleArgument)(s))}else t.push("ELE",r);n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.EPSILON!==void 0&&t.push("EPSILON",n.EPSILON.toString()),n?.EF!==void 0&&t.push("EF",n.EF.toString()),n?.FILTER&&t.push("FILTER",n.FILTER),n?.["FILTER-EF"]!==void 0&&t.push("FILTER-EF",n["FILTER-EF"].toString()),n?.TRUTH&&t.push("TRUTH"),n?.NOTHREAD&&t.push("NOTHREAD")},transformReply:void 0}});var Rje=E(FC=>{"use strict";var vur=FC&&FC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(FC,"__esModule",{value:!0});var Iur=Ce(),wje=vur(Vte());FC.default={IS_READ_ONLY:wje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];wje.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:{2:t=>{let e=t,r={};for(let n=0;n<e.length;n+=2)r[e[n].toString()]=Iur.transformDoubleReply[2](e[n+1]);return r},3:void 0}}});var Nje=E(zte=>{"use strict";Object.defineProperty(zte,"__esModule",{value:!0});var Cur=Ce(),Tur=t=>t;zte.default={CACHEABLE:!1,IS_READ_ONLY:!0,parseCommand(t,...e){let r=["LATENCY","HISTOGRAM"];e.length!==0&&r.push(...e),t.push(...r)},transformReply:{2:t=>{let e={};if(t.length===0)return e;for(let r=1;r<t.length;r+=2){let n=t[r];e[t[r-1]]={calls:n[1],histogram_usec:(0,Cur.transformTuplesToMap)(n[3],Tur)}}return e},3:void 0}}});var yu=E(Qn=>{"use strict";var wur=Qn&&Qn.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Rur=Qn&&Qn.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),UC=Qn&&Qn.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&wur(e,t,r);return Rur(e,t),e},$=Qn&&Qn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Qn,"__esModule",{value:!0});Qn.NON_STICKY_COMMANDS=Qn.REDIS_FLUSH_MODES=Qn.COMMAND_LIST_FILTER_BY=Qn.CLUSTER_SLOT_STATES=Qn.FAILOVER_MODES=Qn.CLIENT_KILL_FILTERS=void 0;var Oje=$(sWe()),Pje=$(iWe()),kje=$(aWe()),Dje=$(oWe()),Bje=$(cWe()),Lje=$(uWe()),Mje=$(lWe()),Wje=$(yWe()),$je=$(jz()),Fje=$(xWe()),Uje=$(bWe()),qje=$(EWe()),jje=$(_We()),Hje=$(SWe()),Qje=$(zz()),Gje=$(vWe()),Kje=$(IWe()),Vje=$(CWe()),zje=$(TWe()),Yje=$(wWe()),Jje=$(RWe()),Xje=$(NWe()),Zje=$(OWe()),eHe=$(PWe()),tHe=$(BWe()),rHe=$(oY()),nHe=$(LWe()),sHe=$(MWe()),iHe=$(UWe()),aHe=$(dY()),oHe=$(jWe()),cHe=$(HWe()),uHe=$(QWe()),lHe=$(GWe()),dHe=$(KWe()),fHe=$(AY()),Yte=UC(zWe());Object.defineProperty(Qn,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return Yte.CLIENT_KILL_FILTERS}});var pHe=$(YWe()),mHe=$(JWe()),hHe=$(XWe()),gHe=$(ZWe()),AHe=$(e$e()),yHe=$(t$e()),xHe=$(r$e()),bHe=$(n$e()),EHe=$(s$e()),_He=$(i$e()),SHe=$(a$e()),vHe=$(o$e()),IHe=$(c$e()),CHe=$(u$e()),THe=$(l$e()),Jte=UC(d$e());Object.defineProperty(Qn,"FAILOVER_MODES",{enumerable:!0,get:function(){return Jte.FAILOVER_MODES}});var wHe=$(f$e()),RHe=$(p$e()),NHe=$(m$e()),OHe=$(h$e()),PHe=$(g$e()),kHe=$(A$e()),DHe=$(y$e()),BHe=$(x$e()),LHe=$(b$e()),MHe=$(E$e()),WHe=$(_$e()),$He=$(S$e()),FHe=$(v$e()),UHe=$(I$e()),qHe=$(C$e()),Xte=UC(T$e());Object.defineProperty(Qn,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return Xte.CLUSTER_SLOT_STATES}});var jHe=$(R$e()),HHe=$(N$e()),QHe=$(O$e()),GHe=$(P$e()),KHe=$(k$e()),Zte=UC(D$e());Object.defineProperty(Qn,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return Zte.COMMAND_LIST_FILTER_BY}});var VHe=$(B$e()),zHe=$(L$e()),YHe=$(M$e()),JHe=$(W$e()),XHe=$($$e()),ZHe=$(F$e()),eQe=$(U$e()),tQe=$(q$e()),rQe=$(j$e()),nQe=$(H$e()),sQe=$(Q$e()),iQe=$(G$e()),aQe=$(K$e()),oQe=$(V$e()),cQe=$(J$e()),uQe=$(cg()),lQe=$(Z$e()),dQe=$(tFe()),fQe=$(nFe()),pQe=$(sFe()),mQe=$(iFe()),hQe=$(aFe()),gQe=$(pFe()),AQe=$(hFe()),yQe=$(AFe()),xQe=$(sL()),bQe=$(JI()),EQe=$(_Fe()),_Qe=$(vFe()),SQe=$(CFe()),vQe=$(hJ()),IQe=$(tC()),CQe=$(XI()),TQe=$(lg()),wQe=$(TFe()),RQe=$(wFe()),NQe=$(RFe()),OQe=$(NFe()),PQe=$(OFe()),kQe=$(PFe()),DQe=$(kFe()),BQe=$(DFe()),LQe=$(BFe()),MQe=$(LFe()),WQe=$(MFe()),ere=UC(WFe());Object.defineProperty(Qn,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return ere.REDIS_FLUSH_MODES}});var $Qe=$($Fe()),FQe=$(UFe()),UQe=$(jFe()),qQe=$(HFe()),jQe=$(QFe()),HQe=$(GFe()),QQe=$(KFe()),GQe=$(VFe()),KQe=$(DJ()),VQe=$(zFe()),zQe=$(YFe()),YQe=$(JFe()),JQe=$(XFe()),XQe=$(UJ()),ZQe=$(ZFe()),eGe=$(eUe()),tGe=$(tUe()),rGe=$(rUe()),nGe=$(nUe()),sGe=$(sUe()),iGe=$(iUe()),aGe=$(aUe()),oGe=$(oUe()),cGe=$(cUe()),uGe=$(uUe()),lGe=$(lUe()),dGe=$(dUe()),fGe=$(fUe()),pGe=$(pUe()),mGe=$(mUe()),hGe=$(hUe()),gGe=$(gUe()),AGe=$(AUe()),yGe=$(yUe()),xGe=$(xUe()),bGe=$(cX()),EGe=$(EUe()),_Ge=$(SUe()),SGe=$(IUe()),vGe=$(CUe()),IGe=$(TUe()),CGe=$(wUe()),TGe=$(RUe()),wGe=$(OUe()),RGe=$(PUe()),NGe=$(kUe()),OGe=$(DUe()),PGe=$(BUe()),kGe=$(LUe()),DGe=$(MUe()),BGe=$(WUe()),LGe=$($Ue()),MGe=$(FUe()),WGe=$(UUe()),$Ge=$(IX()),FGe=$(qUe()),UGe=$(jUe()),qGe=$(HUe()),jGe=$(KUe()),HGe=$(RX()),QGe=$(zUe()),GGe=$(iL()),KGe=$(YUe()),VGe=$(JUe()),zGe=$(XUe()),YGe=$(ZUe()),JGe=$(iY()),Nur=$(e7e()),XGe=$(t7e()),ZGe=$(LX()),eKe=$(r7e()),tKe=$(WX()),rKe=$(n7e()),nKe=$(s7e()),sKe=$(i7e()),iKe=$(a7e()),aKe=$(o7e()),oKe=$(c7e()),cKe=$(u7e()),uKe=$(l7e()),lKe=$(d7e()),dKe=$(f7e()),fKe=$(p7e()),pKe=$(m7e()),mKe=$(h7e()),hKe=$(g7e()),gKe=$(A7e()),AKe=$(y7e()),yKe=$(x7e()),xKe=$(nZ()),bKe=$(S7e()),EKe=$(v7e()),_Ke=$(I7e()),SKe=$(C7e()),vKe=$(T7e()),IKe=$(w7e()),CKe=$(R7e()),TKe=$(N7e()),wKe=$(O7e()),RKe=$(P7e()),NKe=$(k7e()),OKe=$(D7e()),PKe=$(B7e()),kKe=$(L7e()),DKe=$(M7e()),BKe=$(W7e()),LKe=$($7e()),MKe=$(F7e()),WKe=$(U7e()),$Ke=$(q7e()),FKe=$(j7e()),UKe=$(H7e()),qKe=$(Q7e()),jKe=$(G7e()),HKe=$(K7e()),QKe=$(V7e()),GKe=$(z7e()),KKe=$(Y7e()),VKe=$(J7e()),zKe=$(X7e()),YKe=$(Z7e()),JKe=$(eqe()),XKe=$(tqe()),ZKe=$(rqe()),eVe=$(nqe()),tVe=$(sqe()),rVe=$(aC()),nVe=$(iqe()),sVe=$(aqe()),iVe=$(oqe()),aVe=$(cqe()),oVe=$(uqe()),cVe=$(lqe()),uVe=$(dqe()),lVe=$(fqe()),dVe=$(pqe()),fVe=$(mqe()),pVe=$(hqe()),mVe=$(gqe()),hVe=$(Aqe()),gVe=$(yqe()),AVe=$(xqe()),yVe=$(bqe()),xVe=$(Eqe()),bVe=$(_qe()),EVe=$(Sqe()),_Ve=$(vqe()),SVe=$(Tqe()),vVe=$(wqe()),IVe=$(aL()),CVe=$(Rqe()),TVe=$(Nqe()),wVe=$(Oqe()),RVe=$(kqe()),NVe=$(uee()),OVe=$(Dqe()),PVe=$(Bqe()),kVe=$(Lqe()),DVe=$(Mqe()),BVe=$(Wqe()),LVe=$($qe()),MVe=$(Fqe()),WVe=$(Uqe()),$Ve=$(qqe()),FVe=$(jqe()),UVe=$(Hqe()),qVe=$(Qqe()),jVe=$(Gqe()),HVe=$(Kqe()),QVe=$(zqe()),GVe=$(vee()),KVe=$(Jqe()),VVe=$(Tee()),zVe=$(Zqe()),YVe=$(Ree()),JVe=$(e9e()),XVe=$(t9e()),ZVe=$(r9e()),eze=$(n9e()),tze=$(s9e()),rze=$(i9e()),nze=$(a9e()),sze=$(o9e()),ize=$(c9e()),aze=$(u9e()),oze=$(d9e()),cze=$(f9e()),uze=$(p9e()),lze=$(m9e()),dze=$(Hee()),fze=$(Qee()),pze=$(A9e()),mze=$(y9e()),hze=$(x9e()),gze=$(b9e()),Aze=$(v9e()),yze=$(zee()),xze=$(I9e()),bze=$(T9e()),Eze=$(R9e()),_ze=$(ete()),Sze=$(N9e()),vze=$(P9e()),Ize=$(B9e()),Cze=$(cL()),Tze=$(L9e()),wze=$(M9e()),Rze=$(W9e()),Nze=$(uY()),Oze=$($9e()),Pze=$(F9e()),kze=$(ute()),Dze=$(U9e()),Bze=$(q9e()),Lze=$(Q9e()),Mze=$(pte()),Wze=$(fte()),$ze=$(V9e()),Fze=$(mte()),Uze=$(Y9e()),qze=$(X9e()),jze=$(yte()),Hze=$(eje()),Qze=$(rje()),Gze=$(nje()),Kze=$(Ste()),Vze=$(sje()),zze=$(aje()),Yze=$(oje()),Jze=$(cje()),Xze=$(uje()),Zze=$(lje()),eYe=$(fje()),tYe=$(Pte()),rYe=$(pje()),nYe=$(hje()),sYe=$(gje()),iYe=$(Aje()),aYe=$(Wte()),oYe=$(xje()),cYe=$(bje()),uYe=$(Eje()),lYe=$(qte()),dYe=$(Sje()),fYe=$(vje()),pYe=$(Ije()),mYe=$(Cje()),hYe=$(Tje()),gYe=$(Vte()),AYe=$(Rje()),yYe=$(Nje());Qn.default={ACL_CAT:Oje.default,aclCat:Oje.default,ACL_DELUSER:Pje.default,aclDelUser:Pje.default,ACL_DRYRUN:kje.default,aclDryRun:kje.default,ACL_GENPASS:Dje.default,aclGenPass:Dje.default,ACL_GETUSER:Bje.default,aclGetUser:Bje.default,ACL_LIST:Lje.default,aclList:Lje.default,ACL_LOAD:Mje.default,aclLoad:Mje.default,ACL_LOG_RESET:Wje.default,aclLogReset:Wje.default,ACL_LOG:$je.default,aclLog:$je.default,ACL_SAVE:Fje.default,aclSave:Fje.default,ACL_SETUSER:Uje.default,aclSetUser:Uje.default,ACL_USERS:qje.default,aclUsers:qje.default,ACL_WHOAMI:jje.default,aclWhoAmI:jje.default,APPEND:Hje.default,append:Hje.default,ASKING:Qje.default,asking:Qje.default,AUTH:Gje.default,auth:Gje.default,BGREWRITEAOF:Kje.default,bgRewriteAof:Kje.default,BGSAVE:Vje.default,bgSave:Vje.default,BITCOUNT:zje.default,bitCount:zje.default,BITFIELD_RO:Yje.default,bitFieldRo:Yje.default,BITFIELD:Jje.default,bitField:Jje.default,BITOP:Xje.default,bitOp:Xje.default,BITPOS:Zje.default,bitPos:Zje.default,BLMOVE:eHe.default,blMove:eHe.default,BLMPOP:tHe.default,blmPop:tHe.default,BLPOP:rHe.default,blPop:rHe.default,BRPOP:nHe.default,brPop:nHe.default,BRPOPLPUSH:sHe.default,brPopLPush:sHe.default,BZMPOP:iHe.default,bzmPop:iHe.default,BZPOPMAX:aHe.default,bzPopMax:aHe.default,BZPOPMIN:oHe.default,bzPopMin:oHe.default,CLIENT_CACHING:cHe.default,clientCaching:cHe.default,CLIENT_GETNAME:uHe.default,clientGetName:uHe.default,CLIENT_GETREDIR:lHe.default,clientGetRedir:lHe.default,CLIENT_ID:dHe.default,clientId:dHe.default,CLIENT_INFO:fHe.default,clientInfo:fHe.default,CLIENT_KILL:Yte.default,clientKill:Yte.default,CLIENT_LIST:pHe.default,clientList:pHe.default,"CLIENT_NO-EVICT":mHe.default,clientNoEvict:mHe.default,"CLIENT_NO-TOUCH":hHe.default,clientNoTouch:hHe.default,CLIENT_PAUSE:gHe.default,clientPause:gHe.default,CLIENT_SETNAME:AHe.default,clientSetName:AHe.default,CLIENT_TRACKING:yHe.default,clientTracking:yHe.default,CLIENT_TRACKINGINFO:xHe.default,clientTrackingInfo:xHe.default,CLIENT_UNPAUSE:bHe.default,clientUnpause:bHe.default,CLUSTER_ADDSLOTS:EHe.default,clusterAddSlots:EHe.default,CLUSTER_ADDSLOTSRANGE:_He.default,clusterAddSlotsRange:_He.default,CLUSTER_BUMPEPOCH:SHe.default,clusterBumpEpoch:SHe.default,"CLUSTER_COUNT-FAILURE-REPORTS":vHe.default,clusterCountFailureReports:vHe.default,CLUSTER_COUNTKEYSINSLOT:IHe.default,clusterCountKeysInSlot:IHe.default,CLUSTER_DELSLOTS:CHe.default,clusterDelSlots:CHe.default,CLUSTER_DELSLOTSRANGE:THe.default,clusterDelSlotsRange:THe.default,CLUSTER_FAILOVER:Jte.default,clusterFailover:Jte.default,CLUSTER_FLUSHSLOTS:wHe.default,clusterFlushSlots:wHe.default,CLUSTER_FORGET:RHe.default,clusterForget:RHe.default,CLUSTER_GETKEYSINSLOT:NHe.default,clusterGetKeysInSlot:NHe.default,CLUSTER_INFO:OHe.default,clusterInfo:OHe.default,CLUSTER_KEYSLOT:PHe.default,clusterKeySlot:PHe.default,CLUSTER_LINKS:kHe.default,clusterLinks:kHe.default,CLUSTER_MEET:DHe.default,clusterMeet:DHe.default,CLUSTER_MYID:BHe.default,clusterMyId:BHe.default,CLUSTER_MYSHARDID:LHe.default,clusterMyShardId:LHe.default,CLUSTER_NODES:MHe.default,clusterNodes:MHe.default,CLUSTER_REPLICAS:WHe.default,clusterReplicas:WHe.default,CLUSTER_REPLICATE:$He.default,clusterReplicate:$He.default,CLUSTER_RESET:FHe.default,clusterReset:FHe.default,CLUSTER_SAVECONFIG:UHe.default,clusterSaveConfig:UHe.default,"CLUSTER_SET-CONFIG-EPOCH":qHe.default,clusterSetConfigEpoch:qHe.default,CLUSTER_SETSLOT:Xte.default,clusterSetSlot:Xte.default,CLUSTER_SLOTS:jHe.default,clusterSlots:jHe.default,COMMAND_COUNT:HHe.default,commandCount:HHe.default,COMMAND_GETKEYS:QHe.default,commandGetKeys:QHe.default,COMMAND_GETKEYSANDFLAGS:GHe.default,commandGetKeysAndFlags:GHe.default,COMMAND_INFO:KHe.default,commandInfo:KHe.default,COMMAND_LIST:Zte.default,commandList:Zte.default,COMMAND:VHe.default,command:VHe.default,CONFIG_GET:zHe.default,configGet:zHe.default,CONFIG_RESETASTAT:YHe.default,configResetStat:YHe.default,CONFIG_REWRITE:JHe.default,configRewrite:JHe.default,CONFIG_SET:XHe.default,configSet:XHe.default,COPY:ZHe.default,copy:ZHe.default,DBSIZE:eQe.default,dbSize:eQe.default,DECR:tQe.default,decr:tQe.default,DECRBY:rQe.default,decrBy:rQe.default,DEL:nQe.default,del:nQe.default,DELEX:sQe.default,delEx:sQe.default,DIGEST:iQe.default,digest:iQe.default,DUMP:aQe.default,dump:aQe.default,ECHO:oQe.default,echo:oQe.default,EVAL_RO:cQe.default,evalRo:cQe.default,EVAL:uQe.default,eval:uQe.default,EVALSHA_RO:lQe.default,evalShaRo:lQe.default,EVALSHA:dQe.default,evalSha:dQe.default,EXISTS:BQe.default,exists:BQe.default,EXPIRE:LQe.default,expire:LQe.default,EXPIREAT:MQe.default,expireAt:MQe.default,EXPIRETIME:WQe.default,expireTime:WQe.default,FLUSHALL:ere.default,flushAll:ere.default,FLUSHDB:$Qe.default,flushDb:$Qe.default,FCALL:FQe.default,fCall:FQe.default,FCALL_RO:UQe.default,fCallRo:UQe.default,FUNCTION_DELETE:qQe.default,functionDelete:qQe.default,FUNCTION_DUMP:jQe.default,functionDump:jQe.default,FUNCTION_FLUSH:HQe.default,functionFlush:HQe.default,FUNCTION_KILL:QQe.default,functionKill:QQe.default,FUNCTION_LIST_WITHCODE:GQe.default,functionListWithCode:GQe.default,FUNCTION_LIST:KQe.default,functionList:KQe.default,FUNCTION_LOAD:VQe.default,functionLoad:VQe.default,FUNCTION_RESTORE:zQe.default,functionRestore:zQe.default,FUNCTION_STATS:YQe.default,functionStats:YQe.default,GEOADD:fQe.default,geoAdd:fQe.default,GEODIST:pQe.default,geoDist:pQe.default,GEOHASH:mQe.default,geoHash:mQe.default,GEOPOS:hQe.default,geoPos:hQe.default,GEORADIUS_RO_WITH:gQe.default,geoRadiusRoWith:gQe.default,GEORADIUS_RO:AQe.default,geoRadiusRo:AQe.default,GEORADIUS_STORE:yQe.default,geoRadiusStore:yQe.default,GEORADIUS_WITH:xQe.default,geoRadiusWith:xQe.default,GEORADIUS:bQe.default,geoRadius:bQe.default,GEORADIUSBYMEMBER_RO_WITH:EQe.default,geoRadiusByMemberRoWith:EQe.default,GEORADIUSBYMEMBER_RO:_Qe.default,geoRadiusByMemberRo:_Qe.default,GEORADIUSBYMEMBER_STORE:SQe.default,geoRadiusByMemberStore:SQe.default,GEORADIUSBYMEMBER_WITH:vQe.default,geoRadiusByMemberWith:vQe.default,GEORADIUSBYMEMBER:IQe.default,geoRadiusByMember:IQe.default,GEOSEARCH_WITH:CQe.default,geoSearchWith:CQe.default,GEOSEARCH:TQe.default,geoSearch:TQe.default,GEOSEARCHSTORE:wQe.default,geoSearchStore:wQe.default,GET:RQe.default,get:RQe.default,GETBIT:NQe.default,getBit:NQe.default,GETDEL:OQe.default,getDel:OQe.default,GETEX:PQe.default,getEx:PQe.default,GETRANGE:kQe.default,getRange:kQe.default,GETSET:DQe.default,getSet:DQe.default,HDEL:JQe.default,hDel:JQe.default,HELLO:XQe.default,hello:XQe.default,HEXISTS:ZQe.default,hExists:ZQe.default,HEXPIRE:eGe.default,hExpire:eGe.default,HEXPIREAT:tGe.default,hExpireAt:tGe.default,HEXPIRETIME:rGe.default,hExpireTime:rGe.default,HGET:nGe.default,hGet:nGe.default,HGETALL:sGe.default,hGetAll:sGe.default,HGETDEL:iGe.default,hGetDel:iGe.default,HGETEX:aGe.default,hGetEx:aGe.default,HINCRBY:oGe.default,hIncrBy:oGe.default,HINCRBYFLOAT:cGe.default,hIncrByFloat:cGe.default,HKEYS:uGe.default,hKeys:uGe.default,HLEN:lGe.default,hLen:lGe.default,HMGET:dGe.default,hmGet:dGe.default,HPERSIST:fGe.default,hPersist:fGe.default,HPEXPIRE:pGe.default,hpExpire:pGe.default,HPEXPIREAT:mGe.default,hpExpireAt:mGe.default,HPEXPIRETIME:hGe.default,hpExpireTime:hGe.default,HPTTL:gGe.default,hpTTL:gGe.default,HRANDFIELD_COUNT_WITHVALUES:AGe.default,hRandFieldCountWithValues:AGe.default,HRANDFIELD_COUNT:yGe.default,hRandFieldCount:yGe.default,HRANDFIELD:xGe.default,hRandField:xGe.default,HSCAN:bGe.default,hScan:bGe.default,HSCAN_NOVALUES:EGe.default,hScanNoValues:EGe.default,HSET:_Ge.default,hSet:_Ge.default,HSETEX:SGe.default,hSetEx:SGe.default,HSETNX:vGe.default,hSetNX:vGe.default,HSTRLEN:IGe.default,hStrLen:IGe.default,HTTL:CGe.default,hTTL:CGe.default,HVALS:TGe.default,hVals:TGe.default,HOTKEYS_GET:wGe.default,hotkeysGet:wGe.default,HOTKEYS_RESET:RGe.default,hotkeysReset:RGe.default,HOTKEYS_START:NGe.default,hotkeysStart:NGe.default,HOTKEYS_STOP:OGe.default,hotkeysStop:OGe.default,INCR:PGe.default,incr:PGe.default,INCRBY:kGe.default,incrBy:kGe.default,INCRBYFLOAT:DGe.default,incrByFloat:DGe.default,INFO:BGe.default,info:BGe.default,KEYS:LGe.default,keys:LGe.default,LASTSAVE:MGe.default,lastSave:MGe.default,LATENCY_DOCTOR:WGe.default,latencyDoctor:WGe.default,LATENCY_GRAPH:$Ge.default,latencyGraph:$Ge.default,LATENCY_HISTORY:FGe.default,latencyHistory:FGe.default,LATENCY_HISTOGRAM:yYe.default,latencyHistogram:yYe.default,LATENCY_LATEST:UGe.default,latencyLatest:UGe.default,LATENCY_RESET:qGe.default,latencyReset:qGe.default,LCS_IDX_WITHMATCHLEN:jGe.default,lcsIdxWithMatchLen:jGe.default,LCS_IDX:HGe.default,lcsIdx:HGe.default,LCS_LEN:QGe.default,lcsLen:QGe.default,LCS:GGe.default,lcs:GGe.default,LINDEX:KGe.default,lIndex:KGe.default,LINSERT:VGe.default,lInsert:VGe.default,LLEN:zGe.default,lLen:zGe.default,LMOVE:YGe.default,lMove:YGe.default,LMPOP:JGe.default,lmPop:JGe.default,LOLWUT:Nur.default,LPOP_COUNT:XGe.default,lPopCount:XGe.default,LPOP:ZGe.default,lPop:ZGe.default,LPOS_COUNT:eKe.default,lPosCount:eKe.default,LPOS:tKe.default,lPos:tKe.default,LPUSH:rKe.default,lPush:rKe.default,LPUSHX:nKe.default,lPushX:nKe.default,LRANGE:sKe.default,lRange:sKe.default,LREM:iKe.default,lRem:iKe.default,LSET:aKe.default,lSet:aKe.default,LTRIM:oKe.default,lTrim:oKe.default,MEMORY_DOCTOR:cKe.default,memoryDoctor:cKe.default,"MEMORY_MALLOC-STATS":uKe.default,memoryMallocStats:uKe.default,MEMORY_PURGE:lKe.default,memoryPurge:lKe.default,MEMORY_STATS:dKe.default,memoryStats:dKe.default,MEMORY_USAGE:fKe.default,memoryUsage:fKe.default,MGET:pKe.default,mGet:pKe.default,MIGRATE:mKe.default,migrate:mKe.default,MODULE_LIST:hKe.default,moduleList:hKe.default,MODULE_LOAD:gKe.default,moduleLoad:gKe.default,MODULE_UNLOAD:AKe.default,moduleUnload:AKe.default,MOVE:yKe.default,move:yKe.default,MSET:xKe.default,mSet:xKe.default,MSETEX:bKe.default,mSetEx:bKe.default,MSETNX:EKe.default,mSetNX:EKe.default,OBJECT_ENCODING:_Ke.default,objectEncoding:_Ke.default,OBJECT_FREQ:SKe.default,objectFreq:SKe.default,OBJECT_IDLETIME:vKe.default,objectIdleTime:vKe.default,OBJECT_REFCOUNT:IKe.default,objectRefCount:IKe.default,PERSIST:CKe.default,persist:CKe.default,PEXPIRE:TKe.default,pExpire:TKe.default,PEXPIREAT:wKe.default,pExpireAt:wKe.default,PEXPIRETIME:RKe.default,pExpireTime:RKe.default,PFADD:NKe.default,pfAdd:NKe.default,PFCOUNT:OKe.default,pfCount:OKe.default,PFMERGE:PKe.default,pfMerge:PKe.default,PING:kKe.default,ping:kKe.default,PSETEX:DKe.default,pSetEx:DKe.default,PTTL:BKe.default,pTTL:BKe.default,PUBLISH:LKe.default,publish:LKe.default,PUBSUB_CHANNELS:MKe.default,pubSubChannels:MKe.default,PUBSUB_NUMPAT:WKe.default,pubSubNumPat:WKe.default,PUBSUB_NUMSUB:$Ke.default,pubSubNumSub:$Ke.default,PUBSUB_SHARDNUMSUB:FKe.default,pubSubShardNumSub:FKe.default,PUBSUB_SHARDCHANNELS:UKe.default,pubSubShardChannels:UKe.default,RANDOMKEY:qKe.default,randomKey:qKe.default,READONLY:jKe.default,readonly:jKe.default,RENAME:HKe.default,rename:HKe.default,RENAMENX:QKe.default,renameNX:QKe.default,REPLICAOF:GKe.default,replicaOf:GKe.default,"RESTORE-ASKING":KKe.default,restoreAsking:KKe.default,RESTORE:VKe.default,restore:VKe.default,RPOP_COUNT:YKe.default,rPopCount:YKe.default,ROLE:zKe.default,role:zKe.default,RPOP:JKe.default,rPop:JKe.default,RPOPLPUSH:XKe.default,rPopLPush:XKe.default,RPUSH:ZKe.default,rPush:ZKe.default,RPUSHX:eVe.default,rPushX:eVe.default,SADD:tVe.default,sAdd:tVe.default,SCAN:rVe.default,scan:rVe.default,SCARD:nVe.default,sCard:nVe.default,SCRIPT_DEBUG:sVe.default,scriptDebug:sVe.default,SCRIPT_EXISTS:iVe.default,scriptExists:iVe.default,SCRIPT_FLUSH:aVe.default,scriptFlush:aVe.default,SCRIPT_KILL:oVe.default,scriptKill:oVe.default,SCRIPT_LOAD:cVe.default,scriptLoad:cVe.default,SDIFF:uVe.default,sDiff:uVe.default,SDIFFSTORE:lVe.default,sDiffStore:lVe.default,SET:dVe.default,set:dVe.default,SETBIT:fVe.default,setBit:fVe.default,SETEX:pVe.default,setEx:pVe.default,SETNX:mVe.default,setNX:mVe.default,SETRANGE:hVe.default,setRange:hVe.default,SINTER:gVe.default,sInter:gVe.default,SINTERCARD:AVe.default,sInterCard:AVe.default,SINTERSTORE:yVe.default,sInterStore:yVe.default,SISMEMBER:xVe.default,sIsMember:xVe.default,SMEMBERS:bVe.default,sMembers:bVe.default,SMISMEMBER:EVe.default,smIsMember:EVe.default,SMOVE:_Ve.default,sMove:_Ve.default,SORT_RO:SVe.default,sortRo:SVe.default,SORT_STORE:vVe.default,sortStore:vVe.default,SORT:IVe.default,sort:IVe.default,SPOP_COUNT:CVe.default,sPopCount:CVe.default,SPOP:TVe.default,sPop:TVe.default,SPUBLISH:wVe.default,sPublish:wVe.default,SRANDMEMBER_COUNT:RVe.default,sRandMemberCount:RVe.default,SRANDMEMBER:NVe.default,sRandMember:NVe.default,SREM:OVe.default,sRem:OVe.default,SSCAN:PVe.default,sScan:PVe.default,STRLEN:kVe.default,strLen:kVe.default,SUNION:DVe.default,sUnion:DVe.default,SUNIONSTORE:BVe.default,sUnionStore:BVe.default,SWAPDB:LVe.default,swapDb:LVe.default,TIME:MVe.default,time:MVe.default,TOUCH:WVe.default,touch:WVe.default,TTL:$Ve.default,ttl:$Ve.default,TYPE:FVe.default,type:FVe.default,UNLINK:UVe.default,unlink:UVe.default,WAIT:qVe.default,wait:qVe.default,XACK:jVe.default,xAck:jVe.default,XACKDEL:HVe.default,xAckDel:HVe.default,XADD_NOMKSTREAM:QVe.default,xAddNoMkStream:QVe.default,XADD:GVe.default,xAdd:GVe.default,XAUTOCLAIM_JUSTID:KVe.default,xAutoClaimJustId:KVe.default,XAUTOCLAIM:VVe.default,xAutoClaim:VVe.default,XCLAIM_JUSTID:zVe.default,xClaimJustId:zVe.default,XCLAIM:YVe.default,xClaim:YVe.default,XCFGSET:JVe.default,xCfgSet:JVe.default,XDEL:XVe.default,xDel:XVe.default,XDELEX:ZVe.default,xDelEx:ZVe.default,XGROUP_CREATE:eze.default,xGroupCreate:eze.default,XGROUP_CREATECONSUMER:tze.default,xGroupCreateConsumer:tze.default,XGROUP_DELCONSUMER:rze.default,xGroupDelConsumer:rze.default,XGROUP_DESTROY:nze.default,xGroupDestroy:nze.default,XGROUP_SETID:sze.default,xGroupSetId:sze.default,XINFO_CONSUMERS:ize.default,xInfoConsumers:ize.default,XINFO_GROUPS:aze.default,xInfoGroups:aze.default,XINFO_STREAM:oze.default,xInfoStream:oze.default,XLEN:cze.default,xLen:cze.default,XPENDING_RANGE:uze.default,xPendingRange:uze.default,XPENDING:lze.default,xPending:lze.default,XRANGE:dze.default,xRange:dze.default,XREAD:fze.default,xRead:fze.default,XREADGROUP:pze.default,xReadGroup:pze.default,XREVRANGE:mze.default,xRevRange:mze.default,XSETID:hze.default,xSetId:hze.default,XTRIM:gze.default,xTrim:gze.default,ZADD_INCR:Aze.default,zAddIncr:Aze.default,ZADD:yze.default,zAdd:yze.default,ZCARD:xze.default,zCard:xze.default,ZCOUNT:bze.default,zCount:bze.default,ZDIFF_WITHSCORES:Eze.default,zDiffWithScores:Eze.default,ZDIFF:_ze.default,zDiff:_ze.default,ZDIFFSTORE:Sze.default,zDiffStore:Sze.default,ZINCRBY:vze.default,zIncrBy:vze.default,ZINTER_WITHSCORES:Ize.default,zInterWithScores:Ize.default,ZINTER:Cze.default,zInter:Cze.default,ZINTERCARD:Tze.default,zInterCard:Tze.default,ZINTERSTORE:wze.default,zInterStore:wze.default,ZLEXCOUNT:Rze.default,zLexCount:Rze.default,ZMPOP:Nze.default,zmPop:Nze.default,ZMSCORE:Oze.default,zmScore:Oze.default,ZPOPMAX_COUNT:Pze.default,zPopMaxCount:Pze.default,ZPOPMAX:kze.default,zPopMax:kze.default,ZPOPMIN_COUNT:Dze.default,zPopMinCount:Dze.default,ZPOPMIN:Bze.default,zPopMin:Bze.default,ZRANDMEMBER_COUNT_WITHSCORES:Lze.default,zRandMemberCountWithScores:Lze.default,ZRANDMEMBER_COUNT:Mze.default,zRandMemberCount:Mze.default,ZRANDMEMBER:Wze.default,zRandMember:Wze.default,ZRANGE_WITHSCORES:$ze.default,zRangeWithScores:$ze.default,ZRANGE:Fze.default,zRange:Fze.default,ZRANGEBYLEX:Uze.default,zRangeByLex:Uze.default,ZRANGEBYSCORE_WITHSCORES:qze.default,zRangeByScoreWithScores:qze.default,ZRANGEBYSCORE:jze.default,zRangeByScore:jze.default,ZRANGESTORE:Hze.default,zRangeStore:Hze.default,ZRANK_WITHSCORE:Gze.default,zRankWithScore:Gze.default,ZRANK:Kze.default,zRank:Kze.default,ZREM:Vze.default,zRem:Vze.default,ZREMRANGEBYLEX:zze.default,zRemRangeByLex:zze.default,ZREMRANGEBYRANK:Yze.default,zRemRangeByRank:Yze.default,ZREMRANGEBYSCORE:Qze.default,zRemRangeByScore:Qze.default,ZREVRANK:Jze.default,zRevRank:Jze.default,ZSCAN:Xze.default,zScan:Xze.default,ZSCORE:Zze.default,zScore:Zze.default,ZUNION_WITHSCORES:eYe.default,zUnionWithScores:eYe.default,ZUNION:tYe.default,zUnion:tYe.default,ZUNIONSTORE:rYe.default,zUnionStore:rYe.default,VADD:nYe.default,vAdd:nYe.default,VCARD:sYe.default,vCard:sYe.default,VDIM:iYe.default,vDim:iYe.default,VEMB:aYe.default,vEmb:aYe.default,VEMB_RAW:oYe.default,vEmbRaw:oYe.default,VGETATTR:cYe.default,vGetAttr:cYe.default,VINFO:uYe.default,vInfo:uYe.default,VLINKS:lYe.default,vLinks:lYe.default,VLINKS_WITHSCORES:dYe.default,vLinksWithScores:dYe.default,VRANDMEMBER:fYe.default,vRandMember:fYe.default,VRANGE:pYe.default,vRange:pYe.default,VREM:mYe.default,vRem:mYe.default,VSETATTR:hYe.default,vSetAttr:hYe.default,VSIM:gYe.default,vSim:gYe.default,VSIM_WITHSCORES:AYe.default,vSimWithScores:AYe.default};var Our=$(yu()),{HOTKEYS_GET:LJr,hotkeysGet:MJr,HOTKEYS_RESET:WJr,hotkeysReset:$Jr,HOTKEYS_START:FJr,hotkeysStart:UJr,HOTKEYS_STOP:qJr,hotkeysStop:jJr,...Pur}=Our.default;Qn.NON_STICKY_COMMANDS=Pur});var qC=E(ar=>{"use strict";var xYe=ar&&ar.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},bYe;Object.defineProperty(ar,"__esModule",{value:!0});ar.emitDiagnostics=ar.dbgMaintenance=ar.MAINTENANCE_EVENTS=ar.SMIGRATED_EVENT=void 0;var EYe=require("net"),kur=require("dns/promises"),Eb=xYe(require("node:assert")),Dur=require("node:timers/promises"),Bur=xYe(require("node:diagnostics_channel"));ar.SMIGRATED_EVENT="__SMIGRATED";ar.MAINTENANCE_EVENTS={PAUSE_WRITING:"pause-writing",RESUME_WRITING:"resume-writing",TIMEOUTS_UPDATE:"timeouts-update"};var q0={MOVING:"MOVING",MIGRATING:"MIGRATING",MIGRATED:"MIGRATED",FAILING_OVER:"FAILING_OVER",FAILED_OVER:"FAILED_OVER",SMIGRATING:"SMIGRATING",SMIGRATED:"SMIGRATED"},Lur=(...t)=>{if(process.env.REDIS_DEBUG_MAINTENANCE)return console.log(new Date().toISOString().slice(11,23),"[MNT]",...t)};ar.dbgMaintenance=Lur;var Mur=t=>{if(!process.env.REDIS_EMIT_DIAGNOSTICS)return;Bur.default.channel("redis.maintenance").publish(t)};ar.emitDiagnostics=Mur;var uL=class{#e;#t;#r=0;#n;static setupDefaultMaintOptions(e){e.maintNotifications===void 0&&(e.maintNotifications=e?.RESP===3?"auto":"disabled"),e.maintEndpointType===void 0&&(e.maintEndpointType="auto"),e.maintRelaxedSocketTimeout===void 0&&(e.maintRelaxedSocketTimeout=1e4),e.maintRelaxedCommandTimeout===void 0&&(e.maintRelaxedCommandTimeout=1e4)}static async getHandshakeCommand(e){if(e.maintNotifications==="disabled")return;let r=e.url?new URL(e.url).hostname:e.socket?.host;if(!r)return;let n=e.socket?.tls??!1;return{cmd:["CLIENT","MAINT_NOTIFICATIONS","ON","moving-endpoint-type",await $ur(n,r,e)],errorHandler:i=>{if((0,ar.dbgMaintenance)("handshake failed:",i),e.maintNotifications==="enabled")throw i}}}constructor(e,r,n){this.#e=e,this.#t=n,this.#n=r,this.#e.addPushHandler(this.#a)}#a=e=>{if((0,ar.dbgMaintenance)("ONPUSH:",e.map(String)),!Array.isArray(e)||!Object.values(q0).includes(String(e[0])))return!1;let r=String(e[0]);switch((0,ar.emitDiagnostics)({type:r,timestamp:Date.now(),data:{push:e.map(String)}}),r){case q0.MOVING:{let n=e[2],s=e[3]?String(e[3]):null;return(0,ar.dbgMaintenance)("Received MOVING:",n,s),this.#o(n,s),!0}case q0.MIGRATING:case q0.SMIGRATING:case q0.FAILING_OVER:return(0,ar.dbgMaintenance)("Received MIGRATING|SMIGRATING|FAILING_OVER"),this.#s(),!0;case q0.MIGRATED:case q0.FAILED_OVER:return(0,ar.dbgMaintenance)("Received MIGRATED|FAILED_OVER"),this.#i(),!0;case q0.SMIGRATED:return(0,ar.dbgMaintenance)("Received SMIGRATED"),this.#c(e),this.#i(),!0}return!1};#o=async(e,r)=>{this.#s();let n,s;if(r===null){(0,Eb.default)(this.#t.maintEndpointType==="none");let{host:u,port:l}=this.#l();n=u,s=l;let d=e*1e3/2;(0,ar.dbgMaintenance)(`Wait for ${d}ms`),await(0,Dur.setTimeout)(d)}else{let u=r.split(":");n=u[0],s=Number(u[1])}(0,ar.dbgMaintenance)("Pausing writing of new commands to old socket"),this.#n._pause(),(0,ar.dbgMaintenance)("Creating new tmp client");let i=performance.now();if(this.#t.url){let u=new URL(this.#t.url);u.hostname=n,u.port=String(s),this.#t.url=u.toString()}else this.#t.socket={...this.#t.socket,host:n,port:s};let a=this.#n.duplicate();a.on("error",u=>{(0,ar.dbgMaintenance)("[ERR]",u)}),(0,ar.dbgMaintenance)(`Tmp client created in ${(performance.now()-i).toFixed(2)}ms`),(0,ar.dbgMaintenance)(`Set timeout for tmp client to ${this.#t.maintRelaxedSocketTimeout}`),a._maintenanceUpdate({relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout}),(0,ar.dbgMaintenance)(`Connecting tmp client: ${n}:${s}`),i=performance.now(),await a.connect(),(0,ar.dbgMaintenance)(`Connected to tmp client in ${(performance.now()-i).toFixed(2)}ms`),(0,ar.dbgMaintenance)("Wait for all in-flight commands to complete"),await this.#e.waitForInflightCommandsToComplete(),(0,ar.dbgMaintenance)("In-flight commands completed"),(0,ar.dbgMaintenance)("Swap client sockets...");let o=this.#n._ejectSocket(),c=a._ejectSocket();this.#n._insertSocket(c),a._insertSocket(o),a.destroy(),(0,ar.dbgMaintenance)("Swap client sockets done."),(0,ar.dbgMaintenance)("Resume writing"),this.#n._unpause(),this.#i()};#s=()=>{if(this.#r++,this.#r>1){(0,ar.dbgMaintenance)("Timeout relaxation already done");return}let e={relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout};this.#n._maintenanceUpdate(e)};#i=()=>{if(this.#r=Math.max(this.#r-1,0),this.#r>0){(0,ar.dbgMaintenance)("Not ready to unrelax timeouts yet");return}let e={relaxedCommandTimeout:void 0,relaxedSocketTimeout:void 0};this.#n._maintenanceUpdate(e)};#c=e=>{let r=bYe.parseSMigratedPush(e);(0,ar.dbgMaintenance)("emit smigratedEvent",r),this.#n._handleSmigrated(r)};static parseSMigratedPush(e){let r=new Map;for(let[s,i,a]of e[2]){let o=String(s),[c,u]=String(i).split(":"),l=String(a).split(",").map(p=>{let m=p.indexOf("-");return m===-1?Number(p):[Number(p.substring(0,m)),Number(p.substring(m+1))]}),d=r.get(o)??[],f=d.find(p=>p.addr.host===c&&p.addr.port===Number(u));f?f.slots=f.slots.concat(l):d.push({addr:{host:c,port:Number(u)},slots:l}),r.set(o,d)}let n=[];for(let[s,i]of r.entries()){let[a,o]=s.split(":");n.push({source:{host:a,port:Number(o)},destinations:i})}return{seqId:e[1],entries:n}}#l(){(0,Eb.default)(this.#t.socket!==void 0),(0,Eb.default)("host"in this.#t.socket),(0,Eb.default)(typeof this.#t.socket.host=="string");let e=this.#t.socket.host;(0,Eb.default)(typeof this.#t.socket.port=="number");let r=this.#t.socket.port;return{host:e,port:r}}};bYe=uL;ar.default=uL;function Wur(t){let e=(0,EYe.isIP)(t);if(e===4){let r=t.split(".").map(Number);return r[0]===10||r[0]===172&&r[1]>=16&&r[1]<=31||r[0]===192&&r[1]===168}return e===6?t.startsWith("fc")||t.startsWith("fd")||t==="::1"||t.startsWith("fe80"):!1}async function $ur(t,e,r){if((0,Eb.default)(r.maintEndpointType!==void 0),r.maintEndpointType!=="auto")return(0,ar.dbgMaintenance)(`Determine endpoint type: ${r.maintEndpointType}`),r.maintEndpointType;let n=(0,EYe.isIP)(e)?e:(await(0,kur.lookup)(e,{family:0})).address,s=Wur(n),i;return t?i=s?"internal-fqdn":"external-fqdn":i=s?"internal-ip":"external-ip",(0,ar.dbgMaintenance)(`Determine endpoint type: ${i}`),i}});var TYe=E(jC=>{"use strict";var CYe=jC&&jC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jC,"__esModule",{value:!0});var _Ye=require("node:events"),SYe=CYe(require("node:net")),Fur=CYe(require("node:tls")),Dl=Ol(),vYe=require("node:timers/promises"),IYe=qC(),tre=class extends _Ye.EventEmitter{#e;#t;#r;#n;#a;#o;#s;#i=!1;get isOpen(){return this.#i}#c=!1;get isReady(){return this.#c}#l=!1;#h=0;get socketEpoch(){return this.#h}constructor(e,r){super(),this.#e=e,this.#t=r?.connectTimeout??5e3,this.#r=this.#p(r),this.#n=this.#d(r),this.#a=r?.socketTimeout}#p(e){let r=e?.reconnectStrategy;return r===!1||typeof r=="number"?()=>r:r?(n,s)=>{try{let i=r(n,s);if(i!==!1&&!(i instanceof Error)&&typeof i!="number")throw new TypeError(`Reconnect strategy should return \`false | Error | number\`, got ${i} instead`);return i}catch(i){return this.emit("error",i),this.defaultReconnectStrategy(n,i)}}:this.defaultReconnectStrategy}#d(e){if(e?.tls===!0){let n={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return Fur.default.connect(n)},event:"secureConnect"}}if(e&&"path"in e){let n={...e,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return SYe.default.createConnection(n)},event:"connect"}}let r={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return SYe.default.createConnection(r)},event:"connect"}}#f(e,r){let n=this.#r(e,r);return n===!1?(this.#i=!1,this.emit("error",r),r):n instanceof Error?(this.#i=!1,this.emit("error",r),new Dl.ReconnectStrategyError(n,r)):n}async connect(){if(this.#i)throw new Error("Socket already opened");return this.#i=!0,this.#m()}async#m(){let e=0;do try{this.#s=await this.#y(),this.emit("connect");try{if(await this.#e(),!this.#s||this.#s.destroyed||!this.#s.readable||!this.#s.writable){let r=this.#f(e++,new Dl.SocketClosedUnexpectedlyError);if(typeof r!="number")throw r;await(0,vYe.setTimeout)(r),this.emit("reconnecting");continue}}catch(r){throw this.#s.destroy(),this.#s=void 0,r}this.#c=!0,this.#h++,this.emit("ready")}catch(r){let n=this.#f(e++,r);if(typeof n!="number")throw n;this.emit("error",r),await(0,vYe.setTimeout)(n),this.emit("reconnecting")}while(this.#i&&!this.#c)}setMaintenanceTimeout(e){if((0,IYe.dbgMaintenance)(`Set socket timeout to ${e}`),this.#o===e){(0,IYe.dbgMaintenance)(`Socket already set maintenanceCommandTimeout to ${e}, skipping`);return}this.#o=e,e!==void 0?this.#s?.setTimeout(e):this.#s?.setTimeout(this.#a??0)}async#y(){let e=this.#n.create(),r;return this.#t!==void 0&&(r=()=>e.destroy(new Dl.ConnectionTimeoutError),e.once("timeout",r),e.setTimeout(this.#t)),this.#l&&e.unref(),await(0,_Ye.once)(e,this.#n.event),r&&e.removeListener("timeout",r),this.#a&&(e.once("timeout",()=>{let n=this.#o?new Dl.SocketTimeoutDuringMaintenanceError(this.#o):new Dl.SocketTimeoutError(this.#a);e.destroy(n)}),e.setTimeout(this.#a)),e.once("error",n=>this.#g(n)).once("close",n=>{n||!this.#i||this.#s!==e||this.#g(new Dl.SocketClosedUnexpectedlyError)}).on("drain",()=>this.emit("drain")).on("data",n=>this.emit("data",n)),e}#g(e){let r=this.#c;this.#c=!1,this.emit("error",e),!(!r||!this.#i||typeof this.#f(0,e)!="number")&&(this.emit("reconnecting"),this.#m().catch(()=>{}))}write(e){if(this.#s){this.#s.cork();for(let r of e){for(let n of r)this.#s.write(n);if(this.#s.writableNeedDrain)break}this.#s.uncork()}}async quit(e){if(!this.#i)throw new Dl.ClientClosedError;this.#i=!1;let r=await e();return this.destroySocket(),r}close(){if(!this.#i)throw new Dl.ClientClosedError;this.#i=!1}destroy(){if(!this.#i)throw new Dl.ClientClosedError;this.#i=!1,this.destroySocket()}destroySocket(){this.#c=!1,this.#s&&(this.#s.destroy(),this.#s=void 0),this.emit("end")}ref(){this.#l=!1,this.#s?.ref()}unref(){this.#l=!0,this.#s?.unref()}defaultReconnectStrategy(e,r){if(r instanceof Dl.SocketTimeoutError)return!1;let n=Math.floor(Math.random()*200);return Math.min(Math.pow(2,e)*50,2e3)+n}};jC.default=tre});var nre=E(lL=>{"use strict";Object.defineProperty(lL,"__esModule",{value:!0});lL.Token=void 0;var rre=class{value;expiresAtMs;receivedAtMs;constructor(e,r,n){this.value=e,this.expiresAtMs=r,this.receivedAtMs=n}getTtlMs(e){return this.expiresAtMs<e?0:this.expiresAtMs-e}};lL.Token=rre});var wYe=E(_b=>{"use strict";Object.defineProperty(_b,"__esModule",{value:!0});_b.TokenManager=_b.IDPError=void 0;var Uur=nre(),dL=class extends Error{message;isRetryable;constructor(e,r){super(e),this.message=e,this.isRetryable=r,this.name="IDPError"}};_b.IDPError=dL;var sre=class{identityProvider;config;currentToken=null;refreshTimeout=null;listener=null;retryAttempt=0;constructor(e,r){if(this.identityProvider=e,this.config=r,this.config.expirationRefreshRatio>1)throw new Error("expirationRefreshRatio must be less than or equal to 1");if(this.config.expirationRefreshRatio<0)throw new Error("expirationRefreshRatio must be greater or equal to 0")}start(e,r=0){return this.listener&&this.stop(),this.listener=e,this.retryAttempt=0,this.scheduleNextRefresh(r),{dispose:()=>this.stop()}}calculateRetryDelay(){if(!this.config.retry)return 0;let{initialDelayMs:e,maxDelayMs:r,backoffMultiplier:n,jitterPercentage:s}=this.config.retry,i=e*Math.pow(n,this.retryAttempt-1);if(i=Math.min(i,r),s){let o=i*(s/100),c=Math.random()*o-o/2;i+=c}return Math.max(0,Math.floor(i))}shouldRetry(e){if(!this.config.retry)return!1;let{maxAttempts:r,isRetryable:n}=this.config.retry;return this.retryAttempt>=r?!1:n?n(e,this.retryAttempt):!1}isRunning(){return this.listener!==null}async refresh(){if(!this.listener)throw new Error("TokenManager is not running, but refresh was called");try{await this.identityProvider.requestToken().then(this.handleNewToken),this.retryAttempt=0}catch(e){if(this.shouldRetry(e)){this.retryAttempt++;let r=this.calculateRetryDelay();this.notifyError(`Token refresh failed (attempt ${this.retryAttempt}), retrying in ${r}ms: ${e}`,!0),this.scheduleNextRefresh(r)}else this.notifyError(e,!1),this.stop()}}handleNewToken=async({token:e,ttlMs:r})=>{if(!this.listener)throw new Error("TokenManager is not running, but a new token was received");let n=this.wrapAndSetCurrentToken(e,r);this.listener.onNext(n),this.scheduleNextRefresh(this.calculateRefreshTime(n))};wrapAndSetCurrentToken(e,r){let n=Date.now(),s=new Uur.Token(e,n+r,n);return this.currentToken=s,s}scheduleNextRefresh(e){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),e===0?this.refresh():this.refreshTimeout=setTimeout(()=>this.refresh(),e)}calculateRefreshTime(e,r=Date.now()){let n=e.getTtlMs(r);return Math.floor(n*this.config.expirationRefreshRatio)}stop(){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),this.listener=null,this.currentToken=null,this.retryAttempt=0}getCurrentToken(){return this.currentToken}notifyError(e,r){let n=e instanceof Error?e.message:String(e);if(!this.listener)throw new Error(`TokenManager is not running but received an error: ${n}`);this.listener.onError(new dL(n,r))}};_b.TokenManager=sre});var RYe=E(Sb=>{"use strict";Object.defineProperty(Sb,"__esModule",{value:!0});Sb.UnableToObtainNewCredentialsError=Sb.CredentialsError=void 0;var ire=class extends Error{constructor(e){super(`Re-authentication with latest credentials failed: ${e}`),this.name="CredentialsError"}};Sb.CredentialsError=ire;var are=class extends Error{constructor(e){super(`Unable to obtain new credentials : ${e}`),this.name="UnableToObtainNewCredentialsError"}};Sb.UnableToObtainNewCredentialsError=are});var PYe=E(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});Tc.Token=Tc.CredentialsError=Tc.UnableToObtainNewCredentialsError=Tc.IDPError=Tc.TokenManager=void 0;var NYe=wYe();Object.defineProperty(Tc,"TokenManager",{enumerable:!0,get:function(){return NYe.TokenManager}});Object.defineProperty(Tc,"IDPError",{enumerable:!0,get:function(){return NYe.IDPError}});var OYe=RYe();Object.defineProperty(Tc,"UnableToObtainNewCredentialsError",{enumerable:!0,get:function(){return OYe.UnableToObtainNewCredentialsError}});Object.defineProperty(Tc,"CredentialsError",{enumerable:!0,get:function(){return OYe.CredentialsError}});var qur=nre();Object.defineProperty(Tc,"Token",{enumerable:!0,get:function(){return qur.Token}})});var pL=E(Bl=>{"use strict";var jur=Bl&&Bl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Bl,"__esModule",{value:!0});Bl.EmptyAwareSinglyLinkedList=Bl.SinglyLinkedList=Bl.DoublyLinkedList=void 0;var Hur=jur(require("events")),ore=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){return++this.#e,this.#r===void 0?this.#t=this.#r={previous:this.#t,next:void 0,value:e}:this.#r=this.#r.next={previous:this.#r,next:void 0,value:e}}unshift(e){return++this.#e,this.#t===void 0?this.#t=this.#r={previous:void 0,next:void 0,value:e}:this.#t=this.#t.previous={previous:void 0,next:this.#t,value:e}}add(e,r=!1){return r?this.unshift(e):this.push(e)}shift(){if(this.#t===void 0)return;--this.#e;let e=this.#t;return e.next?(e.next.previous=void 0,this.#t=e.next,e.next=void 0):this.#t=this.#r=void 0,e.value}remove(e){this.#e!==0&&(--this.#e,this.#r===e&&(this.#r=e.previous),this.#t===e?this.#t=e.next:(e.previous&&(e.previous.next=e.next),e.next&&(e.next.previous=e.previous)),e.previous=void 0,e.next=void 0)}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}*nodes(){let e=this.#t;for(;e;){let r=e.next;yield e,e=r}}};Bl.DoublyLinkedList=ore;var fL=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){++this.#e;let r={value:e,next:void 0,removed:!1};return this.#t===void 0?this.#t=this.#r=r:this.#r.next=this.#r=r}remove(e,r){if(e.removed)throw new Error("node already removed");--this.#e,this.#t===e?this.#r===e?this.#t=this.#r=void 0:this.#t=e.next:this.#r===e?(this.#r=r,r.next=void 0):r.next=e.next,e.removed=!0}shift(){if(this.#t===void 0)return;let e=this.#t;return--this.#e===0?this.#t=this.#r=void 0:this.#t=e.next,e.removed=!0,e.value}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}};Bl.SinglyLinkedList=fL;var cre=class extends fL{events=new Hur.default;reset(){let e=this.length;super.reset(),e!==this.length&&this.length===0&&this.events.emit("empty")}shift(){let e=this.length,r=super.shift();return e!==this.length&&this.length===0&&this.events.emit("empty"),r}remove(e,r){let n=this.length;super.remove(e,r),n!==this.length&&this.length===0&&this.events.emit("empty")}};Bl.EmptyAwareSinglyLinkedList=cre});var kYe=E(ure=>{"use strict";Object.defineProperty(ure,"__esModule",{value:!0});var HC=`\r
`;function Qur(t){let e=[],r="*"+t.length+HC;for(let n=0;n<t.length;n++){let s=t[n];if(typeof s=="string")r+="$"+Buffer.byteLength(s)+HC+s+HC;else if(s instanceof Buffer)e.push(r+"$"+s.length.toString()+HC,s),r=HC;else throw new TypeError(`"arguments[${n}]" must be of type "string | Buffer", got ${typeof s} instead.`)}return e.push(r),e}ure.default=Qur});var dre=E((ZJr,lre)=>{var DYe=[0,4129,8258,12387,16516,20645,24774,28903,33032,37161,41290,45419,49548,53677,57806,61935,4657,528,12915,8786,21173,17044,29431,25302,37689,33560,45947,41818,54205,50076,62463,58334,9314,13379,1056,5121,25830,29895,17572,21637,42346,46411,34088,38153,58862,62927,50604,54669,13907,9842,5649,1584,30423,26358,22165,18100,46939,42874,38681,34616,63455,59390,55197,51132,18628,22757,26758,30887,2112,6241,10242,14371,51660,55789,59790,63919,35144,39273,43274,47403,23285,19156,31415,27286,6769,2640,14899,10770,56317,52188,64447,60318,39801,35672,47931,43802,27814,31879,19684,23749,11298,15363,3168,7233,60846,64911,52716,56781,44330,48395,36200,40265,32407,28342,24277,20212,15891,11826,7761,3696,65439,61374,57309,53244,48923,44858,40793,36728,37256,33193,45514,41451,53516,49453,61774,57711,4224,161,12482,8419,20484,16421,28742,24679,33721,37784,41979,46042,49981,54044,58239,62302,689,4752,8947,13010,16949,21012,25207,29270,46570,42443,38312,34185,62830,58703,54572,50445,13538,9411,5280,1153,29798,25671,21540,17413,42971,47098,34713,38840,59231,63358,50973,55100,9939,14066,1681,5808,26199,30326,17941,22068,55628,51565,63758,59695,39368,35305,47498,43435,22596,18533,30726,26663,6336,2273,14466,10403,52093,56156,60223,64286,35833,39896,43963,48026,19061,23124,27191,31254,2801,6864,10931,14994,64814,60687,56684,52557,48554,44427,40424,36297,31782,27655,23652,19525,15522,11395,7392,3265,61215,65342,53085,57212,44955,49082,36825,40952,28183,32310,20053,24180,11923,16050,3793,7920],Gur=function(e){for(var r,n=0,s=0,i=[],a=e.length;n<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},BYe=lre.exports=function(e){for(var r,n=0,s=-1,i=0,a=0,o=typeof e=="string"?Gur(e):e,c=o.length;n<c;){if(r=o[n++],s===-1)r===123&&(s=n);else if(r!==125)a=DYe[(r^a>>8)&255]^a<<8;else if(n-1!==s)return a&16383;i=DYe[(r^i>>8)&255]^i<<8}return i&16383};lre.exports.generateMulti=function(e){for(var r=1,n=e.length,s=BYe(e[0]);r<n;)if(BYe(e[r++])!==s)return-1;return s}});var QC=E(kt=>{"use strict";var Kur=kt&&kt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kt,"__esModule",{value:!0});kt.PubSub=kt.PUBSUB_TYPE=void 0;var Vur=Kur(dre());kt.PUBSUB_TYPE={CHANNELS:"CHANNELS",PATTERNS:"PATTERNS",SHARDED:"SHARDED"};var bi={[kt.PUBSUB_TYPE.CHANNELS]:{subscribe:Buffer.from("subscribe"),unsubscribe:Buffer.from("unsubscribe"),message:Buffer.from("message")},[kt.PUBSUB_TYPE.PATTERNS]:{subscribe:Buffer.from("psubscribe"),unsubscribe:Buffer.from("punsubscribe"),message:Buffer.from("pmessage")},[kt.PUBSUB_TYPE.SHARDED]:{subscribe:Buffer.from("ssubscribe"),unsubscribe:Buffer.from("sunsubscribe"),message:Buffer.from("smessage")}},fre=class t{static isStatusReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return bi[kt.PUBSUB_TYPE.CHANNELS].subscribe.equals(r)||bi[kt.PUBSUB_TYPE.CHANNELS].unsubscribe.equals(r)||bi[kt.PUBSUB_TYPE.PATTERNS].subscribe.equals(r)||bi[kt.PUBSUB_TYPE.PATTERNS].unsubscribe.equals(r)||bi[kt.PUBSUB_TYPE.SHARDED].subscribe.equals(r)}static isShardedUnsubscribe(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return bi[kt.PUBSUB_TYPE.SHARDED].unsubscribe.equals(r)}static#e(e){return Array.isArray(e)?e:[e]}static#t(e,r){return r?e.buffers:e.strings}#r=0;#n=!1;get isActive(){return this.#n}listeners={[kt.PUBSUB_TYPE.CHANNELS]:new Map,[kt.PUBSUB_TYPE.PATTERNS]:new Map,[kt.PUBSUB_TYPE.SHARDED]:new Map};subscribe(e,r,n,s){let i=[bi[e].subscribe],a=t.#e(r);for(let o of a){let c=this.listeners[e].get(o);(!c||c.unsubscribing)&&i.push(o)}if(i.length===1){for(let o of a)t.#t(this.listeners[e].get(o),s).add(n);return}return this.#n=!0,this.#r++,{args:i,channelsCounter:i.length-1,resolve:()=>{this.#r--;for(let o of a){let c=this.listeners[e].get(o);c||(c={unsubscribing:!1,buffers:new Set,strings:new Set},this.listeners[e].set(o,c)),t.#t(c,s).add(n)}},reject:()=>{this.#r--,this.#s()}}}extendChannelListeners(e,r,n){if(this.#a(e,r,n))return this.#n=!0,this.#r++,{args:[bi[e].subscribe,r],channelsCounter:1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}#a(e,r,n){let s=this.listeners[e].get(r);if(!s)return this.listeners[e].set(r,n),!0;for(let i of n.buffers)s.buffers.add(i);for(let i of n.strings)s.strings.add(i);return!1}extendTypeListeners(e,r){let n=[bi[e].subscribe];for(let[s,i]of r)this.#a(e,s,i)&&n.push(s);if(n.length!==1)return this.#n=!0,this.#r++,{args:n,channelsCounter:n.length-1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}unsubscribe(e,r,n,s){let i=this.listeners[e];if(!r)return this.#o([bi[e].unsubscribe],NaN,()=>i.clear());let a=t.#e(r);if(!n)return this.#o([bi[e].unsubscribe,...a],a.length,()=>{for(let c of a)i.delete(c)});let o=[bi[e].unsubscribe];for(let c of a){let u=i.get(c);if(u){let l,d;if(s?(l=u.buffers,d=u.strings):(l=u.strings,d=u.buffers),(l.has(n)?l.size-1:l.size)!==0||d.size!==0)continue;u.unsubscribing=!0}o.push(c)}if(o.length===1){for(let c of a)t.#t(i.get(c),s).delete(n);return}return this.#o(o,o.length-1,()=>{for(let c of a){let u=i.get(c);u&&((s?u.buffers:u.strings).delete(n),u.buffers.size===0&&u.strings.size===0&&i.delete(c))}})}#o(e,r,n){return{args:e,channelsCounter:r,resolve:()=>{n(),this.#s()},reject:void 0}}#s(){this.#n=this.listeners[kt.PUBSUB_TYPE.CHANNELS].size!==0||this.listeners[kt.PUBSUB_TYPE.PATTERNS].size!==0||this.listeners[kt.PUBSUB_TYPE.SHARDED].size!==0||this.#r!==0}reset(){this.#n=!1,this.#r=0}resubscribe(){let e=[];for(let[r,n]of Object.entries(this.listeners))n.size&&(this.#n=!0,r===kt.PUBSUB_TYPE.SHARDED?this.#c(e,n):this.#i(e,r,n));return e}#i(e,r,n){this.#r++;let s=()=>this.#r--;e.push({args:[bi[r].subscribe,...n.keys()],channelsCounter:n.size,resolve:s,reject:s})}#c(e,r){let n=()=>this.#r--;for(let s of r.keys())this.#r++,e.push({args:[bi[kt.PUBSUB_TYPE.SHARDED].subscribe,s],channelsCounter:1,resolve:n,reject:n})}handleMessageReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return bi[kt.PUBSUB_TYPE.CHANNELS].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.CHANNELS,e[2],e[1]),!0):bi[kt.PUBSUB_TYPE.PATTERNS].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.PATTERNS,e[3],e[2],e[1]),!0):bi[kt.PUBSUB_TYPE.SHARDED].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.SHARDED,e[2],e[1]),!0):!1}removeShardedListeners(e){let r=this.listeners[kt.PUBSUB_TYPE.SHARDED].get(e);return this.listeners[kt.PUBSUB_TYPE.SHARDED].delete(e),this.#s(),r}removeAllListeners(){let e={[kt.PUBSUB_TYPE.CHANNELS]:this.listeners[kt.PUBSUB_TYPE.CHANNELS],[kt.PUBSUB_TYPE.PATTERNS]:this.listeners[kt.PUBSUB_TYPE.PATTERNS],[kt.PUBSUB_TYPE.SHARDED]:this.listeners[kt.PUBSUB_TYPE.SHARDED]};return this.#s(),this.listeners[kt.PUBSUB_TYPE.CHANNELS]=new Map,this.listeners[kt.PUBSUB_TYPE.PATTERNS]=new Map,this.listeners[kt.PUBSUB_TYPE.SHARDED]=new Map,e}removeShardedPubSubListenersForSlots(e){let r=new Map;for(let[n,s]of this.listeners[kt.PUBSUB_TYPE.SHARDED])e.has((0,Vur.default)(n))&&(r.set(n,s),this.listeners[kt.PUBSUB_TYPE.SHARDED].delete(n));return this.#s(),{[kt.PUBSUB_TYPE.SHARDED]:r}}#l(e,r,n,s){let i=(s??n).toString(),a=this.listeners[e].get(i);if(!a)return;for(let u of a.buffers)u(r,n);if(!a.strings.size)return;let o=s?n.toString():i,c=o==="__redis__:invalidate"?r===null?null:r.map(u=>u.toString()):r.toString();for(let u of a.strings)u(c,o)}};kt.PubSub=fre});var MYe=E(KC=>{"use strict";var zur=KC&&KC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(KC,"__esModule",{value:!0});var LYe=pL(),Yur=zur(kYe()),GC=eL(),pre=QC(),vb=Ol(),Ib=qC(),Jur=Buffer.from("pong"),Xur=Buffer.from("RESET"),Zur={...GC.PUSH_TYPE_MAPPING,[GC.RESP_TYPES.SIMPLE_STRING]:Buffer},mre=class t{#e;#t;#r=new LYe.DoublyLinkedList;#n=new LYe.EmptyAwareSinglyLinkedList;#a;#o;decoder;#s=new pre.PubSub;#i=[this.#p.bind(this)];#c;setMaintenanceCommandTimeout(e){if(this.#c===e){(0,Ib.dbgMaintenance)(`Queue already set maintenanceCommandTimeout to ${e}, skipping`);return}if((0,Ib.dbgMaintenance)(`Setting maintenance command timeout to ${e}`),this.#c=e,this.#c===void 0){(0,Ib.dbgMaintenance)("Queue will keep maintenanceCommandTimeout for exisitng commands, just to be on the safe side. New commands will receive normal timeouts");return}let r=0,n=this.#r.length;for(let s of this.#r.nodes()){let i=s.value;t.#I(i),r++;let a=this.#c,o=AbortSignal.timeout(a);i.timeout={signal:o,listener:()=>{this.#r.remove(s),i.reject(new vb.CommandTimeoutDuringMaintenanceError(a))},originalTimeout:i.timeout?.originalTimeout},o.addEventListener("abort",i.timeout.listener,{once:!0})}(0,Ib.dbgMaintenance)(`Total of ${r} of ${n} timeouts reset to ${e}`)}get isPubSubActive(){return this.#s.isActive}constructor(e,r,n){this.#e=e,this.#t=r,this.#a=n,this.decoder=this.#f()}#l(e){this.#n.shift().resolve(e)}#h(e){this.#n.shift().reject(e)}#p(e){if(this.#s.handleMessageReply(e))return!0;let r=pre.PubSub.isShardedUnsubscribe(e);if(r&&!this.#n.length){let n=e[1].toString();return this.#a(n,this.#s.removeShardedListeners(n)),!0}else if(r||pre.PubSub.isStatusReply(e)){let n=this.#n.head.value;return(Number.isNaN(n.channelsCounter)&&e[2]===0||--n.channelsCounter===0)&&this.#n.shift().resolve(),!0}return!1}#d(){return this.#n.head.value.typeMapping??{}}#f(){return new GC.Decoder({onReply:e=>this.#l(e),onErrorReply:e=>this.#h(e),onPush:e=>{for(let r of this.#i)if(r(e))return},getTypeMapping:()=>this.#d()})}addPushHandler(e){this.#i.push(e)}async waitForInflightCommandsToComplete(e){if(this.#n.length!==0)return new Promise(r=>{let n=()=>{s&&clearTimeout(s),r()},s,i=e?.timeoutMs;i!==void 0&&i>0&&(s=setTimeout(()=>{this.#n.events.off("empty",n);let a=this.#n.length;(0,Ib.dbgMaintenance)(`waitForInflightCommandsToComplete timed out after ${i}ms with ${a} commands still waiting`),e?.flushOnTimeout&&a>0&&((0,Ib.dbgMaintenance)(`Flushing ${a} commands that timed out waiting for reply`),this.#S(new vb.TimeoutError)),r()},i)),this.#n.events.once("empty",n)})}addCommand(e,r){return this.#t&&this.#r.length+this.#n.length>=this.#t?Promise.reject(new Error("The queue is full")):r?.abortSignal?.aborted?Promise.reject(new vb.AbortError):new Promise((n,s)=>{let i,a={args:e,chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r?.typeMapping};a.slotNumber=r?.slotNumber;let o=this.#c??r?.timeout,c=this.#c!==void 0;if(o){let l=AbortSignal.timeout(o);a.timeout={signal:l,listener:()=>{this.#r.remove(i),a.reject(c?new vb.CommandTimeoutDuringMaintenanceError(o):new vb.TimeoutError)},originalTimeout:r?.timeout},l.addEventListener("abort",a.timeout.listener,{once:!0})}let u=r?.abortSignal;u&&(a.abort={signal:u,listener:()=>{this.#r.remove(i),a.reject(new vb.AbortError)}},u.addEventListener("abort",a.abort.listener,{once:!0})),i=this.#r.add(a,r?.asap)})}#m(e,r=!1,n){return new Promise((s,i)=>{this.#r.add({args:e.args,chainId:n,abort:void 0,timeout:void 0,resolve(){e.resolve(),s()},reject(a){e.reject?.(),i(a)},channelsCounter:e.channelsCounter,typeMapping:GC.PUSH_TYPE_MAPPING},r)})}#y(){this.#e===2&&(this.decoder.onReply=e=>{if(Array.isArray(e)){if(this.#p(e))return;let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];if(Jur.equals(r)){let{resolve:n,typeMapping:s}=this.#n.shift(),i=e[1].length===0?e[0]:e[1];n(s?.[GC.RESP_TYPES.SIMPLE_STRING]===Buffer?i:i.toString());return}}return this.#l(e)},this.decoder.getTypeMapping=()=>Zur)}subscribe(e,r,n,s){let i=this.#s.subscribe(e,r,n,s);if(i)return this.#y(),this.#m(i)}#g(){this.decoder.onReply=e=>this.#l(e),this.decoder.getTypeMapping=()=>this.#d()}unsubscribe(e,r,n,s){let i=this.#s.unsubscribe(e,r,n,s);if(i){if(i&&this.#e===2){let{resolve:a}=i;i.resolve=()=>{this.#s.isActive||this.#g(),a()}}return this.#m(i)}}removeAllPubSubListeners(){return this.#s.removeAllListeners()}removeShardedPubSubListenersForSlots(e){return this.#s.removeShardedPubSubListenersForSlots(e)}resubscribe(e){let r=this.#s.resubscribe();if(r.length)return this.#y(),Promise.all(r.map(n=>this.#m(n,!0,e)))}extendPubSubChannelListeners(e,r,n){let s=this.#s.extendChannelListeners(e,r,n);if(s)return this.#y(),this.#m(s)}extendPubSubListeners(e,r){let n=this.#s.extendTypeListeners(e,r);if(n)return this.#y(),this.#m(n)}getPubSubListeners(e){return this.#s.listeners[e]}monitor(e,r){return new Promise((n,s)=>{let i=r?.typeMapping??{};this.#r.add({args:["MONITOR"],chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:()=>{this.#E?this.#E=e:this.decoder.onReply=e,this.decoder.getTypeMapping=()=>i,n()},reject:s,channelsCounter:void 0,typeMapping:i},r?.asap)})}resetDecoder(){this.#g(),this.decoder.reset()}#E;async reset(e,r){return new Promise((n,s)=>{this.#E=this.decoder.onReply,this.decoder.onReply=i=>{if(typeof i=="string"&&i==="RESET"||i instanceof Buffer&&Xur.equals(i)){this.#g(),this.#E=void 0,this.#s.reset(),this.#n.shift().resolve(i);return}this.#E(i)},this.#r.push({args:["RESET"],chainId:e,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r})})}isWaitingToWrite(){return this.#r.length>0}*commandsToWrite(){let e=this.#r.shift();for(;e;){let r;try{r=(0,Yur.default)(e.args)}catch(n){e.reject(n),e=this.#r.shift();continue}e.args=void 0,e.abort&&(t.#A(e),e.abort=void 0),e.timeout&&(t.#I(e),e.timeout=void 0),this.#o=e.chainId,e.chainId=void 0,this.#n.push(e),yield r,e=this.#r.shift()}}#S(e){for(let r of this.#n)r.reject(e);this.#n.reset()}static#A(e){e.abort.signal.removeEventListener("abort",e.abort.listener)}static#I(e){e.timeout?.signal.removeEventListener("abort",e.timeout.listener)}static#_(e,r){e.abort&&t.#A(e),e.timeout&&t.#I(e),e.reject(r)}flushWaitingForReply(e){if(this.resetDecoder(),this.#s.reset(),this.#S(e),!!this.#o){for(;this.#r.head?.value.chainId===this.#o;)t.#_(this.#r.shift(),e);this.#o=void 0}}flushAll(e){this.resetDecoder(),this.#s.reset(),this.#S(e);for(let r of this.#r)t.#_(r,e);this.#r.reset()}isEmpty(){return this.#r.length===0&&this.#n.length===0}extractCommandsForSlots(e){let r=[],n=this.#r.head;for(;n!==void 0;)if(n.value.slotNumber!==void 0&&e.has(n.value.slotNumber)){r.push(n.value);let s=n;n=n.next,this.#r.remove(s)}else n=n.next;return r}extractAllCommands(){let e=[],r=this.#r.head;for(;r;)e.push(r.value),this.#r.remove(r),r=r.next;return e}prependCommandsToWrite(e){if(e.length)for(let r=e.length-1;r>=0;r--)this.#r.unshift(e[r])}};KC.default=mre});var Ml=E(Ll=>{"use strict";Object.defineProperty(Ll,"__esModule",{value:!0});Ll.scriptArgumentsPrefix=Ll.functionArgumentsPrefix=Ll.getTransformReply=Ll.attachConfig=void 0;function WYe(){throw new Error("Some RESP3 results for Redis Query Engine responses may change. Refer to the readme for guidance")}function elr({BaseClass:t,commands:e,createCommand:r,createModuleCommand:n,createFunctionCommand:s,createScriptCommand:i,config:a}){let o=a?.RESP??2,c=class extends t{};for(let[u,l]of Object.entries(e))a?.RESP==3&&l.unstableResp3&&!a.unstableResp3?c.prototype[u]=WYe:c.prototype[u]=r(l,o);if(a?.modules)for(let[u,l]of Object.entries(a.modules)){let d=Object.create(null);for(let[f,p]of Object.entries(l))a.RESP==3&&p.unstableResp3&&!a.unstableResp3?d[f]=WYe:d[f]=n(p,o);$Ye(c.prototype,u,d)}if(a?.functions)for(let[u,l]of Object.entries(a.functions)){let d=Object.create(null);for(let[f,p]of Object.entries(l))d[f]=s(f,p,o);$Ye(c.prototype,u,d)}if(a?.scripts)for(let[u,l]of Object.entries(a.scripts))c.prototype[u]=i(l,o);return c}Ll.attachConfig=elr;function $Ye(t,e,r){Object.defineProperty(t,e,{get(){let n=Object.create(r);return n._self=this,Object.defineProperty(this,e,{value:n}),n}})}function tlr(t,e){switch(typeof t.transformReply){case"function":return t.transformReply;case"object":return t.transformReply[e]}}Ll.getTransformReply=tlr;function rlr(t,e){let r=[e.IS_READ_ONLY?"FCALL_RO":"FCALL",t];return e.NUMBER_OF_KEYS!==void 0&&r.push(e.NUMBER_OF_KEYS.toString()),r}Ll.functionArgumentsPrefix=rlr;function nlr(t){let e=[t.IS_READ_ONLY?"EVALSHA_RO":"EVALSHA",t.SHA1];return t.NUMBER_OF_KEYS!==void 0&&e.push(t.NUMBER_OF_KEYS.toString()),e}Ll.scriptArgumentsPrefix=nlr});var VC=E(gre=>{"use strict";Object.defineProperty(gre,"__esModule",{value:!0});var FYe=Ol(),hre=class{typeMapping;constructor(e){this.typeMapping=e}queue=[];scriptsInUse=new Set;addCommand(e,r){this.queue.push({args:e,transformReply:r})}addScript(e,r,n){let s=[];s.preserve=r.preserve,this.scriptsInUse.has(e.SHA1)?s.push("EVALSHA",e.SHA1):(this.scriptsInUse.add(e.SHA1),s.push("EVAL",e.SCRIPT)),e.NUMBER_OF_KEYS!==void 0&&s.push(e.NUMBER_OF_KEYS.toString()),s.push(...r),this.addCommand(s,n)}transformReplies(e){let r=[],n=e.map((s,i)=>{if(s instanceof FYe.ErrorReply)return r.push(i),s;let{transformReply:a,args:o}=this.queue[i];return a?a(s,o.preserve,this.typeMapping):s});if(r.length)throw new FYe.MultiErrorReply(n,r);return n}};gre.default=hre});var yre=E(zC=>{"use strict";var UYe=zC&&zC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(zC,"__esModule",{value:!0});var slr=UYe(yu()),ilr=UYe(VC()),Cb=Ml(),mL=Pl(),Are=class t{static#e(e,r){let n=(0,Cb.getTransformReply)(e,r);return function(...s){let i=new mL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(a,n)}}static#t(e,r){let n=(0,Cb.getTransformReply)(e,r);return function(...s){let i=new mL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(a,n)}}static#r(e,r,n){let s=(0,Cb.functionArgumentsPrefix)(e,r),i=(0,Cb.getTransformReply)(r,n);return function(...a){let o=new mL.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(c,i)}}static#n(e,r){let n=(0,Cb.getTransformReply)(e,r);return function(...s){let i=new mL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#c(e,a,n)}}static extend(e){return(0,Cb.attachConfig)({BaseClass:t,commands:slr.default,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;constructor(e,r,n){this.#a=new ilr.default(n),this.#o=e,this.#s=r}SELECT(e,r){return this.#i=e,this.#a.addCommand(["SELECT",e.toString()],r),this}select=this.SELECT;addCommand(e,r){return this.#a.addCommand(e,r),this}#c(e,r,n){return this.#a.addScript(e,r,n),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#a.queue,this.#i))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#a.queue,this.#i))}execAsPipelineTyped(){return this.execAsPipeline()}};zC.default=Are});var HYe=E(wb=>{"use strict";var qYe=wb&&wb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(wb,"__esModule",{value:!0});wb.RedisLegacyClient=void 0;var alr=Ml(),jYe=qYe(yu()),olr=qYe(VC()),Tb=class t{static#e(e,r){let n;return typeof r[r.length-1]=="function"&&(n=r.pop()),t.pushArguments(e,r),n}static pushArguments(e,r){for(let n=0;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,alr.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(jYe.default))this[n]=t.#t(n,s,r);this.#n=xre.factory(r)}sendCommand(...e){let r=[],n=t.#e(r,e),s=this.#r.sendCommand(r);if(!n){s.catch(i=>this.#r.emit("error",i));return}s.then(i=>n(null,i)).catch(i=>n(i))}multi(){return this.#n(this.#r)}};wb.RedisLegacyClient=Tb;var xre=class t{static#e(e,r,n){let s=Tb.getTransformReply(r,n);return function(...i){let a=[e];return Tb.pushArguments(a,i),this.#t.addCommand(a,s),this}}static factory(e){let r=class extends t{};for(let[n,s]of Object.entries(jYe.default))r.prototype[n]=t.#e(n,s,e);return n=>new r(n)}#t=new olr.default;#r;constructor(e){this.#r=e}sendCommand(...e){let r=[];return Tb.pushArguments(r,e),this.#t.addCommand(r),this}exec(e){let r=this.#r._executeMulti(this.#t.queue);if(!e){r.catch(n=>this.#r.emit("error",n));return}r.then(n=>e(null,this.#t.transformReplies(n))).catch(n=>e?.(n))}}});var Rb=E(io=>{"use strict";Object.defineProperty(io,"__esModule",{value:!0});io.PooledNoRedirectClientSideCache=io.BasicPooledClientSideCache=io.PooledClientSideCacheProvider=io.BasicClientSideCache=io.ClientSideCacheProvider=io.CacheStats=void 0;var clr=require("stream"),YC=class t{hitCount;missCount;loadSuccessCount;loadFailureCount;totalLoadTime;evictionCount;constructor(e,r,n,s,i,a){if(this.hitCount=e,this.missCount=r,this.loadSuccessCount=n,this.loadFailureCount=s,this.totalLoadTime=i,this.evictionCount=a,e<0||r<0||n<0||s<0||i<0||a<0)throw new Error("All statistics values must be non-negative")}static of(e=0,r=0,n=0,s=0,i=0,a=0){return new t(e,r,n,s,i,a)}static empty(){return t.EMPTY_STATS}static EMPTY_STATS=new t(0,0,0,0,0,0);requestCount(){return this.hitCount+this.missCount}hitRate(){let e=this.requestCount();return e===0?1:this.hitCount/e}missRate(){let e=this.requestCount();return e===0?0:this.missCount/e}loadCount(){return this.loadSuccessCount+this.loadFailureCount}loadFailureRate(){let e=this.loadCount();return e===0?0:this.loadFailureCount/e}averageLoadPenalty(){let e=this.loadCount();return e===0?0:this.totalLoadTime/e}minus(e){return t.of(Math.max(0,this.hitCount-e.hitCount),Math.max(0,this.missCount-e.missCount),Math.max(0,this.loadSuccessCount-e.loadSuccessCount),Math.max(0,this.loadFailureCount-e.loadFailureCount),Math.max(0,this.totalLoadTime-e.totalLoadTime),Math.max(0,this.evictionCount-e.evictionCount))}plus(e){return t.of(this.hitCount+e.hitCount,this.missCount+e.missCount,this.loadSuccessCount+e.loadSuccessCount,this.loadFailureCount+e.loadFailureCount,this.totalLoadTime+e.totalLoadTime,this.evictionCount+e.evictionCount)}};io.CacheStats=YC;var hL=class t{static INSTANCE=new t;constructor(){}recordHits(e){}recordMisses(e){}recordLoadSuccess(e){}recordLoadFailure(e){}recordEvictions(e){}snapshot(){return YC.empty()}};function ulr(){return hL.INSTANCE}var gL=class t{#e=0;#t=0;#r=0;#n=0;#a=0;#o=0;recordHits(e){this.#e+=e}recordMisses(e){this.#t+=e}recordLoadSuccess(e){this.#r++,this.#a+=e}recordLoadFailure(e){this.#n++,this.#a+=e}recordEvictions(e){this.#o+=e}snapshot(){return YC.of(this.#e,this.#t,this.#r,this.#n,this.#a,this.#o)}static create(){return new t}};function llr(t){let e=new Array(t.length*2);for(let r=0;r<t.length;r++)e[r]=t[r].length,e[r+t.length]=t[r];return e.join("_")}var AL=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)}},JC=class extends AL{#e;get value(){return this.#e}constructor(e,r){super(e),this.#e=r}},XC=class extends AL{#e;get promise(){return this.#e}constructor(e,r){super(e),this.#e=r}},yL=class extends clr.EventEmitter{};io.ClientSideCacheProvider=yL;var xL=class extends yL{#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?gL.create():ulr()}async handleCache(e,r,n,s,i){let a,o=llr(r.redisArgs),c=this.get(o);if(c){if(c instanceof JC)return this.#r.recordHits(1),structuredClone(c.value);if(c instanceof XC)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 p=performance.now()-l;throw this.#r.recordLoadFailure(p),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 hL||(this.#r=gL.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 JC(this.ttl,r)}createPromiseEntry(e,r){return new XC(this.ttl,r)}stats(){return this.#r.snapshot()}onError(){this.clear()}onClose(){this.clear()}deleteOldest(){let r=this.#e[Symbol.iterator]().next();if(!r.done){let n=r.value[0],s=this.#e.get(n);s&&s.invalidate(),this.#e.delete(n)}}entryEntries(){return this.#e.entries()}keySetEntries(){return this.#t.entries()}};io.BasicClientSideCache=xL;var bL=class extends xL{#e=!1;disable(){this.#e=!0}enable(){this.#e=!1}get(e){if(!this.#e)return super.get(e)}has(e){return this.#e?!1:super.has(e)}onPoolClose(){this.clear()}};io.PooledClientSideCacheProvider=bL;var EL=class extends bL{onError(){this.clear(!1)}onClose(){this.clear(!1)}};io.BasicPooledClientSideCache=EL;var bre=class extends JC{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){let e=super.validate();return this.#e&&(e=e&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch),e}},Ere=class extends XC{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){return super.validate()&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch}},_re=class extends EL{createValueEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new bre(this.ttl,n,r)}createPromiseEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new Ere(this.ttl,n,r)}onError(){}onClose(){}};io.PooledNoRedirectClientSideCache=_re});var _L=E(vre=>{"use strict";Object.defineProperty(vre,"__esModule",{value:!0});var Sre=class{#e;#t;get(e){return JSON.stringify(e,QYe())===this.#t?this.#e:void 0}set(e,r){this.#e=r,this.#t=JSON.stringify(e,QYe())}};vre.default=Sre;function QYe(){let t=new WeakSet;return function(r,n){return n&&typeof n=="object"?t.has(n)?"circular":(t.add(n),n):n}}});var wre=E(Nb=>{"use strict";var Tre=Nb&&Nb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Nb,"__esModule",{value:!0});Nb.RedisClientPool=void 0;var dlr=yu(),flr=Tre(Ob()),plr=require("node:events"),Ire=pL(),mlr=Ol(),mg=Ml(),hlr=Tre(yre()),GYe=Rb(),SL=Pl(),glr=Tre(_L()),Cre=class t extends plr.EventEmitter{static#e(e,r){let n=(0,mg.getTransformReply)(e,r);return async function(...s){let i=new SL.BasicCommandParser;return e.parseCommand(i,...s),this.execute(a=>a._executeCommand(e,i,this._commandOptions,n))}}static#t(e,r){let n=(0,mg.getTransformReply)(e,r);return async function(...s){let i=new SL.BasicCommandParser;return e.parseCommand(i,...s),this._self.execute(a=>a._executeCommand(e,i,this._self._commandOptions,n))}}static#r(e,r,n){let s=(0,mg.functionArgumentsPrefix)(e,r),i=(0,mg.getTransformReply)(r,n);return async function(...a){let o=new SL.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self.execute(c=>c._executeCommand(r,o,this._self._commandOptions,i))}}static#n(e,r){let n=(0,mg.scriptArgumentsPrefix)(e),s=(0,mg.getTransformReply)(e,r);return async function(...i){let a=new SL.BasicCommandParser;return a.pushVariadic(n),e.parseCommand(a,...i),this.execute(o=>o._executeScript(e,a,this._commandOptions,s))}}static#a=new glr.default;static create(e,r){let n=t.#a.get(e);return n||(n=(0,mg.attachConfig)({BaseClass:t,commands:dlr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),n.prototype.Multi=hlr.default.extend(e),t.#a.set(e,n)),Object.create(new n(e,r))}static#o={minimum:1,maximum:100,acquireTimeout:3e3,cleanupDelay:3e3};#s;#i;#c=new Ire.SinglyLinkedList;get idleClients(){return this._self.#c.length}#l=new Ire.DoublyLinkedList;get clientsInUse(){return this._self.#l.length}get totalClients(){return this._self.#c.length+this._self.#l.length}#h=new Ire.SinglyLinkedList;get tasksQueueLength(){return this._self.#h.length}#p=!1;get isOpen(){return this._self.#p}#d=!1;get isClosing(){return this._self.#d}#f;get clientSideCache(){return this._self.#f}constructor(e,r){if(super(),this.#i={...t.#o,...r},r?.clientSideCache)if(e===void 0&&(e={}),r.clientSideCache instanceof GYe.PooledClientSideCacheProvider)this.#f=e.clientSideCache=r.clientSideCache;else{let n=r.clientSideCache;this.#f=e.clientSideCache=new GYe.BasicPooledClientSideCache(n)}this.#s=flr.default.factory(e).bind(void 0,e)}_self=this;_commandOptions;withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}#m(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._self.#m("typeMapping",e)}withAbortSignal(e){return this._self.#m("abortSignal",e)}asap(){return this._self.#m("asap",!0)}async connect(){if(this._self.#p)return;this._self.#p=!0;let e=[];for(;e.length<this._self.#i.minimum;)e.push(this._self.#y());try{await Promise.all(e)}catch(r){throw this.destroy(),r}return this}async#y(){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(e)}execute(e){return new Promise((r,n)=>{let s=this._self.#c.shift(),{tail:i}=this._self.#h;if(!s){let o;this._self.#i.acquireTimeout>0&&(o=setTimeout(()=>{this._self.#h.remove(c,i),n(new mlr.TimeoutError("Timeout waiting for a client"))},this._self.#i.acquireTimeout));let c=this._self.#h.push({timeout:o,resolve:r,reject:n,fn:e});this.totalClients<this._self.#i.maximum&&this._self.#y();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(e)):(r(i),this.#E(e))}#E(e){let r=this.#h.shift();if(r){clearTimeout(r.timeout),this.#g(e,r.resolve,r.reject,r.fn);return}this.#l.remove(e),this.#c.push(e.value),this.#S()}cleanupTimeout;#S(){this.totalClients<=this.#i.minimum||(clearTimeout(this.cleanupTimeout),this.cleanupTimeout=setTimeout(()=>this.#A(),this.#i.cleanupDelay))}#A(){let e=Math.min(this.#c.length,this.totalClients-this.#i.minimum);for(let r=0;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}};Nb.RedisClientPool=Cre});var KYe=E((dXr,Alr)=>{Alr.exports={name:"@redis/client",version:"5.11.0",license:"MIT",main:"./dist/index.js",types:"./dist/index.d.ts",files:["dist/","!dist/tsconfig.tsbuildinfo"],scripts:{test:"nyc -r text-summary -r lcov mocha -r tsx --reporter mocha-multi-reporters --reporter-options configFile=mocha-multi-reporter-config.json --exit './lib/**/*.spec.ts'",release:"release-it"},dependencies:{"cluster-key-slot":"1.1.2"},devDependencies:{"@node-rs/xxhash":"1.7.6","@redis/test-utils":"*","@types/sinon":"^17.0.3",sinon:"^17.0.1"},peerDependencies:{"@node-rs/xxhash":"^1.1.0"},peerDependenciesMeta:{"@node-rs/xxhash":{optional:!0}},engines:{node:">= 18"},repository:{type:"git",url:"git://github.com/redis/node-redis.git"},bugs:{url:"https://github.com/redis/node-redis/issues"},homepage:"https://github.com/redis/node-redis/tree/master/packages/client",keywords:["redis"]}});var Ob=E(bu=>{"use strict";var ylr=bu&&bu.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),xlr=bu&&bu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),blr=bu&&bu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&ylr(e,t,r);return xlr(e,t),e},Db=bu&&bu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},xu;Object.defineProperty(bu,"__esModule",{value:!0});var Pb=Db(yu()),Elr=Db(TYe()),VYe=PYe(),_lr=Db(MYe()),Slr=require("node:events"),hg=Ml(),j0=Ol(),vlr=require("node:url"),kb=QC(),Ilr=Db(yre()),Clr=Db(UJ()),Tlr=HYe(),wlr=wre(),gg=Ce(),zYe=Rb(),vL=Pl(),Rlr=Db(_L()),Nlr=KYe(),IL=blr(qC()),CL=class extends Slr.EventEmitter{static#e(e,r){let n=(0,hg.getTransformReply)(e,r);return async function(...s){let i=new vL.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._commandOptions,n)}}static#t(e,r){let n=(0,hg.getTransformReply)(e,r);return async function(...s){let i=new vL.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._self._commandOptions,n)}}static#r(e,r,n){let s=(0,hg.functionArgumentsPrefix)(e,r),i=(0,hg.getTransformReply)(r,n);return async function(...a){let o=new vL.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._executeCommand(r,o,this._self._commandOptions,i)}}static#n(e,r){let n=(0,hg.scriptArgumentsPrefix)(e),s=(0,hg.getTransformReply)(e,r);return async function(...i){let a=new vL.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._executeScript(e,a,this._commandOptions,s)}}static#a=new Rlr.default;static factory(e){let r=xu.#a.get(e);return r||(r=(0,hg.attachConfig)({BaseClass:xu,commands:Pb.default,createCommand:xu.#e,createModuleCommand:xu.#t,createFunctionCommand:xu.#r,createScriptCommand:xu.#n,config:e}),r.prototype.Multi=Ilr.default.extend(e),xu.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return xu.factory(e)(e)}static parseOptions(e){if(e?.url){let r=xu.parseURL(e.url);if(e.socket){if(e.socket.tls!==void 0&&e.socket.tls!==r.socket.tls)throw new TypeError(`tls socket option is set to ${e.socket.tls} which is mismatch with protocol or the URL ${e.url} passed`);r.socket=Object.assign(e.socket,r.socket)}Object.assign(e,r)}return e}static parseURL(e){let{hostname:r,port:n,protocol:s,username:i,password:a,pathname:o}=new vlr.URL(e),c={socket:{host:r.replace(/^\[([0-9a-f:]+)\]$/,"$1"),tls:!1}};if(s!=="redis:"&&s!=="rediss:")throw new TypeError("Invalid protocol");if(c.socket.tls=s==="rediss:",n&&(c.socket.port=Number(n)),i&&(c.username=decodeURIComponent(i)),a&&(c.password=decodeURIComponent(a)),(i||a)&&(c.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:i?decodeURIComponent(i):void 0,password:a?decodeURIComponent(a):void 0})}),o.length>1){let u=Number(o.substring(1));if(isNaN(u))throw new TypeError("Invalid pathname");c.database=u}return c}#o;#s;#i;#c=0;#l;_self=this;_commandOptions;#h;#p;#d;#f=null;#m=!1;get clientSideCache(){return this._self.#d}get options(){return this._self.#o}get isOpen(){return this._self.#s.isOpen}get isReady(){return this._self.#s.isReady}get isPubSubActive(){return this._self.#i.isPubSubActive}get socketEpoch(){return this._self.#s.socketEpoch}get isWatching(){return this._self.#p!==void 0}get isDirtyWatch(){return this._self.#h!==void 0}setDirtyWatch(e){this._self.#h=e}constructor(e){if(super(),this.#y(e),this.#o=this.#g(e),this.#i=this.#E(),this.#s=this.#v(),this.#o.maintNotifications!=="disabled"&&new IL.default(this.#i,this,this.#o),this.#o.clientSideCache){if(this.#o.clientSideCache instanceof zYe.ClientSideCacheProvider)this.#d=this.#o.clientSideCache;else{let r=this.#o.clientSideCache;this.#d=new zYe.BasicClientSideCache(r)}this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.#d?.invalidate(n);else this.#d?.invalidate(null);return!0})}else e?.emitInvalidate&&this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.emit("invalidate",n);else this.emit("invalidate",null);return!0})}#y(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3");if(e?.emitInvalidate&&e?.RESP!==3)throw new Error("emitInvalidate is only supported with RESP3");if(e?.clientSideCache&&e?.emitInvalidate)throw new Error("emitInvalidate is not supported (or necessary) when clientSideCache is enabled");if(e?.maintNotifications&&e?.maintNotifications!=="disabled"&&e?.RESP!==3)throw new Error("Graceful Maintenance is only supported with RESP3")}#g(e={}){if(!e.credentialsProvider&&(e.username||e.password)&&(e.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:e.username,password:e.password})}),e.database&&(this._self.#c=e.database),e.commandOptions&&(this._commandOptions=e.commandOptions),e.maintNotifications!=="disabled"&&IL.default.setupDefaultMaintOptions(e),e.url){let r=xu.parseOptions(e);return r?.database&&(this._self.#c=r.database),r}return e}#E(){return new _lr.default(this.#o.RESP??2,this.#o.commandsQueueMaxLength,(e,r)=>this.emit("sharded-channel-moved",e,r))}reAuthenticate=async e=>{this.isPubSubActive&&!this.#o.RESP||await this.sendCommand((0,gg.parseArgs)(Pb.default.AUTH,{username:e.username,password:e.password??""}))};#S(e){return e.subscribe({onNext:r=>{this.reAuthenticate(r).catch(n=>{let s=n instanceof Error?n.message:String(n);e.onReAuthenticationError(new VYe.CredentialsError(s))})},onError:r=>{let n=`Error from streaming credentials provider: ${r.message}`;e.onReAuthenticationError(new VYe.UnableToObtainNewCredentialsError(n))}})}async#A(e,r){let n=[],s=await this.#I();r&&s.reverse();for(let{cmd:i,errorHandler:a}of s)n.push(this.#i.addCommand(i,{chainId:e,asap:r}).catch(a));return n}async#I(){let e=[],r=this.#o.credentialsProvider;if(this.#o.RESP){let s={};if(r&&r.type==="async-credentials-provider"){let i=await r.credentials();i.password&&(s.AUTH={username:i.username??"default",password:i.password})}if(r&&r.type==="streaming-credentials-provider"){let[i,a]=await this.#S(r);this.#f=a,i.password&&(s.AUTH={username:i.username??"default",password:i.password})}this.#o.name&&(s.SETNAME=this.#o.name),e.push({cmd:(0,gg.parseArgs)(Clr.default,this.#o.RESP,s)})}else{if(r&&r.type==="async-credentials-provider"){let s=await r.credentials();(s.username||s.password)&&e.push({cmd:(0,gg.parseArgs)(Pb.default.AUTH,{username:s.username,password:s.password??""})})}if(r&&r.type==="streaming-credentials-provider"){let[s,i]=await this.#S(r);this.#f=i,(s.username||s.password)&&e.push({cmd:(0,gg.parseArgs)(Pb.default.AUTH,{username:s.username,password:s.password??""})})}this.#o.name&&e.push({cmd:(0,gg.parseArgs)(Pb.default.CLIENT_SETNAME,this.#o.name)})}this.#c!==0&&e.push({cmd:["SELECT",this.#c.toString()]}),this.#o.readonly&&e.push({cmd:(0,gg.parseArgs)(Pb.default.READONLY)}),this.#o.disableClientInfo||(e.push({cmd:["CLIENT","SETINFO","LIB-VER",Nlr.version],errorHandler:()=>{}}),e.push({cmd:["CLIENT","SETINFO","LIB-NAME",this.#o.clientInfoTag?`node-redis(${this.#o.clientInfoTag})`:"node-redis"],errorHandler:()=>{}})),this.#d&&e.push({cmd:this.#d.trackingOn()}),this.#o?.emitInvalidate&&e.push({cmd:["CLIENT","TRACKING","ON"]});let n=await IL.default.getHandshakeCommand(this.#o);return n&&e.push(n),e}#_(e){e.on("data",r=>{try{this.#i.decoder.write(r)}catch(n){this.#i.resetDecoder(),this.emit("error",n)}}).on("error",r=>{this.emit("error",r),this.#d?.onError(),this.#s.isOpen&&!this.#o.disableOfflineQueue?this.#i.flushWaitingForReply(r):this.#i.flushAll(r)}).on("connect",()=>this.emit("connect")).on("ready",()=>{this.emit("ready"),this.#u(),this.#N()}).on("reconnecting",()=>this.emit("reconnecting")).on("drain",()=>this.#N()).on("end",()=>this.emit("end"))}#v(){let e=async()=>{let n=[],s=Symbol("Socket Initiator"),i=this.#i.resubscribe(s);if(i?.catch(a=>{a.message&&a.message.startsWith("MOVED")&&this.emit("__MOVED",this._self.#i.removeAllPubSubListeners())}),i&&n.push(i),this.#l&&n.push(this.#i.monitor(this.#l,{typeMapping:this._commandOptions?.typeMapping,chainId:s,asap:!0})),n.push(...await this.#A(s,!0)),n.length)return this.#P(),Promise.all(n)},r=new Elr.default(e,this.#o.socket);return this.#_(r),r}#b;#u(){!this.#o.pingInterval||!this.#s.isReady||(clearTimeout(this.#b),this.#b=setTimeout(()=>{this.#s.isReady&&this.sendCommand(["PING"]).then(e=>this.emit("ping-interval",e)).catch(e=>this.emit("error",e)).finally(()=>this.#u())},this.#o.pingInterval))}withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}withAbortSignal(e){return this._commandOptionsProxy("abortSignal",e)}asap(){return this._commandOptionsProxy("asap",!0)}legacy(){return new Tlr.RedisLegacyClient(this)}createPool(e){return wlr.RedisClientPool.create(this._self.#o,e)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self.#o,commandOptions:this._commandOptions,...e})}async connect(){return await this._self.#s.connect(),this}_ejectSocket(){let e=this._self.#s;return this._self.#s=null,e.removeAllListeners(),e}_insertSocket(e){this._self.#s&&this._self._ejectSocket().destroy(),this._self.#s=e,this._self.#_(this._self.#s)}_maintenanceUpdate(e){this._self.#s.setMaintenanceTimeout(e.relaxedSocketTimeout),this._self.#i.setMaintenanceCommandTimeout(e.relaxedCommandTimeout)}_pause(){this._self.#m=!0}_unpause(){this._self.#m=!1,this._self.#N()}_handleSmigrated(e){this._self.emit(IL.SMIGRATED_EVENT,e)}_getQueue(){return this._self.#i}async _executeCommand(e,r,n,s){let i=this._self.#d,a=this._self.#o.commandOptions===n||this._self.#o.commandOptions?.typeMapping===n?.typeMapping,o=()=>this.sendCommand(r.redisArgs,n);if(i&&e.CACHEABLE&&a)return await i.handleCache(this._self,r,o,s,n?.typeMapping);{let c=await o();return s?s(c,r.preserve,n?.typeMapping):c}}async _executeScript(e,r,n,s){let i=r.redisArgs,a;try{a=await this.sendCommand(i,n)}catch(o){if(!o?.message?.startsWith?.("NOSCRIPT"))throw o;i[0]="EVAL",i[1]=e.SCRIPT,a=await this.sendCommand(i,n)}return s?s(a,r.preserve,n?.typeMapping):a}sendCommand(e,r){if(this._self.#s.isOpen){if(!this._self.#s.isReady&&this._self.#o.disableOfflineQueue)return Promise.reject(new j0.ClientOfflineError)}else return Promise.reject(new j0.ClientClosedError);let n={...this._self._commandOptions,...r},s=this._self.#i.addCommand(e,n);return this._self.#C(),s}async SELECT(e){await this.sendCommand(["SELECT",e.toString()]),this._self.#c=e}select=this.SELECT;#x(e){return e===void 0?Promise.resolve():(this.#C(),e)}SUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.CHANNELS,e,r,n))}subscribe=this.SUBSCRIBE;UNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.CHANNELS,e,r,n))}unsubscribe=this.UNSUBSCRIBE;PSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.PATTERNS,e,r,n))}pSubscribe=this.PSUBSCRIBE;PUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.PATTERNS,e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;SSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.SHARDED,e,r,n))}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.SHARDED,e,r,n))}sUnsubscribe=this.SUNSUBSCRIBE;async WATCH(e){let r=await this._self.sendCommand((0,gg.pushVariadicArguments)(["WATCH"],e));return this._self.#p??=this._self.socketEpoch,r}watch=this.WATCH;async UNWATCH(){let e=await this._self.sendCommand(["UNWATCH"]);return this._self.#p=void 0,e}unwatch=this.UNWATCH;getPubSubListeners(e){return this._self.#i.getPubSubListeners(e)}extendPubSubChannelListeners(e,r,n){return this._self.#x(this._self.#i.extendPubSubChannelListeners(e,r,n))}extendPubSubListeners(e,r){return this._self.#x(this._self.#i.extendPubSubListeners(e,r))}#P(){this.#m||this.#s.write(this.#i.commandsToWrite())}#T;#C(){!this.#s.isReady||this.#T||(this.#T=setImmediate(()=>{this.#P(),this.#T=void 0}))}#N(){this.#i.isWaitingToWrite()&&this.#C()}async _executePipeline(e,r){if(!this._self.#s.isOpen)return Promise.reject(new j0.ClientClosedError);let n=Symbol("Pipeline Chain"),s=Promise.all(e.map(({args:a})=>this._self.#i.addCommand(a,{chainId:n,typeMapping:this._commandOptions?.typeMapping})));this._self.#C();let i=await s;return r!==void 0&&(this._self.#c=r),i}async _executeMulti(e,r){let n=this._self.#h;this._self.#h=void 0;let s=this._self.#p;if(this._self.#p=void 0,!this._self.#s.isOpen)throw new j0.ClientClosedError;if(n)throw new j0.WatchError(n);if(s&&s!==this._self.socketEpoch)throw new j0.WatchError("Client reconnected after WATCH");let i=this._commandOptions?.typeMapping,a=Symbol("MULTI Chain"),o=[this._self.#i.addCommand(["MULTI"],{chainId:a})];for(let{args:l}of e)o.push(this._self.#i.addCommand(l,{chainId:a,typeMapping:i}));o.push(this._self.#i.addCommand(["EXEC"],{chainId:a})),this._self.#C();let c=await Promise.all(o),u=c[c.length-1];if(u===null)throw new j0.WatchError;return r!==void 0&&(this._self.#c=r),u}MULTI(){return new this.Multi(this._executeMulti.bind(this),this._executePipeline.bind(this),this._commandOptions?.typeMapping)}multi=this.MULTI;async*scanIterator(e){let r=e?.cursor??"0";do{let n=await this.scan(r,e);r=n.cursor,yield n.keys}while(r!=="0")}async*hScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScan(e,n,r);n=s.cursor,yield s.entries}while(n!=="0")}async*hScanValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*hScanNoValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*sScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.sScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async*zScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.zScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async MONITOR(e){let r=this._self.#i.monitor(e,{typeMapping:this._commandOptions?.typeMapping});this._self.#C(),await r,this._self.#l=e}monitor=this.MONITOR;async reset(){let e=Symbol("Reset Chain"),r=[this._self.#i.reset(e)],n=this._self.#o?.database??0;this._self.#f?.dispose(),this._self.#f=null,r.push(...await this._self.#A(e,!1)),this._self.#C(),await Promise.all(r),this._self.#c=n,this._self.#l=void 0,this._self.#h=void 0,this._self.#p=void 0}resetIfDirty(){let e=!1;if(this._self.#c!==(this._self.#o?.database??0)&&(console.warn("Returning a client with a different selected DB"),e=!0),this._self.#l&&(console.warn("Returning a client with active MONITOR"),e=!0),this._self.#i.isPubSubActive&&(console.warn("Returning a client with active PubSub"),e=!0),(this._self.#h||this._self.#p)&&(console.warn("Returning a client with active WATCH"),e=!0),e)return this.reset()}QUIT(){return this._self.#f?.dispose(),this._self.#f=null,this._self.#s.quit(async()=>{clearTimeout(this._self.#b);let e=this._self.#i.addCommand(["QUIT"]);return this._self.#C(),e})}quit=this.QUIT;disconnect(){return Promise.resolve(this.destroy())}close(){return new Promise(e=>{if(clearTimeout(this._self.#b),this._self.#s.close(),this._self.#d?.onClose(),this._self.#i.isEmpty())return this._self.#s.destroySocket(),e();let r=()=>{this._self.#i.isEmpty()&&(this._self.#s.off("data",r),this._self.#s.destroySocket(),e())};this._self.#s.on("data",r),this._self.#f?.dispose(),this._self.#f=null})}destroy(){clearTimeout(this._self.#b),this._self.#i.flushAll(new j0.DisconnectsClientError),this._self.#s.destroy(),this._self.#d?.onClose(),this._self.#f?.dispose(),this._self.#f=null}ref(){this._self.#s.ref()}unref(){this._self.#s.unref()}};xu=CL;bu.default=CL});var XYe=E(Wl=>{"use strict";var JYe=Wl&&Wl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Nre;Object.defineProperty(Wl,"__esModule",{value:!0});Wl.RESUBSCRIBE_LISTENERS_EVENT=void 0;var Olr=Ol(),Plr=JYe(Ob()),Do=QC(),Rre=JYe(dre()),YYe=Rb(),ao=qC();Wl.RESUBSCRIBE_LISTENERS_EVENT="__resubscribeListeners";var TL=class{static#e=16384;#t;#r;#n;slots=new Array(Nre.#e);masters=new Array;replicas=new Array;nodeByAddress=new Map;pubSubNode;clientSideCache;smigratedSeqIdsSeen=new Set;#a=!1;get isOpen(){return this.#a}#o(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e,r){this.#o(e),this.#t=e,e?.clientSideCache&&(e.clientSideCache instanceof YYe.PooledClientSideCacheProvider?this.clientSideCache=e.clientSideCache:this.clientSideCache=new YYe.BasicPooledClientSideCache(e.clientSideCache)),this.#r=Plr.default.factory(this.#t),this.#n=r}async connect(){if(this.#a)throw new Error("Cluster already open");this.#a=!0;try{await this.#s(),this.#n("connect")}catch(e){throw this.#a=!1,e}}async#s(){let e=Math.floor(Math.random()*this.#t.rootNodes.length);for(let r=e;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 Olr.RootNodesUnavailableError}#i(){this.slots=new Array(Nre.#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(Do.PUBSUB_TYPE.CHANNELS),o=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.PATTERNS);this.pubSubNode.client.destroy(),(a.size||o.size)&&n.push(this.#v({[Do.PUBSUB_TYPE.CHANNELS]:a,[Do.PUBSUB_TYPE.PATTERNS]:o}))}for(let[a,o]of this.nodeByAddress.entries()){if(r.has(a))continue;o.client&&o.client.destroy();let{pubSub:c}=o;c&&c.client.destroy(),this.nodeByAddress.delete(a)}return await Promise.all(n),this.clientSideCache?.enable(),!0}catch(r){return this.#n("error",r),!1}}#l=async e=>{if((0,ao.dbgMaintenance)("[CSlots]: handle smigrated",JSON.stringify(e,null,2)),this.smigratedSeqIdsSeen.has(e.seqId)){(0,ao.dbgMaintenance)(`[CSlots]: sequence id ${e.seqId} already seen, abort`);return}this.smigratedSeqIdsSeen.add(e.seqId);for(let r of e.entries){let n=`${r.source.host}:${r.source.port}`,s=this.nodeByAddress.get(n);if((0,ao.dbgMaintenance)(`[CSlots]: Looking for sourceAddress=${n}. Available addresses in nodeByAddress: ${Array.from(this.nodeByAddress.keys()).join(", ")}`),!s){(0,ao.dbgMaintenance)(`[CSlots]: address ${n} not in 'nodeByAddress', skipping this entry`);continue}if(s.client===void 0){(0,ao.dbgMaintenance)(`[CSlots]: Node for ${n} does not have a client, skipping this entry`);continue}let i=new Set;try{s.client?._pause(),"pubSub"in s&&s.pubSub?.client._pause();let a;for(let{addr:{host:d,port:f},slots:p}of r.destinations){let m=`${d}:${f}`,h=this.nodeByAddress.get(m);(0,ao.dbgMaintenance)(`[CSlots]: Looking for destAddress=${m}. Found in nodeByAddress: ${h?"YES":"NO"}`);let A;if(h){let y=[...new Set(this.slots)].map(v=>`${v.master.host}:${v.master.port}`);(0,ao.dbgMaintenance)(`[CSlots]: Searching for shard with host=${d}, port=${f}. Available masters in slots: ${y.join(", ")}`);let x=this.slots.find(v=>v.master.host===d&&v.master.port===f);if(!x)throw(0,ao.dbgMaintenance)("Could not find shard"),new Error("Could not find shard");A=x,h.client?._pause(),h.pubSub?.client._pause()}else{let y=[];h=this.#f({host:d,port:f,id:`smigrated-${d}:${f}`},!1,!0,new Set,y),await Promise.all([...y,this.#b(h)]),h.client?._pause(),h.pubSub?.client._pause(),A={master:h}}a=h;let g=new Set;for(let y of p)if(typeof y=="number")this.slots[y]=A,g.add(y),i.add(y);else for(let x=y[0];x<=y[1];x++)this.slots[x]=A,g.add(x),i.add(x);(0,ao.dbgMaintenance)(`[CSlots]: Updated slots to point to destination ${h.address}. Sample slots: ${Array.from(p).slice(0,5).join(", ")}${p.length>5?"...":""}`);let b=s.client._getQueue().extractCommandsForSlots(g);h.client?._getQueue().prependCommandsToWrite(b),(0,ao.dbgMaintenance)(`[CSlots]: Extracted ${b.length} commands for ${g.size} slots, prepended to ${h.address}`),h.client?._unpause(),h.pubSub?.client._unpause()}(0,ao.dbgMaintenance)(`[CSlots]: Total ${i.size} slots moved from ${n}. Sample: ${Array.from(i).slice(0,10).join(", ")}${i.size>10?"...":""}`);let o=5e3,c=[],u={timeoutMs:o,flushOnTimeout:!0};if(c.push(s.client._getQueue().waitForInflightCommandsToComplete(u)),"pubSub"in s&&s.pubSub!==void 0&&c.push(s.pubSub.client._getQueue().waitForInflightCommandsToComplete(u)),this.pubSubNode?.address===n&&c.push(this.pubSubNode.client._getQueue().waitForInflightCommandsToComplete(u)),await Promise.all(c),this.slots.find(d=>d.master.address===n)!==void 0){if("pubSub"in s){let d=s.pubSub?.client._getQueue().removeShardedPubSubListenersForSlots(i);this.#n(Wl.RESUBSCRIBE_LISTENERS_EVENT,d)}s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause()}else{let d=s.client._getQueue().extractAllCommands();if(d.length>0&&a&&(a.client?._getQueue().prependCommandsToWrite(d),a.client?._unpause(),(0,ao.dbgMaintenance)(`[CSlots]: Moved ${d.length} remaining slotless commands to ${a.address}`)),"pubSub"in s){let f=s.pubSub?.client._getQueue().removeAllPubSubListeners();this.#n(Wl.RESUBSCRIBE_LISTENERS_EVENT,f)}if(this.masters=this.masters.filter(f=>f.address!==n),this.replicas=this.replicas.filter(f=>f.address!==n),this.nodeByAddress.delete(n),this.pubSubNode?.address===n){let f=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.CHANNELS),p=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.PATTERNS),m=this.pubSubNode.client;f.size||p.size?await this.#v({[Do.PUBSUB_TYPE.CHANNELS]:f,[Do.PUBSUB_TYPE.PATTERNS]:p}):this.pubSubNode=void 0,m.destroy()}s.client?.destroy(),"pubSub"in s&&s.pubSub?.client.destroy()}}catch(a){(0,ao.dbgMaintenance)(`[CSlots]: Error during SMIGRATED handling for source ${n}: ${a}`),s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause(),this.#n("error",a)}}};async#h(e){let r=this.#d(e);r.socket??={},r.socket.reconnectStrategy=!1,r.RESP=this.#t.RESP,r.commandOptions=void 0,r.maintNotifications="disabled";let n=await this.#r(r).on("error",s=>this.#n("error",s)).connect();try{return await n.clusterSlots()}finally{n.destroy()}}#p(e){switch(typeof this.#t.nodeAddressMap){case"object":return this.#t.nodeAddressMap[e];case"function":return this.#t.nodeAddressMap(e)}}#d(e){if(!this.#t.defaults)return e;let r;return this.#t.defaults.socket?r={...this.#t.defaults.socket,...e?.socket}:r=e?.socket,{...this.#t.defaults,...e,socket:r}}#f(e,r,n,s,i){let a=`${e.host}:${e.port}`,o=this.nodeByAddress.get(a);return o||(o={...e,address:a,readonly:r,client:void 0,connectPromise:void 0},n&&i.push(this.#y(o)),this.nodeByAddress.set(a,o)),s.has(a)||(s.add(a),(r?this.replicas:this.masters).push(o)),o}#m(e,r=e.readonly){let n=this.#p(e.address)??{host:e.host,port:e.port},s=Object.freeze({host:n.host,port:n.port}),i=this.#n,a=this.#r(this.#d({clientSideCache:this.clientSideCache,RESP:this.#t.RESP,socket:n,readonly:r})).on("error",o=>i("node-error",o,s)).on("reconnecting",()=>i("node-reconnecting",s)).once("ready",()=>i("node-ready",s)).once("connect",()=>i("node-connect",s)).once("end",()=>i("node-disconnect",s)).on(ao.SMIGRATED_EVENT,this.#l).on("__MOVED",async o=>{await this.rediscover(a),this.#n(Wl.RESUBSCRIBE_LISTENERS_EVENT,o)});return a}#y(e,r){let n=e.client=this.#m(e,r);return e.connectPromise=n.connect().finally(()=>e.connectPromise=void 0)}nodeClient(e){return e.connectPromise?e.connectPromise:e.client?Promise.resolve(e.client):this.#y(e)}#g;async rediscover(e){return this.#g??=this.#E(e).finally(()=>{this.#g=void 0}),this.#g}async#E(e){if(!await this.#c(e.options))return this.#s()}quit(){return this.#A(e=>e.quit())}disconnect(){return this.#A(e=>e.disconnect())}close(){return this.#A(e=>e.close())}destroy(){this.#a=!1;for(let e of this.#S())e.destroy();this.pubSubNode&&(this.pubSubNode.client.destroy(),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),this.#n("disconnect")}*#S(){for(let e of this.masters)e.client&&(yield e.client),e.pubSub&&(yield e.pubSub.client);for(let e of this.replicas)e.client&&(yield e.client)}async#A(e){this.#a=!1;let r=[];for(let n of this.#S())r.push(e(n));this.pubSubNode&&(r.push(e(this.pubSubNode.client)),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),await Promise.allSettled(r),this.#n("disconnect")}async getClientAndSlotNumber(e,r){if(!e)return{client:await this.nodeClient(this.getRandomNode())};let n=(0,Rre.default)(e);return r?{client:await this.nodeClient(this.getSlotRandomNode(n)),slotNumber:n}:{client:await this.nodeClient(this.slots[n].master),slotNumber:n}}*#I(){if(this.masters.length+this.replicas.length===0)return;let e=Math.floor(Math.random()*(this.masters.length+this.replicas.length));if(e<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){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.#_(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.#v()}async#v(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(Do.PUBSUB_TYPE.CHANNELS,e[Do.PUBSUB_TYPE.CHANNELS]),i.extendPubSubListeners(Do.PUBSUB_TYPE.PATTERNS,e[Do.PUBSUB_TYPE.PATTERNS])]),this.pubSubNode.connectPromise=void 0,i)).catch(i=>{throw this.pubSubNode=void 0,i})},this.pubSubNode.connectPromise}async executeUnsubscribeCommand(e){let r=await this.getPubSubClient();await e(r),r.isPubSubActive||(r.destroy(),this.pubSubNode=void 0)}getShardedPubSubClient(e){let{master:r}=this.slots[(0,Rre.default)(e)];return r.pubSub?r.pubSub.connectPromise??Promise.resolve(r.pubSub.client):this.#b(r)}async#b(e){let r=this.#m(e,!1).on("server-sunsubscribe",async(n,s)=>{try{await this.rediscover(r),await(await this.getShardedPubSubClient(n)).extendPubSubChannelListeners(Do.PUBSUB_TYPE.SHARDED,n,s)}catch(i){this.#n("sharded-shannel-moved-error",i,n,s)}});return e.pubSub={client:r,connectPromise:r.connect().then(n=>(e.pubSub.connectPromise=void 0,n)).catch(n=>{throw e.pubSub=void 0,n})},e.pubSub.connectPromise}async executeShardedUnsubscribeCommand(e,r){let{master:n}=this.slots[(0,Rre.default)(e)];if(!n.pubSub)return;let s=n.pubSub.connectPromise?await n.pubSub.connectPromise:n.pubSub.client;await r(s),s.isPubSubActive||(s.destroy(),n.pubSub=void 0)}};Nre=TL;Wl.default=TL});var ZYe=E(ZC=>{"use strict";var klr=ZC&&ZC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ZC,"__esModule",{value:!0});var Dlr=yu(),Blr=klr(VC()),Bb=Ml(),wL=Pl(),Ore=class t{static#e(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new wL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.addCommand(o,e.IS_READ_ONLY,a,n)}}static#t(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new wL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this._self.addCommand(o,e.IS_READ_ONLY,a,n)}}static#r(e,r,n){let s=(0,Bb.functionArgumentsPrefix)(e,r),i=(0,Bb.getTransformReply)(r,n);return function(...a){let o=new wL.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;c.preserve=o.preserve;let u=o.firstKey;return this._self.addCommand(u,r.IS_READ_ONLY,c,i)}}static#n(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new wL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.#h(o,e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,Bb.attachConfig)({BaseClass:t,commands:Dlr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;#c=!0;constructor(e,r,n,s){this.#a=new Blr.default(s),this.#o=e,this.#s=r,this.#i=n}#l(e,r){this.#i??=e,this.#c&&=r}addCommand(e,r,n,s){return this.#l(e,r),this.#a.addCommand(n,s),this}#h(e,r,n,s,i){return this.#l(e,r),this.#a.addScript(n,s,i),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#i,this.#c,this.#a.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#i,this.#c,this.#a.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};ZC.default=Ore});var rJe=E(Eu=>{"use strict";var Llr=Eu&&Eu.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Mlr=Eu&&Eu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Wlr=Eu&&Eu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Llr(e,t,r);return Mlr(e,t),e},tJe=Eu&&Eu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Eu,"__esModule",{value:!0});var $lr=yu(),Flr=require("node:events"),Ag=Ml(),eJe=Wlr(XYe()),Ulr=tJe(ZYe()),qlr=Ol(),RL=Pl(),jlr=zz(),Hlr=tJe(_L()),Pre=class t extends Flr.EventEmitter{static#e(e,r){let n=(0,Ag.getTransformReply)(e,r);return async function(...s){let i=new RL.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#t(e,r){let n=(0,Ag.getTransformReply)(e,r);return async function(...s){let i=new RL.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._self._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#r(e,r,n){let s=(0,Ag.functionArgumentsPrefix)(e,r),i=(0,Ag.getTransformReply)(r,n);return async function(...a){let o=new RL.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._execute(o.firstKey,r.IS_READ_ONLY,this._self._commandOptions,(c,u)=>c._executeCommand(r,o,u,i))}}static#n(e,r){let n=(0,Ag.scriptArgumentsPrefix)(e),s=(0,Ag.getTransformReply)(e,r);return async function(...i){let a=new RL.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(a.firstKey,e.IS_READ_ONLY,this._commandOptions,(o,c)=>o._executeScript(e,a,c,s))}}static#a=new Hlr.default;static factory(e){let r=t.#a.get(e);return r||(r=(0,Ag.attachConfig)({BaseClass:t,commands:$lr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),r.prototype.Multi=Ulr.default.extend(e),t.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}_options;_slots;_self=this;_commandOptions;get slots(){return this._self._slots.slots}get clientSideCache(){return this._self._slots.clientSideCache}get masters(){return this._self._slots.masters}get replicas(){return this._self._slots.replicas}get nodeByAddress(){return this._self._slots.nodeByAddress}get pubSubNode(){return this._self._slots.pubSubNode}get isOpen(){return this._self._slots.isOpen}constructor(e){super(),this._options=e,this._slots=new eJe.default(e,this.emit.bind(this)),this.on(eJe.RESUBSCRIBE_LISTENERS_EVENT,this.resubscribeAllPubSubListeners.bind(this)),e?.commandOptions&&(this._commandOptions=e.commandOptions)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self._options,commandOptions:this._commandOptions,...e})}async connect(){return await this._self._slots.connect(),this}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}_handleAsk(e){return async(r,n)=>{let s=Symbol("asking chain"),i=n?{...n}:{};return i.chainId=s,(await Promise.all([r.sendCommand([jlr.ASKING_CMD],{chainId:s}),e(r,i)]))[1]}}async _execute(e,r,n,s){let i=this._options.maxCommandRedirections??16,{client:a,slotNumber:o}=await this._slots.getClientAndSlotNumber(e,r),c=0,u=s;for(;;)try{let l=n??{};return l.slotNumber=o,await u(a,l)}catch(l){if(u=s,++c>i||!(l instanceof Error))throw l;if(l.message.startsWith("ASK")){let d=l.message.substring(l.message.lastIndexOf(" ")+1),f=await this._slots.getMasterByAddress(d);if(f||(await this._slots.rediscover(a),f=await this._slots.getMasterByAddress(d)),!f)throw new Error(`Cannot find node ${d}`);a=f,u=this._handleAsk(s);continue}if(l.message.startsWith("MOVED")){await this._slots.rediscover(a);let d=await this._slots.getClientAndSlotNumber(e,r);a=d.client,o=d.slotNumber;continue}throw l}}async sendCommand(e,r,n,s){let i={...this._self._commandOptions,...s};return this._self._execute(e,r,i,(a,o)=>a.sendCommand(n,o))}MULTI(e){return new this.Multi(async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executeMulti(s)},async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executePipeline(s)},e,this._commandOptions?.typeMapping)}multi=this.MULTI;async SUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).SUBSCRIBE(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.UNSUBSCRIBE(e,r,n))}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).PSUBSCRIBE(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.PUNSUBSCRIBE(e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;async SSUBSCRIBE(e,r,n){let s=this._self._options.maxCommandRedirections??16,i=Array.isArray(e)?e[0]:e,a=await this._self._slots.getShardedPubSubClient(i);for(let o=0;;o++)try{return await a.SSUBSCRIBE(e,r,n)}catch(c){if(++o>s||!(c instanceof qlr.ErrorReply))throw c;if(c.message.startsWith("MOVED")){await this._self._slots.rediscover(a),a=await this._self._slots.getShardedPubSubClient(i);continue}throw c}}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(e,r,n){return this._self._slots.executeShardedUnsubscribeCommand(Array.isArray(e)?e[0]:e,s=>s.SUNSUBSCRIBE(e,r,n))}resubscribeAllPubSubListeners(e){if(e.CHANNELS)for(let[r,n]of e.CHANNELS)n.buffers.forEach(s=>{this.subscribe(r,s,!0)}),n.strings.forEach(s=>{this.subscribe(r,s)});if(e.PATTERNS)for(let[r,n]of e.PATTERNS)n.buffers.forEach(s=>{this.pSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.pSubscribe(r,s)});if(e.SHARDED)for(let[r,n]of e.SHARDED)n.buffers.forEach(s=>{this.sSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.sSubscribe(r,s)})}sUnsubscribe=this.SUNSUBSCRIBE;quit(){return this._self._slots.quit()}disconnect(){return this._self._slots.disconnect()}close(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.close()}destroy(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.destroy()}nodeClient(e){return this._self._slots.nodeClient(e)}getRandomNode(){return this._self._slots.getRandomNode()}getSlotRandomNode(e){return this._self._slots.getSlotRandomNode(e)}getMasters(){return this.masters}getSlotMaster(e){return this.slots[e].master}};Eu.default=Pre});var sJe=E(si=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});si.getMappedNode=si.createScriptCommand=si.createModuleCommand=si.createFunctionCommand=si.createCommand=si.clientSocketToNode=si.createNodeList=si.parseNode=void 0;var NL=Pl(),Lb=Ml();function nJe(t){if(!(t.flags.includes("s_down")||t.flags.includes("disconnected")||t.flags.includes("failover_in_progress")))return{host:t.ip,port:Number(t.port)}}si.parseNode=nJe;function Qlr(t){var e=[];for(let r of t){let n=nJe(r);n!==void 0&&e.push(n)}return e}si.createNodeList=Qlr;function Glr(t){let e=t;return{host:e.host,port:e.port}}si.clientSocketToNode=Glr;function Klr(t,e){let r=(0,Lb.getTransformReply)(t,e);return async function(...n){let s=new NL.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this.commandOptions,r))}}si.createCommand=Klr;function Vlr(t,e,r){let n=(0,Lb.functionArgumentsPrefix)(t,e),s=(0,Lb.getTransformReply)(e,r);return async function(...i){let a=new NL.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(e.IS_READ_ONLY,o=>o._executeCommand(e,a,this._self.commandOptions,s))}}si.createFunctionCommand=Vlr;function zlr(t,e){let r=(0,Lb.getTransformReply)(t,e);return async function(...n){let s=new NL.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this._self.commandOptions,r))}}si.createModuleCommand=zlr;function Ylr(t,e){let r=(0,Lb.scriptArgumentsPrefix)(t),n=(0,Lb.getTransformReply)(t,e);return async function(...s){let i=new NL.BasicCommandParser;return i.push(...r),t.parseCommand(i,...s),this._self._execute(t.IS_READ_ONLY,a=>a._executeScript(t,i,this.commandOptions,n))}}si.createScriptCommand=Ylr;function Jlr(t,e,r){if(r===void 0)return{host:t,port:e};let n=`${t}:${e}`;switch(typeof r){case"object":return r[n]??{host:t,port:e};case"function":return r(n)??{host:t,port:e}}}si.getMappedNode=Jlr});var aJe=E(eT=>{"use strict";var Xlr=eT&&eT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(eT,"__esModule",{value:!0});var Zlr=yu(),iJe=Xlr(VC()),Mb=Ml(),OL=Pl(),kre=class t{static _createCommand(e,r){let n=(0,Mb.getTransformReply)(e,r);return function(...s){let i=new OL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(e.IS_READ_ONLY,a,n)}}static _createModuleCommand(e,r){let n=(0,Mb.getTransformReply)(e,r);return function(...s){let i=new OL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(e.IS_READ_ONLY,a,n)}}static _createFunctionCommand(e,r,n){let s=(0,Mb.functionArgumentsPrefix)(e,r),i=(0,Mb.getTransformReply)(r,n);return function(...a){let o=new OL.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(r.IS_READ_ONLY,c,i)}}static _createScriptCommand(e,r){let n=(0,Mb.getTransformReply)(e,r);return function(...s){let i=new OL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#a(e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,Mb.attachConfig)({BaseClass:t,commands:Zlr.NON_STICKY_COMMANDS,createCommand:t._createCommand,createModuleCommand:t._createModuleCommand,createFunctionCommand:t._createFunctionCommand,createScriptCommand:t._createScriptCommand,config:e})}#e=new iJe.default;#t;#r=!0;constructor(e,r){this.#e=new iJe.default(r),this.#t=e}#n(e){this.#r&&=e}addCommand(e,r,n){return this.#n(e),this.#e.addCommand(r,n),this}#a(e,r,n,s){return this.#n(e),this.#e.addScript(r,n,s),this}async exec(e=!1){return e?this.execAsPipeline():this.#e.transformReplies(await this.#t._executeMulti(this.#r,this.#e.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#e.queue.length===0?[]:this.#e.transformReplies(await this.#t._executePipeline(this.#r,this.#e.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};eT.default=kre});var uJe=E(Wb=>{"use strict";var cJe=Wb&&Wb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Wb,"__esModule",{value:!0});Wb.PubSubProxy=void 0;var edr=cJe(require("node:events")),H0=QC(),oJe=cJe(Ob()),Dre=class extends edr.default{#e;#t;#r;#n;#a;constructor(e,r){super(),this.#e=e,this.#t=r}#o(){if(this.#r===void 0)throw new Error("pubSubProxy: didn't define node to do pubsub against");return new oJe.default({...this.#e,socket:{...this.#e.socket,host:this.#r.host,port:this.#r.port}})}async#s(e=!1){let r=this.#o().on("error",this.#t),n=r.connect().then(async s=>this.#n?.client!==s?(s.destroy(),this.#n?.connectPromise):(e&&this.#a&&await Promise.all([s.extendPubSubListeners(H0.PUBSUB_TYPE.CHANNELS,this.#a[H0.PUBSUB_TYPE.CHANNELS]),s.extendPubSubListeners(H0.PUBSUB_TYPE.PATTERNS,this.#a[H0.PUBSUB_TYPE.PATTERNS])]),this.#n.client!==s?(s.destroy(),this.#n?.connectPromise):(this.#n.connectPromise=void 0,s))).catch(s=>{throw this.#n=void 0,s});return this.#n={client:r,connectPromise:n},n}#i(){return this.#n?this.#n.connectPromise??this.#n.client:this.#s()}async changeNode(e){this.#r=e,this.#n&&(this.#n.connectPromise===void 0&&(this.#a={[H0.PUBSUB_TYPE.CHANNELS]:this.#n.client.getPubSubListeners(H0.PUBSUB_TYPE.CHANNELS),[H0.PUBSUB_TYPE.PATTERNS]:this.#n.client.getPubSubListeners(H0.PUBSUB_TYPE.PATTERNS)},this.#n.client.destroy()),await this.#s(!0))}#c(e){let r=this.#i();return r instanceof oJe.default?e(r):r.then(n=>{if(n!==void 0)return e(n)}).catch(n=>{throw this.#n?.client.isPubSubActive&&(this.#n.client.destroy(),this.#n=void 0),n})}subscribe(e,r,n){return this.#c(s=>s.SUBSCRIBE(e,r,n))}#l(e){return this.#c(async r=>{let n=await e(r);return r.isPubSubActive||(r.destroy(),this.#n=void 0),n})}async unsubscribe(e,r,n){return this.#l(s=>s.UNSUBSCRIBE(e,r,n))}async pSubscribe(e,r,n){return this.#c(s=>s.PSUBSCRIBE(e,r,n))}async pUnsubscribe(e,r,n){return this.#l(s=>s.PUNSUBSCRIBE(e,r,n))}destroy(){this.#a=void 0,this.#n!==void 0&&(this.#n.connectPromise||this.#n.client.destroy(),this.#n=void 0)}};Wb.PubSubProxy=Dre});var lJe=E(Bre=>{"use strict";Object.defineProperty(Bre,"__esModule",{value:!0});var tdr=Ce();Bre.default={parseCommand(t,e){t.push("SENTINEL","MASTER",e)},transformReply:{2:tdr.transformTuplesReply,3:void 0}}});var dJe=E(Lre=>{"use strict";Object.defineProperty(Lre,"__esModule",{value:!0});Lre.default={parseCommand(t,e,r,n,s){t.push("SENTINEL","MONITOR",e,r,n,s)},transformReply:void 0}});var fJe=E(Mre=>{"use strict";Object.defineProperty(Mre,"__esModule",{value:!0});var rdr=Ce();Mre.default={parseCommand(t,e){t.push("SENTINEL","REPLICAS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,rdr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var pJe=E(Wre=>{"use strict";Object.defineProperty(Wre,"__esModule",{value:!0});var ndr=Ce();Wre.default={parseCommand(t,e){t.push("SENTINEL","SENTINELS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,ndr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var mJe=E($re=>{"use strict";Object.defineProperty($re,"__esModule",{value:!0});$re.default={parseCommand(t,e,r){t.push("SENTINEL","SET",e);for(let n of r)t.push(n.option,n.value)},transformReply:void 0}});var bJe=E(tT=>{"use strict";var rT=tT&&tT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(tT,"__esModule",{value:!0});var hJe=rT(lJe()),gJe=rT(dJe()),AJe=rT(fJe()),yJe=rT(pJe()),xJe=rT(mJe());tT.default={SENTINEL_SENTINELS:yJe.default,sentinelSentinels:yJe.default,SENTINEL_MASTER:hJe.default,sentinelMaster:hJe.default,SENTINEL_REPLICAS:AJe.default,sentinelReplicas:AJe.default,SENTINEL_MONITOR:gJe.default,sentinelMonitor:gJe.default,SENTINEL_SET:xJe.default,sentinelSet:xJe.default}});var EJe=E(nT=>{"use strict";var sdr=nT&&nT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(nT,"__esModule",{value:!0});var idr=sdr(bJe());nT.default={sentinel:idr.default}});var SJe=E(PL=>{"use strict";Object.defineProperty(PL,"__esModule",{value:!0});PL.WaitQueue=void 0;var _Je=pL(),Fre=class{#e=new _Je.SinglyLinkedList;#t=new _Je.SinglyLinkedList;push(e){let r=this.#t.shift();if(r!==void 0){r(e);return}this.#e.push(e)}shift(){return this.#e.shift()}wait(){return new Promise(e=>this.#t.push(e))}};PL.WaitQueue=Fre});var wJe=E(Cf=>{"use strict";var Hre=Cf&&Cf.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Cf,"__esModule",{value:!0});Cf.RedisSentinelFactory=Cf.RedisSentinelClient=void 0;var Qre=require("node:events"),$b=Hre(Ob()),IJe=Ml(),CJe=yu(),Fn=sJe(),TJe=Hre(aJe()),adr=uJe(),odr=require("node:timers/promises"),kL=Hre(EJe()),cdr=SJe(),vJe=Rb(),sT=class t{#e;#t;_self;get isOpen(){return this._self.#t.isOpen}get isReady(){return this._self.#t.isReady}get commandOptions(){return this._self.#r}#r;constructor(e,r,n){this._self=this,this.#t=e,this.#e=r,this.#r=n}static factory(e){let r=(0,IJe.attachConfig)({BaseClass:t,commands:CJe.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=TJe.default.extend(e),(n,s,i)=>Object.create(new r(n,s,i))}static create(e,r,n,s){return t.factory(e)(r,n,s)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._self.#r??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async _execute(e,r){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return await this._self.#t.execute(r,this._self.#e)}async sendCommand(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;WATCH(e){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,r=>r.watch(e))}watch=this.WATCH;UNWATCH(){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,e=>e.unwatch())}unwatch=this.UNWATCH;release(){if(this._self.#e===void 0)throw new Error("RedisSentinelClient lease already released");let e=this._self.#t.releaseClientLease(this._self.#e);return this._self.#e=void 0,e}};Cf.RedisSentinelClient=sT;var Ure=class t extends Qre.EventEmitter{_self;#e;#t;get isOpen(){return this._self.#e.isOpen}get isReady(){return this._self.#e.isReady}get commandOptions(){return this._self.#r}#r;#n=()=>{};#a;#o=0;#s;get clientSideCache(){return this._self.#e.clientSideCache}constructor(e){super(),this._self=this,this.#t=e,e.commandOptions&&(this.#r=e.commandOptions),this.#e=new qre(e),this.#e.on("error",r=>this.emit("error",r)),this.#e.on("topology-change",r=>{this.emit("topology-change",r)||this._self.#n(`RedisSentinel: re-emit for topology-change for ${r.type} event returned false`)})}static factory(e){let r=(0,IJe.attachConfig)({BaseClass:t,commands:CJe.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=TJe.default.extend(e),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._self.#r={...this._self.#r||{},[e]:r},n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async connect(){return await this._self.#e.connect(),this._self.#t.reserveClient&&(this._self.#a=await this._self.#e.getClientLease()),this}async _execute(e,r){let n;(!e||!this._self.#e.useReplicas)&&(this._self.#a?n=this._self.#a:(this._self.#s??=await this._self.#e.getClientLease(),n=this._self.#s,this._self.#o++));try{return await this._self.#e.execute(r,n)}finally{if(n!==void 0&&n===this._self.#s&&--this._self.#o===0){let s=this._self.#e.releaseClientLease(n);this._self.#s=void 0,s&&await s}}}async use(e){let r=await this._self.#e.getClientLease();try{return await e(sT.create(this._self.#t,this._self.#e,r,this._self.#r))}finally{let n=this._self.#e.releaseClientLease(r);n&&await n}}async sendCommand(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;async close(){return this._self.#e.close()}destroy(){return this._self.#e.destroy()}async SUBSCRIBE(e,r,n){return this._self.#e.subscribe(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self.#e.unsubscribe(e,r,n)}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return this._self.#e.pSubscribe(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self.#e.pUnsubscribe(e,r,n)}pUnsubscribe=this.PUNSUBSCRIBE;async acquire(){let e=await this._self.#e.getClientLease();return sT.create(this._self.#t,this._self.#e,e,this._self.#r)}getSentinelNode(){return this._self.#e.getSentinelNode()}getMasterNode(){return this._self.#e.getMasterNode()}getReplicaNodes(){return this._self.#e.getReplicaNodes()}setTracer(e){e?this._self.#n=r=>{e.push(r)}:this._self.#n=()=>{},this._self.#e.setTracer(e)}};Cf.default=Ure;var qre=class extends Qre.EventEmitter{#e=!1;get isOpen(){return this.#e}#t=!1;get isReady(){return this.#t}#r;#n;#a;#o;#s;#i;#c;#l=!1;#h=0;#p;#d;#f=[];#m;#y;#g=[];#E=0;#S;get useReplicas(){return this.#S>0}#A;#I;#_;#v;#b=!1;#u=()=>{};#x;get clientSideCache(){return this.#x}#P(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e){if(super(),this.#P(e),this.#r=e.name,this.#c=e.RESP,this.#p=Array.from(e.sentinelRootNodes),this.#I=e.maxCommandRediscovers??16,this.#y=e.masterPoolSize??1,this.#S=e.replicaPoolSize??0,this.#o=e.nodeAddressMap,this.#s=e.scanInterval??0,this.#i=e.passthroughClientErrorEvents??!1,this.#n=e.nodeClientOptions?{...e.nodeClientOptions}:{},this.#n.url!==void 0)throw new Error("invalid nodeClientOptions for Sentinel");if(e.clientSideCache)if(e.clientSideCache instanceof vJe.PooledClientSideCacheProvider)this.#x=this.#n.clientSideCache=e.clientSideCache;else{let r=e.clientSideCache;this.#x=this.#n.clientSideCache=new vJe.BasicPooledClientSideCache(r)}if(this.#a=e.sentinelClientOptions?Object.assign({},e.sentinelClientOptions):{},this.#a.modules=kL.default,this.#a.url!==void 0)throw new Error("invalid sentinelClientOptions for Sentinel");this.#m=new cdr.WaitQueue;for(let r=0;r<this.#y;r++)this.#m.push(r);this.#_=new adr.PubSubProxy(this.#n,r=>this.emit("error",r))}#T(e,r,n){let s=(0,Fn.getMappedNode)(e.host,e.port,this.#o);return $b.default.create({RESP:this.#c,...r,socket:{...r.socket,host:s.host,port:s.port,...n!==void 0&&{reconnectStrategy:n}}})}getClientLease(){let e=this.#m.shift();return e!==void 0?Promise.resolve({id:e}):this.#m.wait().then(r=>({id:r}))}releaseClientLease(e){let r=this.#f[e.id];if(r!==void 0){let n=r.resetIfDirty();if(n)return n.then(()=>this.#m.push(e.id))}this.#m.push(e.id)}async connect(){if(this.#e)throw new Error("already attempting to open");try{this.#e=!0,this.#A=this.#C(),await this.#A,this.#t=!0}finally{this.#A=void 0,this.#s>0&&(this.#v=setInterval(this.#O.bind(this),this.#s))}}async#C(){let e=0;for(;;){if(this.#u("starting connect loop"),e+=1,this.#b){this.#u("in #connect and want to destroy");return}try{if(this.#l=!1,await this.transform(this.analyze(await this.observe())),this.#l){this.#u("#connect: anotherReset is true, so continuing");continue}this.#u("#connect: returning");return}catch(r){if(this.#u(`#connect: exception ${r.message}`),!this.#t&&e>this.#I)throw r;r.message!=="no valid master node"&&console.log(r),await(0,odr.setTimeout)(1e3)}finally{this.#u("finished connect")}}}async execute(e,r){let n=0;for(;;){this.#A!==void 0&&await this.#A;let s=this.#R(r);if(!s.isReady){await this.#O();continue}let i=s.options?.socket;this.#u("attemping to send command to "+i?.host+":"+i?.port);try{return await e(s)}catch(a){if(++n>this.#I||!(a instanceof Error))throw a;if(r!==void 0&&(a.message.startsWith("READONLY")||!s.isReady)){await this.#O();continue}throw a}}}async#N(e){return await e.pSubscribe(["switch-master","[-+]sdown","+slave","+sentinel","[-+]odown","+slave-reconf-done"],(r,n)=>{this.#M(n,r)},!0),e}async#M(e,r){this.#u("pubsub control channel message on "+e),this.#O()}#R(e){if(e!==void 0)return this.#f[e.id];if(this.#E>=this.#g.length&&(this.#E=0),this.#g.length==0)throw new Error("no replicas available for read");return this.#g[this.#E++]}async#O(){if(!(this.#t==!1||this.#b==!0)){if(this.#A!==void 0)return this.#l=!0,await this.#A;try{return this.#A=this.#C(),await this.#A}finally{this.#u("finished reconfgure"),this.#A=void 0}}}#k(e){let r=this.#p.findIndex(n=>n.host===e.host&&n.port===e.port);r!==-1&&this.#p.splice(r,1),this.#O()}async close(){this.#b=!0,this.#A!=null&&await this.#A,this.#t=!1,this.#x?.onPoolClose(),this.#v&&(clearInterval(this.#v),this.#v=void 0);let e=[];this.#d!==void 0&&(this.#d.isOpen&&e.push(this.#d.close()),this.#d=void 0);for(let r of this.#f)r.isOpen&&e.push(r.close());this.#f=[];for(let r of this.#g)r.isOpen&&e.push(r.close());this.#g=[],await Promise.all(e),this.#_.destroy(),this.#e=!1}async destroy(){this.#b=!0,this.#A!=null&&await this.#A,this.#t=!1,this.#x?.onPoolClose(),this.#v&&(clearInterval(this.#v),this.#v=void 0),this.#d!==void 0&&(this.#d.isOpen&&this.#d.destroy(),this.#d=void 0);for(let e of this.#f)e.isOpen&&e.destroy();this.#f=[];for(let e of this.#g)e.isOpen&&e.destroy();this.#g=[],this.#_.destroy(),this.#e=!1,this.#b=!1}async subscribe(e,r,n){return this.#_.subscribe(e,r,n)}async unsubscribe(e,r,n){return this.#_.unsubscribe(e,r,n)}async pSubscribe(e,r,n){return this.#_.pSubscribe(e,r,n)}async pUnsubscribe(e,r,n){return this.#_.pUnsubscribe(e,r,n)}async observe(){for(let e of this.#p){let r;try{this.#u(`observe: trying to connect to sentinel: ${e.host}:${e.port}`),r=this.#T(e,this.#a,!1),r.on("error",o=>this.emit("error",`obseve client error: ${o}`)),await r.connect(),this.#u("observe: connected to sentinel");let[n,s,i]=await Promise.all([r.sentinel.sentinelSentinels(this.#r),r.sentinel.sentinelMaster(this.#r),r.sentinel.sentinelReplicas(this.#r)]);return this.#u("observe: got all sentinel data"),{sentinelConnected:e,sentinelData:n,masterData:s,replicaData:i,currentMaster:this.getMasterNode(),currentReplicas:this.getReplicaNodes(),currentSentinel:this.getSentinelNode(),replicaPoolSize:this.#S,useReplicas:this.useReplicas}}catch(n){this.#u(`observe: error ${n}`),this.emit("error",n)}finally{r!==void 0&&r.isOpen&&(this.#u("observe: destroying sentinel client"),r.destroy())}}throw this.#u("observe: none of the sentinels are available"),new Error("None of the sentinels are available")}analyze(e){let r=(0,Fn.parseNode)(e.masterData);if(r===void 0)throw this.#u(`analyze: no valid master node because ${e.masterData.flags}`),new Error("no valid master node");r.host===e.currentMaster?.host&&r.port===e.currentMaster?.port?(this.#u(`analyze: master node hasn't changed from ${e.currentMaster?.host}:${e.currentMaster?.port}`),r=void 0):this.#u(`analyze: master node has changed to ${r.host}:${r.port} from ${e.currentMaster?.host}:${e.currentMaster?.port}`);let n=e.sentinelConnected;n.host===e.currentSentinel?.host&&n.port===e.currentSentinel.port?(this.#u("analyze: sentinel node hasn't changed"),n=void 0):this.#u(`analyze: sentinel node has changed to ${n.host}:${n.port}`);let s=[],i=new Map,a=new Set,o=new Set;if(e.useReplicas){let u=(0,Fn.createNodeList)(e.replicaData);for(let l of u)a.add(JSON.stringify(l));for(let[l,d]of e.currentReplicas)a.has(JSON.stringify(l))?(o.add(JSON.stringify(l)),d!=e.replicaPoolSize&&(i.set(l,e.replicaPoolSize-d),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))):(s.push(l),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToClose`));for(let l of u)o.has(JSON.stringify(l))||(i.set(l,e.replicaPoolSize),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))}return{sentinelList:[e.sentinelConnected].concat((0,Fn.createNodeList)(e.sentinelData)),epoch:Number(e.masterData["config-epoch"]),sentinelToOpen:n,masterToOpen:r,replicasToClose:s,replicasToOpen:i}}async transform(e){this.#u("transform: enter");let r=[];if(e.sentinelToOpen){this.#u("transform: opening a new sentinel"),this.#d!==void 0&&this.#d.isOpen?(this.#u("transform: destroying old sentinel as open"),this.#d.destroy(),this.#d=void 0):this.#u("transform: not destroying old sentinel as not open"),this.#u(`transform: creating new sentinel to ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let a=e.sentinelToOpen,o=this.#T(e.sentinelToOpen,this.#a,!1);o.on("error",l=>{this.#i&&this.emit("error",new Error(`Sentinel Client (${a.host}:${a.port}): ${l.message}`,{cause:l}));let d={type:"SENTINEL",node:(0,Fn.clientSocketToNode)(o.options.socket),error:l};this.emit("client-error",d),this.#k(a)}).on("end",()=>this.#k(a)),this.#d=o,this.#u("transform: adding sentinel client connect() to promise list");let c=this.#d.connect().then(l=>this.#N(l));r.push(c),this.#u(`created sentinel client to ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let u={type:"SENTINEL_CHANGE",node:e.sentinelToOpen};this.#u("transform: emiting topology-change event for sentinel_change"),this.emit("topology-change",u)||this.#u("transform: emit for topology-change for sentinel_change returned false")}if(e.masterToOpen){this.#u("transform: opening a new master");let a=[],o=[];this.#u("transform: destroying old masters if open");for(let u of this.#f)o.push(u.isWatching||u.isDirtyWatch),u.isOpen&&u.destroy();this.#f=[],this.#u("transform: creating all master clients and adding connect promises");for(let u=0;u<this.#y;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 p={type:"MASTER",node:(0,Fn.clientSocketToNode)(d.options.socket),error:f};this.emit("client-error",p)}),o[u]&&d.setDirtyWatch("sentinel config changed in middle of a WATCH Transaction"),this.#f.push(d),a.push(d.connect()),this.#u(`created master client to ${e.masterToOpen.host}:${e.masterToOpen.port}`)}this.#u("transform: adding promise to change #pubSubProxy node"),a.push(this.#_.changeNode(e.masterToOpen)),r.push(...a);let c={type:"MASTER_CHANGE",node:e.masterToOpen};this.#u("transform: emiting topology-change event for master_change"),this.emit("topology-change",c)||this.#u("transform: emit for topology-change for master_change returned false"),this.#h++}let n=new Set;for(let a of e.replicasToClose){let o=JSON.stringify(a);n.add(o)}let s=[],i=new Set;for(let a of this.#g){let o=(0,Fn.clientSocketToNode)(a.options.socket),c=JSON.stringify(o);if(n.has(c)||!a.isOpen){if(a.isOpen){let u=a.options?.socket;this.#u(`destroying replica client to ${u?.host}:${u?.port}`),a.destroy()}if(!i.has(c)){let u={type:"REPLICA_REMOVE",node:o};this.emit("topology-change",u),i.add(c)}}else s.push(a)}if(this.#g=s,e.replicasToOpen.size!=0)for(let[a,o]of e.replicasToOpen){for(let u=0;u<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=()=>{}}},jre=class extends Qre.EventEmitter{options;#e;#t=-1;constructor(e){super(),this.options=e,this.#e=e.sentinelRootNodes}async updateSentinelRootNodes(){for(let e of this.#e){let r=$b.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:e.host,port:e.port,reconnectStrategy:!1},modules:kL.default}).on("error",n=>this.emit(`updateSentinelRootNodes: ${n}`));try{await r.connect()}catch{r.isOpen&&r.destroy();continue}try{let n=await r.sentinel.sentinelSentinels(this.options.name);this.#e=[e].concat((0,Fn.createNodeList)(n));return}finally{r.destroy()}}throw new Error("Couldn't connect to any sentinel node")}async getMasterNode(){let e=!1;for(let r of this.#e){let n=$b.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:kL.default}).on("error",s=>this.emit(`getMasterNode: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelMaster(this.options.name),i=(0,Fn.parseNode)(s);if(i===void 0)continue;return i}finally{n.destroy()}}throw e?new Error("Master Node Not Enumerated"):new Error("couldn't connect to any sentinels")}async getMasterClient(){let e=await this.getMasterNode(),r=(0,Fn.getMappedNode)(e.host,e.port,this.options.nodeAddressMap);return $b.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:r.host,port:r.port}})}async getReplicaNodes(){let e=!1;for(let r of this.#e){let n=$b.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:kL.default}).on("error",s=>this.emit(`getReplicaNodes: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelReplicas(this.options.name),i=(0,Fn.createNodeList)(s);if(i.length==0)continue;return i}finally{n.destroy()}}throw e?new Error("No Replicas Nodes Enumerated"):new Error("couldn't connect to any sentinels")}async getReplicaClient(){let e=await this.getReplicaNodes();if(e.length==0)throw new Error("no available replicas");this.#t++,this.#t>=e.length&&(this.#t=0);let r=e[this.#t],n=(0,Fn.getMappedNode)(r.host,r.port,this.options.nodeAddressMap);return $b.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:n.host,port:n.port}})}};Cf.RedisSentinelFactory=jre});var aT=E(Gt=>{"use strict";var udr=Gt&&Gt.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),ldr=Gt&&Gt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&udr(e,t,r)},Gre=Gt&&Gt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Gt,"__esModule",{value:!0});Gt.BasicPooledClientSideCache=Gt.BasicClientSideCache=Gt.REDIS_FLUSH_MODES=Gt.COMMAND_LIST_FILTER_BY=Gt.CLUSTER_SLOT_STATES=Gt.FAILOVER_MODES=Gt.CLIENT_KILL_FILTERS=Gt.GEO_REPLY_WITH=Gt.createSentinel=Gt.createCluster=Gt.createClientPool=Gt.createClient=Gt.digest=Gt.defineScript=Gt.VerbatimString=Gt.RESP_TYPES=void 0;var ddr=eL();Object.defineProperty(Gt,"RESP_TYPES",{enumerable:!0,get:function(){return ddr.RESP_TYPES}});var fdr=fz();Object.defineProperty(Gt,"VerbatimString",{enumerable:!0,get:function(){return fdr.VerbatimString}});var pdr=rWe();Object.defineProperty(Gt,"defineScript",{enumerable:!0,get:function(){return pdr.defineScript}});var mdr=nWe();Object.defineProperty(Gt,"digest",{enumerable:!0,get:function(){return mdr.digest}});ldr(Ol(),Gt);var hdr=Gre(Ob());Gt.createClient=hdr.default.create;var gdr=wre();Gt.createClientPool=gdr.RedisClientPool.create;var Adr=Gre(rJe());Gt.createCluster=Adr.default.create;var ydr=Gre(wJe());Gt.createSentinel=ydr.default.create;var xdr=XI();Object.defineProperty(Gt,"GEO_REPLY_WITH",{enumerable:!0,get:function(){return xdr.GEO_REPLY_WITH}});var iT=yu();Object.defineProperty(Gt,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return iT.CLIENT_KILL_FILTERS}});Object.defineProperty(Gt,"FAILOVER_MODES",{enumerable:!0,get:function(){return iT.FAILOVER_MODES}});Object.defineProperty(Gt,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return iT.CLUSTER_SLOT_STATES}});Object.defineProperty(Gt,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return iT.COMMAND_LIST_FILTER_BY}});Object.defineProperty(Gt,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return iT.REDIS_FLUSH_MODES}});var RJe=Rb();Object.defineProperty(Gt,"BasicClientSideCache",{enumerable:!0,get:function(){return RJe.BasicClientSideCache}});Object.defineProperty(Gt,"BasicPooledClientSideCache",{enumerable:!0,get:function(){return RJe.BasicPooledClientSideCache}})});var NJe=E(Kre=>{"use strict";Object.defineProperty(Kre,"__esModule",{value:!0});var bdr=Ce();Kre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.ADD"),t.pushKey(e),t.push(r)},transformReply:bdr.transformBooleanReply}});var OJe=E(Vre=>{"use strict";Object.defineProperty(Vre,"__esModule",{value:!0});Vre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.CARD"),t.pushKey(e)},transformReply:void 0}});var PJe=E(zre=>{"use strict";Object.defineProperty(zre,"__esModule",{value:!0});var Edr=Ce();zre.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:Edr.transformBooleanReply}});var Yre=E(DL=>{"use strict";Object.defineProperty(DL,"__esModule",{value:!0});DL.transformInfoV2Reply=void 0;var _dr=aT();function Sdr(t,e){switch(e?e[_dr.RESP_TYPES.MAP]:void 0){case Array:return t;case Map:{let n=new Map;for(let s=0;s<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}}}DL.transformInfoV2Reply=Sdr});var kJe=E(Jre=>{"use strict";Object.defineProperty(Jre,"__esModule",{value:!0});var vdr=Yre();Jre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,vdr.transformInfoV2Reply)(t,r),3:void 0}}});var DJe=E(Xre=>{"use strict";Object.defineProperty(Xre,"__esModule",{value:!0});var Idr=Ce();Xre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.INSERT"),t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.ERROR!==void 0&&t.push("ERROR",n.ERROR.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString()),n?.NOCREATE&&t.push("NOCREATE"),n?.NONSCALING&&t.push("NONSCALING"),t.push("ITEMS"),t.pushVariadic(r)},transformReply:Idr.transformBooleanArrayReply}});var BJe=E(Zre=>{"use strict";Object.defineProperty(Zre,"__esModule",{value:!0});Zre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var LJe=E(ene=>{"use strict";Object.defineProperty(ene,"__esModule",{value:!0});var Cdr=Ce();ene.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.MADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:Cdr.transformBooleanArrayReply}});var MJe=E(tne=>{"use strict";Object.defineProperty(tne,"__esModule",{value:!0});var Tdr=Ce();tne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.MEXISTS"),t.pushKey(e),t.pushVariadic(r)},transformReply:Tdr.transformBooleanArrayReply}});var WJe=E(rne=>{"use strict";Object.defineProperty(rne,"__esModule",{value:!0});rne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("BF.RESERVE"),t.pushKey(e),t.push(r.toString(),n.toString()),s?.EXPANSION&&t.push("EXPANSION",s.EXPANSION.toString()),s?.NONSCALING&&t.push("NONSCALING")},transformReply:void 0}});var $Je=E(nne=>{"use strict";Object.defineProperty(nne,"__esModule",{value:!0});nne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var Fb=E($l=>{"use strict";var wdr=$l&&$l.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Rdr=$l&&$l.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&wdr(e,t,r)},Fl=$l&&$l.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($l,"__esModule",{value:!0});var FJe=Fl(NJe()),UJe=Fl(OJe()),qJe=Fl(PJe()),jJe=Fl(kJe()),HJe=Fl(DJe()),QJe=Fl(BJe()),GJe=Fl(LJe()),KJe=Fl(MJe()),VJe=Fl(WJe()),zJe=Fl($Je());Rdr(Yre(),$l);$l.default={ADD:FJe.default,add:FJe.default,CARD:UJe.default,card:UJe.default,EXISTS:qJe.default,exists:qJe.default,INFO:jJe.default,info:jJe.default,INSERT:HJe.default,insert:HJe.default,LOADCHUNK:QJe.default,loadChunk:QJe.default,MADD:GJe.default,mAdd:GJe.default,MEXISTS:KJe.default,mExists:KJe.default,RESERVE:VJe.default,reserve:VJe.default,SCANDUMP:zJe.default,scanDump:zJe.default}});var JJe=E(sne=>{"use strict";Object.defineProperty(sne,"__esModule",{value:!0});sne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)YJe(t,n);else YJe(t,r)},transformReply:void 0};function YJe(t,{item:e,incrementBy:r}){t.push(e,r.toString())}});var XJe=E(ine=>{"use strict";Object.defineProperty(ine,"__esModule",{value:!0});var Ndr=Fb();ine.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CMS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Ndr.transformInfoV2Reply)(t,r),3:void 0}}});var ZJe=E(ane=>{"use strict";Object.defineProperty(ane,"__esModule",{value:!0});ane.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYDIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var eXe=E(one=>{"use strict";Object.defineProperty(one,"__esModule",{value:!0});one.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYPROB"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var tXe=E(cne=>{"use strict";Object.defineProperty(cne,"__esModule",{value:!0});cne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.MERGE"),t.pushKey(e),t.push(r.length.toString()),Odr(r))t.pushVariadic(r);else{for(let n=0;n<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 Odr(t){return typeof t[0]=="string"||t[0]instanceof Buffer}});var rXe=E(une=>{"use strict";Object.defineProperty(une,"__esModule",{value:!0});une.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CMS.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var uXe=E(oT=>{"use strict";var Ub=oT&&oT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(oT,"__esModule",{value:!0});var nXe=Ub(JJe()),sXe=Ub(XJe()),iXe=Ub(ZJe()),aXe=Ub(eXe()),oXe=Ub(tXe()),cXe=Ub(rXe());oT.default={INCRBY:nXe.default,incrBy:nXe.default,INFO:sXe.default,info:sXe.default,INITBYDIM:iXe.default,initByDim:iXe.default,INITBYPROB:aXe.default,initByProb:aXe.default,MERGE:oXe.default,merge:oXe.default,QUERY:cXe.default,query:cXe.default}});var lXe=E(lne=>{"use strict";Object.defineProperty(lne,"__esModule",{value:!0});var Pdr=Ce();lne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADD"),t.pushKey(e),t.push(r)},transformReply:Pdr.transformBooleanReply}});var dXe=E(dne=>{"use strict";Object.defineProperty(dne,"__esModule",{value:!0});var kdr=Ce();dne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADDNX"),t.pushKey(e),t.push(r)},transformReply:kdr.transformBooleanReply}});var fXe=E(fne=>{"use strict";Object.defineProperty(fne,"__esModule",{value:!0});fne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.COUNT"),t.pushKey(e),t.push(r)},transformReply:void 0}});var pXe=E(pne=>{"use strict";Object.defineProperty(pne,"__esModule",{value:!0});var Ddr=Ce();pne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.DEL"),t.pushKey(e),t.push(r)},transformReply:Ddr.transformBooleanReply}});var mXe=E(mne=>{"use strict";Object.defineProperty(mne,"__esModule",{value:!0});var Bdr=Ce();mne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:Bdr.transformBooleanReply}});var hXe=E(hne=>{"use strict";Object.defineProperty(hne,"__esModule",{value:!0});var Ldr=Fb();hne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Ldr.transformInfoV2Reply)(t,r),3:void 0}}});var gne=E(cT=>{"use strict";Object.defineProperty(cT,"__esModule",{value:!0});cT.parseCfInsertArguments=void 0;var Mdr=Ce();function gXe(t,e,r,n){t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.NOCREATE&&t.push("NOCREATE"),t.push("ITEMS"),t.pushVariadic(r)}cT.parseCfInsertArguments=gXe;cT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("CF.INSERT"),gXe(...t)},transformReply:Mdr.transformBooleanArrayReply}});var AXe=E(Tf=>{"use strict";var Wdr=Tf&&Tf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),$dr=Tf&&Tf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Fdr=Tf&&Tf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Wdr(e,t,r);return $dr(e,t),e};Object.defineProperty(Tf,"__esModule",{value:!0});var Ane=Fdr(gne());Tf.default={IS_READ_ONLY:Ane.default.IS_READ_ONLY,parseCommand(...t){t[0].push("CF.INSERTNX"),(0,Ane.parseCfInsertArguments)(...t)},transformReply:Ane.default.transformReply}});var yXe=E(yne=>{"use strict";Object.defineProperty(yne,"__esModule",{value:!0});yne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var xXe=E(xne=>{"use strict";Object.defineProperty(xne,"__esModule",{value:!0});xne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.RESERVE"),t.pushKey(e),t.push(r.toString()),n?.BUCKETSIZE!==void 0&&t.push("BUCKETSIZE",n.BUCKETSIZE.toString()),n?.MAXITERATIONS!==void 0&&t.push("MAXITERATIONS",n.MAXITERATIONS.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString())},transformReply:void 0}});var bXe=E(bne=>{"use strict";Object.defineProperty(bne,"__esModule",{value:!0});bne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var PXe=E(uT=>{"use strict";var _u=uT&&uT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(uT,"__esModule",{value:!0});var EXe=_u(lXe()),_Xe=_u(dXe()),SXe=_u(fXe()),vXe=_u(pXe()),IXe=_u(mXe()),CXe=_u(hXe()),TXe=_u(gne()),wXe=_u(AXe()),RXe=_u(yXe()),NXe=_u(xXe()),OXe=_u(bXe());uT.default={ADD:EXe.default,add:EXe.default,ADDNX:_Xe.default,addNX:_Xe.default,COUNT:SXe.default,count:SXe.default,DEL:vXe.default,del:vXe.default,EXISTS:IXe.default,exists:IXe.default,INFO:CXe.default,info:CXe.default,INSERT:TXe.default,insert:TXe.default,INSERTNX:wXe.default,insertNX:wXe.default,LOADCHUNK:RXe.default,loadChunk:RXe.default,RESERVE:NXe.default,reserve:NXe.default,SCANDUMP:OXe.default,scanDump:OXe.default}});var kXe=E(Ene=>{"use strict";Object.defineProperty(Ene,"__esModule",{value:!0});Ene.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.ADD"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:void 0}});var _ne=E(lT=>{"use strict";Object.defineProperty(lT,"__esModule",{value:!0});lT.transformByRankArguments=void 0;var Udr=Ce();function DXe(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}lT.transformByRankArguments=DXe;lT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.BYRANK"),DXe(...t)},transformReply:Udr.transformDoubleArrayReply}});var BXe=E(wf=>{"use strict";var qdr=wf&&wf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),jdr=wf&&wf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Hdr=wf&&wf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&qdr(e,t,r);return jdr(e,t),e};Object.defineProperty(wf,"__esModule",{value:!0});var Sne=Hdr(_ne());wf.default={IS_READ_ONLY:Sne.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.BYREVRANK"),(0,Sne.transformByRankArguments)(...t)},transformReply:Sne.default.transformReply}});var LXe=E(vne=>{"use strict";Object.defineProperty(vne,"__esModule",{value:!0});var Qdr=Ce();vne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.CDF"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:Qdr.transformDoubleArrayReply}});var MXe=E(Ine=>{"use strict";Object.defineProperty(Ine,"__esModule",{value:!0});Ine.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.CREATE"),t.pushKey(e),r?.COMPRESSION!==void 0&&t.push("COMPRESSION",r.COMPRESSION.toString())},transformReply:void 0}});var WXe=E(Cne=>{"use strict";Object.defineProperty(Cne,"__esModule",{value:!0});var Gdr=Fb();Cne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Gdr.transformInfoV2Reply)(t,r),3:void 0}}});var $Xe=E(Tne=>{"use strict";Object.defineProperty(Tne,"__esModule",{value:!0});var Kdr=Ce();Tne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MAX"),t.pushKey(e)},transformReply:Kdr.transformDoubleReply}});var FXe=E(wne=>{"use strict";Object.defineProperty(wne,"__esModule",{value:!0});wne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TDIGEST.MERGE"),t.pushKey(e),t.pushKeysLength(r),n?.COMPRESSION!==void 0&&t.push("COMPRESSION",n.COMPRESSION.toString()),n?.OVERRIDE&&t.push("OVERRIDE")},transformReply:void 0}});var UXe=E(Rne=>{"use strict";Object.defineProperty(Rne,"__esModule",{value:!0});var Vdr=Ce();Rne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MIN"),t.pushKey(e)},transformReply:Vdr.transformDoubleReply}});var qXe=E(Nne=>{"use strict";Object.defineProperty(Nne,"__esModule",{value:!0});var zdr=Ce();Nne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.QUANTILE"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:zdr.transformDoubleArrayReply}});var One=E(dT=>{"use strict";Object.defineProperty(dT,"__esModule",{value:!0});dT.transformRankArguments=void 0;function jXe(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}dT.transformRankArguments=jXe;dT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.RANK"),jXe(...t)},transformReply:void 0}});var HXe=E(Pne=>{"use strict";Object.defineProperty(Pne,"__esModule",{value:!0});Pne.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TDIGEST.RESET"),t.pushKey(e)},transformReply:void 0}});var QXe=E(Rf=>{"use strict";var Ydr=Rf&&Rf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Jdr=Rf&&Rf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Xdr=Rf&&Rf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Ydr(e,t,r);return Jdr(e,t),e};Object.defineProperty(Rf,"__esModule",{value:!0});var kne=Xdr(One());Rf.default={IS_READ_ONLY:kne.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.REVRANK"),(0,kne.transformRankArguments)(...t)},transformReply:kne.default.transformReply}});var GXe=E(Dne=>{"use strict";Object.defineProperty(Dne,"__esModule",{value:!0});var Zdr=Ce();Dne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TDIGEST.TRIMMED_MEAN"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:Zdr.transformDoubleReply}});var oZe=E(fT=>{"use strict";var oo=fT&&fT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(fT,"__esModule",{value:!0});var KXe=oo(kXe()),VXe=oo(_ne()),zXe=oo(BXe()),YXe=oo(LXe()),JXe=oo(MXe()),XXe=oo(WXe()),ZXe=oo($Xe()),eZe=oo(FXe()),tZe=oo(UXe()),rZe=oo(qXe()),nZe=oo(One()),sZe=oo(HXe()),iZe=oo(QXe()),aZe=oo(GXe());fT.default={ADD:KXe.default,add:KXe.default,BYRANK:VXe.default,byRank:VXe.default,BYREVRANK:zXe.default,byRevRank:zXe.default,CDF:YXe.default,cdf:YXe.default,CREATE:JXe.default,create:JXe.default,INFO:XXe.default,info:XXe.default,MAX:ZXe.default,max:ZXe.default,MERGE:eZe.default,merge:eZe.default,MIN:tZe.default,min:tZe.default,QUANTILE:rZe.default,quantile:rZe.default,RANK:nZe.default,rank:nZe.default,RESET:sZe.default,reset:sZe.default,REVRANK:iZe.default,revRank:iZe.default,TRIMMED_MEAN:aZe.default,trimmedMean:aZe.default}});var cZe=E(Bne=>{"use strict";Object.defineProperty(Bne,"__esModule",{value:!0});Bne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.ADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var uZe=E(Lne=>{"use strict";Object.defineProperty(Lne,"__esModule",{value:!0});Lne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TOPK.COUNT"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var dZe=E(Mne=>{"use strict";Object.defineProperty(Mne,"__esModule",{value:!0});function lZe(t,{item:e,incrementBy:r}){t.push(e,r.toString())}Mne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("TOPK.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)lZe(t,n);else lZe(t,r)},transformReply:void 0}});var fZe=E(Wne=>{"use strict";Object.defineProperty(Wne,"__esModule",{value:!0});var efr=Ce(),tfr=Fb();Wne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(t[7]=efr.transformDoubleReply[2](t[7],e,r),(0,tfr.transformInfoV2Reply)(t,r)),3:void 0}}});var pZe=E($ne=>{"use strict";Object.defineProperty($ne,"__esModule",{value:!0});$ne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e),t.push("WITHCOUNT")},transformReply(t){let e=[];for(let r=0;r<t.length;r++)e.push({item:t[r],count:t[++r]});return e}}});var mZe=E(Fne=>{"use strict";Object.defineProperty(Fne,"__esModule",{value:!0});Fne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e)},transformReply:void 0}});var hZe=E(Une=>{"use strict";Object.defineProperty(Une,"__esModule",{value:!0});var rfr=Ce();Une.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:rfr.transformBooleanArrayReply}});var gZe=E(qne=>{"use strict";Object.defineProperty(qne,"__esModule",{value:!0});qne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TOPK.RESERVE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n.width.toString(),n.depth.toString(),n.decay.toString())},transformReply:void 0}});var IZe=E(pT=>{"use strict";var Q0=pT&&pT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(pT,"__esModule",{value:!0});var AZe=Q0(cZe()),yZe=Q0(uZe()),xZe=Q0(dZe()),bZe=Q0(fZe()),EZe=Q0(pZe()),_Ze=Q0(mZe()),SZe=Q0(hZe()),vZe=Q0(gZe());pT.default={ADD:AZe.default,add:AZe.default,COUNT:yZe.default,count:yZe.default,INCRBY:xZe.default,incrBy:xZe.default,INFO:bZe.default,info:bZe.default,LIST_WITHCOUNT:EZe.default,listWithCount:EZe.default,LIST:_Ze.default,list:_Ze.default,QUERY:SZe.default,query:SZe.default,RESERVE:vZe.default,reserve:vZe.default}});var CZe=E(mT=>{"use strict";var hT=mT&&mT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mT,"__esModule",{value:!0});var nfr=hT(Fb()),sfr=hT(uXe()),ifr=hT(PXe()),afr=hT(oZe()),ofr=hT(IZe());mT.default={bf:nfr.default,cms:sfr.default,cf:ifr.default,tDigest:afr.default,topK:ofr.default}});var jne=E(qb=>{"use strict";var cfr=qb&&qb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(qb,"__esModule",{value:!0});qb.default=void 0;var ufr=CZe();Object.defineProperty(qb,"default",{enumerable:!0,get:function(){return cfr(ufr).default}})});var wZe=E(Hne=>{"use strict";Object.defineProperty(Hne,"__esModule",{value:!0});var TZe=Ce();Hne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,...s){t.push("JSON.ARRAPPEND"),t.pushKey(e),t.push(r,(0,TZe.transformRedisJsonArgument)(n));for(let i=0;i<s.length;i++)t.push((0,TZe.transformRedisJsonArgument)(s[i]))},transformReply:void 0}});var RZe=E(Qne=>{"use strict";Object.defineProperty(Qne,"__esModule",{value:!0});var lfr=Ce();Qne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("JSON.ARRINDEX"),t.pushKey(e),t.push(r,(0,lfr.transformRedisJsonArgument)(n)),s?.range&&(t.push(s.range.start.toString()),s.range.stop!==void 0&&t.push(s.range.stop.toString()))},transformReply:void 0}});var OZe=E(Gne=>{"use strict";Object.defineProperty(Gne,"__esModule",{value:!0});var NZe=Ce();Gne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,...i){t.push("JSON.ARRINSERT"),t.pushKey(e),t.push(r,n.toString(),(0,NZe.transformRedisJsonArgument)(s));for(let a=0;a<i.length;a++)t.push((0,NZe.transformRedisJsonArgument)(i[a]))},transformReply:void 0}});var PZe=E(Kne=>{"use strict";Object.defineProperty(Kne,"__esModule",{value:!0});Kne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.ARRLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var kZe=E(zne=>{"use strict";Object.defineProperty(zne,"__esModule",{value:!0});var Vne=Ce();zne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.ARRPOP"),t.pushKey(e),r&&(t.push(r.path),r.index!==void 0&&t.push(r.index.toString()))},transformReply(t){return(0,Vne.isArrayReply)(t)?t.map(e=>(0,Vne.transformRedisJsonNullReply)(e)):(0,Vne.transformRedisJsonNullReply)(t)}}});var DZe=E(Yne=>{"use strict";Object.defineProperty(Yne,"__esModule",{value:!0});Yne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.ARRTRIM"),t.pushKey(e),t.push(r,n.toString(),s.toString())},transformReply:void 0}});var BZe=E(Jne=>{"use strict";Object.defineProperty(Jne,"__esModule",{value:!0});Jne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.CLEAR"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var LZe=E(Xne=>{"use strict";Object.defineProperty(Xne,"__esModule",{value:!0});Xne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEBUG","MEMORY"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var MZe=E(Zne=>{"use strict";Object.defineProperty(Zne,"__esModule",{value:!0});Zne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEL"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var WZe=E(ese=>{"use strict";Object.defineProperty(ese,"__esModule",{value:!0});ese.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.FORGET"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var $Ze=E(tse=>{"use strict";Object.defineProperty(tse,"__esModule",{value:!0});var dfr=Ce();tse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.GET"),t.pushKey(e),r?.path!==void 0&&t.pushVariadic(r.path)},transformReply:dfr.transformRedisJsonNullReply}});var FZe=E(rse=>{"use strict";Object.defineProperty(rse,"__esModule",{value:!0});var ffr=Ce();rse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.MERGE"),t.pushKey(e),t.push(r,(0,ffr.transformRedisJsonArgument)(n))},transformReply:void 0}});var UZe=E(nse=>{"use strict";Object.defineProperty(nse,"__esModule",{value:!0});var pfr=Ce();nse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.MGET"),t.pushKeys(e),t.push(r)},transformReply(t){return t.map(e=>(0,pfr.transformRedisJsonNullReply)(e))}}});var qZe=E(sse=>{"use strict";Object.defineProperty(sse,"__esModule",{value:!0});var mfr=Ce();sse.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("JSON.MSET");for(let r=0;r<e.length;r++)t.pushKey(e[r].key),t.push(e[r].path,(0,mfr.transformRedisJsonArgument)(e[r].value))},transformReply:void 0}});var ase=E(ise=>{"use strict";Object.defineProperty(ise,"__esModule",{value:!0});ise.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:{2:t=>JSON.parse(t.toString()),3:void 0}}});var jZe=E(gT=>{"use strict";var hfr=gT&&gT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gT,"__esModule",{value:!0});var gfr=hfr(ase());gT.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMMULTBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:gfr.default.transformReply}});var HZe=E(ose=>{"use strict";Object.defineProperty(ose,"__esModule",{value:!0});ose.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.OBJKEYS"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var QZe=E(cse=>{"use strict";Object.defineProperty(cse,"__esModule",{value:!0});cse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.OBJLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var GZe=E(use=>{"use strict";Object.defineProperty(use,"__esModule",{value:!0});var Afr=Ce();use.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.SET"),t.pushKey(e),t.push(r,(0,Afr.transformRedisJsonArgument)(n)),s?.condition?t.push(s?.condition):s?.NX?t.push("NX"):s?.XX&&t.push("XX")},transformReply:void 0}});var KZe=E(lse=>{"use strict";Object.defineProperty(lse,"__esModule",{value:!0});var yfr=Ce();lse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.STRAPPEND"),t.pushKey(e),n?.path!==void 0&&t.push(n.path),t.push((0,yfr.transformRedisJsonArgument)(r))},transformReply:void 0}});var VZe=E(dse=>{"use strict";Object.defineProperty(dse,"__esModule",{value:!0});dse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.STRLEN"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:void 0}});var zZe=E(fse=>{"use strict";Object.defineProperty(fse,"__esModule",{value:!0});fse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.TOGGLE"),t.pushKey(e),t.push(r)},transformReply:void 0}});var YZe=E(pse=>{"use strict";Object.defineProperty(pse,"__esModule",{value:!0});pse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.TYPE"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:{2:void 0,3:t=>t[0]}}});var Eet=E(Su=>{"use strict";var Gn=Su&&Su.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Su,"__esModule",{value:!0});Su.transformRedisJsonNullReply=Su.transformRedisJsonReply=Su.transformRedisJsonArgument=void 0;var JZe=Gn(wZe()),XZe=Gn(RZe()),ZZe=Gn(OZe()),eet=Gn(PZe()),tet=Gn(kZe()),ret=Gn(DZe()),net=Gn(BZe()),set=Gn(LZe()),iet=Gn(MZe()),aet=Gn(WZe()),oet=Gn($Ze()),cet=Gn(FZe()),uet=Gn(UZe()),det=Gn(qZe()),fet=Gn(ase()),pet=Gn(jZe()),met=Gn(HZe()),het=Gn(QZe()),get=Gn(GZe()),Aet=Gn(KZe()),yet=Gn(VZe()),xet=Gn(zZe()),bet=Gn(YZe()),mse=Ce();Object.defineProperty(Su,"transformRedisJsonArgument",{enumerable:!0,get:function(){return mse.transformRedisJsonArgument}});Object.defineProperty(Su,"transformRedisJsonReply",{enumerable:!0,get:function(){return mse.transformRedisJsonReply}});Object.defineProperty(Su,"transformRedisJsonNullReply",{enumerable:!0,get:function(){return mse.transformRedisJsonNullReply}});Su.default={ARRAPPEND:JZe.default,arrAppend:JZe.default,ARRINDEX:XZe.default,arrIndex:XZe.default,ARRINSERT:ZZe.default,arrInsert:ZZe.default,ARRLEN:eet.default,arrLen:eet.default,ARRPOP:tet.default,arrPop:tet.default,ARRTRIM:ret.default,arrTrim:ret.default,CLEAR:net.default,clear:net.default,DEBUG_MEMORY:set.default,debugMemory:set.default,DEL:iet.default,del:iet.default,FORGET:aet.default,forget:aet.default,GET:oet.default,get:oet.default,MERGE:cet.default,merge:cet.default,MGET:uet.default,mGet:uet.default,MSET:det.default,mSet:det.default,NUMINCRBY:fet.default,numIncrBy:fet.default,NUMMULTBY:pet.default,numMultBy:pet.default,OBJKEYS:met.default,objKeys:met.default,OBJLEN:het.default,objLen:het.default,SET:get.default,set:get.default,STRAPPEND:Aet.default,strAppend:Aet.default,STRLEN:yet.default,strLen:yet.default,TOGGLE:xet.default,toggle:xet.default,TYPE:bet.default,type:bet.default}});var hse=E(jb=>{"use strict";var xfr=jb&&jb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jb,"__esModule",{value:!0});jb.default=void 0;var bfr=Eet();Object.defineProperty(jb,"default",{enumerable:!0,get:function(){return xfr(bfr).default}})});var _et=E(gse=>{"use strict";Object.defineProperty(gse,"__esModule",{value:!0});gse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FT._LIST")},transformReply:{2:void 0,3:void 0}}});var BL=E(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.REDISEARCH_LANGUAGE=Cn.parseSchema=Cn.SCHEMA_GEO_SHAPE_COORD_SYSTEM=Cn.VAMANA_COMPRESSION_ALGORITHM=Cn.SCHEMA_VECTOR_FIELD_ALGORITHM=Cn.SCHEMA_TEXT_FIELD_PHONETIC=Cn.SCHEMA_FIELD_TYPE=void 0;var vet=Ce();Cn.SCHEMA_FIELD_TYPE={TEXT:"TEXT",NUMERIC:"NUMERIC",GEO:"GEO",TAG:"TAG",VECTOR:"VECTOR",GEOSHAPE:"GEOSHAPE"};Cn.SCHEMA_TEXT_FIELD_PHONETIC={DM_EN:"dm:en",DM_FR:"dm:fr",DM_PT:"dm:pt",DM_ES:"dm:es"};Cn.SCHEMA_VECTOR_FIELD_ALGORITHM={FLAT:"FLAT",HNSW:"HNSW",VAMANA:"SVS-VAMANA"};Cn.VAMANA_COMPRESSION_ALGORITHM={LVQ4:"LVQ4",LVQ8:"LVQ8",LVQ4x4:"LVQ4x4",LVQ4x8:"LVQ4x8",LeanVec4x8:"LeanVec4x8",LeanVec8x8:"LeanVec8x8"};Cn.SCHEMA_GEO_SHAPE_COORD_SYSTEM={SPHERICAL:"SPHERICAL",FLAT:"FLAT"};function Ase(t,e){e.SORTABLE&&(t.push("SORTABLE"),e.SORTABLE==="UNF"&&t.push("UNF")),e.NOINDEX&&t.push("NOINDEX")}function Iet(t,e){for(let[r,n]of Object.entries(e)){let s=Array.isArray(n)?n:[n];for(let i of s){if(t.push(r),typeof i=="string"){t.push(i);continue}switch(i.AS&&t.push("AS",i.AS),t.push(i.type),i.INDEXMISSING&&t.push("INDEXMISSING"),i.type){case Cn.SCHEMA_FIELD_TYPE.TEXT:i.NOSTEM&&t.push("NOSTEM"),i.WEIGHT!==void 0&&t.push("WEIGHT",i.WEIGHT.toString()),i.PHONETIC&&t.push("PHONETIC",i.PHONETIC),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),Ase(t,i);break;case Cn.SCHEMA_FIELD_TYPE.NUMERIC:case Cn.SCHEMA_FIELD_TYPE.GEO:Ase(t,i);break;case Cn.SCHEMA_FIELD_TYPE.TAG:i.SEPARATOR&&t.push("SEPARATOR",i.SEPARATOR),i.CASESENSITIVE&&t.push("CASESENSITIVE"),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),Ase(t,i);break;case Cn.SCHEMA_FIELD_TYPE.VECTOR:t.push(i.ALGORITHM);let a=[];switch(a.push("TYPE",i.TYPE,"DIM",i.DIM.toString(),"DISTANCE_METRIC",i.DISTANCE_METRIC),i.INITIAL_CAP!==void 0&&a.push("INITIAL_CAP",i.INITIAL_CAP.toString()),i.ALGORITHM){case Cn.SCHEMA_VECTOR_FIELD_ALGORITHM.FLAT:i.BLOCK_SIZE!==void 0&&a.push("BLOCK_SIZE",i.BLOCK_SIZE.toString());break;case Cn.SCHEMA_VECTOR_FIELD_ALGORITHM.HNSW:i.M!==void 0&&a.push("M",i.M.toString()),i.EF_CONSTRUCTION!==void 0&&a.push("EF_CONSTRUCTION",i.EF_CONSTRUCTION.toString()),i.EF_RUNTIME!==void 0&&a.push("EF_RUNTIME",i.EF_RUNTIME.toString());break;case Cn.SCHEMA_VECTOR_FIELD_ALGORITHM.VAMANA:i.COMPRESSION&&a.push("COMPRESSION",i.COMPRESSION),i.CONSTRUCTION_WINDOW_SIZE!==void 0&&a.push("CONSTRUCTION_WINDOW_SIZE",i.CONSTRUCTION_WINDOW_SIZE.toString()),i.GRAPH_MAX_DEGREE!==void 0&&a.push("GRAPH_MAX_DEGREE",i.GRAPH_MAX_DEGREE.toString()),i.SEARCH_WINDOW_SIZE!==void 0&&a.push("SEARCH_WINDOW_SIZE",i.SEARCH_WINDOW_SIZE.toString()),i.EPSILON!==void 0&&a.push("EPSILON",i.EPSILON.toString()),i.TRAINING_THRESHOLD!==void 0&&a.push("TRAINING_THRESHOLD",i.TRAINING_THRESHOLD.toString()),i.REDUCE!==void 0&&a.push("REDUCE",i.REDUCE.toString());break}t.pushVariadicWithLength(a);break;case Cn.SCHEMA_FIELD_TYPE.GEOSHAPE:i.COORD_SYSTEM!==void 0&&t.push("COORD_SYSTEM",i.COORD_SYSTEM);break}}}}Cn.parseSchema=Iet;Cn.REDISEARCH_LANGUAGE={ARABIC:"Arabic",BASQUE:"Basque",CATALANA:"Catalan",DANISH:"Danish",DUTCH:"Dutch",ENGLISH:"English",FINNISH:"Finnish",FRENCH:"French",GERMAN:"German",GREEK:"Greek",HUNGARIAN:"Hungarian",INDONESAIN:"Indonesian",IRISH:"Irish",ITALIAN:"Italian",LITHUANIAN:"Lithuanian",NEPALI:"Nepali",NORWEIGAN:"Norwegian",PORTUGUESE:"Portuguese",ROMANIAN:"Romanian",RUSSIAN:"Russian",SPANISH:"Spanish",SWEDISH:"Swedish",TAMIL:"Tamil",TURKISH:"Turkish",CHINESE:"Chinese"};Cn.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CREATE",e),n?.ON&&t.push("ON",n.ON),(0,vet.parseOptionalVariadicArgument)(t,"PREFIX",n?.PREFIX),n?.FILTER&&t.push("FILTER",n.FILTER),n?.LANGUAGE&&t.push("LANGUAGE",n.LANGUAGE),n?.LANGUAGE_FIELD&&t.push("LANGUAGE_FIELD",n.LANGUAGE_FIELD),n?.SCORE&&t.push("SCORE",n.SCORE.toString()),n?.SCORE_FIELD&&t.push("SCORE_FIELD",n.SCORE_FIELD),n?.MAXTEXTFIELDS&&t.push("MAXTEXTFIELDS"),n?.TEMPORARY&&t.push("TEMPORARY",n.TEMPORARY.toString()),n?.NOOFFSETS&&t.push("NOOFFSETS"),n?.NOHL&&t.push("NOHL"),n?.NOFIELDS&&t.push("NOFIELDS"),n?.NOFREQS&&t.push("NOFREQS"),n?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),(0,vet.parseOptionalVariadicArgument)(t,"STOPWORDS",n?.STOPWORDS),t.push("SCHEMA"),Iet(t,r)},transformReply:void 0}});var Cet=E(yse=>{"use strict";Object.defineProperty(yse,"__esModule",{value:!0});var Efr=BL();yse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALTER",e,"SCHEMA","ADD"),(0,Efr.parseSchema)(t,r)},transformReply:void 0}});var Hb=E(LL=>{"use strict";Object.defineProperty(LL,"__esModule",{value:!0});LL.DEFAULT_DIALECT=void 0;LL.DEFAULT_DIALECT="2"});var xg=E(yg=>{"use strict";Object.defineProperty(yg,"__esModule",{value:!0});yg.parseSearchOptions=yg.parseParamsArgument=void 0;var AT=Ce(),_fr=Hb();function Tet(t,e){if(e){t.push("PARAMS");let r=[];for(let n in e){if(!Object.hasOwn(e,n))continue;let s=e[n];r.push(n,typeof s=="number"?s.toString():s)}t.pushVariadicWithLength(r)}}yg.parseParamsArgument=Tet;function wet(t,e){e?.VERBATIM&&t.push("VERBATIM"),e?.NOSTOPWORDS&&t.push("NOSTOPWORDS"),(0,AT.parseOptionalVariadicArgument)(t,"INKEYS",e?.INKEYS),(0,AT.parseOptionalVariadicArgument)(t,"INFIELDS",e?.INFIELDS),(0,AT.parseOptionalVariadicArgument)(t,"RETURN",e?.RETURN),e?.SUMMARIZE&&(t.push("SUMMARIZE"),typeof e.SUMMARIZE=="object"&&((0,AT.parseOptionalVariadicArgument)(t,"FIELDS",e.SUMMARIZE.FIELDS),e.SUMMARIZE.FRAGS!==void 0&&t.push("FRAGS",e.SUMMARIZE.FRAGS.toString()),e.SUMMARIZE.LEN!==void 0&&t.push("LEN",e.SUMMARIZE.LEN.toString()),e.SUMMARIZE.SEPARATOR!==void 0&&t.push("SEPARATOR",e.SUMMARIZE.SEPARATOR))),e?.HIGHLIGHT&&(t.push("HIGHLIGHT"),typeof e.HIGHLIGHT=="object"&&((0,AT.parseOptionalVariadicArgument)(t,"FIELDS",e.HIGHLIGHT.FIELDS),e.HIGHLIGHT.TAGS&&t.push("TAGS",e.HIGHLIGHT.TAGS.open,e.HIGHLIGHT.TAGS.close))),e?.SLOP!==void 0&&t.push("SLOP",e.SLOP.toString()),e?.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString()),e?.INORDER&&t.push("INORDER"),e?.LANGUAGE&&t.push("LANGUAGE",e.LANGUAGE),e?.EXPANDER&&t.push("EXPANDER",e.EXPANDER),e?.SCORER&&t.push("SCORER",e.SCORER),e?.SORTBY&&(t.push("SORTBY"),typeof e.SORTBY=="string"||e.SORTBY instanceof Buffer?t.push(e.SORTBY):(t.push(e.SORTBY.BY),e.SORTBY.DIRECTION&&t.push(e.SORTBY.DIRECTION))),e?.LIMIT&&t.push("LIMIT",e.LIMIT.from.toString(),e.LIMIT.size.toString()),Tet(t,e?.PARAMS),e?.DIALECT?t.push("DIALECT",e.DIALECT.toString()):t.push("DIALECT",_fr.DEFAULT_DIALECT)}yg.parseSearchOptions=wet;yg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SEARCH",e,r),wet(t,n)},transformReply:{2:t=>{let e=t.length>2&&!Array.isArray(t[2]),r=[],n=1;for(;n<t.length;)r.push({id:t[n++],value:e?Object.create(null):Sfr(t[n++])});return{total:t[0],documents:r}},3:void 0},unstableResp3:!0};function Sfr(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 Qb=E(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 vfr=xg(),Ifr=Ce(),Cfr=Hb();on.FT_AGGREGATE_STEPS={GROUPBY:"GROUPBY",SORTBY:"SORTBY",APPLY:"APPLY",LIMIT:"LIMIT",FILTER:"FILTER"};on.FT_AGGREGATE_GROUP_BY_REDUCERS={COUNT:"COUNT",COUNT_DISTINCT:"COUNT_DISTINCT",COUNT_DISTINCTISH:"COUNT_DISTINCTISH",SUM:"SUM",MIN:"MIN",MAX:"MAX",AVG:"AVG",STDDEV:"STDDEV",QUANTILE:"QUANTILE",TOLIST:"TOLIST",FIRST_VALUE:"FIRST_VALUE",RANDOM_SAMPLE:"RANDOM_SAMPLE"};on.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r,n){return t.push("FT.AGGREGATE",e,r),Oet(t,n)},transformReply:{2:(t,e,r)=>{let n=[];for(let s=1;s<t.length;s++)n.push((0,Ifr.transformTuplesReply)(t[s],e,r));return{total:Number(t[0]),results:n}},3:void 0},unstableResp3:!0};function Oet(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)Ret(r,n);else Ret(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)xse(t,s);else xse(t,r.REDUCE);break;case on.FT_AGGREGATE_STEPS.SORTBY:let n=[];if(Array.isArray(r.BY))for(let s of r.BY)Net(n,s);else Net(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,vfr.parseParamsArgument)(t,e?.PARAMS),e?.DIALECT?t.push("DIALECT",e.DIALECT.toString()):t.push("DIALECT",Cfr.DEFAULT_DIALECT)}on.parseAggregateOptions=Oet;function Ret(t,e){typeof e=="string"||e instanceof Buffer?t.push(e):(t.push(e.identifier),e.AS&&t.push("AS",e.AS))}function xse(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=xse;function Net(t,e){typeof e=="string"||e instanceof Buffer?t.push(e):(t.push(e.BY),e.DIRECTION&&t.push(e.DIRECTION))}});var Ese=E(yT=>{"use strict";var Tfr=yT&&yT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(yT,"__esModule",{value:!0});var bse=Tfr(Qb());yT.default={IS_READ_ONLY:bse.default.IS_READ_ONLY,parseCommand(t,e,r,n){bse.default.parseCommand(t,e,r,n),t.push("WITHCURSOR"),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.MAXIDLE!==void 0&&t.push("MAXIDLE",n.MAXIDLE.toString())},transformReply:{2:t=>({...bse.default.transformReply[2](t[0]),cursor:t[1]}),3:void 0},unstableResp3:!0}});var Pet=E(_se=>{"use strict";Object.defineProperty(_se,"__esModule",{value:!0});_se.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASADD",e,r)},transformReply:void 0}});var ket=E(Sse=>{"use strict";Object.defineProperty(Sse,"__esModule",{value:!0});Sse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.ALIASDEL",e)},transformReply:void 0}});var Det=E(vse=>{"use strict";Object.defineProperty(vse,"__esModule",{value:!0});vse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASUPDATE",e,r)},transformReply:void 0}});var Bet=E(Ise=>{"use strict";Object.defineProperty(Ise,"__esModule",{value:!0});Ise.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.CONFIG","GET",e)},transformReply(t){let e=Object.create(null);for(let r of t){let[n,s]=r;e[n.toString()]=s}return e}}});var Let=E(Cse=>{"use strict";Object.defineProperty(Cse,"__esModule",{value:!0});Cse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CONFIG","SET",e,r)},transformReply:void 0}});var Met=E(Tse=>{"use strict";Object.defineProperty(Tse,"__esModule",{value:!0});Tse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CURSOR","DEL",e,r.toString())},transformReply:void 0}});var Wet=E(xT=>{"use strict";var wfr=xT&&xT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(xT,"__esModule",{value:!0});var Rfr=wfr(Ese());xT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CURSOR","READ",e,r.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())},transformReply:Rfr.default.transformReply,unstableResp3:!0}});var $et=E(wse=>{"use strict";Object.defineProperty(wse,"__esModule",{value:!0});wse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTADD",e),t.pushVariadic(r)},transformReply:void 0}});var Fet=E(Rse=>{"use strict";Object.defineProperty(Rse,"__esModule",{value:!0});Rse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTDEL",e),t.pushVariadic(r)},transformReply:void 0}});var Uet=E(Nse=>{"use strict";Object.defineProperty(Nse,"__esModule",{value:!0});Nse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.DICTDUMP",e)},transformReply:{2:void 0,3:void 0}}});var qet=E(Ose=>{"use strict";Object.defineProperty(Ose,"__esModule",{value:!0});Ose.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DROPINDEX",e),r?.DD&&t.push("DD")},transformReply:{2:void 0,3:void 0}}});var jet=E(Pse=>{"use strict";Object.defineProperty(Pse,"__esModule",{value:!0});var Nfr=xg(),Ofr=Hb();Pse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAIN",e,r),(0,Nfr.parseParamsArgument)(t,n?.PARAMS),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Ofr.DEFAULT_DIALECT)},transformReply:void 0}});var Het=E(kse=>{"use strict";Object.defineProperty(kse,"__esModule",{value:!0});var Pfr=Hb();kse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAINCLI",e,r),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Pfr.DEFAULT_DIALECT)},transformReply:void 0}});var Ket=E(vu=>{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});vu.FT_HYBRID_COMBINE_METHOD=vu.FT_HYBRID_VECTOR_METHOD=void 0;var Qet=Ce(),kfr=xg(),Dfr=Qb();vu.FT_HYBRID_VECTOR_METHOD={KNN:"KNN",RANGE:"RANGE"};vu.FT_HYBRID_COMBINE_METHOD={RRF:"RRF",LINEAR:"LINEAR"};function Bfr(t,e){t.push("SEARCH",e.query),e.SCORER&&t.push("SCORER",e.SCORER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function Lfr(t,e){if(t.push("VSIM",e.field,e.vector),e.method){if(e.method.type===vu.FT_HYBRID_VECTOR_METHOD.KNN){let r=2;e.method.EF_RUNTIME!==void 0&&(r+=2),t.push("KNN",r.toString(),"K",e.method.K.toString()),e.method.EF_RUNTIME!==void 0&&t.push("EF_RUNTIME",e.method.EF_RUNTIME.toString())}if(e.method.type===vu.FT_HYBRID_VECTOR_METHOD.RANGE){let r=2;e.method.EPSILON!==void 0&&(r+=2),t.push("RANGE",r.toString(),"RADIUS",e.method.RADIUS.toString()),e.method.EPSILON!==void 0&&t.push("EPSILON",e.method.EPSILON.toString())}}e.FILTER&&t.push("FILTER",e.FILTER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function Mfr(t,e){if(e){if(t.push("COMBINE"),e.method.type===vu.FT_HYBRID_COMBINE_METHOD.RRF){let r=0;e.method.WINDOW!==void 0&&(r+=2),e.method.CONSTANT!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("RRF",r.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString()),e.method.CONSTANT!==void 0&&t.push("CONSTANT",e.method.CONSTANT.toString())}if(e.method.type===vu.FT_HYBRID_COMBINE_METHOD.LINEAR){let r=0;e.method.ALPHA!==void 0&&(r+=2),e.method.BETA!==void 0&&(r+=2),e.method.WINDOW!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("LINEAR",r.toString()),e.method.ALPHA!==void 0&&t.push("ALPHA",e.method.ALPHA.toString()),e.method.BETA!==void 0&&t.push("BETA",e.method.BETA.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString())}e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}}function Wfr(t,e){t.push("APPLY",e.expression),e.AS&&t.push("AS",e.AS)}function $fr(t,e){if(Bfr(t,e.SEARCH),Lfr(t,e.VSIM),e.COMBINE&&Mfr(t,e.COMBINE),e.LOAD&&(e.LOAD==="*"?t.push("LOAD","*"):(0,Qet.parseOptionalVariadicArgument)(t,"LOAD",e.LOAD)),e.GROUPBY&&((0,Qet.parseOptionalVariadicArgument)(t,"GROUPBY",e.GROUPBY.fields),e.GROUPBY.REDUCE)){let n=Array.isArray(e.GROUPBY.REDUCE)?e.GROUPBY.REDUCE:[e.GROUPBY.REDUCE];for(let s of n)(0,Dfr.parseGroupByReducer)(t,s)}if(e.APPLY){let n=Array.isArray(e.APPLY)?e.APPLY:[e.APPLY];for(let s of n)Wfr(t,s)}if(e.SORTBY){let n=e.SORTBY.fields.reduce((s,i)=>i.direction?s+2:s+1,0);t.push("SORTBY",n.toString());for(let s of e.SORTBY.fields)t.push(s.field),s.direction&&t.push(s.direction)}e.NOSORT&&t.push("NOSORT"),e.FILTER&&t.push("FILTER",e.FILTER),e.LIMIT&&t.push("LIMIT",e.LIMIT.offset.toString(),e.LIMIT.count.toString());let r=e.PARAMS&&Object.keys(e.PARAMS).length>0;(0,kfr.parseParamsArgument)(t,r?e.PARAMS:void 0),e.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString())}vu.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.HYBRID",e),$fr(t,r)},transformReply:{2:t=>Ffr(t),3:void 0},unstableResp3:!0};function Ffr(t){let e=Get(t),r=e.total_results??0,n=e.results??[],s=e.warnings??[],i=e.execution_time?Number.parseFloat(e.execution_time):0,a=[];for(let o of n){let c=Get(o),u=Object.create(null);for(let[l,d]of Object.entries(c))if(l==="$")try{Object.assign(u,JSON.parse(d))}catch{u[l]=d}else u[l]=d;a.push(u)}return{totalResults:r,executionTime:i,warnings:s,results:a}}function Get(t){let e={};if(!Array.isArray(t))return e;for(let r=0;r<t.length;r+=2){let n=t[r],s=t[r+1];typeof n=="string"&&(e[n]=s)}return e}});var Vet=E(Bse=>{"use strict";Object.defineProperty(Bse,"__esModule",{value:!0});var Dse=Ce();Bse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.INFO",e)},transformReply:{2:Ufr,3:void 0},unstableResp3:!0};function Ufr(t,e,r){let n=(0,Dse.createTransformTuplesReplyFunc)(e,r),s={};for(let i=0;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]=Dse.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]=Dse.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 Yet=E(Nf=>{"use strict";var qfr=Nf&&Nf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),jfr=Nf&&Nf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Hfr=Nf&&Nf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&qfr(e,t,r);return jfr(e,t),e};Object.defineProperty(Nf,"__esModule",{value:!0});var zet=Hfr(xg());Nf.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"SEARCH"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,zet.parseSearchOptions)(t,n)},transformReply:{2:t=>({results:zet.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var Xet=E(Of=>{"use strict";var Qfr=Of&&Of.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Gfr=Of&&Of.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Kfr=Of&&Of.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Qfr(e,t,r);return Gfr(e,t),e};Object.defineProperty(Of,"__esModule",{value:!0});var Jet=Kfr(Qb());Of.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"AGGREGATE"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,Jet.parseAggregateOptions)(t,n)},transformReply:{2:t=>({results:Jet.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var Zet=E(bT=>{"use strict";var Vfr=bT&&bT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(bT,"__esModule",{value:!0});var Lse=Vfr(xg());bT.default={NOT_KEYED_COMMAND:Lse.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Lse.default.IS_READ_ONLY,parseCommand(...t){Lse.default.parseCommand(...t),t[0].push("NOCONTENT")},transformReply:{2:t=>({total:t[0],documents:t.slice(1)}),3:void 0},unstableResp3:!0}});var ttt=E(Mse=>{"use strict";Object.defineProperty(Mse,"__esModule",{value:!0});var zfr=Hb();Mse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("FT.SPELLCHECK",e,r),n?.DISTANCE&&t.push("DISTANCE",n.DISTANCE.toString()),n?.TERMS)if(Array.isArray(n.TERMS))for(let s of n.TERMS)ett(t,s);else ett(t,n.TERMS);n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",zfr.DEFAULT_DIALECT)},transformReply:{2:t=>t.map(([,e,r])=>({term:e,suggestions:r.map(([n,s])=>({score:Number(n),suggestion:s}))})),3:void 0},unstableResp3:!0};function ett(t,{mode:e,dictionary:r}){t.push("TERMS",e,r)}});var rtt=E(Wse=>{"use strict";Object.defineProperty(Wse,"__esModule",{value:!0});Wse.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SUGADD"),t.pushKey(e),t.push(r,n.toString()),s?.INCR&&t.push("INCR"),s?.PAYLOAD&&t.push("PAYLOAD",s.PAYLOAD)},transformReply:void 0}});var ntt=E($se=>{"use strict";Object.defineProperty($se,"__esModule",{value:!0});$se.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.SUGDEL"),t.pushKey(e),t.push(r)},transformReply:void 0}});var ET=E(Fse=>{"use strict";Object.defineProperty(Fse,"__esModule",{value:!0});Fse.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SUGGET"),t.pushKey(e),t.push(r),n?.FUZZY&&t.push("FUZZY"),n?.MAX!==void 0&&t.push("MAX",n.MAX.toString())},transformReply:void 0}});var itt=E(_T=>{"use strict";var Yfr=_T&&_T.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_T,"__esModule",{value:!0});var Jfr=Ce(),stt=Yfr(ET());_T.default={IS_READ_ONLY:stt.default.IS_READ_ONLY,parseCommand(...t){stt.default.parseCommand(...t),t[0].push("WITHPAYLOADS")},transformReply(t){if((0,Jfr.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r<t.length;)e[n++]={suggestion:t[r++],payload:t[r++]};return e}}});var ott=E(ST=>{"use strict";var Xfr=ST&&ST.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ST,"__esModule",{value:!0});var Use=Ce(),att=Xfr(ET());ST.default={IS_READ_ONLY:att.default.IS_READ_ONLY,parseCommand(...t){att.default.parseCommand(...t),t[0].push("WITHSCORES","WITHPAYLOADS")},transformReply:{2:(t,e,r)=>{if((0,Use.isNullReply)(t))return null;let n=new Array(t.length/3),s=0,i=0;for(;s<t.length;)n[i++]={suggestion:t[s++],score:Use.transformDoubleReply[2](t[s++],e,r),payload:t[s++]};return n},3:t=>{if((0,Use.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 utt=E(vT=>{"use strict";var Zfr=vT&&vT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(vT,"__esModule",{value:!0});var qse=Ce(),ctt=Zfr(ET());vT.default={IS_READ_ONLY:ctt.default.IS_READ_ONLY,parseCommand(...t){ctt.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:{2:(t,e,r)=>{if((0,qse.isNullReply)(t))return null;let n=new Array(t.length/2),s=0,i=0;for(;s<t.length;)n[i++]={suggestion:t[s++],score:qse.transformDoubleReply[2](t[s++],e,r)};return n},3:t=>{if((0,qse.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 ltt=E(jse=>{"use strict";Object.defineProperty(jse,"__esModule",{value:!0});jse.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SUGLEN",e)},transformReply:void 0}});var dtt=E(Hse=>{"use strict";Object.defineProperty(Hse,"__esModule",{value:!0});Hse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SYNDUMP",e)},transformReply:{2:t=>{let e={},r=0;for(;r<t.length;){let n=t[r++].toString(),s=t[r++];e[n]=s}return e},3:void 0}}});var ftt=E(Qse=>{"use strict";Object.defineProperty(Qse,"__esModule",{value:!0});Qse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SYNUPDATE",e,r),s?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),t.pushVariadic(n)},transformReply:void 0}});var ptt=E(Gse=>{"use strict";Object.defineProperty(Gse,"__esModule",{value:!0});Gse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.TAGVALS",e,r)},transformReply:{2:void 0,3:void 0}}});var ztt=E(IT=>{"use strict";var Er=IT&&IT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(IT,"__esModule",{value:!0});var mtt=Er(_et()),htt=Er(Cet()),gtt=Er(Ese()),Att=Er(Qb()),ytt=Er(Pet()),xtt=Er(ket()),btt=Er(Det()),Ett=Er(Bet()),_tt=Er(Let()),Stt=Er(BL()),vtt=Er(Met()),Itt=Er(Wet()),Ctt=Er($et()),Ttt=Er(Fet()),wtt=Er(Uet()),Rtt=Er(qet()),Ntt=Er(jet()),Ott=Er(Het()),Ptt=Er(Ket()),ktt=Er(Vet()),Dtt=Er(Yet()),Btt=Er(Xet()),Ltt=Er(Zet()),Mtt=Er(xg()),Wtt=Er(ttt()),$tt=Er(rtt()),Ftt=Er(ntt()),Utt=Er(itt()),qtt=Er(ott()),jtt=Er(utt()),Htt=Er(ET()),Qtt=Er(ltt()),Gtt=Er(dtt()),Ktt=Er(ftt()),Vtt=Er(ptt());IT.default={_LIST:mtt.default,_list:mtt.default,ALTER:htt.default,alter:htt.default,AGGREGATE_WITHCURSOR:gtt.default,aggregateWithCursor:gtt.default,AGGREGATE:Att.default,aggregate:Att.default,ALIASADD:ytt.default,aliasAdd:ytt.default,ALIASDEL:xtt.default,aliasDel:xtt.default,ALIASUPDATE:btt.default,aliasUpdate:btt.default,CONFIG_GET:Ett.default,configGet:Ett.default,CONFIG_SET:_tt.default,configSet:_tt.default,CREATE:Stt.default,create:Stt.default,CURSOR_DEL:vtt.default,cursorDel:vtt.default,CURSOR_READ:Itt.default,cursorRead:Itt.default,DICTADD:Ctt.default,dictAdd:Ctt.default,DICTDEL:Ttt.default,dictDel:Ttt.default,DICTDUMP:wtt.default,dictDump:wtt.default,DROPINDEX:Rtt.default,dropIndex:Rtt.default,EXPLAIN:Ntt.default,explain:Ntt.default,EXPLAINCLI:Ott.default,explainCli:Ott.default,HYBRID:Ptt.default,hybrid:Ptt.default,INFO:ktt.default,info:ktt.default,PROFILESEARCH:Dtt.default,profileSearch:Dtt.default,PROFILEAGGREGATE:Btt.default,profileAggregate:Btt.default,SEARCH_NOCONTENT:Ltt.default,searchNoContent:Ltt.default,SEARCH:Mtt.default,search:Mtt.default,SPELLCHECK:Wtt.default,spellCheck:Wtt.default,SUGADD:$tt.default,sugAdd:$tt.default,SUGDEL:Ftt.default,sugDel:Ftt.default,SUGGET_WITHPAYLOADS:Utt.default,sugGetWithPayloads:Utt.default,SUGGET_WITHSCORES_WITHPAYLOADS:qtt.default,sugGetWithScoresWithPayloads:qtt.default,SUGGET_WITHSCORES:jtt.default,sugGetWithScores:jtt.default,SUGGET:Htt.default,sugGet:Htt.default,SUGLEN:Qtt.default,sugLen:Qtt.default,SYNDUMP:Gtt.default,synDump:Gtt.default,SYNUPDATE:Ktt.default,synUpdate:Ktt.default,TAGVALS:Vtt.default,tagVals:Vtt.default}});var Kse=E(ii=>{"use strict";var epr=ii&&ii.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ii,"__esModule",{value:!0});ii.FT_AGGREGATE_STEPS=ii.FT_AGGREGATE_GROUP_BY_REDUCERS=ii.SCHEMA_VECTOR_FIELD_ALGORITHM=ii.SCHEMA_TEXT_FIELD_PHONETIC=ii.SCHEMA_FIELD_TYPE=ii.REDISEARCH_LANGUAGE=ii.default=void 0;var tpr=ztt();Object.defineProperty(ii,"default",{enumerable:!0,get:function(){return epr(tpr).default}});var ML=BL();Object.defineProperty(ii,"REDISEARCH_LANGUAGE",{enumerable:!0,get:function(){return ML.REDISEARCH_LANGUAGE}});Object.defineProperty(ii,"SCHEMA_FIELD_TYPE",{enumerable:!0,get:function(){return ML.SCHEMA_FIELD_TYPE}});Object.defineProperty(ii,"SCHEMA_TEXT_FIELD_PHONETIC",{enumerable:!0,get:function(){return ML.SCHEMA_TEXT_FIELD_PHONETIC}});Object.defineProperty(ii,"SCHEMA_VECTOR_FIELD_ALGORITHM",{enumerable:!0,get:function(){return ML.SCHEMA_VECTOR_FIELD_ALGORITHM}});var Ytt=Qb();Object.defineProperty(ii,"FT_AGGREGATE_GROUP_BY_REDUCERS",{enumerable:!0,get:function(){return Ytt.FT_AGGREGATE_GROUP_BY_REDUCERS}});Object.defineProperty(ii,"FT_AGGREGATE_STEPS",{enumerable:!0,get:function(){return Ytt.FT_AGGREGATE_STEPS}})});var ai=E(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.transformRESP2LabelsWithSources=hr.transformRESP2Labels=hr.parseSelectedLabelsArguments=hr.resp3MapToValue=hr.resp2MapToValue=hr.transformSamplesReply=hr.transformSampleReply=hr.parseLabelsArgument=hr.transformTimestampArgument=hr.parseDuplicatePolicy=hr.TIME_SERIES_DUPLICATE_POLICIES=hr.parseChunkSizeArgument=hr.parseEncodingArgument=hr.TIME_SERIES_ENCODING=hr.parseRetentionArgument=hr.parseIgnoreArgument=void 0;var Vse=aT();function rpr(t,e){e!==void 0&&t.push("IGNORE",e.maxTimeDiff.toString(),e.maxValDiff.toString())}hr.parseIgnoreArgument=rpr;function npr(t,e){e!==void 0&&t.push("RETENTION",e.toString())}hr.parseRetentionArgument=npr;hr.TIME_SERIES_ENCODING={COMPRESSED:"COMPRESSED",UNCOMPRESSED:"UNCOMPRESSED"};function spr(t,e){e!==void 0&&t.push("ENCODING",e)}hr.parseEncodingArgument=spr;function ipr(t,e){e!==void 0&&t.push("CHUNK_SIZE",e.toString())}hr.parseChunkSizeArgument=ipr;hr.TIME_SERIES_DUPLICATE_POLICIES={BLOCK:"BLOCK",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM"};function apr(t,e){e!==void 0&&t.push("DUPLICATE_POLICY",e)}hr.parseDuplicatePolicy=apr;function opr(t){return typeof t=="string"?t:(typeof t=="number"?t:t.getTime()).toString()}hr.transformTimestampArgument=opr;function cpr(t,e){if(e){t.push("LABELS");for(let[r,n]of Object.entries(e))t.push(r,n)}}hr.parseLabelsArgument=cpr;hr.transformSampleReply={2(t){let[e,r]=t;return{timestamp:e,value:Number(r)}},3(t){let[e,r]=t;return{timestamp:e,value:r}}};hr.transformSamplesReply={2(t){return t.map(e=>hr.transformSampleReply[2](e))},3(t){return t.map(e=>hr.transformSampleReply[3](e))}};function upr(t,e,r){let n=t;switch(r?.[Vse.RESP_TYPES.MAP]){case Map:{let s=new Map;for(let i of n){let a=i,o=a[0];s.set(o.toString(),e(a))}return s}case Array:{for(let s of n){let i=s;i[1]=e(i)}return n}default:{let s=Object.create(null);for(let i of n){let a=i,o=a[0];s[o.toString()]=e(a)}return s}}}hr.resp2MapToValue=upr;function lpr(t,e){let r=t;if(r instanceof Array)for(let n=1;n<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}hr.resp3MapToValue=lpr;function dpr(t,e){t.push("SELECTED_LABELS"),t.pushVariadic(e)}hr.parseSelectedLabelsArguments=dpr;function fpr(t,e){let r=t;switch(e?.[Vse.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}}hr.transformRESP2Labels=fpr;function ppr(t,e){let r=t,n=r.length-2,s;switch(e?.[Vse.RESP_TYPES.MAP]){case Map:let c=new Map;for(let l=0;l<n;l++){let[d,f]=r[l],p=d;c.set(p.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],p=d;u[p.toString()]=f}s=u;break}let a=r[r.length-1],o=mpr(a[1]);return{labels:s,sources:o}}hr.transformRESP2LabelsWithSources=ppr;function mpr(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 Jtt=E(zse=>{"use strict";Object.defineProperty(zse,"__esModule",{value:!0});var Gb=ai();zse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("TS.ADD"),t.pushKey(e),t.push((0,Gb.transformTimestampArgument)(r),n.toString()),(0,Gb.parseRetentionArgument)(t,s?.RETENTION),(0,Gb.parseEncodingArgument)(t,s?.ENCODING),(0,Gb.parseChunkSizeArgument)(t,s?.CHUNK_SIZE),s?.ON_DUPLICATE&&t.push("ON_DUPLICATE",s.ON_DUPLICATE),(0,Gb.parseLabelsArgument)(t,s?.LABELS),(0,Gb.parseIgnoreArgument)(t,s?.IGNORE)},transformReply:void 0}});var Xtt=E(Yse=>{"use strict";Object.defineProperty(Yse,"__esModule",{value:!0});var CT=ai();Yse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.ALTER"),t.pushKey(e),(0,CT.parseRetentionArgument)(t,r?.RETENTION),(0,CT.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,CT.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,CT.parseLabelsArgument)(t,r?.LABELS),(0,CT.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var Ztt=E(Jse=>{"use strict";Object.defineProperty(Jse,"__esModule",{value:!0});var Kb=ai();Jse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.CREATE"),t.pushKey(e),(0,Kb.parseRetentionArgument)(t,r?.RETENTION),(0,Kb.parseEncodingArgument)(t,r?.ENCODING),(0,Kb.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,Kb.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,Kb.parseLabelsArgument)(t,r?.LABELS),(0,Kb.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var Xse=E(TT=>{"use strict";Object.defineProperty(TT,"__esModule",{value:!0});TT.TIME_SERIES_AGGREGATION_TYPE=void 0;TT.TIME_SERIES_AGGREGATION_TYPE={AVG:"AVG",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM",RANGE:"RANGE",COUNT:"COUNT",COUNT_NAN:"COUNTNAN",COUNT_ALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S",TWA:"TWA"};TT.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("TS.CREATERULE"),t.pushKeys([e,r]),t.push("AGGREGATION",n,s.toString()),i!==void 0&&t.push(i.toString())},transformReply:void 0}});var Zse=E(RT=>{"use strict";Object.defineProperty(RT,"__esModule",{value:!0});RT.parseIncrByArguments=void 0;var wT=ai();function ert(t,e,r,n){t.pushKey(e),t.push(r.toString()),n?.TIMESTAMP!==void 0&&n?.TIMESTAMP!==null&&t.push("TIMESTAMP",(0,wT.transformTimestampArgument)(n.TIMESTAMP)),(0,wT.parseRetentionArgument)(t,n?.RETENTION),n?.UNCOMPRESSED&&t.push("UNCOMPRESSED"),(0,wT.parseChunkSizeArgument)(t,n?.CHUNK_SIZE),(0,wT.parseLabelsArgument)(t,n?.LABELS),(0,wT.parseIgnoreArgument)(t,n?.IGNORE)}RT.parseIncrByArguments=ert;RT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("TS.INCRBY"),ert(...t)},transformReply:void 0}});var trt=E(Pf=>{"use strict";var hpr=Pf&&Pf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),gpr=Pf&&Pf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Apr=Pf&&Pf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&hpr(e,t,r);return gpr(e,t),e};Object.defineProperty(Pf,"__esModule",{value:!0});var eie=Apr(Zse());Pf.default={IS_READ_ONLY:eie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.DECRBY"),(0,eie.parseIncrByArguments)(...t)},transformReply:eie.default.transformReply}});var nrt=E(tie=>{"use strict";Object.defineProperty(tie,"__esModule",{value:!0});var rrt=ai();tie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TS.DEL"),t.pushKey(e),t.push((0,rrt.transformTimestampArgument)(r),(0,rrt.transformTimestampArgument)(n))},transformReply:void 0}});var srt=E(rie=>{"use strict";Object.defineProperty(rie,"__esModule",{value:!0});rie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.DELETERULE"),t.pushKeys([e,r])},transformReply:void 0}});var irt=E(nie=>{"use strict";Object.defineProperty(nie,"__esModule",{value:!0});nie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.GET"),t.pushKey(e),r?.LATEST&&t.push("LATEST")},transformReply:{2(t){return t.length===0?null:{timestamp:t[0],value:Number(t[1])}},3(t){return t.length===0?null:{timestamp:t[0],value:t[1]}}}}});var iie=E(sie=>{"use strict";Object.defineProperty(sie,"__esModule",{value:!0});var ypr=Ce();sie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>{let n={};for(let s=0;s<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]=ypr.transformDoubleReply[2](t[27],void 0,r);break}}return n},3:void 0},unstableResp3:!0}});var art=E(NT=>{"use strict";var xpr=NT&&NT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(NT,"__esModule",{value:!0});var aie=xpr(iie());NT.default={IS_READ_ONLY:aie.default.IS_READ_ONLY,parseCommand(t,e){aie.default.parseCommand(t,e),t.push("DEBUG")},transformReply:{2:(t,e,r)=>{let n=aie.default.transformReply[2](t,e,r);for(let s=0;s<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 ort=E(oie=>{"use strict";Object.defineProperty(oie,"__esModule",{value:!0});var bpr=ai();oie.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TS.MADD");for(let{key:r,timestamp:n,value:s}of e)t.pushKey(r),t.push((0,bpr.transformTimestampArgument)(n),s.toString())},transformReply:void 0}});var Ul=E(bg=>{"use strict";Object.defineProperty(bg,"__esModule",{value:!0});bg.parseFilterArgument=bg.parseLatestArgument=void 0;var WL=ai();function crt(t,e){e&&t.push("LATEST")}bg.parseLatestArgument=crt;function urt(t,e){t.push("FILTER"),t.pushVariadic(e)}bg.parseFilterArgument=urt;bg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),crt(t,r?.LATEST),urt(t,e)},transformReply:{2(t,e,r){return(0,WL.resp2MapToValue)(t,([,,n])=>({sample:WL.transformSampleReply[2](n)}),r)},3(t){return(0,WL.resp3MapToValue)(t,([,e])=>({sample:WL.transformSampleReply[3](e)}))}}}});var cie=E(PT=>{"use strict";Object.defineProperty(PT,"__esModule",{value:!0});PT.createTransformMGetLabelsReply=void 0;var lrt=Ul(),OT=ai();function drt(){return{2(t,e,r){return(0,OT.resp2MapToValue)(t,([,n,s])=>({labels:(0,OT.transformRESP2Labels)(n),sample:OT.transformSampleReply[2](s)}),r)},3(t){return(0,OT.resp3MapToValue)(t,([e,r])=>({labels:e,sample:OT.transformSampleReply[3](r)}))}}}PT.createTransformMGetLabelsReply=drt;PT.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),(0,lrt.parseLatestArgument)(t,r?.LATEST),t.push("WITHLABELS"),(0,lrt.parseFilterArgument)(t,e)},transformReply:drt()}});var prt=E(uie=>{"use strict";Object.defineProperty(uie,"__esModule",{value:!0});var frt=Ul(),Epr=ai(),_pr=cie();uie.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TS.MGET"),(0,frt.parseLatestArgument)(t,n?.LATEST),(0,Epr.parseSelectedLabelsArguments)(t,r),(0,frt.parseFilterArgument)(t,e)},transformReply:(0,_pr.createTransformMGetLabelsReply)()}});var ql=E(kf=>{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});kf.transformRangeArguments=kf.parseRangeArguments=kf.TIME_SERIES_BUCKET_TIMESTAMP=void 0;var Eg=ai();kf.TIME_SERIES_BUCKET_TIMESTAMP={LOW:"-",MIDDLE:"~",END:"+"};function mrt(t,e,r,n){if(t.push((0,Eg.transformTimestampArgument)(e),(0,Eg.transformTimestampArgument)(r)),n?.LATEST&&t.push("LATEST"),n?.FILTER_BY_TS){t.push("FILTER_BY_TS");for(let s of n.FILTER_BY_TS)t.push((0,Eg.transformTimestampArgument)(s))}n?.FILTER_BY_VALUE&&t.push("FILTER_BY_VALUE",n.FILTER_BY_VALUE.min.toString(),n.FILTER_BY_VALUE.max.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.AGGREGATION&&(n?.ALIGN!==void 0&&t.push("ALIGN",(0,Eg.transformTimestampArgument)(n.ALIGN)),t.push("AGGREGATION",n.AGGREGATION.type,(0,Eg.transformTimestampArgument)(n.AGGREGATION.timeBucket)),n.AGGREGATION.BUCKETTIMESTAMP&&t.push("BUCKETTIMESTAMP",n.AGGREGATION.BUCKETTIMESTAMP),n.AGGREGATION.EMPTY&&t.push("EMPTY"))}kf.parseRangeArguments=mrt;function hrt(t,e,r,n,s){t.pushKey(e),mrt(t,r,n,s)}kf.transformRangeArguments=hrt;kf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TS.RANGE"),hrt(...t)},transformReply:{2(t){return Eg.transformSamplesReply[2](t)},3(t){return Eg.transformSamplesReply[3](t)}}}});var Vb=E(Iu=>{"use strict";Object.defineProperty(Iu,"__esModule",{value:!0});Iu.extractResp3MRangeSources=Iu.createTransformMRangeGroupByArguments=Iu.parseGroupByArguments=Iu.TIME_SERIES_REDUCERS=void 0;var $L=ai(),Spr=ql(),vpr=Ul();Iu.TIME_SERIES_REDUCERS={AVG:"AVG",SUM:"SUM",MIN:"MIN",MAX:"MAX",RANGE:"RANGE",COUNT:"COUNT",COUNTNAN:"COUNTNAN",COUNTALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S"};function grt(t,e){t.push("GROUPBY",e.label,"REDUCE",e.REDUCE)}Iu.parseGroupByArguments=grt;function Art(t){return(e,r,n,s,i,a)=>{e.push(t),(0,Spr.parseRangeArguments)(e,r,n,a),(0,vpr.parseFilterArgument)(e,s),grt(e,i)}}Iu.createTransformMRangeGroupByArguments=Art;function yrt(t){let e=t;return e instanceof Map?e.get("sources"):e instanceof Array?e[1]:e.sources}Iu.extractResp3MRangeSources=yrt;Iu.default={IS_READ_ONLY:!0,parseCommand:Art("TS.MRANGE"),transformReply:{2(t,e,r){return(0,$L.resp2MapToValue)(t,([n,s,i])=>({samples:$L.transformSamplesReply[2](i)}),r)},3(t){return(0,$L.resp3MapToValue)(t,([e,r,n,s])=>({sources:yrt(n),samples:$L.transformSamplesReply[3](s)}))}}}});var FL=E(kT=>{"use strict";Object.defineProperty(kT,"__esModule",{value:!0});kT.createTransformMRangeSelectedLabelsArguments=void 0;var zb=ai(),Ipr=ql(),Cpr=Ul();function xrt(t){return(e,r,n,s,i,a)=>{e.push(t),(0,Ipr.parseRangeArguments)(e,r,n,a),(0,zb.parseSelectedLabelsArguments)(e,s),(0,Cpr.parseFilterArgument)(e,i)}}kT.createTransformMRangeSelectedLabelsArguments=xrt;kT.default={IS_READ_ONLY:!0,parseCommand:xrt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,zb.resp2MapToValue)(t,([n,s,i])=>({labels:(0,zb.transformRESP2Labels)(s,r),samples:zb.transformSamplesReply[2](i)}),r)},3(t){return(0,zb.resp3MapToValue)(t,([e,r,n])=>({labels:r,samples:zb.transformSamplesReply[3](n)}))}}}});var die=E(_g=>{"use strict";var Tpr=_g&&_g.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_g,"__esModule",{value:!0});_g.createMRangeSelectedLabelsGroupByTransformArguments=void 0;var lie=ai(),wpr=ql(),brt=Vb(),Rpr=Ul(),Npr=Tpr(FL());function Ert(t){return(e,r,n,s,i,a,o)=>{e.push(t),(0,wpr.parseRangeArguments)(e,r,n,o),(0,lie.parseSelectedLabelsArguments)(e,s),(0,Rpr.parseFilterArgument)(e,i),(0,brt.parseGroupByArguments)(e,a)}}_g.createMRangeSelectedLabelsGroupByTransformArguments=Ert;_g.default={IS_READ_ONLY:!0,parseCommand:Ert("TS.MRANGE"),transformReply:{2:Npr.default.transformReply[2],3(t){return(0,lie.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,brt.extractResp3MRangeSources)(n),samples:lie.transformSamplesReply[3](s)}))}}}});var fie=E(BT=>{"use strict";Object.defineProperty(BT,"__esModule",{value:!0});BT.createMRangeWithLabelsGroupByTransformArguments=void 0;var DT=ai(),Opr=ql(),_rt=Vb(),Ppr=Ul();function Srt(t){return(e,r,n,s,i,a)=>{e.push(t),(0,Opr.parseRangeArguments)(e,r,n,a),e.push("WITHLABELS"),(0,Ppr.parseFilterArgument)(e,s),(0,_rt.parseGroupByArguments)(e,i)}}BT.createMRangeWithLabelsGroupByTransformArguments=Srt;BT.default={IS_READ_ONLY:!0,parseCommand:Srt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,DT.resp2MapToValue)(t,([n,s,i])=>{let a=(0,DT.transformRESP2LabelsWithSources)(s);return{labels:a.labels,sources:a.sources,samples:DT.transformSamplesReply[2](i)}},r)},3(t){return(0,DT.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,_rt.extractResp3MRangeSources)(n),samples:DT.transformSamplesReply[3](s)}))}}}});var pie=E(LT=>{"use strict";Object.defineProperty(LT,"__esModule",{value:!0});LT.createTransformMRangeWithLabelsArguments=void 0;var UL=ai(),kpr=ql(),Dpr=Ul();function vrt(t){return(e,r,n,s,i)=>{e.push(t),(0,kpr.parseRangeArguments)(e,r,n,i),e.push("WITHLABELS"),(0,Dpr.parseFilterArgument)(e,s)}}LT.createTransformMRangeWithLabelsArguments=vrt;LT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:vrt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,UL.resp2MapToValue)(t,([n,s,i])=>{let a=s,o=Object.create(null);for(let c of a){let[u,l]=c,d=u;o[d.toString()]=l}return{labels:o,samples:UL.transformSamplesReply[2](i)}},r)},3(t){return(0,UL.resp3MapToValue)(t,([e,r,n])=>({labels:e,samples:UL.transformSamplesReply[3](n)}))}}}});var mie=E(MT=>{"use strict";Object.defineProperty(MT,"__esModule",{value:!0});MT.createTransformMRangeArguments=void 0;var qL=ai(),Bpr=ql(),Lpr=Ul();function Irt(t){return(e,r,n,s,i)=>{e.push(t),(0,Bpr.parseRangeArguments)(e,r,n,i),(0,Lpr.parseFilterArgument)(e,s)}}MT.createTransformMRangeArguments=Irt;MT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:Irt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,qL.resp2MapToValue)(t,([n,s,i])=>qL.transformSamplesReply[2](i),r)},3(t){return(0,qL.resp3MapToValue)(t,([e,r,n])=>qL.transformSamplesReply[3](n))}}}});var Crt=E(Df=>{"use strict";var Mpr=Df&&Df.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Wpr=Df&&Df.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),$pr=Df&&Df.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Mpr(e,t,r);return Wpr(e,t),e};Object.defineProperty(Df,"__esModule",{value:!0});var hie=$pr(Vb());Df.default={IS_READ_ONLY:hie.default.IS_READ_ONLY,parseCommand:(0,hie.createTransformMRangeGroupByArguments)("TS.MREVRANGE"),transformReply:hie.default.transformReply}});var Trt=E(Bf=>{"use strict";var Fpr=Bf&&Bf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Upr=Bf&&Bf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qpr=Bf&&Bf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Fpr(e,t,r);return Upr(e,t),e};Object.defineProperty(Bf,"__esModule",{value:!0});var gie=qpr(die());Bf.default={IS_READ_ONLY:gie.default.IS_READ_ONLY,parseCommand:(0,gie.createMRangeSelectedLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:gie.default.transformReply}});var wrt=E(Lf=>{"use strict";var jpr=Lf&&Lf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Hpr=Lf&&Lf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Qpr=Lf&&Lf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jpr(e,t,r);return Hpr(e,t),e};Object.defineProperty(Lf,"__esModule",{value:!0});var Aie=Qpr(FL());Lf.default={IS_READ_ONLY:Aie.default.IS_READ_ONLY,parseCommand:(0,Aie.createTransformMRangeSelectedLabelsArguments)("TS.MREVRANGE"),transformReply:Aie.default.transformReply}});var Rrt=E(Mf=>{"use strict";var Gpr=Mf&&Mf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Kpr=Mf&&Mf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Vpr=Mf&&Mf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Gpr(e,t,r);return Kpr(e,t),e};Object.defineProperty(Mf,"__esModule",{value:!0});var yie=Vpr(fie());Mf.default={IS_READ_ONLY:yie.default.IS_READ_ONLY,parseCommand:(0,yie.createMRangeWithLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:yie.default.transformReply}});var Nrt=E(Wf=>{"use strict";var zpr=Wf&&Wf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ypr=Wf&&Wf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Jpr=Wf&&Wf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&zpr(e,t,r);return Ypr(e,t),e};Object.defineProperty(Wf,"__esModule",{value:!0});var jL=Jpr(pie());Wf.default={NOT_KEYED_COMMAND:jL.default.NOT_KEYED_COMMAND,IS_READ_ONLY:jL.default.IS_READ_ONLY,parseCommand:(0,jL.createTransformMRangeWithLabelsArguments)("TS.MREVRANGE"),transformReply:jL.default.transformReply}});var Ort=E($f=>{"use strict";var Xpr=$f&&$f.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Zpr=$f&&$f.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),e0r=$f&&$f.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Xpr(e,t,r);return Zpr(e,t),e};Object.defineProperty($f,"__esModule",{value:!0});var HL=e0r(mie());$f.default={NOT_KEYED_COMMAND:HL.default.NOT_KEYED_COMMAND,IS_READ_ONLY:HL.default.IS_READ_ONLY,parseCommand:(0,HL.createTransformMRangeArguments)("TS.MREVRANGE"),transformReply:HL.default.transformReply}});var Prt=E(xie=>{"use strict";Object.defineProperty(xie,"__esModule",{value:!0});xie.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.QUERYINDEX"),t.pushVariadic(e)},transformReply:{2:void 0,3:void 0}}});var krt=E(Ff=>{"use strict";var t0r=Ff&&Ff.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),r0r=Ff&&Ff.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),n0r=Ff&&Ff.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&t0r(e,t,r);return r0r(e,t),e};Object.defineProperty(Ff,"__esModule",{value:!0});var bie=n0r(ql());Ff.default={IS_READ_ONLY:bie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.REVRANGE"),(0,bie.transformRangeArguments)(...t)},transformReply:bie.default.transformReply}});var lnt=E(jl=>{"use strict";var s0r=jl&&jl.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),i0r=jl&&jl.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&s0r(e,t,r)},zr=jl&&jl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jl,"__esModule",{value:!0});var Drt=zr(Jtt()),Brt=zr(Xtt()),Lrt=zr(Ztt()),Mrt=zr(Xse()),Wrt=zr(trt()),$rt=zr(nrt()),Frt=zr(srt()),Urt=zr(irt()),qrt=zr(Zse()),jrt=zr(art()),Hrt=zr(iie()),Qrt=zr(ort()),Grt=zr(prt()),Krt=zr(cie()),Vrt=zr(Ul()),zrt=zr(Vb()),Yrt=zr(die()),Jrt=zr(FL()),Xrt=zr(fie()),Zrt=zr(pie()),ent=zr(mie()),tnt=zr(Crt()),rnt=zr(Trt()),nnt=zr(wrt()),snt=zr(Rrt()),int=zr(Nrt()),ant=zr(Ort()),ont=zr(Prt()),cnt=zr(ql()),unt=zr(krt());i0r(ai(),jl);jl.default={ADD:Drt.default,add:Drt.default,ALTER:Brt.default,alter:Brt.default,CREATE:Lrt.default,create:Lrt.default,CREATERULE:Mrt.default,createRule:Mrt.default,DECRBY:Wrt.default,decrBy:Wrt.default,DEL:$rt.default,del:$rt.default,DELETERULE:Frt.default,deleteRule:Frt.default,GET:Urt.default,get:Urt.default,INCRBY:qrt.default,incrBy:qrt.default,INFO_DEBUG:jrt.default,infoDebug:jrt.default,INFO:Hrt.default,info:Hrt.default,MADD:Qrt.default,mAdd:Qrt.default,MGET_SELECTED_LABELS:Grt.default,mGetSelectedLabels:Grt.default,MGET_WITHLABELS:Krt.default,mGetWithLabels:Krt.default,MGET:Vrt.default,mGet:Vrt.default,MRANGE_GROUPBY:zrt.default,mRangeGroupBy:zrt.default,MRANGE_SELECTED_LABELS_GROUPBY:Yrt.default,mRangeSelectedLabelsGroupBy:Yrt.default,MRANGE_SELECTED_LABELS:Jrt.default,mRangeSelectedLabels:Jrt.default,MRANGE_WITHLABELS_GROUPBY:Xrt.default,mRangeWithLabelsGroupBy:Xrt.default,MRANGE_WITHLABELS:Zrt.default,mRangeWithLabels:Zrt.default,MRANGE:ent.default,mRange:ent.default,MREVRANGE_GROUPBY:tnt.default,mRevRangeGroupBy:tnt.default,MREVRANGE_SELECTED_LABELS_GROUPBY:rnt.default,mRevRangeSelectedLabelsGroupBy:rnt.default,MREVRANGE_SELECTED_LABELS:nnt.default,mRevRangeSelectedLabels:nnt.default,MREVRANGE_WITHLABELS_GROUPBY:snt.default,mRevRangeWithLabelsGroupBy:snt.default,MREVRANGE_WITHLABELS:int.default,mRevRangeWithLabels:int.default,MREVRANGE:ant.default,mRevRange:ant.default,QUERYINDEX:ont.default,queryIndex:ont.default,RANGE:cnt.default,range:cnt.default,REVRANGE:unt.default,revRange:unt.default}});var _ie=E(Ki=>{"use strict";var a0r=Ki&&Ki.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ki,"__esModule",{value:!0});Ki.TIME_SERIES_REDUCERS=Ki.TIME_SERIES_BUCKET_TIMESTAMP=Ki.TIME_SERIES_AGGREGATION_TYPE=Ki.TIME_SERIES_DUPLICATE_POLICIES=Ki.TIME_SERIES_ENCODING=Ki.default=void 0;var Eie=lnt();Object.defineProperty(Ki,"default",{enumerable:!0,get:function(){return a0r(Eie).default}});Object.defineProperty(Ki,"TIME_SERIES_ENCODING",{enumerable:!0,get:function(){return Eie.TIME_SERIES_ENCODING}});Object.defineProperty(Ki,"TIME_SERIES_DUPLICATE_POLICIES",{enumerable:!0,get:function(){return Eie.TIME_SERIES_DUPLICATE_POLICIES}});var o0r=Xse();Object.defineProperty(Ki,"TIME_SERIES_AGGREGATION_TYPE",{enumerable:!0,get:function(){return o0r.TIME_SERIES_AGGREGATION_TYPE}});var c0r=ql();Object.defineProperty(Ki,"TIME_SERIES_BUCKET_TIMESTAMP",{enumerable:!0,get:function(){return c0r.TIME_SERIES_BUCKET_TIMESTAMP}});var u0r=Vb();Object.defineProperty(Ki,"TIME_SERIES_REDUCERS",{enumerable:!0,get:function(){return u0r.TIME_SERIES_REDUCERS}})});var dnt=E(gs=>{"use strict";var l0r=gs&&gs.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),WT=gs&&gs.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&l0r(e,t,r)},QL=gs&&gs.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gs,"__esModule",{value:!0});gs.createSentinel=gs.createCluster=gs.createClientPool=gs.createClient=void 0;var GL=aT(),d0r=QL(jne()),f0r=QL(hse()),p0r=QL(Kse()),m0r=QL(_ie());WT(aT(),gs);WT(jne(),gs);WT(hse(),gs);WT(Kse(),gs);WT(_ie(),gs);var KL={...d0r.default,json:f0r.default,ft:p0r.default,ts:m0r.default};function h0r(t){return(0,GL.createClient)({...t,modules:{...KL,...t?.modules}})}gs.createClient=h0r;function g0r(t,e){return(0,GL.createClientPool)({...t,modules:{...KL,...t?.modules}},e)}gs.createClientPool=g0r;function A0r(t){return(0,GL.createCluster)({...t,modules:{...KL,...t?.modules}})}gs.createCluster=A0r;function y0r(t){return(0,GL.createSentinel)({...t,modules:{...KL,...t?.modules}})}gs.createSentinel=y0r});var YL={};is(YL,{closeLocalRedisConnection:()=>_0r,getLocalRedisCaches:()=>b0r,getLocalRedisKey:()=>fnt,judgeLocalRedisValid:()=>E0r,setLocalRedisKey:()=>VL,setLocalRedisKeyWithExpiry:()=>x0r,updateLocalRedisCaches:()=>zL});async function Yb(){if(rs)return rs;let t=O.localRedisUrl;try{_("info","[Utils] [Local-Redis] \u6B63\u5728\u8FDE\u63A5\u672C\u5730 Redis");let{createClient:e}=await Promise.resolve().then(()=>Re(dnt(),1));return rs=e({url:t,socket:{reconnectStrategy:r=>r>=0?new Error("\u5DF2\u8FBE\u5230\u6700\u5927\u91CD\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u91CD\u8FDE"):1e3}}),rs.on("error",r=>{_("error","[Utils] [Local-Redis] \u8FDE\u63A5\u9519\u8BEF"),O.localRedisValid=!1}),rs.on("connect",()=>{_("info","[Utils] [Local-Redis] \u8FDE\u63A5\u6210\u529F")}),await rs.connect(),O.localRedisValid=!0,_("info","[Utils] [Local-Redis] Redis \u5BA2\u6237\u7AEF\u521D\u59CB\u5316\u5B8C\u6210"),rs}catch(e){return _("error","[Utils] [Local-Redis] \u521D\u59CB\u5316\u5931\u8D25:",e.message),O.localRedisValid=!1,null}}async function Jb(){if(!rs)return!1;try{return await rs.ping()==="PONG"}catch(t){return _("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",t.message),O.localRedisValid=!1,!1}}async function fnt(t){try{if(await Jb()||await Yb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");return await rs.get(t)}catch(e){return _("error","[Utils] [Local-Redis] GET \u8BF7\u6C42\u5931\u8D25:",e.message),null}}async function VL(t,e){let r=db(t,e),n=an(r);if(O.lastHashes[t]===n)return _("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};try{if(await Jb()||await Yb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let s=await rs.set(t,r);return O.lastHashes[t]=n,_("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),{result:s}}catch(s){return _("error","[Utils] [Local-Redis] SET \u8BF7\u6C42\u5931\u8D25:",s.message),{result:"ERROR"}}}async function x0r(t,e,r){let n=db(t,e),s=an(n);if(O.lastHashes[t]===s)return _("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};try{if(await Jb()||await Yb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let i=await rs.setEx(t,r,n);return O.lastHashes[t]=s,_("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),{result:i}}catch(i){return _("error","[Utils] [Local-Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",i.message),{result:"ERROR"}}}async function b0r(){if(!O.localCacheInitialized)try{if(_("info","[Utils] [Local-Redis] getLocalRedisCaches start."),await Jb()||await Yb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"],e=await Promise.all(t.map(n=>fnt(n)));O.animes=e[0]?JSON.parse(e[0]):O.animes,O.episodeIds=e[1]?JSON.parse(e[1]):O.episodeIds,O.episodeNum=e[2]?JSON.parse(e[2]):O.episodeNum,O.reqRecords=e[3]?JSON.parse(e[3]):O.reqRecords;let r=e[4]?JSON.parse(e[4]):null;r&&typeof r=="object"&&(O.lastSelectMap=new Map(Object.entries(r)),_("info",`[Utils] [Local-Redis] Restored lastSelectMap from Local Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=e[5]?parseInt(e[5],10):O.todayReqNum,O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.localCacheInitialized=!0,_("info","[Utils] [Local-Redis] getLocalRedisCaches completed successfully.")}catch(t){_("error",`[Utils] [Local-Redis] getLocalRedisCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function zL(){try{if(_("info","[Utils] [Local-Redis] updateLocalRedisCaches start."),await Jb()||await Yb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=an(s);i!==O.lastHashes[r]&&t.push({key:r,value:n,hash:i})}if(t.length>0){_("info",`[Utils] [Local-Redis] Updating ${t.length} changed keys: ${t.map(a=>a.key).join(", ")}`);let r=t.map(async({key:a,value:o})=>VL(a,o)),n=await Promise.all(r),s=0,i=0;n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,_("warn",`[Utils] [Local-Redis] Failed to update Local Redis key: ${t[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(t.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),_("info",`[Utils] [Local-Redis] Local Redis update completed successfully: ${s} keys updated`)):_("warn",`[Utils] [Local-Redis] Local Redis update partially failed: ${s} succeeded, ${i} failed`)}else _("info","[Utils] [Local-Redis] No changes detected, skipping Local Redis update.")}catch(t){_("error",`[Utils] [Local-Redis] updateLocalRedisCaches failed: ${t.message}`,t.stack),_("error",`[Utils] [Local-Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function E0r(t){if(!O.localRedisValid&&O.localRedisUrl&&t!=="/favicon.ico"&&t!=="/robots.txt")try{await Jb()||await Yb(),rs&&await rs.ping()==="PONG"&&(O.localRedisValid=!0)}catch(e){_("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",e.message),O.localRedisValid=!1}}async function _0r(){if(rs)try{await rs.quit(),rs=null,O.localRedisValid=!1,_("info","[Utils] [Local-Redis] \u8FDE\u63A5\u5DF2\u5173\u95ED")}catch(t){_("error","[Utils] [Local-Redis] \u5173\u95ED\u8FDE\u63A5\u5931\u8D25:",t.message)}}var rs,$T=lr(()=>{Ot();_t();Ts();rs=null});var Lo,sE=lr(()=>{Ot();_t();Lo=class{constructor(){}updateLocalEnv(e,r){return typeof O.env<"u"?O.env[e]=r:typeof process<"u"&&(process.env[e]=r),O.reInit(),_("info",`[system] [Server] \u2713 Environment variable updated successfully: ${e}`),!0}delLocalEnv(e){return typeof O.env<"u"&&O.env[e]?delete O.env[e]:typeof process<"u"&&process.env?.[e]&&delete process.env[e],O.reInit(),_("info",`[system] [Server] \u2713 Environment variable deleted successfully: ${e}`),!0}getAllEnv(){let e=O.originalEnvVars,r=O.envVarConfig,n={};for(let[s,i]of Object.entries(e)){let a=r[s]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"};n[s]={value:i,category:a.category,type:a.type,description:a.description,options:a.options}}return n}getEnv(e){return this.getAllEnv()[e]}async setEnv(e,r){throw new Error("Method 'setEnv' must be implemented")}async addEnv(e,r){throw new Error("Method 'addEnv' must be implemented")}async delEnv(e){throw new Error("Method 'delEnv' must be implemented")}async checkParams(e,r,n){throw new Error("Method 'checkParams' must be implemented")}async deploy(e,r,n){throw new Error("Method 'deploy' must be implemented")}}});var Qst={};is(Qst,{CloudflareHandler:()=>jie});var jie,Gst=lr(()=>{sE();Ot();_t();ir();jie=class extends Lo{API_URL="https://api.cloudflare.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/client/v4/accounts/${e}/workers/scripts/${r}/settings`,i={headers:{Authorization:`Bearer ${n}`}},a=await ge(s,i);return a&&a?.data&&a?.data?.result&&a?.data?.result?.bindings?a?.data?.result?.bindings:null}_setEnv(e,r,n){let s=e.findIndex(i=>i.name===r);return n==null?s!==-1&&e.splice(s,1):s!==-1?e[s].text=n:e.push({name:r,text:n,type:"plain_text"}),e}async setEnv(e,r){try{let n=await this._getAllEnvs(O.deployPlatformAccount,O.deployPlatformProject,O.deployPlatformToken);if(n===null){_("error","[system] [Server] \u2717 Failed to set environment variable: envs is null");return}let s=`${this.API_URL}/client/v4/accounts/${O.deployPlatformAccount}/workers/scripts/${O.deployPlatformProject}/settings`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},a=new FormData,o={bindings:this._setEnv(n,e,r==null?null:r.toString())};return a.append("settings",new Blob([JSON.stringify(o)],{type:"application/json"}),"settings.json"),await wB(s,a,i),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){return await this.setEnv(e,null),this.delLocalEnv(e)}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){return _("info","[system] [Server] After modifying the environment variables on the cloudflare platform, it will be automatically deployed."),!0}}});var Kst={};is(Kst,{VercelHandler:()=>Hie});var Hie,Vst=lr(()=>{sE();Ot();_t();ir();Hie=class extends Lo{API_URL="https://api.vercel.com";async _getAllEnvs(e,r){let n=`${this.API_URL}/v10/projects/${e}/env`,s={headers:{Authorization:`Bearer ${r}`}};return(await ge(n,s)).data.envs}async _getEevId(e){try{let n=(await this._getAllEnvs(O.deployPlatformProject,O.deployPlatformToken)).find(s=>s.key===e);return n||null}catch(r){_("error","[system] [Server] \u2717 Failed to _getEevId:",r.message)}}async setEnv(e,r){let n=await this._getEevId(e);if(!n){_("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let s=`${this.API_URL}/v9/projects/${O.deployPlatformProject}/env/${n.id}`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},a={key:e,value:r.toString(),target:n.target,type:n.type};return await wB(s,JSON.stringify(a),i),this.updateLocalEnv(e,r)}catch(s){_("error","[system] [Server] \u2717 Failed to set environment variable:",s.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/v10/projects/${O.deployPlatformProject}/env`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,value:r.toString(),target:["production","preview","development"],type:"encrypted"};return await Kr(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){let r=await this._getEevId(e);if(!r){_("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let n=`${this.API_URL}/v9/projects/${O.deployPlatformProject}/env/${r.id}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await ub(n,s),this.delLocalEnv(e)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/v6/deployments?projectId=${O.deployPlatformProject}&limit=1`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},n=await ge(e,r),s;if(n?.data&&n?.data?.deployments&&n?.data?.deployments.length>0)s=n.data.deployments[0].uid;else return _("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(n?.data)),!1;let i=`${this.API_URL}/v13/deployments`,a={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},o={name:O.deployPlatformProject,deploymentId:s,target:"production"},c=await Kr(i,JSON.stringify(o),a);return c?.data?.id?!0:(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(c?.data)),!1)}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var zst={};is(zst,{NetlifyHandler:()=>Qie});var Qie,Yst=lr(()=>{sE();Ot();_t();ir();Qie=class extends Lo{API_URL="https://api.netlify.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/api/v1/accounts/${e}/env?site_id=${r}`,i={headers:{Authorization:`Bearer ${n}`}};return await ge(s,i)}async setEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,values:[{context:"all",value:r.toString()}]};return await b8e(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Kr(n,JSON.stringify([{key:e,values:[{context:"all",value:r}]}]),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){try{let r=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,n={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await ub(r,n),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to add environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/v1/sites/${O.deployPlatformProject}/builds`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},s=await Kr(e,JSON.stringify({}),r);return s?.data?.id?!0:(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(s?.data)),!1)}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var Jst={};is(Jst,{EdgeoneHandler:()=>Gie});var Gie,Xst=lr(()=>{sE();Ot();_t();ir();Gie=class extends Lo{API_URL="https://pages-api.cloud.tencent.com/v1";async _httpPost(e,r){let n=`${this.API_URL}`,s={headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}};return await Kr(n,JSON.stringify(r),s)}async _getAllEnvs(e,r){let n={Action:"ModifyPagesProjectEnvs",ProjectId:e},s=await this._httpPost(r,n);if(s?.data?.Code!==0)return null;let i=s?.data.Data?.Response?.EnvVars??[];return Object.fromEntries(i.map(({Key:a,Value:o})=>[a,o]))}async setEnv(e,r){try{let n={Action:"ModifyPagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[{Key:e,Value:r.toString()}]};return await this._httpPost(O.deployPlatformToken,n),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r={Action:"DeletePagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[e]};return await this._httpPost(O.deployPlatformToken,r),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e={Action:"CreatePagesDeployment",ProjectId:O.deployPlatformProject,RepoBranch:"main",ViaMeta:"Github",Provider:"Github"},r=await this._httpPost(O.deployPlatformToken,e);return r?.data?.Code!==0?(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(r?.data)),!1):!0}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var Zst={};is(Zst,{HuggingfaceHandler:()=>Kie});var Kie,eit=lr(()=>{sE();Ot();_t();ir();Kie=class extends Lo{API_URL="https://huggingface.co";get repoId(){return`${O.deployPlatformAccount}/${O.deployPlatformProject}`}_getOptions(e=O.deployPlatformToken){return{headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}}}_getVariablesUrl(e){return`${this.API_URL}/api/spaces/${e}/variables`}async _getAllEnvs(e,r,n){let s=`${e}/${r}`,i=this._getVariablesUrl(s);return(await ge(i,this._getOptions(n)))?.data}async setEnv(e,r){try{let n=this._getVariablesUrl(this.repoId),s={key:e,value:r.toString()};return await Kr(n,JSON.stringify(s),this._getOptions()),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r=this._getVariablesUrl(this.repoId);return await ub(r,{...this._getOptions(),body:JSON.stringify({key:e})}),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/spaces/${this.repoId}/restart`;return await Kr(e,void 0,this._getOptions()),!0}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var Hlt=E(cA=>{"use strict";Object.defineProperty(cA,"__esModule",{value:!0});cA.removeTrailingChar=cA.merge=void 0;var UTr=(...t)=>{let e={};return t.forEach(function(r){var n;for(n in r)n in e&&e[n]===null?e[n]=r[n]:n in e&&Array.isArray(e[n])?e[n]=e[n].concat(r[n]):n in e&&typeof e[n]=="object"?e[n]=(0,cA.merge)(e[n],r[n]):e[n]=r[n]}),e};cA.merge=UTr;var qTr=(t,e)=>t.length>1&&t.endsWith(e)?t.substring(0,t.length-1):t;cA.removeTrailingChar=qTr});var PE=E(cm=>{"use strict";Object.defineProperty(cm,"__esModule",{value:!0});cm.DataError=cm.DatabaseError=cm.NestedError=void 0;var n2=class extends Error{inner;id;constructor(e,r,n){super(e),this.inner=n,this.id=r,this.name=this.constructor.name}toString(){let e=this.name+": "+this.message;return this.inner?e+`:
`+this.inner:e}};cm.NestedError=n2;var aue=class extends n2{};cm.DatabaseError=aue;var oue=class extends n2{};cm.DataError=oue});var fue=E(Sa=>{"use strict";Object.defineProperty(Sa,"__esModule",{value:!0});Sa.getArrayIndicies=Sa.validateArrayIndex=Sa.validateArrayIndicies=Sa.isInt=Sa.ArrayInfo=Sa.arrayRegex=void 0;var kM=PE(),jTr=()=>/^([\.0-9a-zA-Z_$\-][0-9a-zA-Z_\-$\.]*)\[((?!(\]|\[)).*|)\]$/gm;Sa.arrayRegex=jTr;var cue={},uue=class t{property;index=0;append=!1;indicies=[];constructor(e,r){this.property=e;let n=r[0]??0;if(this.append=n===""||r[r.length-1]==="",this.indicies=r,lue(n))this.index=parseInt(n);else if(!this.append)throw new kM.DataError("Only numerical values accepted for array index",200)}static processArray(e){if(typeof e>"u")return null;if(cue[e])return cue[e];let n=(0,Sa.arrayRegex)().exec(e.trim());if(n!=null){let s=n[1],i="["+n[2].toString()+"]",a=due(i);return Qlt(a),cue[e]=new t(s,a)}return null}getIndex(e,r){if(this.append)return-1;let n=this.index;if(n==-1){let s=r?e:e[this.property];return s.length===0?0:s.length-1}return n}getData(e){if(this.append)throw new kM.DataError("Can't get data when appending",100);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n[r]}setData(e,r){if(this.append){let n=e[this.property];this.indicies.forEach(s=>{s!==""&&(s=+s,s===-1&&(s=n.length-1),n=n[+s])}),n.push(r)}else{let{index:n,dataForProperty:s}=this.getArrayDataAndIndexFromProperty(e);n===-1?s.push(r):s[n]=r}}delete(e){if(this.append)throw new kM.DataError("Can't delete an appended data",10);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);n.splice(r,1)}isValid(e){let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n.hasOwnProperty(r)}getArrayDataAndIndexFromProperty(e){let r=0,n=e instanceof Array?e:e[this.property]??e;if(this.indicies.length>0){r=+this.indicies[this.indicies.length-1];for(let s=0;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}};Sa.ArrayInfo=uue;function lue(t){return!isNaN(t)&&Number(t)==t&&!isNaN(parseInt(t,10))}Sa.isInt=lue;function Qlt(t){let e=t.filter(r=>r==="");if(e.length>1)throw Error("Only one append index is supported for nested arrays");if(e.length===1&&t[t.length-1]!=="")throw Error("Append index must be at the end of the nested array")}Sa.validateArrayIndicies=Qlt;function Glt(t){if(t.length!==0&&!lue(t))throw new kM.DataError("Only numerical values accepted for array index",200)}Sa.validateArrayIndex=Glt;function due(t){if(t.length===0)return[];if(t.charAt(0)!=="[")throw new Error("Invalid array syntax detected");let e=t.substring(1,t.indexOf("]"));Glt(e);let r=e.length+2;return[e,...due(t.substring(r))]}Sa.getArrayIndicies=due});var zlt=E(DM=>{"use strict";Object.defineProperty(DM,"__esModule",{value:!0});DM.DBParentData=void 0;var Klt=fue(),Vlt=PE(),pue=class{parent;data;db;dataPath;constructor(e,r,n,s){this.parent=s,this.data=e,this.db=r,this.dataPath=n}checkArray(e=!1){let r=Klt.ArrayInfo.processArray(this.parent);if(r&&(!r.append||e)&&!r.isValid(this.data))throw new Vlt.DataError("DataPath: /"+this.dataPath+". Can't find index "+r.index+" in array "+r.property,10);return r}getData(){if(this.parent===void 0)return this.data;let e=this.checkArray();return e?e.getData(this.data):this.data[this.parent]}setData(e){if(this.parent===void 0){this.db.resetData(e);return}let r=Klt.ArrayInfo.processArray(this.parent);if(r){if(!this.data.hasOwnProperty(r.property))this.data[r.property]=[];else if(!Array.isArray(this.data[r.property]))throw new Vlt.DataError("DataPath: /"+this.dataPath+". "+r.property+" is not an array.",11);r.setData(this.data,e)}else this.data[this.parent]=e}delete(){if(this.parent===void 0){this.db.resetData({});return}let e=this.checkArray(!0);e?e.delete(this.data):delete this.data[this.parent]}};DM.DBParentData=pue});var Jlt=E((a0n,Ylt)=>{Ylt.exports=function(){"use strict";function t(){this.readers=0,this.queue=[]}function e(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!0,c.readers--,c.queue.length&&c.queue[0]())}}();if(c.readers<0||c.queue.length){var d=!1;if(c.queue.push(function(){!d&&c.readers>=0&&(d=!0,c.queue.shift(),c.readers++,a.call(u,l),c.queue.length&&c.queue[0]())}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(o.scope))},o.timeout)}}else c.readers++,a.call(o.scope,l)}function r(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!0,c.readers=0,c.queue.length&&c.queue[0]())}}();if(c.readers||c.queue.length){var d=!1;if(c.queue.push(function(){d||c.readers||(d=!0,c.queue.shift(),c.readers=-1,a.call(o.scope,l))}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(u))},o.timeout)}}else c.readers=-1,a.call(o.scope,l)}var n=new t,s={};this.readLock=e,this.writeLock=r,this.async={readLock:function(i,a,o){typeof i!="function"?e(i,function(c){a.call(this,null,c)},o):(a=i,o=a,e(function(c){a.call(this,null,c)},o))},writeLock:function(i,a,o){typeof i!="function"?r(i,function(c){a.call(this,null,c)},o):(a=i,o=a,r(function(c){a.call(this,null,c)},o))}}}});var Xlt=E(BM=>{"use strict";Object.defineProperty(BM,"__esModule",{value:!0});BM.TimeoutError=void 0;var HTr=PE(),mue=class extends HTr.NestedError{};BM.TimeoutError=mue});var tdt=E(kE=>{"use strict";Object.defineProperty(kE,"__esModule",{value:!0});kE.writeLockAsync=kE.readLockAsync=void 0;var QTr=Jlt(),Zlt=Xlt(),edt=new QTr,GTr=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{edt.readLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new Zlt.TimeoutError("Timeout",100))}})})};kE.readLockAsync=GTr;var KTr=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{edt.writeLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new Zlt.TimeoutError("Timeout",100))}})})};kE.writeLockAsync=KTr});var gue=E(LM=>{"use strict";Object.defineProperty(LM,"__esModule",{value:!0});LM.JsonAdapter=void 0;var hue=class{adapter;humanReadable;dateRegex=new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}","m");constructor(e,r=!1){this.adapter=e,this.humanReadable=r}replacer(e,r){return r}reviver(e,r){return typeof r=="string"&&this.dateRegex.exec(r)!=null?new Date(r):r}async readAsync(){let e=await this.adapter.readAsync();return e==null?(await this.writeAsync({}),{}):JSON.parse(e,this.reviver.bind(this))}writeAsync(e){let r="";return this.humanReadable?r=JSON.stringify(e,this.replacer.bind(this),4):r=JSON.stringify(e,this.replacer.bind(this)),this.adapter.writeAsync(r)}};LM.JsonAdapter=hue});var yue=E(WM=>{"use strict";Object.defineProperty(WM,"__esModule",{value:!0});WM.FileAdapter=void 0;var MM=require("fs/promises"),VTr=require("path"),Aue=class{filename;fsync;constructor(e,r){this.filename=e,this.fsync=r}async readAsync(){try{return await(0,MM.readFile)(this.filename,{encoding:"utf-8"})}catch(e){if(e.code==="ENOENT")return null;throw e}}async writeAsync(e){let r=null;try{r=await(0,MM.open)(this.filename,"w")}catch(n){if(n.code!=="ENOENT")throw n;let s=VTr.dirname(this.filename);await(0,MM.mkdir)(s,{recursive:!0}),r=await(0,MM.open)(this.filename,"w")}try{await r.writeFile(e,{encoding:"utf-8"}),this.fsync&&await r.sync()}finally{await r.close()}}};WM.FileAdapter=Aue});var rdt=E(DE=>{"use strict";Object.defineProperty(DE,"__esModule",{value:!0});DE.ConfigWithAdapter=DE.Config=void 0;var zTr=require("path"),YTr=gue(),JTr=yue(),xue=class{adapter;filename;saveOnPush;separator;constructor(e,r=!0,n=!1,s="/",i=!1){this.filename=e,zTr.extname(e)===""&&(this.filename+=".json"),this.saveOnPush=r,this.separator=s,this.adapter=new YTr.JsonAdapter(new JTr.FileAdapter(this.filename,i),n)}};DE.Config=xue;var bue=class{adapter;saveOnPush;separator;constructor(e,r=!0,n="/"){this.adapter=e,this.saveOnPush=r,this.separator=n}};DE.ConfigWithAdapter=bue});var adt=E(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.JsonDB=Ji.FileAdapter=Ji.JsonAdapter=Ji.DataError=Ji.DatabaseError=Ji.ConfigWithAdapter=Ji.Config=void 0;var ndt=Hlt(),Yi=PE(),XTr=zlt(),ZTr=fue(),Eue=tdt(),sdt=rdt();Object.defineProperty(Ji,"Config",{enumerable:!0,get:function(){return sdt.Config}});Object.defineProperty(Ji,"ConfigWithAdapter",{enumerable:!0,get:function(){return sdt.ConfigWithAdapter}});var idt=PE();Object.defineProperty(Ji,"DatabaseError",{enumerable:!0,get:function(){return idt.DatabaseError}});Object.defineProperty(Ji,"DataError",{enumerable:!0,get:function(){return idt.DataError}});var ewr=gue();Object.defineProperty(Ji,"JsonAdapter",{enumerable:!0,get:function(){return ewr.JsonAdapter}});var twr=yue();Object.defineProperty(Ji,"FileAdapter",{enumerable:!0,get:function(){return twr.FileAdapter}});var _ue=class{loaded=!1;data={};config;constructor(e){this.config=e}processDataPath(e){if(e===void 0||!e.trim())throw new Yi.DataError("The Data Path can't be empty",6);if(e==this.config.separator)return[];e=(0,ndt.removeTrailingChar)(e,this.config.separator);let r=e.split(this.config.separator);return r.shift(),r}async retrieveData(e,r=!1){await this.load();let n=this,s=(i,a)=>{let o=e[a];function c(l=!1){if(i.hasOwnProperty(o))i=i[o];else if(r)l?i[o]=[]:i[o]={},i=i[o];else throw new Yi.DataError(`Can't find dataPath: ${n.config.separator}${e.join(n.config.separator)}. Stopped at ${o}`,5)}let u=ZTr.ArrayInfo.processArray(o);if(u){if(o=u.property,c(!0),!Array.isArray(i))throw new Yi.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. ${o} is not an array.`,11);let l=u.getIndex(i,!0);if(!u.append&&i.hasOwnProperty(l))i=u.getData(i);else if(r)u.append?(i.push({}),i=i[i.length-1]):(i[l]={},i=i[l]);else throw new Yi.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. . Can't find index ${u.index} in array ${o}`,10)}else c();return e.length==++a?i:s(i,a)};return e.length===0?this.data:s(this.data,0)}async getParentData(e,r){let n=this.processDataPath(e),s=n.pop();return new XTr.DBParentData(await this.retrieveData(n,r),this,e,s)}getData(e){return(0,Eue.readLockAsync)(async()=>{let r=this.processDataPath(e);return this.retrieveData(r,!1)})}getObject(e){return this.getData(e)}async getObjectDefault(e,r){try{return await this.getData(e)}catch(n){if(!(n instanceof Yi.DataError)||n.id!=5)throw n;return r}}async exists(e){try{return await this.getData(e),!0}catch(r){if(r instanceof Yi.DataError)return!1;throw r}}async count(e){let r=await this.getData(e);if(!Array.isArray(r))throw new Yi.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return(await this.retrieveData(n,!1)).length}async getIndex(e,r,n="id"){return(await this.getArrayData(e)).map(function(i){return i[n]}).indexOf(r)}async getIndexValue(e,r){return(await this.getArrayData(e)).indexOf(r)}async getArrayData(e){let r=await this.getData(e);if(!Array.isArray(r))throw new Yi.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return this.retrieveData(n,!1)}async filter(e,r){let n=await this.getData(e);if(Array.isArray(n))return n.filter(r);if(n instanceof Object){let i=Object.entries(n).filter(a=>r(a[1],a[0]));return!i||i.length<1?void 0:i.map(a=>a[1])}throw new Yi.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async find(e,r){let n=await this.getData(e);if(Array.isArray(n))return n.find(r);if(n instanceof Object){let i=Object.entries(n).find(a=>r(a[1],a[0]));return!i||i.length<2?void 0:i[1]}throw new Yi.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async push(e,r,n=!0){return(0,Eue.writeLockAsync)(async()=>{let s=await this.getParentData(e,!0),i=r;if(!n){if(Array.isArray(r)){let a=s.getData();if(a===void 0)a=[];else if(!Array.isArray(a))throw new Yi.DataError("Can't merge another type of data with an Array",3);i=a.concat(r)}else if(r===Object(r)){if(Array.isArray(s.getData()))throw new Yi.DataError("Can't merge an Array with an Object",4);i=(0,ndt.merge)(s.getData(),r)}}s.setData(i),this.config.saveOnPush&&await this.save()})}async delete(e){await(0,Eue.writeLockAsync)(async()=>{(await this.getParentData(e,!0)).delete(),this.config.saveOnPush&&await this.save()})}resetData(e){this.data=e}async reload(){this.loaded=!1,await this.load()}async load(){if(!this.loaded)try{this.data=await this.config.adapter.readAsync(),this.loaded=!0}catch(e){throw new Yi.DatabaseError("Can't Load Database",1,e)}}async save(e){if(e=e||!1,!e&&!this.loaded)throw new Yi.DatabaseError("DataBase not loaded. Can't write",7);try{await this.config.adapter.writeAsync(this.data)}catch(r){throw new Yi.DatabaseError("Can't save the database",2,r)}}async fromPath(e,r="id"){let[,...n]=e.split("/"),s=n.reduce((a,o,c)=>{if(c%2===0)a[`${o}`]="";else{let l=Object.keys(a);a[`${l[l.length-1]}`]=`${o}`}return a},{}),i=[];for await(let a of Object.keys(s)){i.push(`/${a}`);let o=s[a];try{let c=await this.getIndex(i.join(""),o,r);i.push(`[${c}]`)}catch(c){throw new Yi.DataError(`DataPath: ${i.join("")}/${o} not found.`,13,c)}}return i.join("")}};Ji.JsonDB=_ue});var aOr={};is(aOr,{start:()=>sOr,stop:()=>iOr});module.exports=K0t(aOr);var lpt=Re(Ywe(),1);var NE=Re(require("node:fs/promises"),1),Ws=Re(require("node:path"),1),OM=require("node:crypto"),Olt=require("node:module"),rue=require("node:url");function RS(t,e){return function(){return t.apply(e,arguments)}}var{toString:e9t}=Object.prototype,{getPrototypeOf:xj}=Object,rk=(t=>e=>{let r=e9t.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),ul=t=>(t=t.toLowerCase(),e=>rk(e)===t),nk=t=>e=>typeof e===t,{isArray:sx}=Array,NS=nk("undefined");function t9t(t){return t!==null&&!NS(t)&&t.constructor!==null&&!NS(t.constructor)&&lc(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var Zwe=ul("ArrayBuffer");function r9t(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&Zwe(t.buffer),e}var n9t=nk("string"),lc=nk("function"),e2e=nk("number"),sk=t=>t!==null&&typeof t=="object",s9t=t=>t===!0||t===!1,tk=t=>{if(rk(t)!=="object")return!1;let e=xj(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},i9t=ul("Date"),a9t=ul("File"),o9t=ul("Blob"),c9t=ul("FileList"),u9t=t=>sk(t)&&lc(t.pipe),l9t=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||lc(t.append)&&((e=rk(t))==="formdata"||e==="object"&&lc(t.toString)&&t.toString()==="[object FormData]"))},d9t=ul("URLSearchParams"),f9t=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function OS(t,e,{allOwnKeys:r=!1}={}){if(t===null||typeof t>"u")return;let n,s;if(typeof t!="object"&&(t=[t]),sx(t))for(n=0,s=t.length;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 t2e(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 r2e=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,n2e=t=>!NS(t)&&t!==r2e;function yj(){let{caseless:t}=n2e(this)&&this||{},e={},r=(n,s)=>{let i=t&&t2e(e,s)||s;tk(e[i])&&tk(n)?e[i]=yj(e[i],n):tk(n)?e[i]=yj({},n):sx(n)?e[i]=n.slice():e[i]=n};for(let n=0,s=arguments.length;n<s;n++)arguments[n]&&OS(arguments[n],r);return e}var p9t=(t,e,r,{allOwnKeys:n}={})=>(OS(e,(s,i)=>{r&&lc(s)?t[i]=RS(s,r):t[i]=s},{allOwnKeys:n}),t),m9t=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),h9t=(t,e,r,n)=>{t.prototype=Object.create(e.prototype,n),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),r&&Object.assign(t.prototype,r)},g9t=(t,e,r,n)=>{let s,i,a,o={};if(e=e||{},t==null)return e;do{for(s=Object.getOwnPropertyNames(t),i=s.length;i-- >0;)a=s[i],(!n||n(a,t,e))&&!o[a]&&(e[a]=t[a],o[a]=!0);t=r!==!1&&xj(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e},A9t=(t,e,r)=>{t=String(t),(r===void 0||r>t.length)&&(r=t.length),r-=e.length;let n=t.indexOf(e,r);return n!==-1&&n===r},y9t=t=>{if(!t)return null;if(sx(t))return t;let e=t.length;if(!e2e(e))return null;let r=new Array(e);for(;e-- >0;)r[e]=t[e];return r},x9t=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&xj(Uint8Array)),b9t=(t,e)=>{let n=(t&&t[Symbol.iterator]).call(t),s;for(;(s=n.next())&&!s.done;){let i=s.value;e.call(t,i[0],i[1])}},E9t=(t,e)=>{let r,n=[];for(;(r=t.exec(e))!==null;)n.push(r);return n},_9t=ul("HTMLFormElement"),S9t=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),Jwe=(({hasOwnProperty:t})=>(e,r)=>t.call(e,r))(Object.prototype),v9t=ul("RegExp"),s2e=(t,e)=>{let r=Object.getOwnPropertyDescriptors(t),n={};OS(r,(s,i)=>{let a;(a=e(s,i,t))!==!1&&(n[i]=a||s)}),Object.defineProperties(t,n)},I9t=t=>{s2e(t,(e,r)=>{if(lc(t)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=t[r];if(lc(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},C9t=(t,e)=>{let r={},n=s=>{s.forEach(i=>{r[i]=!0})};return sx(t)?n(t):n(String(t).split(e)),r},T9t=()=>{},w9t=(t,e)=>(t=+t,Number.isFinite(t)?t:e),Aj="abcdefghijklmnopqrstuvwxyz",Xwe="0123456789",i2e={DIGIT:Xwe,ALPHA:Aj,ALPHA_DIGIT:Aj+Aj.toUpperCase()+Xwe},R9t=(t=16,e=i2e.ALPHA_DIGIT)=>{let r="",{length:n}=e;for(;t--;)r+=e[Math.random()*n|0];return r};function N9t(t){return!!(t&&lc(t.append)&&t[Symbol.toStringTag]==="FormData"&&t[Symbol.iterator])}var O9t=t=>{let e=new Array(10),r=(n,s)=>{if(sk(n)){if(e.indexOf(n)>=0)return;if(!("toJSON"in n)){e[s]=n;let i=sx(n)?[]:{};return OS(n,(a,o)=>{let c=r(a,s+1);!NS(c)&&(i[o]=c)}),e[s]=void 0,i}}return n};return r(t,0)},P9t=ul("AsyncFunction"),k9t=t=>t&&(sk(t)||lc(t))&&lc(t.then)&&lc(t.catch),le={isArray:sx,isArrayBuffer:Zwe,isBuffer:t9t,isFormData:l9t,isArrayBufferView:r9t,isString:n9t,isNumber:e2e,isBoolean:s9t,isObject:sk,isPlainObject:tk,isUndefined:NS,isDate:i9t,isFile:a9t,isBlob:o9t,isRegExp:v9t,isFunction:lc,isStream:u9t,isURLSearchParams:d9t,isTypedArray:x9t,isFileList:c9t,forEach:OS,merge:yj,extend:p9t,trim:f9t,stripBOM:m9t,inherits:h9t,toFlatObject:g9t,kindOf:rk,kindOfTest:ul,endsWith:A9t,toArray:y9t,forEachEntry:b9t,matchAll:E9t,isHTMLForm:_9t,hasOwnProperty:Jwe,hasOwnProp:Jwe,reduceDescriptors:s2e,freezeMethods:I9t,toObjectSet:C9t,toCamelCase:S9t,noop:T9t,toFiniteNumber:w9t,findKey:t2e,global:r2e,isContextDefined:n2e,ALPHABET:i2e,generateString:R9t,isSpecCompliantForm:N9t,toJSONObject:O9t,isAsyncFn:P9t,isThenable:k9t};function ix(t,e,r,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),n&&(this.request=n),s&&(this.response=s)}le.inherits(ix,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:le.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var a2e=ix.prototype,o2e={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{o2e[t]={value:t}});Object.defineProperties(ix,o2e);Object.defineProperty(a2e,"isAxiosError",{value:!0});ix.from=(t,e,r,n,s,i)=>{let a=Object.create(a2e);return le.toFlatObject(t,a,function(c){return c!==Error.prototype},o=>o!=="isAxiosError"),ix.call(a,t.message,e,r,n,s),a.cause=t,a.name=t.name,i&&Object.assign(a,i),a};var Xe=ix;var uNe=Re(cNe(),1),mk=uNe.default;function Fj(t){return le.isPlainObject(t)||le.isArray(t)}function dNe(t){return le.endsWith(t,"[]")?t.slice(0,-2):t}function lNe(t,e,r){return t?t.concat(e).map(function(s,i){return s=dNe(s),!r&&i?"["+s+"]":s}).join(r?".":""):e}function yHt(t){return le.isArray(t)&&!t.some(Fj)}var xHt=le.toFlatObject(le,{},null,function(e){return/^is[A-Z]/.test(e)});function bHt(t,e,r){if(!le.isObject(t))throw new TypeError("target must be an object");e=e||new(mk||FormData),r=le.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,A){return!le.isUndefined(A[h])});let n=r.metaTokens,s=r.visitor||l,i=r.dots,a=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&le.isSpecCompliantForm(e);if(!le.isFunction(s))throw new TypeError("visitor must be a function");function u(m){if(m===null)return"";if(le.isDate(m))return m.toISOString();if(!c&&le.isBlob(m))throw new Xe("Blob is not supported. Use a Buffer instead.");return le.isArrayBuffer(m)||le.isTypedArray(m)?c&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function l(m,h,A){let g=m;if(m&&!A&&typeof m=="object"){if(le.endsWith(h,"{}"))h=n?h:h.slice(0,-2),m=JSON.stringify(m);else if(le.isArray(m)&&yHt(m)||(le.isFileList(m)||le.endsWith(h,"[]"))&&(g=le.toArray(m)))return h=dNe(h),g.forEach(function(y,x){!(le.isUndefined(y)||y===null)&&e.append(a===!0?lNe([h],x,i):a===null?h:h+"[]",u(y))}),!1}return Fj(m)?!0:(e.append(lNe(A,h,i),u(m)),!1)}let d=[],f=Object.assign(xHt,{defaultVisitor:l,convertValue:u,isVisitable:Fj});function p(m,h){if(!le.isUndefined(m)){if(d.indexOf(m)!==-1)throw Error("Circular reference detected in "+h.join("."));d.push(m),le.forEach(m,function(g,b){(!(le.isUndefined(g)||g===null)&&s.call(e,g,le.isString(b)?b.trim():b,h,f))===!0&&p(g,h?h.concat(b):[b])}),d.pop()}}if(!le.isObject(t))throw new TypeError("data must be an object");return p(t),e}var Vp=bHt;function fNe(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function pNe(t,e){this._pairs=[],t&&Vp(t,this,e)}var mNe=pNe.prototype;mNe.append=function(e,r){this._pairs.push([e,r])};mNe.toString=function(e){let r=e?function(n){return e.call(this,n,fNe)}:fNe;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};var hNe=pNe;function EHt(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function fh(t,e,r){if(!e)return t;let n=r&&r.encode||EHt,s=r&&r.serialize,i;if(s?i=s(e,r):i=le.isURLSearchParams(e)?e.toString():new hNe(e,r).toString(n),i){let a=t.indexOf("#");a!==-1&&(t=t.slice(0,a)),t+=(t.indexOf("?")===-1?"?":"&")+i}return t}var Uj=class{constructor(){this.handlers=[]}use(e,r,n){return this.handlers.push({fulfilled:e,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){le.forEach(this.handlers,function(n){n!==null&&e(n)})}},qj=Uj;var lx={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var gNe=Re(require("url"),1),ANe=gNe.default.URLSearchParams;var yNe={isNode:!0,classes:{URLSearchParams:ANe,FormData:mk,Blob:typeof Blob<"u"&&Blob||null},protocols:["http","https","file","data"]};var jj={};is(jj,{hasBrowserEnv:()=>xNe,hasStandardBrowserEnv:()=>_Ht,hasStandardBrowserWebWorkerEnv:()=>SHt});var xNe=typeof window<"u"&&typeof document<"u",_Ht=(t=>xNe&&["ReactNative","NativeScript","NS"].indexOf(t)<0)(typeof navigator<"u"&&navigator.product),SHt=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function";var Rs={...jj,...yNe};function Hj(t,e){return Vp(t,new Rs.classes.URLSearchParams,Object.assign({visitor:function(r,n,s,i){return Rs.isNode&&le.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function vHt(t){return le.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function IHt(t){let e={},r=Object.keys(t),n,s=r.length,i;for(n=0;n<s;n++)i=r[n],e[i]=t[i];return e}function CHt(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&&le.isArray(s)?s.length:a,c?(le.hasOwnProp(s,a)?s[a]=[s[a],n]:s[a]=n,!o):((!s[a]||!le.isObject(s[a]))&&(s[a]=[]),e(r,n,s[a],i)&&le.isArray(s[a])&&(s[a]=IHt(s[a])),!o)}if(le.isFormData(t)&&le.isFunction(t.entries)){let r={};return le.forEachEntry(t,(n,s)=>{e(vHt(n),s,r,0)}),r}return null}var hk=CHt;function THt(t,e,r){if(le.isString(t))try{return(e||JSON.parse)(t),le.trim(t)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(t)}var Qj={transitional:lx,adapter:["xhr","http"],transformRequest:[function(e,r){let n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=le.isObject(e);if(i&&le.isHTMLForm(e)&&(e=new FormData(e)),le.isFormData(e))return s?JSON.stringify(hk(e)):e;if(le.isArrayBuffer(e)||le.isBuffer(e)||le.isStream(e)||le.isFile(e)||le.isBlob(e))return e;if(le.isArrayBufferView(e))return e.buffer;if(le.isURLSearchParams(e))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Hj(e,this.formSerializer).toString();if((o=le.isFileList(e))||n.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return Vp(o?{"files[]":e}:e,c&&new c,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),THt(e)):e}],transformResponse:[function(e){let r=this.transitional||Qj.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(e&&le.isString(e)&&(n&&!this.responseType||s)){let a=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(o){if(a)throw o.name==="SyntaxError"?Xe.from(o,Xe.ERR_BAD_RESPONSE,this,null,this.response):o}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Rs.classes.FormData,Blob:Rs.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};le.forEach(["delete","get","head","post","put","patch"],t=>{Qj.headers[t]={}});var dx=Qj;var wHt=le.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),bNe=t=>{let e={},r,n,s;return t&&t.split(`
`).forEach(function(a){s=a.indexOf(":"),r=a.substring(0,s).trim().toLowerCase(),n=a.substring(s+1).trim(),!(!r||e[r]&&wHt[r])&&(r==="set-cookie"?e[r]?e[r].push(n):e[r]=[n]:e[r]=e[r]?e[r]+", "+n:n)}),e};var ENe=Symbol("internals");function MS(t){return t&&String(t).trim().toLowerCase()}function gk(t){return t===!1||t==null?t:le.isArray(t)?t.map(gk):String(t)}function RHt(t){let e=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(t);)e[n[1]]=n[2];return e}var NHt=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Gj(t,e,r,n,s){if(le.isFunction(n))return n.call(this,e,r);if(s&&(e=r),!!le.isString(e)){if(le.isString(n))return e.indexOf(n)!==-1;if(le.isRegExp(n))return n.test(e)}}function OHt(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,r,n)=>r.toUpperCase()+n)}function PHt(t,e){let r=le.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(t,n+r,{value:function(s,i,a){return this[n].call(this,e,s,i,a)},configurable:!0})})}var fx=class{constructor(e){e&&this.set(e)}set(e,r,n){let s=this;function i(o,c,u){let l=MS(c);if(!l)throw new Error("header name must be a non-empty string");let d=le.findKey(s,l);(!d||s[d]===void 0||u===!0||u===void 0&&s[d]!==!1)&&(s[d||c]=gk(o))}let a=(o,c)=>le.forEach(o,(u,l)=>i(u,l,c));return le.isPlainObject(e)||e instanceof this.constructor?a(e,r):le.isString(e)&&(e=e.trim())&&!NHt(e)?a(bNe(e),r):e!=null&&i(r,e,n),this}get(e,r){if(e=MS(e),e){let n=le.findKey(this,e);if(n){let s=this[n];if(!r)return s;if(r===!0)return RHt(s);if(le.isFunction(r))return r.call(this,s,n);if(le.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,r){if(e=MS(e),e){let n=le.findKey(this,e);return!!(n&&this[n]!==void 0&&(!r||Gj(this,this[n],n,r)))}return!1}delete(e,r){let n=this,s=!1;function i(a){if(a=MS(a),a){let o=le.findKey(n,a);o&&(!r||Gj(n,n[o],o,r))&&(delete n[o],s=!0)}}return le.isArray(e)?e.forEach(i):i(e),s}clear(e){let r=Object.keys(this),n=r.length,s=!1;for(;n--;){let i=r[n];(!e||Gj(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){let r=this,n={};return le.forEach(this,(s,i)=>{let a=le.findKey(n,i);if(a){r[a]=gk(s),delete r[i];return}let o=e?OHt(i):String(i).trim();o!==i&&delete r[i],r[o]=gk(s),n[o]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){let r=Object.create(null);return le.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=e&&le.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,r])=>e+": "+r).join(`
`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...r){let n=new this(e);return r.forEach(s=>n.set(s)),n}static accessor(e){let n=(this[ENe]=this[ENe]={accessors:{}}).accessors,s=this.prototype;function i(a){let o=MS(a);n[o]||(PHt(s,a),n[o]=!0)}return le.isArray(e)?e.forEach(i):i(e),this}};fx.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);le.reduceDescriptors(fx.prototype,({value:t},e)=>{let r=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(n){this[r]=n}}});le.freezeMethods(fx);var Ns=fx;function WS(t,e){let r=this||dx,n=e||r,s=Ns.from(n.headers),i=n.data;return le.forEach(t,function(o){i=o.call(r,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function $S(t){return!!(t&&t.__CANCEL__)}function _Ne(t,e,r){Xe.call(this,t??"canceled",Xe.ERR_CANCELED,e,r),this.name="CanceledError"}le.inherits(_Ne,Xe,{__CANCEL__:!0});var nu=_Ne;function zp(t,e,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?t(r):e(new Xe("Request failed with status code "+r.status,[Xe.ERR_BAD_REQUEST,Xe.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function Kj(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function Vj(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function ph(t,e){return t&&!Kj(e)?Vj(t,e):e}var nOe=Re(vNe(),1),sOe=Re(require("http"),1),iOe=Re(require("https"),1),aOe=Re(require("util"),1),oOe=Re(jNe(),1),Bd=Re(require("zlib"),1);var Ah="1.6.7";function HS(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}var AQt=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function dH(t,e,r){let n=r&&r.Blob||Rs.classes.Blob,s=HS(t);if(e===void 0&&n&&(e=!0),s==="data"){t=s.length?t.slice(s.length+1):t;let i=AQt.exec(t);if(!i)throw new Xe("Invalid URL",Xe.ERR_INVALID_URL);let a=i[1],o=i[2],c=i[3],u=Buffer.from(decodeURIComponent(c),o?"base64":"utf8");if(e){if(!n)throw new Xe("Blob is not supported",Xe.ERR_NOT_SUPPORT);return new n([u],{type:a})}return u}throw new Xe("Unsupported protocol "+s,Xe.ERR_NOT_SUPPORT)}var yh=Re(require("stream"),1);var QNe=Re(require("stream"),1);function yQt(t,e){let r=0,n=1e3/e,s=null;return function(a,o){let c=Date.now();if(a||c-r>n)return s&&(clearTimeout(s),s=null),r=c,t.apply(null,o);s||(s=setTimeout(()=>(s=null,r=Date.now(),t.apply(null,o)),n-(c-r)))}}var HNe=yQt;function xQt(t,e){t=t||10;let r=new Array(t),n=new Array(t),s=0,i=0,a;return e=e!==void 0?e:1e3,function(c){let u=Date.now(),l=n[i];a||(a=u),r[s]=c,n[s]=u;let d=i,f=0;for(;d!==s;)f+=r[d++],d=d%t;if(s=(s+1)%t,s===i&&(i=(i+1)%t),u-a<e)return;let p=l&&u-l;return p?Math.round(f*1e3/p):void 0}}var Ek=xQt;var _k=Symbol("internals"),fH=class extends QNe.default.Transform{constructor(e){e=le.toFlatObject(e,{maxRate:0,chunkSize:64*1024,minChunkSize:100,timeWindow:500,ticksRate:2,samplesCount:15},null,(o,c)=>!le.isUndefined(c[o])),super({readableHighWaterMark:e.chunkSize});let r=this,n=this[_k]={length:e.length,timeWindow:e.timeWindow,ticksRate:e.ticksRate,chunkSize:e.chunkSize,maxRate:e.maxRate,minChunkSize:e.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null},s=Ek(n.ticksRate*e.samplesCount,n.timeWindow);this.on("newListener",o=>{o==="progress"&&(n.isCaptured||(n.isCaptured=!0))});let i=0;n.updateProgress=HNe(function(){let c=n.length,u=n.bytesSeen,l=u-i;if(!l||r.destroyed)return;let d=s(l);i=u,process.nextTick(()=>{r.emit("progress",{loaded:u,total:c,progress:c?u/c:void 0,bytes:l,rate:d||void 0,estimated:d&&c&&u<=c?(c-u)/d:void 0})})},n.ticksRate);let a=()=>{n.updateProgress(!0)};this.once("end",a),this.once("error",a)}_read(e){let r=this[_k];return r.onReadCallback&&r.onReadCallback(),super._read(e)}_transform(e,r,n){let s=this,i=this[_k],a=i.maxRate,o=this.readableHighWaterMark,c=i.timeWindow,u=1e3/c,l=a/u,d=i.minChunkSize!==!1?Math.max(i.minChunkSize,l*.01):0;function f(m,h){let A=Buffer.byteLength(m);i.bytesSeen+=A,i.bytes+=A,i.isCaptured&&i.updateProgress(),s.push(m)?process.nextTick(h):i.onReadCallback=()=>{i.onReadCallback=null,process.nextTick(h)}}let p=(m,h)=>{let A=Buffer.byteLength(m),g=null,b=o,y,x=0;if(a){let v=Date.now();(!i.ts||(x=v-i.ts)>=c)&&(i.ts=v,y=l-i.bytes,i.bytes=y<0?-y:0,x=0),y=l-i.bytes}if(a){if(y<=0)return setTimeout(()=>{h(null,m)},c-x);y<b&&(b=y)}b&&A>b&&A-b>d&&(g=m.subarray(b),m=m.subarray(0,b)),f(m,g?()=>{process.nextTick(h,null,g)}:h)};p(e,function m(h,A){if(h)return n(h);A?p(A,m):n(null)})}setLength(e){return this[_k].length=+e,this}},pH=fH;var cOe=Re(require("events"),1);var KNe=require("util"),VNe=require("stream");var{asyncIterator:GNe}=Symbol,bQt=async function*(t){t.stream?yield*t.stream():t.arrayBuffer?yield await t.arrayBuffer():t[GNe]?yield*t[GNe]():yield t},Sk=bQt;var EQt=le.ALPHABET.ALPHA_DIGIT+"-_",QS=new KNe.TextEncoder,Jp=`\r
`,_Qt=QS.encode(Jp),SQt=2,mH=class{constructor(e,r){let{escapeName:n}=this.constructor,s=le.isString(r),i=`Content-Disposition: form-data; name="${n(e)}"${!s&&r.name?`; filename="${n(r.name)}"`:""}${Jp}`;s?r=QS.encode(String(r).replace(/\r?\n|\r\n?/g,Jp)):i+=`Content-Type: ${r.type||"application/octet-stream"}${Jp}`,this.headers=QS.encode(i+Jp),this.contentLength=s?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+SQt,this.name=e,this.value=r}async*encode(){yield this.headers;let{value:e}=this;le.isTypedArray(e)?yield e:yield*Sk(e),yield _Qt}static escapeName(e){return String(e).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},vQt=(t,e,r)=>{let{tag:n="form-data-boundary",size:s=25,boundary:i=n+"-"+le.generateString(s,EQt)}=r||{};if(!le.isFormData(t))throw TypeError("FormData instance required");if(i.length<1||i.length>70)throw Error("boundary must be 10-70 characters long");let a=QS.encode("--"+i+Jp),o=QS.encode("--"+i+"--"+Jp+Jp),c=o.byteLength,u=Array.from(t.entries()).map(([d,f])=>{let p=new mH(d,f);return c+=p.size,p});c+=a.byteLength*u.length,c=le.toFiniteNumber(c);let l={"Content-Type":`multipart/form-data; boundary=${i}`};return Number.isFinite(c)&&(l["Content-Length"]=c),e&&e(l),VNe.Readable.from(async function*(){for(let d of u)yield a,yield*d.encode();yield o}())},zNe=vQt;var YNe=Re(require("stream"),1),hH=class extends YNe.default.Transform{__transform(e,r,n){this.push(e),n()}_transform(e,r,n){if(e.length!==0&&(this._transform=this.__transform,e[0]!==120)){let s=Buffer.alloc(2);s[0]=120,s[1]=156,this.push(s,r)}this.__transform(e,r,n)}},JNe=hH;var IQt=(t,e)=>le.isAsyncFn(t)?function(...r){let n=r.pop();t.apply(this,r).then(s=>{try{e?n(null,...e(s)):n(null,s)}catch(i){n(i)}},n)}:t,XNe=IQt;var ZNe={flush:Bd.default.constants.Z_SYNC_FLUSH,finishFlush:Bd.default.constants.Z_SYNC_FLUSH},CQt={flush:Bd.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:Bd.default.constants.BROTLI_OPERATION_FLUSH},eOe=le.isFunction(Bd.default.createBrotliDecompress),{http:TQt,https:wQt}=oOe.default,RQt=/https:?/,tOe=Rs.protocols.map(t=>t+":");function NQt(t,e){t.beforeRedirects.proxy&&t.beforeRedirects.proxy(t),t.beforeRedirects.config&&t.beforeRedirects.config(t,e)}function uOe(t,e,r){let n=e;if(!n&&n!==!1){let s=(0,nOe.getProxyForUrl)(r);s&&(n=new URL(s))}if(n){if(n.username&&(n.auth=(n.username||"")+":"+(n.password||"")),n.auth){(n.auth.username||n.auth.password)&&(n.auth=(n.auth.username||"")+":"+(n.auth.password||""));let i=Buffer.from(n.auth,"utf8").toString("base64");t.headers["Proxy-Authorization"]="Basic "+i}t.headers.host=t.hostname+(t.port?":"+t.port:"");let s=n.hostname||n.host;t.hostname=s,t.host=s,t.port=n.port,t.path=r,n.protocol&&(t.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}t.beforeRedirects.proxy=function(i){uOe(i,e,i.href)}}var OQt=typeof process<"u"&&le.kindOf(process)==="process",PQt=t=>new Promise((e,r)=>{let n,s,i=(c,u)=>{s||(s=!0,n&&n(c,u))},a=c=>{i(c),e(c)},o=c=>{i(c,!0),r(c)};t(a,o,c=>n=c).catch(o)}),kQt=({address:t,family:e})=>{if(!le.isString(t))throw TypeError("address must be a string");return{address:t,family:e||(t.indexOf(".")<0?6:4)}},rOe=(t,e)=>kQt(le.isObject(t)?t:{address:t,family:e}),lOe=OQt&&function(e){return PQt(async function(n,s,i){let{data:a,lookup:o,family:c}=e,{responseType:u,responseEncoding:l}=e,d=e.method.toUpperCase(),f,p=!1,m;if(o){let F=XNe(o,K=>le.isArray(K)?K:[K]);o=(K,j,J)=>{F(K,j,(se,oe,ue)=>{if(se)return J(se);let Ie=le.isArray(oe)?oe.map(we=>rOe(we)):[rOe(oe,ue)];j.all?J(se,Ie):J(se,Ie[0].address,Ie[0].family)})}}let h=new cOe.default,A=()=>{e.cancelToken&&e.cancelToken.unsubscribe(g),e.signal&&e.signal.removeEventListener("abort",g),h.removeAllListeners()};i((F,K)=>{f=!0,K&&(p=!0,A())});function g(F){h.emit("abort",!F||F.type?new nu(null,e,m):F)}h.once("abort",s),(e.cancelToken||e.signal)&&(e.cancelToken&&e.cancelToken.subscribe(g),e.signal&&(e.signal.aborted?g():e.signal.addEventListener("abort",g)));let b=ph(e.baseURL,e.url),y=new URL(b,"http://localhost"),x=y.protocol||tOe[0];if(x==="data:"){let F;if(d!=="GET")return zp(n,s,{status:405,statusText:"method not allowed",headers:{},config:e});try{F=dH(e.url,u==="blob",{Blob:e.env&&e.env.Blob})}catch(K){throw Xe.from(K,Xe.ERR_BAD_REQUEST,e)}return u==="text"?(F=F.toString(l),(!l||l==="utf8")&&(F=le.stripBOM(F))):u==="stream"&&(F=yh.default.Readable.from(F)),zp(n,s,{data:F,status:200,statusText:"OK",headers:new Ns,config:e})}if(tOe.indexOf(x)===-1)return s(new Xe("Unsupported protocol "+x,Xe.ERR_BAD_REQUEST,e));let v=Ns.from(e.headers).normalize();v.set("User-Agent","axios/"+Ah,!1);let I=e.onDownloadProgress,R=e.onUploadProgress,w=e.maxRate,N,P;if(le.isSpecCompliantForm(a)){let F=v.getContentType(/boundary=([-_\w\d]{10,70})/i);a=zNe(a,K=>{v.set(K)},{tag:`axios-${Ah}-boundary`,boundary:F&&F[1]||void 0})}else if(le.isFormData(a)&&le.isFunction(a.getHeaders)){if(v.set(a.getHeaders()),!v.hasContentLength())try{let F=await aOe.default.promisify(a.getLength).call(a);Number.isFinite(F)&&F>=0&&v.setContentLength(F)}catch{}}else if(le.isBlob(a))a.size&&v.setContentType(a.type||"application/octet-stream"),v.setContentLength(a.size||0),a=yh.default.Readable.from(Sk(a));else if(a&&!le.isStream(a)){if(!Buffer.isBuffer(a))if(le.isArrayBuffer(a))a=Buffer.from(new Uint8Array(a));else if(le.isString(a))a=Buffer.from(a,"utf-8");else return s(new Xe("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",Xe.ERR_BAD_REQUEST,e));if(v.setContentLength(a.length,!1),e.maxBodyLength>-1&&a.length>e.maxBodyLength)return s(new Xe("Request body larger than maxBodyLength limit",Xe.ERR_BAD_REQUEST,e))}let B=le.toFiniteNumber(v.getContentLength());le.isArray(w)?(N=w[0],P=w[1]):N=P=w,a&&(R||N)&&(le.isStream(a)||(a=yh.default.Readable.from(a,{objectMode:!1})),a=yh.default.pipeline([a,new pH({length:B,maxRate:le.toFiniteNumber(N)})],le.noop),R&&a.on("progress",F=>{R(Object.assign(F,{upload:!0}))}));let M;if(e.auth){let F=e.auth.username||"",K=e.auth.password||"";M=F+":"+K}if(!M&&y.username){let F=y.username,K=y.password;M=F+":"+K}M&&v.delete("authorization");let D;try{D=fh(y.pathname+y.search,e.params,e.paramsSerializer).replace(/^\?/,"")}catch(F){let K=new Error(F.message);return K.config=e,K.url=e.url,K.exists=!0,s(K)}v.set("Accept-Encoding","gzip, compress, deflate"+(eOe?", br":""),!1);let L={path:D,method:d,headers:v.toJSON(),agents:{http:e.httpAgent,https:e.httpsAgent},auth:M,protocol:x,family:c,beforeRedirect:NQt,beforeRedirects:{}};!le.isUndefined(o)&&(L.lookup=o),e.socketPath?L.socketPath=e.socketPath:(L.hostname=y.hostname,L.port=y.port,uOe(L,e.proxy,x+"//"+y.hostname+(y.port?":"+y.port:"")+L.path));let Z,W=RQt.test(L.protocol);if(L.agent=W?e.httpsAgent:e.httpAgent,e.transport?Z=e.transport:e.maxRedirects===0?Z=W?iOe.default:sOe.default:(e.maxRedirects&&(L.maxRedirects=e.maxRedirects),e.beforeRedirect&&(L.beforeRedirects.config=e.beforeRedirect),Z=W?wQt:TQt),e.maxBodyLength>-1?L.maxBodyLength=e.maxBodyLength:L.maxBodyLength=1/0,e.insecureHTTPParser&&(L.insecureHTTPParser=e.insecureHTTPParser),m=Z.request(L,function(K){if(m.destroyed)return;let j=[K],J=+K.headers["content-length"];if(I){let we=new pH({length:le.toFiniteNumber(J),maxRate:le.toFiniteNumber(P)});I&&we.on("progress",qe=>{I(Object.assign(qe,{download:!0}))}),j.push(we)}let se=K,oe=K.req||m;if(e.decompress!==!1&&K.headers["content-encoding"])switch((d==="HEAD"||K.statusCode===204)&&delete K.headers["content-encoding"],(K.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":j.push(Bd.default.createUnzip(ZNe)),delete K.headers["content-encoding"];break;case"deflate":j.push(new JNe),j.push(Bd.default.createUnzip(ZNe)),delete K.headers["content-encoding"];break;case"br":eOe&&(j.push(Bd.default.createBrotliDecompress(CQt)),delete K.headers["content-encoding"])}se=j.length>1?yh.default.pipeline(j,le.noop):j[0];let ue=yh.default.finished(se,()=>{ue(),A()}),Ie={status:K.statusCode,statusText:K.statusMessage,headers:new Ns(K.headers),config:e,request:oe};if(u==="stream")Ie.data=se,zp(n,s,Ie);else{let we=[],qe=0;se.on("data",function(_e){we.push(_e),qe+=_e.length,e.maxContentLength>-1&&qe>e.maxContentLength&&(p=!0,se.destroy(),s(new Xe("maxContentLength size of "+e.maxContentLength+" exceeded",Xe.ERR_BAD_RESPONSE,e,oe)))}),se.on("aborted",function(){if(p)return;let _e=new Xe("maxContentLength size of "+e.maxContentLength+" exceeded",Xe.ERR_BAD_RESPONSE,e,oe);se.destroy(_e),s(_e)}),se.on("error",function(_e){m.destroyed||s(Xe.from(_e,null,e,oe))}),se.on("end",function(){try{let _e=we.length===1?we[0]:Buffer.concat(we);u!=="arraybuffer"&&(_e=_e.toString(l),(!l||l==="utf8")&&(_e=le.stripBOM(_e))),Ie.data=_e}catch(_e){return s(Xe.from(_e,null,e,Ie.request,Ie))}zp(n,s,Ie)})}h.once("abort",we=>{se.destroyed||(se.emit("error",we),se.destroy())})}),h.once("abort",F=>{s(F),m.destroy(F)}),m.on("error",function(K){s(Xe.from(K,null,e,m))}),m.on("socket",function(K){K.setKeepAlive(!0,1e3*60)}),e.timeout){let F=parseInt(e.timeout,10);if(Number.isNaN(F)){s(new Xe("error trying to parse `config.timeout` to int",Xe.ERR_BAD_OPTION_VALUE,e,m));return}m.setTimeout(F,function(){if(f)return;let j=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",J=e.transitional||lx;e.timeoutErrorMessage&&(j=e.timeoutErrorMessage),s(new Xe(j,J.clarifyTimeoutError?Xe.ETIMEDOUT:Xe.ECONNABORTED,e,m)),g()})}if(le.isStream(a)){let F=!1,K=!1;a.on("end",()=>{F=!0}),a.once("error",j=>{K=!0,m.destroy(j)}),a.on("close",()=>{!F&&!K&&g(new nu("Request stream has been aborted",e,m))}),a.pipe(m)}else m.end(a)})};var dOe=Rs.hasStandardBrowserEnv?{write(t,e,r,n,s,i){let a=[t+"="+encodeURIComponent(e)];le.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),le.isString(n)&&a.push("path="+n),le.isString(s)&&a.push("domain="+s),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(t){let e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};var fOe=Rs.hasStandardBrowserEnv?function(){let e=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function s(i){let a=i;return e&&(r.setAttribute("href",a),a=r.href),r.setAttribute("href",a),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=s(window.location.href),function(a){let o=le.isString(a)?s(a):a;return o.protocol===n.protocol&&o.host===n.host}}():function(){return function(){return!0}}();function pOe(t,e){let r=0,n=Ek(50,250);return s=>{let i=s.loaded,a=s.lengthComputable?s.total:void 0,o=i-r,c=n(o),u=i<=a;r=i;let l={loaded:i,total:a,progress:a?i/a:void 0,bytes:o,rate:c||void 0,estimated:c&&a&&u?(a-i)/c:void 0,event:s};l[e?"download":"upload"]=!0,t(l)}}var DQt=typeof XMLHttpRequest<"u",mOe=DQt&&function(t){return new Promise(function(r,n){let s=t.data,i=Ns.from(t.headers).normalize(),{responseType:a,withXSRFToken:o}=t,c;function u(){t.cancelToken&&t.cancelToken.unsubscribe(c),t.signal&&t.signal.removeEventListener("abort",c)}let l;if(le.isFormData(s)){if(Rs.hasStandardBrowserEnv||Rs.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if((l=i.getContentType())!==!1){let[h,...A]=l?l.split(";").map(g=>g.trim()).filter(Boolean):[];i.setContentType([h||"multipart/form-data",...A].join("; "))}}let d=new XMLHttpRequest;if(t.auth){let h=t.auth.username||"",A=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";i.set("Authorization","Basic "+btoa(h+":"+A))}let f=ph(t.baseURL,t.url);d.open(t.method.toUpperCase(),fh(f,t.params,t.paramsSerializer),!0),d.timeout=t.timeout;function p(){if(!d)return;let h=Ns.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),g={data:!a||a==="text"||a==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:h,config:t,request:d};zp(function(y){r(y),u()},function(y){n(y),u()},g),d=null}if("onloadend"in d?d.onloadend=p:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(p)},d.onabort=function(){d&&(n(new Xe("Request aborted",Xe.ECONNABORTED,t,d)),d=null)},d.onerror=function(){n(new Xe("Network Error",Xe.ERR_NETWORK,t,d)),d=null},d.ontimeout=function(){let A=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",g=t.transitional||lx;t.timeoutErrorMessage&&(A=t.timeoutErrorMessage),n(new Xe(A,g.clarifyTimeoutError?Xe.ETIMEDOUT:Xe.ECONNABORTED,t,d)),d=null},Rs.hasStandardBrowserEnv&&(o&&le.isFunction(o)&&(o=o(t)),o||o!==!1&&fOe(f))){let h=t.xsrfHeaderName&&t.xsrfCookieName&&dOe.read(t.xsrfCookieName);h&&i.set(t.xsrfHeaderName,h)}s===void 0&&i.setContentType(null),"setRequestHeader"in d&&le.forEach(i.toJSON(),function(A,g){d.setRequestHeader(g,A)}),le.isUndefined(t.withCredentials)||(d.withCredentials=!!t.withCredentials),a&&a!=="json"&&(d.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&d.addEventListener("progress",pOe(t.onDownloadProgress,!0)),typeof t.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",pOe(t.onUploadProgress)),(t.cancelToken||t.signal)&&(c=h=>{d&&(n(!h||h.type?new nu(null,t,d):h),d.abort(),d=null)},t.cancelToken&&t.cancelToken.subscribe(c),t.signal&&(t.signal.aborted?c():t.signal.addEventListener("abort",c)));let m=HS(f);if(m&&Rs.protocols.indexOf(m)===-1){n(new Xe("Unsupported protocol "+m+":",Xe.ERR_BAD_REQUEST,t));return}d.send(s||null)})};var gH={http:lOe,xhr:mOe};le.forEach(gH,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});var hOe=t=>`- ${t}`,BQt=t=>le.isFunction(t)||t===null||t===!1,vk={getAdapter:t=>{t=le.isArray(t)?t:[t];let{length:e}=t,r,n,s={};for(let i=0;i<e;i++){r=t[i];let a;if(n=r,!BQt(r)&&(n=gH[(a=String(r)).toLowerCase()],n===void 0))throw new Xe(`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(hOe).join(`
`):" "+hOe(i[0]):"as no adapter specified";throw new Xe("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return n},adapters:gH};function AH(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new nu(null,t)}function Ik(t){return AH(t),t.headers=Ns.from(t.headers),t.data=WS.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),vk.getAdapter(t.adapter||dx.adapter)(t).then(function(n){return AH(t),n.data=WS.call(t,t.transformResponse,n),n.headers=Ns.from(n.headers),n},function(n){return $S(n)||(AH(t),n&&n.response&&(n.response.data=WS.call(t,t.transformResponse,n.response),n.response.headers=Ns.from(n.response.headers))),Promise.reject(n)})}var gOe=t=>t instanceof Ns?t.toJSON():t;function Ld(t,e){e=e||{};let r={};function n(u,l,d){return le.isPlainObject(u)&&le.isPlainObject(l)?le.merge.call({caseless:d},u,l):le.isPlainObject(l)?le.merge({},l):le.isArray(l)?l.slice():l}function s(u,l,d){if(le.isUndefined(l)){if(!le.isUndefined(u))return n(void 0,u,d)}else return n(u,l,d)}function i(u,l){if(!le.isUndefined(l))return n(void 0,l)}function a(u,l){if(le.isUndefined(l)){if(!le.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function o(u,l,d){if(d in e)return n(u,l);if(d in t)return n(void 0,u)}let c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:o,headers:(u,l)=>s(gOe(u),gOe(l),!0)};return le.forEach(Object.keys(Object.assign({},t,e)),function(l){let d=c[l]||s,f=d(t[l],e[l],l);le.isUndefined(f)&&d!==o||(r[l]=f)}),r}var yH={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{yH[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});var AOe={};yH.transitional=function(e,r,n){function s(i,a){return"[Axios v"+Ah+"] Transitional option '"+i+"'"+a+(n?". "+n:"")}return(i,a,o)=>{if(e===!1)throw new Xe(s(a," has been removed"+(r?" in "+r:"")),Xe.ERR_DEPRECATED);return r&&!AOe[a]&&(AOe[a]=!0,console.warn(s(a," has been deprecated since v"+r+" and will be removed in the near future"))),e?e(i,a,o):!0}};function LQt(t,e,r){if(typeof t!="object")throw new Xe("options must be an object",Xe.ERR_BAD_OPTION_VALUE);let n=Object.keys(t),s=n.length;for(;s-- >0;){let i=n[s],a=e[i];if(a){let o=t[i],c=o===void 0||a(o,i,t);if(c!==!0)throw new Xe("option "+i+" must be "+c,Xe.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new Xe("Unknown option "+i,Xe.ERR_BAD_OPTION)}}var Ck={assertOptions:LQt,validators:yH};var Xp=Ck.validators,Ax=class{constructor(e){this.defaults=e,this.interceptors={request:new qj,response:new qj}}async request(e,r){try{return await this._request(e,r)}catch(n){if(n instanceof Error){let s;Error.captureStackTrace?Error.captureStackTrace(s={}):s=new Error;let i=s.stack?s.stack.replace(/^.+\n/,""):"";n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=`
`+i):n.stack=i}throw n}}_request(e,r){typeof e=="string"?(r=r||{},r.url=e):r=e||{},r=Ld(this.defaults,r);let{transitional:n,paramsSerializer:s,headers:i}=r;n!==void 0&&Ck.assertOptions(n,{silentJSONParsing:Xp.transitional(Xp.boolean),forcedJSONParsing:Xp.transitional(Xp.boolean),clarifyTimeoutError:Xp.transitional(Xp.boolean)},!1),s!=null&&(le.isFunction(s)?r.paramsSerializer={serialize:s}:Ck.assertOptions(s,{encode:Xp.function,serialize:Xp.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=i&&le.merge(i.common,i[r.method]);i&&le.forEach(["delete","get","head","post","put","patch","common"],m=>{delete i[m]}),r.headers=Ns.concat(a,i);let o=[],c=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(c=c&&h.synchronous,o.unshift(h.fulfilled,h.rejected))});let u=[];this.interceptors.response.forEach(function(h){u.push(h.fulfilled,h.rejected)});let l,d=0,f;if(!c){let m=[Ik.bind(this),void 0];for(m.unshift.apply(m,o),m.push.apply(m,u),f=m.length,l=Promise.resolve(r);d<f;)l=l.then(m[d++],m[d++]);return l}f=o.length;let p=r;for(d=0;d<f;){let m=o[d++],h=o[d++];try{p=m(p)}catch(A){h.call(this,A);break}}try{l=Ik.call(this,p)}catch(m){return Promise.reject(m)}for(d=0,f=u.length;d<f;)l=l.then(u[d++],u[d++]);return l}getUri(e){e=Ld(this.defaults,e);let r=ph(e.baseURL,e.url);return fh(r,e.params,e.paramsSerializer)}};le.forEach(["delete","get","head","options"],function(e){Ax.prototype[e]=function(r,n){return this.request(Ld(n||{},{method:e,url:r,data:(n||{}).data}))}});le.forEach(["post","put","patch"],function(e){function r(n){return function(i,a,o){return this.request(Ld(o||{},{method:e,headers:n?{"Content-Type":"multipart/form-data"}:{},url:i,data:a}))}}Ax.prototype[e]=r(),Ax.prototype[e+"Form"]=r(!0)});var GS=Ax;var xH=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 nu(i,a,o),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let r=this._listeners.indexOf(e);r!==-1&&this._listeners.splice(r,1)}static source(){let e;return{token:new t(function(s){e=s}),cancel:e}}},yOe=xH;function bH(t){return function(r){return t.apply(null,r)}}function EH(t){return le.isObject(t)&&t.isAxiosError===!0}var _H={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(_H).forEach(([t,e])=>{_H[e]=t});var xOe=_H;function bOe(t){let e=new GS(t),r=RS(GS.prototype.request,e);return le.extend(r,GS.prototype,e,{allOwnKeys:!0}),le.extend(r,e,null,{allOwnKeys:!0}),r.create=function(s){return bOe(Ld(t,s))},r}var bs=bOe(dx);bs.Axios=GS;bs.CanceledError=nu;bs.CancelToken=yOe;bs.isCancel=$S;bs.VERSION=Ah;bs.toFormData=Vp;bs.AxiosError=Xe;bs.Cancel=bs.CanceledError;bs.all=function(e){return Promise.all(e)};bs.spread=bH;bs.isAxiosError=EH;bs.mergeConfig=Ld;bs.AxiosHeaders=Ns;bs.formToJSON=t=>hk(le.isHTMLForm(t)?new FormData(t):t);bs.getAdapter=vk.getAdapter;bs.HttpStatusCode=xOe;bs.default=bs;var Ae=bs;var{Axios:eWr,AxiosError:tWr,CanceledError:rWr,isCancel:nWr,CancelToken:sWr,VERSION:iWr,all:aWr,Cancel:oWr,isAxiosError:cWr,spread:uWr,toFormData:lWr,AxiosHeaders:dWr,HttpStatusCode:fWr,formToJSON:pWr,getAdapter:mWr,mergeConfig:hWr}=Ae;var EOe=Re(require("https"),1),_Oe=Re(require("http"),1),MQt=Number.parseInt(process.env.CATPAW_REQ_TIMEOUT_MS||"20000",10)||2e4,WQt=Ae.create({timeout:MQt,httpsAgent:new EOe.default.Agent({keepAlive:!1,rejectUnauthorized:!1,maxCachedSessions:0}),httpAgent:new _Oe.default.Agent({keepAlive:!1}),proxy:!1}),he=WQt;var _v={};is(_v,{contains:()=>rJt,default:()=>tJt,html:()=>BH,load:()=>Me,merge:()=>nJt,parseHTML:()=>sJt,root:()=>iJt,text:()=>Fd,xml:()=>LH});var $Qt={xml:!1,decodeEntities:!0},KS=$Qt,SOe={_useHtmlParser2:!0,xmlMode:!0};function VS(t){return t?.xml?typeof t.xml=="boolean"?SOe:{...SOe,...t.xml}:t??void 0}var r0={};is(r0,{contains:()=>MH,html:()=>BH,merge:()=>NGt,parseHTML:()=>wGt,root:()=>RGt,text:()=>Fd,xml:()=>LH});var t0={};is(t0,{DocumentPosition:()=>pc,append:()=>lGt,appendChild:()=>uGt,compareDocumentPosition:()=>JOe,existsOne:()=>zOe,filter:()=>_x,find:()=>$k,findAll:()=>mGt,findOne:()=>Fk,findOneChild:()=>pGt,getAttributeValue:()=>iGt,getChildren:()=>Ex,getElementById:()=>yGt,getElements:()=>AGt,getElementsByClassName:()=>xGt,getElementsByTagName:()=>Sh,getElementsByTagType:()=>bGt,getFeed:()=>DH,getInnerHTML:()=>sGt,getName:()=>oGt,getOuterHTML:()=>KOe,getParent:()=>VOe,getSiblings:()=>PH,getText:()=>Lk,hasAttrib:()=>aGt,hasChildren:()=>rn,innerText:()=>tv,isCDATA:()=>yx,isComment:()=>_h,isDocument:()=>su,isTag:()=>st,isText:()=>Va,nextElementSibling:()=>Mk,prepend:()=>fGt,prependChild:()=>dGt,prevElementSibling:()=>Wk,removeElement:()=>$d,removeSubsets:()=>EGt,replaceElement:()=>cGt,testElement:()=>gGt,textContent:()=>Wd,uniqueSort:()=>Zp});var Tr;(function(t){t.Root="root",t.Text="text",t.Directive="directive",t.Comment="comment",t.Script="script",t.Style="style",t.Tag="tag",t.CDATA="cdata",t.Doctype="doctype"})(Tr||(Tr={}));function vOe(t){return t.type===Tr.Tag||t.type===Tr.Script||t.type===Tr.Style}var IOe=Tr.Root,COe=Tr.Text,TOe=Tr.Directive,wOe=Tr.Comment,ROe=Tr.Script,NOe=Tr.Style,OOe=Tr.Tag,POe=Tr.CDATA,kOe=Tr.Doctype;var Tk=class{constructor(){this.parent=null,this.prev=null,this.next=null,this.startIndex=null,this.endIndex=null}get parentNode(){return this.parent}set parentNode(e){this.parent=e}get previousSibling(){return this.prev}set previousSibling(e){this.prev=e}get nextSibling(){return this.next}set nextSibling(e){this.next=e}cloneNode(e=!1){return XS(this,e)}},zS=class extends Tk{constructor(e){super(),this.data=e}get nodeValue(){return this.data}set nodeValue(e){this.data=e}},ll=class extends zS{constructor(){super(...arguments),this.type=Tr.Text}get nodeType(){return 3}},xh=class extends zS{constructor(){super(...arguments),this.type=Tr.Comment}get nodeType(){return 8}},bh=class extends zS{constructor(e,r){super(r),this.name=e,this.type=Tr.Directive}get nodeType(){return 1}},YS=class extends Tk{constructor(e){super(),this.children=e}get firstChild(){var e;return(e=this.children[0])!==null&&e!==void 0?e:null}get lastChild(){return this.children.length>0?this.children[this.children.length-1]:null}get childNodes(){return this.children}set childNodes(e){this.children=e}},JS=class extends YS{constructor(){super(...arguments),this.type=Tr.CDATA}get nodeType(){return 4}},_o=class extends YS{constructor(){super(...arguments),this.type=Tr.Root}get nodeType(){return 9}},Eh=class extends YS{constructor(e,r,n=[],s=e==="script"?Tr.Script:e==="style"?Tr.Style:Tr.Tag){super(n),this.name=e,this.attribs=r,this.type=s}get nodeType(){return 1}get tagName(){return this.name}set tagName(e){this.name=e}get attributes(){return Object.keys(this.attribs).map(e=>{var r,n;return{name:e,value:this.attribs[e],namespace:(r=this["x-attribsNamespace"])===null||r===void 0?void 0:r[e],prefix:(n=this["x-attribsPrefix"])===null||n===void 0?void 0:n[e]}})}};function st(t){return vOe(t)}function yx(t){return t.type===Tr.CDATA}function Va(t){return t.type===Tr.Text}function _h(t){return t.type===Tr.Comment}function wk(t){return t.type===Tr.Directive}function su(t){return t.type===Tr.Root}function rn(t){return Object.prototype.hasOwnProperty.call(t,"children")}function XS(t,e=!1){let r;if(Va(t))r=new ll(t.data);else if(_h(t))r=new xh(t.data);else if(st(t)){let n=e?SH(t.children):[],s=new Eh(t.name,{...t.attribs},n);n.forEach(i=>i.parent=s),t.namespace!=null&&(s.namespace=t.namespace),t["x-attribsNamespace"]&&(s["x-attribsNamespace"]={...t["x-attribsNamespace"]}),t["x-attribsPrefix"]&&(s["x-attribsPrefix"]={...t["x-attribsPrefix"]}),r=s}else if(yx(t)){let n=e?SH(t.children):[],s=new JS(n);n.forEach(i=>i.parent=s),r=s}else if(su(t)){let n=e?SH(t.children):[],s=new _o(n);n.forEach(i=>i.parent=s),t["x-mode"]&&(s["x-mode"]=t["x-mode"]),r=s}else if(wk(t)){let n=new bh(t.name,t.data);t["x-name"]!=null&&(n["x-name"]=t["x-name"],n["x-publicId"]=t["x-publicId"],n["x-systemId"]=t["x-systemId"]),r=n}else throw new Error(`Not implemented yet: ${t.type}`);return r.startIndex=t.startIndex,r.endIndex=t.endIndex,t.sourceCodeLocation!=null&&(r.sourceCodeLocation=t.sourceCodeLocation),r}function SH(t){let e=t.map(r=>XS(r,!0));for(let r=1;r<e.length;r++)e[r].prev=e[r-1],e[r-1].next=e[r];return e}var BOe={withStartIndices:!1,withEndIndices:!1,xmlMode:!1},xx=class{constructor(e,r,n){this.dom=[],this.root=new _o(this.dom),this.done=!1,this.tagStack=[this.root],this.lastNode=null,this.parser=null,typeof r=="function"&&(n=r,r=BOe),typeof e=="object"&&(r=e,e=void 0),this.callback=e??null,this.options=r??BOe,this.elementCB=n??null}onparserinit(e){this.parser=e}onreset(){this.dom=[],this.root=new _o(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?Tr.Tag:void 0,s=new Eh(e,r,void 0,n);this.addNode(s),this.tagStack.push(s)}ontext(e){let{lastNode:r}=this;if(r&&r.type===Tr.Text)r.data+=e,this.options.withEndIndices&&(r.endIndex=this.parser.endIndex);else{let n=new ll(e);this.addNode(n),this.lastNode=n}}oncomment(e){if(this.lastNode&&this.lastNode.type===Tr.Comment){this.lastNode.data+=e;return}let r=new xh(e);this.addNode(r),this.lastNode=r}oncommentend(){this.lastNode=null}oncdatastart(){let e=new ll(""),r=new JS([e]);this.addNode(r),e.parent=r,this.lastNode=e}oncdataend(){this.lastNode=null}onprocessinginstruction(e,r){let n=new bh(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 Rk=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 Nk=new Uint16Array("\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map(t=>t.charCodeAt(0)));var vH,FQt=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),bx=(vH=String.fromCodePoint)!==null&&vH!==void 0?vH:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function ZS(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=FQt.get(t))!==null&&e!==void 0?e:t}var Xs;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(Xs||(Xs={}));var UQt=32,fc;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(fc||(fc={}));function IH(t){return t>=Xs.ZERO&&t<=Xs.NINE}function qQt(t){return t>=Xs.UPPER_A&&t<=Xs.UPPER_F||t>=Xs.LOWER_A&&t<=Xs.LOWER_F}function jQt(t){return t>=Xs.UPPER_A&&t<=Xs.UPPER_Z||t>=Xs.LOWER_A&&t<=Xs.LOWER_Z||IH(t)}function HQt(t){return t===Xs.EQUALS||jQt(t)}var Js;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(Js||(Js={}));var Md;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(Md||(Md={}));var Ok=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=Js.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Md.Strict}startEntity(e){this.decodeMode=e,this.state=Js.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case Js.EntityStart:return e.charCodeAt(r)===Xs.NUM?(this.state=Js.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=Js.NamedEntity,this.stateNamedEntity(e,r));case Js.NumericStart:return this.stateNumericStart(e,r);case Js.NumericDecimal:return this.stateNumericDecimal(e,r);case Js.NumericHex:return this.stateNumericHex(e,r);case Js.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|UQt)===Xs.LOWER_X?(this.state=Js.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=Js.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r<e.length;){let s=e.charCodeAt(r);if(IH(s)||qQt(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(IH(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===Xs.SEMI)this.consumed+=1;else if(this.decodeMode===Md.Strict)return 0;return this.emitCodePoint(ZS(this.result),this.consumed),this.errors&&(e!==Xs.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,r){let{decodeTree:n}=this,s=n[this.treeIndex],i=(s&fc.VALUE_LENGTH)>>14;for(;r<e.length;r++,this.excess++){let a=e.charCodeAt(r);if(this.treeIndex=CH(n,s,this.treeIndex+Math.max(1,i),a),this.treeIndex<0)return this.result===0||this.decodeMode===Md.Attribute&&(i===0||HQt(a))?0:this.emitNotTerminatedNamedEntity();if(s=n[this.treeIndex],i=(s&fc.VALUE_LENGTH)>>14,i!==0){if(a===Xs.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Md.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&fc.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~fc.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case Js.NamedEntity:return this.result!==0&&(this.decodeMode!==Md.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Js.NumericDecimal:return this.emitNumericEntity(0,2);case Js.NumericHex:return this.emitNumericEntity(0,3);case Js.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Js.EntityStart:return 0}}};function LOe(t){let e="",r=new Ok(t,n=>e+=bx(n));return function(s,i){let a=0,o=0;for(;(o=s.indexOf("&",o))>=0;){e+=s.slice(a,o),r.startEntity(i);let u=r.write(s,o+1);if(u<0){a=o+r.end();break}a=o+u,o=u===0?a+1:a}let c=e+s.slice(a);return e="",c}}function CH(t,e,r,n){let s=(e&fc.BRANCH_LENGTH)>>7,i=e&fc.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(u<n)a=c+1;else if(u>n)o=c-1;else return t[c+s]}return-1}var kWr=LOe(Rk),DWr=LOe(Nk);function Pk(t){for(let e=1;e<t.length;e++)t[e][0]+=t[e-1][0]+1;return t}var QQt=new Map(Pk([[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(Pk([[824,"&nLtv;"],[7577,"&nLt;"]]))}],[0,{v:"&gg;",n:new Map(Pk([[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(Pk([[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 TH=/["&'<>$\x80-\uFFFF]/g,MOe=new Map([[34,"&quot;"],[38,"&amp;"],[39,"&apos;"],[60,"&lt;"],[62,"&gt;"]]),WOe=String.prototype.codePointAt!=null?(t,e)=>t.codePointAt(e):(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e);function ev(t){let e="",r=0,n;for(;(n=TH.exec(t))!==null;){let s=n.index,i=t.charCodeAt(s),a=MOe.get(i);a!==void 0?(e+=t.substring(r,s)+a,r=s+1):(e+=`${t.substring(r,s)}&#x${WOe(t,s).toString(16)};`,r=TH.lastIndex+=+((i&64512)===55296))}return e+t.substr(r)}function wH(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var $Oe=wH(/[&<>'"]/g,MOe),kk=wH(/["&\u00A0]/g,new Map([[34,"&quot;"],[38,"&amp;"],[160,"&nbsp;"]])),Dk=wH(/[&<>\u00A0]/g,new Map([[38,"&amp;"],[60,"&lt;"],[62,"&gt;"],[160,"&nbsp;"]]));var FOe;(function(t){t[t.XML=0]="XML",t[t.HTML=1]="HTML"})(FOe||(FOe={}));var UOe;(function(t){t[t.UTF8=0]="UTF8",t[t.ASCII=1]="ASCII",t[t.Extensive=2]="Extensive",t[t.Attribute=3]="Attribute",t[t.Text=4]="Text"})(UOe||(UOe={}));var HOe=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(t=>[t.toLowerCase(),t])),QOe=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(t=>[t.toLowerCase(),t]));var KQt=new Set(["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"]);function VQt(t){return t.replace(/"/g,"&quot;")}function zQt(t,e){var r;if(!t)return;let n=((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)===!1?VQt:e.xmlMode||e.encodeEntities!=="utf8"?ev:kk;return Object.keys(t).map(s=>{var i,a;let o=(i=t[s])!==null&&i!==void 0?i:"";return e.xmlMode==="foreign"&&(s=(a=QOe.get(s))!==null&&a!==void 0?a:s),!e.emptyAttrs&&!e.xmlMode&&o===""?s:`${s}="${n(o)}"`}).join(" ")}var GOe=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]);function OH(t,e={}){let r="length"in t?t:[t],n="";for(let s=0;s<r.length;s++)n+=YQt(r[s],e);return n}var Bk=OH;function YQt(t,e){switch(t.type){case IOe:return OH(t.children,e);case kOe:case TOe:return eGt(t);case wOe:return nGt(t);case POe:return rGt(t);case ROe:case NOe:case OOe:return ZQt(t,e);case COe:return tGt(t,e)}}var JQt=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignObject","desc","title"]),XQt=new Set(["svg","math"]);function ZQt(t,e){var r;e.xmlMode==="foreign"&&(t.name=(r=HOe.get(t.name))!==null&&r!==void 0?r:t.name,t.parent&&JQt.has(t.parent.name)&&(e={...e,xmlMode:!1})),!e.xmlMode&&XQt.has(t.name)&&(e={...e,xmlMode:"foreign"});let n=`<${t.name}`,s=zQt(t.attribs,e);return s&&(n+=` ${s}`),t.children.length===0&&(e.xmlMode?e.selfClosingTags!==!1:e.selfClosingTags&&GOe.has(t.name))?(e.xmlMode||(n+=" "),n+="/>"):(n+=">",t.children.length>0&&(n+=OH(t.children,e)),(e.xmlMode||!GOe.has(t.name))&&(n+=`</${t.name}>`)),n}function eGt(t){return`<${t.data}>`}function tGt(t,e){var r;let n=t.data||"";return((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)!==!1&&!(!e.xmlMode&&t.parent&&KQt.has(t.parent.name))&&(n=e.xmlMode||e.encodeEntities!=="utf8"?ev(n):Dk(n)),n}function rGt(t){return`<![CDATA[${t.children[0].data}]]>`}function nGt(t){return`<!--${t.data}-->`}function KOe(t,e){return Bk(t,e)}function sGt(t,e){return rn(t)?t.children.map(r=>KOe(r,e)).join(""):""}function Lk(t){return Array.isArray(t)?t.map(Lk).join(""):st(t)?t.name==="br"?`
`:Lk(t.children):yx(t)?Lk(t.children):Va(t)?t.data:""}function Wd(t){return Array.isArray(t)?t.map(Wd).join(""):rn(t)&&!_h(t)?Wd(t.children):Va(t)?t.data:""}function tv(t){return Array.isArray(t)?t.map(tv).join(""):rn(t)&&(t.type===Tr.Tag||yx(t))?tv(t.children):Va(t)?t.data:""}function Ex(t){return rn(t)?t.children:[]}function VOe(t){return t.parent||null}function PH(t){let e=VOe(t);if(e!=null)return Ex(e);let r=[t],{prev:n,next:s}=t;for(;n!=null;)r.unshift(n),{prev:n}=n;for(;s!=null;)r.push(s),{next:s}=s;return r}function iGt(t,e){var r;return(r=t.attribs)===null||r===void 0?void 0:r[e]}function aGt(t,e){return t.attribs!=null&&Object.prototype.hasOwnProperty.call(t.attribs,e)&&t.attribs[e]!=null}function oGt(t){return t.name}function Mk(t){let{next:e}=t;for(;e!==null&&!st(e);)({next:e}=e);return e}function Wk(t){let{prev:e}=t;for(;e!==null&&!st(e);)({prev:e}=e);return e}function $d(t){if(t.prev&&(t.prev.next=t.next),t.next&&(t.next.prev=t.prev),t.parent){let e=t.parent.children,r=e.lastIndexOf(t);r>=0&&e.splice(r,1)}t.next=null,t.prev=null,t.parent=null}function cGt(t,e){let r=e.prev=t.prev;r&&(r.next=e);let n=e.next=t.next;n&&(n.prev=e);let s=e.parent=t.parent;if(s){let i=s.children;i[i.lastIndexOf(t)]=e,t.parent=null}}function uGt(t,e){if($d(e),e.next=null,e.parent=t,t.children.push(e)>1){let r=t.children[t.children.length-2];r.next=e,e.prev=r}else e.prev=null}function lGt(t,e){$d(e);let{parent:r}=t,n=t.next;if(e.next=n,e.prev=t,t.next=e,e.parent=r,n){if(n.prev=e,r){let s=r.children;s.splice(s.lastIndexOf(n),0,e)}}else r&&r.children.push(e)}function dGt(t,e){if($d(e),e.parent=t,e.prev=null,t.children.unshift(e)!==1){let r=t.children[1];r.prev=e,e.next=r}else e.next=null}function fGt(t,e){$d(e);let{parent:r}=t;if(r){let n=r.children;n.splice(n.indexOf(t),0,e)}t.prev&&(t.prev.next=e),e.parent=r,e.prev=t.prev,e.next=t,t.prev=e}function _x(t,e,r=!0,n=1/0){return $k(t,Array.isArray(e)?e:[e],r,n)}function $k(t,e,r,n){let s=[],i=[Array.isArray(e)?e:[e]],a=[0];for(;;){if(a[0]>=i[0].length){if(a.length===1)return s;i.shift(),a.shift();continue}let o=i[0][a[0]++];if(t(o)&&(s.push(o),--n<=0))return s;r&&rn(o)&&o.children.length>0&&(a.unshift(0),i.unshift(o.children))}}function pGt(t,e){return e.find(t)}function Fk(t,e,r=!0){let n=Array.isArray(e)?e:[e];for(let s=0;s<n.length;s++){let i=n[s];if(st(i)&&t(i))return i;if(r&&rn(i)&&i.children.length>0){let a=Fk(t,i.children,!0);if(a)return a}}return null}function zOe(t,e){return(Array.isArray(e)?e:[e]).some(r=>st(r)&&t(r)||rn(r)&&zOe(t,r.children))}function mGt(t,e){let r=[],n=[Array.isArray(e)?e:[e]],s=[0];for(;;){if(s[0]>=n[0].length){if(n.length===1)return r;n.shift(),s.shift();continue}let i=n[0][s[0]++];st(i)&&t(i)&&r.push(i),rn(i)&&i.children.length>0&&(s.unshift(0),n.unshift(i.children))}}var Uk={tag_name(t){return typeof t=="function"?e=>st(e)&&t(e.name):t==="*"?st:e=>st(e)&&e.name===t},tag_type(t){return typeof t=="function"?e=>t(e.type):e=>e.type===t},tag_contains(t){return typeof t=="function"?e=>Va(e)&&t(e.data):e=>Va(e)&&e.data===t}};function kH(t,e){return typeof e=="function"?r=>st(r)&&e(r.attribs[t]):r=>st(r)&&r.attribs[t]===e}function hGt(t,e){return r=>t(r)||e(r)}function YOe(t){let e=Object.keys(t).map(r=>{let n=t[r];return Object.prototype.hasOwnProperty.call(Uk,r)?Uk[r](n):kH(r,n)});return e.length===0?null:e.reduce(hGt)}function gGt(t,e){let r=YOe(t);return r?r(e):!0}function AGt(t,e,r,n=1/0){let s=YOe(t);return s?_x(s,e,r,n):[]}function yGt(t,e,r=!0){return Array.isArray(e)||(e=[e]),Fk(kH("id",t),e,r)}function Sh(t,e,r=!0,n=1/0){return _x(Uk.tag_name(t),e,r,n)}function xGt(t,e,r=!0,n=1/0){return _x(kH("class",t),e,r,n)}function bGt(t,e,r=!0,n=1/0){return _x(Uk.tag_type(t),e,r,n)}function EGt(t){let e=t.length;for(;--e>=0;){let r=t[e];if(e>0&&t.lastIndexOf(r,e-1)>=0){t.splice(e,1);continue}for(let n=r.parent;n;n=n.parent)if(t.includes(n)){t.splice(e,1);break}}return t}var pc;(function(t){t[t.DISCONNECTED=1]="DISCONNECTED",t[t.PRECEDING=2]="PRECEDING",t[t.FOLLOWING=4]="FOLLOWING",t[t.CONTAINS=8]="CONTAINS",t[t.CONTAINED_BY=16]="CONTAINED_BY"})(pc||(pc={}));function JOe(t,e){let r=[],n=[];if(t===e)return 0;let s=rn(t)?t:t.parent;for(;s;)r.unshift(s),s=s.parent;for(s=rn(e)?e:e.parent;s;)n.unshift(s),s=s.parent;let i=Math.min(r.length,n.length),a=0;for(;a<i&&r[a]===n[a];)a++;if(a===0)return pc.DISCONNECTED;let o=r[a-1],c=o.children,u=r[a],l=n[a];return c.indexOf(u)>c.indexOf(l)?o===e?pc.FOLLOWING|pc.CONTAINED_BY:pc.FOLLOWING:o===t?pc.PRECEDING|pc.CONTAINS:pc.PRECEDING}function Zp(t){return t=t.filter((e,r,n)=>!n.includes(e,r+1)),t.sort((e,r)=>{let n=JOe(e,r);return n&pc.PRECEDING?-1:n&pc.FOLLOWING?1:0}),t}function DH(t){let e=qk(CGt,t);return e?e.name==="feed"?_Gt(e):SGt(e):null}function _Gt(t){var e;let r=t.children,n={type:"atom",items:Sh("entry",r).map(a=>{var o;let{children:c}=a,u={media:XOe(c)};za(u,"id","id",c),za(u,"title","title",c);let l=(o=qk("link",c))===null||o===void 0?void 0:o.attribs.href;l&&(u.link=l);let d=e0("summary",c)||e0("content",c);d&&(u.description=d);let f=e0("updated",c);return f&&(u.pubDate=new Date(f)),u})};za(n,"id","id",r),za(n,"title","title",r);let s=(e=qk("link",r))===null||e===void 0?void 0:e.attribs.href;s&&(n.link=s),za(n,"description","subtitle",r);let i=e0("updated",r);return i&&(n.updated=new Date(i)),za(n,"author","email",r,!0),n}function SGt(t){var e,r;let n=(r=(e=qk("channel",t.children))===null||e===void 0?void 0:e.children)!==null&&r!==void 0?r:[],s={type:t.name.substr(0,3),id:"",items:Sh("item",t.children).map(a=>{let{children:o}=a,c={media:XOe(o)};za(c,"id","guid",o),za(c,"title","title",o),za(c,"link","link",o),za(c,"description","description",o);let u=e0("pubDate",o)||e0("dc:date",o);return u&&(c.pubDate=new Date(u)),c})};za(s,"title","title",n),za(s,"link","link",n),za(s,"description","description",n);let i=e0("lastBuildDate",n);return i&&(s.updated=new Date(i)),za(s,"author","managingEditor",n,!0),s}var vGt=["url","type","lang"],IGt=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function XOe(t){return Sh("media:content",t).map(e=>{let{attribs:r}=e,n={medium:r.medium,isDefault:!!r.isDefault};for(let s of vGt)r[s]&&(n[s]=r[s]);for(let s of IGt)r[s]&&(n[s]=parseInt(r[s],10));return r.expression&&(n.expression=r.expression),n})}function qk(t,e){return Sh(t,e,!0,1)[0]}function e0(t,e,r=!1){return Wd(Sh(t,e,r,1)).trim()}function za(t,e,r,n,s=!1){let i=e0(r,n,s);i&&(t[e]=i)}function CGt(t){return t==="rss"||t==="feed"||t==="rdf:RDF"}function ePe(t,e,r){return t?t(e??t._root.children,null,void 0,r).toString():""}function TGt(t,e){return!e&&typeof t=="object"&&t!=null&&!("length"in t)&&!("type"in t)}function BH(t,e){let r=TGt(t)?(e=t,void 0):t,n={...KS,...this===null||this===void 0?void 0:this._options,...VS(e??{})};return ePe(this,r,n)}function LH(t){let e={...this._options,xmlMode:!0};return ePe(this,t,e)}function Fd(t){let e=t||(this?this.root():[]),r="";for(let n=0;n<e.length;n++)r+=Wd(e[n]);return r}function wGt(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,KS,!1);return r||n("script").remove(),n.root()[0].children.slice()}function RGt(){return this(this._root)}function MH(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 NGt(t,e){if(!ZOe(t)||!ZOe(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 ZOe(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 UH={};is(UH,{addClass:()=>cPe,attr:()=>PGt,data:()=>DGt,hasClass:()=>MGt,prop:()=>kGt,removeAttr:()=>LGt,removeClass:()=>uPe,toggleClass:()=>lPe,val:()=>BGt});function So(t){return t.cheerio!=null}function tPe(t){return t.replace(/[_.-](\w|$)/g,(e,r)=>r.toUpperCase())}function rPe(t){return t.replace(/[A-Z]/g,"-$&").toLowerCase()}function mn(t,e){let r=t.length;for(let n=0;n<r;n++)e(t[n],n);return t}function jk(t){let e="length"in t?Array.prototype.map.call(t,n=>XS(n,!0)):[XS(t,!0)],r=new _o(e);return e.forEach(n=>{n.parent=r}),e}var vh;(function(t){t[t.LowerA=97]="LowerA",t[t.LowerZ=122]="LowerZ",t[t.UpperA=65]="UpperA",t[t.UpperZ=90]="UpperZ",t[t.Exclamation=33]="Exclamation"})(vh||(vh={}));function rv(t){let e=t.indexOf("<");if(e<0||e>t.length-3)return!1;let r=t.charCodeAt(e+1);return(r>=vh.LowerA&&r<=vh.LowerZ||r>=vh.UpperA&&r<=vh.UpperZ||r===vh.Exclamation)&&t.includes(">",e+2)}var Sx=Object.prototype.hasOwnProperty,nv=/\s+/,WH="data-",nPe={null:null,true:!0,false:!1},FH=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,OGt=/^{[^]*}$|^\[[^]*]$/;function Hk(t,e,r){var n;if(!(!t||!st(t))){if((n=t.attribs)!==null&&n!==void 0||(t.attribs={}),!e)return t.attribs;if(Sx.call(t.attribs,e))return!r&&FH.test(e)?e:t.attribs[e];if(t.name==="option"&&e==="value")return Fd(t.children);if(t.name==="input"&&(t.attribs.type==="radio"||t.attribs.type==="checkbox")&&e==="value")return"on"}}function vx(t,e,r){r===null?oPe(t,e):t.attribs[e]=`${r}`}function PGt(t,e){if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t!="string")throw new Error("Bad combination of arguments.");return mn(this,(r,n)=>{st(r)&&vx(r,t,e.call(r,n,r.attribs[t]))})}return mn(this,r=>{st(r)&&(typeof t=="object"?Object.keys(t).forEach(n=>{let s=t[n];vx(r,n,s)}):vx(r,t,e))})}return arguments.length>1?this:Hk(this[0],t,this.options.xmlMode)}function sPe(t,e,r){return e in t?t[e]:!r&&FH.test(e)?Hk(t,e,!1)!==void 0:Hk(t,e,r)}function $H(t,e,r,n){e in t?t[e]=r:vx(t,e,!n&&FH.test(e)?r?"":null:`${r}`)}function kGt(t,e){var r;if(typeof t=="string"&&e===void 0){let n=this[0];if(!n||!st(n))return;switch(t){case"style":{let s=this.css(),i=Object.keys(s);return i.forEach((a,o)=>{s[o]=a}),s.length=i.length,s}case"tagName":case"nodeName":return n.name.toUpperCase();case"href":case"src":{let s=(r=n.attribs)===null||r===void 0?void 0:r[t];return typeof URL<"u"&&(t==="href"&&(n.tagName==="a"||n.name==="link")||t==="src"&&(n.tagName==="img"||n.tagName==="iframe"||n.tagName==="audio"||n.tagName==="video"||n.tagName==="source"))&&s!==void 0&&this.options.baseURI?new URL(s,this.options.baseURI).href:s}case"innerText":return tv(n);case"textContent":return Wd(n);case"outerHTML":return this.clone().wrap("<container />").parent().html();case"innerHTML":return this.html();default:return sPe(n,t,this.options.xmlMode)}}if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t=="object")throw new Error("Bad combination of arguments.");return mn(this,(n,s)=>{st(n)&&$H(n,t,e.call(n,s,sPe(n,t,this.options.xmlMode)),this.options.xmlMode)})}return mn(this,n=>{st(n)&&(typeof t=="object"?Object.keys(t).forEach(s=>{let i=t[s];$H(n,s,i,this.options.xmlMode)}):$H(n,t,e,this.options.xmlMode))})}}function iPe(t,e,r){var n;let s=t;(n=s.data)!==null&&n!==void 0||(s.data={}),typeof e=="object"?Object.assign(s.data,e):typeof e=="string"&&r!==void 0&&(s.data[e]=r)}function aPe(t,e){let r,n,s;e==null?(r=Object.keys(t.attribs).filter(i=>i.startsWith(WH)),n=r.map(i=>tPe(i.slice(WH.length)))):(r=[WH+rPe(e)],n=[e]);for(let i=0;i<r.length;++i){let a=r[i],o=n[i];if(Sx.call(t.attribs,a)&&!Sx.call(t.data,o)){if(s=t.attribs[a],Sx.call(nPe,s))s=nPe[s];else if(s===String(Number(s)))s=Number(s);else if(OGt.test(s))try{s=JSON.parse(s)}catch{}t.data[o]=s}}return e==null?t.data:s}function DGt(t,e){var r;let n=this[0];if(!n||!st(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=>{st(i)&&(typeof t=="object"?iPe(i,t):iPe(i,t,e))}),this):Sx.call(s.data,t)?s.data[t]:aPe(s,t):aPe(s)}function BGt(t){let e=arguments.length===0,r=this[0];if(!r||!st(r))return e?void 0:this;switch(r.name){case"textarea":return this.text(t);case"select":{let n=this.find("option:selected");if(!e){if(this.attr("multiple")==null&&typeof t=="object")return this;this.find("option").removeAttr("selected");let s=typeof t!="object"?[t]:t;for(let i=0;i<s.length;i++)this.find(`option[value="${s[i]}"]`).attr("selected","");return this}return this.attr("multiple")?n.toArray().map(s=>Fd(s.children)):n.attr("value")}case"input":case"option":return e?this.attr("value"):this.attr("value",t)}}function oPe(t,e){!t.attribs||!Sx.call(t.attribs,e)||delete t.attribs[e]}function Qk(t){return t?t.trim().split(nv):[]}function LGt(t){let e=Qk(t);for(let r=0;r<e.length;r++)mn(this,n=>{st(n)&&oPe(n,e[r])});return this}function MGt(t){return this.toArray().some(e=>{let r=st(e)&&e.attribs.class,n=-1;if(r&&t.length)for(;(n=r.indexOf(t,n+1))>-1;){let s=n+t.length;if((n===0||nv.test(r[n-1]))&&(s===r.length||nv.test(r[s])))return!0}return!1})}function cPe(t){if(typeof t=="function")return mn(this,(n,s)=>{if(st(n)){let i=n.attribs.class||"";cPe.call([n],t.call(n,s,i))}});if(!t||typeof t!="string")return this;let e=t.split(nv),r=this.length;for(let n=0;n<r;n++){let s=this[n];if(!st(s))continue;let i=Hk(s,"class",!1);if(!i)vx(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)}vx(s,"class",a.trim())}}return this}function uPe(t){if(typeof t=="function")return mn(this,(s,i)=>{st(s)&&uPe.call([s],t.call(s,i,s.attribs.class||""))});let e=Qk(t),r=e.length,n=arguments.length===0;return mn(this,s=>{if(st(s))if(n)s.attribs.class="";else{let i=Qk(s.attribs.class),a=!1;for(let o=0;o<r;o++){let c=i.indexOf(e[o]);c>=0&&(i.splice(c,1),a=!0,o--)}a&&(s.attribs.class=i.join(" "))}})}function lPe(t,e){if(typeof t=="function")return mn(this,(a,o)=>{st(a)&&lPe.call([a],t.call(a,o,a.attribs.class||"",e),e)});if(!t||typeof t!="string")return this;let r=t.split(nv),n=r.length,s=typeof e=="boolean"?e?1:-1:0,i=this.length;for(let a=0;a<i;a++){let o=this[a];if(!st(o))continue;let c=Qk(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 lQ={};is(lQ,{add:()=>QKt,addBack:()=>GKt,children:()=>RKt,closest:()=>EKt,contents:()=>NKt,each:()=>OKt,end:()=>HKt,eq:()=>$Kt,filter:()=>kKt,filterArray:()=>uQ,find:()=>AKt,first:()=>MKt,get:()=>FKt,has:()=>LKt,index:()=>qKt,is:()=>DKt,last:()=>WKt,map:()=>PKt,next:()=>_Kt,nextAll:()=>SKt,nextUntil:()=>vKt,not:()=>BKt,parent:()=>yKt,parents:()=>xKt,parentsUntil:()=>bKt,prev:()=>IKt,prevAll:()=>CKt,prevUntil:()=>TKt,siblings:()=>wKt,slice:()=>jKt,toArray:()=>UKt});var Ja=Re(wx(),1);var ZH=Re(n0(),1);var iu=Re(wx(),1),qd=Re(n0(),1);var ua=Re(wx(),1),IPe=new Map([[ua.SelectorType.Universal,50],[ua.SelectorType.Tag,30],[ua.SelectorType.Attribute,1],[ua.SelectorType.Pseudo,0]]);function iv(t){return!IPe.has(t.type)}var XGt=new Map([[ua.AttributeAction.Exists,10],[ua.AttributeAction.Equals,8],[ua.AttributeAction.Not,7],[ua.AttributeAction.Start,6],[ua.AttributeAction.End,6],[ua.AttributeAction.Any,5]]);function jH(t){let e=t.map(CPe);for(let r=1;r<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 CPe(t){var e,r;let n=(e=IPe.get(t.type))!==null&&e!==void 0?e:-1;return t.type===ua.SelectorType.Attribute?(n=(r=XGt.get(t.action))!==null&&r!==void 0?r:4,t.action===ua.AttributeAction.Equals&&t.name==="id"&&(n=9),t.ignoreCase&&(n>>=1)):t.type===ua.SelectorType.Pseudo&&(t.data?t.name==="has"||t.name==="contains"?n=0:Array.isArray(t.data)?(n=Math.min(...t.data.map(s=>Math.min(...s.map(CPe)))),n<0&&(n=0)):n=2:n=3),n}var av=Re(n0(),1),ZGt=/[-[\]{}()*+?.,\\^$|#\s]/g;function TPe(t){return t.replace(ZGt,"\\$&")}var eKt=new Set(["accept","accept-charset","align","alink","axis","bgcolor","charset","checked","clear","codetype","color","compact","declare","defer","dir","direction","disabled","enctype","face","frame","hreflang","http-equiv","lang","language","link","media","method","multiple","nohref","noresize","noshade","nowrap","readonly","rel","rev","rules","scope","scrolling","selected","shape","target","text","type","valign","valuetype","vlink"]);function Ih(t,e){return typeof t.ignoreCase=="boolean"?t.ignoreCase:t.ignoreCase==="quirks"?!!e.quirksMode:!e.xmlMode&&eKt.has(t.name)}var wPe={equals(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return Ih(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return o!=null&&o.length===i.length&&o.toLowerCase()===i&&t(a)}):a=>n.getAttributeValue(a,s)===i&&t(a)},hyphen(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return Ih(e,r)?(i=i.toLowerCase(),function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a).toLowerCase()===i&&t(c)}):function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a)===i&&t(c)}},element(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(/\s/.test(i))return av.default.falseFunc;let a=new RegExp(`(?:^|\\s)${TPe(i)}(?:$|\\s)`,Ih(e,r)?"i":"");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}},exists(t,{name:e},{adapter:r}){return n=>r.hasAttrib(n,e)&&t(n)},start(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return a===0?av.default.falseFunc:Ih(e,r)?(i=i.toLowerCase(),o=>{let c=n.getAttributeValue(o,s);return c!=null&&c.length>=a&&c.substr(0,a).toLowerCase()===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.startsWith(i))&&t(o)}},end(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=-i.length;return a===0?av.default.falseFunc:Ih(e,r)?(i=i.toLowerCase(),o=>{var c;return((c=n.getAttributeValue(o,s))===null||c===void 0?void 0:c.substr(a).toLowerCase())===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.endsWith(i))&&t(o)}},any(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(i==="")return av.default.falseFunc;if(Ih(e,r)){let a=new RegExp(TPe(i),"i");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}}return a=>{var o;return!!(!((o=n.getAttributeValue(a,s))===null||o===void 0)&&o.includes(i))&&t(a)}},not(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return i===""?a=>!!n.getAttributeValue(a,s)&&t(a):Ih(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return(o==null||o.length!==i.length||o.toLowerCase()!==i)&&t(a)}):a=>n.getAttributeValue(a,s)!==i&&t(a)}};var PPe=Re(wx(),1);var tKt=new Set([9,10,12,13,32]),RPe=48,rKt=57;function NPe(t){if(t=t.trim().toLowerCase(),t==="even")return[2,0];if(t==="odd")return[2,1];let e=0,r=0,n=i(),s=a();if(e<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)>=RPe&&t.charCodeAt(e)<=rKt;)u=u*10+(t.charCodeAt(e)-RPe),e++;return e===c?null:u}function o(){for(;e<t.length&&tKt.has(t.charCodeAt(e));)e++}}var HH=Re(n0(),1);function OPe(t){let e=t[0],r=t[1]-1;if(r<0&&e<=0)return HH.default.falseFunc;if(e===-1)return i=>i<=r;if(e===0)return i=>i===r;if(e===1)return r<0?HH.default.trueFunc:i=>i>=r;let n=Math.abs(e),s=(r%n+n)%n;return e>1?i=>i>=r&&i%n===s:i=>i<=r&&i%n===s}function Rx(t){return OPe(NPe(t))}var Ya=Re(n0(),1);function Vk(t,e){return r=>{let n=e.getParent(r);return n!=null&&e.isTag(n)&&t(r)}}var Nx={contains(t,e,{adapter:r}){return function(s){return t(s)&&r.getText(s).includes(e)}},icontains(t,e,{adapter:r}){let n=e.toLowerCase();return function(i){return t(i)&&r.getText(i).toLowerCase().includes(n)}},"nth-child"(t,e,{adapter:r,equals:n}){let s=Rx(e);return s===Ya.default.falseFunc?Ya.default.falseFunc:s===Ya.default.trueFunc?Vk(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u<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=Rx(e);return s===Ya.default.falseFunc?Ya.default.falseFunc:s===Ya.default.trueFunc?Vk(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=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=Rx(e);return s===Ya.default.falseFunc?Ya.default.falseFunc:s===Ya.default.trueFunc?Vk(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u<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=Rx(e);return s===Ya.default.falseFunc?Ya.default.falseFunc:s===Ya.default.trueFunc?Vk(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=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?Nx.root(t,e,r):n.length===1?i=>s(n[0],i)&&t(i):i=>n.includes(i)&&t(i)},hover:QH("isHovered"),visited:QH("isVisited"),active:QH("isActive")};function QH(t){return function(r,n,{adapter:s}){let i=s[t];return typeof i!="function"?Ya.default.falseFunc:function(o){return i(o)&&r(o)}}}var ov={empty(t,{adapter:e}){return!e.getChildren(t).some(r=>e.isTag(r)||e.getText(r)!=="")},"first-child"(t,{adapter:e,equals:r}){if(e.prevElementSibling)return e.prevElementSibling(t)==null;let n=e.getSiblings(t).find(s=>e.isTag(s));return n!=null&&r(t,n)},"last-child"(t,{adapter:e,equals:r}){let n=e.getSiblings(t);for(let s=n.length-1;s>=0;s--){if(r(t,n[s]))return!0;if(e.isTag(n[s]))break}return!1},"first-of-type"(t,{adapter:e,equals:r}){let n=e.getSiblings(t),s=e.getName(t);for(let i=0;i<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 GH(t,e,r,n){if(r===null){if(t.length>n)throw new Error(`Pseudo-class :${e} requires an argument`)}else if(t.length===n)throw new Error(`Pseudo-class :${e} doesn't have any arguments`)}var zk={"any-link":":is(a, area, link)[href]",link:":any-link:not(:visited)",disabled:`:is(
:is(button, input, select, textarea, optgroup, option)[disabled],
optgroup[disabled] > option,
fieldset[disabled]:not(fieldset[disabled] legend:first-of-type *)
)`,enabled:":not(:disabled)",checked:":is(:is(input[type=radio], input[type=checkbox])[checked], option:selected)",required:":is(input, select, textarea)[required]",optional:":is(input, select, textarea):not([required])",selected:"option:is([selected], select:not([multiple]):not(:has(> option[selected])) > :first-of-type)",checkbox:"[type=checkbox]",file:"[type=file]",password:"[type=password]",radio:"[type=radio]",reset:"[type=reset]",image:"[type=image]",submit:"[type=submit]",parent:":not(:empty)",header:":is(h1, h2, h3, h4, h5, h6)",button:":is(button, input[type=button])",input:":is(input, textarea, select, button)",text:"input:is(:not([type!='']), [type=text])"};var mc=Re(n0(),1);var zH={};function YH(t,e){return t===mc.default.falseFunc?mc.default.falseFunc:r=>e.isTag(r)&&t(r)}function JH(t,e){let r=e.getSiblings(t);if(r.length<=1)return[];let n=r.indexOf(t);return n<0||n===r.length-1?[]:r.slice(n+1).filter(e.isTag)}function VH(t){return{xmlMode:!!t.xmlMode,lowerCaseAttributeNames:!!t.lowerCaseAttributeNames,lowerCaseTags:!!t.lowerCaseTags,quirksMode:!!t.quirksMode,cacheResults:!!t.cacheResults,pseudos:t.pseudos,adapter:t.adapter,equals:t.equals}}var KH=(t,e,r,n,s)=>{let i=s(e,VH(r),n);return i===mc.default.trueFunc?t:i===mc.default.falseFunc?mc.default.falseFunc:a=>i(a)&&t(a)},Yk={is:KH,matches:KH,where:KH,not(t,e,r,n,s){let i=s(e,VH(r),n);return i===mc.default.falseFunc?t:i===mc.default.trueFunc?mc.default.falseFunc:a=>!i(a)&&t(a)},has(t,e,r,n,s){let{adapter:i}=r,a=VH(r);a.relativeSelector=!0;let o=e.some(l=>l.some(iv))?[zH]:void 0,c=s(e,a,o);if(c===mc.default.falseFunc)return mc.default.falseFunc;let u=YH(c,i);if(o&&c!==mc.default.trueFunc){let{shouldTestNextSiblings:l=!1}=c;return d=>{if(!t(d))return!1;o[0]=d;let f=i.getChildren(d),p=l?[...f,...JH(d,i)]:f;return i.existsOne(u,p)}}return l=>t(l)&&i.existsOne(u,i.getChildren(l))}};function kPe(t,e,r,n,s){var i;let{name:a,data:o}=e;if(Array.isArray(o)){if(!(a in Yk))throw new Error(`Unknown pseudo-class :${a}(${o})`);return Yk[a](t,o,r,n,s)}let c=(i=r.pseudos)===null||i===void 0?void 0:i[a],u=typeof c=="string"?c:zk[a];if(typeof u=="string"){if(o!=null)throw new Error(`Pseudo ${a} doesn't have any arguments`);let l=(0,PPe.parse)(u);return Yk.is(t,l,r,n,s)}if(typeof c=="function")return GH(c,a,o,1),l=>c(l,o)&&t(l);if(a in Nx)return Nx[a](t,o,r,n);if(a in ov){let l=ov[a];return GH(l,a,o,2),d=>l(d,r,o)&&t(d)}throw new Error(`Unknown pseudo-class :${a}`)}var hc=Re(wx(),1);function XH(t,e){let r=e.getParent(t);return r&&e.isTag(r)?r:null}function DPe(t,e,r,n,s){let{adapter:i,equals:a}=r;switch(e.type){case hc.SelectorType.PseudoElement:throw new Error("Pseudo-elements are not supported by css-select");case hc.SelectorType.ColumnCombinator:throw new Error("Column combinators are not yet supported by css-select");case hc.SelectorType.Attribute:{if(e.namespace!=null)throw new Error("Namespaced attributes are not yet supported by css-select");return(!r.xmlMode||r.lowerCaseAttributeNames)&&(e.name=e.name.toLowerCase()),wPe[e.action](t,e,r)}case hc.SelectorType.Pseudo:return kPe(t,e,r,n,s);case hc.SelectorType.Tag:{if(e.namespace!=null)throw new Error("Namespaced tag names are not yet supported by css-select");let{name:o}=e;return(!r.xmlMode||r.lowerCaseTags)&&(o=o.toLowerCase()),function(u){return i.getName(u)===o&&t(u)}}case hc.SelectorType.Descendant:{if(r.cacheResults===!1||typeof WeakSet>"u")return function(u){let l=u;for(;l=XH(l,i);)if(t(l))return!0;return!1};let o=new WeakSet;return function(u){let l=u;for(;l=XH(l,i);)if(!o.has(l)){if(i.isTag(l)&&t(l))return!0;o.add(l)}return!1}}case"_flexibleDescendant":return function(c){let u=c;do if(t(u))return!0;while(u=XH(u,i));return!1};case hc.SelectorType.Parent:return function(c){return i.getChildren(c).some(u=>i.isTag(u)&&t(u))};case hc.SelectorType.Child:return function(c){let u=i.getParent(c);return u!=null&&i.isTag(u)&&t(u)};case hc.SelectorType.Sibling:return function(c){let u=i.getSiblings(c);for(let l=0;l<u.length;l++){let d=u[l];if(a(c,d))break;if(i.isTag(d)&&t(d))return!0}return!1};case hc.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 hc.SelectorType.Universal:{if(e.namespace!=null&&e.namespace!=="*")throw new Error("Namespaced universal selectors are not yet supported by css-select");return t}}}function BPe(t,e,r){let n=Jk(t,e,r);return YH(n,e.adapter)}function Jk(t,e,r){let n=typeof t=="string"?(0,iu.parse)(t):t;return Xk(n,e,r)}function LPe(t){return t.type===iu.SelectorType.Pseudo&&(t.name==="scope"||Array.isArray(t.data)&&t.data.some(e=>e.some(LPe)))}var nKt={type:iu.SelectorType.Descendant},sKt={type:"_flexibleDescendant"},iKt={type:iu.SelectorType.Pseudo,name:"scope",data:null};function aKt(t,{adapter:e},r){let n=!!r?.every(s=>{let i=e.isTag(s)&&e.getParent(s);return s===zH||i&&e.isTag(i)});for(let s of t){if(!(s.length>0&&iv(s[0])&&s[0].type!==iu.SelectorType.Descendant))if(n&&!s.some(LPe))s.unshift(nKt);else continue;s.unshift(iKt)}}function Xk(t,e,r){var n;t.forEach(jH),r=(n=e.context)!==null&&n!==void 0?n:r;let s=Array.isArray(r),i=r&&(Array.isArray(r)?r:[r]);if(e.relativeSelector!==!1)aKt(t,e,i);else if(t.some(c=>c.length>0&&iv(c[0])))throw new Error("Relative selectors are not allowed when the `relativeSelector` option is disabled");let a=!1,o=t.map(c=>{if(c.length>=2){let[u,l]=c;u.type!==iu.SelectorType.Pseudo||u.name!=="scope"||(s&&l.type===iu.SelectorType.Descendant?c[1]=sKt:(l.type===iu.SelectorType.Adjacent||l.type===iu.SelectorType.Sibling)&&(a=!0))}return oKt(c,e,i)}).reduce(cKt,qd.default.falseFunc);return o.shouldTestNextSiblings=a,o}function oKt(t,e,r){var n;return t.reduce((s,i)=>s===qd.default.falseFunc?qd.default.falseFunc:DPe(s,i,e,r,Xk),(n=e.rootFunc)!==null&&n!==void 0?n:qd.default.trueFunc)}function cKt(t,e){return e===qd.default.falseFunc||t===qd.default.trueFunc?t:t===qd.default.falseFunc||e===qd.default.trueFunc?e:function(n){return t(n)||e(n)}}var MPe=(t,e)=>t===e,uKt={adapter:t0,equals:MPe};function WPe(t){var e,r,n,s;let i=t??uKt;return(e=i.adapter)!==null&&e!==void 0||(i.adapter=t0),(r=i.equals)!==null&&r!==void 0||(i.equals=(s=(n=i.adapter)===null||n===void 0?void 0:n.equals)!==null&&s!==void 0?s:MPe),i}function eQ(t){return function(r,n,s){let i=WPe(n);return t(r,i,s)}}var pFr=eQ(BPe),mFr=eQ(Jk),Zk=eQ(Xk);function $Pe(t){return function(r,n,s){let i=WPe(s);typeof r!="function"&&(r=Jk(r,i,n));let a=eD(n,i.adapter,r.shouldTestNextSiblings);return t(r,a,i)}}function eD(t,e,r=!1){return r&&(t=lKt(t,e)),Array.isArray(t)?e.removeSubsets(t):e.getChildren(t)}function lKt(t,e){let r=Array.isArray(t)?t.slice(0):[t],n=r.length;for(let s=0;s<n;s++){let i=JH(r[s],e);r.push(...i)}return r}var hFr=$Pe((t,e,r)=>t===ZH.default.falseFunc||!e||e.length===0?[]:r.adapter.findAll(t,e)),gFr=$Pe((t,e,r)=>t===ZH.default.falseFunc||!e||e.length===0?null:r.adapter.findOne(t,e));var rD=Re(n0(),1);var dKt=new Set(["first","last","eq","gt","nth","lt","even","odd"]);function Ox(t){return t.type!=="pseudo"?!1:dKt.has(t.name)?!0:t.name==="not"&&Array.isArray(t.data)?t.data.some(e=>e.some(Ox)):!1}function FPe(t,e,r){let n=e!=null?parseInt(e,10):NaN;switch(t){case"first":return 1;case"nth":case"eq":return isFinite(n)?n>=0?n+1:1/0:0;case"lt":return isFinite(n)?n>=0?Math.min(n,r):1/0:0;case"gt":return isFinite(n)?1/0:0;case"odd":return 2*r;case"even":return 2*r-1;case"last":case"not":return 1/0}}function UPe(t){for(;t.parent;)t=t.parent;return t}function tD(t){let e=[],r=[];for(let n of t)n.some(Ox)?e.push(n):r.push(n);return[r,e]}var fKt={type:Ja.SelectorType.Universal,namespace:null},pKt={type:Ja.SelectorType.Pseudo,name:"scope",data:null};function nQ(t,e,r={}){return sQ([t],e,r)}function sQ(t,e,r={}){if(typeof e=="function")return t.some(e);let[n,s]=tD((0,Ja.parse)(e));return n.length>0&&t.some(Zk(n,r))||s.some(i=>jPe(i,t,r).length>0)}function mKt(t,e,r,n){let s=typeof r=="string"?parseInt(r,10):NaN;switch(t){case"first":case"lt":return e;case"last":return e.length>0?[e[e.length-1]]:e;case"nth":case"eq":return isFinite(s)&&Math.abs(s)<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(qPe(r,e,n));return e.filter(a=>!i.has(a))}}}function iQ(t,e,r={}){return qPe((0,Ja.parse)(t),e,r)}function qPe(t,e,r){if(e.length===0)return[];let[n,s]=tD(t),i;if(n.length){let a=rQ(e,n,r);if(s.length===0)return a;a.length&&(i=new Set(a))}for(let a=0;a<s.length&&i?.size!==e.length;a++){let o=s[a];if((i?e.filter(l=>st(l)&&!i.has(l)):e).length===0)break;let u=jPe(o,e,r);if(u.length)if(i)u.forEach(l=>i.add(l));else{if(a===s.length-1)return u;i=new Set(u)}}return typeof i<"u"?i.size===e.length?e:e.filter(a=>i.has(a)):[]}function jPe(t,e,r){var n;if(t.some(Ja.isTraversal)){let s=(n=r.root)!==null&&n!==void 0?n:UPe(e[0]),i={...r,context:e,relativeSelector:!1};return t.push(pKt),nD(s,t,i,!0,e.length)}return nD(e,t,r,!1,e.length)}function HPe(t,e,r={},n=1/0){if(typeof t=="function")return QPe(e,t);let[s,i]=tD((0,Ja.parse)(t)),a=i.map(o=>nD(e,o,r,!0,n));return s.length&&a.push(tQ(e,s,r,n)),a.length===0?[]:a.length===1?a[0]:Zp(a.reduce((o,c)=>[...o,...c]))}function nD(t,e,r,n,s){let i=e.findIndex(Ox),a=e.slice(0,i),o=e[i],c=e.length-1===i?s:1/0,u=FPe(o.name,o.data,c);if(u===0)return[];let d=(a.length===0&&!Array.isArray(t)?Ex(t).filter(st):a.length===0?(Array.isArray(t)?t:[t]).filter(st):n||a.some(Ja.isTraversal)?tQ(t,[a],r,u):rQ(t,[a],r)).slice(0,u),f=mKt(o.name,d,o.data,r);if(f.length===0||e.length===i+1)return f;let p=e.slice(i+1),m=p.some(Ja.isTraversal);if(m){if((0,Ja.isTraversal)(p[0])){let{type:h}=p[0];(h===Ja.SelectorType.Sibling||h===Ja.SelectorType.Adjacent)&&(f=eD(f,t0,!0)),p.unshift(fKt)}r={...r,relativeSelector:!1,rootFunc:h=>f.includes(h)}}else r.rootFunc&&r.rootFunc!==rD.trueFunc&&(r={...r,rootFunc:rD.trueFunc});return p.some(Ox)?nD(f,p,r,!1,s):m?tQ(f,[p],r,s):rQ(f,[p],r)}function tQ(t,e,r,n){let s=Zk(e,r,t);return QPe(t,s,n)}function QPe(t,e,r=1/0){let n=eD(t,t0,e.shouldTestNextSiblings);return $k(s=>st(s)&&e(s),n,!0,r)}function rQ(t,e,r){let n=(Array.isArray(t)?t:[t]).filter(st);if(n.length===0)return n;let s=Zk(e,r);return s===rD.trueFunc?n:n.filter(s)}var gKt=/^\s*[~+]/;function AKt(t){var e;if(!t)return this._make([]);let r=this.toArray();if(typeof t!="string"){let i=So(t)?t.toArray():[t];return this._make(i.filter(a=>r.some(o=>MH(o,a))))}let n=gKt.test(t)?r:this.children().toArray(),s={context:r,root:(e=this._root)===null||e===void 0?void 0:e[0],xmlMode:this.options.xmlMode,lowerCaseTags:this.options.lowerCaseTags,lowerCaseAttributeNames:this.options.lowerCaseAttributeNames,pseudos:this.options.pseudos,quirksMode:this.options.quirksMode};return this._make(HPe(t,n,s))}function aQ(t){return function(e,...r){return function(n){var s;let i=t(e,this);return n&&(i=uQ(i,n,this.options.xmlMode,(s=this._root)===null||s===void 0?void 0:s[0])),this._make(this.length>1&&i.length>1?r.reduce((a,o)=>o(a),i):i)}}}var cv=aQ((t,e)=>{let r=[];for(let n=0;n<e.length;n++){let s=t(e[n]);r.push(s)}return new Array().concat(...r)}),oQ=aQ((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 cQ(t,...e){let r=null,n=aQ((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=>nQ(o,s,this.options):s?uv(s):null;let a=n.call(this,i);return r=null,a}}function Px(t){return Array.from(new Set(t))}var yKt=oQ(({parent:t})=>t&&!su(t)?t:null,Px),xKt=cv(t=>{let e=[];for(;t.parent&&!su(t.parent);)e.push(t.parent),t=t.parent;return e},Zp,t=>t.reverse()),bKt=cQ(({parent:t})=>t&&!su(t)?t:null,Zp,t=>t.reverse());function EKt(t){var e;let r=[];if(!t)return this._make(r);let n={xmlMode:this.options.xmlMode,root:(e=this._root)===null||e===void 0?void 0:e[0]},s=typeof t=="string"?i=>nQ(i,t,n):uv(t);return mn(this,i=>{for(;i&&st(i);){if(s(i,0)){r.includes(i)||r.push(i);break}i=i.parent}}),this._make(r)}var _Kt=oQ(t=>Mk(t)),SKt=cv(t=>{let e=[];for(;t.next;)t=t.next,st(t)&&e.push(t);return e},Px),vKt=cQ(t=>Mk(t),Px),IKt=oQ(t=>Wk(t)),CKt=cv(t=>{let e=[];for(;t.prev;)t=t.prev,st(t)&&e.push(t);return e},Px),TKt=cQ(t=>Wk(t),Px),wKt=cv(t=>PH(t).filter(e=>st(e)&&e!==t),Zp),RKt=cv(t=>Ex(t).filter(st),Px);function NKt(){let t=this.toArray().reduce((e,r)=>rn(r)?e.concat(r.children):e,[]);return this._make(t)}function OKt(t){let e=0,r=this.length;for(;e<r&&t.call(this[e],e,this[e])!==!1;)++e;return this}function PKt(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 uv(t){return typeof t=="function"?(e,r)=>t.call(e,r,e):So(t)?e=>Array.prototype.includes.call(t,e):function(e){return t===e}}function kKt(t){var e;return this._make(uQ(this.toArray(),t,this.options.xmlMode,(e=this._root)===null||e===void 0?void 0:e[0]))}function uQ(t,e,r,n){return typeof e=="string"?iQ(e,t,{xmlMode:r,root:n}):t.filter(uv(e))}function DKt(t){let e=this.toArray();return typeof t=="string"?sQ(e.filter(st),t,this.options):t?e.some(uv(t)):!1}function BKt(t){let e=this.toArray();if(typeof t=="string"){let r=new Set(iQ(t,e,this.options));e=e.filter(n=>!r.has(n))}else{let r=uv(t);e=e.filter((n,s)=>!r(n,s))}return this._make(e)}function LKt(t){return this.filter(typeof t=="string"?`:has(${t})`:(e,r)=>this._make(r).find(t).length>0)}function MKt(){return this.length>1?this._make(this[0]):this}function WKt(){return this.length>0?this._make(this[this.length-1]):this}function $Kt(t){var e;return t=+t,t===0&&this.length<=1?this:(t<0&&(t=this.length+t),this._make((e=this[t])!==null&&e!==void 0?e:[]))}function FKt(t){return t==null?this.toArray():this[t<0?this.length+t:t]}function UKt(){return Array.prototype.slice.call(this)}function qKt(t){let e,r;return t==null?(e=this.parent().children(),r=this[0]):typeof t=="string"?(e=this._make(t),r=this[0]):(e=this,r=So(t)?t[0]:t),Array.prototype.indexOf.call(e,r)}function jKt(t,e){return this._make(Array.prototype.slice.call(this,t,e))}function HKt(){var t;return(t=this.prevObject)!==null&&t!==void 0?t:this._make([])}function QKt(t,e){let r=this._make(t,e),n=Zp([...this.get(),...r.get()]);return this._make(n)}function GKt(t){return this.prevObject?this.add(t?this.prevObject.filter(t):this.prevObject):this}var dQ={};is(dQ,{_makeDomArray:()=>KKt,after:()=>rVt,append:()=>YKt,appendTo:()=>VKt,before:()=>sVt,clone:()=>fVt,empty:()=>cVt,html:()=>uVt,insertAfter:()=>nVt,insertBefore:()=>iVt,prepend:()=>JKt,prependTo:()=>zKt,remove:()=>aVt,replaceWith:()=>oVt,text:()=>dVt,toString:()=>lVt,unwrap:()=>eVt,wrap:()=>XKt,wrapAll:()=>tVt,wrapInner:()=>ZKt});function GPe(t){return function(r,n,s,i){if(typeof Buffer<"u"&&Buffer.isBuffer(r)&&(r=r.toString()),typeof r=="string")return t(r,n,s,i);let a=r;if(!Array.isArray(a)&&su(a))return a;let o=new _o([]);return s0(a,o),o}}function s0(t,e){let r=Array.isArray(t)?t:[t];e?e.children=r:e=null;for(let n=0;n<r.length;n++){let s=r[n];s.parent&&s.parent.children!==r&&$d(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 KKt(t,e){return t==null?[]:So(t)?e?jk(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?jk([t]):[t]}function KPe(t){return function(...e){let r=this.length-1;return mn(this,(n,s)=>{if(!rn(n))return;let i=typeof e[0]=="function"?e[0].call(n,s,this._render(n.children)):e,a=this._makeDomArray(i,s<r);t(a,n.children,n)})}}function i0(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 m=f.children.indexOf(d);m>-1&&(f.children.splice(m,1),s===f&&e>m&&o[0]--)}d.parent=s,d.prev&&(d.prev.next=(i=d.next)!==null&&i!==void 0?i:null),d.next&&(d.next.prev=(a=d.prev)!==null&&a!==void 0?a:null),d.prev=l===0?c:n[l-1],d.next=l===n.length-1?u:n[l+1]}return c&&(c.next=n[0]),u&&(u.prev=n[n.length-1]),t.splice(...o)}function VKt(t){return(So(t)?t:this._make(t)).append(this),this}function zKt(t){return(So(t)?t:this._make(t)).prepend(this),this}var YKt=KPe((t,e,r)=>{i0(e,e.length,0,t,r)}),JKt=KPe((t,e,r)=>{i0(e,0,0,t,r)});function VPe(t){return function(e){let r=this.length-1,n=this.parents().last();for(let s=0;s<this.length;s++){let i=this[s],a=typeof e=="function"?e.call(i,s,i):typeof e=="string"&&!rv(e)?n.find(e).clone():e,[o]=this._makeDomArray(a,s<r);if(!o||!rn(o))continue;let c=o,u=0;for(;u<c.children.length;){let l=c.children[u];st(l)?(c=l,u=0):u++}t(i,c,[o])}return this}}var XKt=VPe((t,e,r)=>{let{parent:n}=t;if(!n)return;let s=n.children,i=s.indexOf(t);s0([t],e),i0(s,i,0,r,n)}),ZKt=VPe((t,e,r)=>{rn(t)&&(s0(t.children,e),s0(r,t))});function eVt(t){return this.parent(t).not("body").each((e,r)=>{this._make(r).replaceWith(r.children)}),this}function tVt(t){let e=this[0];if(e){let r=this._make(typeof t=="function"?t.call(e,0,e):t).insertBefore(e),n;for(let i=0;i<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 rVt(...t){let e=this.length-1;return mn(this,(r,n)=>{let{parent:s}=r;if(!rn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,c=this._makeDomArray(o,n<e);i0(i,a+1,0,c,s)})}function nVt(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||(i0(i,a+1,0,n,s),e.push(...n))}),this._make(e)}function sVt(...t){let e=this.length-1;return mn(this,(r,n)=>{let{parent:s}=r;if(!rn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,c=this._makeDomArray(o,n<e);i0(i,a,0,c,s)})}function iVt(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||(i0(a,o,0,s,i),r.push(...s))}),this._make(r)}function aVt(t){let e=t?this.filter(t):this;return mn(e,r=>{$d(r),r.prev=r.next=r.parent=null}),this}function oVt(t){return mn(this,(e,r)=>{let{parent:n}=e;if(!n)return;let s=n.children,i=typeof t=="function"?t.call(e,r,e):t,a=this._makeDomArray(i);s0(a,null);let o=s.indexOf(e);i0(s,o,1,a,n),a.includes(e)||(e.parent=e.prev=e.next=null)})}function cVt(){return mn(this,t=>{rn(t)&&(t.children.forEach(e=>{e.next=e.prev=e.parent=null}),t.children.length=0)})}function uVt(t){if(t===void 0){let e=this[0];return!e||!rn(e)?null:this._render(e.children)}return mn(this,e=>{if(!rn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=So(t)?t.toArray():this._parse(`${t}`,this.options,!1,e).children;s0(r,e)})}function lVt(){return this._render(this)}function dVt(t){return t===void 0?Fd(this):typeof t=="function"?mn(this,(e,r)=>this._make(e).text(t.call(e,r,Fd([e])))):mn(this,e=>{if(!rn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=new ll(`${t}`);s0(r,e)})}function fVt(){return this._make(jk(this.get()))}var fQ={};is(fQ,{css:()=>pVt});function pVt(t,e){if(t!=null&&e!=null||typeof t=="object"&&!Array.isArray(t))return mn(this,(r,n)=>{st(r)&&zPe(r,t,e,n)});if(this.length!==0)return YPe(this[0],t)}function zPe(t,e,r,n){if(typeof e=="string"){let s=YPe(t),i=typeof r=="function"?r.call(t,n,s[e]):r;i===""?delete s[e]:i!=null&&(s[e]=i),t.attribs.style=mVt(s)}else typeof e=="object"&&Object.keys(e).forEach((s,i)=>{zPe(t,s,e[s],i)})}function YPe(t,e){if(!t||!st(t))return;let r=hVt(t.attribs.style);if(typeof e=="string")return r[e];if(Array.isArray(e)){let n={};return e.forEach(s=>{r[s]!=null&&(n[s]=r[s])}),n}return r}function mVt(t){return Object.keys(t).reduce((e,r)=>`${e}${e?" ":""}${r}: ${t[r]};`,"")}function hVt(t){if(t=(t||"").trim(),!t)return{};let e={},r;for(let n of t.split(";")){let s=n.indexOf(":");if(s<1||s===n.length-1){let i=n.trimEnd();i.length>0&&r!==void 0&&(e[r]+=`;${i}`)}else r=n.slice(0,s).trim(),e[r]=n.slice(s+1).trim()}return e}var pQ={};is(pQ,{serialize:()=>AVt,serializeArray:()=>yVt});var JPe="input,select,textarea,keygen",gVt=/%20/g,XPe=/\r?\n/g;function AVt(){return this.serializeArray().map(r=>`${encodeURIComponent(r.name)}=${encodeURIComponent(r.value)}`).join("&").replace(gVt,"+")}function yVt(){return this.map((t,e)=>{let r=this._make(e);return st(e)&&e.name==="form"?r.find(JPe).toArray():r.filter(JPe).toArray()}).filter('[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map((t,e)=>{var r;let n=this._make(e),s=n.attr("name"),i=(r=n.val())!==null&&r!==void 0?r:"";return Array.isArray(i)?i.map(a=>({name:s,value:a.replace(XPe,`\r
`)})):{name:s,value:i.replace(XPe,`\r
`)}}).toArray()}var a0=class{constructor(e,r,n){if(this.length=0,this.options=n,this._root=r,e){for(let s=0;s<e.length;s++)this[s]=e[s];this.length=e.length}}};a0.prototype.cheerio="[cheerio object]";a0.prototype.splice=Array.prototype.splice;a0.prototype[Symbol.iterator]=Array.prototype[Symbol.iterator];Object.assign(a0.prototype,UH,lQ,dQ,fQ,pQ);function ZPe(t,e){return function r(n,s,i=!0){if(n==null)throw new Error("cheerio.load() expects a string");let a={...KS,...VS(s)},o=t(n,a,i,null);class c extends a0{_make(d,f){let p=u(d,f);return p.prevObject=this,p}_parse(d,f,p,m){return t(d,f,p,m)}_render(d){return e(d,this.options)}}function u(l,d,f=o,p){if(l&&So(l))return l;let m={...a,...VS(p)},h=typeof f=="string"?[t(f,m,!1,null)]:"length"in f?f:[f],A=So(h)?h:new c(h,null,m);if(A._root=A,!l)return new c(void 0,A,m);let g=typeof l=="string"&&rv(l)?t(l,m,!1,null).children:xVt(l)?[l]:Array.isArray(l)?l:void 0,b=new c(g,A,m);if(g)return b;if(typeof l!="string")throw new Error("Unexpected type of selector");let y=l,x=d?typeof d=="string"?rv(d)?new c([t(d,m,!1,null)],A,m):(y=`${d} ${y}`,A):So(d)?d:new c(Array.isArray(d)?d:[d],A,m):A;return x?x.find(y):b}return Object.assign(u,r0,{load:r,_root:o,_options:a,fn:c.prototype,prototype:c.prototype}),u}}function xVt(t){return!!t.name||t.type==="root"||t.type==="text"||t.type==="comment"}var bVt=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]),_n="\uFFFD",Q;(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"})(Q||(Q={}));var la={DASH_DASH:"--",CDATA_START:"[CDATA[",DOCTYPE:"doctype",SCRIPT:"script",PUBLIC:"public",SYSTEM:"system"};function sD(t){return t>=55296&&t<=57343}function eke(t){return t>=56320&&t<=57343}function tke(t,e){return(t-55296)*1024+9216+e}function iD(t){return t!==32&&t!==10&&t!==13&&t!==9&&t!==12&&t>=1&&t<=31||t>=127&&t<=159}function aD(t){return t>=64976&&t<=65007||bVt.has(t)}var me;(function(t){t.controlCharacterInInputStream="control-character-in-input-stream",t.noncharacterInInputStream="noncharacter-in-input-stream",t.surrogateInInputStream="surrogate-in-input-stream",t.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",t.endTagWithAttributes="end-tag-with-attributes",t.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",t.unexpectedSolidusInTag="unexpected-solidus-in-tag",t.unexpectedNullCharacter="unexpected-null-character",t.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",t.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",t.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",t.missingEndTagName="missing-end-tag-name",t.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",t.unknownNamedCharacterReference="unknown-named-character-reference",t.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",t.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",t.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",t.eofBeforeTagName="eof-before-tag-name",t.eofInTag="eof-in-tag",t.missingAttributeValue="missing-attribute-value",t.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",t.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",t.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",t.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",t.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",t.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",t.missingDoctypePublicIdentifier="missing-doctype-public-identifier",t.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",t.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",t.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",t.cdataInHtmlContent="cdata-in-html-content",t.incorrectlyOpenedComment="incorrectly-opened-comment",t.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",t.eofInDoctype="eof-in-doctype",t.nestedComment="nested-comment",t.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",t.eofInComment="eof-in-comment",t.incorrectlyClosedComment="incorrectly-closed-comment",t.eofInCdata="eof-in-cdata",t.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",t.nullCharacterReference="null-character-reference",t.surrogateCharacterReference="surrogate-character-reference",t.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",t.controlCharacterReference="control-character-reference",t.noncharacterCharacterReference="noncharacter-character-reference",t.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",t.missingDoctypeName="missing-doctype-name",t.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",t.duplicateAttribute="duplicate-attribute",t.nonConformingDoctype="non-conforming-doctype",t.missingDoctype="missing-doctype",t.misplacedDoctype="misplaced-doctype",t.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",t.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",t.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",t.openElementsLeftAfterEof="open-elements-left-after-eof",t.abandonedHeadElementChild="abandoned-head-element-child",t.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",t.nestedNoscriptInHead="nested-noscript-in-head",t.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"})(me||(me={}));var _Vt=65536,oD=class{constructor(e){this.handler=e,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=_Vt,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+ +(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(e,r){let{line:n,col:s,offset:i}=this,a=s+r,o=i+r;return{code:e,startLine:n,endLine:n,startCol:a,endCol:a,startOffset:o,endOffset:o}}_err(e){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(e,0)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(e){if(this.pos!==this.html.length-1){let r=this.html.charCodeAt(this.pos+1);if(eke(r))return this.pos++,this._addGap(),tke(e,r)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,Q.EOF;return this._err(me.surrogateInInputStream),e}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(e,r){this.html.length>0?this.html+=e:this.html=e,this.endOfChunkHit=!1,this.lastChunkWritten=r}insertHtmlAtCurrentPos(e){this.html=this.html.substring(0,this.pos+1)+e+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(e,r){if(this.pos+e.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(r)return this.html.startsWith(e,this.pos);for(let n=0;n<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,Q.EOF;let n=this.html.charCodeAt(r);return n===Q.CARRIAGE_RETURN?Q.LINE_FEED:n}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Q.EOF;let e=this.html.charCodeAt(this.pos);return e===Q.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,Q.LINE_FEED):e===Q.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,sD(e)&&(e=this._processSurrogate(e)),this.handler.onParseError===null||e>31&&e<127||e===Q.LINE_FEED||e===Q.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e)}_checkForProblematicCharacters(e){iD(e)?this._err(me.controlCharacterInInputStream):aD(e)&&this._err(me.noncharacterInInputStream)}retreat(e){for(this.pos-=e;this.pos<this.lastGapPos;)this.lastGapPos=this.gapStack.pop(),this.pos--;this.isEol=!1}};var xr;(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"})(xr||(xr={}));function cD(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 uD=new Uint16Array('\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(t=>t.charCodeAt(0)));var mQ,vVt=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),rke=(mQ=String.fromCodePoint)!==null&&mQ!==void 0?mQ:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function hQ(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=vVt.get(t))!==null&&e!==void 0?e:t}var ei;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(ei||(ei={}));var CVt=32,o0;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(o0||(o0={}));function gQ(t){return t>=ei.ZERO&&t<=ei.NINE}function TVt(t){return t>=ei.UPPER_A&&t<=ei.UPPER_F||t>=ei.LOWER_A&&t<=ei.LOWER_F}function wVt(t){return t>=ei.UPPER_A&&t<=ei.UPPER_Z||t>=ei.LOWER_A&&t<=ei.LOWER_Z||gQ(t)}function RVt(t){return t===ei.EQUALS||wVt(t)}var Zs;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(Zs||(Zs={}));var fl;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(fl||(fl={}));var lD=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=Zs.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=fl.Strict}startEntity(e){this.decodeMode=e,this.state=Zs.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case Zs.EntityStart:return e.charCodeAt(r)===ei.NUM?(this.state=Zs.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=Zs.NamedEntity,this.stateNamedEntity(e,r));case Zs.NumericStart:return this.stateNumericStart(e,r);case Zs.NumericDecimal:return this.stateNumericDecimal(e,r);case Zs.NumericHex:return this.stateNumericHex(e,r);case Zs.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|CVt)===ei.LOWER_X?(this.state=Zs.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=Zs.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+Number.parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r<e.length;){let s=e.charCodeAt(r);if(gQ(s)||TVt(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(gQ(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===fl.Strict)return 0;return this.emitCodePoint(hQ(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&o0.VALUE_LENGTH)>>14;for(;r<e.length;r++,this.excess++){let a=e.charCodeAt(r);if(this.treeIndex=NVt(n,s,this.treeIndex+Math.max(1,i),a),this.treeIndex<0)return this.result===0||this.decodeMode===fl.Attribute&&(i===0||RVt(a))?0:this.emitNotTerminatedNamedEntity();if(s=n[this.treeIndex],i=(s&o0.VALUE_LENGTH)>>14,i!==0){if(a===ei.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==fl.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&o0.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~o0.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case Zs.NamedEntity:return this.result!==0&&(this.decodeMode!==fl.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Zs.NumericDecimal:return this.emitNumericEntity(0,2);case Zs.NumericHex:return this.emitNumericEntity(0,3);case Zs.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Zs.EntityStart:return 0}}};function NVt(t,e,r,n){let s=(e&o0.BRANCH_LENGTH)>>7,i=e&o0.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(u<n)a=c+1;else if(u>n)o=c-1;else return t[c+s]}return-1}var dD={};is(dD,{ATTRS:()=>pl,DOCUMENT_MODE:()=>Ui,NS:()=>Ee,NUMBERED_HEADERS:()=>kx,SPECIAL_ELEMENTS:()=>AQ,TAG_ID:()=>C,TAG_NAMES:()=>de,getTagID:()=>c0,hasUnescapedText:()=>yQ});var Ee;(function(t){t.HTML="http://www.w3.org/1999/xhtml",t.MATHML="http://www.w3.org/1998/Math/MathML",t.SVG="http://www.w3.org/2000/svg",t.XLINK="http://www.w3.org/1999/xlink",t.XML="http://www.w3.org/XML/1998/namespace",t.XMLNS="http://www.w3.org/2000/xmlns/"})(Ee||(Ee={}));var pl;(function(t){t.TYPE="type",t.ACTION="action",t.ENCODING="encoding",t.PROMPT="prompt",t.NAME="name",t.COLOR="color",t.FACE="face",t.SIZE="size"})(pl||(pl={}));var Ui;(function(t){t.NO_QUIRKS="no-quirks",t.QUIRKS="quirks",t.LIMITED_QUIRKS="limited-quirks"})(Ui||(Ui={}));var de;(function(t){t.A="a",t.ADDRESS="address",t.ANNOTATION_XML="annotation-xml",t.APPLET="applet",t.AREA="area",t.ARTICLE="article",t.ASIDE="aside",t.B="b",t.BASE="base",t.BASEFONT="basefont",t.BGSOUND="bgsound",t.BIG="big",t.BLOCKQUOTE="blockquote",t.BODY="body",t.BR="br",t.BUTTON="button",t.CAPTION="caption",t.CENTER="center",t.CODE="code",t.COL="col",t.COLGROUP="colgroup",t.DD="dd",t.DESC="desc",t.DETAILS="details",t.DIALOG="dialog",t.DIR="dir",t.DIV="div",t.DL="dl",t.DT="dt",t.EM="em",t.EMBED="embed",t.FIELDSET="fieldset",t.FIGCAPTION="figcaption",t.FIGURE="figure",t.FONT="font",t.FOOTER="footer",t.FOREIGN_OBJECT="foreignObject",t.FORM="form",t.FRAME="frame",t.FRAMESET="frameset",t.H1="h1",t.H2="h2",t.H3="h3",t.H4="h4",t.H5="h5",t.H6="h6",t.HEAD="head",t.HEADER="header",t.HGROUP="hgroup",t.HR="hr",t.HTML="html",t.I="i",t.IMG="img",t.IMAGE="image",t.INPUT="input",t.IFRAME="iframe",t.KEYGEN="keygen",t.LABEL="label",t.LI="li",t.LINK="link",t.LISTING="listing",t.MAIN="main",t.MALIGNMARK="malignmark",t.MARQUEE="marquee",t.MATH="math",t.MENU="menu",t.META="meta",t.MGLYPH="mglyph",t.MI="mi",t.MO="mo",t.MN="mn",t.MS="ms",t.MTEXT="mtext",t.NAV="nav",t.NOBR="nobr",t.NOFRAMES="noframes",t.NOEMBED="noembed",t.NOSCRIPT="noscript",t.OBJECT="object",t.OL="ol",t.OPTGROUP="optgroup",t.OPTION="option",t.P="p",t.PARAM="param",t.PLAINTEXT="plaintext",t.PRE="pre",t.RB="rb",t.RP="rp",t.RT="rt",t.RTC="rtc",t.RUBY="ruby",t.S="s",t.SCRIPT="script",t.SEARCH="search",t.SECTION="section",t.SELECT="select",t.SOURCE="source",t.SMALL="small",t.SPAN="span",t.STRIKE="strike",t.STRONG="strong",t.STYLE="style",t.SUB="sub",t.SUMMARY="summary",t.SUP="sup",t.TABLE="table",t.TBODY="tbody",t.TEMPLATE="template",t.TEXTAREA="textarea",t.TFOOT="tfoot",t.TD="td",t.TH="th",t.THEAD="thead",t.TITLE="title",t.TR="tr",t.TRACK="track",t.TT="tt",t.U="u",t.UL="ul",t.SVG="svg",t.VAR="var",t.WBR="wbr",t.XMP="xmp"})(de||(de={}));var C;(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A=1]="A",t[t.ADDRESS=2]="ADDRESS",t[t.ANNOTATION_XML=3]="ANNOTATION_XML",t[t.APPLET=4]="APPLET",t[t.AREA=5]="AREA",t[t.ARTICLE=6]="ARTICLE",t[t.ASIDE=7]="ASIDE",t[t.B=8]="B",t[t.BASE=9]="BASE",t[t.BASEFONT=10]="BASEFONT",t[t.BGSOUND=11]="BGSOUND",t[t.BIG=12]="BIG",t[t.BLOCKQUOTE=13]="BLOCKQUOTE",t[t.BODY=14]="BODY",t[t.BR=15]="BR",t[t.BUTTON=16]="BUTTON",t[t.CAPTION=17]="CAPTION",t[t.CENTER=18]="CENTER",t[t.CODE=19]="CODE",t[t.COL=20]="COL",t[t.COLGROUP=21]="COLGROUP",t[t.DD=22]="DD",t[t.DESC=23]="DESC",t[t.DETAILS=24]="DETAILS",t[t.DIALOG=25]="DIALOG",t[t.DIR=26]="DIR",t[t.DIV=27]="DIV",t[t.DL=28]="DL",t[t.DT=29]="DT",t[t.EM=30]="EM",t[t.EMBED=31]="EMBED",t[t.FIELDSET=32]="FIELDSET",t[t.FIGCAPTION=33]="FIGCAPTION",t[t.FIGURE=34]="FIGURE",t[t.FONT=35]="FONT",t[t.FOOTER=36]="FOOTER",t[t.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",t[t.FORM=38]="FORM",t[t.FRAME=39]="FRAME",t[t.FRAMESET=40]="FRAMESET",t[t.H1=41]="H1",t[t.H2=42]="H2",t[t.H3=43]="H3",t[t.H4=44]="H4",t[t.H5=45]="H5",t[t.H6=46]="H6",t[t.HEAD=47]="HEAD",t[t.HEADER=48]="HEADER",t[t.HGROUP=49]="HGROUP",t[t.HR=50]="HR",t[t.HTML=51]="HTML",t[t.I=52]="I",t[t.IMG=53]="IMG",t[t.IMAGE=54]="IMAGE",t[t.INPUT=55]="INPUT",t[t.IFRAME=56]="IFRAME",t[t.KEYGEN=57]="KEYGEN",t[t.LABEL=58]="LABEL",t[t.LI=59]="LI",t[t.LINK=60]="LINK",t[t.LISTING=61]="LISTING",t[t.MAIN=62]="MAIN",t[t.MALIGNMARK=63]="MALIGNMARK",t[t.MARQUEE=64]="MARQUEE",t[t.MATH=65]="MATH",t[t.MENU=66]="MENU",t[t.META=67]="META",t[t.MGLYPH=68]="MGLYPH",t[t.MI=69]="MI",t[t.MO=70]="MO",t[t.MN=71]="MN",t[t.MS=72]="MS",t[t.MTEXT=73]="MTEXT",t[t.NAV=74]="NAV",t[t.NOBR=75]="NOBR",t[t.NOFRAMES=76]="NOFRAMES",t[t.NOEMBED=77]="NOEMBED",t[t.NOSCRIPT=78]="NOSCRIPT",t[t.OBJECT=79]="OBJECT",t[t.OL=80]="OL",t[t.OPTGROUP=81]="OPTGROUP",t[t.OPTION=82]="OPTION",t[t.P=83]="P",t[t.PARAM=84]="PARAM",t[t.PLAINTEXT=85]="PLAINTEXT",t[t.PRE=86]="PRE",t[t.RB=87]="RB",t[t.RP=88]="RP",t[t.RT=89]="RT",t[t.RTC=90]="RTC",t[t.RUBY=91]="RUBY",t[t.S=92]="S",t[t.SCRIPT=93]="SCRIPT",t[t.SEARCH=94]="SEARCH",t[t.SECTION=95]="SECTION",t[t.SELECT=96]="SELECT",t[t.SOURCE=97]="SOURCE",t[t.SMALL=98]="SMALL",t[t.SPAN=99]="SPAN",t[t.STRIKE=100]="STRIKE",t[t.STRONG=101]="STRONG",t[t.STYLE=102]="STYLE",t[t.SUB=103]="SUB",t[t.SUMMARY=104]="SUMMARY",t[t.SUP=105]="SUP",t[t.TABLE=106]="TABLE",t[t.TBODY=107]="TBODY",t[t.TEMPLATE=108]="TEMPLATE",t[t.TEXTAREA=109]="TEXTAREA",t[t.TFOOT=110]="TFOOT",t[t.TD=111]="TD",t[t.TH=112]="TH",t[t.THEAD=113]="THEAD",t[t.TITLE=114]="TITLE",t[t.TR=115]="TR",t[t.TRACK=116]="TRACK",t[t.TT=117]="TT",t[t.U=118]="U",t[t.UL=119]="UL",t[t.SVG=120]="SVG",t[t.VAR=121]="VAR",t[t.WBR=122]="WBR",t[t.XMP=123]="XMP"})(C||(C={}));var OVt=new Map([[de.A,C.A],[de.ADDRESS,C.ADDRESS],[de.ANNOTATION_XML,C.ANNOTATION_XML],[de.APPLET,C.APPLET],[de.AREA,C.AREA],[de.ARTICLE,C.ARTICLE],[de.ASIDE,C.ASIDE],[de.B,C.B],[de.BASE,C.BASE],[de.BASEFONT,C.BASEFONT],[de.BGSOUND,C.BGSOUND],[de.BIG,C.BIG],[de.BLOCKQUOTE,C.BLOCKQUOTE],[de.BODY,C.BODY],[de.BR,C.BR],[de.BUTTON,C.BUTTON],[de.CAPTION,C.CAPTION],[de.CENTER,C.CENTER],[de.CODE,C.CODE],[de.COL,C.COL],[de.COLGROUP,C.COLGROUP],[de.DD,C.DD],[de.DESC,C.DESC],[de.DETAILS,C.DETAILS],[de.DIALOG,C.DIALOG],[de.DIR,C.DIR],[de.DIV,C.DIV],[de.DL,C.DL],[de.DT,C.DT],[de.EM,C.EM],[de.EMBED,C.EMBED],[de.FIELDSET,C.FIELDSET],[de.FIGCAPTION,C.FIGCAPTION],[de.FIGURE,C.FIGURE],[de.FONT,C.FONT],[de.FOOTER,C.FOOTER],[de.FOREIGN_OBJECT,C.FOREIGN_OBJECT],[de.FORM,C.FORM],[de.FRAME,C.FRAME],[de.FRAMESET,C.FRAMESET],[de.H1,C.H1],[de.H2,C.H2],[de.H3,C.H3],[de.H4,C.H4],[de.H5,C.H5],[de.H6,C.H6],[de.HEAD,C.HEAD],[de.HEADER,C.HEADER],[de.HGROUP,C.HGROUP],[de.HR,C.HR],[de.HTML,C.HTML],[de.I,C.I],[de.IMG,C.IMG],[de.IMAGE,C.IMAGE],[de.INPUT,C.INPUT],[de.IFRAME,C.IFRAME],[de.KEYGEN,C.KEYGEN],[de.LABEL,C.LABEL],[de.LI,C.LI],[de.LINK,C.LINK],[de.LISTING,C.LISTING],[de.MAIN,C.MAIN],[de.MALIGNMARK,C.MALIGNMARK],[de.MARQUEE,C.MARQUEE],[de.MATH,C.MATH],[de.MENU,C.MENU],[de.META,C.META],[de.MGLYPH,C.MGLYPH],[de.MI,C.MI],[de.MO,C.MO],[de.MN,C.MN],[de.MS,C.MS],[de.MTEXT,C.MTEXT],[de.NAV,C.NAV],[de.NOBR,C.NOBR],[de.NOFRAMES,C.NOFRAMES],[de.NOEMBED,C.NOEMBED],[de.NOSCRIPT,C.NOSCRIPT],[de.OBJECT,C.OBJECT],[de.OL,C.OL],[de.OPTGROUP,C.OPTGROUP],[de.OPTION,C.OPTION],[de.P,C.P],[de.PARAM,C.PARAM],[de.PLAINTEXT,C.PLAINTEXT],[de.PRE,C.PRE],[de.RB,C.RB],[de.RP,C.RP],[de.RT,C.RT],[de.RTC,C.RTC],[de.RUBY,C.RUBY],[de.S,C.S],[de.SCRIPT,C.SCRIPT],[de.SEARCH,C.SEARCH],[de.SECTION,C.SECTION],[de.SELECT,C.SELECT],[de.SOURCE,C.SOURCE],[de.SMALL,C.SMALL],[de.SPAN,C.SPAN],[de.STRIKE,C.STRIKE],[de.STRONG,C.STRONG],[de.STYLE,C.STYLE],[de.SUB,C.SUB],[de.SUMMARY,C.SUMMARY],[de.SUP,C.SUP],[de.TABLE,C.TABLE],[de.TBODY,C.TBODY],[de.TEMPLATE,C.TEMPLATE],[de.TEXTAREA,C.TEXTAREA],[de.TFOOT,C.TFOOT],[de.TD,C.TD],[de.TH,C.TH],[de.THEAD,C.THEAD],[de.TITLE,C.TITLE],[de.TR,C.TR],[de.TRACK,C.TRACK],[de.TT,C.TT],[de.U,C.U],[de.UL,C.UL],[de.SVG,C.SVG],[de.VAR,C.VAR],[de.WBR,C.WBR],[de.XMP,C.XMP]]);function c0(t){var e;return(e=OVt.get(t))!==null&&e!==void 0?e:C.UNKNOWN}var Oe=C,AQ={[Ee.HTML]:new Set([Oe.ADDRESS,Oe.APPLET,Oe.AREA,Oe.ARTICLE,Oe.ASIDE,Oe.BASE,Oe.BASEFONT,Oe.BGSOUND,Oe.BLOCKQUOTE,Oe.BODY,Oe.BR,Oe.BUTTON,Oe.CAPTION,Oe.CENTER,Oe.COL,Oe.COLGROUP,Oe.DD,Oe.DETAILS,Oe.DIR,Oe.DIV,Oe.DL,Oe.DT,Oe.EMBED,Oe.FIELDSET,Oe.FIGCAPTION,Oe.FIGURE,Oe.FOOTER,Oe.FORM,Oe.FRAME,Oe.FRAMESET,Oe.H1,Oe.H2,Oe.H3,Oe.H4,Oe.H5,Oe.H6,Oe.HEAD,Oe.HEADER,Oe.HGROUP,Oe.HR,Oe.HTML,Oe.IFRAME,Oe.IMG,Oe.INPUT,Oe.LI,Oe.LINK,Oe.LISTING,Oe.MAIN,Oe.MARQUEE,Oe.MENU,Oe.META,Oe.NAV,Oe.NOEMBED,Oe.NOFRAMES,Oe.NOSCRIPT,Oe.OBJECT,Oe.OL,Oe.P,Oe.PARAM,Oe.PLAINTEXT,Oe.PRE,Oe.SCRIPT,Oe.SECTION,Oe.SELECT,Oe.SOURCE,Oe.STYLE,Oe.SUMMARY,Oe.TABLE,Oe.TBODY,Oe.TD,Oe.TEMPLATE,Oe.TEXTAREA,Oe.TFOOT,Oe.TH,Oe.THEAD,Oe.TITLE,Oe.TR,Oe.TRACK,Oe.UL,Oe.WBR,Oe.XMP]),[Ee.MATHML]:new Set([Oe.MI,Oe.MO,Oe.MN,Oe.MS,Oe.MTEXT,Oe.ANNOTATION_XML]),[Ee.SVG]:new Set([Oe.TITLE,Oe.FOREIGN_OBJECT,Oe.DESC]),[Ee.XLINK]:new Set,[Ee.XML]:new Set,[Ee.XMLNS]:new Set},kx=new Set([Oe.H1,Oe.H2,Oe.H3,Oe.H4,Oe.H5,Oe.H6]),PVt=new Set([de.STYLE,de.SCRIPT,de.XMP,de.IFRAME,de.NOEMBED,de.NOFRAMES,de.PLAINTEXT]);function yQ(t,e){return PVt.has(t)||e&&t===de.NOSCRIPT}var Y;(function(t){t[t.DATA=0]="DATA",t[t.RCDATA=1]="RCDATA",t[t.RAWTEXT=2]="RAWTEXT",t[t.SCRIPT_DATA=3]="SCRIPT_DATA",t[t.PLAINTEXT=4]="PLAINTEXT",t[t.TAG_OPEN=5]="TAG_OPEN",t[t.END_TAG_OPEN=6]="END_TAG_OPEN",t[t.TAG_NAME=7]="TAG_NAME",t[t.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",t[t.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",t[t.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",t[t.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",t[t.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",t[t.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",t[t.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",t[t.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",t[t.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",t[t.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",t[t.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",t[t.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",t[t.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",t[t.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",t[t.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",t[t.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",t[t.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",t[t.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",t[t.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",t[t.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",t[t.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",t[t.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",t[t.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",t[t.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",t[t.BOGUS_COMMENT=40]="BOGUS_COMMENT",t[t.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",t[t.COMMENT_START=42]="COMMENT_START",t[t.COMMENT_START_DASH=43]="COMMENT_START_DASH",t[t.COMMENT=44]="COMMENT",t[t.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",t[t.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",t[t.COMMENT_END_DASH=49]="COMMENT_END_DASH",t[t.COMMENT_END=50]="COMMENT_END",t[t.COMMENT_END_BANG=51]="COMMENT_END_BANG",t[t.DOCTYPE=52]="DOCTYPE",t[t.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",t[t.DOCTYPE_NAME=54]="DOCTYPE_NAME",t[t.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",t[t.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",t[t.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",t[t.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",t[t.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",t[t.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",t[t.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",t[t.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",t[t.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",t[t.CDATA_SECTION=68]="CDATA_SECTION",t[t.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",t[t.CDATA_SECTION_END=70]="CDATA_SECTION_END",t[t.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",t[t.AMBIGUOUS_AMPERSAND=72]="AMBIGUOUS_AMPERSAND"})(Y||(Y={}));var qi={DATA:Y.DATA,RCDATA:Y.RCDATA,RAWTEXT:Y.RAWTEXT,SCRIPT_DATA:Y.SCRIPT_DATA,PLAINTEXT:Y.PLAINTEXT,CDATA_SECTION:Y.CDATA_SECTION};function kVt(t){return t>=Q.DIGIT_0&&t<=Q.DIGIT_9}function lv(t){return t>=Q.LATIN_CAPITAL_A&&t<=Q.LATIN_CAPITAL_Z}function DVt(t){return t>=Q.LATIN_SMALL_A&&t<=Q.LATIN_SMALL_Z}function u0(t){return DVt(t)||lv(t)}function nke(t){return u0(t)||kVt(t)}function fD(t){return t+32}function ike(t){return t===Q.SPACE||t===Q.LINE_FEED||t===Q.TABULATION||t===Q.FORM_FEED}function ske(t){return ike(t)||t===Q.SOLIDUS||t===Q.GREATER_THAN_SIGN}function BVt(t){return t===Q.NULL?me.nullCharacterReference:t>1114111?me.characterReferenceOutsideUnicodeRange:sD(t)?me.surrogateCharacterReference:aD(t)?me.noncharacterCharacterReference:iD(t)||t===Q.CARRIAGE_RETURN?me.controlCharacterReference:null}var dv=class{constructor(e,r){this.options=e,this.handler=r,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=Y.DATA,this.returnState=Y.DATA,this.entityStartPos=0,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new oD(r),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new lD(uD,(n,s)=>{this.preprocessor.pos=this.entityStartPos+s-1,this._flushCodePointConsumedAsCharacterReference(n)},r.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(me.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:n=>{this._err(me.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+n)},validateNumericCharacterReference:n=>{let s=BVt(n);s&&this._err(s,1)}}:void 0)}_err(e,r=0){var n,s;(s=(n=this.handler).onParseError)===null||s===void 0||s.call(n,this.preprocessor.getError(e,r))}getCurrentLocation(e){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-e,startOffset:this.preprocessor.offset-e,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;let e=this._consume();this._ensureHibernation()||this._callState(e)}this.inLoop=!1}}pause(){this.paused=!0}resume(e){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,!this.inLoop&&(this._runParsingLoop(),this.paused||e?.())}write(e,r,n){this.active=!0,this.preprocessor.write(e,r),this._runParsingLoop(),this.paused||n?.()}insertHtmlAtCurrentPos(e){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(e),this._runParsingLoop()}_ensureHibernation(){return this.preprocessor.endOfChunkHit?(this.preprocessor.retreat(this.consumedAfterSnapshot),this.consumedAfterSnapshot=0,this.active=!1,!0):!1}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_advanceBy(e){this.consumedAfterSnapshot+=e;for(let r=0;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:xr.START_TAG,tagName:"",tagID:C.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(1)}}_createEndTagToken(){this.currentToken={type:xr.END_TAG,tagName:"",tagID:C.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(2)}}_createCommentToken(e){this.currentToken={type:xr.COMMENT,data:"",location:this.getCurrentLocation(e)}}_createDoctypeToken(e){this.currentToken={type:xr.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(cD(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(me.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=c0(e.tagName),e.type===xr.START_TAG?(this.lastStartTagName=e.tagName,this.handler.onStartTag(e)):(e.attrs.length>0&&this._err(me.endTagWithAttributes),e.selfClosing&&this._err(me.endTagWithTrailingSolidus),this.handler.onEndTag(e)),this.preprocessor.dropParsedChunk()}emitCurrentComment(e){this.prepareToken(e),this.handler.onComment(e),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(e){this.prepareToken(e),this.handler.onDoctype(e),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(e){if(this.currentCharacterToken){switch(e&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=e.startLine,this.currentCharacterToken.location.endCol=e.startCol,this.currentCharacterToken.location.endOffset=e.startOffset),this.currentCharacterToken.type){case xr.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case xr.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case xr.WHITESPACE_CHARACTER:{this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}}this.currentCharacterToken=null}}_emitEOFToken(){let e=this.getCurrentLocation(0);e&&(e.endLine=e.startLine,e.endCol=e.startCol,e.endOffset=e.startOffset),this._emitCurrentCharacterToken(e),this.handler.onEof({type:xr.EOF,location:e}),this.active=!1}_appendCharToCurrentCharacterToken(e,r){if(this.currentCharacterToken)if(this.currentCharacterToken.type===e){this.currentCharacterToken.chars+=r;return}else this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk();this._createCharacterToken(e,r)}_emitCodePoint(e){let r=ike(e)?xr.WHITESPACE_CHARACTER:e===Q.NULL?xr.NULL_CHARACTER:xr.CHARACTER;this._appendCharToCurrentCharacterToken(r,String.fromCodePoint(e))}_emitChars(e){this._appendCharToCurrentCharacterToken(xr.CHARACTER,e)}_startCharacterReference(){this.returnState=this.state,this.state=Y.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?fl.Attribute:fl.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(e){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(e):this._emitCodePoint(e)}_callState(e){switch(this.state){case Y.DATA:{this._stateData(e);break}case Y.RCDATA:{this._stateRcdata(e);break}case Y.RAWTEXT:{this._stateRawtext(e);break}case Y.SCRIPT_DATA:{this._stateScriptData(e);break}case Y.PLAINTEXT:{this._statePlaintext(e);break}case Y.TAG_OPEN:{this._stateTagOpen(e);break}case Y.END_TAG_OPEN:{this._stateEndTagOpen(e);break}case Y.TAG_NAME:{this._stateTagName(e);break}case Y.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(e);break}case Y.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(e);break}case Y.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(e);break}case Y.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(e);break}case Y.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(e);break}case Y.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(e);break}case Y.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(e);break}case Y.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(e);break}case Y.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(e);break}case Y.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(e);break}case Y.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(e);break}case Y.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(e);break}case Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(e);break}case Y.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(e);break}case Y.ATTRIBUTE_NAME:{this._stateAttributeName(e);break}case Y.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(e);break}case Y.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(e);break}case Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(e);break}case Y.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(e);break}case Y.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(e);break}case Y.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(e);break}case Y.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(e);break}case Y.BOGUS_COMMENT:{this._stateBogusComment(e);break}case Y.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(e);break}case Y.COMMENT_START:{this._stateCommentStart(e);break}case Y.COMMENT_START_DASH:{this._stateCommentStartDash(e);break}case Y.COMMENT:{this._stateComment(e);break}case Y.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(e);break}case Y.COMMENT_END_DASH:{this._stateCommentEndDash(e);break}case Y.COMMENT_END:{this._stateCommentEnd(e);break}case Y.COMMENT_END_BANG:{this._stateCommentEndBang(e);break}case Y.DOCTYPE:{this._stateDoctype(e);break}case Y.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(e);break}case Y.DOCTYPE_NAME:{this._stateDoctypeName(e);break}case Y.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(e);break}case Y.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(e);break}case Y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(e);break}case Y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(e);break}case Y.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(e);break}case Y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(e);break}case Y.BOGUS_DOCTYPE:{this._stateBogusDoctype(e);break}case Y.CDATA_SECTION:{this._stateCdataSection(e);break}case Y.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(e);break}case Y.CDATA_SECTION_END:{this._stateCdataSectionEnd(e);break}case Y.CHARACTER_REFERENCE:{this._stateCharacterReference();break}case Y.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(e);break}default:throw new Error("Unknown state")}}_stateData(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.TAG_OPEN;break}case Q.AMPERSAND:{this._startCharacterReference();break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitCodePoint(e);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRcdata(e){switch(e){case Q.AMPERSAND:{this._startCharacterReference();break}case Q.LESS_THAN_SIGN:{this.state=Y.RCDATA_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRawtext(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.RAWTEXT_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptData(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_statePlaintext(e){switch(e){case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateTagOpen(e){if(u0(e))this._createStartTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case Q.EXCLAMATION_MARK:{this.state=Y.MARKUP_DECLARATION_OPEN;break}case Q.SOLIDUS:{this.state=Y.END_TAG_OPEN;break}case Q.QUESTION_MARK:{this._err(me.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e);break}case Q.EOF:{this._err(me.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break}default:this._err(me.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=Y.DATA,this._stateData(e)}}_stateEndTagOpen(e){if(u0(e))this._createEndTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case Q.GREATER_THAN_SIGN:{this._err(me.missingEndTagName),this.state=Y.DATA;break}case Q.EOF:{this._err(me.eofBeforeTagName),this._emitChars("</"),this._emitEOFToken();break}default:this._err(me.invalidFirstCharacterOfTagName),this._createCommentToken(2),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e)}}_stateTagName(e){let r=this.currentToken;switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:{this.state=Y.BEFORE_ATTRIBUTE_NAME;break}case Q.SOLIDUS:{this.state=Y.SELF_CLOSING_START_TAG;break}case Q.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentTagToken();break}case Q.NULL:{this._err(me.unexpectedNullCharacter),r.tagName+=_n;break}case Q.EOF:{this._err(me.eofInTag),this._emitEOFToken();break}default:r.tagName+=String.fromCodePoint(lv(e)?fD(e):e)}}_stateRcdataLessThanSign(e){e===Q.SOLIDUS?this.state=Y.RCDATA_END_TAG_OPEN:(this._emitChars("<"),this.state=Y.RCDATA,this._stateRcdata(e))}_stateRcdataEndTagOpen(e){u0(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 Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:return this._advanceBy(this.lastStartTagName.length),this.state=Y.BEFORE_ATTRIBUTE_NAME,!1;case Q.SOLIDUS:return this._advanceBy(this.lastStartTagName.length),this.state=Y.SELF_CLOSING_START_TAG,!1;case Q.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===Q.SOLIDUS?this.state=Y.RAWTEXT_END_TAG_OPEN:(this._emitChars("<"),this.state=Y.RAWTEXT,this._stateRawtext(e))}_stateRawtextEndTagOpen(e){u0(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 Q.SOLIDUS:{this.state=Y.SCRIPT_DATA_END_TAG_OPEN;break}case Q.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){u0(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===Q.HYPHEN_MINUS?(this.state=Y.SCRIPT_DATA_ESCAPE_START_DASH,this._emitChars("-")):(this.state=Y.SCRIPT_DATA,this._stateScriptData(e))}_stateScriptDataEscapeStartDash(e){e===Q.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 Q.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_ESCAPED_DASH,this._emitChars("-");break}case Q.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptDataEscapedDash(e){switch(e){case Q.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars("-");break}case Q.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_ESCAPED,this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedDashDash(e){switch(e){case Q.HYPHEN_MINUS:{this._emitChars("-");break}case Q.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case Q.GREATER_THAN_SIGN:{this.state=Y.SCRIPT_DATA,this._emitChars(">");break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_ESCAPED,this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedLessThanSign(e){e===Q.SOLIDUS?this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:u0(e)?(this._emitChars("<"),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(e)):(this._emitChars("<"),this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagOpen(e){u0(e)?(this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(e)):(this._emitChars("</"),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(la.SCRIPT,!1)&&ske(this.preprocessor.peek(la.SCRIPT.length))){this._emitCodePoint(e);for(let r=0;r<la.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 Q.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH,this._emitChars("-");break}case Q.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedDash(e){switch(e){case Q.HYPHEN_MINUS:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH,this._emitChars("-");break}case Q.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedDashDash(e){switch(e){case Q.HYPHEN_MINUS:{this._emitChars("-");break}case Q.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case Q.GREATER_THAN_SIGN:{this.state=Y.SCRIPT_DATA,this._emitChars(">");break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedLessThanSign(e){e===Q.SOLIDUS?(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateScriptDataDoubleEscapeEnd(e){if(this.preprocessor.startsWith(la.SCRIPT,!1)&&ske(this.preprocessor.peek(la.SCRIPT.length))){this._emitCodePoint(e);for(let r=0;r<la.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 Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:break;case Q.SOLIDUS:case Q.GREATER_THAN_SIGN:case Q.EOF:{this.state=Y.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break}case Q.EQUALS_SIGN:{this._err(me.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 Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:case Q.SOLIDUS:case Q.GREATER_THAN_SIGN:case Q.EOF:{this._leaveAttrName(),this.state=Y.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break}case Q.EQUALS_SIGN:{this._leaveAttrName(),this.state=Y.BEFORE_ATTRIBUTE_VALUE;break}case Q.QUOTATION_MARK:case Q.APOSTROPHE:case Q.LESS_THAN_SIGN:{this._err(me.unexpectedCharacterInAttributeName),this.currentAttr.name+=String.fromCodePoint(e);break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.currentAttr.name+=_n;break}default:this.currentAttr.name+=String.fromCodePoint(lv(e)?fD(e):e)}}_stateAfterAttributeName(e){switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:break;case Q.SOLIDUS:{this.state=Y.SELF_CLOSING_START_TAG;break}case Q.EQUALS_SIGN:{this.state=Y.BEFORE_ATTRIBUTE_VALUE;break}case Q.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentTagToken();break}case Q.EOF:{this._err(me.eofInTag),this._emitEOFToken();break}default:this._createAttr(""),this.state=Y.ATTRIBUTE_NAME,this._stateAttributeName(e)}}_stateBeforeAttributeValue(e){switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:break;case Q.QUOTATION_MARK:{this.state=Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED;break}case Q.APOSTROPHE:{this.state=Y.ATTRIBUTE_VALUE_SINGLE_QUOTED;break}case Q.GREATER_THAN_SIGN:{this._err(me.missingAttributeValue),this.state=Y.DATA,this.emitCurrentTagToken();break}default:this.state=Y.ATTRIBUTE_VALUE_UNQUOTED,this._stateAttributeValueUnquoted(e)}}_stateAttributeValueDoubleQuoted(e){switch(e){case Q.QUOTATION_MARK:{this.state=Y.AFTER_ATTRIBUTE_VALUE_QUOTED;break}case Q.AMPERSAND:{this._startCharacterReference();break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.currentAttr.value+=_n;break}case Q.EOF:{this._err(me.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueSingleQuoted(e){switch(e){case Q.APOSTROPHE:{this.state=Y.AFTER_ATTRIBUTE_VALUE_QUOTED;break}case Q.AMPERSAND:{this._startCharacterReference();break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.currentAttr.value+=_n;break}case Q.EOF:{this._err(me.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueUnquoted(e){switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:{this._leaveAttrValue(),this.state=Y.BEFORE_ATTRIBUTE_NAME;break}case Q.AMPERSAND:{this._startCharacterReference();break}case Q.GREATER_THAN_SIGN:{this._leaveAttrValue(),this.state=Y.DATA,this.emitCurrentTagToken();break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.currentAttr.value+=_n;break}case Q.QUOTATION_MARK:case Q.APOSTROPHE:case Q.LESS_THAN_SIGN:case Q.EQUALS_SIGN:case Q.GRAVE_ACCENT:{this._err(me.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=String.fromCodePoint(e);break}case Q.EOF:{this._err(me.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAfterAttributeValueQuoted(e){switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:{this._leaveAttrValue(),this.state=Y.BEFORE_ATTRIBUTE_NAME;break}case Q.SOLIDUS:{this._leaveAttrValue(),this.state=Y.SELF_CLOSING_START_TAG;break}case Q.GREATER_THAN_SIGN:{this._leaveAttrValue(),this.state=Y.DATA,this.emitCurrentTagToken();break}case Q.EOF:{this._err(me.eofInTag),this._emitEOFToken();break}default:this._err(me.missingWhitespaceBetweenAttributes),this.state=Y.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateSelfClosingStartTag(e){switch(e){case Q.GREATER_THAN_SIGN:{let r=this.currentToken;r.selfClosing=!0,this.state=Y.DATA,this.emitCurrentTagToken();break}case Q.EOF:{this._err(me.eofInTag),this._emitEOFToken();break}default:this._err(me.unexpectedSolidusInTag),this.state=Y.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateBogusComment(e){let r=this.currentToken;switch(e){case Q.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentComment(r);break}case Q.EOF:{this.emitCurrentComment(r),this._emitEOFToken();break}case Q.NULL:{this._err(me.unexpectedNullCharacter),r.data+=_n;break}default:r.data+=String.fromCodePoint(e)}}_stateMarkupDeclarationOpen(e){this._consumeSequenceIfMatch(la.DASH_DASH,!0)?(this._createCommentToken(la.DASH_DASH.length+1),this.state=Y.COMMENT_START):this._consumeSequenceIfMatch(la.DOCTYPE,!1)?(this.currentLocation=this.getCurrentLocation(la.DOCTYPE.length+1),this.state=Y.DOCTYPE):this._consumeSequenceIfMatch(la.CDATA_START,!0)?this.inForeignNode?this.state=Y.CDATA_SECTION:(this._err(me.cdataInHtmlContent),this._createCommentToken(la.CDATA_START.length+1),this.currentToken.data="[CDATA[",this.state=Y.BOGUS_COMMENT):this._ensureHibernation()||(this._err(me.incorrectlyOpenedComment),this._createCommentToken(2),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e))}_stateCommentStart(e){switch(e){case Q.HYPHEN_MINUS:{this.state=Y.COMMENT_START_DASH;break}case Q.GREATER_THAN_SIGN:{this._err(me.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 Q.HYPHEN_MINUS:{this.state=Y.COMMENT_END;break}case Q.GREATER_THAN_SIGN:{this._err(me.abruptClosingOfEmptyComment),this.state=Y.DATA,this.emitCurrentComment(r);break}case Q.EOF:{this._err(me.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 Q.HYPHEN_MINUS:{this.state=Y.COMMENT_END_DASH;break}case Q.LESS_THAN_SIGN:{r.data+="<",this.state=Y.COMMENT_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),r.data+=_n;break}case Q.EOF:{this._err(me.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+=String.fromCodePoint(e)}}_stateCommentLessThanSign(e){let r=this.currentToken;switch(e){case Q.EXCLAMATION_MARK:{r.data+="!",this.state=Y.COMMENT_LESS_THAN_SIGN_BANG;break}case Q.LESS_THAN_SIGN:{r.data+="<";break}default:this.state=Y.COMMENT,this._stateComment(e)}}_stateCommentLessThanSignBang(e){e===Q.HYPHEN_MINUS?this.state=Y.COMMENT_LESS_THAN_SIGN_BANG_DASH:(this.state=Y.COMMENT,this._stateComment(e))}_stateCommentLessThanSignBangDash(e){e===Q.HYPHEN_MINUS?this.state=Y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:(this.state=Y.COMMENT_END_DASH,this._stateCommentEndDash(e))}_stateCommentLessThanSignBangDashDash(e){e!==Q.GREATER_THAN_SIGN&&e!==Q.EOF&&this._err(me.nestedComment),this.state=Y.COMMENT_END,this._stateCommentEnd(e)}_stateCommentEndDash(e){let r=this.currentToken;switch(e){case Q.HYPHEN_MINUS:{this.state=Y.COMMENT_END;break}case Q.EOF:{this._err(me.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 Q.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentComment(r);break}case Q.EXCLAMATION_MARK:{this.state=Y.COMMENT_END_BANG;break}case Q.HYPHEN_MINUS:{r.data+="-";break}case Q.EOF:{this._err(me.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 Q.HYPHEN_MINUS:{r.data+="--!",this.state=Y.COMMENT_END_DASH;break}case Q.GREATER_THAN_SIGN:{this._err(me.incorrectlyClosedComment),this.state=Y.DATA,this.emitCurrentComment(r);break}case Q.EOF:{this._err(me.eofInComment),this.emitCurrentComment(r),this._emitEOFToken();break}default:r.data+="--!",this.state=Y.COMMENT,this._stateComment(e)}}_stateDoctype(e){switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:{this.state=Y.BEFORE_DOCTYPE_NAME;break}case Q.GREATER_THAN_SIGN:{this.state=Y.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e);break}case Q.EOF:{this._err(me.eofInDoctype),this._createDoctypeToken(null);let r=this.currentToken;r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(me.missingWhitespaceBeforeDoctypeName),this.state=Y.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e)}}_stateBeforeDoctypeName(e){if(lv(e))this._createDoctypeToken(String.fromCharCode(fD(e))),this.state=Y.DOCTYPE_NAME;else switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:break;case Q.NULL:{this._err(me.unexpectedNullCharacter),this._createDoctypeToken(_n),this.state=Y.DOCTYPE_NAME;break}case Q.GREATER_THAN_SIGN:{this._err(me.missingDoctypeName),this._createDoctypeToken(null);let r=this.currentToken;r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case Q.EOF:{this._err(me.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 Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:{this.state=Y.AFTER_DOCTYPE_NAME;break}case Q.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentDoctype(r);break}case Q.NULL:{this._err(me.unexpectedNullCharacter),r.name+=_n;break}case Q.EOF:{this._err(me.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:r.name+=String.fromCodePoint(lv(e)?fD(e):e)}}_stateAfterDoctypeName(e){let r=this.currentToken;switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:break;case Q.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentDoctype(r);break}case Q.EOF:{this._err(me.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._consumeSequenceIfMatch(la.PUBLIC,!1)?this.state=Y.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._consumeSequenceIfMatch(la.SYSTEM,!1)?this.state=Y.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._ensureHibernation()||(this._err(me.invalidCharacterSequenceAfterDoctypeName),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e))}}_stateAfterDoctypePublicKeyword(e){let r=this.currentToken;switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:{this.state=Y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;break}case Q.QUOTATION_MARK:{this._err(me.missingWhitespaceAfterDoctypePublicKeyword),r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break}case Q.APOSTROPHE:{this._err(me.missingWhitespaceAfterDoctypePublicKeyword),r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break}case Q.GREATER_THAN_SIGN:{this._err(me.missingDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case Q.EOF:{this._err(me.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(me.missingQuoteBeforeDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypePublicIdentifier(e){let r=this.currentToken;switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:break;case Q.QUOTATION_MARK:{r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break}case Q.APOSTROPHE:{r.publicId="",this.state=Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break}case Q.GREATER_THAN_SIGN:{this._err(me.missingDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case Q.EOF:{this._err(me.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(me.missingQuoteBeforeDoctypePublicIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypePublicIdentifierDoubleQuoted(e){let r=this.currentToken;switch(e){case Q.QUOTATION_MARK:{this.state=Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),r.publicId+=_n;break}case Q.GREATER_THAN_SIGN:{this._err(me.abruptDoctypePublicIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case Q.EOF:{this._err(me.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 Q.APOSTROPHE:{this.state=Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),r.publicId+=_n;break}case Q.GREATER_THAN_SIGN:{this._err(me.abruptDoctypePublicIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case Q.EOF:{this._err(me.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 Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:{this.state=Y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;break}case Q.GREATER_THAN_SIGN:{this.state=Y.DATA,this.emitCurrentDoctype(r);break}case Q.QUOTATION_MARK:{this._err(me.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case Q.APOSTROPHE:{this._err(me.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case Q.EOF:{this._err(me.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(me.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBetweenDoctypePublicAndSystemIdentifiers(e){let r=this.currentToken;switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:break;case Q.GREATER_THAN_SIGN:{this.emitCurrentDoctype(r),this.state=Y.DATA;break}case Q.QUOTATION_MARK:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case Q.APOSTROPHE:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case Q.EOF:{this._err(me.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(me.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateAfterDoctypeSystemKeyword(e){let r=this.currentToken;switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:{this.state=Y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;break}case Q.QUOTATION_MARK:{this._err(me.missingWhitespaceAfterDoctypeSystemKeyword),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case Q.APOSTROPHE:{this._err(me.missingWhitespaceAfterDoctypeSystemKeyword),r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case Q.GREATER_THAN_SIGN:{this._err(me.missingDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case Q.EOF:{this._err(me.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(me.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypeSystemIdentifier(e){let r=this.currentToken;switch(e){case Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:break;case Q.QUOTATION_MARK:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case Q.APOSTROPHE:{r.systemId="",this.state=Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case Q.GREATER_THAN_SIGN:{this._err(me.missingDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.DATA,this.emitCurrentDoctype(r);break}case Q.EOF:{this._err(me.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(me.missingQuoteBeforeDoctypeSystemIdentifier),r.forceQuirks=!0,this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypeSystemIdentifierDoubleQuoted(e){let r=this.currentToken;switch(e){case Q.QUOTATION_MARK:{this.state=Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),r.systemId+=_n;break}case Q.GREATER_THAN_SIGN:{this._err(me.abruptDoctypeSystemIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case Q.EOF:{this._err(me.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 Q.APOSTROPHE:{this.state=Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),r.systemId+=_n;break}case Q.GREATER_THAN_SIGN:{this._err(me.abruptDoctypeSystemIdentifier),r.forceQuirks=!0,this.emitCurrentDoctype(r),this.state=Y.DATA;break}case Q.EOF:{this._err(me.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 Q.SPACE:case Q.LINE_FEED:case Q.TABULATION:case Q.FORM_FEED:break;case Q.GREATER_THAN_SIGN:{this.emitCurrentDoctype(r),this.state=Y.DATA;break}case Q.EOF:{this._err(me.eofInDoctype),r.forceQuirks=!0,this.emitCurrentDoctype(r),this._emitEOFToken();break}default:this._err(me.unexpectedCharacterAfterDoctypeSystemIdentifier),this.state=Y.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBogusDoctype(e){let r=this.currentToken;switch(e){case Q.GREATER_THAN_SIGN:{this.emitCurrentDoctype(r),this.state=Y.DATA;break}case Q.NULL:{this._err(me.unexpectedNullCharacter);break}case Q.EOF:{this.emitCurrentDoctype(r),this._emitEOFToken();break}default:}}_stateCdataSection(e){switch(e){case Q.RIGHT_SQUARE_BRACKET:{this.state=Y.CDATA_SECTION_BRACKET;break}case Q.EOF:{this._err(me.eofInCdata),this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateCdataSectionBracket(e){e===Q.RIGHT_SQUARE_BRACKET?this.state=Y.CDATA_SECTION_END:(this._emitChars("]"),this.state=Y.CDATA_SECTION,this._stateCdataSection(e))}_stateCdataSectionEnd(e){switch(e){case Q.GREATER_THAN_SIGN:{this.state=Y.DATA;break}case Q.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(Q.AMPERSAND),this.state=!this._isCharacterReferenceInAttribute()&&nke(this.preprocessor.peek(1))?Y.AMBIGUOUS_AMPERSAND:this.returnState):this.state=this.returnState}_stateAmbiguousAmpersand(e){nke(e)?this._flushCodePointConsumedAsCharacterReference(e):(e===Q.SEMICOLON&&this._err(me.unknownNamedCharacterReference),this.state=this.returnState,this._callState(e))}};var uke=new Set([C.DD,C.DT,C.LI,C.OPTGROUP,C.OPTION,C.P,C.RB,C.RP,C.RT,C.RTC]),ake=new Set([...uke,C.CAPTION,C.COLGROUP,C.TBODY,C.TD,C.TFOOT,C.TH,C.THEAD,C.TR]),pD=new Set([C.APPLET,C.CAPTION,C.HTML,C.MARQUEE,C.OBJECT,C.TABLE,C.TD,C.TEMPLATE,C.TH]),LVt=new Set([...pD,C.OL,C.UL]),MVt=new Set([...pD,C.BUTTON]),oke=new Set([C.ANNOTATION_XML,C.MI,C.MN,C.MO,C.MS,C.MTEXT]),cke=new Set([C.DESC,C.FOREIGN_OBJECT,C.TITLE]),WVt=new Set([C.TR,C.TEMPLATE,C.HTML]),$Vt=new Set([C.TBODY,C.TFOOT,C.THEAD,C.TEMPLATE,C.HTML]),FVt=new Set([C.TABLE,C.TEMPLATE,C.HTML]),UVt=new Set([C.TD,C.TH]),mD=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(kx,Ee.HTML)}popUntilTableCellPopped(){this.popUntilPopped(UVt,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(FVt,Ee.HTML)}clearBackToTableBodyContext(){this.clearBackTo($Vt,Ee.HTML)}clearBackToTableRowContext(){this.clearBackTo(WVt,Ee.HTML)}remove(e){let r=this._indexOf(e);r>=0&&(r===this.stackTop?this.pop():(this.items.splice(r,1),this.tagIDs.splice(r,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===C.BODY?this.items[1]:null}contains(e){return this._indexOf(e)>-1}getCommonAncestor(e){let r=this._indexOf(e)-1;return r>=0?this.items[r]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===C.HTML}hasInDynamicScope(e,r){for(let n=this.stackTop;n>=0;n--){let s=this.tagIDs[n];switch(this.treeAdapter.getNamespaceURI(this.items[n])){case Ee.HTML:{if(s===e)return!0;if(r.has(s))return!1;break}case Ee.SVG:{if(cke.has(s))return!1;break}case Ee.MATHML:{if(oke.has(s))return!1;break}}}return!0}hasInScope(e){return this.hasInDynamicScope(e,pD)}hasInListItemScope(e){return this.hasInDynamicScope(e,LVt)}hasInButtonScope(e){return this.hasInDynamicScope(e,MVt)}hasNumberedHeaderInScope(){for(let e=this.stackTop;e>=0;e--){let r=this.tagIDs[e];switch(this.treeAdapter.getNamespaceURI(this.items[e])){case Ee.HTML:{if(kx.has(r))return!0;if(pD.has(r))return!1;break}case Ee.SVG:{if(cke.has(r))return!1;break}case Ee.MATHML:{if(oke.has(r))return!1;break}}}return!0}hasInTableScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case C.TABLE:case C.HTML:return!1}return!0}hasTableBodyContextInTableScope(){for(let e=this.stackTop;e>=0;e--)if(this.treeAdapter.getNamespaceURI(this.items[e])===Ee.HTML)switch(this.tagIDs[e]){case C.TBODY:case C.THEAD:case C.TFOOT:return!0;case C.TABLE:case C.HTML:return!1}return!0}hasInSelectScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case C.OPTION:case C.OPTGROUP:break;default:return!1}return!0}generateImpliedEndTags(){for(;this.currentTagId!==void 0&&uke.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;this.currentTagId!==void 0&&ake.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(e){for(;this.currentTagId!==void 0&&this.currentTagId!==e&&ake.has(this.currentTagId);)this.pop()}};var au;(function(t){t[t.Marker=0]="Marker",t[t.Element=1]="Element"})(au||(au={}));var lke={type:au.Marker},hD=class{constructor(e){this.treeAdapter=e,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(e,r){let n=[],s=r.length,i=this.treeAdapter.getTagName(e),a=this.treeAdapter.getNamespaceURI(e);for(let o=0;o<this.entries.length;o++){let c=this.entries[o];if(c.type===au.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(lke)}pushElement(e,r){this._ensureNoahArkCondition(e),this.entries.unshift({type:au.Element,element:e,token:r})}insertElementAfterBookmark(e,r){let n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:au.Element,element:e,token:r})}removeEntry(e){let r=this.entries.indexOf(e);r!==-1&&this.entries.splice(r,1)}clearToLastMarker(){let e=this.entries.indexOf(lke);e===-1?this.entries.length=0:this.entries.splice(0,e+1)}getElementEntryInScopeWithTagName(e){let r=this.entries.find(n=>n.type===au.Marker||this.treeAdapter.getTagName(n.element)===e);return r&&r.type===au.Element?r:null}getElementEntry(e){return this.entries.find(r=>r.type===au.Element&&r.element===e)}};var gc={createDocument(){return{nodeName:"#document",mode:Ui.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:"#document-fragment",childNodes:[]}},createElement(t,e,r){return{nodeName:t,tagName:t,attrs:r,namespaceURI:e,childNodes:[],parentNode:null}},createCommentNode(t){return{nodeName:"#comment",data:t,parentNode:null}},createTextNode(t){return{nodeName:"#text",value:t,parentNode:null}},appendChild(t,e){t.childNodes.push(e),e.parentNode=t},insertBefore(t,e,r){let n=t.childNodes.indexOf(r);t.childNodes.splice(n,0,e),e.parentNode=t},setTemplateContent(t,e){t.content=e},getTemplateContent(t){return t.content},setDocumentType(t,e,r,n){let s=t.childNodes.find(i=>i.nodeName==="#documentType");if(s)s.name=e,s.publicId=r,s.systemId=n;else{let i={nodeName:"#documentType",name:e,publicId:r,systemId:n,parentNode:null};gc.appendChild(t,i)}},setDocumentMode(t,e){t.mode=e},getDocumentMode(t){return t.mode},detachNode(t){if(t.parentNode){let e=t.parentNode.childNodes.indexOf(t);t.parentNode.childNodes.splice(e,1),t.parentNode=null}},insertText(t,e){if(t.childNodes.length>0){let r=t.childNodes[t.childNodes.length-1];if(gc.isTextNode(r)){r.value+=e;return}}gc.appendChild(t,gc.createTextNode(e))},insertTextBefore(t,e,r){let n=t.childNodes[t.childNodes.indexOf(r)-1];n&&gc.isTextNode(n)?n.value+=e:gc.insertBefore(t,gc.createTextNode(e),r)},adoptAttributes(t,e){let r=new Set(t.attrs.map(n=>n.name));for(let n=0;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 fke="html",qVt="about:legacy-compat",jVt="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd",pke=["+//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//"],HVt=[...pke,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"],QVt=new Set(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"]),mke=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],GVt=[...mke,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"];function dke(t,e){return e.some(r=>t.startsWith(r))}function hke(t){return t.name===fke&&t.publicId===null&&(t.systemId===null||t.systemId===qVt)}function gke(t){if(t.name!==fke)return Ui.QUIRKS;let{systemId:e}=t;if(e&&e.toLowerCase()===jVt)return Ui.QUIRKS;let{publicId:r}=t;if(r!==null){if(r=r.toLowerCase(),QVt.has(r))return Ui.QUIRKS;let n=e===null?HVt:pke;if(dke(r,n))return Ui.QUIRKS;if(n=e===null?mke:GVt,dke(r,n))return Ui.LIMITED_QUIRKS}return Ui.NO_QUIRKS}var Ake={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},VVt="definitionurl",zVt="definitionURL",YVt=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(t=>[t.toLowerCase(),t])),JVt=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:Ee.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:Ee.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:Ee.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:Ee.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:Ee.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:Ee.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:Ee.XLINK}],["xml:lang",{prefix:"xml",name:"lang",namespace:Ee.XML}],["xml:space",{prefix:"xml",name:"space",namespace:Ee.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:Ee.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:Ee.XMLNS}]]),XVt=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(t=>[t.toLowerCase(),t])),ZVt=new Set([C.B,C.BIG,C.BLOCKQUOTE,C.BODY,C.BR,C.CENTER,C.CODE,C.DD,C.DIV,C.DL,C.DT,C.EM,C.EMBED,C.H1,C.H2,C.H3,C.H4,C.H5,C.H6,C.HEAD,C.HR,C.I,C.IMG,C.LI,C.LISTING,C.MENU,C.META,C.NOBR,C.OL,C.P,C.PRE,C.RUBY,C.S,C.SMALL,C.SPAN,C.STRONG,C.STRIKE,C.SUB,C.SUP,C.TABLE,C.TT,C.U,C.UL,C.VAR]);function yke(t){let e=t.tagID;return e===C.FONT&&t.attrs.some(({name:n})=>n===pl.COLOR||n===pl.SIZE||n===pl.FACE)||ZVt.has(e)}function xQ(t){for(let e=0;e<t.attrs.length;e++)if(t.attrs[e].name===VVt){t.attrs[e].name=zVt;break}}function bQ(t){for(let e=0;e<t.attrs.length;e++){let r=YVt.get(t.attrs[e].name);r!=null&&(t.attrs[e].name=r)}}function gD(t){for(let e=0;e<t.attrs.length;e++){let r=JVt.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 xke(t){let e=XVt.get(t.tagName);e!=null&&(t.tagName=e,t.tagID=c0(t.tagName))}function ezt(t,e){return e===Ee.MATHML&&(t===C.MI||t===C.MO||t===C.MN||t===C.MS||t===C.MTEXT)}function tzt(t,e,r){if(e===Ee.MATHML&&t===C.ANNOTATION_XML){for(let n=0;n<r.length;n++)if(r[n].name===pl.ENCODING){let s=r[n].value.toLowerCase();return s===Ake.TEXT_HTML||s===Ake.APPLICATION_XML}}return e===Ee.SVG&&(t===C.FOREIGN_OBJECT||t===C.DESC||t===C.TITLE)}function bke(t,e,r,n){return(!n||n===Ee.HTML)&&tzt(t,e,r)||(!n||n===Ee.MATHML)&&ezt(t,e)}var rzt="hidden",nzt=8,szt=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 izt={startLine:-1,startCol:-1,startOffset:-1,endLine:-1,endCol:-1,endOffset:-1},Ike=new Set([C.TABLE,C.TBODY,C.TFOOT,C.THEAD,C.TR]),_ke={scriptingEnabled:!0,sourceCodeLocationInfo:!1,treeAdapter:gc,onParseError:null},Dx=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={..._ke,...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 dv(this.options,this),this.activeFormattingElements=new hD(this.treeAdapter),this.fragmentContextID=n?c0(this.treeAdapter.getTagName(n)):C.UNKNOWN,this._setContextModes(n??this.document,this.fragmentContextID),this.openElements=new mD(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={..._ke,...r};e??(e=n.treeAdapter.createElement(de.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:izt,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=qi.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let e=this.fragmentContext;for(;e;){if(this.treeAdapter.getTagName(e)===de.FORM){this.formElement=e;break}e=this.treeAdapter.getParentNode(e)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==Ee.HTML))switch(this.fragmentContextID){case C.TITLE:case C.TEXTAREA:{this.tokenizer.state=qi.RCDATA;break}case C.STYLE:case C.XMP:case C.IFRAME:case C.NOEMBED:case C.NOFRAMES:case C.NOSCRIPT:{this.tokenizer.state=qi.RAWTEXT;break}case C.SCRIPT:{this.tokenizer.state=qi.SCRIPT_DATA;break}case C.PLAINTEXT:{this.tokenizer.state=qi.PLAINTEXT;break}default:}}_setDocumentType(e){let r=e.name||"",n=e.publicId||"",s=e.systemId||"";if(this.treeAdapter.setDocumentType(this.document,r,n,s),e.location){let a=this.treeAdapter.getChildNodes(this.document).find(o=>this.treeAdapter.isDocumentTypeNode(o));a&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}}_attachElementToTree(e,r){if(this.options.sourceCodeLocationInfo){let n=r&&{...r,startTag:r};this.treeAdapter.setNodeSourceCodeLocation(e,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(e);else{let n=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(n??this.document,e)}}_appendElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location)}_insertElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location),this.openElements.push(n,e.tagID)}_insertFakeElement(e,r){let n=this.treeAdapter.createElement(e,Ee.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,r)}_insertTemplate(e){let r=this.treeAdapter.createElement(e.tagName,Ee.HTML,e.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(r,n),this._attachElementToTree(r,e.location),this.openElements.push(r,e.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){let e=this.treeAdapter.createElement(de.HTML,Ee.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(e,null),this.treeAdapter.appendChild(this.openElements.current,e),this.openElements.push(e,C.HTML)}_appendCommentNode(e,r){let n=this.treeAdapter.createCommentNode(e.data);this.treeAdapter.appendChild(r,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,e.location)}_insertCharacters(e){let r,n;if(this._shouldFosterParentOnInsertion()?({parent:r,beforeElement:n}=this._findFosterParentingLocation(),n?this.treeAdapter.insertTextBefore(r,e.chars,n):this.treeAdapter.insertText(r,e.chars)):(r=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(r,e.chars)),!e.location)return;let s=this.treeAdapter.getChildNodes(r),i=n?s.lastIndexOf(n):s.length,a=s[i-1];if(this.treeAdapter.getNodeSourceCodeLocation(a)){let{endLine:c,endCol:u,endOffset:l}=e.location;this.treeAdapter.updateNodeSourceCodeLocation(a,{endLine:c,endCol:u,endOffset:l})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}_adoptNodes(e,r){for(let n=this.treeAdapter.getFirstChild(e);n;n=this.treeAdapter.getFirstChild(e))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(r,n)}_setEndLocation(e,r){if(this.treeAdapter.getNodeSourceCodeLocation(e)&&r.location){let n=r.location,s=this.treeAdapter.getTagName(e),i=r.type===xr.END_TAG&&s===r.tagName?{endTag:{...n},endLine:n.endLine,endCol:n.endCol,endOffset:n.endOffset}:{endLine:n.startLine,endCol:n.startCol,endOffset:n.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(e,i)}}shouldProcessStartTagTokenInForeignContent(e){if(!this.currentNotInHTML)return!1;let r,n;return this.openElements.stackTop===0&&this.fragmentContext?(r=this.fragmentContext,n=this.fragmentContextID):{current:r,currentTagId:n}=this.openElements,e.tagID===C.SVG&&this.treeAdapter.getTagName(r)===de.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(r)===Ee.MATHML?!1:this.tokenizer.inForeignNode||(e.tagID===C.MGLYPH||e.tagID===C.MALIGNMARK)&&n!==void 0&&!this._isIntegrationPoint(n,r,Ee.HTML)}_processToken(e){switch(e.type){case xr.CHARACTER:{this.onCharacter(e);break}case xr.NULL_CHARACTER:{this.onNullCharacter(e);break}case xr.COMMENT:{this.onComment(e);break}case xr.DOCTYPE:{this.onDoctype(e);break}case xr.START_TAG:{this._processStartTag(e);break}case xr.END_TAG:{this.onEndTag(e);break}case xr.EOF:{this.onEof(e);break}case xr.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(e);break}}}_isIntegrationPoint(e,r,n){let s=this.treeAdapter.getNamespaceURI(r),i=this.treeAdapter.getAttrList(r);return bke(e,s,i,n)}_reconstructActiveFormattingElements(){let e=this.activeFormattingElements.entries.length;if(e){let r=this.activeFormattingElements.entries.findIndex(s=>s.type===au.Marker||this.openElements.contains(s.element)),n=r===-1?e-1:r-1;for(let s=n;s>=0;s--){let i=this.activeFormattingElements.entries[s];this._insertElement(i.token,this.treeAdapter.getNamespaceURI(i.element)),i.element=this.openElements.current}}}_closeTableCell(){this.openElements.generateImpliedEndTags(),this.openElements.popUntilTableCellPopped(),this.activeFormattingElements.clearToLastMarker(),this.insertionMode=te.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(C.P),this.openElements.popUntilTagNamePopped(C.P)}_resetInsertionMode(){for(let e=this.openElements.stackTop;e>=0;e--)switch(e===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[e]){case C.TR:{this.insertionMode=te.IN_ROW;return}case C.TBODY:case C.THEAD:case C.TFOOT:{this.insertionMode=te.IN_TABLE_BODY;return}case C.CAPTION:{this.insertionMode=te.IN_CAPTION;return}case C.COLGROUP:{this.insertionMode=te.IN_COLUMN_GROUP;return}case C.TABLE:{this.insertionMode=te.IN_TABLE;return}case C.BODY:{this.insertionMode=te.IN_BODY;return}case C.FRAMESET:{this.insertionMode=te.IN_FRAMESET;return}case C.SELECT:{this._resetInsertionModeForSelect(e);return}case C.TEMPLATE:{this.insertionMode=this.tmplInsertionModeStack[0];return}case C.HTML:{this.insertionMode=this.headElement?te.AFTER_HEAD:te.BEFORE_HEAD;return}case C.TD:case C.TH:{if(e>0){this.insertionMode=te.IN_CELL;return}break}case C.HEAD:{if(e>0){this.insertionMode=te.IN_HEAD;return}break}}this.insertionMode=te.IN_BODY}_resetInsertionModeForSelect(e){if(e>0)for(let r=e-1;r>0;r--){let n=this.openElements.tagIDs[r];if(n===C.TEMPLATE)break;if(n===C.TABLE){this.insertionMode=te.IN_SELECT_IN_TABLE;return}}this.insertionMode=te.IN_SELECT}_isElementCausesFosterParenting(e){return Ike.has(e)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this.openElements.currentTagId!==void 0&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let e=this.openElements.stackTop;e>=0;e--){let r=this.openElements.items[e];switch(this.openElements.tagIDs[e]){case C.TEMPLATE:{if(this.treeAdapter.getNamespaceURI(r)===Ee.HTML)return{parent:this.treeAdapter.getTemplateContent(r),beforeElement:null};break}case C.TABLE:{let n=this.treeAdapter.getParentNode(r);return n?{parent:n,beforeElement:r}:{parent:this.openElements.items[e-1],beforeElement:null}}default:}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(e){let r=this._findFosterParentingLocation();r.beforeElement?this.treeAdapter.insertBefore(r.parent,e,r.beforeElement):this.treeAdapter.appendChild(r.parent,e)}_isSpecialElement(e,r){let n=this.treeAdapter.getNamespaceURI(e);return AQ[n].has(r)}onCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){BYt(this,e);return}switch(this.insertionMode){case te.INITIAL:{fv(this,e);break}case te.BEFORE_HTML:{mv(this,e);break}case te.BEFORE_HEAD:{hv(this,e);break}case te.IN_HEAD:{gv(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Av(this,e);break}case te.AFTER_HEAD:{yv(this,e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:{Tke(this,e);break}case te.TEXT:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{EQ(this,e);break}case te.IN_TABLE_TEXT:{kke(this,e);break}case te.IN_COLUMN_GROUP:{yD(this,e);break}case te.AFTER_BODY:{xD(this,e);break}case te.AFTER_AFTER_BODY:{AD(this,e);break}default:}}onNullCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){DYt(this,e);return}switch(this.insertionMode){case te.INITIAL:{fv(this,e);break}case te.BEFORE_HTML:{mv(this,e);break}case te.BEFORE_HEAD:{hv(this,e);break}case te.IN_HEAD:{gv(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Av(this,e);break}case te.AFTER_HEAD:{yv(this,e);break}case te.TEXT:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{EQ(this,e);break}case te.IN_COLUMN_GROUP:{yD(this,e);break}case te.AFTER_BODY:{xD(this,e);break}case te.AFTER_AFTER_BODY:{AD(this,e);break}default:}}onComment(e){if(this.skipNextNewLine=!1,this.currentNotInHTML){_Q(this,e);return}switch(this.insertionMode){case te.INITIAL:case te.BEFORE_HTML:case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_TEMPLATE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{_Q(this,e);break}case te.IN_TABLE_TEXT:{pv(this,e);break}case te.AFTER_BODY:{fzt(this,e);break}case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{pzt(this,e);break}default:}}onDoctype(e){switch(this.skipNextNewLine=!1,this.insertionMode){case te.INITIAL:{mzt(this,e);break}case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:{this._err(e,me.misplacedDoctype);break}case te.IN_TABLE_TEXT:{pv(this,e);break}default:}}onStartTag(e){this.skipNextNewLine=!1,this.currentToken=e,this._processStartTag(e),e.selfClosing&&!e.ackSelfClosing&&this._err(e,me.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(e){this.shouldProcessStartTagTokenInForeignContent(e)?LYt(this,e):this._startTagOutsideForeignContent(e)}_startTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{fv(this,e);break}case te.BEFORE_HTML:{hzt(this,e);break}case te.BEFORE_HEAD:{Azt(this,e);break}case te.IN_HEAD:{ou(this,e);break}case te.IN_HEAD_NO_SCRIPT:{bzt(this,e);break}case te.AFTER_HEAD:{_zt(this,e);break}case te.IN_BODY:{ji(this,e);break}case te.IN_TABLE:{Bx(this,e);break}case te.IN_TABLE_TEXT:{pv(this,e);break}case te.IN_CAPTION:{yYt(this,e);break}case te.IN_COLUMN_GROUP:{CQ(this,e);break}case te.IN_TABLE_BODY:{_D(this,e);break}case te.IN_ROW:{SD(this,e);break}case te.IN_CELL:{EYt(this,e);break}case te.IN_SELECT:{Lke(this,e);break}case te.IN_SELECT_IN_TABLE:{SYt(this,e);break}case te.IN_TEMPLATE:{IYt(this,e);break}case te.AFTER_BODY:{TYt(this,e);break}case te.IN_FRAMESET:{wYt(this,e);break}case te.AFTER_FRAMESET:{NYt(this,e);break}case te.AFTER_AFTER_BODY:{PYt(this,e);break}case te.AFTER_AFTER_FRAMESET:{kYt(this,e);break}default:}}onEndTag(e){this.skipNextNewLine=!1,this.currentToken=e,this.currentNotInHTML?MYt(this,e):this._endTagOutsideForeignContent(e)}_endTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{fv(this,e);break}case te.BEFORE_HTML:{gzt(this,e);break}case te.BEFORE_HEAD:{yzt(this,e);break}case te.IN_HEAD:{xzt(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Ezt(this,e);break}case te.AFTER_HEAD:{Szt(this,e);break}case te.IN_BODY:{ED(this,e);break}case te.TEXT:{cYt(this,e);break}case te.IN_TABLE:{xv(this,e);break}case te.IN_TABLE_TEXT:{pv(this,e);break}case te.IN_CAPTION:{xYt(this,e);break}case te.IN_COLUMN_GROUP:{bYt(this,e);break}case te.IN_TABLE_BODY:{SQ(this,e);break}case te.IN_ROW:{Bke(this,e);break}case te.IN_CELL:{_Yt(this,e);break}case te.IN_SELECT:{Mke(this,e);break}case te.IN_SELECT_IN_TABLE:{vYt(this,e);break}case te.IN_TEMPLATE:{CYt(this,e);break}case te.AFTER_BODY:{$ke(this,e);break}case te.IN_FRAMESET:{RYt(this,e);break}case te.AFTER_FRAMESET:{OYt(this,e);break}case te.AFTER_AFTER_BODY:{AD(this,e);break}default:}}onEof(e){switch(this.insertionMode){case te.INITIAL:{fv(this,e);break}case te.BEFORE_HTML:{mv(this,e);break}case te.BEFORE_HEAD:{hv(this,e);break}case te.IN_HEAD:{gv(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Av(this,e);break}case te.AFTER_HEAD:{yv(this,e);break}case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{Oke(this,e);break}case te.TEXT:{uYt(this,e);break}case te.IN_TABLE_TEXT:{pv(this,e);break}case te.IN_TEMPLATE:{Wke(this,e);break}case te.AFTER_BODY:case te.IN_FRAMESET:case te.AFTER_FRAMESET:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{IQ(this,e);break}default:}}onWhitespaceCharacter(e){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,e.chars.charCodeAt(0)===Q.LINE_FEED)){if(e.chars.length===1)return;e.chars=e.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(e);return}switch(this.insertionMode){case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.TEXT:case te.IN_COLUMN_GROUP:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{this._insertCharacters(e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:case te.AFTER_BODY:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{Cke(this,e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{EQ(this,e);break}case te.IN_TABLE_TEXT:{Pke(this,e);break}default:}}};function azt(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(e.tagName);return r?t.openElements.contains(r.element)?t.openElements.hasInScope(e.tagID)||(r=null):(t.activeFormattingElements.removeEntry(r),r=null):Nke(t,e),r}function ozt(t,e){let r=null,n=t.openElements.stackTop;for(;n>=0;n--){let s=t.openElements.items[n];if(s===e.element)break;t._isSpecialElement(s,t.openElements.tagIDs[n])&&(r=s)}return r||(t.openElements.shortenToLength(Math.max(n,0)),t.activeFormattingElements.removeEntry(e)),r}function czt(t,e,r){let n=e,s=t.openElements.getCommonAncestor(e);for(let i=0,a=s;a!==r;i++,a=s){s=t.openElements.getCommonAncestor(a);let o=t.activeFormattingElements.getElementEntry(a),c=o&&i>=szt;!o||c?(c&&t.activeFormattingElements.removeEntry(o),t.openElements.remove(a)):(a=uzt(t,o),n===e&&(t.activeFormattingElements.bookmark=o),t.treeAdapter.detachNode(n),t.treeAdapter.appendChild(a,n),n=a)}return n}function uzt(t,e){let r=t.treeAdapter.getNamespaceURI(e.element),n=t.treeAdapter.createElement(e.token.tagName,r,e.token.attrs);return t.openElements.replace(e.element,n),e.element=n,n}function lzt(t,e,r){let n=t.treeAdapter.getTagName(e),s=c0(n);if(t._isElementCausesFosterParenting(s))t._fosterParentElement(r);else{let i=t.treeAdapter.getNamespaceURI(e);s===C.TEMPLATE&&i===Ee.HTML&&(e=t.treeAdapter.getTemplateContent(e)),t.treeAdapter.appendChild(e,r)}}function dzt(t,e,r){let n=t.treeAdapter.getNamespaceURI(r.element),{token:s}=r,i=t.treeAdapter.createElement(s.tagName,n,s.attrs);t._adoptNodes(e,i),t.treeAdapter.appendChild(e,i),t.activeFormattingElements.insertElementAfterBookmark(i,s),t.activeFormattingElements.removeEntry(r),t.openElements.remove(r.element),t.openElements.insertAfter(e,i,s.tagID)}function vQ(t,e){for(let r=0;r<nzt;r++){let n=azt(t,e);if(!n)break;let s=ozt(t,n);if(!s)break;t.activeFormattingElements.bookmark=n;let i=czt(t,s,n.element),a=t.openElements.getCommonAncestor(n.element);t.treeAdapter.detachNode(i),a&&lzt(t,a,i),dzt(t,s,n)}}function _Q(t,e){t._appendCommentNode(e,t.openElements.currentTmplContentOrNode)}function fzt(t,e){t._appendCommentNode(e,t.openElements.items[0])}function pzt(t,e){t._appendCommentNode(e,t.document)}function IQ(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 mzt(t,e){t._setDocumentType(e);let r=e.forceQuirks?Ui.QUIRKS:gke(e);hke(e)||t._err(e,me.nonConformingDoctype),t.treeAdapter.setDocumentMode(t.document,r),t.insertionMode=te.BEFORE_HTML}function fv(t,e){t._err(e,me.missingDoctype,!0),t.treeAdapter.setDocumentMode(t.document,Ui.QUIRKS),t.insertionMode=te.BEFORE_HTML,t._processToken(e)}function hzt(t,e){e.tagID===C.HTML?(t._insertElement(e,Ee.HTML),t.insertionMode=te.BEFORE_HEAD):mv(t,e)}function gzt(t,e){let r=e.tagID;(r===C.HTML||r===C.HEAD||r===C.BODY||r===C.BR)&&mv(t,e)}function mv(t,e){t._insertFakeRootElement(),t.insertionMode=te.BEFORE_HEAD,t._processToken(e)}function Azt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.HEAD:{t._insertElement(e,Ee.HTML),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD;break}default:hv(t,e)}}function yzt(t,e){let r=e.tagID;r===C.HEAD||r===C.BODY||r===C.HTML||r===C.BR?hv(t,e):t._err(e,me.endTagWithoutMatchingOpenElement)}function hv(t,e){t._insertFakeElement(de.HEAD,C.HEAD),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD,t._processToken(e)}function ou(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case C.TITLE:{t._switchToTextParsing(e,qi.RCDATA);break}case C.NOSCRIPT:{t.options.scriptingEnabled?t._switchToTextParsing(e,qi.RAWTEXT):(t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_HEAD_NO_SCRIPT);break}case C.NOFRAMES:case C.STYLE:{t._switchToTextParsing(e,qi.RAWTEXT);break}case C.SCRIPT:{t._switchToTextParsing(e,qi.SCRIPT_DATA);break}case C.TEMPLATE:{t._insertTemplate(e),t.activeFormattingElements.insertMarker(),t.framesetOk=!1,t.insertionMode=te.IN_TEMPLATE,t.tmplInsertionModeStack.unshift(te.IN_TEMPLATE);break}case C.HEAD:{t._err(e,me.misplacedStartTagForHeadElement);break}default:gv(t,e)}}function xzt(t,e){switch(e.tagID){case C.HEAD:{t.openElements.pop(),t.insertionMode=te.AFTER_HEAD;break}case C.BODY:case C.BR:case C.HTML:{gv(t,e);break}case C.TEMPLATE:{Ch(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function Ch(t,e){t.openElements.tmplCount>0?(t.openElements.generateImpliedEndTagsThoroughly(),t.openElements.currentTagId!==C.TEMPLATE&&t._err(e,me.closingOfElementWithOpenChildElements),t.openElements.popUntilTagNamePopped(C.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode()):t._err(e,me.endTagWithoutMatchingOpenElement)}function gv(t,e){t.openElements.pop(),t.insertionMode=te.AFTER_HEAD,t._processToken(e)}function bzt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.BASEFONT:case C.BGSOUND:case C.HEAD:case C.LINK:case C.META:case C.NOFRAMES:case C.STYLE:{ou(t,e);break}case C.NOSCRIPT:{t._err(e,me.nestedNoscriptInHead);break}default:Av(t,e)}}function Ezt(t,e){switch(e.tagID){case C.NOSCRIPT:{t.openElements.pop(),t.insertionMode=te.IN_HEAD;break}case C.BR:{Av(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function Av(t,e){let r=e.type===xr.EOF?me.openElementsLeftAfterEof:me.disallowedContentInNoscriptInHead;t._err(e,r),t.openElements.pop(),t.insertionMode=te.IN_HEAD,t._processToken(e)}function _zt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.BODY:{t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_BODY;break}case C.FRAMESET:{t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET;break}case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:case C.NOFRAMES:case C.SCRIPT:case C.STYLE:case C.TEMPLATE:case C.TITLE:{t._err(e,me.abandonedHeadElementChild),t.openElements.push(t.headElement,C.HEAD),ou(t,e),t.openElements.remove(t.headElement);break}case C.HEAD:{t._err(e,me.misplacedStartTagForHeadElement);break}default:yv(t,e)}}function Szt(t,e){switch(e.tagID){case C.BODY:case C.HTML:case C.BR:{yv(t,e);break}case C.TEMPLATE:{Ch(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function yv(t,e){t._insertFakeElement(de.BODY,C.BODY),t.insertionMode=te.IN_BODY,bD(t,e)}function bD(t,e){switch(e.type){case xr.CHARACTER:{Tke(t,e);break}case xr.WHITESPACE_CHARACTER:{Cke(t,e);break}case xr.COMMENT:{_Q(t,e);break}case xr.START_TAG:{ji(t,e);break}case xr.END_TAG:{ED(t,e);break}case xr.EOF:{Oke(t,e);break}default:}}function Cke(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e)}function Tke(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e),t.framesetOk=!1}function vzt(t,e){t.openElements.tmplCount===0&&t.treeAdapter.adoptAttributes(t.openElements.items[0],e.attrs)}function Izt(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t.openElements.tmplCount===0&&(t.framesetOk=!1,t.treeAdapter.adoptAttributes(r,e.attrs))}function Czt(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();t.framesetOk&&r&&(t.treeAdapter.detachNode(r),t.openElements.popAllUpToHtmlElement(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET)}function Tzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function wzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t.openElements.currentTagId!==void 0&&kx.has(t.openElements.currentTagId)&&t.openElements.pop(),t._insertElement(e,Ee.HTML)}function Rzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.framesetOk=!1}function Nzt(t,e){let r=t.openElements.tmplCount>0;(!t.formElement||r)&&(t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),r||(t.formElement=t.openElements.current))}function Ozt(t,e){t.framesetOk=!1;let r=e.tagID;for(let n=t.openElements.stackTop;n>=0;n--){let s=t.openElements.tagIDs[n];if(r===C.LI&&s===C.LI||(r===C.DD||r===C.DT)&&(s===C.DD||s===C.DT)){t.openElements.generateImpliedEndTagsWithExclusion(s),t.openElements.popUntilTagNamePopped(s);break}if(s!==C.ADDRESS&&s!==C.DIV&&s!==C.P&&t._isSpecialElement(t.openElements.items[n],s))break}t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function Pzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.tokenizer.state=qi.PLAINTEXT}function kzt(t,e){t.openElements.hasInScope(C.BUTTON)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(C.BUTTON)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1}function Dzt(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(de.A);r&&(vQ(t,e),t.openElements.remove(r.element),t.activeFormattingElements.removeEntry(r)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function Bzt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function Lzt(t,e){t._reconstructActiveFormattingElements(),t.openElements.hasInScope(C.NOBR)&&(vQ(t,e),t._reconstructActiveFormattingElements()),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function Mzt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.insertMarker(),t.framesetOk=!1}function Wzt(t,e){t.treeAdapter.getDocumentMode(t.document)!==Ui.QUIRKS&&t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_TABLE}function wke(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function Rke(t){let e=cD(t,pl.TYPE);return e!=null&&e.toLowerCase()===rzt}function $zt(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),Rke(e)||(t.framesetOk=!1),e.ackSelfClosing=!0}function Fzt(t,e){t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0}function Uzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function qzt(t,e){e.tagName=de.IMG,e.tagID=C.IMG,wke(t,e)}function jzt(t,e){t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.tokenizer.state=qi.RCDATA,t.originalInsertionMode=t.insertionMode,t.framesetOk=!1,t.insertionMode=te.TEXT}function Hzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._reconstructActiveFormattingElements(),t.framesetOk=!1,t._switchToTextParsing(e,qi.RAWTEXT)}function Qzt(t,e){t.framesetOk=!1,t._switchToTextParsing(e,qi.RAWTEXT)}function Ske(t,e){t._switchToTextParsing(e,qi.RAWTEXT)}function Gzt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=t.insertionMode===te.IN_TABLE||t.insertionMode===te.IN_CAPTION||t.insertionMode===te.IN_TABLE_BODY||t.insertionMode===te.IN_ROW||t.insertionMode===te.IN_CELL?te.IN_SELECT_IN_TABLE:te.IN_SELECT}function Kzt(t,e){t.openElements.currentTagId===C.OPTION&&t.openElements.pop(),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function Vzt(t,e){t.openElements.hasInScope(C.RUBY)&&t.openElements.generateImpliedEndTags(),t._insertElement(e,Ee.HTML)}function zzt(t,e){t.openElements.hasInScope(C.RUBY)&&t.openElements.generateImpliedEndTagsWithExclusion(C.RTC),t._insertElement(e,Ee.HTML)}function Yzt(t,e){t._reconstructActiveFormattingElements(),xQ(e),gD(e),e.selfClosing?t._appendElement(e,Ee.MATHML):t._insertElement(e,Ee.MATHML),e.ackSelfClosing=!0}function Jzt(t,e){t._reconstructActiveFormattingElements(),bQ(e),gD(e),e.selfClosing?t._appendElement(e,Ee.SVG):t._insertElement(e,Ee.SVG),e.ackSelfClosing=!0}function vke(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function ji(t,e){switch(e.tagID){case C.I:case C.S:case C.B:case C.U:case C.EM:case C.TT:case C.BIG:case C.CODE:case C.FONT:case C.SMALL:case C.STRIKE:case C.STRONG:{Bzt(t,e);break}case C.A:{Dzt(t,e);break}case C.H1:case C.H2:case C.H3:case C.H4:case C.H5:case C.H6:{wzt(t,e);break}case C.P:case C.DL:case C.OL:case C.UL:case C.DIV:case C.DIR:case C.NAV:case C.MAIN:case C.MENU:case C.ASIDE:case C.CENTER:case C.FIGURE:case C.FOOTER:case C.HEADER:case C.HGROUP:case C.DIALOG:case C.DETAILS:case C.ADDRESS:case C.ARTICLE:case C.SEARCH:case C.SECTION:case C.SUMMARY:case C.FIELDSET:case C.BLOCKQUOTE:case C.FIGCAPTION:{Tzt(t,e);break}case C.LI:case C.DD:case C.DT:{Ozt(t,e);break}case C.BR:case C.IMG:case C.WBR:case C.AREA:case C.EMBED:case C.KEYGEN:{wke(t,e);break}case C.HR:{Uzt(t,e);break}case C.RB:case C.RTC:{Vzt(t,e);break}case C.RT:case C.RP:{zzt(t,e);break}case C.PRE:case C.LISTING:{Rzt(t,e);break}case C.XMP:{Hzt(t,e);break}case C.SVG:{Jzt(t,e);break}case C.HTML:{vzt(t,e);break}case C.BASE:case C.LINK:case C.META:case C.STYLE:case C.TITLE:case C.SCRIPT:case C.BGSOUND:case C.BASEFONT:case C.TEMPLATE:{ou(t,e);break}case C.BODY:{Izt(t,e);break}case C.FORM:{Nzt(t,e);break}case C.NOBR:{Lzt(t,e);break}case C.MATH:{Yzt(t,e);break}case C.TABLE:{Wzt(t,e);break}case C.INPUT:{$zt(t,e);break}case C.PARAM:case C.TRACK:case C.SOURCE:{Fzt(t,e);break}case C.IMAGE:{qzt(t,e);break}case C.BUTTON:{kzt(t,e);break}case C.APPLET:case C.OBJECT:case C.MARQUEE:{Mzt(t,e);break}case C.IFRAME:{Qzt(t,e);break}case C.SELECT:{Gzt(t,e);break}case C.OPTION:case C.OPTGROUP:{Kzt(t,e);break}case C.NOEMBED:case C.NOFRAMES:{Ske(t,e);break}case C.FRAMESET:{Czt(t,e);break}case C.TEXTAREA:{jzt(t,e);break}case C.NOSCRIPT:{t.options.scriptingEnabled?Ske(t,e):vke(t,e);break}case C.PLAINTEXT:{Pzt(t,e);break}case C.COL:case C.TH:case C.TD:case C.TR:case C.HEAD:case C.FRAME:case C.TBODY:case C.TFOOT:case C.THEAD:case C.CAPTION:case C.COLGROUP:break;default:vke(t,e)}}function Xzt(t,e){if(t.openElements.hasInScope(C.BODY)&&(t.insertionMode=te.AFTER_BODY,t.options.sourceCodeLocationInfo)){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t._setEndLocation(r,e)}}function Zzt(t,e){t.openElements.hasInScope(C.BODY)&&(t.insertionMode=te.AFTER_BODY,$ke(t,e))}function eYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r))}function tYt(t){let e=t.openElements.tmplCount>0,{formElement:r}=t;e||(t.formElement=null),(r||e)&&t.openElements.hasInScope(C.FORM)&&(t.openElements.generateImpliedEndTags(),e?t.openElements.popUntilTagNamePopped(C.FORM):r&&t.openElements.remove(r))}function rYt(t){t.openElements.hasInButtonScope(C.P)||t._insertFakeElement(de.P,C.P),t._closePElement()}function nYt(t){t.openElements.hasInListItemScope(C.LI)&&(t.openElements.generateImpliedEndTagsWithExclusion(C.LI),t.openElements.popUntilTagNamePopped(C.LI))}function sYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTagsWithExclusion(r),t.openElements.popUntilTagNamePopped(r))}function iYt(t){t.openElements.hasNumberedHeaderInScope()&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilNumberedHeaderPopped())}function aYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r),t.activeFormattingElements.clearToLastMarker())}function oYt(t){t._reconstructActiveFormattingElements(),t._insertFakeElement(de.BR,C.BR),t.openElements.pop(),t.framesetOk=!1}function Nke(t,e){let r=e.tagName,n=e.tagID;for(let s=t.openElements.stackTop;s>0;s--){let i=t.openElements.items[s],a=t.openElements.tagIDs[s];if(n===a&&(n!==C.UNKNOWN||t.treeAdapter.getTagName(i)===r)){t.openElements.generateImpliedEndTagsWithExclusion(n),t.openElements.stackTop>=s&&t.openElements.shortenToLength(s);break}if(t._isSpecialElement(i,a))break}}function ED(t,e){switch(e.tagID){case C.A:case C.B:case C.I:case C.S:case C.U:case C.EM:case C.TT:case C.BIG:case C.CODE:case C.FONT:case C.NOBR:case C.SMALL:case C.STRIKE:case C.STRONG:{vQ(t,e);break}case C.P:{rYt(t);break}case C.DL:case C.UL:case C.OL:case C.DIR:case C.DIV:case C.NAV:case C.PRE:case C.MAIN:case C.MENU:case C.ASIDE:case C.BUTTON:case C.CENTER:case C.FIGURE:case C.FOOTER:case C.HEADER:case C.HGROUP:case C.DIALOG:case C.ADDRESS:case C.ARTICLE:case C.DETAILS:case C.SEARCH:case C.SECTION:case C.SUMMARY:case C.LISTING:case C.FIELDSET:case C.BLOCKQUOTE:case C.FIGCAPTION:{eYt(t,e);break}case C.LI:{nYt(t);break}case C.DD:case C.DT:{sYt(t,e);break}case C.H1:case C.H2:case C.H3:case C.H4:case C.H5:case C.H6:{iYt(t);break}case C.BR:{oYt(t);break}case C.BODY:{Xzt(t,e);break}case C.HTML:{Zzt(t,e);break}case C.FORM:{tYt(t);break}case C.APPLET:case C.OBJECT:case C.MARQUEE:{aYt(t,e);break}case C.TEMPLATE:{Ch(t,e);break}default:Nke(t,e)}}function Oke(t,e){t.tmplInsertionModeStack.length>0?Wke(t,e):IQ(t,e)}function cYt(t,e){var r;e.tagID===C.SCRIPT&&((r=t.scriptHandler)===null||r===void 0||r.call(t,t.openElements.current)),t.openElements.pop(),t.insertionMode=t.originalInsertionMode}function uYt(t,e){t._err(e,me.eofInElementThatCanContainOnlyText),t.openElements.pop(),t.insertionMode=t.originalInsertionMode,t.onEof(e)}function EQ(t,e){if(t.openElements.currentTagId!==void 0&&Ike.has(t.openElements.currentTagId))switch(t.pendingCharacterTokens.length=0,t.hasNonWhitespacePendingCharacterToken=!1,t.originalInsertionMode=t.insertionMode,t.insertionMode=te.IN_TABLE_TEXT,e.type){case xr.CHARACTER:{kke(t,e);break}case xr.WHITESPACE_CHARACTER:{Pke(t,e);break}}else bv(t,e)}function lYt(t,e){t.openElements.clearBackToTableContext(),t.activeFormattingElements.insertMarker(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_CAPTION}function dYt(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_COLUMN_GROUP}function fYt(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(de.COLGROUP,C.COLGROUP),t.insertionMode=te.IN_COLUMN_GROUP,CQ(t,e)}function pYt(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_TABLE_BODY}function mYt(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(de.TBODY,C.TBODY),t.insertionMode=te.IN_TABLE_BODY,_D(t,e)}function hYt(t,e){t.openElements.hasInTableScope(C.TABLE)&&(t.openElements.popUntilTagNamePopped(C.TABLE),t._resetInsertionMode(),t._processStartTag(e))}function gYt(t,e){Rke(e)?t._appendElement(e,Ee.HTML):bv(t,e),e.ackSelfClosing=!0}function AYt(t,e){!t.formElement&&t.openElements.tmplCount===0&&(t._insertElement(e,Ee.HTML),t.formElement=t.openElements.current,t.openElements.pop())}function Bx(t,e){switch(e.tagID){case C.TD:case C.TH:case C.TR:{mYt(t,e);break}case C.STYLE:case C.SCRIPT:case C.TEMPLATE:{ou(t,e);break}case C.COL:{fYt(t,e);break}case C.FORM:{AYt(t,e);break}case C.TABLE:{hYt(t,e);break}case C.TBODY:case C.TFOOT:case C.THEAD:{pYt(t,e);break}case C.INPUT:{gYt(t,e);break}case C.CAPTION:{lYt(t,e);break}case C.COLGROUP:{dYt(t,e);break}default:bv(t,e)}}function xv(t,e){switch(e.tagID){case C.TABLE:{t.openElements.hasInTableScope(C.TABLE)&&(t.openElements.popUntilTagNamePopped(C.TABLE),t._resetInsertionMode());break}case C.TEMPLATE:{Ch(t,e);break}case C.BODY:case C.CAPTION:case C.COL:case C.COLGROUP:case C.HTML:case C.TBODY:case C.TD:case C.TFOOT:case C.TH:case C.THEAD:case C.TR:break;default:bv(t,e)}}function bv(t,e){let r=t.fosterParentingEnabled;t.fosterParentingEnabled=!0,bD(t,e),t.fosterParentingEnabled=r}function Pke(t,e){t.pendingCharacterTokens.push(e)}function kke(t,e){t.pendingCharacterTokens.push(e),t.hasNonWhitespacePendingCharacterToken=!0}function pv(t,e){let r=0;if(t.hasNonWhitespacePendingCharacterToken)for(;r<t.pendingCharacterTokens.length;r++)bv(t,t.pendingCharacterTokens[r]);else for(;r<t.pendingCharacterTokens.length;r++)t._insertCharacters(t.pendingCharacterTokens[r]);t.insertionMode=t.originalInsertionMode,t._processToken(e)}var Dke=new Set([C.CAPTION,C.COL,C.COLGROUP,C.TBODY,C.TD,C.TFOOT,C.TH,C.THEAD,C.TR]);function yYt(t,e){let r=e.tagID;Dke.has(r)?t.openElements.hasInTableScope(C.CAPTION)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(C.CAPTION),t.activeFormattingElements.clearToLastMarker(),t.insertionMode=te.IN_TABLE,Bx(t,e)):ji(t,e)}function xYt(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&&xv(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:ED(t,e)}}function CQ(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.COL:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case C.TEMPLATE:{ou(t,e);break}default:yD(t,e)}}function bYt(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:{Ch(t,e);break}case C.COL:break;default:yD(t,e)}}function yD(t,e){t.openElements.currentTagId===C.COLGROUP&&(t.openElements.pop(),t.insertionMode=te.IN_TABLE,t._processToken(e))}function _D(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(de.TR,C.TR),t.insertionMode=te.IN_ROW,SD(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,Bx(t,e));break}default:Bx(t,e)}}function SQ(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,xv(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:xv(t,e)}}function SD(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,_D(t,e));break}default:Bx(t,e)}}function Bke(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,SQ(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,SQ(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:xv(t,e)}}function EYt(t,e){let r=e.tagID;Dke.has(r)?(t.openElements.hasInTableScope(C.TD)||t.openElements.hasInTableScope(C.TH))&&(t._closeTableCell(),SD(t,e)):ji(t,e)}function _Yt(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(),Bke(t,e));break}case C.BODY:case C.CAPTION:case C.COL:case C.COLGROUP:case C.HTML:break;default:ED(t,e)}}function Lke(t,e){switch(e.tagID){case C.HTML:{ji(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:{ou(t,e);break}default:}}function Mke(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:{Ch(t,e);break}default:}}function SYt(t,e){let r=e.tagID;r===C.CAPTION||r===C.TABLE||r===C.TBODY||r===C.TFOOT||r===C.THEAD||r===C.TR||r===C.TD||r===C.TH?(t.openElements.popUntilTagNamePopped(C.SELECT),t._resetInsertionMode(),t._processStartTag(e)):Lke(t,e)}function vYt(t,e){let r=e.tagID;r===C.CAPTION||r===C.TABLE||r===C.TBODY||r===C.TFOOT||r===C.THEAD||r===C.TR||r===C.TD||r===C.TH?t.openElements.hasInTableScope(r)&&(t.openElements.popUntilTagNamePopped(C.SELECT),t._resetInsertionMode(),t.onEndTag(e)):Mke(t,e)}function IYt(t,e){switch(e.tagID){case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:case C.NOFRAMES:case C.SCRIPT:case C.STYLE:case C.TEMPLATE:case C.TITLE:{ou(t,e);break}case C.CAPTION:case C.COLGROUP:case C.TBODY:case C.TFOOT:case C.THEAD:{t.tmplInsertionModeStack[0]=te.IN_TABLE,t.insertionMode=te.IN_TABLE,Bx(t,e);break}case C.COL:{t.tmplInsertionModeStack[0]=te.IN_COLUMN_GROUP,t.insertionMode=te.IN_COLUMN_GROUP,CQ(t,e);break}case C.TR:{t.tmplInsertionModeStack[0]=te.IN_TABLE_BODY,t.insertionMode=te.IN_TABLE_BODY,_D(t,e);break}case C.TD:case C.TH:{t.tmplInsertionModeStack[0]=te.IN_ROW,t.insertionMode=te.IN_ROW,SD(t,e);break}default:t.tmplInsertionModeStack[0]=te.IN_BODY,t.insertionMode=te.IN_BODY,ji(t,e)}}function CYt(t,e){e.tagID===C.TEMPLATE&&Ch(t,e)}function Wke(t,e){t.openElements.tmplCount>0?(t.openElements.popUntilTagNamePopped(C.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode(),t.onEof(e)):IQ(t,e)}function TYt(t,e){e.tagID===C.HTML?ji(t,e):xD(t,e)}function $ke(t,e){var r;if(e.tagID===C.HTML){if(t.fragmentContext||(t.insertionMode=te.AFTER_AFTER_BODY),t.options.sourceCodeLocationInfo&&t.openElements.tagIDs[0]===C.HTML){t._setEndLocation(t.openElements.items[0],e);let n=t.openElements.items[1];n&&!(!((r=t.treeAdapter.getNodeSourceCodeLocation(n))===null||r===void 0)&&r.endTag)&&t._setEndLocation(n,e)}}else xD(t,e)}function xD(t,e){t.insertionMode=te.IN_BODY,bD(t,e)}function wYt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.FRAMESET:{t._insertElement(e,Ee.HTML);break}case C.FRAME:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case C.NOFRAMES:{ou(t,e);break}default:}}function RYt(t,e){e.tagID===C.FRAMESET&&!t.openElements.isRootHtmlElementCurrent()&&(t.openElements.pop(),!t.fragmentContext&&t.openElements.currentTagId!==C.FRAMESET&&(t.insertionMode=te.AFTER_FRAMESET))}function NYt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.NOFRAMES:{ou(t,e);break}default:}}function OYt(t,e){e.tagID===C.HTML&&(t.insertionMode=te.AFTER_AFTER_FRAMESET)}function PYt(t,e){e.tagID===C.HTML?ji(t,e):AD(t,e)}function AD(t,e){t.insertionMode=te.IN_BODY,bD(t,e)}function kYt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.NOFRAMES:{ou(t,e);break}default:}}function DYt(t,e){e.chars=_n,t._insertCharacters(e)}function BYt(t,e){t._insertCharacters(e),t.framesetOk=!1}function Fke(t){for(;t.treeAdapter.getNamespaceURI(t.openElements.current)!==Ee.HTML&&t.openElements.currentTagId!==void 0&&!t._isIntegrationPoint(t.openElements.currentTagId,t.openElements.current);)t.openElements.pop()}function LYt(t,e){if(yke(e))Fke(t),t._startTagOutsideForeignContent(e);else{let r=t._getAdjustedCurrentElement(),n=t.treeAdapter.getNamespaceURI(r);n===Ee.MATHML?xQ(e):n===Ee.SVG&&(xke(e),bQ(e)),gD(e),e.selfClosing?t._appendElement(e,n):t._insertElement(e,n),e.ackSelfClosing=!0}}function MYt(t,e){if(e.tagID===C.P||e.tagID===C.BR){Fke(t),t._endTagOutsideForeignContent(e);return}for(let r=t.openElements.stackTop;r>0;r--){let n=t.openElements.items[r];if(t.treeAdapter.getNamespaceURI(n)===Ee.HTML){t._endTagOutsideForeignContent(e);break}let s=t.treeAdapter.getTagName(n);if(s.toLowerCase()===e.tagName){e.tagName=s,t.openElements.shortenToLength(r);break}}}var wUr=String.prototype.codePointAt==null?(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e):(t,e)=>t.codePointAt(e);function Uke(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var qke=Uke(/["&\u00A0]/g,new Map([[34,"&quot;"],[38,"&amp;"],[160,"&nbsp;"]])),jke=Uke(/[&<>\u00A0]/g,new Map([[38,"&amp;"],[60,"&lt;"],[62,"&gt;"],[160,"&nbsp;"]]));var WYt=new Set([de.AREA,de.BASE,de.BASEFONT,de.BGSOUND,de.BR,de.COL,de.EMBED,de.FRAME,de.HR,de.IMG,de.INPUT,de.KEYGEN,de.LINK,de.META,de.PARAM,de.SOURCE,de.TRACK,de.WBR]);function $Yt(t,e){return e.treeAdapter.isElementNode(t)&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML&&WYt.has(e.treeAdapter.getTagName(t))}var FYt={treeAdapter:gc,scriptingEnabled:!0};function TQ(t,e){let r={...FYt,...e};return Hke(t,r)}function UYt(t,e){let r="",n=e.treeAdapter.isElementNode(t)&&e.treeAdapter.getTagName(t)===de.TEMPLATE&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML?e.treeAdapter.getTemplateContent(t):t,s=e.treeAdapter.getChildNodes(n);if(s)for(let i of s)r+=Hke(i,e);return r}function Hke(t,e){return e.treeAdapter.isElementNode(t)?qYt(t,e):e.treeAdapter.isTextNode(t)?HYt(t,e):e.treeAdapter.isCommentNode(t)?QYt(t,e):e.treeAdapter.isDocumentTypeNode(t)?GYt(t,e):""}function qYt(t,e){let r=e.treeAdapter.getTagName(t);return`<${r}${jYt(t,e)}>${$Yt(t,e)?"":`${UYt(t,e)}</${r}>`}`}function jYt(t,{treeAdapter:e}){let r="";for(let n of e.getAttrList(t)){if(r+=" ",n.namespace)switch(n.namespace){case Ee.XML:{r+=`xml:${n.name}`;break}case Ee.XMLNS:{n.name!=="xmlns"&&(r+="xmlns:"),r+=n.name;break}case Ee.XLINK:{r+=`xlink:${n.name}`;break}default:r+=`${n.prefix}:${n.name}`}else r+=n.name;r+=`="${qke(n.value)}"`}return r}function HYt(t,e){let{treeAdapter:r}=e,n=r.getTextNodeContent(t),s=r.getParentNode(t),i=s&&r.isElementNode(s)&&r.getTagName(s);return i&&r.getNamespaceURI(s)===Ee.HTML&&yQ(i,e.scriptingEnabled)?n:jke(n)}function QYt(t,{treeAdapter:e}){return`<!--${e.getCommentNodeContent(t)}-->`}function GYt(t,{treeAdapter:e}){return`<!DOCTYPE ${e.getDocumentTypeNodeName(t)}>`}function Qke(t,e){return Dx.parse(t,e)}function Gke(t,e,r){typeof t=="string"&&(r=e,e=t,t=null);let n=Dx.getFragmentParser(t,r);return n.tokenizer.write(e,!0),n.getFragment()}function Kke(t){let e=t.includes('"')?"'":'"';return e+t+e}function KYt(t,e,r){let n="!DOCTYPE ";return t&&(n+=t),e?n+=` PUBLIC ${Kke(e)}`:r&&(n+=" SYSTEM"),r&&(n+=` ${Kke(r)}`),n}var jd={isCommentNode:_h,isElementNode:st,isTextNode:Va,createDocument(){let t=new _o([]);return t["x-mode"]=dD.DOCUMENT_MODE.NO_QUIRKS,t},createDocumentFragment(){return new _o([])},createElement(t,e,r){let n=Object.create(null),s=Object.create(null),i=Object.create(null);for(let o=0;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 Eh(t,n,[]);return a.namespace=e,a["x-attribsNamespace"]=s,a["x-attribsPrefix"]=i,a},createCommentNode(t){return new xh(t)},createTextNode(t){return new ll(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){jd.appendChild(t,e)},getTemplateContent(t){return t.children[0]},setDocumentType(t,e,r,n){let s=KYt(e,r,n),i=t.children.find(a=>wk(a)&&a.name==="!doctype");i?i.data=s??null:(i=new bh("!doctype",s),jd.appendChild(t,i)),i["x-name"]=e,i["x-publicId"]=r,i["x-systemId"]=n},setDocumentMode(t,e){t["x-mode"]=e},getDocumentMode(t){return t["x-mode"]},detachNode(t){if(t.parent){let e=t.parent.children.indexOf(t),{prev:r,next:n}=t;t.prev=null,t.next=null,r&&(r.next=n),n&&(n.prev=r),t.parent.children.splice(e,1),t.parent=null}},insertText(t,e){let r=t.children[t.children.length-1];r&&Va(r)?r.data+=e:jd.appendChild(t,jd.createTextNode(e))},insertTextBefore(t,e,r){let n=t.children[t.children.indexOf(r)-1];n&&Va(n)?n.data+=e:jd.insertBefore(t,jd.createTextNode(e),r)},adoptAttributes(t,e){for(let r=0;r<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 wk(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 Vke(t,e,r,n){let s={scriptingEnabled:typeof e.scriptingEnabled=="boolean"?e.scriptingEnabled:!0,treeAdapter:jd,sourceCodeLocationInfo:e.sourceCodeLocationInfo};return r?Qke(t,s):Gke(n,t,s)}var VYt={treeAdapter:jd};function zke(t){let e="length"in t?t:[t];for(let n=0;n<e.length;n+=1){let s=e[n];su(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+=TQ(s,VYt)}return r}var Ve;(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"})(Ve||(Ve={}));var ve;(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"})(ve||(ve={}));function Hd(t){return t===Ve.Space||t===Ve.NewLine||t===Ve.Tab||t===Ve.FormFeed||t===Ve.CarriageReturn}function vD(t){return t===Ve.Slash||t===Ve.Gt||Hd(t)}function Yke(t){return t>=Ve.Zero&&t<=Ve.Nine}function zYt(t){return t>=Ve.LowerA&&t<=Ve.LowerZ||t>=Ve.UpperA&&t<=Ve.UpperZ}function YYt(t){return t>=Ve.UpperA&&t<=Ve.UpperF||t>=Ve.LowerA&&t<=Ve.LowerF}var cu;(function(t){t[t.NoValue=0]="NoValue",t[t.Unquoted=1]="Unquoted",t[t.Single=2]="Single",t[t.Double=3]="Double"})(cu||(cu={}));var Xa={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},Lx=class{constructor({xmlMode:e=!1,decodeEntities:r=!0},n){this.cbs=n,this.state=ve.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=ve.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=e,this.decodeEntities=r,this.entityTrie=e?Nk:Rk}reset(){this.state=ve.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=ve.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()}end(){this.running&&this.finish()}pause(){this.running=!1}resume(){this.running=!0,this.index<this.buffer.length+this.offset&&this.parse()}getIndex(){return this.index}getSectionStart(){return this.sectionStart}stateText(e){e===Ve.Lt||!this.decodeEntities&&this.fastForwardTo(Ve.Lt)?(this.index>this.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=ve.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===Ve.Amp&&(this.state=ve.BeforeEntity)}stateSpecialStartSequence(e){let r=this.sequenceIndex===this.currentSequence.length;if(!(r?vD(e):(e|32)===this.currentSequence[this.sequenceIndex]))this.isSpecial=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=ve.InTagName,this.stateInTagName(e)}stateInSpecialTag(e){if(this.sequenceIndex===this.currentSequence.length){if(e===Ve.Gt||Hd(e)){let r=this.index-this.currentSequence.length;if(this.sectionStart<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===Xa.TitleEnd?this.decodeEntities&&e===Ve.Amp&&(this.state=ve.BeforeEntity):this.fastForwardTo(Ve.Lt)&&(this.sequenceIndex=1):this.sequenceIndex=+(e===Ve.Lt)}stateCDATASequence(e){e===Xa.Cdata[this.sequenceIndex]?++this.sequenceIndex===Xa.Cdata.length&&(this.state=ve.InCommentLike,this.currentSequence=Xa.CdataEnd,this.sequenceIndex=0,this.sectionStart=this.index+1):(this.sequenceIndex=0,this.state=ve.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===Xa.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=ve.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?!vD(e):zYt(e)}startSpecial(e,r){this.isSpecial=!0,this.currentSequence=e,this.sequenceIndex=r,this.state=ve.SpecialStartSequence}stateBeforeTagName(e){if(e===Ve.ExclamationMark)this.state=ve.BeforeDeclaration,this.sectionStart=this.index+1;else if(e===Ve.Questionmark)this.state=ve.InProcessingInstruction,this.sectionStart=this.index+1;else if(this.isTagStartChar(e)){let r=e|32;this.sectionStart=this.index,!this.xmlMode&&r===Xa.TitleEnd[2]?this.startSpecial(Xa.TitleEnd,3):this.state=!this.xmlMode&&r===Xa.ScriptEnd[2]?ve.BeforeSpecialS:ve.InTagName}else e===Ve.Slash?this.state=ve.BeforeClosingTagName:(this.state=ve.Text,this.stateText(e))}stateInTagName(e){vD(e)&&(this.cbs.onopentagname(this.sectionStart,this.index),this.sectionStart=-1,this.state=ve.BeforeAttributeName,this.stateBeforeAttributeName(e))}stateBeforeClosingTagName(e){Hd(e)||(e===Ve.Gt?this.state=ve.Text:(this.state=this.isTagStartChar(e)?ve.InClosingTagName:ve.InSpecialComment,this.sectionStart=this.index))}stateInClosingTagName(e){(e===Ve.Gt||Hd(e))&&(this.cbs.onclosetag(this.sectionStart,this.index),this.sectionStart=-1,this.state=ve.AfterClosingTagName,this.stateAfterClosingTagName(e))}stateAfterClosingTagName(e){(e===Ve.Gt||this.fastForwardTo(Ve.Gt))&&(this.state=ve.Text,this.baseState=ve.Text,this.sectionStart=this.index+1)}stateBeforeAttributeName(e){e===Ve.Gt?(this.cbs.onopentagend(this.index),this.isSpecial?(this.state=ve.InSpecialTag,this.sequenceIndex=0):this.state=ve.Text,this.baseState=this.state,this.sectionStart=this.index+1):e===Ve.Slash?this.state=ve.InSelfClosingTag:Hd(e)||(this.state=ve.InAttributeName,this.sectionStart=this.index)}stateInSelfClosingTag(e){e===Ve.Gt?(this.cbs.onselfclosingtag(this.index),this.state=ve.Text,this.baseState=ve.Text,this.sectionStart=this.index+1,this.isSpecial=!1):Hd(e)||(this.state=ve.BeforeAttributeName,this.stateBeforeAttributeName(e))}stateInAttributeName(e){(e===Ve.Eq||vD(e))&&(this.cbs.onattribname(this.sectionStart,this.index),this.sectionStart=-1,this.state=ve.AfterAttributeName,this.stateAfterAttributeName(e))}stateAfterAttributeName(e){e===Ve.Eq?this.state=ve.BeforeAttributeValue:e===Ve.Slash||e===Ve.Gt?(this.cbs.onattribend(cu.NoValue,this.index),this.state=ve.BeforeAttributeName,this.stateBeforeAttributeName(e)):Hd(e)||(this.cbs.onattribend(cu.NoValue,this.index),this.state=ve.InAttributeName,this.sectionStart=this.index)}stateBeforeAttributeValue(e){e===Ve.DoubleQuote?(this.state=ve.InAttributeValueDq,this.sectionStart=this.index+1):e===Ve.SingleQuote?(this.state=ve.InAttributeValueSq,this.sectionStart=this.index+1):Hd(e)||(this.sectionStart=this.index,this.state=ve.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===Ve.DoubleQuote?cu.Double:cu.Single,this.index),this.state=ve.BeforeAttributeName):this.decodeEntities&&e===Ve.Amp&&(this.baseState=this.state,this.state=ve.BeforeEntity)}stateInAttributeValueDoubleQuotes(e){this.handleInAttributeValue(e,Ve.DoubleQuote)}stateInAttributeValueSingleQuotes(e){this.handleInAttributeValue(e,Ve.SingleQuote)}stateInAttributeValueNoQuotes(e){Hd(e)||e===Ve.Gt?(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=-1,this.cbs.onattribend(cu.Unquoted,this.index),this.state=ve.BeforeAttributeName,this.stateBeforeAttributeName(e)):this.decodeEntities&&e===Ve.Amp&&(this.baseState=this.state,this.state=ve.BeforeEntity)}stateBeforeDeclaration(e){e===Ve.OpeningSquareBracket?(this.state=ve.CDATASequence,this.sequenceIndex=0):this.state=e===Ve.Dash?ve.BeforeComment:ve.InDeclaration}stateInDeclaration(e){(e===Ve.Gt||this.fastForwardTo(Ve.Gt))&&(this.cbs.ondeclaration(this.sectionStart,this.index),this.state=ve.Text,this.sectionStart=this.index+1)}stateInProcessingInstruction(e){(e===Ve.Gt||this.fastForwardTo(Ve.Gt))&&(this.cbs.onprocessinginstruction(this.sectionStart,this.index),this.state=ve.Text,this.sectionStart=this.index+1)}stateBeforeComment(e){e===Ve.Dash?(this.state=ve.InCommentLike,this.currentSequence=Xa.CommentEnd,this.sequenceIndex=2,this.sectionStart=this.index+1):this.state=ve.InDeclaration}stateInSpecialComment(e){(e===Ve.Gt||this.fastForwardTo(Ve.Gt))&&(this.cbs.oncomment(this.sectionStart,this.index,0),this.state=ve.Text,this.sectionStart=this.index+1)}stateBeforeSpecialS(e){let r=e|32;r===Xa.ScriptEnd[3]?this.startSpecial(Xa.ScriptEnd,4):r===Xa.StyleEnd[3]?this.startSpecial(Xa.StyleEnd,4):(this.state=ve.InTagName,this.stateInTagName(e))}stateBeforeEntity(e){this.entityExcess=1,this.entityResult=0,e===Ve.Number?this.state=ve.BeforeNumericEntity:e===Ve.Amp||(this.trieIndex=0,this.trieCurrent=this.entityTrie[0],this.state=ve.InNamedEntity,this.stateInNamedEntity(e))}stateInNamedEntity(e){if(this.entityExcess+=1,this.trieIndex=CH(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&fc.VALUE_LENGTH;if(r){let n=(r>>14)-1;if(!this.allowLegacyEntity()&&e!==Ve.Semi)this.trieIndex+=n;else{let s=this.index-this.entityExcess+1;s>this.sectionStart&&this.emitPartial(this.sectionStart,s),this.entityResult=this.trieIndex,this.trieIndex+=n,this.entityExcess=0,this.sectionStart=this.index+1,n===0&&this.emitNamedEntity()}}}emitNamedEntity(){if(this.state=this.baseState,this.entityResult===0)return;switch((this.entityTrie[this.entityResult]&fc.VALUE_LENGTH)>>14){case 1:{this.emitCodePoint(this.entityTrie[this.entityResult]&~fc.VALUE_LENGTH);break}case 2:{this.emitCodePoint(this.entityTrie[this.entityResult+1]);break}case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}}stateBeforeNumericEntity(e){(e|32)===Ve.LowerX?(this.entityExcess++,this.state=ve.InHexEntity):(this.state=ve.InNumericEntity,this.stateInNumericEntity(e))}emitNumericEntity(e){let r=this.index-this.entityExcess-1;r+2+ +(this.state===ve.InHexEntity)!==this.index&&(r>this.sectionStart&&this.emitPartial(this.sectionStart,r),this.sectionStart=this.index+Number(e),this.emitCodePoint(ZS(this.entityResult))),this.state=this.baseState}stateInNumericEntity(e){e===Ve.Semi?this.emitNumericEntity(!0):Yke(e)?(this.entityResult=this.entityResult*10+(e-Ve.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}stateInHexEntity(e){e===Ve.Semi?this.emitNumericEntity(!0):Yke(e)?(this.entityResult=this.entityResult*16+(e-Ve.Zero),this.entityExcess++):YYt(e)?(this.entityResult=this.entityResult*16+((e|32)-Ve.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}allowLegacyEntity(){return!this.xmlMode&&(this.baseState===ve.Text||this.baseState===ve.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===ve.Text||this.state===ve.InSpecialTag&&this.sequenceIndex===0?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):(this.state===ve.InAttributeValueDq||this.state===ve.InAttributeValueSq||this.state===ve.InAttributeValueNq)&&(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))}shouldContinue(){return this.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 ve.Text:{this.stateText(e);break}case ve.SpecialStartSequence:{this.stateSpecialStartSequence(e);break}case ve.InSpecialTag:{this.stateInSpecialTag(e);break}case ve.CDATASequence:{this.stateCDATASequence(e);break}case ve.InAttributeValueDq:{this.stateInAttributeValueDoubleQuotes(e);break}case ve.InAttributeName:{this.stateInAttributeName(e);break}case ve.InCommentLike:{this.stateInCommentLike(e);break}case ve.InSpecialComment:{this.stateInSpecialComment(e);break}case ve.BeforeAttributeName:{this.stateBeforeAttributeName(e);break}case ve.InTagName:{this.stateInTagName(e);break}case ve.InClosingTagName:{this.stateInClosingTagName(e);break}case ve.BeforeTagName:{this.stateBeforeTagName(e);break}case ve.AfterAttributeName:{this.stateAfterAttributeName(e);break}case ve.InAttributeValueSq:{this.stateInAttributeValueSingleQuotes(e);break}case ve.BeforeAttributeValue:{this.stateBeforeAttributeValue(e);break}case ve.BeforeClosingTagName:{this.stateBeforeClosingTagName(e);break}case ve.AfterClosingTagName:{this.stateAfterClosingTagName(e);break}case ve.BeforeSpecialS:{this.stateBeforeSpecialS(e);break}case ve.InAttributeValueNq:{this.stateInAttributeValueNoQuotes(e);break}case ve.InSelfClosingTag:{this.stateInSelfClosingTag(e);break}case ve.InDeclaration:{this.stateInDeclaration(e);break}case ve.BeforeDeclaration:{this.stateBeforeDeclaration(e);break}case ve.BeforeComment:{this.stateBeforeComment(e);break}case ve.InProcessingInstruction:{this.stateInProcessingInstruction(e);break}case ve.InNamedEntity:{this.stateInNamedEntity(e);break}case ve.BeforeEntity:{this.stateBeforeEntity(e);break}case ve.InHexEntity:{this.stateInHexEntity(e);break}case ve.InNumericEntity:{this.stateInNumericEntity(e);break}default:this.stateBeforeNumericEntity(e)}this.index++}this.cleanup()}finish(){this.state===ve.InNamedEntity&&this.emitNamedEntity(),this.sectionStart<this.index&&this.handleTrailingData(),this.cbs.onend()}handleTrailingData(){let e=this.buffer.length+this.offset;this.state===ve.InCommentLike?this.currentSequence===Xa.CdataEnd?this.cbs.oncdata(this.sectionStart,e,0):this.cbs.oncomment(this.sectionStart,e,0):this.state===ve.InNumericEntity&&this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state===ve.InHexEntity&&this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state===ve.InTagName||this.state===ve.BeforeAttributeName||this.state===ve.BeforeAttributeValue||this.state===ve.AfterAttributeName||this.state===ve.InAttributeName||this.state===ve.InAttributeValueSq||this.state===ve.InAttributeValueDq||this.state===ve.InAttributeValueNq||this.state===ve.InClosingTagName||this.cbs.ontext(this.sectionStart,e)}emitPartial(e,r){this.baseState!==ve.Text&&this.baseState!==ve.InSpecialTag?this.cbs.onattribdata(e,r):this.cbs.ontext(e,r)}emitCodePoint(e){this.baseState!==ve.Text&&this.baseState!==ve.InSpecialTag?this.cbs.onattribentity(e):this.cbs.ontextentity(e)}};var Mx=new Set(["input","option","optgroup","select","button","datalist","textarea"]),nn=new Set(["p"]),Jke=new Set(["thead","tbody"]),Xke=new Set(["dd","dt"]),Zke=new Set(["rt","rp"]),JYt=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",nn],["h1",nn],["h2",nn],["h3",nn],["h4",nn],["h5",nn],["h6",nn],["select",Mx],["input",Mx],["output",Mx],["button",Mx],["datalist",Mx],["textarea",Mx],["option",new Set(["option"])],["optgroup",new Set(["optgroup","option"])],["dd",Xke],["dt",Xke],["address",nn],["article",nn],["aside",nn],["blockquote",nn],["details",nn],["div",nn],["dl",nn],["fieldset",nn],["figcaption",nn],["figure",nn],["footer",nn],["form",nn],["header",nn],["hr",nn],["main",nn],["nav",nn],["ol",nn],["pre",nn],["section",nn],["table",nn],["ul",nn],["rt",Zke],["rp",Zke],["tbody",Jke],["tfoot",Jke]]),XYt=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]),eDe=new Set(["math","svg"]),tDe=new Set(["mi","mo","mn","ms","mtext","annotation-xml","foreignobject","desc","title"]),ZYt=/\s|\//,Ev=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:Lx)(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,bx(e)),this.startIndex=s}isVoidElement(e){return!this.options.xmlMode&&XYt.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&&JYt.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),eDe.has(e)?this.foreignContext.push(!0):tDe.has(e)&&this.foreignContext.push(!1)),(i=(s=this.cbs).onopentagname)===null||i===void 0||i.call(s,e),this.cbs.onopentag&&(this.attribs={})}endOpenTag(e){var r,n;this.startIndex=this.openTagStart,this.attribs&&((n=(r=this.cbs).onopentag)===null||n===void 0||n.call(r,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""}onopentagend(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1}onclosetag(e,r){var n,s,i,a,o,c;this.endIndex=r;let u=this.getSlice(e,r);if(this.lowerCaseTagNames&&(u=u.toLowerCase()),(eDe.has(u)||tDe.has(u))&&this.foreignContext.pop(),this.isVoidElement(u))!this.options.xmlMode&&u==="br"&&((s=(n=this.cbs).onopentagname)===null||s===void 0||s.call(n,"br"),(a=(i=this.cbs).onopentag)===null||a===void 0||a.call(i,"br",{},!0),(c=(o=this.cbs).onclosetag)===null||c===void 0||c.call(o,"br",!1));else{let l=this.stack.lastIndexOf(u);if(l!==-1)if(this.cbs.onclosetag){let d=this.stack.length-l;for(;d--;)this.cbs.onclosetag(this.stack.pop(),d!==0)}else this.stack.length=l;else!this.options.xmlMode&&u==="p"&&(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=r+1}onselfclosingtag(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)}closeCurrentTag(e){var r,n;let s=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===s&&((n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,s,!e),this.stack.pop())}onattribname(e,r){this.startIndex=e;let n=this.getSlice(e,r);this.attribname=this.lowerCaseAttributeNames?n.toLowerCase():n}onattribdata(e,r){this.attribvalue+=this.getSlice(e,r)}onattribentity(e){this.attribvalue+=bx(e)}onattribend(e,r){var n,s;this.endIndex=r,(s=(n=this.cbs).onattribute)===null||s===void 0||s.call(n,this.attribname,this.attribvalue,e===cu.Double?'"':e===cu.Single?"'":e===cu.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""}getInstructionName(e){let r=e.search(ZYt),n=r<0?e:e.substr(0,r);return this.lowerCaseTagNames&&(n=n.toLowerCase()),n}ondeclaration(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`!${s}`,`!${n}`)}this.startIndex=r+1}onprocessinginstruction(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`?${s}`,`?${n}`)}this.startIndex=r+1}oncomment(e,r,n){var s,i,a,o;this.endIndex=r,(i=(s=this.cbs).oncomment)===null||i===void 0||i.call(s,this.getSlice(e,r-n)),(o=(a=this.cbs).oncommentend)===null||o===void 0||o.call(a),this.startIndex=r+1}oncdata(e,r,n){var s,i,a,o,c,u,l,d,f,p;this.endIndex=r;let m=this.getSlice(e,r-n);this.options.xmlMode||this.options.recognizeCDATA?((i=(s=this.cbs).oncdatastart)===null||i===void 0||i.call(s),(o=(a=this.cbs).ontext)===null||o===void 0||o.call(a,m),(u=(c=this.cbs).oncdataend)===null||u===void 0||u.call(c)):((d=(l=this.cbs).oncomment)===null||d===void 0||d.call(l,`[CDATA[${m}]]`),(p=(f=this.cbs).oncommentend)===null||p===void 0||p.call(f)),this.startIndex=r+1}onend(){var e,r;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(let n=this.stack.length;n>0;this.cbs.onclosetag(this.stack[--n],!0));}(r=(e=this.cbs).onend)===null||r===void 0||r.call(e)}reset(){var e,r,n,s;(r=(e=this.cbs).onreset)===null||r===void 0||r.call(e),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,(s=(n=this.cbs).onparserinit)===null||s===void 0||s.call(n,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1}parseComplete(e){this.reset(),this.end(e)}getSlice(e,r){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();let n=this.buffers[0].slice(e-this.bufferOffset,r-this.bufferOffset);for(;r-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),n+=this.buffers[0].slice(0,r-this.bufferOffset);return n}shiftBuffer(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()}write(e){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".write() after done!"));return}this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++)}end(e){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".end() after done!"));return}e&&this.write(e),this.ended=!0,this.tokenizer.end()}pause(){this.tokenizer.pause()}resume(){for(this.tokenizer.resume();this.tokenizer.running&&this.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 rDe(t,e){let r=new xx(void 0,e);return new Ev(r,e).end(t),r.root}var eJt=GPe((t,e,r,n)=>e.xmlMode||e._useHtmlParser2?rDe(t,e):Vke(t,e,r,n)),Me=ZPe(eJt,(t,e)=>e.xmlMode||e._useHtmlParser2?Bk(t,e):zke(t)),tJt=Me([]),{contains:rJt}=r0,{merge:nJt}=r0,{parseHTML:sJt}=r0,{root:iJt}=r0;var Sv="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";function nDe(t,e){return Math.floor(Math.random()*(e-t+1))+t}function Th(t,e,r){var n="";let s=e===void 0?!0:e;for(var i=0;i<t;i++){let a=r?nDe(Sv.length-10,Sv.length-1):nDe(0,s?Sv.length-1:Sv.length-11);n+=Sv[a]}return n}function wQ(){return Th(8).toLowerCase()+"-"+Th(4).toLowerCase()+"-"+Th(4).toLowerCase()+"-"+Th(4).toLowerCase()+"-"+Th(12).toLowerCase()}var sDe="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36";var l0="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 iDe(t,e){return t.trim()==e.trim()?e:e.trim().replaceAll(t,"").replace(/<|>|《|》/g,"").replace(/\$|#/g," ").trim()}function Hi(t){let e=t/1048576;return e>1024?`${(e/1024).toFixed(2)}GB`:`${parseInt(e).toFixed(0)}MB`}function RQ(t,e){if(!t||!e)return{length:0,sequence:"",offset:0};for(var r="",n=t.length,s=e.length,i=new Array(n),a=0,o=0,c=0;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 ml(t,e){let r=[],n=0;for(let i=0;i<e.length;i++){let a=RQ(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 Qd(t){return new Promise(e=>setTimeout(e,t))}var hl=t=>t.map(e=>e.split(";")[0]+";");var lu=Re(vv(),1),Nv=Re(Jn(),1);var DQ=Re(Jn(),1),wh=require("path"),ms=Re(require("fs"),1),m3e=require("stream");async function aJt(t,e){let r=await he.get(t,{responseType:"stream",headers:Object.assign({Range:"bytes=0-0"},e)}).catch(n=>(console.error(n),n.response||{status:500,data:{}}));if(r&&r.status===206){let n=r.headers["accept-ranges"]==="bytes",s=r.headers["content-range"],i=parseInt(r.headers["content-length"]),a=n||!!s||i===1,o=s?parseInt(s.split("/")[1]):i;return delete r.headers["content-range"],delete r.headers["content-length"],o&&(r.headers["content-length"]=o.toString()),[a,r.headers]}else return[!1,null]}var Cv={},p3e="",Rh=(process.env.NODE_PATH||".")+"/vod_cache",oJt=1024*1024*100;async function h3e(t){try{if(ms.default.existsSync(t)){let e=await ms.default.promises.readdir(t);await Promise.all(e.map(async r=>{let n=`${t}/${r}`;(await ms.default.promises.stat(n)).isDirectory()?await h3e(n):await ms.default.promises.unlink(n)})),await ms.default.promises.rmdir(t)}}catch(e){console.error("Error deleting folder:",e)}}h3e(Rh);function cJt(t){try{ms.default.readdir(Rh,(e,r)=>{if(r)for(let n of r){if(n===t)continue;let s=(0,wh.join)(Rh,n);ms.default.stat(s,(i,a)=>{a&&a.isDirectory()&&ms.default.readdir(s,(o,c)=>{if(c)for(let u of c)u.endsWith(".p")||ms.default.rm((0,wh.join)(s,u),{recursive:!0},()=>{})})})}})}catch(e){console.error(e)}}async function uJt(t,e,r,n,s,i){if(n=n||DQ.default.enc.Hex.stringify(DQ.default.MD5(r)).toString(),p3e!==n&&(cJt(n),p3e=n),!Cv[n]){let[P,B]=await aJt(r,s);if(!P||!B["content-length"]){e.redirect(r);return}Cv[n]=B}let a=!0;await ms.default.promises.access((0,wh.join)(Rh,n)).catch(P=>a=!1),a||await ms.default.promises.mkdir((0,wh.join)(Rh,n),{recursive:!0});let o=parseInt(Cv[n]["content-length"]),c=Math.max(0,parseInt(i?.skipBytes||0)||0),u=Math.min(c,Math.max(0,o-1)),l=o-u;if(!Number.isFinite(l)||l<=0){e.redirect(r);return}let d=0,f=l-1,p={};if(t.headers.range){let P=t.headers.range.trim().replace(/^bytes=/i,"").split("-"),B=P[0]!=="",M=P.length>1&&P[1]!=="";if(M){let D=parseInt(P[1],10);Number.isFinite(D)&&(f=D)}if(B){let D=parseInt(P[0],10);Number.isFinite(D)&&(d=D)}if(d=Math.max(0,Number.isFinite(d)?d:0),!M||!Number.isFinite(f)?f=l-1:f=Math.min(l-1,f),d>f){e.code(416),e.headers({"content-range":`bytes */${l}`});return}Object.assign(p,Cv[n]),p["content-length"]=(f-d+1).toString(),p["content-range"]=`bytes ${d}-${f}/${l}`,e.code(206)}else Object.assign(p,Cv[n]),p["content-length"]=l.toString(),e.code(200);i=i||{chunkSize:1024*512,poolSize:10,timeout:1e3*10};let m=i.chunkSize,h=i.poolSize,A=i.timeout,g=u+d,b=u+f,y=Math.ceil(o/m),x=Math.floor(b/m),v=Math.floor(g/m),I=v,R=!1,w={};for(let P=0;P<h&&P<y;P++)new Promise(B=>{(async function M(D){if(R||v>x){B();return}if(D===void 0&&(v-I)*m>=oJt){setTimeout(M,5);return}let L=D!==void 0?D:v++,Z=`${t.id}-${L}`;try{let W=(0,wh.join)(Rh,n,`${t.id}-${L}.p`),F=!0;if(await ms.default.promises.access(W).catch(K=>F=!1),!F){let K=L*m,j=Math.min(o-1,(L+1)*m-1),J=await he.get(r,{responseType:"stream",timeout:A,headers:Object.assign({Range:`bytes=${K}-${j}`},s)}),se=(0,wh.join)(Rh,n,`${t.id}-${L}.dl`),oe=ms.default.createWriteStream(se),ue=setTimeout(()=>{oe.destroy(new Error(`${Z} read timeout`))},A),Ie=new Promise(qe=>{oe.on("finish",async()=>{R?await ms.default.promises.rm(se).catch(Fe=>console.error(Fe)):(await ms.default.promises.rename(se,W).catch(Fe=>console.error(Fe)),w[Z]=W),qe(!0)}),oe.on("error",async Fe=>{console.error(Fe),await ms.default.promises.rm(se).catch(_e=>console.error(_e)),qe(!1)})});J.data.pipe(oe);let we=await Ie;if(clearTimeout(ue),!we){setTimeout(()=>{M(L)},15);return}}setTimeout(M,5)}catch(W){console.error(W),setTimeout(()=>{M(L)},15)}})()});e.headers(p);let N=new m3e.PassThrough;return new Promise(P=>{let B=!0;(async function M(){try{if(I>x||R){N.end(),P();return}if(!B){setTimeout(M,5);return}let D=`${t.id}-${I}`;if(!w[D]){setTimeout(M,5);return}let L=I*m,Z=Math.min(o-1,(I+1)*m-1),W=Math.max(g,L)-L,K=Math.min(b,Z)-L-W+1,j=w[D];delete w[D];let J=await ms.default.promises.open(j,"r");if(K<=0){await J.close().catch(oe=>console.error(oe)),await ms.default.promises.rm(j).catch(oe=>console.error(oe)),I++,setTimeout(M,5);return}let se=Buffer.alloc(K);await J.read(se,0,K,W),await J.close().catch(oe=>console.error(oe)),await ms.default.promises.rm(j).catch(oe=>console.error(oe)),B=N.write(se),B||N.once("drain",()=>{B=!0}),I++,setTimeout(M,5)}catch{setTimeout(M,5)}})()}),N.on("close",async()=>{Object.keys(w).forEach(P=>{P.startsWith(t.id)&&(ms.default.rm(w[P],{recursive:!0},()=>{}),delete w[P])}),R=!0}),N}var Wx=uJt;var F3e=Re(R3e(),1);var SXt=["\u9884\u544A"],vXt=t=>{if(!t)return!1;let e=String(t);return SXt.some(r=>e.includes(r))};function N3e(t){let e=/(E|EP)0?([1-9]\d*).*/.exec(t);if(e)return Number(e[2]);let r=/.*?([1-9]\d*).*/.exec(t);return r?Number(r[1]):null}function O3e(t){return t.replace(/\.[^.]+$/,"").replace(/^(S\d+)?E?P?\d+\.?/i,"")}function P3e(t){return t==null?"":String(t)}function IXt(t,e){let r=P3e(t),n=P3e(e);return r===n?0:r.localeCompare(n,void 0,{numeric:!0,sensitivity:"base"})}function Ps(t,e){let r={};return e.length===0||(e=e.filter(n=>!vXt(n?.vod_name)),e.length===0)||(e.sort((n,s)=>{let i=IXt(n.vod_group,s.vod_group);if(i!==0)return i;let a=N3e(n.vod_name),o=N3e(s.vod_name);if(a!==null&&o!==null&&a!==o)return a-o;let c=O3e(n.vod_name),u=O3e(s.vod_name);return c!==u?c.localeCompare(u):a!==null&&o!==null?a-o:n.vod_name.localeCompare(s.vod_name)}),e=e.map(n=>{let s=Hi(n.vod_size);return{vod_id:n.vod_id,vod_name:iDe("",` ${n.vod_name.replace(/.[^.]+$/,"")} [${s}]`)}}),r.from=t,r.url=e.map(n=>n.vod_name+"$"+n.vod_id).join("#")),r}async function Xn(t,e,r={}){let n=(Array.isArray(t)?t:[t]).filter(Boolean).map(o=>String(o).trim()).filter(o=>o.length>0);if(n.length===0)return"";let s=Number(r?.timeoutMs)>0?Number(r.timeoutMs):5e3,i=Array.isArray(r?.methods)&&r.methods.length>0?r.methods:["HEAD","GET"],a={"User-Agent":l0,...e&&typeof e=="object"?e:{}};return await new Promise(o=>{let c=!1,u=f=>{c||(c=!0,o(f))},l=setTimeout(()=>u(n[0]),s*i.length+200),d=async f=>{for(let p of i)try{let m=await Ae.request({url:f,method:p,headers:a,proxy:!1,timeout:s,maxRedirects:5,validateStatus:()=>!0});if(m?.status>=200&&m.status<400){clearTimeout(l),u(f);return}}catch{}};n.forEach(f=>{d(f)})})}var gl=t=>globalThis.getPanEnabled?globalThis.getPanEnabled(t):!0,l3=t=>gl("ali")&&/www.alipan.com|www.aliyundrive.com/.test(t),d3=t=>gl("quark")&&t.includes("https://pan.quark.cn"),f3=t=>gl("uc")&&t.includes("https://drive.uc.cn"),k3e=t=>gl("tianyi")&&/cloud\.189\.cn/.test(t),D3e=t=>gl("yidong")&&/caiyun\.139\.com|yun\.139\.com/.test(t),B3e=t=>gl("123")&&/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/.test(t),L3e=t=>gl("115")&&(/115.com|anxia.com|115cdn.com/.test(t)||/^(?:magnet:\?|ed2k:\/\/)/i.test(String(t||"").trim())),M3e=t=>gl("baidu")&&/pan\.baidu\.com/.test(t),W3e=t=>gl("xunlei")&&/pan\.xunlei\.com/.test(t),$3e=t=>gl("guangyapan")&&/guangyapan\.com\/s\//.test(t);var Ut=Ss;(function(t,e){let r=Ss,n=t();for(;;)try{if(-parseInt(r(439,"3AZo"))/1+parseInt(r(484,"L83n"))/2+-parseInt(r(1032,"l5&D"))/3*(parseInt(r(950,"66US"))/4)+-parseInt(r(589,"]mj0"))/5*(parseInt(r(925,"*Ewm"))/6)+parseInt(r(940,"c)HT"))/7*(-parseInt(r(850,"yim#"))/8)+-parseInt(r(625,"t2gG"))/9+parseInt(r(809,"erUG"))/10*(parseInt(r(934,"!pe*"))/11)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(p3,-103030+12*48322+-84559*1);function p3(){let t=["g0Xw","smotW4JcV8kT","WO5VzWJcNCovW5dcTxeE","WQa/B8omrmkvWQVcI8kkka","AmowW4xcVSk1WRddHKLC","WPqdWOFcM08","W4KLbcGc","pSofeq","W6n9xG","jCoYW6/dOmkeWOLzgCokfW","rbpdQwldU8o8","aSk+WO7dGG","EIRcM2tdGG","W7qJC8kXbW","DfpdH8o5","W4FdV8ohyW","fSkYWPhdLYldH2pdRa","WQyNtSoLW4pdRmknrW","W5lcOmohWONcQq","WQXUuYJcNW","EHFdJSkbhmkmWOZdLN5O","W7dcI8of","WPaTW6hcPsXs","WObQDG4","W5WXhtiehqlcUCoTWRa","CtmEECoc","WQxcQCo+WONcNrmi","gmoZjG","W63cNCoCWPZcSNdcR29eW5W","WQ0TaCorW5xdPG","WRG0a8ozW4RdSmkIW6WADq","WQ44eSoeW43dPG","E8o7WQlcPve","W7ZdSKhdTMu","WRn1mX5U","x8oxkSk5ia","W4FdUCoa","W5xdUmocC3O","W4hdHNhdI1y","W43dHSoyth8","WO8ayITJs8kdsNPq","WOqJWQlcScvjW6pcJL4C","kY3cTcG","W7dcJSouWQxcShFcTa","W6r/b8o+W5BdPSkMW5K","W7W8W5dcJxVdMwhdGq","mSkMvbpcHG7cGtjiW6G","WRxcQCo2WONcRsuCtMNdTq","w8oEWOlcO0e","AmkVW4pdQCk+WQjQlG","WPHfofi","b8ksW7/cINFdMK9/oxC","WQZcN8o+WOxcSq4","tHNdQ2hdQSoM","W6VcGCoLWQpcTG","jmk9W6lcNuu","kSoLhCkUWOC","cmkBW64","FsLvDCoDCam7fSoT","fCo9W5uCaW","CKJdMmoXiCkbpa","it3cUq","WRTseH5/","CCkfuq","WO1wkK/dHee","C8oCW5/cTmkFWR3dVq","WPaGW5xcPIC","y8oGpCk9","WQpdKCkDW7CM","tSkynIW","W57dSSobka","WOawpCokWQy","WPC6lmoEWOuItG","WPj3yXtcVSo1W5G","WQqXDSoir8k5","oCo4W6BdG8kNn8o1BwlcKW","WOCKW63cTeZdISksvConWPO","WPmYrSoRW4u","WReKuSoatSkVWRdcOSkika","p8ojcr/dNxG","mLtcSSo4","WQyEwrjZ","WQ4LcCov","c8kiWO7dJJ7dNq","zmobW63cVSk3WRRdTufshG","qmkWW68/kq","pCkvW6aKFZxdOSkr","Fmo4WQVcKeO4ca","W79xEGWP","W4ldR8ofyK0SW5hdIaG","netcSSoFWObsWPfaq1C","W6Syx8kt","C8ksW64Fja","WQG8f8orW4ZdSmk1W6WsBW","omoDzJ3cHa","W48qDmkvba","as4wWP/cTG","WRfip1hdRG","FmkgW7uMiW","qxVcGCogzv9RW5pcPhu","w8k/W54","WONcS8o0WPJcKa","WR/dOCktW4yS","FSksvSkoWOS","WO1Eka","FGVdJmkbgmkmW7W","BtqEzSkEFH86pmo7","WRJdTCkMW4SS","WPj6CbdcVSoo","CSkfxSkCWOSbWO4","W5hdImo8xNq","lCoUrJpcLHpcHsnyW4K","W6RdVfJdSx0","gmobgSkHWOS","nJmi","W5WNcsGHeqxcJG","AZmx","smk6W4eqmSkTWPa","DZdcVKZdKCoFWQG","nSoqabtdI2JdNseQWRa","bGu5WOtcSa","sSkxW5GZda","WO4hBc0","DeddNmoZg8kC","ztdcP2ZdNG","WQfseInZ","lSohdCkZ","W5xdV8obyG","WOaGjmoAWOu","zfpdH8oIgW","v8kBgWVdPq","bWy5WPZcSW","WOHJW6dcVr/dKSklv8ktWPO","nmknW703","oK/cRCk/WOvDWOb8rhS","n8o+W67dTCk3WOfj","W6OXW4lcKgddIfldKhFdOW","W6ZdS3W","BXRdJCka","kCoAW5xcUSoeW4rEW7uOnW","jJhcTIxcG8oIsWJdNCoq","iwtdM8kzjtpcN8kmWOJcMG","vSoeW7JcSmkA","W4rSrIW8","mZOO","gSovW4/dOmk/","WPuIW5lcPqtdGSkqxG","WR5+WOtdIsFcMdZcLhJdL8oaWOKWfq","AmogW6JcO8kYWRxdOa","WPqRW6NcQa","WP/dOSkA","aYyG","lf/cImoyx8oyWPddHgjodK8","D8oWWRpcLN0","BqRdJCkyaCkhWQddHW","W6NdVMhdOa","trddI0ZdNq","evpcNmo7WRO","WOKAAG","zdhcPxe","dImJWPVcMa","W4JdUmoDjq","kCoSw8odW6nPt8o8ymoR","hh/dVmkWhq","d8odddxdGa","CCo0WQK","pmk4WQRdSYu","m8oxWOpcR8o3W4bgW7iTnG","Amo0WRtcMMaJd8olWQ/cLW","bMxdL8kxoq","W6GqqSkCleG","AfxdMSoKdCosD8kBWPxcQq","WRGkzaLr","l8oWW7JdLCoT","qby1E8oH","W7ZdPwtdIhC","WQ48h8ozW4W","EsSs","WPf+CbxcVG","WPHbpY5j","W7lcL8oHWQlcJa","WPJdV8kzW7a","WRWOaCozW47dSmo+W4vbna","W6VcNCovWOxcRhtcUh5oW4C","WPLscvldMG","WRy/cGjQDSo+W5ldRv0","v8o/W4KcbW","xSo4W40","aSotymogW7C","W5e9gsSfqL7dIq","nSoiWRlcRmo/","jd06WPBcQYL2","W6mLWOJcJMddHhNdGq","FSoOi8kXoG","gXb5","ECk7beZdHuJcOYzzW4ympq","WPeSW4lcUHu","Ce3dH8oNcG","WOW3lmoiWOuzwq","W6mGpYnUBmozW4O","ymogW5RcUmkNWRO","y03dH8oXemkCb8oDWOy","hmoAW4xdK8oV","W5BdPCoaFW","gmk7DSoBjG","EsSsnmovDG0GlCo7","WPe8jmou","W7auuCkzjeKa","WO4nCdzZzSkuqe5r","WPy9hZOyc14","cSkgWQ/dIqG","pmoyfrpdPNNdGruMWRa","WQm2d11DvSk4W5KdW7ax","bSotW5BdMCkC","W6pdVNJdPa","WOeMWOlcS30","WRi5AmomDCkJWRS","qY7dLfxdIa","DYxdMmkdia","WPCXW6NcUcypW7JdJ1Wz","WRmPc8oeW6FdUmkWW4eyFG","omodbH/dP2/dRt4GWRu","FI/cQwFdTSovWQW7B2C","zmkMftVdKG","W64EjriJ","W7FdImoVnCkj","iJSFWOFcHIL8bq","E8ksmd7dMa","f0flW6rU","vCoRWOtcJf0","W6/cQSojWPRcUW","n8kMW6uUyc4","C1xdNmo9emkpmCosWPS","lmkwW7OZ","pmoAgmkPWPJdG0W","WPmfCbff","oCoIxri","CSobWONcUmkhW4LiW7COFa","WPj3yXtcVSoJW5xcTa","W6ONW5e","DCkUgmkcWQnRi8kPFSoXafa","pYRcQq","fvbAW6LaW5z/yqu8","dmoBWOpcK8o8","W4/dR8or","omktW6C/qa","o8k0zCoSrslcPmkWd8ocW4zL","ttmDla","xSkyid0","w8oiW5SrkG","W7JdRxK","g27dHmkZlG","W7KDwCkElvqgWRpcT8oL","yCkHnCk1aMdcLq","oCoBwSoRW7e","uGNdTM4","h8kEW6lcIxJdM090g3W","W6v7vH4EAa","iYZcPs3cRW","WRXXfqi","pq7cRmoJWO1w","W4xcVSkuW60k","g0tcVG","k2tdGCkzvstcGSkDWP8","sCkYiGddOq","iCoIW7hdUa","WPy1WPFcVMy","vqq9ECoG","pxJdNSku","pwhdHmkpdG","g8oAxmoLW4q","W4W7aq","WOG+W4dcOWtdISkh","WOHRzWVcQa","WQu9qmoJW4NdHSkg","lmoLW6VdLmo8kmolD2lcPa","WQ8LbCovW6FdVmk1","WOjntrhcTa","W4pdPmoq","W70jqmkum14SWQpcGCoV","WQC1ASon","DSo4WRhcKeOLhSopWP7cGa","WRTJorvPySoI","p2JdNSktdZxcJSkiWRNcJq","W6jGEWuCFSkEW6SOW4W","W6xdJCohbmkp","eGejWPdcHW","W4pdSSodyLWSW5hdLqv+","lSkRBmoopW","p8o5xG","WPeNt8oUyq","WPiMCI1S","tI3dImkLpq","gmodjHVdOG","tqZdOgJdMmoNWP7dHCoHFG","Emo0WRtcGvGWgmonWPG","DvldI8oMrmkkoCohWOFdSG","o8ogfmk3","WQ05amoy","iCotaCkoWQO","W4ZdQmowoq","WODCbxddQW","WQSPaCoVW4ZdRCkLWO4sDW","WROPb8oGW5NdU8kFW5iEFG","W5KeFWRcMa","W5aaqCkrda","bSoKpmkrWRq","mmoIW7BdUa","AwVdUSoFka","EGdcOgddG8oi","WPXjo18","B8o/WQ7cJq","pmkwFmoBgWJdRmoilhO","bmo6WQ7cNmom","W7XhFcK/","hmkfW6S","p8ojcX4","lIRcQtBcUq","amksW7dcOvJdM090dxS","k8kpDmoF","j8ogdCkRWO7cSaFdNCo2W7S","W77dTM/dPa","vXldRh4","W40MitqbhqpcPCoLWQ0","W7hcJmofWPZcRq","Amo0WQpcNgC0d8oA","FI4xCCoUCb4","W788W4hcKq","wCkspZNdMCkVdmkDW6tcGa","W58GaZ8","v2dcNSovlG","W7GQlJOa","w8kMW4mD","oCkFWPpcTmoBW5K","nmo0W7pdLq","m8o9xmoCW6uHa8k2umo/","W483rCkuiW","W6S8W4hcRNG","BdusEq","WQaPDmom","WReWvq","W6BdJmoegSk+","C0NdJ8oMg8kHpa","DmoaWORcM1a","W70qvmorj1iFWRldKSoJ","k8oqEmk8WPSCWR/dSq","c8kwW7tcMX7cGW","WRDhzd7cIa","W6JdSSoxk8ku","ldCuWRNcSa","WR3dSCkYW6WH","igzJWOdcNcfGbZKX","EaRdISk4d8khWP3dG3PG","i27dImkYdYRcJ8kiWPq","WPaTW6hcTbzjW6q","WQ8PamoFW43dP8kYW5ySFW","W5pdRCoap8kznrK0WPpcOa","WRdcPCoGWPRcPWG","WQaxhSoV","BSkpvmkDWOaSWONdO1FdQq","Ft8lFCodFaKreCoN","e0rlW68","WRLUwWm","W6VcMCo9WOFcNW","WRxcL8oKWQRcSW","W47dTmotnmkanre","emoYW4/dVCk4","BtJdV8kWba","iSo/sbNcUa","WQ9OkLVdHW","k2hdJmkB","W7bGrs8kEmke","WRKqv8ojW5y","E8ketCkrWPGwW5ldRbxcOW","WOyReSoFWOGkwf8","AmkfwCkkWOSaWPxdHvpdOW","FSo0mSkSg2dcGmkV","CSotWO7cR8oaW4jvW6K8nG","jYyDWQdcMW","WRzIerf+","smk2W4qAgmk2WPDRkSo8","W5JcOCoeWRDsW73cSxPVWRe/WQqh","FCklW5yuaG","omkrEq","tSk8W6qbh8kTWPPP","WQZcJ8oBWRxcRW","W77dVhy","lSkmE8oEgta","c8oGW5VdTCo7","amkbW6lcT0BdKue","w2BcG8otoayRWPhdQNy","WPabB8oZW5S","o8oBWPFcVSo3W4rd","jZNcSa","r2dcNSoo","p0RcOmotWQK","g1vlW68","AuxdMSo8","x8kypt0","vCoBj8kHbW","jSoghmk2WO4","dGiVWQpcSG","WPKCrZzXESkBsNbr","kZVcOYxcR8oLzH3dNmoi","WQa/smogxCkVWQ3cSCkBpG","WPG0r8o9W40","WOr5zIpcRW","aSoreSkqWRW","omk5W63dOmkeWOfEcmk7dW","n8o+W7NdKG","WOa6WORcPq","gSknuCoPgW","DJRcUa","lSogW5VcSSoVWQFdReXhvq","pmoIvHNcMYBcKdjjW7S","WO9vpW","ntSOWPRcMIDnfGCU","arRcUJJcVq","lenwW4Hs","BKddG8oX","rdZcLSopiKvXW5ddR3e","vX7dJ8keiW","lCo4W7ZdG8oxmSo4","o8o4W6VdVG","WR0JCa","o8o7W6tdNSoB","WRa0smo9W4NdQW","WOuHWPdcTq","WPD9CrhcVG","W6VcNCoxWP7cU2lcS1vVW5O","WOj8wIdcKa","W4OShY0tcI7cK8o3WRS","W6y6W4y","eaNcOqVcVq","W7JcM8osWONcRwlcHh50W54","WQPvzIlcLq","ySoAW43cTa","yvtcUCo6aq","WOX9CalcRW","dvldP2/dSa","WRW1zCont8k4WQW","WPb1grv+Cq","W5G6hJirfG","WPrXAX4","umoeW6lcQCkz","gSobesRdTwS","pSovWO/cQ8oJ","FtdcR2JdHmovWQ8W","rmkbn2FdLSkHfCox","W4JdUmoiiCkZpqe0W6pcRG","ndCoWRFcTG","k8offrBdTx/dLW","gSoAsY7cKa","WP7dV8kDW6ek","FCo0WRm","ymohW4ZcJSk0WRVdSKTD","ldhcRcxcG8oZqr3dLSon","WOyXWPhcQ2SO","WQuDcmo6WRq","kmkuW4tcN14","v0FcUSoUaq","WOaZoCon","W5hdPmoBwvS","lSoBWOJcSSoG","WRCcpSoFWRK","lSkCW7OOzIJdTmkqW700","WQlcO8oXWONcSqKZsgpdQa","W6rQrauEACkpW40wW5S","W7W5W57cKgy","WOTEDZpcQq","W407bdy","WPFcR8ouWO/cSq","WQRcTmo3WOhcSq","m8oBW6tdRSo9","W5ldPCoyBKa","WR4Rb8oaW7m","eLtcSSo/W4jzWOfxxZm","W6vMramJ","WOqHWORcVMufz8kOWR5Z","CCoeW78BdKS","iSo5w8owW7C8eSkQ","WO9TzHdcVa","h1HpW650W5PmCem2","CSoqW78t","WQf1hWP+BCoVW5i","CSoaW78mbKO","WPqVo8o2W7e","qSkxCSk8WQO","oCo+uaG","uhVcO8ooaa","ox/dMmkz","oSoWWOhcKCop","WRKLrmo/W6RdPSkotSkwBa","Amo4WRhcKeO4ca","W707W53cIYG","bHaBWRJcMa","pHW5WOlcPa","oSoafq","ACo5WQBcH3ayca","WO18iSoCWOWcwu4wpq","pN3dGCkvdG","WRuJD8oatCkK","WRWkW6VcLa0","EcVcQwtdGW","nmoQqW","W4OMad4","sCkwjIG","WRCXrCoJW4NdVmkr","rNZcNSoB","WPKZW6m","lmosda","W4K8hJm","ddm/WQlcJa","WRDOhqq","i8o+W7tdTCk3WOfj","BmoIm8k9awFcS8k+lSo5","WRdcQmoZWP7cPYuyu2FdPG","W6OyrSkyhLix","iSo5w8oqW7G","DmoxW6e","A8kNWR3cL8k7y8oFzgFcPSo9iW","nKlcSSk/","fCktyCoHbG","WQmSW7lcTedcNW","f8k/WOpdLsJdOhq","oCoUuW7cLXhcScfEW6W","p8kWySoRrcddLCkog8oZW5jhhG","BWpdL8kBgG","WOWDCde","xmk8W5Srcmk2","bNJdLCk1kG","CteEoSosDHC","WQFdRCoIWP7cRq4d","qxVcGCogffvG","p2tdM8kzjs7cIq","B8kovSka","B8oIeSkCma","WOyGWOlcR3OPrSkOWQ5+","W5FdICocxei","W64AxCkvaG","WODalLtdRLXlq8kxkq","WPzAvdlcSG","pmogba/dUgG","W6VdRxRdRa","kCopfG4","WRmYvmoJW4a","x8kRW4CCh8kHWQT6hmo1","DmohW4a","WQ7dGmkNW6ic","bCk0WOhdGJ7dMK/dVsGK","W6Syq8kucq","WQ8fWPVcRhS","k2tdGCkzjs7cIq","FCoToCkRbG","W5NdS8klmmkZnqWKW5lcOW","eCkKWOFdLwldJNxdVqm9","WPHrovVdHuy","fCo9W5Pggmo8","owldVSkicc7cG8kk","lmo0W6VdLmoRm8omF2tcRq","od3cSY/cQCoKwGZdRmoh","W6VcNCobWOdcV3lcVG","W4JdR8ompa","l8oxWP/cSSoAW4HeW7q","WPFcPSogWQJcQG","WO3cQSktyCoQAurHW5RcNGldQduM","lZtcPttcUq","WPPxzfVdHfXesSoxma","WQz2rrZcSq","WPaTW6hcTbzfW7JcLLqh","W5OKWPhcSNyJpSkGWRz/","e8oYW6pdOSknWPO","WRPKdbDOoCk0WO7dUf4","AIiDyCocFa","n8ocWPFcJCo7","W60dxa","C0tdICo5g8kglmoh","xdhcUK/dGG","WRdcTmoZWP7cTGK7vxJdQW","W4evvCkpnG","pSoYW6NdG8o7kmodANNcPW","WP4nCc1lDCkdrNK","W5JcV8kxW6ChWQBdVvbbW78","W79/FqqF","W7NdSh7dPfO","iuJcSmo1W4XBWPToghW","BmoXimk0g3FcJCk+kmo9","xxtcMa","WP4nv8ovW64","p8kgzSoihZNdQCoe","imoTw8oB","omo0W74","lmoscq","B8oJWQS","rWJdK2/dUSoRWP3dSmk8Fa","DsiFFCoqsH8/dCoS","l1ldNmo3uCkApCoqWOVcRa","D8omW6KFda","BSofW4ZcV8kgWR3dTuSChq","jZ3cSZpcVCoXxa","WPmbWRpcT3q","W6vQvHGiC8k8W4K7W54","EmkjumkkWPq","W5xdVSosEvO6W5NdIbH7","WRHNDG3cNq","AHlcSSoEWOXlWOnj","BSoiWRXXiw7dUmkVW7aMiNS","uSk2W5yrcmk2WOC","W5COad4","A8oMWQBcSvS","dKBdOSkjhq","WPiOu8oItq","s8ofWRhcNfm","W5ecbJuL","WRDOca5PzSoeW5xdSem","osZcSINcSSoX","WQqWrCo4W57dQSkbx8oMFq","BmoQe8kHbG","fSokdCkWWRS","cCklW6u","i8oBd8k+WQldVLRcK8o5W7G","odhcTIxcG8o/xq","FSkbs8kz","bCkIWPBdJ2ldNgpdRdu8","jIyPWPxcNtG","a03cH8oAWOa","WOldPmkcW7q","W7hcJmofWPZcRsVdTcv6W4u","W4/dRCojomkR","wc7dKxZdIW","WQqhBCouW4y","pwldNSki","aSk+WOZdGW","g8ooDIZcKW","pmkWaCkaixNcOmkn","ktFcPcNcSSoXzH3dKSoq","WQy1ymoawmkVWRZcHG","WPmzBIfC","WOWFkfVdHfLfr8oBlG","lSouW77dKCoI","W6/cISoLWO/cMG","W4eJx8k7jW","BSo+WPtcGwC4aSoj","jCkFWP3cTmoAW5PgW7iInG","vCoJW5BcL30","WOi7BSosW5G","medcSSoZWOO","pCosdaZdSq","DNNcS8osdW","iSo3s8ow","CYZdN3BdNW","jCo5w8os","WR01C8o2wSkMWR7cI8kLja","W6/dPMhdPhGGWPBdTSoqWO4","EGVdNCkmna","l8oxWOJcTmoDW59eW6uznW","W73dKLJdQKq","rH3dSwC","W6OEx8kj","sSkYW4ugca","j0tcQ8oGWO5zWObgAhO","BmojhmkifG","p8otc8k6WPddUq","mmo1iSkTfY/dJmkUm8o7","WPmyzJDaFCkBqd5z","WO8CyI1J","WONdV8ksW60kWQ4","W73cISoyWPRcUW","kmocjXldPG","urxdTM/dLG","AZmAymoeAG","W6RcJmodWOxcShBcSMXI","W4DLW5BdQZXUFSkBWOHGW718","WO7dOSkFW7ib","o8oaemk2","nmoVW7BdOSkj","WOiLW7tcVX3dUmkxq8ks","WQCLbSoHWOy","nCknW6WQya","WOm3W6JcOXzjW6q","n8obcb8","B8kvue7cOYRdUJabWO7dNIC","WPPvkK7dJq","WQORbCokW6G","rCkdjJNdHSo0v8oxW5tcMq","DLBcVCoKjW","vbBdKSkLoW","Amo3W4pcQmkK","DHRcN2RdHa","fvfsW79C","WRZcRKtdMwCOWRtdLG","WR52BadcTa","zK7dGSoWg8kAeCoq","vCkKW5K","WOi2W6tcVa","DIeu","zSkPW4VdN8oEeCoBta","zmoXgSk2bG","lmkmW7OV","W7ZcLSovWP/cIxJcR2i","omoUqrpcGqVcGYvZW6K","gmksCmo6oa","eCo5qCoa","WPj3yXtcVSoSW4VcTa","vetcR8oqda","WR07qa","W7BdUCkQW5VdTdC4tuBdJmoO","WPqJW6xcTbddGSkqxmkt","yIRcRN3dMCoiWQW7","WQf4grv+sSo/","av/dLmk2ma","W4a5W5FcL1pdMhNdJd7dIW","pSoHW6ZdSCok","WPRdPCkfW6W","WPT7grb9","WQC8tSoDza","CCoaW5RcUq","WOJdVSoa","WPiQW7NcMGu","WPHFjfBdU1XDqW","WOjWzG/cTCoB","wGesFCo+","hCkyW6ZcM0BdQfP0iNC","W6S7W5VcJ3FcGNVcLtdcVG","WPCQgmoPWPe","WP7dICkpW5Wt","o8oxfmkRWPhdQ1ZcL8oiW7W","gCojyCoCW4a","WOy9WPFcUa","hmkdW6hdHG","WPK0ASovW4e","WOSayI0","cSocW7/dKSog","WRq3WQdcVhG","o8ofW6NdQSkU","W5BdQ8obEeS","WO4bDtWOD8kysd5u","WOaXWRhcMvO","WQK1a8ov","dmkfW7xcKvO","E8oOnCkViNJcJCkZcmo8","W6jQwHOhESkyW40wW5y","W58Gat4Peru","WRiNsmoNW4K"];return p3=function(){return t},p3()}var H3e=async t=>{let e=Ss;return globalThis[e(547,"l5&D")]?await globalThis[e(596,"PPq4")](t):t};function CXt(){let t=Ss;return(globalThis[t(946,"L83n")]||[])[t(560,"*Ewm")](r=>r[t(1049,"6)p7")]===t(1088,"J)[o"))||{}}function Q3e(t){let e=Ss,r={KBzxa:function(n,s){return n(s)},pDoFa:function(n,s){return n||s}};return r[e(661,"6)p7")](String,r[e(1109,"J)[o")](t,""))[e(744,"fq[@")](",")[-2897+-2897*-1][e(714,"$HhF")]()}function U3e(t){let e=Ss;return{TqQSs:function(n,s){return n(s)}}[e(632,"c)HT")](Q3e,t)[e(695,"*Ewm")](/^\w+:\/\//,"")[e(872,"erUG")]("/")[-103*-87+4073*2+-17107][e(938,"Y)yb")]()}function Ss(t,e){let r=p3();return Ss=function(n,s){n=n-(-8150+-1777*-1+6753);let i=r[n];if(Ss.OXhLTJ===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h<A;h++)m+="%"+("00"+p.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(m)};let l=function(d,f){let p=[],m=0,h,A="";d=a(d);let g;for(g=0;g<256;g++)p[g]=g;for(g=0;g<256;g++)m=(m+p[g]+f.charCodeAt(g%f.length))%256,h=p[g],p[g]=p[m],p[m]=h;g=0,m=0;for(let b=0;b<d.length;b++)g=(g+1)%256,m=(m+p[g])%256,h=p[g],p[g]=p[m],p[m]=h,A+=String.fromCharCode(d.charCodeAt(b)^p[(p[g]+p[m])%256]);return A};Ss.PqeeAc=l,t=arguments,Ss.OXhLTJ=!0}let o=r[0],c=n+o,u=t[c];return u?i=u:(Ss.Lqwxjl===void 0&&(Ss.Lqwxjl=!0),i=Ss.PqeeAc(i,s),t[c]=i),i},Ss(t,e)}function TXt(t){let e=Ss,r={AcCav:function(u,l){return u(l)},aRQSV:e(887,"NEJh")+e(577,"NEJh"),MCFmQ:e(1034,"3AZo")+e(776,"66US"),KuxIP:e(433,"$HhF"),YRoFf:e(568,"p)02"),ajePD:e(1121,"yim#"),ZQxqu:function(u,l){return u(l)}},n=r[e(575,"$HhF")](String,t?.[e(729,"%T3)")]?.[e(751,"Qx%e")]?.()?.[e(559,"%sKo")]||"")[e(582,"o%qk")](),s=r[e(537,"*Ewm")](U3e,t?.[e(851,"J)[o")]?.[r[e(461,"TBbP")]]),i=s||r[e(703,"%sKo")](U3e,t?.[e(442,"Or9[")]?.[e(653,"c)HT")]);if(!i)return n;let a=r[e(977,"p@yA")](Q3e,t?.[e(1097,"]mj0")]?.[r[e(511,"o%qk")]]),o=n[e(781,"p@yA")](r[e(774,"fq[@")])?r[e(885,"tS!P")]:r[e(1020,"bizp")];return(a||r[e(795,"p@yA")](String,t?.[e(1005,"Qx%e")]||"")[e(638,"3zTb")]()||o)+e(431,"IO11")+i}function wXt(t){let e=Ss,r={zlIBP:function(n,s){return n(s)},akCyt:function(n,s){return n??s}};return Nv.default[e(1092,"5v4*")][e(506,"t06k")][e(476,"9)DA")](Nv.default[e(438,"bUVl")](r[e(1118,"9sdl")](String,r[e(861,"s6oL")](t,""))))[e(802,"fq[@")]()}function q3e(t,e=11242+109*-103){let r=Ss,n={QTviF:function(i,a){return i(a)},PQuwD:function(i,a){return i||a},vbswe:function(i,a){return i<a},QBvMS:function(i,a){return i-a},gcMpI:function(i,a,o){return i(a,o)},RFNYJ:function(i){return i()}},s=n[r(856,"bizp")](String,n[r(1108,"bUVl")](t,""))[r(397,"bizp")](/x-oss-expires=(\d+)/i);return s?n[r(672,"Y3Ac")](n[r(536,"PPq4")](n[r(1100,"!pe*")](parseInt,s[-32*-167+-2548+-1*2795],1*115+315*1+-70*6),n[r(681,"3zTb")](lu.default)[r(779,"]mj0")]()),e):!1}function G3e(t){let e=Ss,r={ToFcs:e(685,"x(]*"),qzqIC:function(s,i){return s+i},VZDxd:function(s){return s()}};if(!t?.[e(710,"66US")+"en"])return{};let n={...t};return n[e(1068,"t06k")]||=(n[e(966,"%sKo")]||r[e(715,"66US")])+" "+n[e(793,"IO11")+"en"],!n[e(523,"tS!P")+"e"]&&n[e(1012,"$HhF")]&&(n[e(726,")3Hd")+"e"]=r[e(419,"!pe*")](r[e(430,"%T3)")](lu.default)[e(752,"3zTb")](),n[e(604,"o%qk")])),n}function RXt(t){let e=Ss,r={BrZkX:function(n,s){return n!==s},sBjDh:e(951,"mS5d"),pMMkp:e(590,"%sKo"),BFiiO:e(973,"%sKo")};return t?r[e(401,"t06k")](typeof Buffer,r[e(1113,"x(]*")])?JSON[e(979,"!8I4")](Buffer[e(787,"!pe*")](t,r[e(900,"!pe*")])[e(628,"J)[o")](r[e(965,"o%qk")])):JSON[e(417,"c)HT")](Nv.default[e(522,"!8I4")][e(767,"mS5d")][e(903,"J)[o")](t)[e(470,"bUVl")](Nv.default[e(483,"4%*V")][e(491,"o%qk")])):null}function K3e(t){let e=Ss,r={XptYv:e(642,"9sdl")},n=/https:\/\/www\.alipan\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?|https:\/\/www\.aliyundrive\.com\/s\/([^\\/]+)(\/folder\/([^\\/]+))?/,s=n[e(757,"x(]*")](t);return s?{shareId:s[1259*-1+1492+-232]||s[-1900+-2*-952],folderId:s[-128+300*14+-1*4069]||s[-5840+1*8081+-2235]||r[e(766,"$fs8")]}:null}var NXt=Ut(564,"7oLE")+Ut(1120,"mS5d")+Ut(775,"o%qk"),OXt=Ut(406,"L83n")+Ut(1046,"o%qk")+Ut(980,"3rkV")+Ut(967,"4%*V"),p0={},PXt=[Ut(488,"erUG"),Ut(1024,"!8I4"),Ut(630,"!pe*"),Ut(1104,"o%qk"),Ut(541,"7oLE")],Ov=Ut(606,"O6A$"),V3e=Ut(1112,"#(BC"),z3e=Ut(1107,"*Ewm")+Ut(935,"Y3Ac"),j3e=Ut(689,"*Ewm"),sn={},m0={},Ux=null,Al=null,ZQ="",kh="",m3={"User-Agent":l0,Referer:Ut(415,"9)DA")+Ut(664,"3zTb")+Ut(692,"9sdl")};async function Pv(t){let e=Ut,r={djnxS:function(a,o){return a(o)},wBOUZ:function(a,o){return a(o)},AOEVT:function(a,o){return a(o)}};Ux=t[e(1096,"Y3Ac")].db;let n=t[e(701,"p@yA")][e(631,"$fs8")]?.[e(1045,"%sKo")]||{},s=await Ux[e(1099,"3AZo")+e(786,"*Ewm")](Ov,{});ZQ=r[e(489,"yim#")](wXt,n[e(718,"!8I4")]),kh=r[e(1098,"!8I4")](String,s[V3e]||"")[e(938,"Y)yb")]()||r[e(702,"Or9[")](String,s[ZQ]||"")[e(918,"7oLE")]()||r[e(669,"c)HT")](String,n[e(697,"t2gG")]||"")[e(1002,"9)DA")]();let i=await Ux[e(1078,"t06k")+e(1052,"5v4*")](Ov+"/"+z3e,{});m0=r[e(1036,"bizp")](G3e,i)}async function kXt(t){let e=Ut,r={RVzaR:function(n,s){return n(s)},GiGzj:function(n,s){return n||s}};kh=r[e(1023,"s6oL")](String,r[e(812,"Y3Ac")](t,""))[e(806,"erUG")](),kh&&(await Ux[e(542,"l5&D")](Ov+"/"+V3e,kh),await Ux[e(671,"p@yA")](Ov+"/"+ZQ,kh))}async function DXt(t){let e=Ut;m0={kuWmr:function(n,s){return n(s)}}[e(1e3,"#(BC")](G3e,t),m0[e(824,"c)HT")+"en"]&&await Ux[e(957,"t2gG")](Ov+"/"+z3e,m0)}async function h3(t,e,r,n){let s=Ut,i={htzeL:function(u,l){return u||l},Eggzi:s(1093,"PPq4"),KXvew:function(u,l){return u||l},PlAJb:function(u,l){return u===l},lRCLF:function(u,l){return u>l},ZvZKu:function(u,l){return u(l)},jAuUr:function(u,l,d,f,p){return u(l,d,f,p)},IVEJI:function(u,l){return u-l}};r=i[s(612,"3AZo")](r,{});let a=t[s(822,"66US")](i[s(1065,"Qx%e")]);Object[s(686,"$HhF")](r,m3),a&&sn[s(1030,"6)p7")]&&Object[s(745,"Mwi6")](r,{Authorization:sn[s(576,"J)[o")]});let o=await he[s(875,"fq[@")](NXt+"/"+t,e,{headers:r})[s(510,"p@yA")](u=>u[s(833,"$fs8")]||{status:500,data:{}}),c=i[s(1006,"p)02")](n,-4789*-1+3240+-8026);return i[s(869,"t06k")](o[s(914,"o%qk")],-15*-13+2380+-2146)&&i[s(1001,"tS!P")](c,2*185+-6*-1123+-1777*4)?(await i[s(1069,"3rkV")](Qd,-163*-17+3*1769+1*-7078),i[s(713,"Y3Ac")](h3,t,e,r,i[s(550,"7oLE")](c,8210+1*-973+-67*108))):o[s(901,"TBbP")]||{}}async function Ac(t,e,r,n){let s=Ut,i={EDJGl:function(c,u){return c||u},eWduz:function(c,u){return c||u},nrdvg:function(c,u){return c===u},vkmhC:function(c,u){return c>u},jRkzF:function(c,u){return c(u)},QqKxY:function(c,u,l,d,f){return c(u,l,d,f)},vWvFq:function(c,u){return c-u}};r=i[s(929,"3zTb")](r,{}),m0[s(1011,"Y3Ac")]&&Object[s(444,"MeVL")](r,{Authorization:m0[s(551,"pLbL")]});let a=await he[s(788,"*Ewm")](OXt+"/"+t,e,{headers:r})[s(762,"L83n")](c=>c[s(398,"PPq4")]||{status:500,data:{}}),o=i[s(1044,"7oLE")](n,5534+1*8516+-14047);return i[s(725,"Y3Ac")](a[s(501,"O6A$")],1018*5+342*15+-9791)&&i[s(783,"tS!P")](o,1385+3326*3+1*-11363)?(await i[s(978,"pLbL")](Qd,1e3),i[s(688,"MeVL")](Ac,t,e,r,i[s(608,"66US")](o,705*-5+-4531+-8057*-1))):a[s(866,"]mj0")]||{}}async function eG(){let t=Ut,e={RcqFW:function(r,n){return r<n},vrTcD:function(r,n){return r-n},IAksB:function(r){return r()},wnhRu:t(634,"3zTb")+t(383,"NEJh")+t(1087,"3zTb")+t(826,"t2gG")+t(828,"!pe*"),cROwo:t(619,"]mj0")+t(409,"bizp"),XVcPF:function(r,n){return r===n},qbBhr:function(r,n){return r(n)}};if(kh&&(!sn[t(923,"Y)yb")]||e[t(387,"O6A$")](e[t(884,"p)02")](sn[t(1008,"PPq4")+"e"],e[t(1056,"t2gG")](lu.default)[t(654,"p@yA")]()),1*-7925+-4224+1*12269))){let r=await he[t(477,"yim#")](e[t(706,"!8I4")],{refresh_token:kh,grant_type:e[t(521,"Y3Ac")]},{headers:m3})[t(890,"t06k")](n=>n[t(1004,"IO11")]||{status:500,data:{}});e[t(645,"bUVl")](r[t(1019,"l5&D")],-461*1+-1095+4*439)&&(sn=r[t(399,"!pe*")],sn[t(790,"J)[o")+"e"]=e[t(912,"*Ewm")](lu.default,r[t(399,"!pe*")][t(523,"tS!P")+"e"])[t(450,"Or9[")](),sn[t(640,")3Hd")]=sn[t(991,"Mwi6")]+" "+sn[t(759,"s6oL")+"en"],await e[t(428,"5v4*")](kXt,sn[t(673,"p)02")+t(1051,"]mj0")]))}}async function Y3e(){let t=Ut,e={KBMpW:function(r,n){return r>=n},jHKCT:function(r,n){return r-n},KUJdV:function(r){return r()},rRLEj:function(r,n){return r<n},KJdDN:function(r,n){return r-n},XQNoP:function(r){return r()},HXvDB:t(871,"p)02")+t(743,"Or9[")+t(811,"5v4*")+t(429,"x(]*"),MqQND:t(1074,"yim#"),QPZpA:t(496,"tS!P")+"o",SPssY:t(734,"fq[@"),biorz:t(928,"9sdl")+t(798,"erUG")+t(829,"t06k")+t(867,"IO11")+t(621,"NEJh"),iBjyd:t(540,"9)DA")+t(1064,"mS5d")+t(588,"tS!P")+t(436,"4%*V"),qrQSo:t(445,"9)DA"),ZmVkI:t(860,"Qx%e")+"ri",edcdZ:t(909,"3rkV"),hKknS:t(680,"MeVL"),UXccV:t(830,"s6oL")+t(504,"t06k"),WqQaZ:t(720,"t06k")+t(670,"Qx%e"),srqxT:t(816,"x(]*")+t(652,"pLbL")+t(1029,"Y)yb")+t(882,"5v4*"),ryTOh:t(675,"$HhF")+t(907,"s6oL")+t(546,"l5&D")+t(992,"MeVL"),DbgPW:function(r,n){return r(n)},apfWB:t(815,"pLbL"),ZQaKa:function(r,n){return r+n},LYdJb:function(r){return r()},PDWKl:function(r){return r()},jplVS:function(r,n){return r(n)},aWdFA:t(955,"4%*V")+t(738,"4%*V")};if(!(m0[t(465,"*Ewm")+"en"]&&e[t(389,"pLbL")](e[t(558,"O6A$")](m0[t(531,"!8I4")+"e"],e[t(469,"erUG")](lu.default)[t(403,"#(BC")]()),-107*-80+9205+-17645))&&((!sn[t(834,"L83n")]||e[t(874,"Qx%e")](e[t(679,"Y3Ac")](sn[t(858,"x(]*")+"e"],e[t(418,"o%qk")](lu.default)[t(566,"TBbP")]()),-1*-9445+19*398+-16947))&&await e[t(971,"L83n")](eG),!!sn[t(1114,"7oLE")]))try{let r=await he[t(995,"*Ewm")](e[t(832,"Qx%e")],{params:{driver:e[t(1007,"Y3Ac")],driver_txt:e[t(894,"TBbP")],server_use:e[t(708,"Or9[")]}}),n=new URL(r[t(895,"L83n")]?.[t(405,"erUG")]),s=await he[t(447,"!8I4")](e[t(846,"]mj0")],{authorize:1,scope:e[t(1050,"x(]*")]},{params:{client_id:n[t(803,"c)HT")+"ms"][t(659,"5v4*")](e[t(622,"bUVl")]),redirect_uri:n[t(845,"O6A$")+"ms"][t(835,"c)HT")](e[t(493,"%T3)")]),scope:e[t(931,"MeVL")],state:n[t(769,"3AZo")+"ms"][t(656,"#(BC")](e[t(898,"PPq4")]),response_type:e[t(857,"$HhF")]},headers:{...m3,"Content-Type":e[t(448,"$fs8")],Authorization:sn[t(1003,"!8I4")]}}),i=s[t(705,"Or9[")]?.[t(427,"p)02")+"i"],a=i?.[t(472,")3Hd")](/code=([a-zA-Z0-9]+)/)?.[147*-10+9249+-2*3889];if(!a)throw new Error(e[t(386,"MeVL")]);let o=await he[t(584,"Qx%e")](e[t(1025,"!8I4")],{params:{code:a},headers:{Cookie:e[t(1042,"p)02")],"User-Agent":l0},maxRedirects:0,validateStatus:l=>l>=5862+-19*298&&l<-1*2813+-245*26+-7*-1369}),c=o[t(684,"Mwi6")]?.[t(691,"#(BC")]?.[t(712,"4%*V")]("#")[8134+55*-105+-2358],u=e[t(416,"3rkV")](RXt,c);if(u?.[t(647,"6)p7")+"en"]){let l={...u,auth:(u[t(603,"]mj0")]||e[t(956,"c)HT")])+" "+u[t(678,"p)02")+"en"],expire_time:u[t(1018,"l5&D")]?e[t(677,"6)p7")](e[t(1026,"!pe*")](lu.default)[t(687,"Y3Ac")](),u[t(455,"*Ewm")]):e[t(585,"erUG")](e[t(739,"bUVl")](lu.default)[t(654,"p@yA")](),7200)};await e[t(818,"NEJh")](DXt,l)}}catch(r){console[t(983,"%sKo")](e[t(993,"p@yA")],r[t(843,"6)p7")])}}async function BXt(){let t=Ut,e={UqeBH:function(n,s,i){return n(s,i)},XwMDD:t(784,"5v4*")+t(1009,"p)02"),RePOH:function(n,s){return n>s},ccXFK:t(736,"Qx%e")+t(810,"6)p7")};if(!Al||!sn[t(917,"t2gG")]?.[t(709,"yim#")+t(1105,"J)[o")])return;let r=await e[t(945,"$fs8")](Ac,e[t(731,"]mj0")],{drive_id:sn[t(911,"p)02")][t(944,"3AZo")+t(778,"fq[@")],parent_file_id:Al,limit:100});if(Array[t(516,"mS5d")](r[t(747,"#(BC")])&&e[t(1095,"t2gG")](r[t(716,"66US")][t(1041,"TBbP")],2*-4411+1*-78+-50*-178))for(let n of r[t(1013,"o%qk")])await e[t(1090,"t2gG")](Ac,e[t(674,"Y3Ac")],{drive_id:sn[t(1117,"9)DA")][t(711,"O6A$")+t(666,"c)HT")],file_id:n[t(1014,"66US")]})}async function LXt(){let t=Ut,e={oqmxZ:function(o,c,u){return o(c,u)},kLkGQ:t(1094,"o%qk")+t(633,"%sKo"),fUPjz:t(908,"3rkV")+t(668,"Mwi6"),olNJC:t(902,"tS!P"),dUMMJ:t(1081,"l5&D"),qCqWl:t(602,"Or9["),PQyRd:function(o,c,u){return o(c,u)},qEtwj:t(466,"#(BC")+t(926,"5v4*"),nNqtj:t(817,"o%qk"),xCuXa:t(998,"TBbP")};if(!sn[t(1077,"!8I4")])return null;if(Al)return Al;let r=await e[t(933,")3Hd")](Ac,e[t(1027,"!8I4")],{});if(!r[t(624,"J)[o")+t(865,"6)p7")])return null;sn[t(891,"*Ewm")]=r;let n=r[t(452,"3rkV")+t(761,"tS!P")],s=await e[t(881,"3rkV")](Ac,e[t(844,"p@yA")],{drive_id:n,parent_file_id:e[t(545,"5v4*")],limit:100,order_by:e[t(704,"3zTb")],order_direction:e[t(782,"!8I4")]}),i=Array[t(392,"MeVL")](s[t(747,"#(BC")])?s[t(644,"7oLE")][t(573,"$HhF")](o=>o[t(458,"!pe*")]===j3e):null;return i?.[t(796,"fq[@")]?(Al=i[t(570,"o%qk")],Al):(Al=(await e[t(696,"3AZo")](Ac,e[t(883,"c)HT")],{check_name_mode:e[t(535,"3rkV")],drive_id:n,name:j3e,parent_file_id:e[t(400,"TBbP")],type:e[t(498,"L83n")]}))[t(1075,"bizp")]||null,Al)}async function tG(){let t=Ut,e={omsHC:function(r){return r()},YPbUP:function(r){return r()},ZgsQx:function(r,n,s){return r(n,s)},XZwyu:t(799,"IO11")+t(1031,"p)02")};if(await e[t(479,"3rkV")](eG),await e[t(529,"erUG")](Y3e),!sn[t(623,"x(]*")]?.[t(527,"fq[@")+t(435,"bUVl")]){let r=await e[t(756,"bUVl")](Ac,e[t(643,"s6oL")],{});r[t(709,"yim#")+t(777,"3zTb")]&&(sn[t(561,"6)p7")]=r)}return sn[t(574,"3zTb")]?.[t(412,"bizp")+t(609,"erUG")]||""}async function MXt(t){let e=Ut,r={lJnHu:function(i){return i()},wEVTi:function(i,a){return i||a},vRxve:function(i,a,o){return i(a,o)},CwKMf:e(842,"MeVL")+e(1072,"MeVL")+e(395,"bUVl")},n=await r[e(717,"c)HT")](tG);if(r[e(785,"Y3Ac")](!n,!t))return null;let s=await r[e(474,"p)02")](Ac,r[e(921,"Or9[")],{file_id:t,drive_id:n});return s?.[e(533,"3AZo")]?s:null}async function WXt(t){let e=Ut,r={iJTKV:function(a){return a()},JNfED:function(a,o){return a||o},LRyJJ:function(a,o,c){return a(o,c)},wgvzP:e(486,")3Hd")+e(838,"TBbP")+e(984,"s6oL")+"fo",iXMfB:e(385,"fq[@")+e(910,"t2gG"),sxUEq:e(548,"5v4*")},n=await r[e(552,"9)DA")](tG);if(r[e(746,"Y)yb")](!n,!t))return null;let s=await r[e(954,"fq[@")](Ac,r[e(927,"l5&D")],{file_id:t,drive_id:n,category:r[e(1076,"O6A$")],url_expire_sec:r[e(968,"Or9[")]}),i=s?.[e(658,"3AZo")+e(562,"%sKo")+e(939,"o%qk")];return i?.[e(722,"p@yA")+e(1071,"IO11")]??i?.[e(384,"6)p7")+e(879,"6)p7")+e(475,"yim#")]??null}async function J3e(t,e=Ut(1110,"3rkV"),r=""){let n=Ut,s={paCkc:function(o,c){return o(c)},Xwohl:function(o){return o()},OzCyH:function(o,c,u){return o(c,u)},KhzkC:n(990,"Y3Ac")+n(676,"4%*V"),FxWKg:function(o,c){return o||c},IQGrg:n(425,"t2gG"),TnOCt:n(663,"9)DA"),tYyXw:n(949,"3rkV"),koPNR:function(o,c){return o||c},TorzK:function(o,c){return o(c)}};await s[n(440,"mS5d")](Pv,t);let i=await s[n(404,"bUVl")](tG);if(!i)return{items:[],next_marker:""};let a=await s[n(473,"bizp")](Ac,s[n(413,"fq[@")],{drive_id:i,parent_file_id:s[n(855,"Mwi6")](e,s[n(467,"9sdl")]),limit:200,order_by:s[n(889,"Qx%e")],order_direction:s[n(969,"t2gG")],marker:s[n(424,"p)02")](r,"")});return{items:Array[n(526,"x(]*")](a?.[n(922,"yim#")])?a[n(517,"Y3Ac")]:[],next_marker:s[n(592,"erUG")](String,a?.[n(464,"l5&D")+"r"]||""),drive_id:i}}async function X3e(t){let e=Ut,r={Ikawf:function(n,s){return n<s},dEpIT:function(n,s){return n-s},WFuib:function(n){return n()},FTNbw:function(n,s,i){return n(s,i)},zRTzU:e(595,"bUVl")+e(1122,"t06k")+e(699,"MeVL"),DPQff:function(n,s){return n(s)}};if(!p0[t[e(1060,"Or9[")]]||r[e(958,"x(]*")](r[e(508,"9sdl")](p0[t[e(518,"Qx%e")]][e(380,"4%*V")+"e"],r[e(580,"tS!P")](lu.default)[e(555,"bizp")]()),120)){delete p0[t[e(1061,"Y3Ac")]];let n=await r[e(635,"Qx%e")](h3,r[e(873,"TBbP")],{share_id:t[e(586,"9)DA")],share_pwd:t[e(947,"Y3Ac")]||""});n[e(380,"4%*V")+"e"]&&(n[e(858,"x(]*")+"e"]=r[e(792,"t2gG")](lu.default,n[e(790,"J)[o")+"e"])[e(566,"TBbP")](),p0[t[e(953,"x(]*")]]=n)}}async function $Xt(t){let e=Ut,r={GXaao:function(o,c,u,l){return o(c,u,l)},KylMU:e(617,"]mj0")+e(1063,"c)HT")+e(618,"Or9["),sgxKs:e(852,"$HhF"),aHLPd:e(1015,"*Ewm"),MnvFr:function(o,c){return o||c},sisiH:function(o,c){return o===c},VXfXS:e(773,"J)[o"),nQMnE:e(999,"IO11"),Ifanm:e(841,"%T3)"),WnDQk:function(o,c){return o<c},bcBDB:function(o,c){return o*c},zcXJD:function(o,c,u){return o(c,u)},oEvXz:e(859,"6)p7"),cgtpK:function(o,c){return o(c)},Wsczv:function(o,c,u){return o(c,u)},gBzJg:function(o,c){return o>c}},n=r[e(794,"tS!P")](typeof t,r[e(616,"Qx%e")])?r[e(719,"l5&D")](K3e,t):t;if(!n)return[];if(await r[e(690,"NEJh")](X3e,n),!p0[n[e(768,"IO11")]])return[];let s=[],i=[],a=async(o,c,u)=>{let l=e,d=await r[l(626,"J)[o")](h3,r[l(930,"PPq4")],{share_id:o,parent_file_id:c,limit:200,order_by:r[l(962,"mS5d")],order_direction:r[l(905,"s6oL")],marker:r[l(821,"#(BC")](u,"")},{"X-Share-Token":p0[o][l(1028,"3rkV")+"n"]}),f=d[l(502,"6)p7")];if(!f)return[];if(d[l(1039,"%sKo")+"r"]){let m=await r[l(613,"5v4*")](a,o,c,d[l(411,"NEJh")+"r"]);for(let h of m)f[l(755,"$HhF")](h)}let p=[];for(let m of f)if(r[l(913,"TBbP")](m[l(583,"Mwi6")],r[l(591,"Y3Ac")]))p[l(571,"4%*V")](m);else if(r[l(437,"s6oL")](m[l(554,"5v4*")],r[l(587,"bizp")])&&r[l(707,"NEJh")](m[l(724,"L83n")],r[l(989,"MeVL")])){if(r[l(655,"$fs8")](m[l(1070,"l5&D")],r[l(694,"bUVl")](r[l(780,"s6oL")](14*-631+-2114+146*82,167*55+-1*-2167+-10328),5)))continue;m[l(1055,"s6oL")]=m[l(924,"*Ewm")][l(805,"p)02")](/玩偶哥.*【神秘的哥哥们】/g,""),s[l(382,"PPq4")](m)}else r[l(721,"O6A$")](m[l(982,"l5&D")],r[l(454,"IO11")])&&m[l(700,"6)p7")+l(480,"3AZo")]&&PXt[l(749,"$HhF")](h=>m[l(813,"Y)yb")+l(1079,"tS!P")][l(943,"p)02")](h))&&i[l(960,"MeVL")](m);for(let m of p){let h=await r[l(1073,"J)[o")](a,m[l(482,"Y3Ac")],m[l(796,"fq[@")]);for(let A of h)f[l(1038,"5v4*")](A)}return f};return await r[e(1101,"7oLE")](a,n[e(742,"bizp")],n[e(936,"9)DA")]),r[e(735,"NEJh")](i[e(1041,"TBbP")],9381+1*-4229+28*-184)&&s[e(1106,"#(BC")](o=>{let c=e,u=r[c(593,"bUVl")](ml,o,i);u[c(825,"3rkV")]&&(o[c(952,"#(BC")]=u[c(539,"bizp")][c(1111,"9)DA")])}),s}var Ph={};async function Z3e(t,e){let r=Ut,n={YxtkF:function(i){return i()},QixHT:function(i){return i()},EkDqD:function(i,a){return i(a)},cHyvO:function(i,a,o,c){return i(a,o,c)},raLkA:r(426,"l5&D")+r(507,"fq[@")};if(await n[r(1085,"5v4*")](eG),await n[r(862,"7oLE")](Y3e),await n[r(848,"Y3Ac")](LXt),!Al||!sn[r(1091,"]mj0")]?.[r(599,"l5&D")+r(520,"l5&D")])return null;if(Ph[e])return Ph[e];await n[r(487,"NEJh")](BXt);for(let i of Object[r(578,"c)HT")](Ph))delete Ph[i];if(await n[r(892,"3zTb")](X3e,{shareId:t}),!p0[t])return null;let s=await n[r(532,"$fs8")](h3,n[r(607,"p)02")],{file_id:e,share_id:t,auto_rename:!0,to_parent_file_id:Al,to_drive_id:sn[r(1117,"9)DA")][r(579,"L83n")+r(1053,"MeVL")]},{"X-Share-Token":p0[t][r(760,"66US")+"n"]});return s[r(1123,"pLbL")]?(Ph[e]=s[r(460,"Mwi6")],s[r(598,"Y)yb")]):null}async function rG(t,e,r=!0){let n=Ut,s={slJtN:function(u,l){return u===l},lkfCK:n(753,"Y)yb"),mbrdt:function(u,l){return u(l)},WaDhE:function(u,l,d){return u(l,d)},naxUW:n(600,"erUG")+n(1066,"Mwi6")+n(500,"%sKo")+"fo",WzZlB:n(525,"bizp")+n(964,"Y3Ac"),QrQLg:n(888,"IO11"),ueRDT:function(u,l){return u&&l},rVTAp:function(u,l,d,f){return u(l,d,f)}};if(s[n(959,"Mwi6")](t,s[n(639,"t06k")]))return await s[n(682,"Y3Ac")](WXt,e);let i=await s[n(594,"t2gG")](Z3e,t,e);if(!i||!sn[n(987,"Qx%e")]?.[n(804,"6)p7")+n(737,"bizp")])return null;let a=await s[n(1083,"tS!P")](Ac,s[n(543,"7oLE")],{file_id:i,drive_id:sn[n(574,"3zTb")][n(709,"yim#")+n(609,"erUG")],category:s[n(1084,"bUVl")],url_expire_sec:s[n(407,"fq[@")]}),o=a?.[n(1035,"66US")+n(896,"Mwi6")+n(831,"3zTb")],c=o?.[n(556,"$fs8")+n(1040,"66US")]??o?.[n(864,"7oLE")+n(660,"bUVl")+n(553,"#(BC")]??null;return s[n(981,"p@yA")](!c,r)?(delete Ph[e],s[n(1082,"3AZo")](rG,t,e,!1)):c}async function eBe(t,e,r=!0){let n=Ut,s={USutN:function(o,c){return o===c},Vebwm:n(937,"J)[o"),QRuoG:function(o,c){return o(c)},WWHIU:function(o,c,u){return o(c,u)},OaKDm:function(o,c,u){return o(c,u)},dusWj:n(538,"TBbP")+n(646,"3rkV")+n(863,"yim#"),IcHFI:function(o,c,u,l){return o(c,u,l)}};if(s[n(976,"c)HT")](t,s[n(471,"9sdl")]))return await s[n(1119,"bUVl")](MXt,e);let i=await s[n(468,"$HhF")](Z3e,t,e);if(!i||!sn[n(1116,"Or9[")]?.[n(899,"NEJh")+n(1048,"9)DA")])return null;let a=await s[n(974,"Qx%e")](Ac,s[n(581,"4%*V")],{file_id:i,drive_id:sn[n(911,"p)02")][n(579,"L83n")+n(758,"pLbL")]});return a[n(394,"t2gG")]?a:r?(delete Ph[e],s[n(730,"l5&D")](eBe,t,e,!1)):null}async function tBe(t){let e=Ut,r={WDTIt:function(i,a){return i(a)},YHUGd:function(i,a){return i(a)},efdEt:function(i,a){return i(a)},dDpfF:function(i,a,o){return i(a,o)},Nafla:function(i,a){return i(a)},DUEcs:e(421,"o%qk")};if(!r[e(457,"pLbL")](l3,t))return null;let n=r[e(557,"NEJh")](K3e,t);if(!n)return null;let s=await r[e(650,"Y3Ac")]($Xt,n);return s=s[e(637,"6)p7")](i=>{let a=e;return{vod_id:[i[a(482,"Y3Ac")],i[a(986,"$HhF")],i[a(620,"s6oL")]?i[a(1033,"4%*V")][a(636,"NEJh")]:""][a(667,"pLbL")]("*"),vod_name:i[a(503,"x(]*")],vod_size:i[a(565,"!pe*")]}}),r[e(1059,"Or9[")](Ps,await r[e(649,"Qx%e")](H3e,r[e(530,"bUVl")]),s)}var Oh={},Fx={};async function g3(t,e){let r=Ut,n={ZBsVT:function(m,h){return m(h)},hJfkN:function(m,h){return m!==h},JQGIR:r(381,"!pe*"),CKOug:function(m,h){return m===h},gVXsG:r(459,"p@yA"),ipJnt:function(m,h){return m(h)},VciOT:function(m,h,A){return m(h,A)},QEDPg:r(870,"t2gG"),qmTwQ:r(961,"!8I4"),gESct:r(463,"Y)yb")+r(789,"Qx%e"),TfTDh:r(449,"o%qk")+r(497,"s6oL"),IAYjI:r(569,"bizp"),Yderw:r(732,"3AZo"),FUBSN:function(m){return m()},MckKA:function(m,h,A,g,b,y,x){return m(h,A,g,b,y,x)},hHuqP:function(m,h){return m*h},kzIwW:function(m,h){return m*h}};await n[r(514,"L83n")](Pv,t);let s=t[r(906,"7oLE")][r(972,"p@yA")],i=t[r(723,"%T3)")][r(975,"3rkV")],a=t[r(1062,"Mwi6")][r(478,"7oLE")],o=t[r(414,"tS!P")][r(1067,"*Ewm")];if(n[r(462,"PPq4")](s,n[r(423,"x(]*")]))return;let c=t[r(800,"5v4*")][r(563,"$fs8")],u=t[r(1017,"l5&D")][r(388,"bUVl")];if(n[r(432,"L83n")](i,n[r(948,"3zTb")])){if(Oh[o]){let A=Oh[o][r(876,"IO11")](g=>g[r(904,"t06k")+"d"][r(648,"Mwi6")+"e"]()===c);A?.[r(763,"%T3)")]&&n[r(941,"s6oL")](q3e,A[r(494,"!pe*")])&&delete Oh[o]}!Oh[o]&&(Oh[o]=await n[r(662,")3Hd")](rG,a,o));let m=Oh[o]?.[r(876,"IO11")](A=>A[r(985,"O6A$")+"d"][r(567,"$HhF")+"e"]()===c);if(!m?.[r(837,"bizp")])return;if(!m[r(797,"s6oL")]){let A=await he[r(698,"bizp")](m[r(819,"tS!P")],{headers:{"User-Agent":l0}});m[r(441,"9)DA")]=F3e[r(422,"Y3Ac")](A[r(750,"9sdl")]);for(let g of m[r(994,"$HhF")][r(728,"x(]*")])!g[r(791,"MeVL")][r(519,"c)HT")](n[r(877,"3AZo")])&&(g[r(485,"6)p7")]=new URL(g[r(754,"*Ewm")],m[r(741,"7oLE")])[r(886,"bizp")]()),g[r(1115,"!8I4")]=g[r(402,"3rkV")],g[r(996,"O6A$")]=g[r(839,"o%qk")+r(597,"fq[@")]+r(1102,"o%qk")}if(u[r(1103,"$HhF")](n[r(1021,"!pe*")])){let A=n[r(495,"fq[@")](parseInt,u[r(805,"p)02")](n[r(1054,"mS5d")],""),10);e[r(807,"NEJh")](m[r(771,"PPq4")][r(820,"9)DA")][A][r(727,"%T3)")]);return}let h=F3e[r(915,"p)02")](m[r(513,"fq[@")]);return e[r(893,"L83n")](-263*17+-4540+-1*-9211)[r(451,"tS!P")]({"content-type":n[r(932,"#(BC")],"content-length":Buffer[r(897,"!pe*")](h)[r(390,"mS5d")]()}),h}Fx[o]?.[r(836,"*Ewm")]&&n[r(827,"O6A$")](q3e,Fx[o][r(741,"7oLE")])&&delete Fx[o],!Fx[o]&&(Fx[o]=await n[r(408,"*Ewm")](eBe,a,o));let l=Fx[o]?.[r(748,"L83n")];if(!l){e[r(1057,"9sdl")](500),e[r(524,"Mwi6")](n[r(808,"66US")]);return}if(n[r(446,"c)HT")](c,n[r(1080,"J)[o")])||n[r(854,"fq[@")](c,n[r(823,"tS!P")])){e[r(880,"Mwi6")](l);return}let d=n[r(1086,"J)[o")](CXt),f=d[r(920,"mS5d")]||27*297+-277*3+-7060,p=d[r(963,"5v4*")]||-5153*-1+12*-50+-4533;return await n[r(651,"7oLE")](Wx,t,e,l,o,m3,{chunkSize:n[r(740,"bUVl")](-6473+-8453*1+-110*-145,f),poolSize:p,timeout:n[r(434,"NEJh")](1822+1*-667+155*-1,-5406*1+-236*-16+1640)})}async function A3(t,e){let r=Ut,n={oOIYm:function(f,p){return f(p)},XoHTh:function(f,p){return f(p)},aeKyu:r(988,")3Hd"),qwaDN:function(f,p){return f+p},MJecm:function(f,p){return f+p},AeMmP:function(f,p){return f(p)},ciTmK:r(814,"p@yA"),rWAXj:function(f,p,m){return f(p,m)}};await n[r(629,"66US")](Pv,t);let s=t[r(1058,"erUG")][r(614,"fq[@")],i=t[r(393,"Y)yb")].id[r(420,"l5&D")]("*"),a=await n[r(410,"IO11")](H3e,n[r(1022,"x(]*")]);if(!s[r(847,"!8I4")](a))return;let o=n[r(853,"bizp")](n[r(1043,"%sKo")](n[r(610,"pLbL")](TXt,t),t[r(601,"66US")][r(868,"bUVl")]),n[r(733,"3zTb")]),c={parse:0,url:[]};i[-3510+-95*87+-11777*-1]&&(c[r(919,"pLbL")]={subt:o+r(657,"MeVL")+i[19*1+-3058*-3+-9193]+"/"+i[-7378+2*884+2806*2]+r(683,"TBbP")});let u=(await n[r(611,"PPq4")](rG,i[-18503+-1*-18503],i[2094+-3*-1411+6326*-1]))?.[r(1010,"Y)yb")](f=>f?.[r(627,"$fs8")])||[];Oh[i[2107+-3571*2+-1*-5036]]=u,u[r(492,"9sdl")]((f,p)=>(p[r(997,"pLbL")+r(641,"9)DA")]||9082+9082*-1)-(f[r(970,"7oLE")+r(605,")3Hd")]||1*7523+7220+-641*23));let l=c[r(515,"$HhF")],d={QHD:"\u8F6C\u7801",FHD:"\u8D85\u6E05",HD:"\u9AD8\u6E05",SD:"\u6807\u6E05",LD:"\u666E\u753B"};return u[r(615,"O6A$")](f=>{let p=r;l[p(499,"TBbP")](d[f[p(693,"erUG")+"d"]]||f[p(572,"9sdl")+"d"]),l[p(772,"3rkV")](o+p(453,"$HhF")+f[p(1016,"p)02")+"d"][p(528,"O6A$")+"e"]()+"/"+i[5525+7*-1237+3134]+"/"+i[-5*-1535+2*-3204+-1266]+p(801,"J)[o"))}),l[r(512,"fq[@")]("\u4EE3\u7406"),l[r(544,"erUG")](o+r(481,"NEJh")+i[-5006+-1*3631+8637]+"/"+i[5130*-1+-7177*1+12308]+r(505,"t2gG")),l[r(509,"pLbL")]("\u539F\u753B"),l[r(942,"yim#")](o+(r(840,"9)DA")+r(765,"t06k"))+i[-15027+-1*-15027]+"/"+i[-2711+-14*43+-1657*-2]+r(1047,"J)[o")),c}var sG=Re(Jn(),1);function du(t,e){let r=b3();return du=function(n,s){n=n-(-6519+-227*-5+-226*-25);let i=r[n];if(du.woRUlk===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h<A;h++)m+="%"+("00"+p.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(m)};let l=function(d,f){let p=[],m=0,h,A="";d=a(d);let g;for(g=0;g<256;g++)p[g]=g;for(g=0;g<256;g++)m=(m+p[g]+f.charCodeAt(g%f.length))%256,h=p[g],p[g]=p[m],p[m]=h;g=0,m=0;for(let b=0;b<d.length;b++)g=(g+1)%256,m=(m+p[g])%256,h=p[g],p[g]=p[m],p[m]=h,A+=String.fromCharCode(d.charCodeAt(b)^p[(p[g]+p[m])%256]);return A};du.ijfBCA=l,t=arguments,du.woRUlk=!0}let o=r[-1*4321+-5*-571+1466],c=n+o,u=t[c];return u?i=u:(du.tjKJVf===void 0&&(du.tjKJVf=!0),i=du.ijfBCA(i,s),t[c]=i),i},du(t,e)}var je=du;(function(t,e){let r=du,n=t();for(;;)try{if(-parseInt(r(1010,"yxuT"))/1*(-parseInt(r(629,"j*zV"))/2)+-parseInt(r(388,"Gmb("))/3*(parseInt(r(719,"oODV"))/4)+-parseInt(r(928,"LdZ7"))/5*(-parseInt(r(457,"PLva"))/6)+parseInt(r(805,"snsi"))/7+parseInt(r(459,"s]bs"))/8+-parseInt(r(1002,"wgCG"))/9*(parseInt(r(411,"LdZ7"))/10)+-parseInt(r(777,")2Yv"))/11===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(b3,-262163*1+-761*-257+-1*-323774);var cBe=async t=>{let e=du;return globalThis[e(868,"fLji")]?await globalThis[e(717,"n*PT")](t):t},FXt=[je(451,"HMO1"),je(964,"wgCG"),je(1034,"n*PT"),je(279,"s]bs"),je(356,"i#*h"),je(396,"PlI^"),je(534,"Ybex"),je(553,"uZ@5"),je(1001,"%hwX"),je(357,"2vLy"),je(294,"oODV"),je(612,"!$Ln"),je(474,"PlI^"),je(767,"%Z*W"),je(483,"Fzxt"),je(885,"3M6]")],UXt=t=>{let e=je,r={jEbGA:function(s,i){return s(i)}};if(!t)return!1;let n=r[e(921,"QWuT")](String,t)[e(531,"oODV")+"e"]();return FXt[e(520,"3M6]")](s=>n[e(705,"uZ@5")](s))};function uBe(t){let e=je,r={LtHxp:function(n,s){return n(s)},gqGvX:function(n,s){return n||s}};return r[e(631,"jMYK")](String,r[e(611,"n*PT")](t,""))[e(578,"s]bs")](",")[-7562+-199*-38][e(824,"j*zV")]()}function nBe(t){let e=je;return{gaTDe:function(n,s){return n(s)}}[e(633,"wgCG")](uBe,t)[e(976,"FlDb")](/^\w+:\/\//,"")[e(594,"wgCG")]("/")[-2333+-1*8585+-103*-106][e(270,"PLva")]()}function qXt(t){let e=je,r={jCacr:function(u,l){return u(l)},RQJuJ:function(u,l){return u(l)},RCvCL:e(874,"n&P]")+e(1068,"nTP("),PFSfj:e(919,"Ybex")+e(618,"Fzxt"),MiUat:e(1019,"nTP("),UeTbg:e(1024,"sAc1"),CLIZv:e(299,"3P7O"),Zojgv:function(u,l){return u(l)}},n=r[e(697,"PLva")](String,t?.[e(615,"smET")]?.[e(954,"lFql")]?.()?.[e(574,"Tf(V")]||"")[e(730,"q0$o")](),s=r[e(908,"Wg$5")](nBe,t?.[e(571,"M9FG")]?.[r[e(319,"%hwX")]]),i=s||r[e(842,"sAc1")](nBe,t?.[e(852,"q@6)")]?.[e(580,"5f2!")]);if(!i)return n;let a=r[e(526,"R[2q")](uBe,t?.[e(700,"lQpT")]?.[r[e(282,"fLji")]]),o=n[e(1082,"j*zV")](r[e(644,"Flqq")])?r[e(859,"s]bs")]:r[e(373,"p3E!")];return(a||r[e(537,"n*PT")](String,t?.[e(544,"lFql")]||"")[e(274,"fLji")]()||o)+e(310,"R[2q")+i}function lBe(t){let e=je,r=/https:\/\/pan\.quark\.cn\/s\/([^\\|#/]+)/,n=r[e(435,"Z[9h")](t);return n?{shareId:n[1],folderId:"0"}:null}var Za=je(421,"s]bs")+je(809,"4iKp"),qx={"User-Agent":je(648,"3P7O")+je(677,"Flqq")+je(849,"3M6]")+je(903,"Flqq")+je(514,"lQpT")+je(1e3,"FlDb")+je(759,")2Yv")+je(323,"!$Ln")+je(973,"Flqq")+je(496,"jMYK")+je(858,"q0$o")+je(848,"sAc1")+je(1046,"IwqU")+je(458,"p3E!")+je(343,"PLva")+je(481,"%e99")+je(911,"yxuT")+je(872,"M9FG")+je(997,"PLva")+"ch",Referer:je(958,"%e99")+je(762,"3ASk")},iG=null,y3=null,sBe=je(1051,"PlI^")+je(590,"3ASk")+je(975,"Ybex")+je(657,"sAc1"),yc="",zd={},iBe=je(269,"Ybex"),Dh=null;async function kv(t){let e=je;iG=t[e(455,"snsi")].db;let r=t[e(409,"p3E!")][e(685,"3ASk")][e(729,"n*PT")];yc=r[e(1070,"uZ@5")],y3=sG.default[e(794,"lQpT")][e(831,"lFql")][e(773,"Z[9h")](sG.default[e(869,"IwqU")](r[e(977,"M9FG")]))[e(586,"PlI^")]();let n=await iG[e(545,"Z[9h")+e(601,"fLji")](e(609,"3ASk"),{});n[y3]&&(yc=n[y3])}async function eo(t,e,r,n,s){let i=je,a={rqgRf:function(u,l){return u===l},SyYRB:function(u,l){return u(l)},rhuEs:i(856,"BYRA"),RpcAe:i(368,"3P7O")+i(549,"3ASk")+i(905,"3ASk"),nlObe:function(u,l){return u===l},HWzCR:function(u,l){return u||l},iqsnW:function(u,l){return u||l},zOsls:i(500,"%e99"),qSmoq:function(u,l){return u==l},KjZNS:i(348,"p3E!"),zCRHm:function(u,l){return u||l},sgsma:i(507,"i#*h"),vTTwS:i(518,"jMYK"),TxcgE:function(u,l){return u!=l},zYeIY:function(u,l){return u>l},SzeLp:function(u,l,d,f,p,m){return u(l,d,f,p,m)},sTnAy:function(u,l){return u-l}};r=a[i(428,"%e99")](r,{}),Object[i(469,"sAc1")](r,qx),Object[i(505,"oODV")](r,{Cookie:a[i(475,"yxuT")](yc,"")}),n=a[i(649,"lQpT")](n,a[i(328,"n&P]")]);let o=a[i(670,"betL")](n,a[i(513,"LdZ7")])?await he[i(687,"LdZ7")](sBe+"/"+t,{headers:r})[i(785,"smET")](u=>{let l=i;return console[l(452,"%hwX")](u),a[l(1062,"lFql")](u?.[l(690,"3M6]")]?.[l(371,"fLji")],-6*373+2001*-1+4640)&&a[l(605,"fLji")](messageToDart,{action:a[l(966,"!$Ln")],opt:{message:a[l(591,"R[2q")],duration:5}}),u[l(889,"Gmb(")]||{status:500,data:{}}}):await he[i(1012,"4iKp")](sBe+"/"+t,e,{headers:r})[i(515,"fLji")](u=>{let l=i;return console[l(497,")2Yv")](u),a[l(846,"Z[9h")](u?.[l(880,"Wg$5")]?.[l(804,"lFql")],3246+-1478*-1+393*-11)&&a[l(397,"3ASk")](messageToDart,{action:a[l(1081,"BYRA")],opt:{message:a[l(334,"%hwX")],duration:5}}),u[l(655,"Flqq")]||{status:500,data:{}}}),c=a[i(838,")2Yv")](s,-5853+183*32);if(o[i(566,"2vLy")][a[i(845,"p3E!")]]){let u=o[i(527,"Flqq")][a[i(639,"4iKp")]][i(707,"uZ@5")](a[i(548,"2vLy")])[i(364,"uZ@5")](/__puus=([^;]+)/);u&&a[i(1029,"%hwX")](yc[i(613,"lQpT")](/__puus=([^;]+)/)[-33*81+-3*-3314+-7268],u[-4717+-2*-2419+60*-2])&&(yc=yc[i(302,"jMYK")](/__puus=[^;]+/,i(939,"Ybex")+u[-278*11+4653+-1594]),await iG[i(506,"LdZ7")](i(751,"i#*h")+y3,yc))}return a[i(738,"PLva")](o[i(536,"wrcr")],-11*-174+-110*-20+-3685)&&a[i(808,"smET")](c,-1865+-7233*-1+122*-44)?(await a[i(658,"q0$o")](Qd,79*13+-8794+8767*1),await a[i(857,"Fzxt")](eo,t,e,r,n,a[i(810,"fLji")](c,-1*-4129+4*-1075+-86*-2))):o[i(460,"Z[9h")]||{}}async function aBe(){let t=je,e={PZjHB:function(n,s,i,a,o){return n(s,i,a,o)},mlQMM:t(422,"3M6]"),sxGpW:function(n,s){return n>s},aDoUC:function(n,s,i){return n(s,i)}},r=await e[t(741,"!$Ln")](eo,t(317,"M9FG")+Za+t(547,"Wg$5")+Dh+(t(1067,"LdZ7")+t(1040,"Fzxt")+t(668,"Tf(V")+t(1032,"Wg$5")+t(306,"HMO1")+t(768,"Z[9h")),{},{},e[t(355,"Flqq")]);if(r[t(899,"Tf(V")]&&r[t(743,"Ybex")][t(860,"nTP(")]&&e[t(898,"3P7O")](r[t(1009,"yxuT")][t(895,")2Yv")][t(333,"wrcr")],3567*1+1351+1*-4918)){let n=await e[t(781,"n*PT")](eo,t(667,"q@6)")+"e?"+Za,{action_type:2,filelist:r[t(351,"BYRA")][t(599,"%Z*W")][t(362,"Tf(V")](s=>s[t(630,"q@6)")]),exclude_fids:[]});console[t(560,"yxuT")](n)}}async function jXt(t){let e=je,r={WgIFC:function(s){return s()},ZEMiz:function(s,i,a,o,c){return s(i,a,o,c)},jJmBH:e(1004,"snsi"),TPDfB:function(s,i){return s===i},BjWUC:function(s){return s()},MmxWb:function(s,i,a){return s(i,a)}};if(Dh){t&&await r[e(523,"5f2!")](aBe);return}let n=await r[e(829,"LdZ7")](eo,e(1014,"Gmb(")+Za+(e(818,"j*zV")+e(695,"betL")+e(350,"j*zV")+e(945,"%Z*W")+e(957,"3P7O")+e(904,"Tf(V")+e(312,"PlI^")),{},{},r[e(788,"%e99")]);if(n[e(370,"i#*h")]&&n[e(383,"QWuT")][e(860,"nTP(")]){for(let s of n[e(1085,"3P7O")][e(365,"q0$o")])if(r[e(937,"j*zV")](s[e(692,"Z[9h")],iBe)){Dh=s[e(754,"yxuT")],await r[e(305,"PLva")](aBe);break}}if(!Dh){let s=await r[e(689,"lQpT")](eo,e(866,"QWuT")+Za,{pdir_fid:"0",file_name:iBe,dir_path:"",dir_init_lock:!1});console[e(557,"IwqU")](s),s[e(289,"5f2!")]&&s[e(661,"s]bs")][e(280,"uZ@5")]&&(Dh=s[e(287,"Fzxt")][e(772,"q0$o")])}}async function cG(t){let e=je,r={wUoDT:function(n,s,i){return n(s,i)}};if(!zd[t[e(673,")2Yv")]]){delete zd[t[e(650,"snsi")]];let n=await r[e(1074,"%Z*W")](eo,e(865,"jMYK")+e(322,"nTP(")+"n?"+Za,{pwd_id:t[e(733,"lFql")],passcode:t[e(1039,"Ybex")]||""});n[e(292,"FlDb")]&&n[e(662,"j*zV")][e(404,"wrcr")]&&(zd[t[e(839,"Flqq")]]=n[e(936,"q0$o")])}}var HXt=[je(374,"PlI^"),je(994,"LdZ7"),je(890,"yxuT"),je(714,"n&P]"),je(390,"QWuT")];async function QXt(t){let e=je,r={CeeGQ:function(c,u){return c||u},dvouh:function(c,u){return c||u},nUlKV:function(c,u,l,d,f){return c(u,l,d,f)},VeDal:function(c,u){return c(u)},kAMvF:e(573,"lQpT"),aEgYM:function(c,u){return c===u},AaILP:function(c,u){return c===u},pnzKl:function(c,u){return c===u},EaoOJ:e(393,"PlI^"),eRFRH:function(c,u){return c===u},VpoRL:e(709,"uZ@5"),UwEHB:e(369,"2vLy"),eEqqS:function(c,u){return c===u},AIINL:e(722,"s]bs"),eCjUF:function(c,u,l){return c(u,l)},puohi:function(c,u){return c&&u},DRSXj:function(c,u){return c===u},yDfBB:e(731,"LdZ7"),UekML:function(c,u){return c<u},NtpLA:function(c,u){return c*u},dqyGs:function(c,u){return c*u},uTaUe:function(c,u){return c/u},PfYgW:function(c,u){return c+u},BJIew:function(c,u,l,d,f){return c(u,l,d,f)},RkHTM:e(927,")2Yv"),AjqGq:function(c,u){return c(u)},IGhkL:function(c,u){return c(u)},bPPsW:function(c,u){return c>u}},n=r[e(1069,"oODV")](typeof t,r[e(492,"!$Ln")])?r[e(726,"QWuT")](lBe,t):t;if(!n)return[];if(await r[e(844,"%Z*W")](cG,n),!zd[n[e(465,"Gmb(")]])return[];let s=[],i=[],a=(c,u)=>c?c+"/"+u:u,o=async function(c,u,l,d){let f=e,p=r[f(909,"2vLy")](d,""),m=-564+3512*2+-6360;l=r[f(402,"!$Ln")](l,-2*-4413+-7752+-1073);let h=await r[f(621,"PlI^")](eo,f(1066,"lFql")+f(867,"Fzxt")+f(1027,"n&P]")+Za+f(1013,"Wg$5")+c+f(716,"jMYK")+r[f(414,"PLva")](encodeURIComponent,zd[c][f(446,"snsi")])+f(635,"Z[9h")+u+(f(682,"oODV")+f(825,"j*zV"))+l+f(820,"HMO1")+m+(f(339,"i#*h")+f(486,"BYRA")+f(640,"!$Ln")+f(432,"snsi")),{},{},r[f(991,")2Yv")]);if(!h[f(407,"q@6)")])return[];let A=h[f(679,"IwqU")][f(442,"!$Ln")];if(!A)return[];let g=[];for(let b of A){let y=r[f(337,"sAc1")](b[f(780,"Flqq")],!0)||r[f(478,"fLji")](b[f(902,"oODV")],1)||r[f(1054,"QWuT")](b[f(774,"Fzxt")],r[f(833,"Fzxt")])||r[f(681,"s]bs")](b[f(1065,"lQpT")],r[f(471,"wgCG")]),x=r[f(913,"wrcr")](b[f(965,"q@6)")],!0)||r[f(638,"FlDb")](b[f(742,"Z[9h")],-1*-831+80*65+-6030)||r[f(275,")2Yv")](b[f(283,"q0$o")],r[f(382,"3M6]")]),v=r[f(349,"%hwX")](UXt,b[f(441,"2vLy")]),I=r[f(850,"yxuT")](b[f(568,"M9FG")+"ry"],r[f(841,"Ybex")])||v;if(y)g[f(454,"QWuT")]({fid:b[f(378,"lFql")],path:r[f(342,"BYRA")](a,p,b[f(828,"PlI^")])});else if(r[f(708,"Gmb(")](x,I)){if(r[f(918,"lQpT")](typeof b[f(892,"Fzxt")],r[f(1078,"wgCG")])&&r[f(949,"BYRA")](b[f(524,"lQpT")],r[f(978,"HMO1")](r[f(326,"QWuT")](713*3+-6696+5581,-529*-1+-12*698+-2957*-3),1732*-3+4*1697+-1587)))continue;b[f(1033,"q0$o")]=zd[n[f(321,"FlDb")]][f(522,"lQpT")],b[f(659,"%Z*W")]=p,s[f(511,"!$Ln")](b)}else x&&HXt[f(797,"PLva")](R=>String(b[f(559,"4iKp")]||"")[f(814,"Fzxt")](R))&&i[f(813,"lQpT")](b)}if(r[f(1016,"Flqq")](l,Math[f(372,"sAc1")](r[f(626,"snsi")](h[f(798,"p3E!")][f(284,"Ybex")],m)))){let b=await r[f(316,"lFql")](o,c,u,r[f(806,"n&P]")](l,1),p);for(let y of b)A[f(721,"yxuT")](y)}for(let b of g){let y=await r[f(466,"R[2q")](o,c,b[f(360,"Tf(V")],1,b[f(792,"i#*h")]);for(let x of y)A[f(721,"yxuT")](x)}return A};return await r[e(1041,"5f2!")](o,n[e(812,"oODV")],n[e(468,"q@6)")],3789+1217*-6+3514,""),r[e(1045,"R[2q")](i[e(914,"3ASk")],4*-2351+174*29+4358)&&s[e(879,"wgCG")](c=>{let u=e;var l=r[u(504,"%Z*W")](ml,c,i);l[u(588,"M9FG")]&&(c[u(698,"betL")]=l[u(925,"%Z*W")][u(770,"n&P]")])}),s}async function uG(t){let e=je,r={NrKrX:function(s,i,a){return s(i,a)}};if(!t)return null;let n=await r[e(935,"%hwX")](eo,e(361,"Tf(V")+e(734,"Ybex")+Za,{fids:[t]});return Array[e(861,"Flqq")](n?.[e(982,"3M6]")])&&n[e(811,"3ASk")][0]?.[e(525,"n*PT")+"rl"]?n[e(1003,")2Yv")][-37*19+-1*1022+1725*1]:null}async function GXt(t){let e=je,r={glMUm:function(s,i,a){return s(i,a)},TrXxx:e(971,"M9FG")+e(315,"3ASk")+e(309,"HMO1"),SERpE:e(1077,"R[2q")};if(!t)return null;let n=await r[e(291,")2Yv")](eo,e(272,"PLva")+e(296,"3ASk")+Za,{fid:t,resolutions:r[e(985,"uZ@5")],supports:r[e(303,"Tf(V")]});return Array[e(329,"!$Ln")](n?.[e(383,"QWuT")]?.[e(766,"Fzxt")])?n[e(289,"5f2!")][e(963,"IwqU")]:null}async function dBe(t,e="0",r=7893+-5*453+-5627){let n=je,s={NROdE:function(o,c){return o(c)},swdty:function(o,c,u,l,d){return o(c,u,l,d)},GRqGW:function(o,c){return o(c)},aHVGP:function(o,c){return o||c},muVGW:n(298,"oODV")};await s[n(399,"jMYK")](kv,t);let i=Number[n(336,"snsi")](r,3779*2+-23*2+-7502)||-12987+-34*-382,a=await s[n(950,"sAc1")](eo,n(786,"FlDb")+Za+n(1058,")2Yv")+s[n(870,"Ybex")](encodeURIComponent,s[n(341,"QWuT")](e,"0"))+n(643,"3M6]")+i+(n(646,"Tf(V")+n(930,"%hwX")+n(437,"sAc1")+n(1042,"4iKp")+n(385,"3ASk")),{},{},s[n(826,"n&P]")]);return Array[n(550,"3ASk")](a?.[n(723,"Flqq")]?.[n(278,"Ybex")])?a[n(679,"IwqU")][n(910,"3M6]")]:[]}function b3(){let t=["BwrTW4Dc","cSorWRldPW","WQqKWQldPa","gmosWRTlWOS","oWJdGq","WQ9aCSkqevnrWPhcVaq","g8oaWQldP8oLzqhcGZNdJW","6l2J6kcK6ysN57+k","ChnyW5P0iq","WOvza8kBoq","WPRcG8odbri","WO5WiCkkia","sSkQrmka","WRVdSXuOWQKKWRGwWOVcLW","B3byW7LB","WP8vtSoicW","W5qnbmodbCom","WRf7C8kkW7K","WOLQx8oVFq","nSorWPLlWOldOmkjsSkSwW","vSo3WO8Bgq","kSktWOHkWPZdUmkjxmkxsW","W7FdIrRdOSk4eNPI","vh7cL0ldSG","W6NdMtGjWPiDuG","WQ/cLqtdI8kMeLK","amo2WQ/dR8oC","kmolaCkWWQz/tmk6bG","BCkkdNHPWOldQcW","W6VdKSkFfsddHq","nmkPWRa2WQ3dLJS/","WP9mAa","kmo9WRKHFCk/pCoAFSo1","qCkXya0C","vCkJW5ZcKmkC","lbtdKqXThHNcTW","rSk+WQxcUG","qmoqWPq2uq","WOnop8oe","s8k/ow5e","g03cRCoZBG8","dCoHWP5qWPVdVmov","p8oHA8kxW7u","FSoaWRiKb8or","lr5Zrea","orpdNaa","rmkSu8kn","fCoDhCk2WP8JxSkWaSkZ","WOyiECoIfmoVWRddRa","FxjEW7vN","eCojeWa","nXauW5JcIW","ghThb34","W5NdG3RdH8o/WODppW","W4BdMfldMry","qmkQw8katXK","W6r4xmoOWQVdGwq","W4RdGmkTWOGhWQ/cV2S","x0VcHwNdMGNcRCkdW7RdIG","qwHtW4DWDZFcT33cGa","W4VdH8kuWPKhW77dTsddHmkV","W6TWuSolWQa","W4tdGK3dLSo1WQfh","wflcMwddUG4","WOTiASodEGKc","kmovW5CYWRVdK8omeSk2kG","w8ofdbC","iCo6rmkF","WRZdMfldSLy","cWyYW7tcTmkGWQzX","kSo5W6CzWOW","A8oPW40llW","dXNdIsj3","W6qtWPddKH5mtCo+WQ3dRq","lCoiW5W8WRhdOG","W5HyACohvWnCWORdPL8","W6ddHK7dOq4","mCoqW4euW4hdRmkeqCkgsG","v8oAvCk9WO3dUt8","W6KtWO3dLbzf","sCoAW4GHiW","q8ksW6NcLmkW","CSo0WPaQWPldTti","W4bSWP4b","qSkIq8kv","DColW5WeebddSSoL","W5NdJvRdMmosWODf","j8k0WQtcPaO","xSk4W7pcVmkSgwS","WQ0SWRG","h8kPWOS","WOhcS8oMgIW","WQFdNelcMehdHIqaxIe","W7pdP8kGcGG","W53dNZy1WPG","ASo5WOGR","l8o9WOiR","W71MCmo/WOm","e8oUWQXTWOu","W4ldPK3dQbpcL8oEWQW7ra","aSkQW7FcUSoCcN3dS8oxaG","ACoXWOGXEW","BSowuCo+W5NcQw07amkZ","imopWQ8J","rSkEufbJWR3dJfNdImoCWQGQ","W7ZdH8kzhq","WQ94ya","W7pcQCkHWQpdGG","WRuOv8oWdG","WPOnWQxdOau","W5FdGCkbWOCh","WR7dOaHM","W6ZcTIHsW614W79A","W6VdQCkdWRKG","WRBcLbpdMG","W67cOSo+faFdJSkega","WQySWRRdOgVcTJrtjmoj","W41gw8okWPO","WQ1mD8oRAq","oSoBaCkS","ASodWQSL","W4xdMf3dG8o+W5qoDW","W71cWR8wwG","WO/cM8opsg/dHG","W5aChSouaSkEW5BdJvec","BhLoW55NkdxcSa","a3Hxa3q","CHZdJuldLh5qWQa","WRtcQmkbWRtdMmk6WO4","AaxcKa","WPrhkSoxxCkRWRNdQCoQWPK","wSoAWRWJta","BN1yW5z4pG","BMLzW58","WRZcQ8o5fwldHSktrI5B","WPrBjmooxCkA","W7PYWQXrW5i","BmkWrJ8","WQfsmCkRpa","AJnjW5H7o3NcONFdGa","AmoTW7qcjG","iCowWO9xWOVdN8kFsG","u8k6WQ/dQ8kbgmkWja1a","imoDt8o6kG","WRldHG7dJ8kZobL5laK","W6ZdMd0EWPGlx3q8Fa","W5aFWQNdMGy","C2eRW4tcKG","zSkfWOv5W6xcUSkqw8kamG","pSo5WPTdWQm","bCkZWPFcSJy","WQrMbSk4f8k6WR3dGa","WRxcJW/dHCk7mW","rCkTW7hcQCkaqJFcUmoAaG","WRtdHbr/W68","edBdSbvs","tLxcJ07dNW","wJ4AqZpcT8kGrG0DW70","DmofW5eDiaZdPCo0tW","WRldQbTV","WR7dLSkjftZdVuhdHqPt","W5hdLSkrWPmY","WR/dPrrIW5u","ySklrJmx","W7DTx8oiWQG","WPLdWQj3W48","q8kGWPtdTSox","zSoCWQWM","W7z0wCoOWQVcNwtdV8knWRm","j8odWOe5WPddMwTFWR3cKG","W4NcGuhdNmo+WPO","lW/dIszZ","emkPWPpcTXVcVG","pbldSHv0","W6JdNSkCgtS","W5ldISk4eIS","pCo7hCkaWR8","lSopbSkL","r8kNca","D1WlWOm","dmoSasmz","D8kfWRZdPSor","jGX6zwu","eb0kW5dcTa","BmkBhhPYWP/dJcdcImoN","zqJdM1C","smkfxSkDzW","EN1EW5y","s8kjCCkXEW","BmkhhhPJWRpdVsdcMmoq","WQH2mmoI","B8k2tYi0","eCoFWPPZWOhdQ8kNxSkwqa","W5xdV0/dMG","Emkxkvf2","W4FdPeRdKLpcLCkeW6y5DW","W4T/WPiWua","W6/cRSkAWRG","W5NdH8kKmb4","xhCqW7pcTq","zSkNWQZcI8kX","pSoxWP1r","tILbrq","fCkVWPG","W4KegmoQpW","W4VcMSkGWRpdNa","WPnwo8oa","dCokWOfrWO/dOW","WQr0ESkr","q8owsCk0W4pdVJvIxCoP","rmkYWQhdRW","WRFdH1BdLuK","kSoPv8oq","WPejWRtdLYG","W7/dISkGksm","qCoEuCkW","W5VdOrSZWPW","CrxdGa","lSojW4a/","W5Krvq","WOHCB8oo","oatdHW","DMHEW4C","W7DHWR0ctW","WO5MWOjwW4y","W5zOWPOmwCkgpa","pCo1WPtdTSou","W4KRCSoHtmozWOyg","W6pdP3hdOJ8","D8okW5KzbXhdJSoWsmoR","bbWB","pCo8qSofcCkd","DCkcWOOgtKhdUG","kX5u","WQeuumoMkq","f8k9W6dcQSkq","WR/dSW5OW64","DvapW5y","WPqaa8odgCkiWORcL1eg","W6TjvmorWPG","W6WvWO7dMLbtdSoGWRBcPq","W53dG0BdN8oEWODBpq","xmoHWQKhrq","lSo1FmkFW4O","vSoxrmkJWONdKZ4","W4JdNeJdLmoOW4fvnWxdLq","WQFdM0lcL2ldJdafxwC","W4RdICkHhIO","W7GxW4ZdNbepumk9WQhdTG","wKRcJeldGa","lq5CAge","EYBdNfRdJG","WQFdG2BdHvFdIcO","uujoWQhcKSkmWPTeg8oe","WQz5aSkf","vCowWP4SWRi","WOmEwSoKe8oS","xmosWRWfBa","hmobzCo3","WRH8zSkjW7mFWOOj","cKLekKO","W7X9WPKkDG","a8kFWRlcRCkhW4JdICkiW6FdTW","CCohW5WidsRdVCo4t8kL","x3pcO0ldOW","bZyvW4dcGq","WPlcOXpcMuJdJSouW71+iW","umknWQpcKSk5","WQyvCSoRhG","u8kJWRNdP8oi","s8kWW6e","W73dLc0","wmohWPSLzq","qmkCfhjJW5hcQxNdJmkP","bHqlW7q","WQHLjCkQfmoZWQVdKYVcHq","wL/cH2ZdHq/dO8kuW7VdHa","W5yhgmojemoiW5xcJK4u","WPvftCoRAa","c8k3WQZcTa","W6n4Cmk7","WOWuumoM","mSoKW4SNWRm","cmozWQi","cmozWQRdO8k+zaRcQZBdLW","a8orWRy","b8ogWQpcQ8oIBWBcTtNdLW","hSkNWOJcVXO","WOTgomor","WPnagmorsSkDWRhdPW","D8kmW7hcKCkz","5AsM5ywxxSoyFIG45Bs26l+z5P6Z","WQT8kmkO","qCkHWRxcOW","W6JcQmksWQhdG8k6","cgLkhW","W5NdVraHWOe","a8kQW7FcRq","bMvn","W7VdPGKbWRy","ebaEW7hcKSkcWQ1HyCkN","W6n1xa","W6NdLqldH8kW","BwHlW4nGpG","u8kVqCk8rG","C8k0CSk8Aa","wLRcGwq","WRvsWPLjW74","W5WngmkzemoxWPO","W5mWDmoWxCoIWOW","D8kNWOVcLCkH","W7n1W6pcSNddSafubmkAtKy","iCoAmCkIWQ0","ee/cGwJdNW","W7/dOhRdOCop","pCoDW4C0WRW","sCkWW7C","CCkgDCkK","gmoprSo3WP/dOYKOv8oK","a8k/W6NcRW","W6Srm8o2mW","ymo/WPi9WOtdJZCmW7FcQa","W6PFWQueFq","WQL0mmkS","W55DFCovtJCyWO3cTW","WQRdHKJdGK0","kmoYtmof","WPWpw8oOaSoQ","W6pcPSkQWPZdMq","eCohea83W6ddV1xdMmol","i8oYxmkB","zbhcKG","W6NdLcSnWPiM","WRNdRHHI","mmkSWRa6WRNdVX04","smkqWO/cKSk0","WRGcC8oada","W7FdQgldLHa","DCoZWPO9WPK","yCk8uq","WRBcPaBdH8k6lG","W5ZdVq8","DmomWRaMxmopg8kPpq8","cSopv8k+WPtdO3vKrSoK","edOkwxlcRHRdKmofWOG","qCkMqW","WOZcNCknWPLa","y8ogWRSoWR4","gNLcawZdHCklysWz","W6NcUCkaWQxdMCkNW5iq","kmodz8kUW48","W6VdPmkAWQOM","wCoJWOKvnW","a8ohaZ48W73dSutdTW","W5VdI3ZdPGu","W7j8z8kz","WQZcS8o9eq","WQGvw8onca","W58MDCo2","WPDAomon","h21ptJBdG8kWFtqf","WOSuq8oTmSo2WRK","W4K3zmoW","FCo2zSkfWPy","WQT8kmkOlSkYWRNdNZG","WQldMvtdGW","tMJcSgBdHG","BCk2zXqe","WPLzBmoktaSqWP3dO18","WRTPE8krW7m4","pmk1vSosdmkchmkSW7T0","amkNWORcUs3cUHK","rSk6WRNdUSozwa","WPddRsLPW7K","kCodW4Hz","A8oqWQ0REW","WR99aSoOta","tK7cHM0","WRT4zSkmW7mK","mdddOcLA","WPlcUHFcGYNcPmoUWPGasG","W7/dKI0jWPG6gsTIpq","uNKpgsxdRfZdH8kHWR3cK8k7yq","W54/zmo0","r8oUWPqIiG","WQ/cHmoliGK","W6ulWOW","CWZdNfNdKx9iWQXTDa","WRmTWRFdTYhcJd8","u3SYW5lcSG","xCk4W7FcUmkEcW","iCo8rmkEW4BdRCkFWPe","cN9qgMdcIW","nG/dLWHNiX4","i8oycdmx","W69cWQSXCG","WQvQWRFdPJxcSdjtnCkP","a8oQW6lcQq","WRpdSa9PW4S","vSo2WOO2jW","vCokvSk5","W5RcVCk6WPNdPG","omoHr8oue8kVh8oJW65Y","wMGmW6xcJq","WPFcISorW5HeW7tdULZdLCkO","WQjkv8odxa","dSkHWRJdUmoE","W6VdJ8kxgq","W4xdOLhdMrdcJmoxWQ0wBG","bYOlW6ZcT8kUW7L0iCo2","WQFcGL8","WO5TjmkIeCkFW5OfWQ1alZRcUa","W6VdKSkcfYVdJa","W6BdHgdcJ0xcGG","WRTzbCklgG","WPZdM2/dO2G","pK1MjL4","FSo1WQ8UgW","WPZcTSoMnXu","W5fPW4CesSkml8kxe1C","W73dLmkFeZW","W5bIWQypt8kak8kXxry","W7lcQSkwW7JdHSkQWO8eFCou","W5pdNmktWP0","wSk4rIG","cSoUsSoFoq","WQNcOCo6gt/dIq","l8oTgmkrWQ0","pHldGar4aG","CCoPWOiW","vSkLWRxdR8kwW5pcM8kfW6FdVG","W7/cS8keWRVdMSkMW4arv8oa","WQVcGrGzWRKxFuW","WPzAkSoxuW","WR7dHvtdNW","i8o8x8kuW4/dSmk3WPhdO8kd","sSo2WQSwWQq","o8kfWP0Za8ovtmorkae","W7JcVCkhWRBdNG","W5FdPt8oWPu","qhiiW4BcSq","WP82W5e","W5FdRfddLbO","vCkSwSkr","x8k6W4/cJSkA","yCorWRmOfSox","gCoVASo3pW","yComWQyM","WRbQWR5DW5pdUwbYhMG","E3iAW5tcTW","WPbmFCocqbOc","W7vdxSoZWQRdGq","jmkbgmk3WOrW","dCoLWQpdNSoZ","kW7dVWjOcqRcJwtdKq","v8kAW7ZcO8kW","q8otrmk2","FmotWOft","f8oWW7hdTmocWORdHmkeW6hdJc3dSae","WPWpvCo3eSo3","WO5QWQnuW4K","DqBdVeldJ2nsWQi","EmksW43cUmkI","wmo9WOSBoa","z8kvnw1l","W4SCc8owbCoxWQ7cI1ul","CSkodq","W7vUv8oUWQhdKxJdUW","W507zmoAr8ohWO8aWOL9","WQdcIq/dGW","W67cOSoTgsRdUmkgtgyt","WRTbemk6iG","77606k6F5yIN5BYK44gH6yEP576x44oZ56U45RUZ","W5eBk8owa8ofWOa","F8ouW6eKdq","Dx3cOfpdTW","xCkRWOZcUru","WRxcJGldMSk3kvnd","WQXCWQ1eW5e","W5bSWPKlbW","mSotW5q","W43dQeJdKaJcIW","WQdcKGZdI8kbm15ljG","WRBdRHS","o8oqWOPaWPBdGmko","s8k+WOhdO8oz","sCk7dLT1","bbKEW7i","W4tdHmkQWOWy","WQvWjCkPfmkUWQS","w1tcKNZdKq","W6uEWOJdObXbfCo3WQxdTq","jZGgW7NcKW","qCodWRtdPCk+CXdcVIZcLa","W6izWOpdMXPseG","W4SybSonbq","DCoaWQG","g8ocWQO","pSobiCkWWPL3vSk+","W58+kmo2ia","C8obW5mida","eZHBrwu","y8opW4Wm","jSoNumof","C8k2WRJdISoi","jSolhmkJWP92","W7KjWOddNG1samoR","W6JdICkEca","mxhcGmo/CW","wCk2W5BcRCkbexBdSa","dqir","W6GzWPhdIZjbfCoXWQO","mSozW50WWQddPa","W5eEd8kkamorWPJcKePn","q0eyW7BcOa","hSoQaaGC","s8kpvCkoCW","bSoycWGV","WRlcLaVdI8kW","cMhcUmoZBri","h8ohdG8","W4xdMSkmWP0rWRy","jSohaCkW","WQL6m8kJhCkZWRNdLGlcLq","W77cUSksWQddMSk9","eCoBw8kyW6u","FSkDd2L/WO7dRI/cMSoQ","CmoPWPaQWPW","W4JcPCkQWOFdTa","WRZdLupdNLFdJdaA","vCoNsCk2WQq","W5STC8o8ta","WPCzh8ofa8op","CmkAeuzd","WRn0WO5fW6C","W6ddNrxdG1y","F8oeWQGGgW","nmkyWO9CwKFdG8o5C8kZW4JdSq","ghFcUCoSBW4","ASonWQGQzCkZnmoHvCoV","W6JdHLVdP8o0","rmo+WQxdVmotxSoV","p8opW5a+WR0","umk4pNbl","q8kmW6NcKSkL","ufdcK3ddNG","WPWovSoIfCo2WRtdSq","WOT+WPGdf8kbnSkfuKO","b2LnfhpcJq","WR1jDCkVW7m","wSkgbqG1","FfGv","lSoDrdGYWR7dLahcQSoLka","iCo6ta","W6H5WQiysa","WQJdMuVdKNRdHZidvW","eSojmYu+","iColWOXeWPZdVCkjvW","WPWUDmo8v8oYWOWkWPKe","pCoGqSodgCoFamoIW7X0","ASk/WOddOmoz","zmoEBmkDWRW","WRxcNbpdG8k/","W6ldLK7dM0ddTJ0pxYS","oW3dRbLWbX3cOdRdKG","B8oAW4WDeu/cVSk+wmkJ","amkCr8kvtq4j","WRvasCohuq","WPWAqSoMomoLWQBdLY7cSq","smoVWRxdR8oRzvJdRMJcIW","emoJW6u","u3nqW555itFdQYVcGG","wSoYWQyaiq","WRT1DCkiW7mFWOa","A25g","atTerxBcSa","lmkqWOe8W7JcUmol","tSk3q8kewveBnIxcLG","WOPmB8owsGycWOW","WPBcNXpdRmkF","d35kbwldIG","WRrweSo3EG","pmobfSkBWOXSv8kShG","aCkJWO/cSX7cRH7cICoyWR4","bcLdtq","E8kocwK","nmoYxSkFW7ZdVSkL","sCoAs8k2WPJdSG","WPb3imo1ya","dsJdTsS","iCo6rmkFWOZdU8kZWPNdMCkc","hCoFWRtdSSkSzGZcSd3dPa","jHddOGXs","E8kkrtqN","rxhcPCk1o1pdUeCzW4e","sxlcJw3dHq","W6VdJSkmdIVdQ0m","EstdLLxdJq","Amk9sSktW40","W5SRWPldLqK","W4GjnmoXtayvWOBdVum","D8kmWPlcKmk3","oSoDW4C2","sCkfWRNdQ8ok","brPXFLK","EqFdNb98cuxdVIpdVq","rmkJWQlcP8kgW4/cLCkmW6ldVG","fCoqWOfRWOe","W5Shbmocgmod","dqVdHtxcG1O","zSo5WOu","WRHYz8ko","x8oiWQqueq","vmkMrmkerqvhFa","WQpcIrldGCkS","W5W3FmoWESodWOSoWPG","f8kNWOJcVq","C8obW7qcfrddO8osxCkI","oSo/DYS3W7NdV8o4W67dUq","W402CCoH","W4VdJKFdLa4","ECkSsI8/W6RdTSkG","ixdcGSoZxq","ESoaWR0NfSolwG","rmkvWORcGmkI","wCowWOOGzW","ACkHWOtdMCoM","CmkwjgPG","fSkOWPJcRYxcSH7cIa","WP7cL8oZgY4","gCkPWPxcSG","WRaWWRNdRs0","fCkPWPdcUbFcQq","W6iYWP1MW47dUxf0","W6NcUCkaWRRdMSk8W5uCz8oB","zv4qW5lcQW","oWddHWW","lXRdM1O","BSkAhhPT","WOj+WP4pu8kan8op","WRnGWR1JW57dUe93lhG","t8ojWOy9WPy","BLpdIsf5iZ3cIG","q8orWRBdR8k/CrdcVsRdKa","WQRdTa9V","fIftsx4","WPXiAmoh","W5D4WPOfsG","WQr4ESkDW6i+","F1hcHeldGG","W4VdHuxdH8oOWPW","WRH8zSkBW7SL","WQvWWQHbW5q","WPnDiSoi","B8oPWPW6WPldJG","ggFcQCoUyWJdT04","W7z0wCoOWQVdU3m","pCoFWOOA","t8kKWRS","gw9bhhe","W7KDWPtdMIbbeSonWRBdTq","W5pdVehdPrO","W6OGcCoqgW","hSoNWQbHWP0","WP7dQK3dV2C","W5W3FmoW","nSoFWPPe","W4K/zSoWESomWPK8WOLw","vmk2cLPo","FKqFW5pcT2fsWQXceG","W6NdKCkPWOaJ","WPNdNKVdR0C","WP1BBSojvW","WPy2ECoYtCkbWPKwWO1C","cSkXWRtcO8khW5FdMW","ySowW4WFaW","pCoRA8kZW4W","WRZdQbG","W7tdNI4","WQyYFSkjW7K4","WRVcT8o7bJ3dLq","hN5p","WRJcJSkMnbRdR2VcGe4c","BmkRrZy","W6DZxmoJ","W5zgg8oremowWPldJein","vx12qKVcTaxdRG","W6JdLcOlWPG6rx8","W7/dS8kzeIq","vSk6WRhdQ8otDCoSFvHR","zmoChW","W547y8o2","W5eVASoIyW","DqJdNvhdMh4","omooW5W6","WOfglW","W4KQySo8s8okWOmfWOq","vmkQWQxdQW","uCooWQ47hW","W78qWPtdTXm","WQZcLCozs3RcKbFdIJ4xsuJcNq","W7OoWOFdMrzy","rCoaWPerxG","WPXaBG","WRvbWQzMW7W","B8kod2LRWP8","BCkpAGKh","EeiYW5NcSw1dWQWF","chpcV8o5yG","q8owsCk0W4pdQtvNr8k6","bJm6W43cGa","W4NdUCknWQS8","W5eBj8ofaSopWPZcHG","i8oGfamD","W5WXySoqrmooWOi","vCkHWRxcQG","nZxdSbXm","D8olWR8","WRldTc5XW6G","W7BdO0RdRX4","W5ldOKVdKG","W7FdLc0AWPm1qNS","W43dKmkMWO8Z","w8oqWRnKBmkXjCoXCW","WPDECG","ed1era","WQRcNG7dICkQnq","W7zOwCoUWRVdGq","W7OTjmomWQfGW5qxW75yWP5BW6K","uq/dTLhdQG","A3ZcJ33dGq","euVcRSotuW","WRtdHHddJq","W6JcImkDWPtdJW","W5WjhSof","laNdKH96jrW","ySoqWQ8R","rCk9WRhdVCoRq8o0Fa","g19Mehi","W6jRCSo/WQi","n8oYwSkBW47dRa","oCkFgwf0WRpdVsdcMmkY","dgLx","iCoXW4SegbdcRa","WPRcKmonaH0","W5v4WOSsuW","W77dKc0A","A8kDfgu","B8kogM07","BbZdUxhdQG","WR56mCoxFq","s8kWW6NcVmkSfNNdUSoB","w8ozWRWXWO0","W7Xlymo3WRy","W415qa","amkJWPlcUa","zCkYWRRdGCo2","kHbGDfO","a8oRf8k+WRG","WOxcImopiGe","WQXMn8kKfSkY","W6ldPCk/ncm","WOTbFCouqcev","WRNdQqLPW7DeW6zcW50","e8o3WQDRWQi","ov1PbK0","WO3cMs7dU8kj","a8oPgSkVWQC","W6NdLIOwWPy","W5qYx8o3qa","emkNWOJcVXO","bMKmqJFdLCobpNvd","bSkny8oug1SAkxRdHa","WR/dHa12W48","y8ojWQ4npq","l8o2sCkEW4BdRCkL","cIRdUWXo","ymonWOWLF8k5gmoQBSo/","WPDgcmonhW","fHOEW6BcSW","C8kPWRddGSom","W4KAzCkxcmouWPZdQmo8WQK","ns1JtNy","W4hdHvRdHW","WPfAxCouvWKi","z217W5zy","WPpcVb7cGKJdKCkcWRelseRcRqq","bCoDfaK","W5DLWOSsxCokkSkAxrC","wflcMwdcJa","rCkJWRtdQCozbCoKCv9+","W7ZcUCkhWOxdL8kNW68uzCoq","e8o4WOy","fCoSWP9IWRK","qCosqCkvWPy","WQO/WORdNHfobmo+W63dQG","espdPGjv","EutdIvNdJ31DWRDMFW","nmkEWO1AvKddI8oKAmk9W6hdKa","A8k0WOBdUCoB","d2nuhq","Amo6rSofdSkjlmoJW7nI","e8ohfsq6W6ZdTG","WRRcT8o6adFdICktqa","W7xcS8kGWRtdGmkSW6WABmoq","iCoWWQDjWOq","FmovWRyQl8kQmmk4oCk0","W6hdG1xdLaRdJtWzxge","cmkQrmkB","WRL0n8kMlSk1WRW","WR7dRGTPW7b4W65CW6FdLa","pmofW4CYWQFcSCkqvG","WRiGWQxdTsVcQYHe","W7tdSH9K","W7JdQ1pdI8o/","u8k6WQ/dQW","WObtrCoVsG","cmoxiCk8WQa","W7tdJ8kEca","WQmKWQldPIW","WQtcT8oNfYZdJW"];return b3=function(){return t},b3()}var h0={};async function KXt(){let t=je,e={BySxK:function(i,a){return i||a},HLGVH:t(445,"Flqq")+t(756,"snsi"),TdoGM:t(642,"HMO1")+t(363,"Tf(V")+t(720,"Tf(V")+t(671,"smET")+t(353,"QWuT")+t(1037,"3P7O")+t(473,"Gmb(")+t(641,"oODV")+t(447,"5f2!")+t(395,"FlDb")+t(883,"%hwX")+"19",MFkDp:function(i,a){return i===a}},r=Date[t(755,"p3E!")](),n=Object[t(652,"s]bs")]({Cookie:e[t(894,"%Z*W")](yc,""),"Content-Type":e[t(907,"2vLy")]},qx),s=await he[t(584,")2Yv")](e[t(495,"Wg$5")],{conversation_id:t(686,"QWuT")+r,conversation_type:3,msg_id:r+t(647,"Fzxt")},{headers:n})[t(896,"Gmb(")](i=>{let a=t;return console[a(313,"yxuT")](i),i[a(926,"j*zV")]||{status:500,data:{}}});return e[t(1063,"n*PT")](s?.[t(371,"fLji")],-1*-98+4864*-1+4966)&&e[t(327,"s]bs")](s?.[t(679,"IwqU")]?.[t(308,"5f2!")],200)&&e[t(276,"R[2q")](s?.[t(713,"oODV")]?.[t(410,"yxuT")],4845+-17*285)&&s?.[t(1083,"n&P]")]?.[t(400,"2vLy")]?.[t(577,"HMO1")]||""}async function fBe(t,e,r,n){let s=je,i={csAxk:function(l,d){return l||d},iVlev:function(l,d){return l(d)},QCsqt:function(l){return l()},YUzrE:s(956,"QWuT")+s(529,"%Z*W"),oCLoD:function(l,d){return l===d}};if(i[s(1071,"oODV")](!t,!r)||!n||(!e&&(await i[s(680,"Fzxt")](cG,{shareId:t}),e=zd[t]?.[s(1050,"4iKp")]||""),!e))return null;let a={fids:[r],fids_token:[n],pwd_id:t,stoken:e,speedup_session:""},o=await i[s(517,"R[2q")](KXt);o&&(a[s(595,"4iKp")]=o);let c=Object[s(503,"Wg$5")]({Cookie:i[s(1064,"Fzxt")](yc,""),"Content-Type":i[s(827,"q0$o")]},qx),u=await he[s(688,"snsi")](s(654,"3M6]")+s(499,"fLji")+s(325,"M9FG")+s(746,"R[2q")+s(990,"!$Ln")+s(1076,"3M6]")+Za,a,{headers:c})[s(392,"IwqU")](l=>{let d=s;return console[d(749,"Flqq")](l),l[d(764,"p3E!")]||{status:500,data:{}}});return i[s(1038,"HMO1")](u?.[s(380,"3P7O")],-3449+-7*-787+-3*620)&&u?.[s(900,"Gmb(")]?.[s(351,"BYRA")]?.[-374*23+-1432+1*10034]?.[s(512,"q@6)")+"rl"]?u[s(292,"FlDb")][s(823,"p3E!")][0]:null}async function pBe(t,e,r,n,s){let i=je,a={OWCxM:function(c,u){return c(u)},Ckrxl:function(c,u,l){return c(u,l)},IrQWZ:i(285,"snsi"),gSWur:function(c,u,l,d,f){return c(u,l,d,f)},NUwea:i(819,"sAc1"),JXWXK:function(c,u){return c>u},RHctj:function(c,u){return c(u)}};if(await a[i(620,"j*zV")](jXt,s),s){let c=Object[i(993,"LdZ7")](h0);for(let u of c)delete h0[u]}if(!Dh||!e&&(await a[i(1053,"oODV")](cG,{shareId:t}),!zd[t]))return null;let o=await a[i(775,"lQpT")](eo,i(636,"5f2!")+i(352,"2vLy")+"?"+Za,{fid_list:[r],fid_token_list:[n],to_pdir_fid:Dh,pwd_id:t,stoken:e||zd[t][i(489,")2Yv")],pdir_fid:"0",scene:a[i(703,"Fzxt")]});if(o[i(289,"5f2!")]&&o[i(981,"jMYK")][i(886,"2vLy")]){let c=0;for(;;){let u=await a[i(999,"%hwX")](eo,i(556,"jMYK")+Za+i(401,"Flqq")+o[i(936,"q0$o")][i(984,"nTP(")]+(i(878,"5f2!")+i(408,"n&P]"))+c,{},{},a[i(718,"LdZ7")]);if(u[i(433,"Wg$5")]&&u[i(693,"uZ@5")][i(663,"q@6)")]&&u[i(948,"wgCG")][i(448,"uZ@5")][i(737,"M9FG")+i(938,"smET")]&&a[i(540,"lQpT")](u[i(1018,"%hwX")][i(962,"Flqq")][i(645,"wrcr")+i(417,"4iKp")][i(625,"sAc1")],1*-6+-2*4784+9574))return u[i(579,"HMO1")][i(986,"PlI^")][i(744,"Z[9h")+i(528,"lFql")][1*6937+-7*763+-1596];if(c++,a[i(834,"s]bs")](c,5))break;await a[i(739,"3ASk")](Qd,9706+-537*-16+-62*279)}}return!1}async function mBe(t,e,r,n){let s=je,i={aUKBW:function(o,c){return o===c},mPNPA:s(735,"Fzxt"),zCyzC:function(o,c){return o(c)},TJotE:function(o,c,u,l,d,f){return o(c,u,l,d,f)},goOOR:function(o,c,u){return o(c,u)},QLbRl:s(354,"3ASk")+s(750,"Z[9h")+s(653,"IwqU"),oyYbf:s(934,"Fzxt")};if(i[s(701,"i#*h")](t,i[s(412,"i#*h")]))return await i[s(532,"PlI^")](GXt,r);if(!h0[r]){let o=await i[s(332,"LdZ7")](pBe,t,e,r,n,!0);if(!o)return null;h0[r]=o}let a=await i[s(444,"betL")](eo,s(419,"lQpT")+s(487,"4iKp")+Za,{fid:h0[r],resolutions:i[s(290,"Gmb(")],supports:i[s(704,"j*zV")]});return a[s(723,"Flqq")]&&a[s(314,"R[2q")][s(479,"5f2!")]?a[s(370,"i#*h")][s(340,"HMO1")]:null}async function lG(t,e,r,n,s){let i=je,a={SlWbw:function(c,u){return c===u},reqzF:i(463,"M9FG"),XICTz:function(c,u){return c(u)},wXkPX:function(c,u,l,d,f,p){return c(u,l,d,f,p)},EMylT:function(c,u,l){return c(u,l)}};if(a[i(300,"jMYK")](t,a[i(1059,"%e99")]))return await a[i(440,"FlDb")](uG,r);if(!h0[r]){let c=await a[i(665,"q0$o")](pBe,t,e,r,n,s);if(!c)return null;h0[r]=c}let o=await a[i(569,"BYRA")](eo,i(286,"FlDb")+i(403,"q@6)")+Za,{fids:[h0[r]]});return o[i(661,"s]bs")]?o[i(407,"q@6)")][-5*162+5258+4*-1112]:null}async function VXt(t,e,r,n,s){let i=je,a={LYNDs:function(c,u){return c===u},DSVuT:i(587,"BYRA"),cntBr:function(c,u){return c(u)},XRIMt:function(c,u,l,d,f){return c(u,l,d,f)},VTsSs:function(c,u,l,d,f,p){return c(u,l,d,f,p)}};if(a[i(740,"Ybex")](t,a[i(476,"lQpT")]))return await a[i(947,"3P7O")](uG,r);let o=await a[i(453,"q0$o")](fBe,t,e,r,n);return o?.[i(406,"wgCG")+"rl"]?o:await a[i(563,"j*zV")](lG,t,e,r,n,s)}async function hBe(t){let e=je,r={sNIlj:function(n,s){return n(s)},SemDt:e(1022,"3ASk")+e(762,"3ASk"),yqQaM:function(n,s){return n(s)},oulNE:function(n,s){return n(s)},xMycp:function(n,s,i){return n(s,i)},ZScsi:e(604,"LdZ7")};if(r[e(882,"Ybex")](d3,r[e(581,"Fzxt")])){let n=r[e(669,"oODV")](lBe,t);if(n){let s=await r[e(610,"j*zV")](QXt,n);return s=s[e(543,"j*zV")](i=>{let a=e;return{vod_id:[n[a(980,"LdZ7")],i[a(972,"IwqU")],i[a(307,"BYRA")],i[a(1028,"q0$o")+a(415,"LdZ7")],i[a(554,"4iKp")]?i[a(1025,"n&P]")][a(347,"PlI^")]:"",i[a(732,"smET")]?i[a(304,"Z[9h")][a(266,"j*zV")+a(712,"R[2q")]:""][a(597,"wgCG")]("*"),vod_name:i[a(632,"!$Ln")],vod_size:i[a(484,")2Yv")],vod_group:i[a(430,"wgCG")]}}),r[e(674,"n&P]")](Ps,await r[e(862,"3P7O")](cBe,r[e(1006,"wrcr")]),s)}else return{}}}var x3={},Bh={},oBe={},nG=(7318+-1*1222+-2536*2)*(-11*-89+7444*-1+6977),dG=(9130+4408*2+-16922)*(-4490+-172*-2+4402);function aG(){let t=je;return(globalThis[t(501,"betL")]||[])[t(1035,"betL")](r=>r[t(416,"betL")]===t(510,"q0$o"))||{}}function zXt(t){let e=je,r={InFhy:function(n,s){return n<s},VHsbF:function(n,s){return n>=s},gVBRQ:function(n,s){return n===s},RLSRB:function(n,s){return n===s},KYwRH:function(n,s){return n===s},UKHaQ:function(n,s){return n===s},XpsjN:function(n,s){return n===s},KbNUW:function(n,s){return n===s},vLAFk:function(n,s){return n===s},KhHVJ:function(n,s){return n>=s},lGufM:e(608,"Z[9h"),qCCIX:e(1021,"Wg$5"),ncFfG:function(n,s){return n===s},hTCqS:e(490,"PLva"),rcbov:e(666,"oODV"),pxqeu:function(n,s){return n===s},nljQn:e(394,"3M6]"),wIxhv:function(n,s){return n===s}};if(!t||r[e(345,"wrcr")](t[e(664,"FlDb")],-4*-2179+-3215*3+3*311))return!1;if(r[e(790,"wgCG")](t[e(941,"lQpT")],4215*1+298*27+-12253)&&r[e(462,"Wg$5")](t[3937+1*2613+-6550],-9*345+-2*85+3412)&&r[e(783,"betL")](t[331*21+-3928+-3022],-1*-9166+6341*1+1*-15427)&&r[e(391,"nTP(")](t[1282*-4+-7092+12222],-50*116+9875+-571*7)&&r[e(576,"3ASk")](t[-2*724+-1828*-1+13*-29],71)&&r[e(480,"R[2q")](t[-7065*-1+-6025*1+-1036],-38*237+1573+7446)&&r[e(853,"oODV")](t[10*-239+-97*-2+2201],4529+-1*-5398+-9917)&&r[e(678,"i#*h")](t[6],-261*-23+-4155+-1822)&&r[e(338,"jMYK")](t[-1318+-1*-1325],1*6106+58*93+1*-11490)||r[e(745,"j*zV")](t[3*2903+-8831+122],5275+-5*1004)&&r[e(779,"%hwX")](t[-821*2+5521+-3878],-11462+2*5839)&&r[e(491,"2vLy")](t[-3*-41+8*-122+5*171],10*-13+-1*-3243+-2858))return!0;if(r[e(931,"betL")](t[e(582,"%Z*W")],-1*751+-1278+2035)){let n=t[e(623,"wrcr")](0,6)[e(951,"nTP(")](r[e(969,"HMO1")]);if(r[e(461,"lQpT")](n,r[e(916,"Flqq")])||r[e(799,"%e99")](n,r[e(793,"oODV")]))return!0}return r[e(602,"q@6)")](t[e(803,"4iKp")],1*4723+-6666*-1+-1*11377)&&r[e(539,"PlI^")](t[e(933,"oODV")](51*-98+1*9686+-4*1172,-8761*-1+4*108+-9189)[e(538,"n&P]")](r[e(1036,"2vLy")]),r[e(736,"sAc1")])&&r[e(1072,")2Yv")](t[e(634,"Ybex")](8,1*4791+-4256+523*-1)[e(575,"%Z*W")](r[e(1047,"Ybex")]),r[e(959,"lFql")])?!0:r[e(843,"4iKp")](t[-1719+206*20+-2401],4209+1381*-3)&&r[e(672,"QWuT")](t[-1751+6558*-1+8310],17*141+-7*-601+-6527)}function YXt(t){let e=je,r={edheI:function(s,i){return s-i},HZcPT:function(s,i){return s+i},vavcf:function(s,i){return s<=i},qlrNN:function(s,i){return s===i},MZFRY:function(s,i){return s+i},kBgiG:function(s,i){return s===i},PdsBA:function(s,i){return s+i},tETNX:function(s,i){return s+i},NodeN:function(s,i){return s>=i}},n=Math[e(628,"R[2q")](r[e(1060,"yxuT")](t[e(897,"Wg$5")],-1757*5+-1784+10577),r[e(1011,"%e99")](dG,1*4322+-2869+-2643*-1));for(let s=-790*12+5041*-1+1*14522;r[e(519,"PLva")](s,n);s++)if(r[e(281,"3ASk")](t[r[e(1015,"lFql")](s,-197*-50+-3*-1812+-15282)],4026*1+-3803+-121)&&r[e(851,"lQpT")](t[r[e(836,"Wg$5")](s,-35*-10+8880+-9225)],-6*-776+-5486+2*473)&&r[e(592,"wgCG")](t[r[e(656,"4iKp")](s,-11860+-698*-17)],8968+8847*-1)&&r[e(912,"3P7O")](t[r[e(968,"IwqU")](s,5181+381*3+-6317)],49*-188+-9380+18704)){let i=t[e(377,"BYRA")+"BE"](s);if(r[e(311,"wrcr")](i,1117*4+-7509+3049))return s}return-(-15*321+1084*6+-8*211)}function JXt(t){let e=je,r={ktCfF:e(335,"5f2!"),mLbzY:function(i,a){return i>a},nKlMC:function(i,a){return i<=a},FDMIt:function(i,a){return i+a},ifTei:function(i,a){return i===a},nFiiM:function(i,a){return i+a},gxTYp:e(619,"IwqU"),AKhVr:e(331,"q0$o"),QWpjv:function(i,a){return i+a}},n=Buffer[e(760,"betL")](r[e(389,"%Z*W")]),s=t[e(470,"oODV")](n,1);for(;r[e(593,"3M6]")](s,61*-17+-1442+-2479*-1);){if(r[e(979,"PlI^")](r[e(1080,"s]bs")](s,-1*5149+1*-6432+1*11593),t[e(558,"PLva")])&&r[e(320,"q@6)")](t[e(583,"M9FG")](r[e(924,"Tf(V")](s,-901*3+4987+1138*-2),r[e(1084,"3M6]")](s,-446*4+-4844+6640))[e(366,"q0$o")](r[e(271,"j*zV")]),r[e(974,"PLva")]))return s;s=t[e(561,"Ybex")](n,r[e(676,"M9FG")](s,-82*71+-8106*-1+-1*2283))}return-(7*-746+-1*957+6180)}function XXt(t){let e=je,r={lPsmh:function(s,i){return s-i},CgmID:function(s,i){return s+i},Iaojt:function(s,i){return s<=i},WnlXb:function(s,i){return s===i},uMbPL:function(s,i){return s+i},kmTme:function(s,i){return s===i},yfgpo:function(s,i){return s+i}},n=Math[e(987,"Gmb(")](r[e(494,"lQpT")](t[e(725,"snsi")],-2989+255*-32+11525),r[e(277,"i#*h")](dG,4180+-58*-59+-7414));for(let s=2791+155*-18;r[e(989,"Wg$5")](s,n);s++)if(r[e(796,"PLva")](t[s],67*-1+-24*-317+-83*90)&&r[e(748,"!$Ln")](t[r[e(344,"i#*h")](s,967*-1+521*9+-3534*1)],4813+-4759*1+17)&&r[e(562,"Fzxt")](t[r[e(915,"snsi")](s,1*-9357+-2923+1808*7)],46*-1+-3781*-1+458*-8))return s;return-(557*17+-3387+-1*6081)}function ZXt(t){let e=je,r={pSEcu:function(i,a){return i(a)},eogyb:function(i,a){return i(a)},ywqbl:e(418,"p3E!"),xYdwn:function(i,a){return i<=a},dmdDz:function(i,a){return i>a}};if(!r[e(443,"QWuT")](zXt,t))return 0;let n=[r[e(268,"betL")](YXt,t),t[e(923,"4iKp")](Buffer[e(943,"oODV")](r[e(288,"!$Ln")]),1*-454+3911+-3456),t[e(386,"Z[9h")](Buffer[e(546,"4iKp")]([26,69,81*5+6*1300+-7982,-194*-13+-3242*-1+-3*1867]),-8735+624*14),r[e(567,"QWuT")](JXt,t),r[e(815,"sAc1")](XXt,t)][e(727,"nTP(")](i=>Number[e(784,"R[2q")](i)&&i>2878+3478*1+-1*6356);if(!n[e(589,"IwqU")])return 0;let s=Math[e(375,"sAc1")](...n);return r[e(555,"n*PT")](s,-537*-7+9045+66*-194)||r[e(871,"FlDb")](s,dG)?-2223+-39*-57:s}async function eZt(t){let e=je,r={RBDrE:e(603,"j*zV")+"r",PxzOh:function(a,o){return a*o},nkfum:function(a,o){return a+o},zxCIo:function(a,o){return a+o},yWXmx:function(a,o){return a||o},orxPh:function(a,o){return a-o},KOAQJ:function(a,o){return a(o)},aWPzA:function(a,o){return a>o}};if(!t)return{isMasked:!1,skipBytes:0};let n=await he[e(929,"Flqq")](t,{responseType:r[e(821,"Wg$5")],timeout:r[e(970,"oODV")](5173+-107*39,-58*46+-6006+8682),maxContentLength:r[e(622,"QWuT")](nG,-92*-20+13*323+-5015),maxBodyLength:r[e(753,"q@6)")](nG,-7*17+3897+-2754),headers:Object[e(837,"2vLy")]({Cookie:r[e(830,"lFql")](yc,""),Range:e(888,"IwqU")+r[e(273,"jMYK")](nG,1)},qx)})[e(847,"uZ@5")](a=>{let o=e;return console[o(691,"4iKp")](a),a[o(426,"fLji")]||null});if(!n||!n[e(460,"Z[9h")])return{isMasked:!1,skipBytes:0};let s=Buffer[e(1049,"2vLy")](n[e(433,"Wg$5")])?n[e(1075,"%Z*W")]:Buffer[e(771,"IwqU")](n[e(351,"BYRA")]),i=r[e(472,"jMYK")](ZXt,s);return{isMasked:r[e(384,"n*PT")](i,-471*3+1138*-8+809*13),skipBytes:r[e(376,"p3E!")](i,0)?i:223*-19+-142*9+-5515*-1}}async function oG(t,e){let r=je,n={RgJWT:function(o,c){return o||c},APBHk:function(o,c){return o===c},dFEXG:function(o,c){return o(c)}};if(n[r(387,"i#*h")](!t,!e))return{isMasked:!1,skipBytes:0};let s=oBe[t];if(s&&n[r(996,"Ybex")](s[r(438,"wrcr")],e))return s;let i=await n[r(787,"BYRA")](eZt,e),a={downUrl:e,isMasked:n[r(293,"p3E!")](i[r(789,"3ASk")],!0),skipBytes:i[r(1056,"HMO1")]||4329+1443*-3};return oBe[t]=a,a}async function E3(t,e){let r=je,n={JlUne:function(c,u){return c(u)},xzYIo:function(c,u){return c==u},YOUvb:r(715,"j*zV"),WtUdn:r(1008,"%e99"),ZUtHj:function(c,u,l,d,f){return c(u,l,d,f)},ulvHl:function(c){return c()},zFZQy:function(c,u){return c===u},MVDhQ:function(c,u,l,d,f,p){return c(u,l,d,f,p)},GnoNo:r(877,"sAc1"),WyGCk:function(c,u,l,d,f,p){return c(u,l,d,f,p)},oPOTl:function(c,u){return c==u},hRnhA:r(425,"sAc1")+r(800,"%hwX"),nEhxs:r(606,"!$Ln"),ZHseA:function(c,u,l){return c(u,l)},VEzkv:function(c,u){return c==u},RoLbd:function(c,u,l,d,f,p,m){return c(u,l,d,f,p,m)},xzHeM:function(c,u){return c*u}};await n[r(450,"yxuT")](kv,t);let s=t[r(1030,"3P7O")][r(439,"Z[9h")],i=t[r(467,"PlI^")][r(696,"Z[9h")],a=t[r(817,"q@6)")][r(922,"p3E!")],o=t[r(728,"snsi")][r(961,"QWuT")];if(n[r(893,"Flqq")](s,n[r(1020,"jMYK")])){let c="",u=o[r(346,"Fzxt")]("*"),l=t[r(782,"j*zV")][r(533,"FlDb")];if(n[r(551,"HMO1")](i,n[r(702,"%hwX")])){!x3[u[-579*1+-1*7391+7971]]&&(x3[u[-7451+-39*-141+1953]]=(await n[r(367,"PlI^")](mBe,a,n[r(637,"Fzxt")](decodeURIComponent,u[-2*-3358+1771+3*-2829]),u[-9803+1*3209+6595],u[2]))[r(449,"Fzxt")](A=>A[r(398,"LdZ7")])),c=x3[u[1]][r(953,"3M6]")](A=>A[r(711,"fLji")][r(694,"HMO1")+"e"]()==l)[1*-5237+-9095+14332][r(1043,"p3E!")][r(758,"sAc1")],e[r(1023,"3P7O")](c);return}else{let A=n[r(381,"3M6]")](aG),g=n[r(431,"PLva")](A[r(881,"fLji")],!0);if(!Bh[u[1*-9283+9327+1*-43]]){let b=g?await n[r(942,"s]bs")](VXt,a,n[r(901,"Ybex")](decodeURIComponent,u[0]),u[1],u[2],n[r(932,"PlI^")](l,n[r(684,"Ybex")])):await n[r(413,"wrcr")](lG,a,n[r(1073,")2Yv")](decodeURIComponent,u[0]),u[1],u[2],n[r(427,"q@6)")](l,n[r(434,"wrcr")]));b?.[r(600,"2vLy")+"rl"]&&(Bh[u[-1*5993+6470+-476*1]]=b)}if(c=Bh[u[-43*181+64+7720*1]]?.[r(508,"fLji")+"rl"],!c){e[r(358,"wrcr")](109*-39+-2577+7328),e[r(832,"uZ@5")](n[r(1061,"betL")]);return}if(n[r(405,"fLji")](l,n[r(1052,"yxuT")])){e[r(983,"HMO1")](c);return}}let d=n[r(776,"M9FG")](aG),f=d[r(840,"yxuT")]||512,p=d[r(318,"nTP(")]||-3282+-7867*-1+-4575*1,m=await n[r(1007,"Gmb(")](oG,u[-2664+1*2341+-6*-54],c),h=m[r(967,"BYRA")]&&n[r(706,"Wg$5")](l,n[r(992,"p3E!")])?m[r(1056,"HMO1")]:65*125+1*6131+3*-4752;return await n[r(324,")2Yv")](Wx,t,e,c,u[1283*-1+1*-5226+6510],Object[r(469,"sAc1")]({Cookie:yc},qx),{chunkSize:n[r(541,"j*zV")](-278*29+-9884+-1897*-10,f),poolSize:p,timeout:n[r(995,"lFql")](-1165*8+-3358+-14*-977,-569*-7+-8*443+-429),skipBytes:h})}}async function _3(t,e){let r=je,n={ZcKey:function(c,u){return c(u)},gUtnj:function(c,u){return c(u)},vuknD:function(c,u){return c(u)},rcJWi:r(822,"jMYK"),UGzxr:function(c,u){return c+u},kqzwF:r(420,"FlDb")+"rk",UAEUY:function(c,u){return c(u)},KFUVD:function(c){return c()},NBUoJ:function(c,u){return c===u},oQSDE:function(c,u){return c===u},MTfub:r(801,"Flqq"),cUeXb:function(c,u){return c(u)},JbIiW:function(c,u,l,d,f){return c(u,l,d,f)},IEezS:function(c,u,l){return c(u,l)},mJFEQ:function(c){return c()},EjrTy:function(c,u,l,d,f,p){return c(u,l,d,f,p)},WVihm:function(c,u,l){return c(u,l)},bZJVI:function(c){return c()},DfinE:r(724,"jMYK"),lXxpg:r(1057,"yxuT"),KgSwg:r(988,"uZ@5"),xrCmV:r(906,"3P7O"),pXlgH:function(c){return c()}};await n[r(482,"Flqq")](kv,t);let s=t[r(944,"3M6]")][r(564,"BYRA")],i=t[r(761,"lFql")].id,a=i[r(572,"3ASk")]("*"),o=-3889*-2+-797*-11+3309*-5;if(s[r(542,"3ASk")](await n[r(1048,"uZ@5")](cBe,n[r(521,"PlI^")]))){let c=n[r(891,"nTP(")](n[r(807,"QWuT")](n[r(952,"PLva")](qXt,t),t[r(757,"Wg$5")][r(778,"M9FG")]),n[r(769,"Z[9h")]),u={parse:0,url:[],header:Object[r(596,"smET")]({Cookie:yc},qx)};a[-4*-1672+-317*5+1*-5099]&&(u[r(752,"HMO1")]={subt:c+r(570,"Tf(V")+a[212*24+174*-23+2*-543]+"/"+n[r(493,"sAc1")](encodeURIComponent,a[6229+-9493*1+3265])+"*"+a[-712+-1*-7134+6418*-1]+"*"+a[-7994+-197*1+3*2732]+r(627,"wgCG")});let l=n[r(552,"QWuT")](aG),d=n[r(873,"oODV")](l[r(854,"%hwX")],!0),f=u[r(651,"3P7O")],p=()=>{let y=r;f[y(802,"s]bs")]("\u4EE3\u7406"),f[y(297,"Flqq")](c+y(884,"!$Ln")+a[83*83+-917+-5972]+"/"+n[y(585,"smET")](encodeURIComponent,a[7*1338+-1366*1+-7999])+"*"+a[-7185*1+-4869+-1507*-8]+"*"+a[93*-33+-9007+12079]+y(379,"4iKp"))},m=()=>{let y=r;f[y(477,"FlDb")]("\u4EE3\u7406"),f[y(1017,"%Z*W")](c+y(624,"jMYK")+a[41*-116+-8187+12943]+"/"+n[y(765,")2Yv")](encodeURIComponent,a[1*-9025+3734+7*756])+"*"+a[-1166+146*8]+"*"+a[3]+y(675,"q@6)")),f[y(1031,"3P7O")]("\u539F\u753B"),f[y(295,"IwqU")](c+(y(998,"PlI^")+y(267,"2vLy"))+a[-1709+1*3419+-1710]+"/"+n[y(1044,"M9FG")](encodeURIComponent,a[-5102*-1+3*-1201+1*-1498])+"*"+a[4*-1228+-715+433*13]+"*"+a[-491*-8+2245+-6170]+y(855,"3ASk"))};if(d){let y=n[r(456,"oODV")](a[0],n[r(516,"p3E!")])?await n[r(530,"Tf(V")](uG,a[2]):await n[r(699,"smET")](fBe,a[0],a[1],a[2],a[3]);if(y?.[r(616,"%hwX")+"rl"])return Bh[a[2]]=y,(await n[r(835,"%Z*W")](oG,a[-5239+5*1652+-3019],y[r(917,"Ybex")+"rl"]))[r(955,"%e99")]?(n[r(429,"lQpT")](p),u):(n[r(1086,"3M6]")](m),u)}if(!Bh[a[-4957+2*-3239+11437*1]]){let y=await n[r(617,"nTP(")](lG,a[0],a[1],a[2],a[3],!1);y?.[r(485,"PLva")+"rl"]&&(Bh[a[881*-7+7489+-1320]]=y)}let h=Bh[a[736*3+-1313+19*-47]]?.[r(887,"yxuT")+"rl"];if(h&&(await n[r(1079,"Fzxt")](oG,a[2],h))[r(946,"wrcr")])return n[r(424,"LdZ7")](p),u;let A=(await n[r(747,"%e99")](mBe,a[-19*477+-79*59+-13724*-1],a[-10*-159+-1*9403+-7814*-1],a[-100*-89+-4657*-1+1*-13555],a[6132+1*-6129])||[])[r(598,"%e99")](y=>y[r(683,"i#*h")]);x3[a[2]]=A;let g=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],b=["4k","2k",n[r(502,"5f2!")],n[r(359,"IwqU")],n[r(876,"Fzxt")],n[r(940,"q@6)")]];return n[r(607,"FlDb")](m),A[r(791,"Z[9h")](y=>{let x=r;o=b[x(960,"nTP(")](y[x(660,"uZ@5")]),f[x(864,"wgCG")](g[o]),f[x(436,"q0$o")](c+x(1026,"fLji")+y[x(464,"n&P]")][x(498,"jMYK")+"e"]()+"/"+a[2208+1688*2+-5584]+"/"+n[x(301,"n*PT")](encodeURIComponent,a[-31*35+-291*6+2832*1])+"*"+a[-3946*1+-2486+-3217*-2]+"*"+a[14*-221+405+4*673]+x(423,"%e99"))}),u}}var bl=Re(Jn(),1);var C4e=Re(S0(),1),Jd=Re(Jn(),1);var M3="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Gv={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},I4e={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},gtr=async t=>{let e=Jd.default.enc.Hex.stringify(Jd.default.MD5(t.config.uc.cookie)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},Atr=async(t,e)=>{let r=Jd.default.enc.Hex.stringify(Jd.default.MD5(t.config.uc.cookie)).toString();await t.db.push(`/uc/${r}`,e)},rK=async t=>{let e=Jd.default.enc.Hex.stringify(Jd.default.MD5(t.config.uc.ut)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},nK=async(t,e)=>{let r=Jd.default.enc.Hex.stringify(Jd.default.MD5(t.config.uc.ut)).toString();await t.db.push(`/uc/${r}`,e)};async function sK(t){t.get("/qrcode",async(r,n)=>{try{let s=await Ae.get(`https://api.open.uc.cn/cas/ajax/getTokenForQrcodeLogin?client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":M3,referer:"https://drive.uc.cn"}}),i=s.data.data.members.token,a=hl(s.headers["set-cookie"]),o=I4e.encode({token:i,cookies:a}),c=`https://su.uc.cn/1_n0ZCv?uc_param_str=dsdnfrpfbivesscpgimibtbmnijblauputogpintnwktprchmt&token=${i}&client_id=381&uc_biz_str=S%3Acustom%7CC%3Atitlebar_fix`,u=await C4e.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("UC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=I4e.decode(s);if(!i)return n.send({code:0,data:{status:Gv.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await Ae.get(`https://api.open.uc.cn/cas/ajax/getServiceTicketByQrcodeToken?__t=${Date.now()}&token=${a}&client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":M3}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:Gv.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:Gv.EXPIRED}}):n.send({code:0,data:{status:Gv.NEW}})}catch(c){console.error("UC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:Gv.NEW}})}});async function e(r,n){let s=[...n],i=await Ae.get(`https://drive.uc.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":M3,Cookie:s.join(""),referer:"https://drive.uc.cn"}});i.headers["set-cookie"]&&(s=s.concat(hl(i.headers["set-cookie"])));let a=await Ae.post("https://pc-api.uc.cn/1/clouddrive/transfer/upload/pdir?pr=UCBrowser&fr=pc",{},{headers:{"User-Agent":M3,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(hl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await gtr(r.server)})}),t.put("/cookie",async(r,n)=>{await Atr(r.server,r.body.cookie),n.send({code:0})}),t.get("/ut",async(r,n)=>{n.send({code:0,data:await rK(r.server)})}),t.put("/ut",async(r,n)=>{await nK(r.server,r.body.ut),n.send({code:0})})}var Ec={DeviceID:"07b48aaba8a739356ab8107b5e230ad4",RefreshToken:"",AccessToken:""},Is={api:"https://open-api-drive.uc.cn",clientID:"5acf882d27b74502b7040b0c65519aa7",signKey:"l3srvtd7p42l0d0x1u8d7yc8ye9kki4d",appVer:"1.6.8",channel:"UCTVOFFICIALWEB",codeApi:"http://api.extscreen.com/ucdrive"};function N4e(t){return String(t||"").split(",")[0].trim()}function T4e(t){return N4e(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function ytr(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=T4e(t?.headers?.["x-forwarded-host"])||T4e(t?.headers?.host);if(!n)return e;let s=N4e(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function xtr(t){return bl.default.MD5(t).toString().slice(0,16)}function Vv(t,e){return bl.default.MD5(t+e).toString().slice(0,16)}function U3(t,e,r,n){let s=t+"&"+e+"&"+r+"&"+n;return bl.default.SHA256(s).toString()}function O4e(t){let r=/https:\/\/drive\.uc\.cn\/s\/([^\\|#/?]+)/.exec(t);return r?{shareId:r[1],folderId:"0"}:null}var El="pr=UCBrowser&fr=pc",oK={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) uc-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch",Referer:"https://drive.uc.cn"},Kv=null,$3=null,aK="https://pc-api.uc.cn/1/clouddrive/",Xd="",cK="",P4e="",v0={},w4e="CatVodOpen",qh=null,W3="";async function k4e(t){Kv=t.server.db;let e=t.server.config.uc;Xd=e.cookie,$3=bl.default.enc.Hex.stringify(bl.default.MD5(e.cookie)).toString(),cK=bl.default.enc.Hex.stringify(bl.default.MD5(e.token)).toString(),P4e=bl.default.enc.Hex.stringify(bl.default.MD5(e.ut)).toString();let r=await Kv.getObjectDefault("/uc",{});if(r[$3]&&(Xd=r[$3]),W3=await rK(t.server),!W3)try{await he.get(`${aK}/file`)}catch(n){n?.response?.data?.length&&(W3=n.response.data,nK(t.server,W3))}}async function pu(t,e,r,n,s){r=r||{},Object.assign(r,oK),Object.assign(r,{Cookie:Xd||""}),n=n||"post";let i=n=="get"?await he.get(`${aK}/${t}`,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),o.response||{status:500,data:{}})):await he.post(`${aK}/${t}`,e,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),o.response||{status:500,data:{}})),a=s||3;if(i.headers["set-cookie"]){let o=i.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&Xd.match(/__puus=([^;]+)/)[1]!=o[1]&&(Xd=Xd.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await Kv.push(`/uc/${$3}`,Xd))}return i.status===429&&a>0?(await Qd(1e3),await pu(t,e,r,n,a-1)):i.data||{}}async function R4e(){let t=await pu(`file/sort?${El}&pdir_fid=${qh}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data&&t.data.list&&t.data.list.length>0){let e=await pu(`file/delete?${El}`,{action_type:2,filelist:t.data.list.map(r=>r.fid),exclude_fids:[]});console.log(e)}}async function btr(t){if(qh){t&&await R4e();return}let e=await pu(`file/sort?${El}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data&&e.data.list){for(let r of e.data.list)if(r.file_name===w4e){qh=r.fid,await R4e();break}}if(!qh){let r=await pu(`file?${El}`,{pdir_fid:"0",file_name:w4e,dir_path:"",dir_init_lock:!1});console.log(r),r.data&&r.data.fid&&(qh=r.data.fid)}}async function D4e(t){if(!v0[t.shareId]){delete v0[t.shareId];let e=await pu(`share/sharepage/token?${El}`,{pwd_id:t.shareId,passcode:t.sharePwd||""});e.data&&e.data.stoken&&(v0[t.shareId]=e.data)}}var Etr=[".srt",".ass",".scc",".stl",".ttml"];async function _tr(t){let e=typeof t=="string"?O4e(t):t;if(!e)return[];if(await D4e(e),!v0[e.shareId])return[];let r=[],n=[],s=(a,o)=>a?`${a}/${o}`:o,i=async function(a,o,c,u){let l=u||"",d=100;c=c||1;let f=await pu(`share/sharepage/detail?${El}&pwd_id=${a}&stoken=${encodeURIComponent(v0[a].stoken)}&pdir_fid=${o}&force=0&_page=${c}&_size=${d}&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!f.data)return[];let p=f.data.list;if(!p)return[];let m=[];for(let h of p)if(h.dir===!0)m.push({fid:h.fid,path:s(l,h.file_name)});else if(h.file===!0&&h.obj_category==="video"){if(h.size<1024*1024*5)continue;h.stoken=v0[e.shareId].stoken,h.vod_group=l,r.push(h)}else h.type==="file"&&Etr.some(A=>h.file_name.endsWith(A))&&n.push(h);if(c<Math.ceil(f.metadata._total/d)){let h=await i(a,o,c+1,l);for(let A of h)p.push(A)}for(let h of m){let A=await i(a,h.fid,1,h.path);for(let g of A)p.push(g)}return p};return await i(e.shareId,e.folderId,1,""),n.length>0&&r.forEach(a=>{var o=ml(a,n);o.bestMatch&&(a.subtitle=o.bestMatch.target)}),r}var Zd={};async function B4e(t,e,r,n,s){if(await btr(s),s){let a=Object.keys(Zd);for(let o of a)delete Zd[o]}if(!qh||!e&&(await D4e({shareId:t}),!v0[t]))return null;let i=await pu(`share/sharepage/save?${El}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:qh,pwd_id:t,stoken:e||v0[t].stoken,pdir_fid:"0",scene:"link"});if(i.data&&i.data.task_id){let a=0;for(;;){let o=await pu(`task?${El}&task_id=${i.data.task_id}&retry_index=${a}`,{},{},"get");if(o.data&&o.data.save_as&&o.data.save_as.save_as_top_fids&&o.data.save_as.save_as_top_fids.length>0)return o.data.save_as.save_as_top_fids[0];if(a++,a>5)break;await Qd(1e3)}}return!1}async function L4e(t,e,r,n){if(!Zd[r]){let i=await B4e(t,e,r,n,!0);if(!i)return null;Zd[r]=i}let s=await pu(`file/v2/play?${El}`,{fid:Zd[r],resolutions:"normal,low,high,super,2k,4k",supports:"fmp4"});return s.data&&s.data.video_list?s.data.video_list:null}async function Str(t,e,r,n,s){if(!Zd[r]){let c=await B4e(t,e,r,n,s);if(!c)return null;Zd[r]=c}let i=await Kv.getObjectDefault("/uc",{}),a=i[cK],o=i[P4e];if(a){let c=[],u="/file",l=Math.floor(Date.now()/1e3).toString()+"000",d=Ec.DeviceID||xtr(l),f=Vv(d,l),p=U3("GET",u,l,Is.signKey),m={method:"GET",url:"https://open-api-drive.uc.cn/file",params:{req_id:f,access_token:a,app_ver:Is.appVer,device_id:d,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Is.channel,method:"streaming",group_by:"source",fid:Zd[r],resolution:"low,normal,high,super,2k,4k",support:"dolby_vision"},headers:{"User-Agent":"Mozilla/5.0 (Linux; U; Android 9; zh-cn; RMX1931 Build/PQ3A.190605.05081124) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1",Connection:"Keep-Alive","Accept-Encoding":"gzip","x-pan-tm":l,"x-pan-token":p,"content-type":"text/plain;charset=UTF-8","x-pan-client-id":Is.clientID}},h=await Ae.request(m);if(h.status===200){let A=h.data.data.video_info.filter(g=>g.accessable)[0];return A.download_url=A.url,A}}else{let c=`file/download?${El}`;o&&(c+=`&ut=${o}`);let u=await pu(c,{fids:[Zd[r]]});if(u.data)return u.data[0]}return null}async function M4e(t){if(f3(t)){let e=O4e(t);if(e){let r=await _tr(e);return r=r.map(n=>({vod_id:[e.shareId,n.stoken,n.fid,n.share_fid_token,n.subtitle?n.subtitle.fid:"",n.subtitle?n.subtitle.share_fid_token:""].join("*"),vod_name:n.file_name,vod_size:n.size,vod_group:n.vod_group})),Ps(getPanName("uc"),r)}else return{}}}var F3={},iK={};async function W4e(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId;if(await k4e(t),r=="uc"){let a="",o=i.split("*"),c=t.params.flag;if(n=="trans"){F3[o[1]]||(F3[o[1]]=(await L4e(s,decodeURIComponent(o[0]),o[1],o[2])).filter(p=>p.accessable)),a=F3[o[1]].filter(p=>p.resolution.toLowerCase()==c)[0].video_info.url,e.redirect(a);return}else{if(!iK[o[1]]){let p=await Str(s,decodeURIComponent(o[0]),o[1],o[2],c=="down");p&&(iK[o[1]]=p)}if(a=iK[o[1]].download_url,c=="redirect"){e.redirect(a);return}}let l=(globalThis.Pans||[]).find(p=>p.key==="uc")||{},d=l.chunkSize||512,f=l.poolSize||10;return await Wx(t,e,a,o[1],Object.assign({Cookie:Xd},oK),{chunkSize:1024*d,poolSize:f,timeout:1e3*10})}}async function $4e(t,e){let r=t.body.flag,s=t.body.id.split("*");await k4e(t);let i=0;if(r.startsWith(getPanName("uc"))){let a=(await L4e(s[0],s[1],s[2],s[3])).filter(A=>A.accessable);F3[s[2]]=a;let o=[],c=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],u=["4k","2k","super","high","low","normal"],l=ytr(t)+t.server.prefix+"/proxy/uc",f=(await Kv.getObjectDefault("/uc",{}))[cK],p=["\u4EE3\u7406",`${l}/src/down/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`],m=["\u539F\u753B",`${l}/src/redirect/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`];f?o.push(...m,...p):o.push(...p,...m);let h={parse:0,url:o,header:Object.assign({Cookie:Xd},oK)};return f&&(h.header=void 0),s[3]&&(h.extra={subt:`${l}/src/subt/${s[0]}/${encodeURIComponent(s[1])}*${s[4]}*${s[5]}/.bin`}),a.forEach(A=>{i=u.indexOf(A.resolution),o.push(c[i]),o.push(`${l}/trans/${A.resolution.toLowerCase()}/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.mp4`)}),h}}var Gh=Re(rI(),1),i6e=Re(qMe(),1),R0=Re(require("crypto"),1);var kK,tb={},T0={set(t,e){tb[t]=e,kK.push(`/tyi/${t}`,e)},get(t){return tb[t]}},jMe=(t,e={})=>{let r=e.method||"GET",n=e.headers||{};return Ae({method:r,url:t,headers:n,transformResponse:[s=>s]}).then(s=>({ok:s.status===200,status:s.status,statusText:s.statusText,url:s.config.url,text:()=>Promise.resolve(s.data),json:()=>Promise.resolve(JSON.parse(s.data)),headers:s.headers})).catch(s=>s.response?{ok:!1,status:s.response.status,statusText:s.response.statusText,url:s.config.url,text:()=>Promise.resolve(s.response.data),json:()=>Promise.resolve(JSON.parse(s.response.data)),headers:s.response.headers}:s.request?{ok:!1,status:0,statusText:"No response received",text:()=>Promise.resolve(""),json:()=>Promise.reject(new Error("No response received"))}:Promise.reject(s))},DK=(0,i6e.default)({storeAsString:!0}),inr=(t,e)=>t?`${t}/${e}`:e,HMe="video",rB="cas",anr=new Set([rB]),onr=new Set(["mp4","m4v","mkv","avi","mov","flv","ts","m2ts","m3u8","mpd","webm","wmv","rmvb","rm","f4v","m4s"]),QMe="02",Z3="8025431004",GMe="10020",cnr="6.2",nI="https://cloud.189.cn",sI="https://open.e.189.cn",Gi="https://api.cloud.189.cn",eB="https://upload.cloud.189.cn",KMe="https://m.cloud.189.cn/zhuanti/2020/loginErrorPc/index.html",unr="web_cloud.189.cn",_c={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"},tB="MyCatPaw",NK={"User-Agent":_c["User-Agent"],Accept:"text/plain,application/json;charset=UTF-8,*/*","Accept-Encoding":_c["Accept-Encoding"]},lnr=new Set(["UNABLE_TO_VERIFY_LEAF_SIGNATURE","UNABLE_TO_VERIFY_FIRST_CERTIFICATE","SELF_SIGNED_CERT_IN_CHAIN","DEPTH_ZERO_SELF_SIGNED_CERT","CERT_HAS_EXPIRED","ERR_TLS_CERT_ALTNAME_INVALID"]);function dnr(t){let e=new Map;return String(t||"").split(";").map(r=>r.trim()).filter(Boolean).forEach(r=>{let n=r.indexOf("=");if(n<=0)return;let s=r.slice(0,n).trim(),i=r.slice(n+1).trim();s&&e.set(s,i)}),e}function OK(t,e){let r=dnr(t);return(Array.isArray(e)?e:e?[e]:[]).forEach(s=>{let i=String(s||"").split(";")[0].trim();if(!i)return;let a=i.indexOf("=");if(a<=0)return;let o=i.slice(0,a).trim(),c=i.slice(a+1).trim();o&&r.set(o,c)}),Array.from(r.entries()).map(([s,i])=>`${s}=${i}`).join("; ")}function VMe(){return{clientType:"TELEPC",version:cnr,channelId:unr,rand:`${Math.floor(Math.random()*1e5)}_${Math.floor(Math.random()*1e10)}`}}function fnr(t){let e=String(t?.code||"").trim().toUpperCase(),r=String(t?.message||"").trim();return lnr.has(e)||/unable to verify the first certificate|self[ -]signed certificate|certificate/i.test(r)}async function w0(t,e=""){try{return await Ae(t)}catch(r){if(!fnr(r))throw r;return r?.code,r?.message||String(r),Mt(t?.url||"",260),await he({...t,proxy:!1})}}function pnr(){return new Date().toUTCString()}function mnr(t,e){let r=new URLSearchParams;Object.keys(t||{}).sort().forEach(s=>{let i=t[s];i!=null&&r.append(s,String(i))});let n=R0.default.createCipheriv("aes-128-ecb",Buffer.from(String(e||"").slice(0,16),"utf8"),null);return n.setAutoPadding(!0),Buffer.concat([n.update(r.toString(),"utf8"),n.final()]).toString("hex").toUpperCase()}function hnr(t,e,r,n,s,i=""){let a=new URL(n).pathname,o=`SessionKey=${e}&Operate=${r.toUpperCase()}&RequestURI=${a}&Date=${s}${i?`&params=${i}`:""}`;return R0.default.createHmac("sha1",Buffer.from(String(t||""),"utf8")).update(o,"utf8").digest("hex").toUpperCase()}function zMe(t,e){return R0.default.publicEncrypt({key:t,padding:R0.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(e||""),"utf8")).toString("hex").toUpperCase()}function br(t,e){let r=String(t||"").match(new RegExp(`<${e}>([\\s\\S]*?)</${e}>`,"i"));return r?r[1].trim():""}function YMe(t){let e=Number(t||0),r=1024*1024*10;return e>r*2*999?Math.max(Math.ceil(e/1999/r),5)*r:e>r*999?r*2:r}function ma(t){if(typeof t=="string")return t;if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}}function fa(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let i=r.res_code??r.ResCode??"",a=r.res_message??r.ResMessage??"";if(typeof i=="number"&&i!==0||typeof i=="string"&&i)return`res_code=${i}${a?` ${a}`:""}`.trim();let o=r.code||r.errorCode||"",c=r.message||r.msg||r.errorMsg||r.error||"";if(o&&o!=="SUCCESS"&&o!=="0")return`code=${o}${c?` ${c}`:""}`.trim();if(!o&&c)return String(c)}let n=br(e,"code"),s=br(e,"message")||br(e,"msg");return n&&n!=="SUCCESS"&&n!=="0"?`code=${n}${s?` ${s}`:""}`.trim():""}function gnr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e);if(r&&typeof r=="object"&&!Array.isArray(r)&&(r.sessionKey||r.sessionSecret||r.accessToken))return r;if(!e||e[0]!=="<")return null;let n=["loginName","sessionKey","sessionSecret","familySessionKey","familySessionSecret","accessToken","refreshToken","isSaveName","keepAlive","getFileDiffSpan","getUserInfoSpan"],s={};return n.forEach(i=>{let a=br(e,i);a&&(s[i]=a)}),s.sessionKey&&s.sessionSecret?s:null}function JMe(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.data&&typeof r.data=="object"?r.data:null}function XMe(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.file&&typeof r.file=="object"?r.file:null}function ZMe(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e),n=String(r?.fileDownloadUrl||"");return n||br(e,"fileDownloadUrl")}function Anr(t){if(t&&typeof t=="object"&&!Array.isArray(t))return t;let e=ma(t).trim();if(!e)return null;try{return DK.parse(e)}catch{return Io(e)}}function e6e(t,e){let r=String(t||""),n=new RegExp(`<${e}>([\\s\\S]*?)</${e}>`,"ig"),s=[],i;for(;(i=n.exec(r))!==null;){let a=i[1],o=br(a,"icon"),c={id:br(a,"id"),parentId:br(a,"parentId"),name:Sc(br(a,"name")),size:Number(br(a,"size")||0),md5:br(a,"md5"),fileCata:br(a,"fileCata"),mediaType:br(a,"mediaType"),createDate:br(a,"createDate"),lastOpTime:br(a,"lastOpTime"),icon:o?{smallUrl:Sc(br(o,"smallUrl")),largeUrl:Sc(br(o,"largeUrl")),max600:Sc(br(o,"max600")),mediumUrl:Sc(br(o,"mediumUrl"))}:void 0};Object.keys(c).forEach(u=>{(c[u]===""||c[u]===void 0)&&delete c[u]}),(c.id!==void 0||c.name)&&s.push(c)}return s}function ynr(t){let e=ma(t).trim(),r=Anr(t)||{},n=r?.fileListAO||r?.data?.fileListAO||{},s=Array.isArray(n?.folderList)?n.folderList:[],i=Array.isArray(n?.fileList)?n.fileList:[];if(s.length===0&&i.length===0&&e.startsWith("<")){let a=br(e,"fileList")||e;s=e6e(a,"folder"),i=e6e(a,"file")}return{count:Number(n?.count||br(e,"count")||s.length+i.length||0),folderList:s,fileList:i,data:r}}function t6e(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e),n=String(r?.taskId||r?.taskID||"");return n||br(e,"taskId")||br(e,"taskID")}function xnr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e),n=r?.taskStatus??r?.TaskStatus??"";if(n!==""&&n!==void 0&&n!==null)return Number(n);let s=br(e,"taskStatus")||br(e,"TaskStatus");return s?Number(s):0}function bnr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e),n=i=>Array.isArray(i)?i.filter(Boolean):i&&typeof i=="object"?[i]:[],s=n(r?.familyInfoResp);if(s.length===0&&(s=n(r?.data?.familyInfoResp)),s.length===0&&e.startsWith("<")&&(s=(String(e).match(/<familyInfoResp>([\s\S]*?)<\/familyInfoResp>/ig)||[]).map(a=>({familyId:br(a,"familyId"),remarkName:br(a,"remarkName"),useFlag:br(a,"useFlag"),userRole:br(a,"userRole")})).filter(a=>String(a?.familyId||"")),s.length===0)){let a=br(e,"familyId");a&&(s=[{familyId:a,remarkName:br(e,"remarkName"),useFlag:br(e,"useFlag"),userRole:br(e,"userRole")}])}return s.map(i=>({familyId:String(i?.familyId||i?.familyID||""),remarkName:String(i?.remarkName||""),useFlag:Number(i?.useFlag||0),userRole:Number(i?.userRole||0)})).filter(i=>i.familyId)}function a6e(t){let e=String(t||"").trim().toLowerCase(),r=e.lastIndexOf(".");return r>=0?e.slice(r+1):""}function Enr(t){return anr.has(a6e(t))}function Io(t){let e=typeof t=="string"?t.trim():"";if(!e||!/^[\[{]/.test(e))return null;try{return JSON.parse(e)}catch{return null}}function Sc(t){return String(t??"").replace(/&amp;/gi,"&").replace(/&lt;/gi,"<").replace(/&gt;/gi,">").replace(/&quot;/gi,'"').replace(/&#39;/gi,"'")}function Il(t){let e=Sc(t).trim();return e?/^\/\//.test(e)?`http:${e}`:/^(https?:\/\/)/i.test(e)?e:"":""}function _nr(t){return Sc(t).replace(/([?&](?:sig|sk|token|expired)=)[^&<\s]+/ig,"$1***").replace(/(SSON=)[^;]+/ig,"$1***").replace(/(OPENINFO=)[^;]+/ig,"$1***").replace(/(JSESSIONID=)[^;]+/ig,"$1***").replace(/(COOKIE_LOGIN_USER=)[^;]+/ig,"$1***")}function Mt(t,e=220){let r=_nr(String(t??"")).replace(/\s+/g," ").trim();return r.length>e?`${r.slice(0,e)}...`:r}function eb(t){if(!t)return"none";let e=String(t).split(";").map(r=>r.split("=")[0].trim()).filter(Boolean);return`${e.slice(0,5).join(",")}${e.length>5?`,+${e.length-5}`:""}`}function pa(t){try{let e=Il(t);return e?new URL(e).host:""}catch{return""}}function Snr(t){try{let e=Il(t);return e?a6e(new URL(e).pathname):""}catch{return""}}function r6e(t){return onr.has(Snr(t))}function vnr(t){let r=String(t||"").match(/\/(\d+)$/);if(!r)return 0;let n=Number(r[1]);return Number.isFinite(n)?n:0}function Inr(t){let e=String(t||"").replace(/\s+/g,"").trim();if(!e||e.length<24||e.length%4!==0||/[^A-Za-z0-9+/=]/.test(e))return null;try{let r=Buffer.from(e,"base64").toString("utf8").trim(),n=Io(r);return!n||typeof n!="object"||Array.isArray(n)||!n.md5&&!n.sliceMd5&&!n.create_time?null:{raw:r,data:n}}catch{return null}}function PK(t){return!t||typeof t!="object"?{}:{name:t.name||"",size:t.size||0,md5:t.md5||"",sliceMd5:t.sliceMd5||"",create_time:t.create_time||""}}function n6e(t){let e=String(t??"");try{return decodeURIComponent(e.replace(/\+/g,"%20"))}catch{return e}}function Cnr(t){let e=String(t??"");try{return decodeURIComponent(e)}catch{return e}}function Tnr(t,e=""){let r=String(t||"").trim(),s=Cnr(r)||r,i={shareCode:"",accessCode:String(e||"").trim()},a=s.match(/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&#\s\uFF08(]+)/i),o=s.match(/https?:\/\/cloud\.189\.cn\/t\/([^?&#\s\uFF08(]+)/i);if(a?.[1]?i.shareCode=a[1]:o?.[1]?i.shareCode=o[1]:/^https?:\/\//i.test(s)||(i.shareCode=s.split(/[\s\uFF08(]/)[0]),!i.accessCode){let c=s.match(/(?:è®¿é—®ç |æå–ç |å¯†ç )\s*[::]\s*([a-zA-Z0-9]+)/);i.accessCode=c?.[1]||""}return i}function o6e(t){let e=String(t||"").trim();if(!e)return null;let r=Io(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let s={};return Object.keys(r).forEach(i=>{let a=r[i];if(a==null)return;let o=String(i).trim(),c=String(a).trim();o&&c&&(s[o]=c)}),Object.keys(s).length>0?s:null}let n={};return e.split(/[&;]/).forEach(s=>{let[i,...a]=s.split("=");if(!i||a.length===0)return;let o=n6e(i.trim()),c=n6e(a.join("=").trim());o&&c&&(n[o]=c)}),Object.keys(n).length>0?n:null}function wnr(t,e){let r=Il(e);r&&!t.includes(r)&&t.push(r)}function iI(t,e=[],r=0){if(!t||r>4)return e;if(typeof t=="string")return wnr(e,t),e;if(Array.isArray(t))return t.forEach(i=>iI(i,e,r+1)),e;if(typeof t!="object")return e;let n=["downloadUrl","downloadURL","fileDownloadUrl","fileDownloadURL","contentUrl","contentURL","redirectUrl","redirectURL","sourceUrl","sourceURL","location","url"];for(let i of n)i in t&&iI(t[i],e,r+1);if(e.length>0)return e;let s=["data","result","normal","file","download","downloadInfo"];for(let i of s)i in t&&iI(t[i],e,r+1);return e}function s6e(t){let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("|"),n=r>=0?e.slice(0,r).trim():e,s=r>=0?e.slice(r+1).trim():"",i=Il(n);if(i){let c=o6e(s);return c?{url:i,header:c}:{url:i}}let a=Sc(e).match(/((?:https?:)?\/\/[^<\s]+)/i);if(!a)return null;let o=Il(a[1]);return o?{url:o}:null}function Zx(t){let e=String(t||"").replace(/^\uFEFF/,"").trim();if(!e||/^<!doctype html/i.test(e)||/^<html/i.test(e))return null;let r=Io(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let n=Il(r.url);if(n){let s=o6e(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=s6e(s);if(i)return i}return s6e(e)}var BK=class{publicKey=null;setPublicKey(e){this.publicKey=e}encrypt(e){let r=Buffer.from(e,"utf8");return R0.default.publicEncrypt({key:this.publicKey,padding:R0.default.constants.RSA_PKCS1_PADDING},r).toString("base64")}},rb=async t=>{kK=t.server.db,tb=await kK.getObjectDefault("/tyi",{}),tb?.cloud_account,tb?.cloud_password,eb(tb?.cloud_cookie)},LK=class{constructor(){this.regex=/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&]+)/,this.config={clientId:"538135150693412",model:"KB2000",version:"9.0.6",pubKey:"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCZLyV4gHNDUGJMZoOcYauxmNEsKrc0TlLeBEVVIIQNzG4WqjimceOj5R9ETwDeeSN3yejAKLGHgx83lyy2wBjvnbfm/nLObyWwQD/09CmpZdxoFYCH6rdDjRpwZOZ2nXSZpgkZXoOBkfNXNxnN74aXtho2dqBynTw3NFTWyQl8BQIDAQAB"},this.headers={"User-Agent":`Mozilla/5.0 (Linux; U; Android 11; ${this.config.model} Build/RP1A.201005.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/${this.config.version} Android/30 clientId/${this.config.clientId} clientModel/${this.config.model} clientChannelId/qq proVersion/1.0.6`,Referer:"https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1","Accept-Encoding":"gzip, deflate"},this.api="https://cloud.189.cn/api",this.shareCode="",this.accessCode="",this.shareId="",this.shareMode="",this.isFolder="",this.index=0,this.shareFileCache=new Map,this.lastShareTextResolveReason="",this.pcLoginState=null,this.pcRestoreFolderId="",this.pcFamilyRestoreFolderId="",this.pcFamilyId=""}setShareTextResolveReason(e=""){this.lastShareTextResolveReason=String(e||"")}getShareTextResolveReason(){return this.lastShareTextResolveReason||""}getShareFileCacheKey(e,r){return`${r||""}:${e||""}`}cacheShareFileItem(e,r,n,s={}){!e||!r||!n||typeof n!="object"||this.shareFileCache.set(this.getShareFileCacheKey(e,r),{...n,...s})}getCachedShareFileItem(e,r){return this.shareFileCache.get(this.getShareFileCacheKey(e,r))||null}async init(){this.account&&console.log("\u5929\u7FFC\u8D26\u53F7\u83B7\u53D6\u6210\u529F\uFF1A"+this.account),this.password&&console.log("\u5929\u7FFC\u5BC6\u7801\u83B7\u53D6\u6210\u529F\uFF1A"+this.password),this.cookie?console.log("\u5929\u7FFCcookie\u83B7\u53D6\u6210\u529F"+this.cookie):T0.set("cloud_cookie",await this.login(this.account,this.password))}get account(){return T0.get("cloud_account")}get password(){return T0.get("cloud_password")}get cookie(){return T0.get("cloud_cookie")}async login(e,r){try{let n=await Ae.post("https://open.e.189.cn/api/logbox/config/encryptConf.do?appId=cloud"),s=n.data.data.pubKey;n=await Ae.get("https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html?returnURL=/main.action");let i=n.request.path.match(/reqId=(\w+)/)[1],o={"Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/76.0",Referer:"https://open.e.189.cn/",Lt:n.request.path.match(/lt=(\w+)/)[1],Reqid:i},c={version:"2.0",appKey:"cloud"};n=await Ae.post("https://open.e.189.cn/api/logbox/oauth2/appConf.do",Gh.default.stringify(c),{headers:o});let u=n.data.data.returnUrl,l=n.data.data.paramId,d=`-----BEGIN PUBLIC KEY-----
${s}
-----END PUBLIC KEY-----`,f=new BK;f.setPublicKey(d);let p=Buffer.from(f.encrypt(e),"base64").toString("hex"),m=Buffer.from(f.encrypt(r),"base64").toString("hex");if(c={appKey:"cloud",version:"2.0",accountType:"01",mailSuffix:"@189.cn",validateCode:"",returnUrl:u,paramId:l,captchaToken:"",dynamicCheck:"FALSE",clientType:"1",cb_SaveName:"0",isOauth2:!1,userName:`{NRP}${p}`,password:`{NRP}${m}`},n=await Ae.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",Gh.default.stringify(c),{headers:o,validateStatus:null}),n.data.toUrl){let h=n.headers["set-cookie"].map(A=>A.split(";")[0]).join(";");n=await Ae.get(n.data.toUrl,{headers:{...this.headers,Cookie:h},maxRedirects:0,validateStatus:null}),h+="; "+n.headers["set-cookie"].map(A=>A.split(";")[0]).join(";"),T0.set("cloud_cookie",h)}else console.error("Error during login:",n.data)}catch(n){console.error("Error during login:",n)}}async getShareID(e,r,n){let s=n||this,i=Tnr(e,r);s.shareCode=i.shareCode,s.accessCode=i.accessCode}async getShareData(e,r){let n={},s={},i=await this.getShareInfo(e,r,n);if(i){let c=await this.getShareList(i,"",n);c&&Array.isArray(c)?await Promise.all(c.map(async u=>{let l=u.path||u.name;l in s||(s[l]=[]);let d=await this.getShareFile(u.id,n);d&&d.length>0&&s[l].push(...d)})):s.root=await this.getShareFile(i,n)}for(let c in s)s[c].length===0&&delete s[c];i&&Object.keys(s).length===0&&(s.root=await this.getShareFile(i,n),s.root&&Array.isArray(s.root)&&(s.root=s.root.filter(c=>c&&Object.keys(c).length>0))),Object.keys(s).forEach(c=>{s[c]=s[c].map(u=>({vod_id:[u.fileId,u.shareId,u.fileKind||HMe,u.shareMode||"",u.accessCode||""].join("*"),vod_name:u.name,vod_size:u.size}))});let a=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.length:0),0),o=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.filter(l=>String(l?.vod_id||"").includes(`*${rB}*`)).length:0),0);return n.shareId,n.shareMode,Object.keys(s).length,s}async getShareInfo(e,r,n){let s=n||this,i=String(e||"");if(i.startsWith("http")?await this.getShareID(i,r,n):s.shareCode=i,!s.shareCode)return null;try{if(s.accessCode){let a=await Ae.get(`${this.api}/open/share/checkAccessCode.action?shareCode=${s.shareCode}&accessCode=${s.accessCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}});a.status===200&&(s.shareId=a.data.shareId);let o=await Ae.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),c=o.data.fileId;return s.shareMode=o.data.shareMode,s.isFolder=o.data.isFolder,c}else{let a=await Ae.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),o=a.data.fileId;return s.shareId=a.data.shareId,s.shareMode=a.data.shareMode,s.isFolder=a.data.isFolder,o}}catch(a){let o=a?.response?.status,c=a?.response?.data?.res_code||a?.code||"UnknownCode",u=a?.response?.data?.res_message||a?.message||"unknown error";return console.warn(o===400&&(c==="ShareAuditNotPass"||c==="ShareInfoNotFound")?`[Cloud ShareInfo] ${s.shareCode} unavailable: ${c}`:`[Cloud ShareInfo] ${s.shareCode} failed: ${o||"N/A"} ${c} ${u}`),null}}async getShareList(e,r="",n){let s=n||this;if(!e)return null;try{let i=[],a={};a["User-Agent"]="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",a.Accept="application/json;charset=UTF-8",a["Accept-Encoding"]="gzip, deflate, br, zstd";let o={method:"GET",headers:a},c=await jMe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${s.isFolder}&shareId=${s.shareId}&shareMode=${s.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${s.accessCode}&noCache=${Math.random()}`,o),d=DK.parse(await c.text())?.fileListAO?.folderList;if(!d)return null;if(d&&d.length>0){let f=d.map(m=>({name:m.name,id:m.id,type:"folder",path:inr(r,m.name)}));i.push(...f);let p=await Promise.all(f.map(async m=>this.getShareList(m.id,m.path,n)));return p=p.filter(m=>m!=null),[...i,...p.flat()]}}catch(i){return console.warn(`[Cloud ShareList] ${e} failed: ${i?.message||i}`),null}}async getShareFile(e,r){let n=r||this;if(!e)return null;try{let s={method:"GET",headers:_c},i=await jMe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${n.isFolder}&shareId=${n.shareId}&shareMode=${n.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${n.accessCode}&noCache=${Math.random()}`,s),a=DK.parse(await i.text()),o=[],c=a?.fileListAO,u=c?.fileList;if(!Array.isArray(u)||u.length===0)return null;let l=u.map(p=>p.name),d=u.map(p=>p.id),f=Number(c?.fileListSize??u.length);if((!Number.isFinite(f)||f<0)&&(f=u.length),f=Math.min(f,u.length),f>=0)for(let p=0;p<f;p++){let m=u[p],h=m.mediaType===3?HMe:Enr(m.name)?rB:"";h&&(this.cacheShareFileItem(d[p],n.shareId,m,{shareMode:n.shareMode,accessCode:n.accessCode,fileKind:h}),o.push({name:l[p],fileId:d[p],shareId:n.shareId,size:m.size,fileKind:h,shareMode:n.shareMode,accessCode:n.accessCode}))}if(o.length>0){let p=o.filter(m=>m.fileKind===rB).length;n.shareId,n.shareMode,o.length,o.length-p,o.slice(0,3).map(m=>m.name)}return o}catch(s){return console.warn(`[Cloud ShareFile] ${e} failed: ${s?.message||s}`),null}}async fetchShareTextFileFromUrl(e,r={}){let n=Il(e);if(!n)return"";Mt(n,260),eb(r?.Cookie||r?.cookie);try{let s=await Ae.get(n,{headers:{...NK,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[a=>a],maxRedirects:5,validateStatus:()=>!0}),i=typeof s.data=="string"?s.data:"";return s.status<200||s.status>=300?(Mt(n,260),s.status,s.headers?.["content-type"],Mt(i),""):(Mt(n,260),s.status,s.headers?.["content-type"],i.length,Mt(i),i)}catch(s){return Mt(n,260),s?.message||String(s),""}}buildShareTextApiCandidates(e,r,n="",s=""){let i=a=>{let o=new URLSearchParams({shareId:String(r||""),fileId:String(e||""),key:"noCache",dt:"1",noCache:String(Math.random())});return n&&o.set("shareMode",String(n)),s&&o.set("accessCode",String(s)),`${this.api}${a}?${o.toString()}`};return[i("/portal/getShareFileUrl.action"),i("/portal/getFileDownloadUrl.action"),i("/open/share/getFileDownloadUrl.action"),i("/open/share/getShareFileDownloadUrl.action"),i("/open/file/getFileDownloadUrl.action")]}async tryResolveShareTextPlayableFromApi(e,r={}){let n=e;try{n=new URL(e).pathname}catch{}Mt(e,260),eb(r?.Cookie||r?.cookie);try{let s=await Ae.get(e,{headers:{...NK,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[l=>l],maxRedirects:0,validateStatus:()=>!0}),i=s.status===400||s.status===401||s.status===403;if(s.status>=300&&s.status<400&&s.headers?.location){s.status,Mt(s.headers.location,260);let l=await this.fetchShareTextFileFromUrl(s.headers.location,r),d=Zx(l);return d?.url,pa(d?.url),d?.header,{playable:d,authError:!1}}if(s.status<200||s.status>=300)return s.status,s.headers?.["content-type"],Mt(s.data),{playable:null,authError:i};let a=typeof s.data=="string"?s.data:"",o=String(s.headers?.["content-type"]||"");if(s.status,Mt(a),/json/i.test(o)){let l=Io(a),d=iI(l);d.length,d.slice(0,3).map(f=>Mt(f,260));for(let f of d){let p=await this.fetchShareTextFileFromUrl(f,r),m=Zx(p);if(m)return Mt(f,260),pa(m.url),m.header,{playable:m,authError:!1}}return{playable:null,authError:i}}let c=a.trim();if(/^[^\r\n]+$/.test(c)&&Il(c)){Mt(c,260);let l=await this.fetchShareTextFileFromUrl(c,r),d=Zx(l);return d?.url,pa(d?.url),d?.header,{playable:d,authError:!1}}let u=Zx(a);return u?.url,pa(u?.url),u?.header,{playable:u,authError:!1}}catch(s){return s?.message||String(s),{playable:null,authError:!1}}}async probeShareTextCandidateUrl(e,r={}){let n=Il(e);if(!n)return{type:"invalid"};Mt(n,260),pa(n),Object.keys(r||{}).join(",");try{let s=await Ae.get(n,{headers:{...NK,Range:"bytes=0-511",...r&&typeof r=="object"?r:{}},responseType:"arraybuffer",maxRedirects:5,timeout:15e3,validateStatus:()=>!0}),a=(Buffer.isBuffer(s.data)?s.data:Buffer.from(s.data||"")).toString("utf8").replace(/^\uFEFF/,""),o=Il(s?.request?.res?.responseUrl||s?.config?.url||n)||n,c=String(s.headers?.["content-type"]||""),u=String(s.headers?.["content-range"]||""),l=Number(s.headers?.["content-length"]||0),d=vnr(u)||(Number.isFinite(l)?l:0);Mt(n,260),Mt(o,260),s.status,Mt(a);let f=Inr(a);if(f)return Mt(n,260),Mt(o,260),PK(f.data),Mt(f.raw),{type:"cas_metadata",metadata:f.data};let p=Zx(a);return p?.url&&p.url!==n?(Mt(n,260),Mt(p.url,260),pa(p.url),p.header,{type:"nested_playable",playable:p}):/^video\//i.test(c)||/^audio\//i.test(c)||/application\/(?:vnd\.apple\.mpegurl|x-mpegurl|dash\+xml)/i.test(c)||r6e(o)||(s.status===200||s.status===206)&&d>1024*1024?(Mt(n,260),Mt(o,260),pa(o),{type:"playable"}):(Mt(n,260),Mt(o,260),s.status,{type:"unknown"})}catch(s){return Mt(n,260),s?.message||String(s),{type:"error"}}}async confirmShareTextPlayableCandidate(e,r={},n={},s=0){if(!e?.url)return null;let i=e.header&&typeof e.header=="object"?e.header:null,a={...r&&typeof r=="object"?r:{},...i||{}},o={...n,depth:s,url:Mt(e.url,260),host:pa(e.url),headerKeys:Object.keys(i||{}).join(",")||"-"};if(r6e(e.url))return{...o},e;if(s>=2)return null;let c=await this.probeShareTextCandidateUrl(e.url,a);if(c.type==="playable")return{...o},e;if(c.type==="nested_playable"&&c.playable?.url)return{...o,nestedUrl:Mt(c.playable.url,260),nestedHost:pa(c.playable.url)},await this.confirmShareTextPlayableCandidate(c.playable,r,n,s+1);if(c.type==="cas_metadata"){try{let d=await this.getCasPlayableByRestoringToCloudDrive(c.metadata);if(d?.url)return{...o,restoredHost:pa(d.url)},d}catch(d){let p=`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25${c.metadata?.name?` (${c.metadata.name})`:""}: ${d?.message||d}`;return this.setShareTextResolveReason(p),{...o,metadata:PK(c.metadata)},null}let l=`\u5F53\u524D\u5206\u4EAB\u8FD4\u56DE\u7684\u662FCAS\u79D2\u4F20\u5143\u6570\u636E\uFF0C\u4E0D\u662F\u771F\u5B9E\u89C6\u9891\u5730\u5740${c.metadata?.name?` (${c.metadata.name})`:""}`;return this.setShareTextResolveReason(l),{...o,metadata:PK(c.metadata)},null}return{...o,probeType:c.type},null}async initCloudPcLoginParam(){let e=this.cookie||"",r=Ae.create({headers:{"User-Agent":_c["User-Agent"],"Accept-Encoding":_c["Accept-Encoding"],Referer:nI,...e?{Cookie:e}:{}},maxRedirects:5,validateStatus:()=>!0}),n=await w0({method:"GET",url:`${nI}/api/portal/unifyLoginForPC.action`,params:{appId:Z3,clientType:GMe,returnURL:KMe,timeStamp:Date.now()},headers:r.defaults.headers,maxRedirects:5,validateStatus:()=>!0,responseType:"text",transformResponse:[d=>d]},"pc-unify-login"),s=typeof n.data=="string"?n.data:"",i=d=>{let f=s.match(d);return f?f[1]:""},a={cookie:OK(e,n.headers?.["set-cookie"]),captchaToken:i(/'captchaToken' value='(.+?)'/),lt:i(/lt = "(.+?)"/),paramId:i(/paramId = "(.+?)"/),reqId:i(/reqId = "(.+?)"/)};if(!a.lt||!a.paramId||!a.reqId)throw new Error("189PC\u767B\u5F55\u53C2\u6570\u521D\u59CB\u5316\u5931\u8D25");let o=await w0({method:"POST",url:`${sI}/api/logbox/config/encryptConf.do`,data:Gh.default.stringify({appId:Z3}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":_c["User-Agent"],Referer:nI},validateStatus:()=>!0},"pc-encrypt-conf"),c=o?.data?.data?.pubKey||"",u=o?.data?.data?.pre||"{RSA}";if(!c)throw new Error("189PC\u83B7\u53D6RSA\u516C\u94A5\u5931\u8D25");let l=`-----BEGIN PUBLIC KEY-----
${c}
-----END PUBLIC KEY-----`;return a.rsaUsername=`${u}${zMe(l,this.account)}`,a.rsaPassword=`${u}${zMe(l,this.password)}`,a}async loginForCloudPc(e=!1){if(!e&&this.pcLoginState?.tokenInfo?.sessionKey&&this.pcLoginState?.tokenInfo?.sessionSecret)return this.pcLoginState;if(!this.account||!this.password)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\uFF0C\u65E0\u6CD5\u6267\u884CCAS\u79D2\u4F20\u6062\u590D");let r=await this.initCloudPcLoginParam(),n=await w0({method:"POST",url:`${sI}/api/logbox/oauth2/needcaptcha.do`,data:Gh.default.stringify({appKey:Z3,accountType:QMe,userName:r.rsaUsername}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":_c["User-Agent"],Referer:sI+"/",REQID:r.reqId,...r.cookie?{Cookie:r.cookie}:{}},responseType:"text",transformResponse:[d=>d],validateStatus:()=>!0},"pc-needcaptcha"),s=String(n?.data||"").trim();if(n.status,Mt(s,80),s&&s!=="0")throw new Error("189PC\u767B\u5F55\u9700\u8981\u9A8C\u8BC1\u7801\uFF0C\u5F53\u524D\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u5904\u7406");let i=await w0({method:"POST",url:`${sI}/api/logbox/oauth2/loginSubmit.do`,data:Gh.default.stringify({appKey:Z3,accountType:QMe,userName:r.rsaUsername,password:r.rsaPassword,validateCode:"",captchaToken:r.captchaToken,returnUrl:KMe,dynamicCheck:"FALSE",clientType:GMe,cb_SaveName:"1",isOauth2:"false",state:"",paramId:r.paramId}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":_c["User-Agent"],Referer:sI+"/",REQID:r.reqId,lt:r.lt,...r.cookie?{Cookie:r.cookie}:{}},validateStatus:()=>!0},"pc-login-submit"),a=OK(r.cookie,i.headers?.["set-cookie"]),o=i?.data?.toUrl||"";if(!o)throw new Error(`189PC\u767B\u5F55\u5931\u8D25: ${i?.data?.msg||i?.status||"unknown"}`);let c=await w0({method:"POST",url:`${Gi}/getSessionForPC.action`,params:{...VMe(),redirectURL:o},headers:{"User-Agent":_c["User-Agent"],Referer:nI,...a?{Cookie:a}:{}},validateStatus:()=>!0},"pc-get-session"),u=gnr(c?.data)||c?.data||{};if(!u?.sessionKey||!u?.sessionSecret)throw new Error(`189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25: ${fa(c?.data)||c?.status||"unknown"}`);let l=OK(a,c.headers?.["set-cookie"]);return l&&T0.set("cloud_cookie",l),this.pcLoginState={cookie:l,tokenInfo:{loginName:u.loginName||"",sessionKey:u.sessionKey,sessionSecret:u.sessionSecret,familySessionKey:u.familySessionKey||"",familySessionSecret:u.familySessionSecret||"",accessToken:u.accessToken||"",refreshToken:u.refreshToken||""}},this.pcLoginState?.tokenInfo?.sessionKey,this.pcLoginState?.tokenInfo?.sessionSecret,this.pcLoginState?.tokenInfo?.familySessionKey,this.pcLoginState?.tokenInfo?.familySessionSecret,eb(l),this.pcLoginState}getCloudPcTokenInfo(e=!1){let r=this.pcLoginState?.tokenInfo||{};return e?{loginName:r.loginName||"",sessionKey:r.familySessionKey||"",sessionSecret:r.familySessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}:{loginName:r.loginName||"",sessionKey:r.sessionKey||"",sessionSecret:r.sessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}}async requestCloudPc(e,r="GET",n={}){let s=n&&typeof n=="object"?n:{},i=!!s.isFamily,a=await this.loginForCloudPc(!1),o=this.getCloudPcTokenInfo(i);if(!o.sessionKey||!o.sessionSecret){if(!s._retried)return await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0});throw new Error(i?"189PC\u5BB6\u5EAD\u4E91\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25":"189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25")}let c=VMe(),u=s.query&&typeof s.query=="object"?s.query:{},l=s.form&&typeof s.form=="object"?s.form:null,d=s.encryptedParams&&typeof s.encryptedParams=="object"?mnr(s.encryptedParams,o.sessionSecret):"",f=pnr(),p=hnr(o.sessionSecret,o.sessionKey,r,e,f,d),m=await w0({method:r,url:e,params:{...c,...u,...d?{params:d}:{}},...l?{data:Gh.default.stringify(l)}:{},headers:{"User-Agent":_c["User-Agent"],Referer:nI,Date:f,SessionKey:o.sessionKey,"X-Request-ID":R0.default.randomUUID(),Signature:p,...l?{"Content-Type":"application/x-www-form-urlencoded"}:{},...a?.cookie?{Cookie:a.cookie}:{},...s.headers||{}},responseType:s.responseType||"json",transformResponse:s.transformResponse||void 0,timeout:s.timeout||15e3,validateStatus:()=>!0},`pc-request:${r}:${new URL(e).pathname}`),h=ma(m.data);return(m.status===401||m.status===403||h.includes("InvalidSessionKey")||h.includes("userSessionBO is null"))&&!s._retried?(await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0})):m}async getCloudPcFamilyId(e=!1){if(!e&&this.pcFamilyId)return this.pcFamilyId;let r=await this.requestCloudPc(`${Gi}/family/manage/getFamilyList.action`,"GET",{isFamily:!0}),n=bnr(r?.data);if(n.length===0)throw new Error(`\u672A\u83B7\u53D6\u5230\u53EF\u7528\u7684189\u5BB6\u5EAD\u4E91 body=${Mt(ma(r?.data),260)}`);let s=String(this.pcLoginState?.tokenInfo?.loginName||""),i=n.find(o=>s&&o.remarkName&&s.includes(o.remarkName))||n.find(o=>Number(o?.useFlag||0)===1)||n[0],a=String(i?.familyId||"");if(!a)throw new Error(`189\u5BB6\u5EAD\u4E91ID\u89E3\u6790\u5931\u8D25 body=${Mt(JSON.stringify(n),260)}`);return this.pcFamilyId=a,n.length,n.map(o=>o.remarkName||"").filter(Boolean).slice(0,3),a}async ensureCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=r?"pcFamilyRestoreFolderId":"pcRestoreFolderId";if(this[n])return this[n];let s=r?"":"-11",i=r?await this.getCloudPcFamilyId():"",a=tB,o=r?`${Gi}/family/file/listFiles.action`:`${Gi}/listFiles.action`,c=1;for(;c<=10;){let f=await this.requestCloudPc(o,"GET",{isFamily:r,query:{folderId:s,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(c),pageSize:"100",...r?{familyId:i,orderBy:"1",descending:"false"}:{recursive:"0",orderBy:"filename",descending:"false"}}}),m=(f?.data?.fileListAO?.folderList||[]).find(A=>String(A?.name||"")===a);if(m?.id)return this[n]=String(m.id),this[n];if(!Number(f?.data?.fileListAO?.count||0))break;c+=1}let u=r?`${Gi}/family/file/createFolder.action`:`${Gi}/createFolder.action`,l=await this.requestCloudPc(u,"POST",{isFamily:r,query:{folderName:a,...r?{familyId:i}:{relativePath:"",parentFolderId:s}}});if(l.status>=400||fa(l.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${fa(l.data)||l.status}`);let d=String(l?.data?.id||br(l?.data,"id")||"");if(d)return this[n]=d,this[n];throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55")}async createCloudPcBatchTaskV2(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=n&&typeof n=="object"?n:{},{isFamily:a=!1,...o}=i,c=await this.requestCloudPc(`${Gi}/batch/createBatchTask.action`,"POST",{isFamily:a,form:{type:e,taskInfos:JSON.stringify(s),...o}}),u=String(t6e(c?.data)||""),l=fa(c?.data);if(c.status>=400||l||!u)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${l||c.status||"unknown"} body=${Mt(ma(c?.data),260)}`);return u}async permanentlyDeleteCloudPcItemsV2(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=!!r?.isFamily,i=s?String(r?.familyId||await this.getCloudPcFamilyId()):"",a=s?{familyId:i,isFamily:!0}:{},o=await this.createCloudPcBatchTaskV2("DELETE",n,a);await this.waitCloudPcBatchTask("DELETE",o);let c=await this.createCloudPcBatchTaskV2("CLEAR_RECYCLE",n,a);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",c)}async removeCloudPcRestoreFolderV2(e,r={}){if(!e)return;let s=!!r?.isFamily?"pcFamilyRestoreFolderId":"pcRestoreFolderId",i=[{fileId:String(e),fileName:tB,isFolder:1}];await this.permanentlyDeleteCloudPcItemsV2(i,r),this[s]=""}async resetCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=await this.ensureCloudPcRestoreFolderV2({isFamily:r});return await this.removeCloudPcRestoreFolderV2(n,{isFamily:r}),await this.ensureCloudPcRestoreFolderV2({isFamily:r})}async restoreCasMetadataToCloudDriveV2(e,r={}){let n=!!r?.isFamily,s=String(e?.md5||"").trim().toUpperCase(),i=Number(e?.size||0),a=String(e?.name||"").trim(),o=String(e?.sliceMd5||"").trim().toUpperCase();if(!s||!i||!a)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let c=n?await this.getCloudPcFamilyId():"",u=await this.resetCloudPcRestoreFolderV2({isFamily:n}),l=YMe(i),d=n?`${eB}/family`:`${eB}/person`,f=await this.requestCloudPc(`${d}/initMultiUpload`,"GET",{isFamily:n,encryptedParams:{parentFolderId:u,fileName:a,fileSize:String(i),fileMd5:s,sliceSize:String(l),...n&&c?{familyId:c}:{},...o?{sliceMd5:o}:{}}}),p=JMe(f?.data)||{},m=fa(f?.data);if(f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${m||f.status}`);let h=String(p?.uploadFileId||p?.uploadFileID||"");if(Number(p?.fileDataExists)!==1||!h)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let A=await this.requestCloudPc(`${d}/commitMultiUploadFile`,"GET",{isFamily:n,encryptedParams:{uploadFileId:h,isLog:"0",opertype:"3"}}),g=XMe(A?.data)||{},b=fa(A?.data);if(A.status>=400||b)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${b||A.status}`);let y=String(g?.userFileId||g?.id||""),x=String(g?.fileName||a);if(!y)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:y,fileName:x,folderId:u,familyId:c,isFamily:n}}async getCloudPcFileDownloadUrlV2(e,r={}){let n=!!r?.isFamily,s=n?String(r?.familyId||await this.getCloudPcFamilyId()):"",i=n?`${Gi}/family/file/getFileDownloadUrl.action`:`${Gi}/getFileDownloadUrl.action`,a=await this.requestCloudPc(i,"GET",{isFamily:n,query:{fileId:String(e||""),...n?{familyId:s}:{dt:"3",flag:"1"}},responseType:"text",transformResponse:[d=>d]}),o=String(ZMe(a?.data)||""),c=Sc(o).replace(/^http:\/\//i,"https://"),u=fa(a?.data);if(a.status>=400||u)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${u||a.status}`);if(!c)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let l=await w0({method:"GET",url:c,headers:{"User-Agent":_c["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return l.status>=300&&l.status<400&&l.headers?.location?Sc(String(l.headers.location||"")):c}async listOwnFiles(e="-11",r=1,n=100){let s=Math.max(Number(r)||1,1),i=Math.min(Math.max(Number(n)||100,1),200),a=e==null||e===""?"-11":String(e),o=await this.requestCloudPc(`${Gi}/listFiles.action`,"GET",{query:{folderId:a,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(s),pageSize:String(i),recursive:"0",orderBy:"filename",descending:"false"},responseType:"text",transformResponse:[u=>u]}),c=fa(o?.data);if(o.status>=400||c)throw new Error(`\u5929\u7FFC\u76EE\u5F55\u83B7\u53D6\u5931\u8D25: ${c||o.status}`);return ynr(o?.data)}async getOwnDownload(e){return{url:await this.getCloudPcFileDownloadUrlV2(e,{isFamily:!1}),data:{fileId:String(e||""),source:"189CloudPC"}}}async ensureCloudPcRestoreFolder(){if(this.pcRestoreFolderId)return this.pcRestoreFolderId;let e="-11",r=tB,n=1;for(;n<=10;){let u=await this.requestCloudPc(`${Gi}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(n),pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}),d=(u?.data?.fileListAO?.folderList||[]).find(p=>String(p?.name||"")===r);if(d?.id)return this.pcRestoreFolderId=String(d.id),this.pcRestoreFolderId;if(!Number(u?.data?.fileListAO?.count||0))break;n+=1}let s=await this.requestCloudPc(`${Gi}/createFolder.action`,"POST",{query:{folderName:r,relativePath:"",parentFolderId:e}});if(s.status,Mt(JSON.stringify(s.data||{}),220),s.status>=400||fa(s.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${fa(s.data)||s.status}`);let i=String(s?.data?.id||br(s?.data,"id")||"");if(i)return this.pcRestoreFolderId=i,this.pcRestoreFolderId;let c=((await this.requestCloudPc(`${Gi}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:"1",pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}))?.data?.fileListAO?.folderList||[]).find(u=>String(u?.name||"")===r);if(!c?.id)throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55");return this.pcRestoreFolderId=String(c.id),this.pcRestoreFolderId}async createCloudPcBatchTask(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=await this.requestCloudPc(`${Gi}/batch/createBatchTask.action`,"POST",{form:{type:e,taskInfos:JSON.stringify(s),...n||{}}}),a=String(t6e(i?.data)||""),o=fa(i?.data);if(i.status>=400||o||!a)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${o||i.status||"unknown"} body=${Mt(ma(i?.data),260)}`);return a}async permanentlyDeleteCloudPcItems(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=await this.createCloudPcBatchTask("DELETE",n,r);await this.waitCloudPcBatchTask("DELETE",s);let i=await this.createCloudPcBatchTask("CLEAR_RECYCLE",n,r);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",i)}async waitCloudPcBatchTask(e,r,n=300){let s=Date.now();for(;Date.now()-s<15e3;){let i=await this.requestCloudPc(`${Gi}/batch/checkBatchTask.action`,"POST",{form:{type:e,taskId:r}}),a=i?.data||{},o=fa(a);if(i.status>=400||o)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u72B6\u6001\u67E5\u8BE2\u5931\u8D25: ${o||i.status||"unknown"} body=${Mt(ma(a),260)}`);let c=xnr(a);if(c===4)return;if(c===2)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u5B58\u5728\u51B2\u7A81`);await new Promise(u=>setTimeout(u,n))}throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u7B49\u5F85\u8D85\u65F6`)}async removeCloudPcRestoreFolder(e){if(!e)return;let r=[{fileId:String(e),fileName:tB,isFolder:1}];await this.permanentlyDeleteCloudPcItems(r),this.pcRestoreFolderId=""}async resetCloudPcRestoreFolder(){let e=await this.ensureCloudPcRestoreFolder();await this.removeCloudPcRestoreFolder(e);for(let r=0;r<3;r+=1)try{return await this.ensureCloudPcRestoreFolder()}catch(n){if(r>=2)throw n;await new Promise(s=>setTimeout(s,300*(r+1)))}}async restoreCasMetadataToCloudDrive(e){let r=String(e?.md5||"").trim().toUpperCase(),n=Number(e?.size||0),s=String(e?.name||"").trim(),i=String(e?.sliceMd5||"").trim().toUpperCase();if(!r||!n||!s)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let a=await this.resetCloudPcRestoreFolder(),o=YMe(n);e?.create_time;let c=await this.requestCloudPc(`${eB}/person/initMultiUpload`,"GET",{encryptedParams:{parentFolderId:a,fileName:s,fileSize:String(n),fileMd5:r,sliceSize:String(o),...i?{sliceMd5:i}:{}}}),u=JMe(c?.data)||{},l=fa(c?.data);if(c.status,u?.fileDataExists,u?.uploadFileId||u?.uploadFileID,u?.uploadHost,Mt(JSON.stringify(c?.data||{}),260),c.status>=400||l)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${l||c.status}`);let d=String(u?.uploadFileId||u?.uploadFileID||"");if(Number(u?.fileDataExists)!==1||!d)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let f=await this.requestCloudPc(`${eB}/person/commitMultiUploadFile`,"GET",{encryptedParams:{uploadFileId:d,isLog:"0",opertype:"3"}}),p=XMe(f?.data)||{},m=fa(f?.data);if(f.status,p?.userFileId||p?.id,p?.fileName,Mt(JSON.stringify(f?.data||{}),260),f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${m||f.status}`);let h=String(p?.userFileId||p?.id||""),A=String(p?.fileName||s);if(!h)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:h,fileName:A,folderId:a}}async getCloudPcFileDownloadUrl(e){let r=await this.requestCloudPc(`${Gi}/getFileDownloadUrl.action`,"GET",{query:{fileId:String(e||""),dt:"3",flag:"1"},responseType:"text",transformResponse:[o=>o]}),n=String(ZMe(r?.data)||""),s=Sc(n).replace(/^http:\/\//i,"https://"),i=fa(r?.data);if(r.status,pa(s),Mt(s,260),r.status>=400||i)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${i||r.status}`);if(!s)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let a=await w0({method:"GET",url:s,headers:{"User-Agent":_c["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return a.status>=300&&a.status<400&&a.headers?.location?Sc(String(a.headers.location||"")):s}async getCasPlayableByRestoringToCloudDrive(e){let r=[],n=[{isFamily:!0,scope:"family"},{isFamily:!1,scope:"personal"}];for(let s of n)try{let i=await this.restoreCasMetadataToCloudDriveV2(e,{isFamily:s.isFamily}),a=await this.getCloudPcFileDownloadUrlV2(i.fileId,{isFamily:s.isFamily,familyId:i.familyId});return s.scope,i.fileId,i.fileName,pa(a),{url:a}}catch(i){r.push(`${s.scope}: ${i?.message||i}`)}throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25: ${r.join(" ; ")}`)}async getShareTextPlayable(e,r,n="",s="",i=0){if(!e||!r)return null;this.setShareTextResolveReason(""),!this.cookie&&this.account&&this.password&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F"));let a=this.getCachedShareFileItem(e,r),o=n||a?.shareMode||"",c=s||a?.accessCode||"",u=this.cookie?{Cookie:this.cookie}:{};this.cookie,eb(this.cookie),a?.name,pa(a?.downloadUrl);let l=iI(a);l.length,l.slice(0,3).map(p=>Mt(p,260));for(let p of l){let m=await this.fetchShareTextFileFromUrl(p,u),h=Zx(m),A=await this.confirmShareTextPlayableCandidate(h,u,{source:"cached",fileId:e,shareId:r,candidate:Mt(p,260)});if(A)return Mt(p,260),pa(A.url),A.header,A}let d=!1,f=this.buildShareTextApiCandidates(e,r,o,c);for(let p of f){let{playable:m,authError:h}=await this.tryResolveShareTextPlayableFromApi(p,u);if(m){let A=await this.confirmShareTextPlayableCandidate(m,u,{source:"api",fileId:e,shareId:r,api:(()=>{try{return new URL(p).pathname}catch{return p}})()});if(!A)continue;return(()=>{try{return new URL(p).pathname}catch{return p}})(),pa(A.url),A.header,A}h&&(d=!0,(()=>{try{return new URL(p).pathname}catch{return p}})(),void 0)}return d&&i<1&&this.account&&this.password?(T0.set("cloud_cookie",""),await this.login(this.account,this.password),await this.getShareTextPlayable(e,r,o,c,i+1)):(this.cookie,eb(this.cookie),this.getShareTextResolveReason(),null)}async getShareUrl(e,r){let n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"};!this.cookie&&this.account&&this.password&&this.index<2&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F")),n.Cookie=this.cookie;try{let s=await Ae.get(`${this.api}/portal/getNewVlcVideoPlayUrl.action?shareId=${r}&dt=1&fileId=${e}&type=4&key=noCache`,{headers:n}),i=await Ae.get(s.data.normal.url,{maxRedirects:0,validateStatus:function(o){return o>=200&&o<400}}),a="";return i.status>=300&&i.status<400&&i.headers.location?a=i.headers.location:a=s.data.normal.url,a}catch(s){if(s.response&&s.response.status===400&&this.index<2)return console.log("\u83B7\u53D6\u64AD\u653E\u5730\u5740\u5931\u8D25\uFF0C\u9519\u8BEF\u4FE1\u606F\u4E3A\uFF1A"+s.response.data),console.log("cookie\u5931\u6548\uFF0C\u6B63\u5728\u91CD\u65B0\u83B7\u53D6cookie"),T0.set("cloud_cookie",""),this.index+=1,await this.getShareUrl(e,r);console.error("Error during getShareUrl:",s.message,s.response?s.response.status:"N/A")}finally{this.index>=2&&(this.index=0,messageToDart({action:"toast",opt:{message:"\u5929\u7FFC\u8D26\u53F7\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}))}}},tf=new LK;var Bs=Re(Jn(),1);function mu(t,e){let r=nB();return mu=function(n,s){n=n-(13978+-166*83);let i=r[n];if(mu.sbuiTY===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h<A;h++)m+="%"+("00"+p.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(m)};let l=function(d,f){let p=[],m=0,h,A="";d=a(d);let g;for(g=0;g<256;g++)p[g]=g;for(g=0;g<256;g++)m=(m+p[g]+f.charCodeAt(g%f.length))%256,h=p[g],p[g]=p[m],p[m]=h;g=0,m=0;for(let b=0;b<d.length;b++)g=(g+1)%256,m=(m+p[g])%256,h=p[g],p[g]=p[m],p[m]=h,A+=String.fromCharCode(d.charCodeAt(b)^p[(p[g]+p[m])%256]);return A};mu.TgKpDR=l,t=arguments,mu.sbuiTY=!0}let o=r[-2574+-1*-1117+1457],c=n+o,u=t[c];return u?i=u:(mu.zkzZMt===void 0&&(mu.zkzZMt=!0),i=mu.TgKpDR(i,s),t[c]=i),i},mu(t,e)}var $e=mu;(function(t,e){let r=mu,n=t();for(;;)try{if(-parseInt(r(310,"LKbS"))/1*(-parseInt(r(230,"jYoQ"))/2)+parseInt(r(417,"Xaj^"))/3+parseInt(r(200,"Q]Gf"))/4+-parseInt(r(475,"XMYa"))/5*(-parseInt(r(335,"!%np"))/6)+-parseInt(r(237,"lWdt"))/7*(-parseInt(r(579,")!nc"))/8)+-parseInt(r(305,"j8@4"))/9+-parseInt(r(330,"dkje"))/10===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(nB,-425679+268*2513);var Rnr=[$e(256,"@WPP")+$e(456,"$aIC")+$e(609,"j8@4"),$e(591,"uMo)")+$e(576,"I)@B"),$e(415,"4zyD")+$e(419,"jYoQ")],Nnr=new Set([$e(590,"pA$z"),$e(387,"h42)"),$e(389,"2xOe"),$e(414,"@tA8"),$e(302,"rNH4"),$e(360,"dkje"),"ts",$e(569,"LKbS"),$e(644,"h42)"),$e(460,"@tA8"),$e(331,"LKbS"),$e(514,"pA$z"),$e(578,"@WPP"),"rm",$e(647,"!%np"),$e(297,"Mp2^"),$e(630,"JFO4"),$e(524,"jYoQ"),$e(552,"Z@eI"),$e(416,"@tA8")]),c6e=(t={})=>{let e=$e,r={aAgsa:function(a,o){return a(o)}},n=r[e(586,"rNH4")](String,t[e(377,"Lrz%")]||t[e(496,")!nc")]||"")[e(561,"@WPP")]()[e(388,"jYoQ")](/^\./,"")[e(248,"1zMZ")+"e"]();if(n)return n;let s=r[e(541,"1zMZ")](String,t[e(216,"I)@B")]||t[e(575,"jYoQ")]||"")[e(252,"h42)")]()[e(251,"XMYa")+"e"](),i=s[e(604,"#RnD")](/\.([a-z0-9]{1,10})$/i);return i?i[31*-129+3907+93]:""},Onr=t=>Nnr[$e(470,"LKbS")](c6e(t)),Pnr=t=>{let e=$e,r={CUesa:function(n,s){return n(s)},MGxFp:function(n,s){return n||s}};try{return r[e(410,"NvW]")](decodeURIComponent,r[e(624,"uMo)")](t,""))}catch{return r[e(531,"Mp2^")](t,"")}},knr=t=>encodeURIComponent(String(t||""))[$e(388,"jYoQ")](/\*/g,$e(395,"UcnF")),Dnr=t=>{let e=$e,r={bVhWb:function(s,i){return s(i)},exLGD:function(s,i){return s||i},wKvbk:function(s,i){return s===i},YqXUk:e(285,"T0jF"),rbUZx:e(328,"2xOe"),TMxLR:e(588,"c*Ao")},n=r[e(556,"Zp5*")](String,r[e(351,"BiJP")](t,""));if(!n)return"";if(r[e(633,"T0jF")](typeof globalThis[e(245,"m8gi")],r[e(463,"MyyY")])){let s=globalThis[e(502,"1zMZ")](n),i=Uint8Array[e(350,"!%np")](s,a=>a[e(485,"URX%")](-9008+557*2+7894));return new TextDecoder()[e(279,"Q]Gf")](i)}return globalThis[e(472,"MyyY")]?globalThis[e(423,"d47*")][e(236,"Z@eI")](n,r[e(540,"lWdt")])[e(452,"e&rs")](r[e(616,"G4bI")]):""};function nB(){let t=["emoEW7a+ESoznSobWP4R","WQpdRmk0WQ4","nmoDutNdPmoTWPa+WPZcVG","ArlcMCkDpSoJW5fUv8k9","WOldPw3cOSomWOBcIaW","Cmk/W6tcIcBcS8oHW4vmWOW","WPG2cSkEW7xcUCkzW7hdQuK","iCoYW4tdISomWQFcU8ouWQSZ","WP/dKSkvWRSi","zCk/W6dcTcVcSCo9","WQVdRCkJWPKCwSoWWPpcLmkn","dmorW4XaWP7dOthcLSolbW","nmkwjeJcU8odW7S","fSoeWPniW4RcOq","WQDOWOy","r8kyWQ5L","bHJcLmkyvW","WQ7dPSk/WPGstSo2","r8olW45FWP/cTsFdGSootq","mCoaafLjW7lcHSonE8kb","ECoiaSkpsSkoAmo2kq","D8opW4emW7W","W6KKW6FdOCkqWQ3cTNOC","W7SBW6f9W4S","WRxdQqzB","W60wW6u","wxNcGGVdVCoZvmof","qmochmkECq","W6aGjq","ux3dIGhcVXqSjmoBW6pcICodWP4","W6nVW65NWPRdLW","WRFdPwRcGColWONcIqZdSCow","hComWO8","oWP2","W50TkqGGWO8","y8oHlmkZWPZdLCkvlSkrWRS","AsGFmSkFy8kEWQtcJCkW","oWXhrCoO","m8kuaaaeWQ/dHa","WP3cRCknWPyCW57cLr9ecq","ASkdWRuNjCkiuCknW4rv","W6utW5v/W6m","y8kkmhJcT8oUW4GL","W5WtW704WPRcLfK9wKe","W6PKW7y","iLlcJSoEyCk0W5fQoSohWRiF","bCk7W7biDa","FZqlW50","WQuPh8kvoq","d8oYza","rSkAnGubWR7dRf/dMv4","WOxdTmkqWOm5","n8knta","emo2zmoMW4JdUHe","WQDIWOa","WR7dOxpcTW","o8oaEmkDuSkqWQtcMCkKW68","qSobW7aQW4BdPSkHW500W6W","WRFdJ8kxncT+sICyDa","smkeWQH8","dfqt","uZmXWOFdGG","usnzWRxdGCoImSoo","lrbHvG","tHaS","W7KYamkbW6ddTSo0","W7mLnazFW78","qxpcVXJdU8oY","WPBcOCkxWQ49W7S","CCo4WPBcUSkKW5bnaqDL","WQRdPmopW7JcQSoQtK/cRCkn","r8kiWQ5pEa","W6xcGSk4dIPbAG","W5O+kajKWPStW6biWPC","W6XLW5nPWPtdMG","WR4qhmkeW7O","aCkPWQL6F8owa8kmW4zq","cSoNymo6W5RcO1ShWOVcTa","hHrlyCkq","lWLb","p8kpW50riSocWOL3WQ7cLa","jWXh","W4VdUmokW71fWOBdLqnDaGdcT8ke","xSk7WQyoW5W","kSoCrSodW7pdMcbHWRFcKG","cCoEmG","fCkQW79jzq","eNiFWRJdVSoNBG","W505paTZW4K","D8oZWO3cH8k1W5Xqet0","DCoYWRBcKmk8W5q","WRZdPxdcTCoxWOa","FCkQWPeyW6bo","xxFcTq","DdpdHmkb","D8odkCkmB8kvDSo3kXm","E8oLcmkPWR4","pmoycrWEWQ8","cMWqW6C","sWCHWOBdTtWA","BYOBWRVdLa","WQ1SWOlcTIhdK34HWQNdHG","yZPsW64GWR3cHhmQWPK","W7y/gX9KW5OA","WRpdQ8kLWO3cN8kI","wWK9WPC","pSovFmkwFSksWOxcMmk1W40","oJzgDmoi","DxvWWRpcUMXa","W74mlmklW7e","b8oHzSoLW5S","W6u7W7bTW4hdMHCXjrS","C8oucmkhuSkkDq","W701W6hdM8kwWQVcRxKSWRu","j8o1gmkTkG","WROohSkrnW","WO3dU8k/WRibdCoUWQ3cLmkp","y8k1W4pcRdJcU8o2W4m","W5iGmSkwWQtcOW","WRBdRh/cPG","tmklWRe","WOfGuCk/WQ1pfSo5Cmk9","oCoUWP57W7O","D3P8WRlcQG","l8oPFmkZwG","iW9m","FSojnCk1","cCoXiCkyqGzArCoAya","nCobcCk9bG","WORdOmkQWO4r","WQynEK7dKW7dRCoQySoD","WQdcR1FcNCowWPZcTWddJ8or","wCkhnq","zZbh","W67cRfWBWO7dNIFcICoVsG","WRxdVae","bG7cU8kTAIBcNW","lSofn8kocba","etTLxGJdKhzyW7rD","fXlcSCkY","jCkQW5hdNmkRW4jWiczi","guz6WRtdIsasxmonaW","WRmWh8kJW7m","WRhdP8knWPVcPG","FudcLJVdUmo3wCouWOTS","AtWtW4hdV3K","WOmLaCkBoa","WQ8DhSknia","cmoCW7G0W4ddPSkrW50OW7O","AmkKWOpcLSoeWRRcTCoZWQaF","W7tcJ8k9dJXCyM55Ba","WQRdOwRcU8omWOBcRWBdISoF","W6aGnCkB","W6CQcSkyW5C","zZ5IWP4v","yxOvW4BdTwxdRCkfW6OV","WRhdUbXmW5tcHG","W7CKnCkGW7RdTSo/uNBdMq","WO7dLSo5WQesdSkGW5K","WRZdR8khWPNcNW","WP3dVCkRW6u","a8oyWPLAW4BcQW","WPDOumkPWOq","aIZcILZdHKH/oCo3W7y","kmoCxCkbACkm","WPTfcmokpa","WO8nnCkNba","WQumFea","j8ocWO1yW67cOw3dHCkf","WR5aWPJcGYy","W6FcHSkUdXO","xSopW7ygW4JdQ8kD","W6FcHSkOfa","ESkef2tcVSoMW7uYWPldRW","dqNcNSkUxG","rmookCk/WRxdKSkun8kxWQa","WOVdNCkCWQu9","nSkwfW4","WOtdL8kTWOu/","qSkdiq","WQ/dVbXpW4/cGW","WPVcPmkv","FYCAW4BdV2xcTCoWW4Wg","W77cLmkDdG1sFW","W6LCW4nwWP8","x3NcVGS","WRL5WPRcJd0","nIJcLCkvDG","aa/cTSk8CIi","d8oJCCoT","WQewCa","ebtcQSk2FthcGSoxBW","WPbbd8oCmq","WQVdPSkJWQKwq8oQWPBcNW","W7SvW6b6","ENLNW7ZcVgDafLBdMW","fSouW4JdPCot","eSk/W6bu","WO7dG8o4","W48KW7pcSa","jmoJWOpdQaRcKcK","DSkJW5lcOq7cVCoVW4PcWO8","WR3dR3RcTW","gwWOW7ZcPa","W7WToqvZ","y8kTWQOLW6W","WQu5DfhdLG","uwjPW57dImkA","dNzsWOG","W6WFW6DpW5VdMXeQhHW","FCoppmkKWQddImkAkmk9WPq","z3P6WR/cQG","W6PKW6nYWPFdJWm","dCo+o8oZW5ZdT1LBWPdcVq","WQOrvvpdUG","amovp8kpgqO","W7GkW79NW43dIG","W70XjG","smopW7C3W7RdOmkuW4a6W4G","W4WKoX9ZW7GmW7XtWPe","bYJcJwRdPKXSomoBW6O","sIxdSmkaWRS","W4OiesH3","W5ZdVCknW6HnwmoHW5m6WQO","dWNcTSk0wHi","amovmmkBcejCuSoxFa","zrtdN8ka","pSkEdqq4WOu","WQJdR8oy","qCorW41aWPZcRY/dMmoivq","W7W5W7NdVmkBWRG","taGXWPhdMt4c","WPZcOCkvWRerW40","hb1hxG","WRdcRWzy","tGmMWQldLtOExmoigq","W78+W7y","W4jDW4foWOO","mCo/WO8","DCoBcmkDtG","dmoYECoV","WRbRfSoWeHZcR3T0WRO","W5CuWQa","yWVdGmkp","qCkEW4CkWPJdPI3dSmkmyCk8WPK+","W78Jk8kwW7hdOW","AJial8kuDG","WR7dOSkN","q8oKWOVcUCkn","WQKxD0C","uHldRmk+WRyanHfLWPW","BmoHkmkJWPi","cCoLi8ke","W7P+W6y4","CaRdMG","wmkEyW","WQxdUSkDWOCYl8kqWQjuW54","rSkpWRvBEmoAfmogWQir","Cmk/WO8tW71fnHNcMCoV","W7CKnCkGW7RdTSo/uNNdTa","cMWwW7ZcTtHStCoNWP8","WPOed8krzq","fIfZqYq","nHtcVSoN","D8odkCkmAmkvB8oTiHi","tSoufCk4WPq","hmori8kBca","wHBcUmkZWRGAh04","cxKfW7VcPrG","f2WqW6ZcUa","hMWqW64","tmkPlwJcNW","iSkwerWu","W5e0nCkBW73dPCoKtvhdHa","zeZcKcVdHSovDa","WPi3emknW7RcQSoqW63dRWG","AZ4ycmkzzComWRlcTCk9","WQ0kgmkJj8oHid/dG8oh","W6O4W4BcMxJcHZ9YWRJcTa","BYLsWQ0","amoMFCoMW43dMHTfWPxcSW","BmoTW7WpW7S","WQTaDq","W68TlGu","WQmDz2pdGJNdQSoOFCoB","WRrqfmoTdG","WPXfmmoy","C8ouca","WRpdKb9tW4m","WRhdTmkHWO4m","sJGv","WP/dVafoWPBdMG","CmkCjrGhW63dI0tdGLu","AJOEmSoEmCknW6ddI8oI","BYnfWQev","jCoDgW","AdalW6BdSMRcS8oaW5OR","WRPCF8kn","WR0KgSkaoq","EmoooW","AdalW7tdR3/cQCoMW78P","WQddOmol","e8kYma","W47cJSk4eXfur35mCa","WQTCzmkpWP4","WRbOWOlcJcBdNe0NWOpdRq","zGNdHmkjiq","qZGyW7xcUezhySoPWOy","DSkQWOSSW7XhjqJcOmoS","n8kkt8oC","Ad4pkCkiDmok","WPncWOdcLte","r8oEWRC","WQddOwZcOCog","eSo8z8o+W7RdSrvAWP3cNq","WQTDzCkjWOj9ySocv8ko","Emk8WR4nW6zhlG","mmkweaOKWRpdNa","z8k7W6tcSa","W4ejW6ddPSkJW6RcNMKrWRm","W7TLW5n0WPZdLHNdKG","n8oysG","WOZdNmkQWRWVamkUWPfKW4S","WQ1SWOlcPdZdHMqRWPldQW","bCo2ymolW5ZdRrXhWORcTq","W6NcV8oYW5pdK8o+WOHQzSkMa8ot","WQddSNVcOCogWOBcJYhdTmoO","dmosD8oPW4BdRbPCWRhcSG","F8oZWOVcNq","WRRdUaz7W4ZcJ3ddMmoXeW","FSk1W74","cxKwW6BcVGXTsSoS","FSkPW4dcTcVcQ8o5W4zcWOu","qx/cVXtdHSoE","AZ4ycmkzzComWRlcO8k4","imoYz8oJW4RcUq","WRpdR0RcQ8otWO0","mIJcIKNdOunToa","WQjAW5j+W57dGXWscrC","d8kPW5jsy8kAWQ8","W50vjSk0W6O","WPTlcSoyjtG","dItcV0JdGW","cSktWRX1WP/cVmknW70pW5SHW7S","W4FcJmk/d0G","a35pWOxdICozimodaJS","k2arW4RcLa","waJdKmkcbmk0","WQRdPmopW6JcRCoLse/cK8kv","W7BcHmk/eWPDCG","WPBcOCkxWQ49W7VdHXnNrq","cxKwW6BcVGW","WQ54A1T8W5KZW7boWRW","W5RcImkMfrnFzYqnnG","a3zCWOxdIq","vSoGu8opW4pdKI4","WP4QlCkoW6VcUW","WQtdOmkJWRy6Aq","WQ/dRmk5WPWgwCo2WRdcICkf","W7OImmkIW4u","yCkve2hcUmoRW4aPWPddPq","W7yZlSkE","imo7WPKNW7LVmqu","WRL9WOtcJcFdLwuIWPK","sb8qWPRdPcebxCowhW","WPDVtmkXWOK","ECoLW5C","cgnlWP0","WQmjuMZdMW","wSobW7CMW6hdRCkuW5y6W7S","W7SKW7RdQG","WQmDz3hdNYZdSmoIsCoB","EN9vWQ3cGG","WRaxx03dGcJdSmoeBSob","WQ/dI8k2WRiQ","WOtdIdTpW4S","ySoYWQ7cHSk7W5rnjY94","lSolu8kj","pwHuBCogmCkmWOpcLCkzWRyZpW","EcKfnG","WQnbCSkf","uIFdOSk9e8ovW6DzmSoz","amoFWPPpW4RcVwVdQmkPEW","BMBcOYZdOa","zSoOWPhcGq","w8omW7qAW50","n8o+WQldQGlcHG","ztOwW5S","WPmSp8kgW5y","WRpdP8kLWOhcOSko","W7hcImkUor5qBG","W7SNW4BdI3NcNdXKWRpdOW","WRVdQ8kOWPJcKSk6WQ8","fSoeWPfy","dSofomkecsfqxSowFW","c8ovjCk7bqnnvSoUyG","hSovnSknfre","WQjSWR3cGda","CSkGWPelW7fiiYtcLa","bcZcJvG","krPCxCosWQJcICoRW795","pH5AyCocWO/cRCoJW6n3","EZqEp8kc","WQFdQ8kNWRGqwq","WRVdQ8kOWOxcJ8kV","WP4QnCkeW68","hmornq","WOBdKSkTWQetbSkBWOXQW68","6kE15PYn6lEe5yYE5AE96lAu","CCoFh8kMq8kBC8o8fXa","WQWAaSkbjSo8jXi","WPhcVmkUWQCK","dsZcIq","ESkQWOym","WQNdMmkFWPRcIG","lW1np8omWRJdQmoSW7TH","W64JW6DhW60","pGPBEG","W6HVW7rtWOBdNGxdKmkxdq","WP9bmmoXltZcN1DjWOC","x8ofW7aqW4hdQCkhW5CkW7S","rJldU8k0WRyBeabnWPy","nSkNW4m","CCoFh8k0xSkoACo2nru","baxcRmkxDJFcJ8ouzmoJ","mCoCq8kx","jSogcmkDwCkvBmo8o00","ymopoq","WOBdKSkTWQetbSkhWOzGW64","E8k/W77cVZ7cUG","hIldQuZcVmkSu8oiWQXfdKe","WQfEEmkkWQG","a3HZWP7dMa","pX/dG8kdFmkZWOS5vCo+","iCo/WPG","W6/cRKODWPBdMNhdTSodlw/cMq","xXldQSk5","dSkrWR16WPhcVmkMW6yRW6a1W4m","nmkBaHS","tNFcNX7dOSo/","hSovFSkAbafxx8osDG","WPfkl8oVEW","WR5MWQxcKtVdM2iJ","W6uQi8kWW6S","w8opW5a6W5NdRq","tcu6WRFdJq","sNpcPsZdP8o7smohWQT2","CCoomr4hWR7dJXG","WQ7dRSovW4/cOmoQtMpcRCkF","WQtdSmkAWQmv","WRZdHCkKWRmy","gWTokG","WPVdOCkSWQ8wBSoXWRhcJ8kj","WQHOWOxcGh/cHG","u8kHjCk+WPhcRe0yWRNcSKCnfCoB","WRPiWQi6WPBcMKb1lrS+WR8Zma","WQRdUbbg","kJzsWRO0WRdcHMOGW7K","bh5VWPFdMq","WR/dSCkA"];return nB=function(){return t},nB()}var MK=class{constructor(){let e=$e,r={clpYt:e(564,")!nc")+"5",xdtMC:e(228,"URX%")+e(476,"UcnF")+e(558,"uMo)")+e(378,"dkje")+e(213,"dkje")+e(375,"!%np")+e(393,"URX%")+e(437,")IqX")+e(411,"!%np")+e(266,"2xOe")+e(628,"lNDX")+"6",zUcdb:e(593,"lWdt")+e(490,"D*Ik")+e(338,"@WPP")+e(625,"ZtCn"),gqANl:e(235,"Lrz%")+e(432,"OkFO"),EbYEV:e(346,")!nc")+e(301,"JFO4")+e(469,"LKbS")+e(354,"OkFO")+e(337,"Lrz%")+e(353,")!nc")+e(483,"G4bI")+e(613,"2xOe")+e(642,"#RnD")+"|",oFswk:e(479,"j8@4")+e(542,"ZtCn"),vSsFm:e(412,"jYoQ")+e(290,"@tA8")+e(308,"@WPP")+e(548,"jYoQ")+e(315,"MyyY")+e(462,"MyyY")+e(466,"IM[A")+"/"},n=r[e(260,"G4bI")][e(421,"4zyD")]("|"),s=950*1+2*2657+-1044*6;for(;;){switch(n[s++]){case"0":this[e(498,"8irg")]={"User-Agent":r[e(513,"uMo)")],Accept:r[e(396,"UcnF")],"Content-Type":r[e(243,"1zMZ")],"hcy-cool-flag":"1","x-deviceinfo":r[e(501,"T0jF")]};continue;case"1":this[e(271,"MyyY")]=[/https:\/\/yun.139.com\/shareweb\/#\/w\/i\/([^&/?#]+)/,/https:\/\/caiyun.139.com\/m\/i\?([^&/?#]+)/,/https:\/\/caiyun.139.com\/w\/i\/([^&/?#]+)/];continue;case"2":this.x=Bs.default[e(525,"1zMZ")][e(534,"m8gi")][e(648,"IM[A")](r[e(383,"T0jF")]);continue;case"3":this[e(652,"OkFO")]=r[e(464,"uMo)")];continue;case"4":this[e(403,"Xaj^")]="";continue;case"5":this[e(381,"4zyD")]={};continue}break}}[$e(658,"2xOe")+$e(508,"Lrz%")+"n"](){let e=$e,r={OtYqH:function(s,i){return s(i)}},n=Rnr[e(636,"55K9")](s=>globalThis[e(535,"i1ho")]?.[e(379,"c*Ao")]?.[s])[e(268,")!nc")](s=>String(s||"")[e(632,"$aIC")]());return r[e(418,"lWdt")](String,globalThis[e(638,"URX%")+e(355,"JFO4")]||n||"")[e(254,"lNDX")]()[e(344,"e&rs")](/^Basic\s+/i,"")[e(252,"h42)")]()}[$e(544,"dkje")+$e(585,"Zp5*")+"er"](){let e=$e,r=this[e(659,"jYoQ")+e(282,"uMo)")+"n"]();return r?e(210,"jYoQ")+r:""}[$e(619,"1zMZ")+$e(342,"Mp2^")+$e(634,"rNH4")](){let e=$e,r={KEIEG:function(s,i){return s(i)},LtPTF:e(654,"m8gi")+e(610,"NvW]")+e(283,"XMYa")},n=this[e(570,"UcnF")+e(486,"IM[A")+"n"]();if(!n)return"";try{return r[e(449,"MyyY")](Dnr,n)[e(521,"2xOe")](":")[5908*-1+-4847*-2+-3785*1]||""}catch{return console[e(311,"Zp5*")](r[e(620,"I)@B")]),""}}[$e(294,"I)@B")](e={}){let r=$e,n={...this[r(244,"G4bI")],...e},s=this[r(233,"o@gK")+r(303,"uMo)")+"er"]();return s&&(n[r(608,"Z@eI")+r(205,"e&rs")]=s),n}[$e(612,"T0jF")+$e(272,"2xOe")](){let e=$e,r={CprSo:e(424,"XMYa")},n=this[e(619,"1zMZ")+e(392,"G4bI")+"n"]();return n?Bs.default[e(577,"m8gi")](n)[e(317,"2xOe")]()[e(546,"@W9e")](0,5919+-9197*1+-53*-62):r[e(258,"j8@4")]}[$e(276,"@tA8")+$e(339,"IM[A")](e){let r=$e,n={NufTh:function(i,a){return i===a},CtZhg:r(580,"Z@eI"),eYtIC:function(i,a){return i(a)},jcqQW:function(i,a){return i||a}};if(e&&n[r(477,"NvW]")](typeof e,n[r(600,"rNH4")]))return e;let s=n[r(291,"dkje")](String,n[r(234,"Z@eI")](e,""))[r(474,"BiJP")]();if(!s)return null;try{let i=this[r(645,"lNDX")](s);if(i)return JSON[r(601,"MyyY")](i)}catch{}try{return JSON[r(450,"T0jF")](s)}catch{return null}}async[$e(649,"jYoQ")+"pi"](e,r,n=-11290+3215*6){let s=$e,i={vVTpa:function(c,u){return c+u},MTgGx:function(c,u){return c!==u}},a=JSON[s(206,"#RnD")](this[s(447,"JFO4")](JSON[s(238,"2xOe")](r))),o=await Ae[s(529,"dkje")](i[s(289,"Q]Gf")](this[s(434,"UcnF")],e),a,{headers:this[s(299,"BiJP")](),timeout:n});return i[s(215,"Z@eI")](o[s(603,"#RnD")],200)?null:this[s(595,"#RnD")+s(212,"8irg")](o[s(605,"#RnD")])}[$e(465,"1zMZ")+$e(446,"dkje")+"fo"](){let e=$e;return{account:this[e(298,"JFO4")+e(640,"2xOe")+e(309,"i1ho")](),accountType:1}}[$e(207,"e&rs")+$e(554,"d47*")+"nt"](e){let r=$e,n={UDKEa:function(s,i){return s===i},UyiPA:function(s,i){return s===i},ICaGU:function(s,i){return s(i)}};return e?n[r(557,"d47*")](e[r(231,"NvW]")],27*-181+7525+-2635)?!0:n[r(583,"XMYa")](e[r(211,"IM[A")],-7511*-1+107+26*-293)&&n[r(457,")!nc")](Onr,e):!1}[$e(471,"BiJP")](e){let r=$e,n={opnjD:function(a,o){return a==o},SxozV:r(226,"#RnD"),diPzu:function(a,o){return a===o},IJmyj:r(278,"o@gK"),UHMJe:function(a,o){return a!==o}},s=Bs.default[r(467,"pA$z")][r(503,")!nc")][r(515,"LKbS")](-7*-941+528+-1*7099),i="";if(n[r(306,"$aIC")](n[r(249,"uMo)")],typeof e)){let a=Bs.default[r(420,"MyyY")][r(598,"BiJP")][r(607,"OkFO")](e);i=Bs.default[r(637,"OkFO")][r(566,"UcnF")](a,this.x,{iv:s,mode:Bs.default[r(255,"$aIC")][r(533,"55K9")],padding:Bs.default[r(281,"MyyY")][r(219,"URX%")]})}else if(n[r(333,"ZtCn")](typeof e,n[r(481,"T0jF")])&&n[r(522,"BiJP")](e,null)){let a=JSON[r(357,"m8gi")](e),o=Bs.default[r(563,"55K9")][r(495,"o@gK")][r(358,"dkje")](a);i=Bs.default[r(399,"D*Ik")][r(547,"c*Ao")](o,this.x,{iv:s,mode:Bs.default[r(584,"1zMZ")][r(368,"e]tE")],padding:Bs.default[r(363,"Z@eI")][r(596,"T0jF")]})}return Bs.default[r(617,"$aIC")][r(369,"d47*")][r(526,"BiJP")](s[r(523,"BiJP")](i[r(220,"ZtCn")]))}[$e(645,"lNDX")](e){let r=$e,n=Bs.default[r(571,"m8gi")][r(453,"Z@eI")][r(505,"URX%")](e),s=n[r(458,"@W9e")](),i=s[r(277,"lNDX")][r(551,"dkje")](2554+2*-1139+-272);s[r(203,"XMYa")](s[r(641,"@WPP")]),n[r(394,"!%np")](i);let a=Bs.default[r(622,"JFO4")][r(626,"LKbS")][r(238,"2xOe")](n);return Bs.default[r(241,"G4bI")][r(267,"Q]Gf")](a,this.x,{iv:s,mode:Bs.default[r(537,"IM[A")][r(334,"uMo)")],padding:Bs.default[r(428,"j8@4")][r(413,"@tA8")]})[r(655,"c*Ao")](Bs.default[r(573,"i1ho")][r(326,"@tA8")])[r(361,"j8@4")]()}async[$e(436,"2xOe")](e){let r=$e;this[r(499,"h42)")][r(506,"G4bI")](n=>{let s=r,i=n[s(614,")IqX")](e);i&&i[1*1865+-230*-21+-6694]&&(this[s(208,"j8@4")]=i[-6295+-3148*-2])})}async[$e(555,"8irg")+"fo"](e){let r=$e,n={VxwkZ:r(225,"Xaj^")+r(530,"@W9e")+r(560,"MyyY")+r(332,")IqX")+r(322,"pA$z"),XCCki:r(275,"@tA8")+r(222,"@WPP"),YUIdk:r(451,"o@gK")+r(371,"lNDX")+r(493,"uMo)")};if(!this[r(562,"OkFO")])return console[r(639,"$aIC")](n[r(362,"JFO4")]),null;let s=this[r(635,"D*Ik")+r(527,"I)@B")]()+"-"+this[r(264,"Q]Gf")]+"-"+e;if(this[r(539,"d47*")][s])return this[r(229,"ZtCn")][s];let i=this[r(269,"MyyY")+r(202,"jYoQ")+"fo"](),a={getOutLinkInfoReq:{account:i[r(373,"OkFO")],linkID:this[r(559,"BiJP")],passwd:"",caSrt:0,coSrt:0,srtDr:1,bNum:1,pCaID:e,eNum:200},commonAccountInfo:i};try{let o=(await this[r(657,"uMo)")+"pi"](n[r(324,"uMo)")],a))?.[r(512,"OkFO")];return this[r(574,"JFO4")][s]=o,o}catch(o){return console[r(482,"T0jF")](n[r(250,"LKbS")],o),null}}async[$e(631,"D*Ik")+"ta"](e){let r=$e,n={fVCVq:function(c,u){return c in u},uPFWK:function(c,u){return c>u},yGIKE:function(c,u){return c(u)},wnEmA:r(359,"LKbS"),niFqM:r(520,"j8@4"),wkKkE:function(c,u){return c===u},LLNeN:function(c,u){return c===u},YKvpx:function(c,u){return c>u}};if(!e)return{};let s=e[r(385,"pA$z")](n[r(511,"uMo)")]),i=s?n[r(263,"NvW]")]:e;s&&await this[r(594,"Z@eI")](e);let a={},o=await this[r(492,"Z@eI")+"le"](i);o&&Array[r(438,"d47*")](o)&&await Promise[r(589,"@WPP")](o[r(468,")IqX")](async c=>{let u=r,l=c[u(487,"Z@eI")]||c[u(390,"IM[A")];!n[u(519,"c*Ao")](l,a)&&(a[l]=[]);let d=await this[u(295,"G4bI")+"l"](c[u(618,"d47*")]);d&&n[u(459,"h42)")](d[u(402,"j8@4")],2734+1*-2734)&&a[l][u(259,"XMYa")](...d)}));for(let c in a)(!Array[r(214,"4zyD")](a[c])||n[r(488,"Z@eI")](a[c][r(439,"Q]Gf")],6110+1661*-1+-4449*1))&&delete a[c];if(n[r(606,"Lrz%")](Object[r(288,"lWdt")](a)[r(426,"IM[A")],-7547*-1+-4836+2711*-1)){let c=await this[r(592,"!%np")+"l"](n[r(376,"dkje")]);c&&Array[r(518,"URX%")](c)&&n[r(646,"2xOe")](c[r(427,"lWdt")],-2959*1+-7060+-1*-10019)?a[n[r(478,"Q]Gf")]]=c:(a[n[r(217,"8irg")]]=await this[r(321,"j8@4")+"le"](e),a[n[r(597,"e]tE")]]&&Array[r(651,"lWdt")](a[n[r(509,"BiJP")]])&&(a[n[r(247,"@W9e")]]=a[n[r(549,"1zMZ")]][r(565,"m8gi")](u=>u&&Object[r(336,"o@gK")](u)[r(304,"e&rs")]>2*-1402+-1*4219+7023)))}return Object[r(300,"h42)")](a)[r(352,"o@gK")](c=>{let u=r,l={usoWO:function(f,p){return n[mu(386,"uMo)")](f,p)}},d=Array[u(400,"Z@eI")](a[c])?a[c]:[];a[c]=d[u(480,"D*Ik")](f=>f&&f[u(273,"lWdt")]&&f[u(562,"OkFO")])[u(349,"2xOe")](f=>{let p=u;return{vod_name:f[p(543,"ZtCn")],vod_id:[f[p(528,"o@gK")],f[p(401,"d47*")],l[p(372,"@tA8")](knr,f[p(382,"D*Ik")]),f[p(425,"XMYa")]??""][p(262,"D*Ik")]("*"),vod_size:f[p(461,"rNH4")]}}),!a[c][u(491,"LKbS")]&&delete a[c]}),a}async[$e(209,"lNDX")+"le"](e){let r=$e,n={moUPr:r(242,"ZtCn"),QmuED:r(440,"UcnF"),ukbCy:function(s,i){return s>i},FLIXt:r(627,"pA$z")+r(341,"NvW]")+r(602,"Zp5*")};if(!e)return null;try{e=e[r(385,"pA$z")](n[r(489,")IqX")])?n[r(221,"#RnD")]:e;let i=await this[r(448,"m8gi")+"fo"](e);if(!i||!i[r(538,"#RnD")])return null;let a=i?.[r(500,"I)@B")],o=a[r(287,"8irg")](d=>d[r(314,"j8@4")]),c=a[r(367,")!nc")](d=>d[r(507,"URX%")]),u=/App|活动中心|免费|1T空间|免流/,l=[];if(a&&n[r(318,"Z@eI")](a[r(365,"c*Ao")],-2324+51*103+-2929)){o[r(265,"URX%")]((f,p)=>{let m=r;!u[m(532,"4zyD")](f)&&l[m(292,"@tA8")]({name:f,path:c[p]})});let d=await Promise[r(582,"Q]Gf")](c[r(656,"h42)")](async f=>this[r(246,"1zMZ")+"le"](f)));return d=d[r(581,"lNDX")](f=>f!=null),[...l,...d[r(313,"OkFO")]()]}}catch(s){return console[r(445,"jYoQ")](n[r(435,"UcnF")],s),null}}async[$e(270,"MyyY")+"l"](e){let r=$e,n={vEGyM:function(s,i){return s in i},fboGh:r(280,"NvW]"),YAZQe:function(s,i){return s!==i},eChTm:function(s,i){return s!==i},MWANd:r(408,"d47*")+r(650,"$aIC")+r(422,"ZtCn")};try{let s=await this[r(404,"XMYa")+"fo"](e);if(!s||!n[r(431,"rNH4")](n[r(406,"!%np")],s))return null;let i=s[r(307,"ZtCn")];if(n[r(240,"$aIC")](i,null))return i[r(348,")!nc")](o=>this[r(473,"e]tE")+r(327,"o@gK")+"nt"](o))[r(455,"!%np")](o=>({name:o[r(261,"i1ho")],contentId:o[r(398,"@tA8")],linkID:this[r(232,"o@gK")],size:o[r(409,"c*Ao")],path:o[r(653,"e&rs")]||"",coType:o[r(319,"G4bI")],suffix:c6e(o)}));if(n[r(320,"UcnF")](s[r(494,"Q]Gf")],null)){let a=s[r(343,"uMo)")][r(384,"jYoQ")](c=>c[r(433,"#RnD")]),o=await Promise[r(516,"Xaj^")](a[r(287,"8irg")](c=>this[r(293,"c*Ao")+"l"](c)));return o=o[r(567,"Xaj^")](c=>c&&c[r(550,"MyyY")]>1*-1130+-5721+6851),o[r(454,"IM[A")]()}}catch(s){return console[r(629,")IqX")](n[r(572,"c*Ao")],s),null}}[$e(340,"e&rs")+$e(587,"MyyY")](e){let r=$e;return e&&(e[r(517,"D*Ik")]||e[r(257,")!nc")+"L"]||e[r(201,"IM[A")+"L"]||e[r(345,"o@gK")+r(568,"e]tE")])||""}async[$e(643,"lWdt")+$e(599,"JFO4")+$e(442,"@tA8")](e,r){let n=$e,s={YFFIh:n(405,"55K9")+n(510,"rNH4")+n(325,"o@gK")},i=this[n(615,"jYoQ")+n(370,"rNH4")+"fo"](),a={getContentInfoFromOutLinkReq:{contentId:e,linkID:r,account:i[n(224,"URX%")]},commonAccountInfo:i},o=await this[n(545,"rNH4")+"pi"](s[n(497,"$aIC")],a);return this[n(204,"LKbS")+n(429,"@WPP")](o?.[n(621,"I)@B")]?.[n(323,"55K9")+"o"])}async[$e(284,"JFO4")+$e(239,"UcnF")+"ad"](e,r){let n=$e,s={OoEOU:n(441,"h42)")+n(316,"I)@B")};if(!e)return"";let i=this[n(615,"jYoQ")+n(296,"Zp5*")+"fo"](),a={dlFromOutLinkReqV3:{account:i[n(443,"@W9e")],linkID:r,coIDLst:{item:[e]}},commonAccountInfo:i};return(await this[n(553,"G4bI")+"pi"](s[n(356,"G4bI")],a))?.[n(274,"8irg")]?.[n(407,"URX%")]||""}async[$e(374,"Xaj^")+"ay"](e,r,n="",s=""){let i=$e,a={nMmxc:function(l,d){return l(d)},ktWbP:function(l,d){return l===d}},o=a[i(623,"LKbS")](Pnr,n),c=a[i(444,"Z@eI")](Number,s);if(a[i(286,"Xaj^")](c,7*-820+4*731+-704*-4)){let l=await this[i(366,"IM[A")+i(430,"JFO4")+"ad"](o,r);if(l)return l}let u=await this[i(223,"55K9")+i(391,"h42)")+i(504,"2xOe")](e,r);return u||await this[i(611,"lNDX")+i(536,"e&rs")+"ad"](o,r)}},WK=new MK;var A9r=Re(Jn(),1),$r=Cs;(function(t,e){let r=Cs,n=t();for(;;)try{if(parseInt(r(477,"wAG8"))/1*(parseInt(r(799,"owGi"))/2)+-parseInt(r(683,"&1aG"))/3*(parseInt(r(504,"&1aG"))/4)+parseInt(r(484,"Zi77"))/5*(parseInt(r(700,"%pyk"))/6)+parseInt(r(882,"KKCQ"))/7+-parseInt(r(611,"KLQ)"))/8*(parseInt(r(898,"KLQ)"))/9)+parseInt(r(571,"J9r#"))/10*(parseInt(r(967,"bS5h"))/11)+-parseInt(r(875,"aj)6"))/12===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(iB,759989);function FK(t){let e=Cs,r={aQTMv:e(518,"gKLo"),Xhcaf:e(588,"wAG8")};return Buffer[e(837,"&1aG")](t,r[e(500,"*N*l")])[e(784,"HEZz")](r[e(903,"Ao3N")])}function Bnr(t){let e=Cs,r={ucHpM:function(n,s){return n(s)},ofBhN:function(n,s){return n||s},VcqJp:function(n,s){return n+s},kbRIh:function(n,s){return n%s},THvmR:function(n,s){return n-s},KQCCl:function(n,s){return n%s}};try{let n=r[e(954,"owGi")](String,r[e(660,"oHWm")](t,""))[e(600,"J9r#")](".")[1]||"";if(!n)return null;let s=n[e(573,"Ao3N")](/-/g,"+")[e(710,"aj)6")](/_/g,"/"),i=r[e(927,"MXDr")](s,"="[e(539,"QmV5")](r[e(857,"Iz)7")](r[e(544,"J9r#")](-5810+5*665+2489*1,r[e(521,"g3tn")](s[e(966,"KKCQ")],-1*5317+5900+-579)),-2872*-1+1*263+-3131*1)));return JSON[e(668,"&Q7w")](r[e(688,"&Q7w")](FK,i))}catch{return null}}function Cs(t,e){let r=iB();return Cs=function(n,s){n=n-(5*809+2686+-2094*3);let i=r[n];if(Cs.fbcJKL===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h<A;h++)m+="%"+("00"+p.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(m)};let l=function(d,f){let p=[],m=0,h,A="";d=a(d);let g;for(g=0;g<256;g++)p[g]=g;for(g=0;g<256;g++)m=(m+p[g]+f.charCodeAt(g%f.length))%256,h=p[g],p[g]=p[m],p[m]=h;g=0,m=0;for(let b=0;b<d.length;b++)g=(g+1)%256,m=(m+p[g])%256,h=p[g],p[g]=p[m],p[m]=h,A+=String.fromCharCode(d.charCodeAt(b)^p[(p[g]+p[m])%256]);return A};Cs.coJsOy=l,t=arguments,Cs.fbcJKL=!0}let o=r[-57*125+-19*-445+266*-5],c=n+o,u=t[c];return u?i=u:(Cs.zmvfMA===void 0&&(Cs.zmvfMA=!0),i=Cs.coJsOy(i,s),t[c]=i),i},Cs(t,e)}function Lnr(t){let e=Cs,r={MrYiL:function(n,s){return n(s)},TbCui:function(n,s){return n||s},XVIcz:e(465,"Ao3N"),QijBp:function(n,s){return n(s)}};try{let n=new URL(r[e(753,"2yCc")](String,r[e(488,"MXDr")](t,""))),s=n[e(709,"HEZz")+"ms"][e(938,"adg$")](r[e(722,"*xiV")]);if(s)return r[e(646,"g3tn")](FK,s);let i=n[e(701,"^[8e")][e(820,"KKCQ")](-6359+-3*-2120)[e(807,"YY@*")]("&")[5531+3139*3+202*-74]||"",a=i[e(599,"*N*l")]("=")?i[e(692,"yC4z")]("=")[-5944+-211*42+14807]:"";return a?r[e(909,"Ob^R")](FK,a):""}catch{return""}}function u6e(t){let e=Cs,r={sFVfz:function(n,s){return n(s)},RjwxI:function(n,s){return n||s},aRIgF:e(522,"Ao3N"),nMKQe:e(537,"MXDr")};try{let n=new URL(r[e(624,"J9r#")](String,r[e(454,"yC4z")](t,"")));return n[e(590,"u0f9")]=n[e(810,"[8^[")][e(526,"u0f9")](/_24_24(?=\/|$)/g,""),["w","h",r[e(901,"$pzm")],r[e(507,"q)Z3")]][e(752,"Jl74")](s=>n[e(883,"KLQ)")+"ms"][e(486,"J9r#")](s)),n[e(894,"gKLo")]()}catch{return""}}function Mnr(t){let e=Cs,r={bEzLj:function(n,s){return n(s)},PvRXA:function(n,s){return n||s},SIpct:function(n,s){return n||s}};try{return r[e(480,"Zi77")](decodeURIComponent,r[e(916,"!njl")](String,r[e(804,"KKCQ")](t,"")))}catch{return r[e(726,"g3tn")](String,r[e(819,"aj)6")](t,""))}}function Wnr(t){let e=Cs,r={EWYnw:function(n,s){return n(s)},sMmAJ:function(n,s){return n(s)},SkCVI:function(n,s){return n||s},cIAyN:e(796,"HEZz")};try{return r[e(666,"aj)6")](encodeURIComponent,r[e(649,"2yCc")](String,r[e(597,"$pzm")](t,"")))[e(582,"KKCQ")](/\*/g,r[e(523,"YOvU")])}catch{return""}}var $K=(t,e)=>t?t+"/"+e:e,UK,qK={},sB={set(t,e){let r=Cs;qK[t]=e,UK[r(887,"^[8e")](r(918,"u0f9")+t,e)},get(t){return qK[t]}};function iB(){let t=["gCkEW6u","W4BdMSormCoVhCoroW","DmkRWONdRmkJpSotWR3dQ1C","dSonWOiECW","fCo+WPOhW6X5W54Y","CsdcS8o1AX/cQ8kYWQxcLW","W7JdMvzeCZfygCkecW","W4PsWPfdwvpdH8keW7pcOG","dmoiisVcJ8oIWQe","aCoUW49cmCoUW5O","f8o7W5K3j000umosW4u","WRv8WQldSa93WPG","nbCpsa","sSo/W5Pn","B8k0WONcT8oYaSo0WO/dQqe","f8oEesZcMmoWWQW","W6NcGmkeW7fXWRBcKmkx","l3BdKNlcPmk4qW","gSoEctdcNG","sqtdId4N","ta3cLW/dTSoNWP8","vmkJE3bpW6VdMYVdHCoK","rCosihjbW6JcKxldHSo5","edSHW4xcHeZdMNhdISocW4JdTG","ls7cTSkfkge","tZNdHf/dKW","W67dKw1of8kUxmk5","hLxdI0NcT8oTWPtdNLz8","W44XW40Wia","W695WOKRE8kyk8knemoi","WPOcW6zUWQPBWRKWW5ZcPW","vmkPxsf0W4jBatjS","c8kRWQWyuvNdQte","amkJWRu3tW","W5KDW5qq","xmkrumkzWQmLW6/dLSkjWQ0","o8kIWRKpu33dVJe","cXes","WOPFWPxdTWq","W7BcH8kOW4zE","vSogWR5vWOG","qSoHC8kWWQ8","W7hcRsZcIW","W7lcPmo3nG","W5OzW5q","mCk3sMXx","mqKh","WQ3dUHRcGSke","ggtdJwhcPa","ASoXW5LcBmkZWOHbW7i9","W5tdIK1oamkFuG","xsZcS8kvpeBdUCo/W6ldPq","W7C4W5K4ca","lYBcRSkb","WQvZW7nAW4K","ar8zxHW","WPr4WPZdVqi","u2TfWQddKCoEW6VcGM7dJfHDda","sgjhEmk6","h8kUWP4","umoopZpdHCoYWRdcUmkfrW","zCoDWR1w","FCo7W6PkrM/dJbNcK8kV","W5JdKCk8W6fTW4mXWRZdHfe","hupdMYRdSmoGWP/dNaD8","drRcUCk3WOK","lxldJvJcOmk+qXy","WQJdUcdcGCkS","uGaUW5WCtmo9iCk6dq","W4BdKSoppCkUsCkpACkfiG","W4/dLMni","xmo1FCk3WO4","vbaUW7a","W4BcPmoJFCkElmogW5BdImkI","btSfW7a","tSk4wJ5RWPiCkxGW","zrVdVf7dSa","bepcSG3dQCoIWP7dPbvT","FmkgsmoHWR5ZdNFdK8kUWP8","mCkaW6GtW5/dRSkubCoMW6S+wmks","vgD1WOpdLbW","CmkIWP/cSmkUmmof","WQ7dRXRcMmkpW5mJfIS","r8oWW4Dy","W4hcIt7cSmkY","a3ddVSoJ","lclcRG","W7tcUCkHWPq","t8k4scnKWO84iwu/","bSkfy25bW6xdMW","hctcS8kRWQJdVmoZvq","CthcQ8kBcW","W6FdPSkeWPpcHK/cVsBdUL4","o8kVWQOlu0q","tq7dRhxdUW","mZpcT8kjda","W6JdQSoUnSor","smosWQfsWQtcJwPvWR/dPq","AWHbzHi","xSoTgmo3","AmkgWQ/dGSoVv8kd","W7JdPCo0n8o7","nmk7W4KTje9UhmkpWOO","yaZcIrtdTCoIWPRcNeuH","WPBdOWtcSmk0","ya7dP3RdTq","xCoiWRWkzSo+dGNcRI0","CSkQW4pcOSk/pSkpWQ/cRvu","kcBcRSkf","hq0FxZm","ECkPsdy","pWCgBWm7Ba","5yIf5B2k44oi6ysW572y44cN56Mc5RUy6lYs6kks","cslcU8ksbhFcUG","WRWPW4L1jmo0t8oRzmkk","rCovqSkFWOm","rZaHduJcM8ohWPb6Ea","Aaz8","aSkxdCkQu3efWR8","nIlcTSkG","dmovcSkXW6bnlK0","WQP4WQm","sIJcS8kY","lNVdGNxcPmkzuHKdWP8","jmkVWRyAqL4","xmoyWRjeWOG","W47cNmoxj8oUeG","W7xdOSkvWOVcML8","fmkDW64","zSkDWRNdK8oLyCkxWQ0vsG","lSo4WR8irW","W5dcKCkKW5DJW45I","W7aoW7KyjG","W4C/W48YgW","dmkMW7HbWPq","W4/dVCodWPtdHW","Bqy8W4e/","gCoija3cGSoWWQFcS8k4ta","lYJcRCkodwRdU3PEW5m","ucWLW4pcHatdIfNcH8oB","WOnwWQVdLXi","W4FcV8kMWPXb","W5pcHSkZW7e","EaldTd0B","BLO9qtGRFmom","WPSrW7a","rSoREmkQ","W43cP8kTWRTB","W6ddV8kyWPRcPKG","W4tcV8kIyCkzmmofWOJcNSoI","AL5oDSk0","umksqbrf","gGFcK8o6BXZcSSkSWQ3cGq","BqddJb46Aa","WRhdVgDebwqvqSoqaG","aCk1bmkkxa","gmkfWOSP","ds7cTSkfl2tdT3S","yMFcM8kqewNdV0KuW5G","WRNdUHZcKa","WQzQWRa","pgBdL28","W63cPmkK","smkYEIv1WO4gjW","WP8vW61QWQPS","sSo6WOnQEa0/e8oPW4u","WPX8W4HdW5O","W7tdL2PtpSkxwmkP","qSoXW4LfBSkjWPTj","oSocjZdcHSo+WRtcSSkKua","W5VdT8owWRtdNSkDkW","W7y3W6pcQ1OQW5ZdICoyWRa","tmouWQ1tWOG","tNfvWOpdHrxdKa","iGOusG","gCoVAa","W73cRSkTWPK","B8kFBJXn","WQpcIGzvb2ydfmksDZRdS8kw","ASkhWQ/dLq","DCkZtZ5lWO4Bna","nmkZeCkcAa","qCoJFG","WPDVWOhdNsS","es8cW7K","rmoSWPecW6T4","W47dQmoiWPJdIW","W67dMSk8WO3cPq","W7/cKmkWW71oW4r5WQS","cmktW71TWQpcGMnF","ls7cTSkfpMVdU3mu","WR5RW65jW5/cL3RdNfldVa","sNnaWOldSq","W73cL8kIWR03WP49W7hcNWy","W67dHmofh8ov","t8oSWOS","xSo/W51FCmkZWPTr","W6tdPSoRW50VW6dcM8kXqmkV","j8kPy2fu","WRr1WRRdPG8","hc7cTmowvt7cUMzhWO4","uGaUW4SBwSoHkmkrdq","yGFdHHq/zCkTW64","kCoDeSkGW6jq","aW0yqJC","W7dcKSkRW5XIWQlcNq","W5/cImkgW4TzWQC","W5JdMv0cwq","WPpdVHdcHq","xSoOfmkJW43dULxcUXSp","FbH8","WR4PW499","W40jW5mz","xmoMWP4wW6S","eSkpyuDbW6xdLG","mCkJdmkKWRi","lSk4WRCq","WO0HW5uQp8o6xmkKFmkn","rSo2umkSWOG7W7W","AWRcNXJdKmoQ","W73dLtZdKCoqWOrKqgK3","BCkMWP/cSmk/omosWR0","WQn4WQFdPa","B8kbWQFdLCojwG","E3KQxq","W73cRsRcJ8oV","u8kWbG","zJe+W44r","fJCyW5/cJG","W7ddLLC","W47cOmkImCkaF8kfW4/cHSk/","e8kfz05jW7ddM1dcHSk2","W43cOSoQoSobs8khW4O","wSkaWQRdGSoLBSkqWQG","WR0TW49py8kGdSk5a8ox","WQb8WQC","Cw4mFmoV","yqTJ","W77cHmkEW714WQlcLSkAW5mq","kJFcQSkmcgBdU2OyW5u","gSkRiG","pSkPlCkbDq","rg7cR3ddQghdQ8oxEs0","xaSZW6W","psJcQ8kkWONdQSoWxfuC","iMpdLN7dI1VdKmovAhm","dCoiiNhcMCo4WRlcUmkUsW","sGBcHXddOmokWPtdHb5J","sJZdJ1/dMW","BmoMWOGlW7n/W4SZuHu","gSkPgSkzWPm","d8ogECkSWPu3W6blCmos","WOG+W6Xuqa","W6hcMsVcI8kY","rSouiZmyWRxcIhBcOmkBgCkJW6W","omo3hmkKW5C","sCoSFCk7WQu0W6qjja","v2mKxmoRh3hdHrlcRq","D8odWRvp","p8kjzY0vWRxcIsRdH8oH","W7tcVde","W7aGW6BcSvK8WP/cR8oOWQVcQvu","pmorh8kMW6rkdfxdL8k4","WQOPW4HVE8kUdSkO","dSoVg2LcWOuFkxiw","B8kIWOVcPSk3","v3DNWPK","W6BcTCojn8oI","W4FdIMzooa","bfDP55Ma55Ii5B2U5AAI6lwO77+z6k6B","55I05B+H6l655P+l776l6yEV5PES55Mp5B+W","WRDQW65r","W4/cV8kMW4WAWOpdS8oLDmkN","WQ4NW6HOECkOeSk7","uCoVhSoSW7G","rNf3","l8kXW4r1WQC","FSkgsSoTWRatB2pdJSkYWP8IW7e","ACoSFCk7WRm+","WRHWW60","oX/cLSkPWQa","WQFcKGjvarzjhCkCuq","rCkVWO/cOSkP","A8kUxWnW","6i6l5yYl55UXydxdLoI1JUwoT+AiH+wlGq","WRWNW4LzASkIfa","z8oqWQHd","W6RcS8k5WO9lW4VcPW","bmkRamk/WRu","nbyuxXZdU8kEW4q","dSk0Ehfl","WPCrW7DS","ve9FWOhdHq","Eb7dTZyz","WPpdJCoNW6DZ","A8kTWRhdVmoQ","u8oIbCoI","zdFcU8koudFcQte","i8kBfCkCDxeAWR/cSgG","nCk8dSk/Da","W4NdNCouia","r8oIh8oCW7RdVKxcOWrj","WQpdTSofW4jYW6dcKG","dSkJWRqyEfFdTI0","W7VdSCoiWPtdSCkFlHy","ywT4WPtdVHa","eSkDemkfBq","WPJdGJdcGCkK","WRCFW7rJWRjRWQ0MW6xdQa","W7BdT8kaWPC","i8kjFtquWR3cNNZdGSoJ","jYJcVq","oc/cU8ksbfFdV3KuW4i","WQv6W64","W5hcUmkUWPvIW5hcOmoP","qxi6W5NcVCkLWP/dOGldTq","6i295y2t55MCWOeYWRlLRk3NO5NMIB/LIyu","BG9K","W5RdNhG","WRS7W5G","jmkVqfy","q8oQDG","WRZdRmoGW5vVW57cM8k0dSkJ","lSoqgG","yYjjySk+gW7dNJuo","vbuZ","wmkvtdbJWOiA","WRj+W65y","W7FcT8kS","BCo5WO9NWOS","umkYtG","W77cHmkE","W57cPmk+","W6tdKxSuEq","zb7dPuldQW","dSk2W6vKvmkrWQujWOCd","l2ddHNpdVmkEyZHlW58","gsZcQ8kRWOhdSSoSsq","vGOHzWhdPSkL","tqxdIWWw","W6FcQsJcHSkHCwu","jYlcTmkhfw0","zmk+wSkbW7BcUbtcINC","kCktWRCuEa","adyD","WQT8WR3dOH5S","bLDSWQ1kASobdSkJg8ox","cSkEW6zIWQtcJtfiWQ3dSG","cLS/tXSEAmoAuq","rNDGWPK","pmkkdmkMCa","ESkIWPJcSCkGomouWQtcVv8","wWJdJIqdBCkTW6NdGq8","W6tdJeLyhq","m8oqumo9lMajWRtdL2u","FCoVzSkMWRm","W6ldT8kaWP4","oYpcU8k8WONdTmo6","W47dKw1of8k1tSkK","W5JdSfTPiW","W7VdKgbzo8kA","WOZcQmo+WRtdNmkridK","AqZdGqKwFSo+","qalcGW","W5ZdQmouWP3dLSkDiGFcUSkm","aX8bta","BCkMWP7cOSkIja","WR5UW6bUW6i","W64uW4eddY7cMSoj","obGerGS7zCopx8kd","FaS8W7C/uSoGoq","W4FdLSoj","wmoAW4jnWPNcRKiwW6JdUG","55Mt5B+C5OUV5yU6","vtpcPrddNq","lSkJWRqju0q","WPjWW61xW4ddGJtcL3ddMq","gSk8WO81Fq","phL3w8kPohK","fCovnIFcSG","WQOPW4HVFmkUdSk4","W7FcIslcPSkQ","FcdcQ8k/f0G","f8kwamk9EeaFWR4","lCoAaCofW7z5W78","WQtdValcR8kJFwn7","W4NdL8oyo8kUdmoqp8ospG","gCoUWRGDFCo2","W5pcMmk3W6DUW5K","emkCiSk6Da","cX4JyIK","stNcQ8kZkG","ECkjWR/dMa","W73cGmkEW48","W63dL8o3WQu","CCkVWOBdMSoI","fSomiW","lc7cTmooudFcQw4qW5q","ANrnACkb","umozWR1qWOlcImoBlq","emkDW6rGWOhcIN1oWO7dVW","W5ZdQfHXba","abSbFHhdISkBW4unmq","eSkbywSpWRpcJtpdMSoK","heuBW6Gdv8o2gSkWdG","ESo4W6PfC1tdRchcRmkw","gCo9mtBcHq","W4pdOSkvWPG","f8kzW7Gvlq","hCkPa8kGtq","jCklfCkN","phFdHW","W6VcKSkpW5OTWPBcSmk5WRjb","WQ5pW4XuW6G","WRyGW4TjBG","W4hdG8ou","WO5sWPbFwKVdJ8kqWO7cOa","g8kNeSkj","WPrXWRldTW9rWP7cHq","WRGPW4H5pCo1","W6BcNajwb2idrSofqq","FwKQ","srRdNNxdSW","ACk1WO3cP8kQcmolWQZcVq","W4lcHmomkSoH","gSoUWQa+ymo/dLxdNwu","WRCPW49/yW","oslcQSkmagBdVW","ECkjWRJdG8o3uCkvWQG","uqqUW7K","5BcX5P2d55UB5BYU772/5BYm5Asv55UH5B+J","xSoay8kjWQ0","W7tcQdW","FKqHlgiHWP0CbSkZ","W77dNXWggZvlg8oeva","W7hcLCkEW55JW7NdI8oqW6Go","uJ3cS8kQlrBcS8kZW6hdLG","pCkoDw1SW6/dJxa","j8kFaSkNEe8CWQpcIwm","WQpcHGnvdgCnamk/BJldTCkj","W7tdS8keWPRcJLG","s8knWQRdGSoLtmoh","CNGQrCo0st/dHvddTa","WPddKCo+W5Po","acVcMmkjWQ8","kCodWQivwW","tqddJb4SySk/W7FdKW","o8kodSk/WPC","sIJcTmkPkupdRSo4","DCoouq","x8o3bCoZW7NcPrNdVXHj","y8oGWOTkWQOJWP15nfe","frCgAr4","bmkvygO","mG0nwq","jCkAbq","hmkhnCkXW75KmfxdGG","q1PXWQFdLG","eCkzW6WLWORcHM1rWQFcVW","pWqvxG","W6pdRSke","mCk4WRKruq","xJHaxtC","W6JcO8oRpmoJD8kgW5i","xHpcNXtdRq","uYFcOCk1","yeTtECkA","emkgW711WR7dMsevWR/dOq","fCo9Acf3WOSnf3i8","W73dUCkSWPvzW5BcV8oYi8o3","oSoIgJNcNa","cq0wqH3dGSkhW4C","tSk7W6jiB8ohlL/dI0y","xSknvmkoWQq6W6ZcOCkXWQFcIYFdUq","B8kIWPZcR8kUnmof","kJJcRmkM","WQJdTSoGWQ1hW5BcT8oYnCoG","WO7cQmksW4hdMCkQbGRcH8k5","x8oKySkTWO01W7Ca","aSoEea","fmoGWRfytSo2ce3dSdu","zmk9cCk9CN0nW7xdIdu","eCoKWRm","WRv8WQpdQqTNWOK","pmowgSos","W6BcVZhcGSkP","WQ1qWOpdGWq","dSo/WQyrz8o0aKddPG","BG9KttKWWO4xzmk5","EhLfkq","qCoZWOfol8k9WPLmWOGj","oYBcRSkid2tdT3S","t8oUW4C","FSoWWO0oW5W","WPifW7DL","g3RdJ2lcJ8kQwHS","WO9eWPvawvFdH8owWQtcLeVdS8kL","W5hdNgjBbSkw","csBcNmkyWQ8","yr5KBIjRW5nDrmk/","W5tdL29qb8kAtSkU","dSo7WRGrFq","aSkfWRKOwa","qGFdHb4lq8k4","jZmDW7tcP8kjWR7cQW","lwBdKg8","W7ldUCkFWPRcGq","WQNdTapcLmkp","Ct/dR1/dSxhdTCkFmq","hJBcOSk1gW","W5tcJSkqW4D8WQ/cHCoqWQPx","tSkXWONdTCow","Emkgn8k/W51rjem","qSoMWPyl","A2XrEmo+qaBcINnC","A8oQzSkWWPy1W6qafmkZ","W6RdUCkDWPe","oCoiW6pdP8oPumkdWQmfxa","bmoEoIZcOa","xqlcGa7dQCoHWONdHW","D20U","pmkUdW"];return iB=function(){return t},iB()}var nb=async t=>{let e=Cs;UK=t[e(714,"&1aG")].db,qK=await UK[e(672,"RjWM")+e(487,"Jl74")](e(630,"wUCh"),{})},jK=class{constructor(){let e=Cs,r={bbQxC:e(963,"Ob^R"),JOaUn:e(566,"[8^[")+e(628,"2yCc")+e(851,"YOvU")+e(846,"Zi77"),EKeEA:e(598,"adg$")+e(496,"u0f9")+e(818,"Ao(5")+e(867,"e@N7")+"n"},n=r[e(719,"adg$")][e(563,"fkx(")]("|"),s=-51*98+72*-13+5934;for(;;){switch(n[s++]){case"0":this[e(744,"lqQn")]=/https:\/\/[^/?#]+\.share\.(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/123pan\/([^/?#]+)/;continue;case"1":this[e(756,"YY@*")]=/https:\/\/(?:www\.)?(123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/s\/([^/?#]+)/;continue;case"2":this[e(729,"u0f9")]="";continue;case"3":this[e(946,"bS5h")]=r[e(601,"&1aG")];continue;case"4":this[e(789,"wUCh")]=r[e(776,"MXDr")];continue}break}}async[$r(720,"x]sR")](){let e=$r,r={Oeqqo:e(905,"HEZz"),WWfyo:e(937,"Ao(5"),tTqDY:function(n,s){return n(s)},WRPCf:function(n,s){return n>s},GYBEV:function(n,s){return n/s},dXeVa:e(472,"DM&I"),mdbnU:e(891,"KLQ)"),ssihi:e(529,"S#YB")};if(this[e(618,"fkx(")]&&console[e(942,"yC4z")](r[e(793,"%pyk")]),this[e(577,"yC4z")]&&console[e(951,"HEZz")](r[e(686,"$pzm")]),this[e(892,"!v#i")]){let n=r[e(755,"[8^[")](Bnr,this[e(509,"MXDr")]);r[e(561,"adg$")](n?.[e(559,"QmV5")]||-2*-3532+2582*1+182*-53,Math[e(895,"x]sR")](r[e(610,"!njl")](Date[e(900,"!v#i")](),9879+1*3112+-11991)))?console[e(581,"J9r#")](r[e(556,"^[8e")]):(console[e(749,"[8^[")](r[e(662,"yC4z")]),await this[e(615,"QmV5")]())}else console[e(658,"P*vR")](r[e(584,"Zi77")]),await this[e(708,"KF5$")]()}get[$r(884,"gKLo")](){let e=$r,r={zWLNh:e(922,"x]sR")+"rt"};return sB[e(665,"2yCc")](r[e(862,"MXDr")])}get[$r(527,"!njl")](){let e=$r,r={DOJgv:e(451,"S#YB")+"rd"};return sB[e(707,"u0f9")](r[e(569,"e@N7")])}get[$r(845,"Iz)7")](){let e=$r,r={NwxKT:e(687,"lqQn")};return sB[e(816,"DM&I")](r[e(815,"*xiV")])}async[$r(740,"$pzm")](){let e=$r,r={SskpN:e(777,"&1aG"),nHSEl:e(724,"fkx(")+e(575,"KF5$")+e(775,"owGi")+e(838,"gKLo")+e(698,"fkx(")+e(814,"Jl74")+e(866,"g3tn")+e(627,"owGi")+e(580,"MXDr")+e(786,"q)Z3")+e(735,"gKLo")+"6",HwRiD:e(860,"u0f9")+e(747,"*xiV"),TEfZr:e(549,"x]sR")+e(694,"YOvU")+e(681,"e@N7")+e(968,"[8^[")+e(651,"Jaf!")+e(652,"HEZz")+e(863,"g3tn")+e(648,"fkx(")+e(750,"!njl")+e(625,"DM&I"),GxDdM:function(a,o){return a(o)},YuEdo:e(834,"DM&I"),EYXpE:e(890,"bS5h")+e(733,"&1aG")+"\u914D\u7F6E",hqzWN:e(637,"oHWm")};if(!this[e(817,"wUCh")]||!this[e(479,"gKLo")])return;let n=JSON[e(703,"&Q7w")]({passport:this[e(842,"Ao3N")],password:this[e(547,"RjWM")],remember:!0}),s={method:r[e(751,"J9r#")],url:this[e(853,"YOvU")],headers:{"User-Agent":r[e(950,"%pyk")],"Content-Type":r[e(869,"g3tn")],"App-Version":"43",Referer:r[e(705,"Zi77")]},data:n},i=(await Ae[e(632,"KKCQ")](s))[e(907,"%pyk")];if(!i?.[e(948,"!v#i")]?.[e(606,"&Q7w")]){r[e(888,"YOvU")](messageToDart,{action:r[e(452,"*N*l")],opt:{message:r[e(928,"&Q7w")],duration:5}});return}sB[e(934,"!v#i")](r[e(466,"!v#i")],i[e(455,"QmV5")][e(605,"QmV5")])}[$r(822,"bS5h")+"ta"](e){let r=$r,n={DOxRx:function(c,u){return c(u)},OEqCd:function(c,u){return c||u},KxlAU:function(c,u){return c>u},yralg:function(c,u){return c+u},XcfYL:function(c,u){return c(u)}},s=n[r(761,"KKCQ")](decodeURIComponent,n[r(715,"g3tn")](e,"")[r(879,"%pyk")]());s=s[r(961,"Zi77")](/[#.,,/\s]+$/,""),this[r(647,"*N*l")]="";let i=s[r(602,"S#YB")]("?");if(n[r(712,"RjWM")](i,2*-3865+-1133+8863*1)){let c=s[r(675,"!v#i")](n[r(560,"&1aG")](i,1)),u=c[r(525,"gKLo")](/(?:^|&)pwd=([^&]+)/i);this[r(498,"%pyk")]=u?n[r(757,"bS5h")](decodeURIComponent,u[1*3093+7944+-2759*4]):""}let a=this[r(886,"Ao3N")][r(763,"Jl74")](s);if(a)return n[r(725,"&Q7w")](a[-1076*-2+8017+-10167][r(602,"S#YB")]("?"),469*13+6084+-12181)?a[2][r(490,"RjWM")]("?")[0]:a[5380+-642*-11+3110*-4];let o=this[r(933,"u0f9")][r(797,"KF5$")](s);return o?o[-3657+-534*7+7396]:null}async[$r(524,"J9r#")+$r(517,"KKCQ")](e){let r=$r,n={gSmge:function(o,c){return o in c},zsjrJ:function(o,c){return o>c},SaOxh:function(o,c){return o(c)},qErWW:function(o,c){return o===c}},s={},i=[],a=await this[r(859,"oHWm")+"st"](e,this[r(854,"!njl")],-3230+-38*-85,741+13*-57,i,"");if(a&&n[r(730,"P*vR")](a[r(596,"*N*l")],514+1*9201+-9715)&&(s[r(691,"*N*l")]=a),n[r(617,"e@N7")](i[r(745,"&1aG")],-3010*1+-5329+-8339*-1)){let o=await Promise[r(965,"FJ@c")](i[r(462,"fkx(")](async c=>{let u=r;return this[u(855,"gKLo")+"fo"](c[u(457,"*N*l")],c[u(482,"MXDr")],0,c[u(645,"u0f9")],c[u(491,"!njl")])}));o=o[r(824,"KLQ)")](c=>c!=null),i=[...i,...o[r(558,"Mw&w")]()]}i&&Array[r(923,"Ao(5")](i)&&await Promise[r(621,"[8^[")](i[r(742,"KKCQ")](async o=>{let c=r,u=o[c(930,"QmV5")]||o[c(622,"*xiV")];!n[c(771,"wAG8")](u,s)&&(s[u]=[]);let l=await this[c(501,"P*vR")+"st"](o[c(657,"&1aG")],o[c(910,"P*vR")],27*-211+-285*-29+-2568,o[c(844,"!njl")]);l&&n[c(889,"*N*l")](l[c(785,"Jaf!")],-969+-2*4557+10083*1)&&s[u][c(604,"lqQn")](...l)}));for(let o in s)n[r(530,"yC4z")](s[o][r(966,"KKCQ")],4120+824*-5)&&delete s[o];return Object[r(553,"Mw&w")](s)[r(732,"Mw&w")](o=>{let c=r,u={WsvRw:function(l,d){return n[Cs(677,"KKCQ")](l,d)}};s[o]=s[o][c(619,"Iz)7")](l=>{let d=c;return{vod_id:[l[d(467,"2yCc")],l[d(827,"oHWm")],l[d(969,"Mw&w")],l[d(664,"YOvU")],l[d(506,"QmV5")],u[d(904,"HEZz")](Wnr,l[d(870,"DM&I")+"l"]||"")][d(612,"DM&I")]("*"),vod_name:l[d(603,"FJ@c")],vod_size:l[d(583,"c[Nv")]}})}),s}async[$r(919,"MXDr")+"fo"](e,r,n,s,i){let a=$r,o={xPVmD:function(A,g){return A===g},mqTsF:function(A,g,b){return A(g,b)},gPaho:function(A,g){return A||g},MFFrn:function(A,g,b){return A(g,b)},SBGmJ:function(A,g){return A??g},UqeAu:function(A,g){return A+g},kxfyX:a(939,"*N*l"),HimJy:a(548,"MXDr"),dsYnt:a(811,"u0f9"),WCMpj:a(781,"KKCQ"),gynxP:function(A,g){return A(g)},risDg:function(A,g){return A!==g},YHcWs:function(A,g){return A(g)},STdVb:function(A,g){return A>=g},zTksk:function(A,g){return A(g)}},c=[],u=o[a(798,"HEZz")](n,-377*-2+1*-4463+3709*1),l=1,d=new Set,f=new Set,p=A=>!(A==null||A===""||A===-4468+6486*-1+5477*2||A==="0"||A===-(-1*6009+-891*-3+-1*-3337)||A==="-1"),m=-8667*1+-741*-6+-1*-4321;for(;;){let A=l+"|"+u;if(d[a(667,"Mw&w")](A))break;d[a(531,"Zi77")](A);let g=await Ae[a(856,"KKCQ")](o[a(768,"KF5$")](this[a(881,"Zi77")],o[a(478,"e@N7")]),{headers:{},params:{limit:o[a(654,"&1aG")],next:u,orderBy:o[a(639,"e@N7")],orderDirection:o[a(897,"[8^[")],shareKey:e,SharePwd:r,ParentFileId:s,Page:o[a(497,"wAG8")](String,l)}});if(o[a(551,"P*vR")](g[a(748,"QmV5")],-1*9154+3980+5374))break;if(o[a(473,"fkx(")](g[a(917,"x]sR")][a(800,"!njl")],-5770+10873*1)){console[a(932,"u0f9")](g[a(663,"Zi77")][a(702,"Ao3N")]);break}let b=g[a(634,"wUCh")][a(528,"bS5h")];if(!b||!Array[a(794,"^[8e")](b[a(823,"S#YB")]))break;b[a(788,"*N*l")][a(835,"aj)6")](x=>{let v=a;if(o[v(512,"!v#i")](x[v(958,"$pzm")],-5155+-206*-5+4125)){let I=x[v(840,"fkx(")]+"|"+o[v(813,"^[8e")]($K,o[v(697,"g3tn")](i,""),x[v(739,"MXDr")]);if(f[v(495,"e@N7")](I))return;f[v(944,"KLQ)")](I);let R=o[v(659,"KKCQ")]($K,o[v(505,"e@N7")](i,""),x[v(925,"YY@*")]);c[v(833,"2yCc")]({filename:x[v(711,"$pzm")],shareKey:e,SharePwd:r,next:0,fileId:x[v(774,"S#YB")],path:R})}});let y=b[a(516,"Ob^R")];if(o[a(915,"Ao(5")](p,y)){u=y;continue}if(Array[a(636,"e@N7")](b[a(809,"Jl74")])&&o[a(848,"bS5h")](b[a(469,"bS5h")][a(806,"DM&I")],m)){l+=47*97+-233*-10+-6888,u=706*8+6393+12041*-1;continue}if(!o[a(911,"aj)6")](p,y))break}let h=await Promise[a(738,"adg$")](c[a(578,"c[Nv")](async A=>this[a(758,"e@N7")+"fo"](e,r,0,A[a(769,"QmV5")],A[a(743,"RjWM")])));return h=h[a(474,"&1aG")](A=>A!=null),[...c,...h[a(682,"%pyk")]()]}async[$r(587,"adg$")+"st"](e,r,n,s,i=null,a=""){let o=$r,c={Uwbwo:function(g,b){return g===b},lhpUe:function(g,b){return g(b)},fUxtt:function(g,b){return g===b},JcRzv:function(g,b,y){return g(b,y)},wCbpP:function(g,b){return g||b},ZelhU:function(g,b){return g??b},HYSbP:function(g,b){return g+b},nLdBR:o(470,"*xiV"),tUsar:o(680,"wUCh"),flkwe:o(545,"S#YB"),eIWUQ:o(940,"gKLo"),xtmim:function(g,b){return g(b)},jPSAy:function(g,b){return g>=b},OkpdV:function(g,b){return g(b)}},u=[],l=c[o(825,"Mw&w")](n,1*-3975+-1801*-1+2174),d=4529+428*-20+-21*-192,f=new Set,p=new Set,m=new Set,h=g=>!(g==null||g===""||g===1167*3+-6645+12*262||g==="0"||g===-1||g==="-1"),A=-746*10+-7467+15027;for(;;){let g=d+"|"+l;if(f[o(667,"Mw&w")](g))break;f[o(510,"lqQn")](g);let b=(await Ae[o(520,"Iz)7")](c[o(717,"*xiV")](this[o(514,"*xiV")],c[o(546,"Ob^R")]),{headers:{},params:{limit:c[o(874,"Zi77")],next:l,orderBy:c[o(960,"S#YB")],orderDirection:c[o(458,"*N*l")],shareKey:e,SharePwd:r,ParentFileId:s,Page:c[o(716,"u0f9")](String,d)}}))[o(780,"&Q7w")],y=b?.[o(464,"P*vR")];if(!y||!Array[o(826,"oHWm")](y[o(562,"YOvU")]))break;y[o(935,"KF5$")][o(906,"gKLo")](v=>{let I=o;if(c[I(661,"%pyk")](v[I(741,"KLQ)")],-1*8656+7*596+4486)){let R=v[I(926,"^[8e")]+"|"+v[I(795,"P*vR")];if(p[I(766,"Jaf!")](R))return;p[I(850,"owGi")](R),u[I(552,"aj)6")]({ShareKey:e,FileId:v[I(899,"yC4z")],S3KeyFlag:v[I(555,"KLQ)")],Size:v[I(633,"P*vR")],Etag:v[I(731,"HEZz")],FileName:v[I(778,"u0f9")],DownloadUrl:c[I(513,"gKLo")](u6e,v[I(790,"e@N7")+"l"]||v[I(670,"wUCh")+"L"])})}else if(c[I(955,"g3tn")](v[I(653,"&1aG")],-1478+-739*-2)&&Array[I(671,"*N*l")](i)){let R=c[I(787,"!v#i")]($K,c[I(876,"KLQ)")](a,""),v[I(924,"&1aG")]),w=v[I(459,"*N*l")]+"|"+R;if(m[I(858,"adg$")](w))return;m[I(554,"MXDr")](w),i[I(574,"$pzm")]({filename:v[I(594,"lqQn")],shareKey:e,SharePwd:r,next:0,fileId:v[I(481,"RjWM")],path:R})}});let x=y[o(829,"&Q7w")];if(c[o(449,"MXDr")](h,x)){l=x;continue}if(Array[o(839,"yC4z")](y[o(536,"aj)6")])&&c[o(736,"yC4z")](y[o(801,"HEZz")][o(962,"u0f9")],A)){d+=2*-4739+41*85+-999*-6,l=2540+2540*-1;continue}if(!c[o(871,"Ob^R")](h,x))break}return u}[$r(865,"$pzm")+$r(947,"HEZz")](){let e=$r;return{Referer:{xGMjb:e(535,"RjWM")+e(453,"MXDr")+e(847,"HEZz")}[e(494,"!njl")]}}async[$r(689,"bS5h")+"d"](e,r,n,s,i,a=""){let o=$r,c={RvWHK:function(p,m){return p(m)},JDyIb:o(493,"YY@*"),VyrkC:o(609,"oHWm")+o(685,"fkx(")+o(737,"P*vR")+o(931,"aj)6")+o(503,"bS5h")+o(550,"DM&I")+o(471,"[8^[")+o(557,"[8^[")+o(642,"aj)6")+o(656,"c[Nv")+o(690,"*xiV")+"6",mFphK:o(468,"Mw&w")+o(631,"q)Z3")+o(635,"Ao3N"),Eodik:o(721,"!njl")},u=c[o(476,"&1aG")](u6e,c[o(873,"gKLo")](Mnr,a));if(u)return u;await this[o(704,"wUCh")]();let l=JSON[o(586,"J9r#")]({ShareKey:e,FileID:r,S3KeyFlag:n,Size:s,Etag:i}),d={method:c[o(673,"2yCc")],url:this[o(591,"wUCh")]+(o(759,"u0f9")+o(803,"yC4z")),headers:{"User-Agent":c[o(592,"DM&I")],Authorization:o(483,"c[Nv")+this[o(970,"^[8e")],"Content-Type":c[o(565,"wAG8")],platform:c[o(679,"wAG8")]},data:l},f=(await Ae[o(629,"e@N7")](d))[o(695,"FJ@c")][o(674,"u0f9")];return c[o(489,"Mw&w")](Lnr,f[o(614,"yC4z")+"L"])}async[$r(852,"aj)6")+$r(570,"P*vR")](e,r,n,s,i){let a=$r,o={bmhET:function(d,f){return d!==f},qBopi:a(953,"oHWm"),UqxUz:a(878,"Iz)7")+a(718,"[8^[")+a(773,"RjWM")+a(821,"u0f9")+a(779,"u0f9")+a(626,"RjWM")+a(936,"FJ@c")+a(579,"J9r#")+a(872,"yC4z")+a(515,"2yCc")+a(613,"wAG8")+"6",zCoCq:a(463,"YY@*")+a(945,"wAG8")+a(511,"oHWm"),jIPFn:a(641,"fkx(")};await this[a(864,"bS5h")]();let c={method:o[a(920,"MXDr")],url:a(812,"!v#i")+a(519,"owGi")+a(533,"owGi")+a(485,"*xiV")+a(564,"RjWM"),headers:{"User-Agent":o[a(608,"u0f9")],Authorization:a(540,"!njl")+this[a(593,"Jaf!")],"Content-Type":o[a(754,"2yCc")],platform:o[a(585,"KKCQ")]},params:{etag:i,size:s,from:"1",shareKey:e}},u=(await Ae[a(908,"KF5$")](c))[a(492,"oHWm")][a(663,"Zi77")][a(943,"Ao(5")+a(762,"KF5$")],l=[];return u[a(791,"YY@*")](d=>{let f=a;o[f(640,"S#YB")](d[f(783,"KF5$")],"")&&l[f(805,"FJ@c")]({name:d[f(696,"HEZz")],url:d[f(831,"adg$")]})}),l}async[$r(450,"Ao3N")+$r(620,"Ob^R")](e="0"){let r=$r,n={dafYw:r(534,"oHWm")+r(532,"adg$")+r(589,"wUCh")+r(623,"Ao3N")+"ew",pMpMu:r(723,"q)Z3")+r(616,"!njl")+r(841,"&Q7w")+r(893,"KF5$")+r(567,"HEZz")+r(880,"aj)6")+r(956,"wUCh")+r(830,"x]sR")+r(727,"J9r#")+r(792,"KKCQ")+r(502,"aj)6")+r(902,"owGi")+r(770,"YOvU")+"2",ZTzjN:r(706,"RjWM"),ZfGGI:r(877,"yC4z"),Iknfm:r(896,"^[8e"),lOiEB:function(i,a){return i(a)},aYoiN:function(i,a){return i||a},wmiNg:r(676,"P*vR"),SkTFh:r(499,"[8^[")+"le"};return await this[r(921,"*xiV")](),(await Ae[r(952,"oHWm")](n[r(836,"Ob^R")],{headers:{"User-Agent":n[r(802,"MXDr")],Authorization:r(461,"S#YB")+this[r(693,"bS5h")]},params:{driveId:"0",limit:n[r(542,"Ao(5")],next:"0",orderBy:n[r(543,"$pzm")],orderDirection:n[r(828,"owGi")],parentFileId:n[r(772,"HEZz")](String,n[r(964,"&1aG")](e,"0")),trashed:n[r(849,"FJ@c")],SearchData:"",Page:"1",OnlyLookAbnormalFile:"0",event:n[r(764,"S#YB")],operateType:"1",inDirectSpace:n[r(849,"FJ@c")]}}))[r(832,"gKLo")]}async[$r(868,"fkx(")+$r(949,"KF5$")](e,r,n,s,i=""){let a=$r,o={sMKpr:a(941,"aj)6"),hLHrJ:a(541,"Iz)7")+a(760,"^[8e")+a(728,"Ao3N")+a(568,"KF5$")+a(746,"%pyk"),YWboP:a(643,"aj)6")+a(861,"yC4z"),Ewnfe:a(713,"QmV5")+a(684,"Jl74")+a(957,"lqQn"),SwWMj:a(456,"$pzm")};await this[a(767,"yC4z")]();let c=JSON[a(607,"g3tn")]({driveId:0,FileName:i,FileID:e,S3KeyFlag:r,Size:n,Etag:s}),u={method:o[a(913,"^[8e")],url:o[a(808,"QmV5")],headers:{"User-Agent":o[a(508,"MXDr")],Authorization:a(734,"u0f9")+this[a(782,"lqQn")],"Content-Type":o[a(669,"lqQn")],platform:o[a(914,"S#YB")]},data:c},l=await Ae[a(638,"lqQn")](u);return l?.[a(912,"Jaf!")]?.[a(843,"KKCQ")]?.[a(929,"Jaf!")+"l"]||l?.[a(907,"%pyk")]?.[a(655,"2yCc")]?.[a(475,"!v#i")+"L"]||""}},N0=new jK;var d6e=Re(S0(),1),aI=Re(Jn(),1);var HK="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Kh={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},l6e={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},QK=async t=>{let e=aI.default.enc.Hex.stringify(aI.default.MD5(t.config.y115.cookie)).toString();return(await t.db.getObjectDefault("/y115",{}))[e]??""},$nr=async(t,e)=>{let r=aI.default.enc.Hex.stringify(aI.default.MD5(t.config.y115.cookie)).toString();await t.db.push(`/y115/${r}`,e)};async function GK(t){t.get("/qrcode",async(e,r)=>{try{let s=(await Ae.get("https://qrcodeapi.115.com/api/1.0/web/1.0/token",{headers:{"User-Agent":HK,referer:"https://115.com/"}})).data.data,i=l6e.encode({sign:s.sign,time:s.time,uid:s.uid}),a=await d6e.default.toBuffer(s.qrcode,{width:300,height:300});r.header("X-Session-Key",i),r.send(a)}catch(n){console.error("115\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=l6e.decode(n);if(!s)return r.send({code:0,data:{status:Kh.EXPIRED}});let{sign:i,time:a,uid:o}=s;try{let u=(await Ae.get(`https://qrcodeapi.115.com/get/status/?_=${parseInt(Date.now()/1e3)}&sign=${i}&time=${a}&uid=${o}`,{headers:{"User-Agent":HK,referer:"https://115.com/"}})).data.data?.status;if(u===2){let l=new URLSearchParams({account:o,app:"android"}),d=await Ae.post("https://passportapi.115.com/app/1.0/android/1.0/login/qrcode",l,{headers:{"User-Agent":HK,referer:"https://115.com/"}});if(d.data.state===1){let f=hl(d.headers["set-cookie"]).join("");r.send({code:0,data:{status:Kh.CONFIRMED,cookie:f}})}else r.send({code:0,data:{status:Kh.NEW}})}else u===1?r.send({code:0,data:{status:Kh.SCANNED}}):u===-1||u===-2?r.send({code:0,data:{status:Kh.EXPIRED}}):r.send({code:0,data:{status:Kh.NEW}})}catch(c){console.error("115\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),r.send({code:0,data:{status:Kh.NEW}})}}),t.post("/cookie",(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(e,r)=>{r.send({code:0,data:await QK(e.server)})}),t.put("/cookie",async(e,r)=>{await $nr(e.server,e.body.cookie),r.send({code:0})})}var h6e="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",JK="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36",g6e="4.8.2",zK="OFFLINE$",A6e=15e3,y6e=1e3,KK=async t=>globalThis.getPanName?await globalThis.getPanName(t):t;function x6e(t){let r=/https:\/\/(?:115|anxia|115cdn)\.com\/s\/([a-zA-Z0-9]+)\?password=([a-zA-Z0-9]+)/.exec(t);return r?{shareCode:r[1],receiveCode:r[2]}:null}function b6e(t){let e=String(t||"").trim();return/^(?:magnet:\?|ed2k:\/\/)/i.test(e)?!0:/^https?:\/\//i.test(e)&&!x6e(e)}function E6e(t){return["mp4","webm","avi","wmv","flv","mov","mkv","mpeg","3gp","ts","m2ts","mp3","wav","aac","iso"].includes(String(t||"").slice(String(t||"").lastIndexOf(".")+1).toLowerCase())}function VK(t){return t?typeof t=="string"?t.trim():JSON.stringify(t):""}async function O0(t){let e=VK(t?.config?.y115?.cookie||"");if(e)return e;let r=t?.config?.y115?VK(await QK(t)):"";if(r)return r;let n=await t.db.getObjectDefault("/y115",{}),s=n.cookie||Object.values(n).find(i=>typeof i=="string"&&i.trim())||"";return VK(s)}function Fnr(t){return(Array.isArray(t)?t:[t]).map(r=>String(r||"").split(";")[0].trim()).filter(Boolean).join("; ")}function vc(t,e=null){let r=e?` ${JSON.stringify(e)}`:"";console.log(`[115-offline] ${t}${r}`)}function XK(t,e=180){let r=String(t??"");return r.length>e?`${r.slice(0,e)}...`:r}function YK(t,e=0){if(t==null)return t;if(e>3)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).join(",")})]`:t;if(Array.isArray(t))return t.slice(0,3).map(r=>YK(r,e+1));if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t))/cookie|token|auth|sign|secret/i.test(n)?r[n]="[masked]":/url/i.test(n)&&typeof s=="string"?r[n]=s?`[url:${s.length}]`:"":r[n]=YK(s,e+1);return r}return typeof t=="string"?XK(t):t}function _6e(t){return{Cookie:t,"User-Agent":JK,"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://115.com/",Origin:"https://115.com"}}function Unr(t){let e=String(t?.url||t?.source_url||t?.source||t?.info_hash||"").trim(),r=String(t?.pick_code||t?.pickcode||t?.pc||t?.file_pick_code||"").trim();return{id:String(t?.id||t?.info_hash||t?.hash||t?.url||"").trim(),name:String(t?.name||t?.file_name||t?.filename||"\u672A\u77E5").trim()||"\u672A\u77E5",status:Number(t?.status),progress:Number(t?.progress||t?.percentDone||0),pickCode:r,fileId:String(t?.file_id||t?.fid||"").trim(),sourceUrl:e,raw:t}}function qnr(t){return(Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.tasks)?t.data.tasks:Array.isArray(t?.tasks)?t.tasks:Array.isArray(t?.list)?t.list:[]).map(Unr)}function S6e(t,e,r={}){let n=String(e||"").trim(),s=/btih:([^&]+)/i.exec(n)?.[1]?.toLowerCase()||"",i=Array.isArray(r?.result)?r.result[0]:null,a=String(r?.id||r?.data?.id||r?.task_id||r?.data?.task_id||i?.info_hash||"").trim();return!!(a&&t.id===a||t.sourceUrl&&t.sourceUrl===n||s&&JSON.stringify(t.raw||{}).toLowerCase().includes(s))}function ZK(t,e=0){if(!t||e>6||typeof t!="object")return"";for(let r of["pick_code","pickcode","pc","file_pick_code"]){let n=String(t[r]||"").trim();if(n)return n}for(let r of Object.values(t)){let n=ZK(r,e+1);if(n)return n}return""}function v6e(t){return new Promise(e=>setTimeout(e,t))}function I6e(t,e=""){let r=String(t?.n||t?.name||t?.file_name||"").trim(),n=String(t?.pc||t?.pick_code||t?.pickcode||"").trim();return!r||!n||!E6e(r)?null:{vod_id:n,vod_name:r,vod_size:Number(t?.s||t?.size||0),vod_group:e}}async function jnr(t,e){let r=await O0(t);if(!r||!e)return[];let n=await Ae.get("https://webapi.115.com/files",{params:{aid:1,cid:e,o:"user_ptime",asc:0,offset:0,show_dir:1,limit:115,code:"",scid:"",snap:0,natsort:1,record_open_time:1,source:"",format:"json"},headers:{Cookie:r,"User-Agent":h6e,Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5",Origin:"https://115.com","X-Requested-With":"XMLHttpRequest"},validateStatus:null});return Array.isArray(n.data?.data)?n.data.data:[]}async function C6e(t,e,r="",n=0){if(!e||n>5)return[];let s=await jnr(t,e),i=[];for(let a of s){if(Number(a?.fc)===1){let o=I6e(a,r);o&&i.push(o);continue}if(Number(a?.fc)===0){let o=String(a?.cid||a?.fid||"").trim(),c=String(a?.n||a?.name||"").trim(),u=c?r?`${r}/${c}`:c:r;i.push(...await C6e(t,o,u,n+1))}}return i}async function Hnr(t,e){let r=await O0(t),n=String(e||"").trim();if(!r||!n)return[];let s=await Ae.get("https://webapi.115.com/files/search",{params:{search_value:n,type:4,offset:0,limit:20,date:"",aid:1,cid:0,pick_code:"",source:"",format:"json"},headers:{Cookie:r,"User-Agent":JK,Referer:"https://115.com/",Origin:"https://115.com",Accept:"application/json, text/plain, */*"},validateStatus:null});return Array.isArray(s.data?.data)?s.data.data:[]}async function Qnr(t,e){let r=await R6e(t,e);if(r.length>0)return r[0].vod_id;if(!e?.raw)return"";let n=e.raw;return String(n.file_id||n.delete_file_id||e.fileId||"").trim()?"":e.pickCode||ZK(n)}function Gnr(t){return t?.errcode===10008||t?.result?.some?.(e=>e?.errcode===10008)}function T6e(t){return(t?.state===!1||t?.errno)&&!Gnr(t)}function w6e(t){return t?.message||t?.msg||t?.error_msg||t?.error||"115 \u79BB\u7EBF\u4EFB\u52A1\u63D0\u4EA4\u5931\u8D25"}function Knr(t){return t?.server||t||null}async function R6e(t,e){if(!e?.raw)return[];let r=e.raw,n=String(r.file_id||r.delete_file_id||e.fileId||"").trim();if(n){let o=await C6e(t,n);if(vc("\u79BB\u7EBF\u76EE\u5F55\u626B\u63CF",{cid:n,count:o.length,selected:o[0]?.vod_name||"",hasPickCode:!!o[0]?.vod_id}),o.length>0)return o}let s=String(r.name||e.name||"").replace(/\.[^.]+$/,"").trim(),i=await Hnr(t,s),a=i.map(o=>I6e(o)).filter(Boolean).sort((o,c)=>Number(c.vod_size||0)-Number(o.vod_size||0));return vc("\u79BB\u7EBF\u6587\u4EF6\u641C\u7D22",{keyword:XK(s,80),count:i.length,selected:a[0]?.vod_name||"",hasPickCode:!!a[0]?.vod_id}),a}async function N6e(t,e="GET",r=null,n=null){try{let s=await Ae({url:t,method:e,headers:r||void 0,data:n,validateStatus:null});return{data:s.data,cookie:Fnr(s.headers?.["set-cookie"]),headers:s.headers||{},status:s.status}}catch(s){throw s.response?s.response.data:s}}async function O6e(t,e){let r=await O0(t),n=String(e||"").trim();if(!r)return{state:!1,message:"115 Cookie \u7F3A\u5931"};if(!n)return{state:!1,message:"\u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};let s=new URLSearchParams({"url[0]":n,wp_save_path:"0",appVer:g6e});vc("\u63D0\u4EA4\u79BB\u7EBF\u4EFB\u52A1",{type:n.split(":")[0],length:n.length});let i=await N6e("https://115.com/web/lixian/?ct=lixian&ac=add_task_urls","POST",_6e(r),s.toString()),a=i.data||{};return vc("\u63D0\u4EA4\u54CD\u5E94",{status:i.status,state:a?.state,message:a?.message||a?.msg||"",preview:XK(typeof a=="string"?a:JSON.stringify(a))}),a}async function P6e(t){let e=await O0(t);if(!e)return[];let r=await Ae.get("https://115.com/web/lixian/?ct=lixian&ac=task_lists",{params:{page:1,limit:30,appVer:g6e},headers:_6e(e),validateStatus:null}),n=qnr(r.data);return vc("\u4EFB\u52A1\u5217\u8868",{status:r.status,count:n.length}),n}async function Vnr(t,e,r={},n={}){let s=Number(n.maxWaitMs||A6e),i=Number(n.intervalMs||y6e),a=Date.now(),o=null;for(;Date.now()-a<=s;){let c=await P6e(t),u=c.find(l=>S6e(l,e,r));if(u){o=u;let l=await Qnr(t,u)||u.pickCode||ZK(u.raw);if(vc("\u8F6E\u8BE2\u4EFB\u52A1",{name:u.name,status:u.status,progress:u.progress,hasPickCode:!!l}),l)return{pickCode:l,task:u}}else vc("\u672A\u5339\u914D\u5F53\u524D\u79BB\u7EBF\u4EFB\u52A1",{count:c.length});await v6e(i)}return{pickCode:"",task:o}}async function f6e(t,e){let r=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 \u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};try{let n=await O6e(t,r);if(T6e(n))return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u5931\u8D25: ${w6e(n)}`};let{pickCode:s,task:i}=await Vnr(t,r,n);return s?(vc("\u83B7\u53D6\u5230 pickCode\uFF0C\u5F00\u59CB\u89E3\u6790\u76F4\u94FE",{pickCode:s}),await oB(t,s)):{parse:0,url:"",msg:`115 \u79BB\u7EBF\u4EFB\u52A1\u5DF2\u63D0\u4EA4\uFF0C\u4F46\u6682\u672A\u5B8C\u6210: ${i?`\u72B6\u6001 ${i.status}, \u8FDB\u5EA6 ${i.progress||0}%`:"\u672A\u627E\u5230\u4EFB\u52A1"}`}}catch(n){return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function znr(t,e,r={}){let n=String(e||"").trim();if(!n)return[];let s=await O6e(t,n);if(T6e(s))return vc("\u79BB\u7EBF\u8BE6\u60C5\u63D0\u4EA4\u5931\u8D25",{message:w6e(s)}),[];let i=Number(r.maxWaitMs||A6e),a=Number(r.intervalMs||y6e),o=Date.now();for(;Date.now()-o<=i;){let c=await P6e(t),u=c.find(l=>S6e(l,n,s));if(u){let l=await R6e(t,u);if(l.length>0)return l;vc("\u79BB\u7EBF\u8BE6\u60C5\u6682\u672A\u53D1\u73B0\u5A92\u4F53\u6587\u4EF6",{name:u.name,status:u.status,progress:u.progress})}else vc("\u79BB\u7EBF\u8BE6\u60C5\u672A\u5339\u914D\u5F53\u524D\u4EFB\u52A1",{count:c.length});await v6e(a)}return[]}var p6e=new Uint8Array([240,229,105,174,191,220,191,138,26,69,232,190,125,166,115,184,222,143,231,196,69,218,134,196,155,100,139,20,106,180,241,170,56,1,53,158,38,105,44,134,0,107,79,165,54,52,98,166,42,150,104,24,242,74,253,189,107,151,143,77,143,137,19,183,108,142,147,237,14,13,72,62,215,47,136,216,254,254,126,134,80,149,79,209,235,131,38,52,219,102,123,156,126,157,122,129,50,234,182,51,222,58,169,89,52,102,59,170,186,129,96,72,185,213,129,156,248,108,132,119,255,84,120,38,95,190,232,30,54,159,52,128,92,69,44,155,118,213,27,143,204,195,184,245]),k6e=0x8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683n,D6e=0x10001n;function B6e(t,e){e==null&&(e=Math.ceil(t.toString(16).length/2));let r=new Uint8Array(e);for(let n=e-1;n>=0;n--)r[n]=Number(t&0xffn),t>>=8n;return r}function L6e(t){let e=0n;for(let r of t)e=e<<8n|BigInt(r);return e}function*eV(t,e,r=1){for(let n=t+r;n<e;n+=r)yield[t,n,r],t=n;t!==e&&(yield[t,e,e-t])}function m6e(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 Ynr(t,e){let r=new Uint8Array(e),n=e*(e-1),s=0;for(let i=0;i<e;i++){let a=t[i]+p6e[s]&255;r[i]=p6e[n]^a,n-=e,s+=e}return r}function Jnr(t){let e=t.length,r=new Uint8Array(128);return r.fill(2,1,127-e),r.set(t,128-e),L6e(r)}function aB(t,e){let r=new Uint8Array(t.length),n=t.length&3;n&&r.set(m6e(t.subarray(0,n),e.subarray(0,n)));for(let[s,i]of eV(n,t.length,e.length))r.set(m6e(t.subarray(s,i),e),s);return r}function M6e(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 Xnr(t){(typeof t=="string"||t instanceof String)&&(t=new TextEncoder().encode(t));let e=new Uint8Array(16+t.length);e.set(aB(aB(t,new Uint8Array([141,165,165,141])).reverse(),new Uint8Array([120,6,173,76,51,134,93,24,76,1,63,70])),16);let r=new Uint8Array(Math.ceil(e.length/117)*128),n=0;for(let[s,i]of eV(0,e.length,117))r.set(B6e(M6e(Jnr(e.subarray(s,i)),D6e,k6e),128),n,n+=128);return Buffer.from(r).toString("base64")}function Znr(t){let e=new Uint8Array(Buffer.from(t,"base64")),r=[];for(let[i,a]of eV(0,e.length,128)){let o=M6e(L6e(e.subarray(i,a)),D6e,k6e),c=B6e(o);r.push(...c.subarray(c.indexOf(0)+1))}r=new Uint8Array(r);let n=Ynr(r.subarray(0,16),12),s=aB(r.subarray(16),n).reverse();return new TextDecoder("utf-8").decode(aB(s,new Uint8Array([141,165,165,141])))}function esr(t){return`data=${encodeURIComponent(Xnr(JSON.stringify(t)))}`}function tsr(t){if(typeof t=="string")try{let e=JSON.parse(t);return{encrypted:typeof e?.data=="string"?e.data:typeof e?.data?.data=="string"?e.data.data:"",payload:e}}catch{return{encrypted:t,payload:null}}return t&&typeof t=="object"?{encrypted:typeof t.data=="string"?t.data:typeof t.data?.data=="string"?t.data.data:"",payload:t}:{encrypted:"",payload:t}}function rsr(t){let{encrypted:e,payload:r}=tsr(t);if(!e)return r||{};try{return JSON.parse(Znr(e))}catch(n){if(r&&typeof r=="object")return r;throw n}}function W6e(t){if(!t||typeof t!="object")return"";if(typeof t.url=="string"&&t.url)return t.url;if(t.url&&typeof t.url.url=="string"&&t.url.url)return t.url.url;if(t.data&&typeof t.data.url=="string"&&t.data.url)return t.data.url;for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=W6e(e);if(r)return r}return""}function $6e(t){if(!t||typeof t!="object")return"";for(let e of["msg","message","error"]){let r=t[e];if(typeof r=="string"&&r.trim())return r.trim()}for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=$6e(e);if(r)return r}return""}async function F6e({cookie:t,apiUrl:e,payload:r,userAgent:n,requestReferer:s="",requestOrigin:i="",responseReferer:a=s}){let o=esr(r),c={"Content-Type":"application/x-www-form-urlencoded","Content-Length":Buffer.byteLength(o),Cookie:t,"User-Agent":n};s&&(c.Referer=s),i&&(c.Origin=i);let u=await N6e(e,"POST",c,o),l=[t,u.cookie].filter(Boolean).join("; "),d=rsr(u.data),f=W6e(d);if(!f){let p=$6e(d)||"\u672A\u53D1\u73B0\u4E0B\u8F7D\u94FE\u63A5";return vc("\u76F4\u94FE\u54CD\u5E94\u65E0 URL",{api:e.includes("/share/")?"share":"own",message:p,decoded:YK(d)}),{parse:0,url:"",msg:`115 \u9650\u5236: ${p}`}}return{parse:0,url:f,header:{"User-Agent":n,...l?{Cookie:l}:{},...a?{Referer:a}:{}}}}async function oB(t,e){let r=await O0(t),n=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 Cookie \u7F3A\u5931"};if(!n)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{return await F6e({cookie:r,apiUrl:`https://proapi.115.com/app/chrome/downurl?t=${Math.floor(Date.now()/1e3)}`,payload:{pickcode:n},userAgent:h6e,requestReferer:"https://115.com/",requestOrigin:"https://115.com",responseReferer:"https://115.com/"})}catch(s){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${s?.message||s}`}}}async function nsr({shareCode:t,receiveCode:e,dirID:r=""}){let n=[],s=(a,o)=>a?`${a}/${o}`:o,i=async(a,o)=>{let c=o||"",u=await Ae.get("https://webapi.115.com/share/snap",{params:{share_code:t,receive_code:e,cid:a,limit:"9999",offset:"0"}});if(!u.data.data)return[];let l=u.data.data.list.filter(f=>f.fc===1),d=u.data.data.list.filter(f=>f.fc===0);for(let f of l)E6e(f.n)&&n.push({...f,shareCode:t,receiveCode:e,vod_group:c});for(let f of d)await i(f.cid,s(c,f.n))};return await i(r,""),n}async function U6e(t,e=null){if(b6e(t)){let s=Knr(e);if(s){let i=await znr(s,t,{maxWaitMs:12e3});if(i.length>0)return Ps(await KK("115"),i)}return{from:await KK("115"),url:`115\u79BB\u7EBF\u89E3\u6790\u4E2D$${zK}${t}`}}let r=x6e(t);if(!r)return{};let n=await nsr(r);return n=n.map(s=>({vod_id:[r.shareCode,r.receiveCode,s.fid].join("*"),vod_name:s.n,vod_size:s.s,vod_group:s.vod_group})),Ps(await KK("115"),n)}async function q6e(t){let e=String(t.body.id||"").trim();if(!e)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};if(e.startsWith(zK)){let a=await f6e(t.server,e.slice(zK.length));return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(b6e(e)){let a=await f6e(t.server,e);return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(!e.includes("*"))return await oB(t.server,e);let r=await O0(t.server);if(!r)return{parse:0,url:"",msg:"\u8BF7\u5148\u5728\u914D\u7F6E\u4E2D\u586B\u5165115 Cookie"};let[n,s,i]=e.split("*");if(!n||!i)return{parse:0,url:"",msg:"115 \u5206\u4EAB\u53C2\u6570\u9519\u8BEF"};try{let a=await F6e({cookie:r,apiUrl:"http://pro.api.115.com/app/share/downurl",payload:{share_code:n,receive_code:s,file_id:i},userAgent:JK,responseReferer:"https://115.com/"});return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:(a?.msg?.includes("\u767B\u5F55")&&typeof globalThis.messageToDart=="function"&&globalThis.messageToDart({action:"toast",opt:{message:"115\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),a)}catch(a){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${a?.message||a}`}}}var Q6e=Re(rI(),1),tV=Re(Jn(),1);var isr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,j6e=t=>{if(!t)return"";let e=t.replaceAll("\\","/").split("/").filter(Boolean);return e.length<=1?"":(e.pop(),e.join("/"))},cB="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",G6e="netdisk;P2SP;2.2.91.136;android-android;",asr="netdisk",osr="https://pan.baidu.com/",csr="https://pan.baidu.com/disk/main",usr=200,lsr=t=>{try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}},K6e=(t="",e=csr)=>({"User-Agent":cB,Referer:e,Accept:"application/json, text/plain, */*",...t?{Cookie:t}:{}}),H6e=(t="",e=cB)=>({"User-Agent":e,Referer:osr,...t?{Cookie:t}:{}}),dsr=()=>({"User-Agent":asr}),rV,nV={},sV={set(t,e){nV[t]=e,rV.push(`/baidu/${t}`,e)},get(t){return nV[t]}},sb=async t=>{rV=t.server.db,nV=await rV.getObjectDefault("/baidu",{})};var iV=class{constructor(){this.regex=/https:\/\/pan\.baidu\.com\/s\/(.*)\?.*?pwd=([^&]+)/,this.type=["M3U8_AUTO_4K","M3U8_AUTO_2K","M3U8_AUTO_1080","M3U8_AUTO_720","M3U8_AUTO_480"],this.headers={"User-Agent":cB,Connection:"keep-alive",Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6"},this.api="https://pan.baidu.com",this.link="",this.pwd="",this.surl="",this.shorturl="",this.shareid="",this.app_id=250528,this.view_mode=1,this.channel="chunlei",this.shareCookie=""}get cookie(){return sV.get("baidu_cookie")||""}async getSurl(e){this.link=e,this.shareCookie="";let r=this.regex.exec(e);r&&r[1]&&(this.surl=r[1],this.shorturl=this.surl.split("").slice(1).join(""),this.pwd=r[2]||"")}async getSign(){let e={...this.headers,cookie:this.shareCookie||this.cookie},r=await he.get(`${this.api}/share/tplconfig?surl=${this.surl}&fields=Espace_info,card_info,sign,timestamp&view_mode=${this.view_mode}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:e});if(!r.data||!r.data.data||!r.data.data.sign)throw new Error(`\u83B7\u53D6sign\u5931\u8D25: ${JSON.stringify(r.data)}`);return r.data.data.sign}async getRandsk(){let e=Q6e.default.stringify({pwd:this.pwd,vcode:"",vcode_str:""}),r=(await he.post(`${this.api}/share/verify?surl=${this.shorturl}&pwd=${this.pwd}`,e,{headers:{"User-Agent":cB,Referer:this.link}})).data.randsk;if(!r)return"";let n="BDCLND="+r,s=this.cookie.replace(/BDCLND=[^;]*;?\s*/g,"");return s.length>0&&!s.endsWith(";")&&(s+="; "),this.shareCookie=s+n,r}async getShareList(){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let e=(await he.get(`${this.api}/share/list?web=5&app_id=${this.app_id}&desc=1&showempty=0&page=1&num=20&order=time&shorturl=${this.shorturl}&root=1&view_mode=${this.view_mode}&channel=${this.channel}&web=1&clienttype=0`,{headers:this.headers})).data;if(e.errno===0&&e.list.length>0){let r={},n=[],s=[];this.uk=e.uk,this.shareid=e.share_id,sV.set(`baidu_share_${this.surl}`,{surl:this.surl,pwd:this.pwd,link:this.link,uk:this.uk,shareid:this.shareid}),e.list.map(a=>{if((a.category==="6"||a.category===6)&&n.push(a.path),a.category==="1"||a.category===1){let o=a.server_filename||a.path.split("/").pop(),c=j6e(a.path);s.push({vod_name:o,vod_group:c,vod_id:[a.path.replaceAll("#","\0"),this.uk,this.shareid,a.fs_id||a.fsid,this.surl].join("*"),vod_size:a.size})}}),!(e.title in r)&&e.title!==void 0&&(r[e.title]=[]),s.length>=0&&e.title!==void 0&&(r[e.title]=[...s]);let i=await Promise.all(n.map(async a=>this.getSharepath(a)));if(i=i.filter(a=>a!=null).flat(),i.length>=0){let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));r[e.title].push(...a)}return r}}async getSharepath(e){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let r=(await he.get(`${this.api}/share/list?is_from_web=true&uk=${this.uk}&shareid=${this.shareid}&order=name&desc=0&showempty=0&view_mode=${this.view_mode}&web=1&page=1&num=100&dir=${encodeURIComponent(e)}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:this.headers})).data;if(r.errno===0&&r.list.length>0){let n=[],s=[];r.list.map(o=>{if((o.category==="6"||o.category===6)&&n.push(o.path),o.category==="1"||o.category===1){let c=o.server_filename||o.path.split("/").pop(),u=j6e(o.path);s.push({vod_name:c,vod_group:u,vod_id:[o.path.replaceAll("#","\0"),this.uk,this.shareid,o.fs_id||o.fsid,this.surl].join("*"),vod_size:o.size})}});let i=await Promise.all(n.map(async o=>this.getSharepath(o)));i=i.filter(o=>o!=null);let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));return[...s,...a.flat()]}}sha1(e){return tV.default.SHA1(e).toString(tV.default.enc.Hex)}async getUid(){this.headers.cookie=this.shareCookie||this.cookie;let e=(await he.get("https://mbd.baidu.com/userx/v1/info/get?appname=baiduboxapp&fields=%20%20%20%20%20%20%20%20%5B%22bg_image%22,%22member%22,%22uid%22,%22avatar%22,%20%22avatar_member%22%5D&client&clientfrom&lang=zh-cn&tpl&ttt",{headers:this.headers})).data;if(e&&e.data&&e.data.fields&&e.data.fields.uid)return e.data.fields.uid;throw new Error("\u83B7\u53D6\u7528\u6237UID\u5931\u8D25: "+JSON.stringify(e))}async getShareUrl(e,r,n,s){e=e.replaceAll("\0","#");let i=await this.getSign(),a=[],o=Math.floor(new Date/1e3);return this.type.map(c=>{a.push({name:c.replace("M3U8_AUTO_",""),url:`${this.api}/share/streaming?channel=${this.channel}&uk=${r}&fid=${s}&sign=${i}&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":G6e}),c="73CED981D0F186D12BC18CAE1684FFD5|VSRCQTF6W",u=String(new Date().getTime()),l=this.sha1(this.sha1(this.cookie.match(/BDUSS=(.+?);/)[1])+a+"ebrcUYiuxaZv2XGu7KIYKxUrqfnOfpDF"+u+c+"11.30.2ae5821440fab5e1a61a025f014bd8972"),d=this.api+"/share/list?shareid="+n+"&uk="+r+"&fid="+s+"&sekey="+i+"&origin=dlna&devuid="+c+"&clienttype=1&channel=android_12_zhao_bd-netdisk_1024266h&version=11.30.2&time="+u+"&rand="+l,f=(await he.get(d,{headers:o})).data;if(f.errno===0&&f.list.length>0)return f.list[0].dlink}},Wn=new iV;async function V6e(t,e){await sb(e),await Wn.getSurl(t);let r=await Wn.getShareList();if(!r)return null;let n=await isr("baidu"),s=[],i=[];return Object.keys(r).forEach(a=>{let o=Ps(n,r[a]);o&&o.from&&o.url&&(s.push(o.from),i.push(o.url))}),s.length===0?null:{from:s.join("$$$"),url:i.join("$$$")}}async function z6e(t,e="/",r=1){await sb(t);let n=Wn.cookie;if(!n)return{list:[],rawCount:0};let s=Number.parseInt(r,10)||1,i=String(e||"/"),a=(await he.get(`${Wn.api}/api/list?app_id=${Wn.app_id}&web=1&num=${usr}&page=${s}&order=name&desc=0&dir=${encodeURIComponent(i)}`,{headers:K6e(n)})).data;if(Number(a?.errno)!==0)throw new Error(`\u767E\u5EA6\u5217\u76EE\u5F55\u5931\u8D25: ${a?.errmsg||a?.errno||"unknown error"}`);let o=Array.isArray(a?.list)?a.list:[];return{list:o,rawCount:o.length}}async function fsr(t,e){await sb(t);let r=Wn.cookie;if(!r)return null;let n=String(typeof e=="object"?e?.fileId||"":e||""),s=typeof e=="object"?String(e?.path||""):"";if(!n||!s)return null;let i=new URLSearchParams({type:"VideoURL",path:s,fs_id:n,devuid:"0%1",clienttype:"1",channel:"android_15_25010PN30C_bd-netdisk_1523a",nom3u8:"1",dlink:"1",media:"1",origin:"dlna"}),a=(await he.get(`${Wn.api}/api/mediainfo?${i.toString()}`,{headers:K6e(r),validateStatus:()=>!0})).data,o=String(a?.info?.dlink||a?.info?.[0]?.dlink||a?.dlink||"").trim();if(!o){let c=a?.errno,u=a?.errmsg||a?.show_msg||a?.message||"";throw new Error(`\u767E\u5EA6\u89C6\u9891\u76F4\u94FE\u83B7\u53D6\u5931\u8D25: ${u||c||"empty dlink"}`)}return{dlink:o,data:a}}var psr={};async function uB(t,e){let r=String(t.body.id||"").split("*");if(await sb(t),r[0]==="own"){let c=String(r[1]||"").trim(),u=lsr(r[2]||"");if(!Wn.cookie)return{parse:0,url:"",msg:"\u767E\u5EA6 Cookie \u7F3A\u5931"};if(!c&&!u)return{parse:0,url:"",msg:"\u767E\u5EA6\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let l=await fsr(t,{fileId:c,path:u});return l?.dlink?{parse:0,url:["\u539F\u753B",l.dlink],header:dsr()}:{parse:0,url:"",msg:"\u767E\u5EA6\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(l){return{parse:0,url:"",msg:`\u767E\u5EA6\u63A5\u53E3\u5F02\u5E38: ${l?.message||l}`}}}let n=r[4],s=sV.get(`baidu_share_${n}`);s&&(Wn.surl=s.surl,Wn.pwd=s.pwd,Wn.link=s.link,Wn.uk=s.uk,Wn.shareid=s.shareid,Wn.shorturl=Wn.surl?Wn.surl.split("").slice(1).join(""):"",Wn.shareCookie="",Wn.pwd&&(await Wn.getRandsk(),Wn.headers.cookie=Wn.shareCookie||Wn.cookie));let i={...H6e("",G6e)},a={...H6e()};try{let c=await Wn.getAppShareUrl(r[0],r[1],r[2],r[3]);if(c)return{parse:0,url:["\u539F\u753B",c],header:i}}catch(c){console.log("App\u7248API\u5931\u8D25\uFF0C\u964D\u7EA7\u5230Web\u7248API:",c.message)}let o=await Wn.getShareUrl(r[0],r[1],r[2],r[3]);if(o&&o.length>0){let c=[];return o.forEach(u=>{c.push(u.name,u.url)}),{parse:0,url:c,header:a}}throw new Error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25")}async function lB(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId,a=t.params.flag;if(r!=="baidu")return e.status(400).send({error:"Invalid site"});let o=psr[s];if(!o)return e.status(404).send({error:"Play URL not found in cache"});let c,u=o.headers;if(o.type==="app")c=o.url;else if(o.type==="web"){let l=o.urls.find(d=>d.name===a);if(!l)return e.status(404).send({error:"Quality not found"});c=l.url}else return e.status(500).send({error:"Invalid cache type"});return e.redirect(c)}var Cl=Re(Jn(),1);var Te=to;(function(t,e){let r=to,n=t();for(;;)try{if(-parseInt(r(1178,"j(Pm"))/1*(parseInt(r(1676,"ky6h"))/2)+-parseInt(r(1220,"WFzA"))/3+-parseInt(r(663,"%SDn"))/4*(parseInt(r(275,"RAI2"))/5)+-parseInt(r(665,"!DZ@"))/6*(parseInt(r(1240,"6cH]"))/7)+parseInt(r(1801,"DiMt"))/8+parseInt(r(2053,"HZbC"))/9+parseInt(r(1573,"kM4s"))/10===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(fB,953568+-215*3058);var dB,aV={},es={set(t,e){let r=to;aV[t]=e,dB&&dB[r(876,"IXUY")](r(1482,"lbro")+t,e)},get(t){return aV[t]}},ib=async t=>{let e=to;dB=t[e(1564,"5y@]")].db,aV=await dB[e(1353,"@pEn")+e(1600,"Tl!3")](e(807,"]tXZ"),{})},msr=async t=>{let e=to;return globalThis[e(1750,"w8pn")]?await globalThis[e(814,"p1lY")](t):t},oV=class{constructor(){let e=to,r={KlICH:e(1237,"SxCa")+e(445,"FO4*")+e(1296,"KdbQ")+e(1142,"4b1b"),wkKaw:e(1377,"GXhD"),PCyLb:e(329,"yn!2")+e(1355,"DiMt")+e(593,"#CM4"),xgZMX:e(585,"a&Z$")+e(369,"GXhD"),oMfiM:e(2084,"KdbQ")+e(644,"kM4s")+e(2052,"GXhD"),yrVIt:e(406,"j(Pm")+e(1383,"KdbQ")+e(1211,"6!X(")+e(927,"KdbQ")+e(915,"K&$@")+e(1832,"o]EO")+e(955,"IXUY")+e(1003,"DiMt")+e(334,"6!X(")+e(1862,"#Hok")+e(830,"RAI2")+"6",dXsGd:e(1071,"lsgr"),ofCPv:e(466,"mH&s")+e(328,"cf3y")+e(258,"U(wg")+e(1627,"WLav"),EKpCI:e(1756,"mPFZ")+e(1081,"U(wg"),IpMFU:e(488,"DiMt")+e(1530,"SxCa")+e(525,"WFzA")+e(1293,"kM4s")+e(1275,"UUoF"),Zovsx:e(519,"MTVZ")+e(1779,"mPFZ")},n=r[e(750,"]tXZ")][e(621,"mPFZ")]("|"),s=5*-1498+179+3*2437;for(;;){switch(n[s++]){case"0":this[e(763,"lsgr")]=r[e(794,"4b1b")];continue;case"1":this[e(661,"Ab)Y")+e(409,"U(wg")]="";continue;case"2":this[e(670,"o]EO")]=r[e(854,"lsgr")];continue;case"3":this[e(592,"c0A9")+"d"]=r[e(1488,"WFzA")];continue;case"4":this[e(1528,"j(Pm")]="";continue;case"5":this[e(881,"fbFQ")]=/https:\/\/pan\.xunlei\.com\/s\/([^?#]+)(?:\?[^#]*pwd=([^&#]+))?/;continue;case"6":this[e(1784,"jrYj")]=r[e(1284,"p1lY")];continue;case"7":this[e(766,"eKKZ")]={"User-Agent":r[e(460,"U(wg")],Connection:r[e(1051,"Tl!3")],Accept:r[e(1768,"p1lY")],"Accept-Encoding":r[e(1429,"@pEn")],"Accept-Language":r[e(331,"W7VB")]};continue;case"8":this[e(1797,"WFzA")]="";continue;case"9":this[e(508,"mH&s")]="";continue;case"10":this[e(1169,"lrSf")]="";continue;case"11":this[e(637,"w8pn")]="";continue;case"12":this[e(494,"X7W[")]=r[e(1008,"lbro")];continue;case"13":this[e(323,"a&Z$")+e(1642,"ky6h")]="";continue;case"14":this[e(1161,"UUoF")]="";continue}break}}async[Te(890,"o]EO")](){let e=Te,r={oQAOf:function(n,s){return n>s},YboBH:function(n,s){return n/s},RcsuW:e(1124,"2k6H")+e(759,"lbro"),kjGoG:e(1251,"c0A9")+"\u767B\u5F55",FpDUZ:e(1130,"GXhD")+e(733,"MTVZ")};if(this[e(1093,"KdbQ")])try{let n=JSON[e(692,"jrYj")](Cl.default[e(1835,"X7W[")][e(526,"U(wg")][e(1985,"SxCa")](this[e(491,"6!X(")][e(1905,"U(wg")](".")[1])[e(1465,"lbro")](Cl.default[e(1772,"fbFQ")][e(452,"4b1b")]));r[e(942,"a&Z$")](n[e(298,"p1lY")],Math[e(2020,"UUoF")](r[e(1453,"Tl!3")](Date[e(424,"SxCa")](),-3*-977+2176*4+-3545*3)))?console[e(800,"%SDn")](r[e(1018,"@pEn")]):console[e(1826,"#CM4")](r[e(371,"6cH]")])}catch{console[e(1015,"fbFQ")](r[e(493,"RAI2")])}}get[Te(584,"HZbC")](){let e=Te,r={ptMtb:e(1785,"RAI2")},n=es[e(1701,"GXhD")](r[e(383,"lsgr")]);return!n&&(n=this[e(392,"MTVZ")](),es[e(1817,"fbFQ")](r[e(289,"K&$@")],n)),n}get[Te(752,"WFzA")](){let e=Te,r={jQSOt:e(1486,"mPFZ")+"me"};return es[e(285,"kM4s")](r[e(1534,"a&Z$")])}get[Te(340,"WLav")](){let e=Te,r={TXfpn:e(1012,"K!]D")+"rd"};return es[e(796,"w8pn")](r[e(1931,"mPFZ")])}get[Te(1167,"GXhD")](){let e=Te,r={vrnVt:e(777,"K!]D")};return es[e(1400,"ky6h")](r[e(1840,"WFzA")])}get[Te(1123,"SxCa")+Te(1517,"UUoF")](){let e=Te,r={wAkpl:e(1483,"2k6H")+e(610,"RAI2")};return es[e(1494,"Ab)Y")](r[e(317,"fbFQ")])}get[Te(857,"jrYj")](){let e=Te,r={GTahk:e(1810,"KdbQ")+"d"};return es[e(1462,"o]EO")](r[e(1705,"2k6H")])}[Te(2093,"c0A9")](e){return new Promise(r=>setTimeout(r,e))}[Te(1887,"5y@]")](e){let r=Te;return Cl.default[r(721,"2k6H")](e)[r(1780,"6!X(")]()}[Te(1757,"o]EO")](e){let r=Te;return Cl.default[r(590,"cf3y")](e)[r(662,"o]EO")]()}[Te(825,"]tXZ")](){let e=Te,r={HtoWh:function(n,s){return n|s},eqLja:function(n,s){return n*s},EFlsU:function(n,s){return n===s},imCaB:function(n,s){return n&s},lUGHh:e(2085,"kM4s")+e(1706,"lbro")+e(1135,"eKKZ")+"xx"};return r[e(1057,"a&Z$")][e(739,"U(wg")](/[xy]/g,function(n){let s=e,i=r[s(1774,"FO4*")](r[s(993,"U(wg")](Math[s(1761,"p1lY")](),7377+-1*-4615+-11976),14662+-7331*2);return(r[s(1744,"5y@]")](n,"x")?i:r[s(322,"yn!2")](r[s(1900,"p1lY")](i,3),-5*-239+-6662+1095*5))[s(1780,"6!X(")](-4251+-30*13+4673)})}[Te(834,"mH&s")+Te(1034,"c0A9")](e){let r=Te,n={NmccL:function(s,i){return s+i},NjcwE:r(1783,"Ab)Y")+r(1510,"UUoF")+r(438,"lbro"),bxStp:r(1151,"lsgr")+r(676,"%SDn")+r(1440,"WLav")+"21"};return this[r(2007,"jrYj")](this[r(2013,"kM4s")](n[r(1350,"K!]D")](n[r(1347,"p1lY")](e,n[r(447,"6cH]")]),n[r(1327,"a&Z$")])))}[Te(516,"WLav")+Te(1006,"a&Z$")](e){let r=Te,n={lnJjQ:function(a,o){return a+o},cCtIv:r(1101,"K&$@")+r(668,"kM4s"),CNweO:r(1581,"c0A9")+r(1413,"c0A9")+r(1656,"KdbQ")+r(470,"kM4s"),VdDgo:r(2100,"DiMt")+r(765,"W7VB"),APaZK:r(1786,"K&$@")+r(699,"c0A9")+r(659,"!DZ@"),nZWqE:r(2064,"Ab)Y")+r(1608,"K!]D")+r(1995,"2k6H")+r(1549,"UUoF"),pkdWS:r(1710,"a&Z$")+"1",YwwoA:r(1258,"KdbQ")+r(1212,"lrSf"),AuUBo:r(444,"WLav")+r(1896,"mH&s")+r(954,"a&Z$")+r(1108,"j(Pm")+r(543,"HZbC"),USzbT:r(1213,"FO4*")+r(571,"W7VB")+r(271,"fbFQ"),EtsaD:r(1561,"%SDn")+r(684,"ky6h"),rheud:r(988,"!DZ@")+r(1814,"HZbC"),tVcJe:r(1013,"cf3y")+r(1601,"kM4s")+r(1659,"K!]D")+r(1267,"#Hok"),DgeSj:r(1027,"2k6H")+r(1626,"a&Z$")},s;return s=n[r(1787,"WLav")](n[r(523,"mPFZ")](n[r(1066,"U(wg")](n[r(430,"UUoF")],n[r(380,"lsgr")]),e),n[r(1399,"SxCa")]),[n[r(2023,"jrYj")],n[r(1037,"@pEn")],n[r(1439,"KdbQ")],n[r(1401,"Ab)Y")],n[r(1390,"K&$@")],n[r(1371,"lbro")],n[r(1929,"a&Z$")],n[r(1863,"j(Pm")],n[r(1723,"K&$@")],n[r(1436,"p1lY")]][r(2043,"DiMt")](a=>{let o=r;s=this[o(1070,"K&$@")](n[o(1038,"lrSf")](s,a))}),s}async[Te(767,"mPFZ")](e){let r=Te,n={tiZJa:function(i,a){return i(a)}};this[r(886,"GXhD")]=e;let s=this[r(1541,"cf3y")][r(542,"Ab)Y")](e);s&&s[2434*-4+5*-611+328*39]&&(this[r(1959,"a&Z$")]=s[4022+4021*-1],this[r(2079,"2k6H")]=n[r(2082,"DiMt")](decodeURIComponent,s[523*-1+-3*-1497+-3966]||""))}async[Te(1442,"KdbQ")](){let e=Te,r={QhHzq:e(1253,"yn!2"),svjaK:e(882,"eKKZ"),rwLnd:e(1289,"DiMt")+"7",phDEU:e(848,"lbro")+e(1023,"mPFZ")+e(606,"]tXZ")+"f1",kYvlP:e(2011,"FO4*")+e(2038,"DiMt")+e(1198,"IXUY")+e(1010,"eKKZ"),veRiN:e(879,"@pEn"),YCuzS:e(1724,"cf3y")+e(1614,"6cH]")+e(1854,"KdbQ")+e(1829,"RAI2")+e(1726,"o]EO")+e(852,"Ab)Y")+e(2102,"Tl!3")+"c",zpuix:e(1808,"cf3y"),nWZWm:e(643,"W7VB"),vMAdy:e(1302,"UUoF")+e(1443,"Tl!3"),NDOmJ:e(1195,"c0A9"),BNBTs:e(1571,"KdbQ"),PpJBQ:e(1295,"%SDn")+e(2094,"!DZ@"),JxAaI:function(a,o){return a===o},eAnEg:e(484,"GXhD")},n=JSON[e(2060,"6cH]")]({protocolVersion:r[e(964,"KC!H")],sequenceNo:r[e(1075,"mH&s")],platformVersion:"10",isCompressed:"0",appid:"40",clientVersion:r[e(957,"jrYj")],peerID:r[e(446,"mPFZ")],appName:r[e(1874,"mPFZ")],sdkVersion:r[e(1469,"P6I4")],devicesign:r[e(1056,"P6I4")],netWorkType:"2G",providerName:r[e(1047,"5y@]")],deviceModel:r[e(2017,"#Hok")],deviceName:r[e(608,"Ab)Y")],OSVersion:"12",creditkey:"",hl:r[e(1477,"cf3y")],userName:this[e(1520,"yn!2")],passWord:this[e(1733,"KdbQ")],verifyKey:"",verifyCode:"",isMd5Pwd:"0"}),s={method:r[e(893,"lsgr")],url:this[e(1260,"HZbC")]+(e(1680,"HZbC")+e(1597,"MTVZ")+e(1758,"o]EO")),headers:{"Content-Type":r[e(1376,"HZbC")]},data:n},i=await Ae[e(1963,"p1lY")](s);if(r[e(1950,"MTVZ")](i[e(753,"MTVZ")],1086+1*-886))return console[e(342,"ky6h")](r[e(754,"GXhD")]),i[e(741,"]tXZ")][e(720,"@pEn")]}async[Te(1924,"WFzA")+Te(1753,"yn!2")](){let e=Te,r={qCxBG:e(2008,"4b1b")+e(619,"ky6h")+e(1648,"a&Z$"),wjqvH:e(1468,"mPFZ"),HNwPd:e(1839,"DiMt")+e(358,"a&Z$")+e(700,"KdbQ")+e(356,"ky6h")+e(1747,"c0A9")+e(1582,"%SDn")+e(480,"6cH]")+e(1498,"MTVZ")+e(334,"6!X(")+e(1697,"mPFZ")+e(1570,"IXUY")+"6",BWnBb:e(2055,"w8pn")+e(885,"ky6h"),oZofk:function(a,o){return a===o}},n=JSON[e(756,"GXhD")]({client_id:this[e(419,"5y@]")+"d"],action:r[e(1378,"K!]D")],device_id:this[e(497,"GXhD")],captcha_token:"",meta:{phone_number:e(1937,"a&Z$")+this[e(1172,"%SDn")]}}),s={method:r[e(567,"cf3y")],url:this[e(595,"yn!2")]+(e(1160,"#Hok")+e(563,"U(wg")+"it"),headers:{"User-Agent":r[e(1341,"X7W[")],"Content-Type":r[e(1807,"o]EO")]},data:n},i=await Ae[e(1054,"mPFZ")](s);if(r[e(1492,"KC!H")](i[e(798,"Ab)Y")],-6*179+-1*9001+137*75))return i[e(728,"MTVZ")][e(821,"Tl!3")+e(465,"p1lY")]}async[Te(2096,"GXhD")+Te(347,"6cH]")](){let e=Te,r={ogPFy:e(822,"mPFZ"),WKdfJ:function(o,c){return o===c},PpRYy:e(351,"lrSf"),iFner:e(1825,"@pEn"),bVUWK:e(499,"cf3y"),jaGbi:e(1806,"w8pn"),dXnoh:e(1359,"W7VB")+e(788,"mH&s")+e(774,"MTVZ")+e(393,"5y@]")+e(1714,"4b1b")+e(731,"lsgr")+e(536,"%SDn")+e(506,"fbFQ")+e(425,"X7W[")+e(1640,"@pEn")+e(1891,"K&$@")+e(302,"c0A9")+e(1727,"#CM4")+e(968,"c0A9")+e(681,"KC!H")+"6",dpUgy:e(1202,"K!]D")+e(722,"o]EO"),hOrDf:function(o,c){return o===c},wKcOA:e(2036,"6cH]")};if(console[e(1446,"lrSf")](r[e(423,"w8pn")]),r[e(2073,"SxCa")](this[e(2062,"MTVZ")],"")||r[e(1352,"K!]D")](this[e(636,"%SDn")],void 0)){let o=this[e(373,"GXhD")]();es[e(1102,"j(Pm")](r[e(1016,"RAI2")],o)}let n=await this[e(311,"cf3y")+e(1908,"U(wg")](),s=JSON[e(578,"c0A9")]({phone_number:e(1173,"WLav")+this[e(920,"4b1b")],target:r[e(906,"W7VB")],usage:r[e(1005,"Tl!3")],client_id:this[e(1819,"2k6H")+"d"]}),i={method:r[e(898,"lrSf")],url:this[e(980,"U(wg")]+(e(529,"eKKZ")+e(921,"K!]D")),headers:{"User-Agent":r[e(359,"j(Pm")],"Content-Type":r[e(600,"%SDn")],"x-captcha-token":n,"x-client-id":this[e(1243,"a&Z$")+"d"],"x-device-id":this[e(511,"]tXZ")]},data:s},a=await Ae[e(612,"mH&s")](i)[e(1110,"ky6h")](o=>o[e(1974,"K&$@")]);r[e(856,"U(wg")](a[e(1932,"#CM4")],-11457+11657*1)&&(console[e(900,"6!X(")](r[e(428,"6!X(")]),this[e(1181,"MTVZ")+e(1682,"]tXZ")]=a[e(1250,"Tl!3")][e(307,"GXhD")+e(416,"K&$@")])}async[Te(1716,"c0A9")](e){let r=Te,n={LKcLQ:r(922,"yn!2"),yMQEz:r(1491,"]tXZ")+r(1119,"HZbC")+r(1577,"FO4*")+r(1139,"GXhD")+r(835,"cf3y")+r(1739,"IXUY")+r(1174,"FO4*")+r(1935,"#CM4")+r(729,"P6I4")+r(1145,"jrYj")+r(589,"HZbC")+r(1966,"fbFQ")+r(1428,"5y@]")+r(1456,"RAI2")+r(646,"6cH]")+"6",BirBp:r(1404,"]tXZ")+r(1009,"yn!2"),mvIJu:function(s,i){return s===i}};if(e){let s=JSON[r(642,"X7W[")]({verification_code:e,verification_id:this[r(1069,"jrYj")+r(1979,"W7VB")],client_id:this[r(2056,"]tXZ")+"d"]}),i={method:n[r(548,"ky6h")],url:this[r(415,"FO4*")]+(r(1618,"W7VB")+r(1553,"WFzA")+r(836,"#CM4")),headers:{"user-agent":n[r(365,"mH&s")],"content-type":n[r(1042,"lbro")],"x-client-id":this[r(944,"FO4*")+"d"],"x-device-id":this[r(1226,"a&Z$")]},data:s},a=await Ae[r(1113,"#CM4")](i)[r(1540,"P6I4")](o=>o[r(877,"lrSf")]);if(n[r(1619,"HZbC")](a[r(918,"6!X(")],19*-21+1*-8309+-4454*-2)){let o=a[r(463,"X7W[")][r(1444,"!DZ@")+r(1708,"MTVZ")];await this[r(2048,"Tl!3")+"n"](e,o)}}}async[Te(1633,"W7VB")+"n"](e,r){let n=Te,s={MNIWs:n(290,"K!]D"),JqqKm:n(615,"yn!2")+n(1617,"WFzA")+n(824,"c0A9")+n(776,"yn!2")+n(1361,"#CM4")+n(1073,"j(Pm")+n(1346,"WLav")+n(1968,"5y@]")+n(874,"#CM4")+n(671,"%SDn")+n(1457,"w8pn")+n(436,"eKKZ")+n(997,"mPFZ")+n(1064,"#Hok")+n(660,"@pEn")+"6",AiOOz:n(1264,"Ab)Y")+n(1516,"MTVZ"),DJMNX:function(u,l){return u===l},AvuNe:n(2015,"FO4*"),wckus:n(2025,"HZbC"),QRWoe:function(u,l){return u+l},oOnoo:n(1762,"mH&s")+"d",hiYjL:n(459,"#Hok")+n(403,"kM4s"),JZGAg:function(u,l){return u+l},VKmGm:n(849,"%SDn")},i=await this[n(1447,"6!X(")+n(1547,"c0A9")](),a=JSON[n(642,"X7W[")]({username:n(2045,"W7VB")+this[n(713,"mPFZ")],verification_code:e,verification_token:r,client_id:this[n(2056,"]tXZ")+"d"]}),o={method:s[n(1594,"!DZ@")],url:this[n(1868,"ky6h")]+(n(1851,"WFzA")+n(773,"lsgr")),headers:{"User-Agent":s[n(1405,"W7VB")],"Content-Type":s[n(1568,"6cH]")],"x-captcha-token":i,"x-client-id":this[n(647,"yn!2")+"d"],"x-device-model":"PC","x-device-id":this[n(1885,"eKKZ")]},data:a},c=await Ae[n(1125,"KC!H")](o)[n(1671,"5y@]")](u=>u[n(333,"X7W[")]);s[n(570,"P6I4")](c[n(1778,"X7W[")],-1*8679+-5587+14466*1)?(console[n(1063,"eKKZ")](s[n(482,"GXhD")]),es[n(943,"p1lY")](s[n(1621,"yn!2")],s[n(1930,"IXUY")](s[n(280,"Tl!3")](c[n(1811,"5y@]")][n(338,"GXhD")]," "),c[n(350,"RAI2")][n(891,"U(wg")+"en"])),es[n(1817,"fbFQ")](s[n(967,"@pEn")],c[n(1190,"P6I4")][n(1209,"#CM4")]),es[n(1987,"FO4*")](s[n(1748,"U(wg")],c[n(1952,"FO4*")][n(1077,"GXhD")+n(809,"HZbC")])):console[n(1216,"K!]D")](s[n(820,"RAI2")](s[n(2065,"Tl!3")],c[n(1952,"FO4*")]))}async[Te(688,"!DZ@")+Te(1208,"ky6h")](){let e=Te,r={LbdNc:e(2002,"yn!2")+e(1612,"#Hok"),QxIvN:e(1468,"mPFZ"),tQTIi:e(655,"mPFZ")+e(1820,"2k6H")+e(2e3,"jrYj")+e(1877,"#CM4")+e(1961,"KC!H")+e(1364,"UUoF")+e(1396,"K!]D")+e(1866,"IXUY")+e(866,"KdbQ")+e(295,"FO4*")+e(1244,"c0A9")+"6",jFBQV:e(278,"5y@]")+e(1502,"mH&s"),vwjmD:function(a,o){return a===o}},n=JSON[e(629,"2k6H")]({client_id:this[e(2091,"RAI2")+"d"],action:r[e(1325,"SxCa")],device_id:this[e(475,"lbro")],captcha_token:"",meta:{phone_number:e(1229,"mPFZ")+this[e(752,"WFzA")]}}),s={method:r[e(1472,"P6I4")],url:this[e(880,"KC!H")]+(e(1188,"yn!2")+e(1616,"X7W[")+"it"),headers:{"User-Agent":r[e(1895,"cf3y")],"Content-Type":r[e(1340,"j(Pm")]},data:n},i=await Ae[e(1146,"4b1b")](s);if(r[e(534,"p1lY")](i[e(1219,"lrSf")],-2*4027+-6546+370*40))return i[e(1811,"5y@]")][e(535,"eKKZ")+e(1430,"j(Pm")]}async[Te(355,"a&Z$")](){let e=Te,r={gdfea:function(n,s){return n===s},uadMD:e(1424,"FO4*"),ATPyf:e(1519,"SxCa")+e(2027,"p1lY")+e(1941,"lsgr")+e(262,"lsgr")+e(1394,"U(wg")+e(558,"6cH]")+e(1550,"HZbC")+e(1580,"Ab)Y")+e(1809,"#Hok")+e(1559,"WFzA")+e(1163,"6!X(")+"6",lNCDu:e(1696,"MTVZ")+e(1791,"lsgr"),BgKWK:e(1336,"SxCa"),BpWdT:e(1688,"eKKZ"),bFZaS:function(n,s){return n+s},vdlZq:e(1743,"Tl!3")+"d",uvziL:function(n,s){return n>s},KLMep:function(n,s){return n/s},rfnYB:e(448,"5y@]"),uCakz:e(950,"6!X(")};if(r[e(345,"WLav")](this[e(1026,"jrYj")],void 0)||r[e(394,"ky6h")](this[e(1167,"GXhD")],"")){let n=await this[e(346,"p1lY")+e(978,"mH&s")](),s=JSON[e(1506,"yn!2")]({username:e(996,"p1lY")+this[e(713,"mPFZ")],password:this[e(1273,"lbro")],client_id:this[e(1094,"cf3y")+"d"]}),i={method:r[e(2042,"c0A9")],url:this[e(1418,"X7W[")]+(e(903,"eKKZ")+e(853,"X7W[")),headers:{"User-Agent":r[e(1653,"kM4s")],"Content-Type":r[e(649,"yn!2")],"accept-language":r[e(395,"a&Z$")],"x-captcha-token":n,"x-client-id":this[e(912,"6cH]")+"d"],"x-device-id":this[e(611,"KdbQ")]},data:s},a=await Ae[e(1764,"WFzA")](i)[e(349,"#Hok")](o=>o[e(1965,"U(wg")]);r[e(1184,"GXhD")](a[e(1778,"X7W[")],-2*979+-77+-15*-149)&&(es[e(2029,"U(wg")](r[e(1544,"p1lY")],r[e(715,"]tXZ")](r[e(1332,"K!]D")](a[e(1811,"5y@]")][e(1855,"WFzA")]," "),a[e(1952,"FO4*")][e(891,"U(wg")+"en"])),es[e(432,"6!X(")](r[e(405,"lsgr")],a[e(863,"@pEn")][e(479,"eKKZ")])),await this[e(449,"FO4*")+"a"]()}else{let n=JSON[e(1978,"U(wg")](Cl.default[e(1233,"yn!2")][e(1751,"K!]D")][e(1917,"DiMt")](this[e(491,"6!X(")][e(941,"lbro")](".")[1])[e(1513,"#Hok")](Cl.default[e(1902,"RAI2")][e(847,"kM4s")]));r[e(530,"DiMt")](n[e(732,"w8pn")],Math[e(407,"p1lY")](r[e(1306,"yn!2")](Date[e(424,"SxCa")](),2487*4+-3545+-5403)))?console[e(1215,"#Hok")](r[e(1062,"!DZ@")]):(console[e(1279,"2k6H")](r[e(2044,"6cH]")]),es[e(2029,"U(wg")](r[e(1657,"K&$@")],""),await this[e(524,"c0A9")]())}}async[Te(1977,"K&$@")+"a"](){let e=Te,r={pjAEy:e(458,"GXhD")+e(326,"#Hok")+e(1693,"Ab)Y")+e(313,"6cH]")+e(1028,"Ab)Y"),xDhos:e(1386,"WFzA")+e(1818,"6!X("),GDeHw:e(1104,"fbFQ"),JpUSj:e(1652,"@pEn")+e(963,"kM4s")+e(1501,"j(Pm")+e(1689,"jrYj"),aItsV:e(1521,"6cH]")+e(652,"eKKZ"),wjrLj:e(1403,"RAI2"),fiYYo:e(1150,"K&$@")+e(779,"SxCa")+e(1490,"RAI2")+e(296,"RAI2")+e(429,"fbFQ")+"it",mpDJX:e(701,"MTVZ")+e(1487,"o]EO")+e(367,"WLav")+e(970,"HZbC")+e(1312,"K!]D")+e(558,"6cH]")+e(1343,"fbFQ")+e(1003,"DiMt")+e(334,"6!X(")+e(937,"j(Pm")+e(389,"kM4s")+"6",LDHoT:e(2055,"w8pn")+e(785,"X7W["),ErQjq:e(1408,"KdbQ")+e(1770,"fbFQ")+e(2021,"mH&s")+e(702,"#Hok")+e(1499,"MTVZ"),hDatb:e(421,"MTVZ")+e(2090,"MTVZ")+e(274,"lrSf"),PiSQz:e(913,"4b1b"),rFKAA:e(1415,"w8pn")+e(1897,"6!X(")+e(442,"2k6H")+e(902,"IXUY")+e(1155,"lrSf")+e(391,"w8pn")+e(1294,"j(Pm"),BxmNA:function(u,l){return u(l)}},n=JSON[e(1136,"IXUY")]({client_id:this[e(772,"kM4s")+"d"],action:r[e(1827,"6cH]")],device_id:this[e(1986,"SxCa")],captcha_token:"",meta:{username:"",phone_number:this[e(1045,"kM4s")],email:"",package_name:r[e(1362,"]tXZ")],client_version:r[e(1194,"#Hok")],captcha_sign:r[e(1041,"P6I4")],timestamp:r[e(598,"X7W[")],user_id:this[e(654,"lsgr")]}}),s={method:r[e(1557,"6cH]")],url:r[e(924,"X7W[")],headers:{"User-Agent":r[e(878,"c0A9")],"Content-Type":r[e(1409,"w8pn")],"accept-language":r[e(1878,"]tXZ")],"content-type":r[e(1033,"WFzA")]},data:n},i=await Ae[e(746,"FO4*")](s)[e(2067,"lrSf")](u=>u[e(312,"ky6h")]),a=i[e(926,"a&Z$")][e(1722,"!DZ@")+e(528,"RAI2")],o={method:r[e(1922,"K&$@")],url:r[e(1200,"Ab)Y")],headers:{"User-Agent":r[e(1556,"j(Pm")],"accept-language":r[e(1335,"RAI2")],authorization:this[e(1872,"IXUY")],"content-type":r[e(532,"U(wg")],"x-captcha-token":a,"x-client-id":this[e(1819,"2k6H")+"d"],"x-device-id":this[e(1885,"eKKZ")]}},c=(await r[e(1466,"#CM4")](Ae,o)[e(793,"MTVZ")](u=>u[e(1121,"lbro")]))[e(1790,"cf3y")]}async[Te(2039,"MTVZ")+Te(1328,"ky6h")](e,r){let n=Te,s={JpDTm:n(613,"w8pn")+n(2077,"MTVZ"),SoJRm:n(1984,"lsgr")+n(1587,"jrYj")+n(2047,"fbFQ")+"6a",hHFwZ:n(819,"j(Pm")+n(1911,"WLav"),XEatx:n(990,"a&Z$"),GKxNU:n(2087,"#Hok")+n(306,"K!]D")+n(283,"lbro")+n(352,"X7W["),bIScY:n(1420,"2k6H")+n(2032,"c0A9"),pdJfB:n(1427,"P6I4"),dbjkd:n(1106,"jrYj")+n(1562,"yn!2")+n(2057,"2k6H")+n(780,"%SDn")+n(1647,"#CM4")+n(2014,"mH&s")+n(1579,"w8pn")+n(810,"FO4*")+n(1263,"lrSf")+n(628,"mH&s")+n(330,"W7VB")+"6",ncjTi:n(1725,"DiMt")+n(1981,"KdbQ"),IrAaH:function(u,l){return u===l}},i=r+":"+e,a=JSON[n(1560,"W7VB")]({client_id:s[n(1964,"Tl!3")],action:i,device_id:s[n(1666,"W7VB")],captcha_token:"",meta:{username:"",phone_number:"",email:"",package_name:s[n(512,"GXhD")],client_version:s[n(1479,"6!X(")],captcha_sign:s[n(1199,"Ab)Y")],timestamp:s[n(2074,"p1lY")],user_id:this[n(1873,"IXUY")]}}),o={method:s[n(802,"j(Pm")],url:this[n(1260,"HZbC")]+(n(517,"Tl!3")+n(520,"kM4s")+"it"),headers:{"User-Agent":s[n(1948,"W7VB")],"Content-Type":s[n(1603,"Ab)Y")]},data:a},c=await Ae[n(1342,"]tXZ")](o);if(s[n(1518,"6cH]")](c[n(357,"HZbC")],8545+-407*-19+-16078*1))return c[n(863,"@pEn")][n(401,"DiMt")+n(577,"K&$@")]}async[Te(1536,"KdbQ")+Te(557,"cf3y")](e,r){let n=Te,s={spNdC:n(626,"#Hok")+n(1276,"eKKZ")+n(994,"RAI2"),jxiGg:n(1649,"6cH]")+"7",jpJIz:n(1745,"4b1b")+n(496,"WLav"),Zqxue:n(1951,"5y@]"),FjBEA:n(2104,"HZbC")+n(316,"p1lY")+n(704,"6!X(")+n(559,"K!]D")+n(2083,"w8pn")+n(940,"#CM4")+n(947,"jrYj")+n(775,"%SDn")+n(1972,"cf3y")+n(1236,"a&Z$")+n(1205,"c0A9")+n(1755,"6cH]")+n(297,"mPFZ")+n(1860,"UUoF")+n(1242,"RAI2")+n(1074,"IXUY")+n(544,"kM4s")+n(939,"U(wg")+n(2030,"eKKZ")+n(321,"ky6h")+n(433,"!DZ@")+n(1232,"j(Pm")+n(566,"4b1b"),XmPZg:n(408,"kM4s")+n(303,"p1lY"),Mjxrx:function(l,d){return l===d}},i=r+":"+e,a=this[n(591,"RAI2")+n(343,"KC!H")](this[n(1843,"K!]D")]),o=JSON[n(1022,"a&Z$")]({client_id:this[n(1243,"a&Z$")+"d"],action:i,device_id:this[n(889,"jrYj")],captcha_token:"",meta:{package_name:s[n(1115,"KC!H")],client_version:s[n(2035,"p1lY")],captcha_sign:"1."+a,timestamp:s[n(828,"UUoF")],user_id:this[n(1873,"IXUY")]}}),c={method:s[n(1816,"fbFQ")],url:this[n(952,"lbro")]+(n(397,"X7W[")+n(376,"DiMt")+"it"),headers:{"User-Agent":s[n(1356,"Ab)Y")],"Content-Type":s[n(1285,"cf3y")]},data:o},u=await Ae[n(1113,"#CM4")](c);if(s[n(1166,"KC!H")](u[n(762,"UUoF")],-8426+38*227))return u[n(901,"j(Pm")][n(1217,"%SDn")+n(809,"HZbC")]}[Te(390,"WFzA")](){let e=Te,r={vozfE:e(1143,"HZbC")+e(1464,"eKKZ"),PViHV:e(1939,"c0A9")+e(2072,"lbro"),jFmJu:e(1906,"@pEn")+e(1737,"eKKZ"),YNolP:e(1942,"yn!2")+e(490,"]tXZ")+e(620,"#CM4"),xStyi:e(1765,"jrYj")+e(672,"MTVZ"),bZkon:e(1189,"fbFQ")+e(2050,"WLav")+e(645,"ky6h")+"0S",UfOFx:e(718,"%SDn")+e(1883,"W7VB")+e(2026,"yn!2")+"rt",AutwO:e(1668,"GXhD")+e(287,"W7VB"),flAXz:e(1782,"j(Pm")+e(1638,"mH&s"),jsNbt:e(1644,"SxCa")+e(2012,"FO4*")+e(337,"6cH]"),SaVKX:e(634,"X7W[")+e(1910,"fbFQ")+e(1473,"K&$@")+"Xs",XuSxW:e(887,"p1lY")+e(1537,"IXUY"),NIhbI:e(1575,"kM4s"),mZjhO:e(740,"#CM4")+e(1882,"jrYj"),MbDOY:e(1303,"SxCa")+e(1857,"Ab)Y")+e(1927,"ky6h")+"6a",oMvjn:function(o,c){return o+c},dNqGr:function(o,c){return o+c},tGnlv:e(1309,"cf3y")+e(450,"kM4s"),RmJuU:function(o,c){return o<c},BSPxa:function(o,c){return o+c},piRAy:function(o,c){return o+c}},n=[r[e(270,"U(wg")],r[e(666,"2k6H")],r[e(845,"fbFQ")],"m2",r[e(1206,"FO4*")],r[e(1731,"W7VB")],r[e(1222,"RAI2")],r[e(427,"lbro")],r[e(1116,"KdbQ")],r[e(1300,"kM4s")],r[e(1865,"p1lY")],r[e(1889,"U(wg")]],s={ClientID:r[e(1417,"4b1b")],ClientVersion:r[e(1156,"MTVZ")],PackageName:r[e(966,"MTVZ")],DeviceID:r[e(811,"RAI2")]},i=Date[e(468,"cf3y")](),a=r[e(678,"%SDn")](r[e(1221,"HZbC")](r[e(370,"#Hok")](r[e(426,"lrSf")](s[e(2061,"mPFZ")],s[e(1227,"lrSf")+e(335,"]tXZ")]),s[e(1899,"6cH]")+"e"]),s[e(956,"Tl!3")]),r[e(1639,"Ab)Y")]);for(let o=7263*1+9179+2*-8221;r[e(1040,"fbFQ")](o,n[e(305,"o]EO")]);o++)a=Cl.default[e(1589,"Ab)Y")](r[e(1149,"4b1b")](a,n[o]))[e(930,"6cH]")]();return r[e(266,"jrYj")]("1.",a)}async[Te(801,"a&Z$")+"st"](){let e=Te,r={sMuAD:function(c,u){return c===u},NGUuS:e(865,"lrSf"),NLqKx:function(c,u){return c(u)},KiyIX:e(1235,"DiMt")+e(1946,"j(Pm"),DyWFz:e(1789,"6cH]"),QLzwu:e(1831,"c0A9"),iJThO:e(1245,"p1lY")+e(1422,"GXhD")+e(839,"mPFZ")+e(703,"jrYj")+e(1926,"eKKZ")+e(1435,"Tl!3")+e(1363,"2k6H")+e(267,"%SDn")+e(706,"c0A9")+e(1543,"DiMt")+e(1128,"!DZ@")+"6",CmOGH:e(1558,"IXUY")+e(1641,"#CM4")+e(735,"o]EO")+e(1715,"Tl!3")+e(259,"DiMt"),qTPoD:e(518,"mPFZ")+e(2092,"j(Pm"),kBvAK:e(568,"mPFZ")+e(783,"IXUY")+e(504,"X7W[")+"6a",PPTTE:function(c,u){return c in u},LFAgM:function(c,u){return c!==u},lYnTq:function(c,u){return c>u},iUvjQ:function(c,u){return c!==u},aBWDk:function(c,u){return c>=u}},n=r[e(381,"lsgr")],s=r[e(384,"fbFQ")],i=await this[e(1268,"U(wg")+e(683,"w8pn")](n,s),a={method:r[e(972,"Tl!3")],url:this[e(1059,"mPFZ")]+(e(1129,"yn!2")+e(560,"K&$@")+e(1563,"jrYj"))+this[e(1876,"WFzA")]+(e(1828,"mPFZ")+"=")+this[e(1799,"SxCa")]+(e(1588,"cf3y")+e(467,"@pEn")+e(1044,"MTVZ")+e(1360,"GXhD")+e(1936,"eKKZ")),headers:{"User-Agent":r[e(1307,"p1lY")],"accept-language":r[e(738,"P6I4")],authorization:"","x-captcha-token":i,"x-client-id":r[e(1990,"DiMt")],"x-device-id":r[e(565,"W7VB")]}},o=await Ae[e(540,"5y@]")](a);if(r[e(273,"mH&s")](o[e(1698,"@pEn")],-8429*1+8129+-250*-2)){let c={},u=[],l=[];this[e(1721,"K!]D")+e(564,"WFzA")]=o[e(1912,"mH&s")][e(378,"#CM4")+e(641,"kM4s")],o[e(1790,"cf3y")][e(842,"yn!2")][e(951,"5y@]")](f=>{let p=e;if(r[p(707,"jrYj")](f[p(1711,"lsgr")],""))u[p(1970,"yn!2")](f.id);else if(r[p(609,"HZbC")](f[p(362,"P6I4")+p(999,"fbFQ")],r[p(1411,"FO4*")])){let m=/[#|'"\[\]&<>]/g,h=m[p(1344,"cf3y")](f[p(1707,"#Hok")])?f[p(1609,"eKKZ")][p(739,"U(wg")](m,""):f[p(569,"j(Pm")];l[p(675,"cf3y")]({name:h,size:r[p(987,"o]EO")](Number,f[p(1029,"mPFZ")])||-8093+181*28+3025,fileId:f.id,share_id:this[p(363,"UUoF")],parent_id:f[p(1738,"K&$@")],pass_code_token:r[p(1752,"@pEn")](encodeURIComponent,this[p(696,"P6I4")+p(469,"jrYj")]),pass_code:this[p(1892,"lbro")]})}}),!r[e(1907,"lsgr")](o[e(1790,"cf3y")][e(1454,"lrSf")],c)&&r[e(1798,"UUoF")](o[e(1912,"mH&s")][e(1879,"cf3y")],void 0)&&(c[o[e(1103,"IXUY")][e(919,"%SDn")]]=[]),r[e(2037,"DiMt")](l[e(1158,"4b1b")],-3760*2+-4813+12333)&&r[e(795,"DiMt")](o[e(728,"MTVZ")][e(1092,"KC!H")],void 0)&&(c[o[e(1190,"P6I4")][e(1331,"W7VB")]]=[...l]);let d=await Promise[e(386,"a&Z$")](u[e(761,"6!X(")](async f=>this[e(764,"HZbC")+e(1320,"5y@]")](f)));return d=d[e(949,"cf3y")](f=>f!=null)[e(1478,"RAI2")](),r[e(1655,"cf3y")](d[e(1370,"c0A9")],0)&&c[o[e(1035,"WFzA")][e(919,"%SDn")]][e(2005,"fbFQ")](...d),c}}async[Te(833,"jrYj")+Te(1067,"yn!2")](e){let r=Te,n={wJWtz:function(u,l){return u===l},ctlsy:r(808,"KC!H"),sZlmJ:function(u,l){return u(l)},YnLpk:r(505,"KC!H")+r(1148,"%SDn"),ruRQy:r(992,"!DZ@"),Pjrgr:r(554,"UUoF"),Szeyc:r(745,"lbro")+r(1654,"4b1b")+r(679,"%SDn")+r(1823,"DiMt")+r(1961,"KC!H")+r(558,"6cH]")+r(1777,"kM4s")+r(1348,"5y@]")+r(1398,"eKKZ")+r(859,"GXhD")+r(755,"o]EO")+"6",WsPFH:r(770,"KC!H")+r(1455,"kM4s")+r(1545,"P6I4")+r(561,"K!]D")+r(1438,"SxCa"),VgIVQ:r(985,"a&Z$")+r(1734,"w8pn"),NfGkS:r(1460,"GXhD")+r(1503,"@pEn"),EMzqI:r(1191,"K!]D")+r(2070,"4b1b")+r(320,"@pEn")+"6a",KeJkO:function(u,l){return u===l}},s=n[r(1322,"DiMt")],i=n[r(1956,"Ab)Y")],a=await this[r(1837,"lsgr")+r(1043,"fbFQ")](s,i),o={method:n[r(1849,"Ab)Y")],url:this[r(575,"fbFQ")]+(r(2046,"6!X(")+r(784,"eKKZ")+r(669,"K!]D")+"=")+this[r(1876,"WFzA")]+(r(2001,"eKKZ")+"=")+e+(r(1828,"mPFZ")+r(1380,"RAI2"))+n[r(1310,"c0A9")](encodeURIComponent,this[r(1800,"@pEn")+r(375,"eKKZ")])+(r(1658,"mPFZ")+r(2031,"p1lY")+r(909,"mPFZ")+r(673,"!DZ@")+r(1665,"P6I4")),headers:{"User-Agent":n[r(1480,"GXhD")],"accept-language":n[r(1434,"@pEn")],authorization:"","content-type":n[r(1228,"mH&s")],"x-captcha-token":a,"x-client-id":n[r(1555,"K&$@")],"x-device-id":n[r(1298,"4b1b")]}},c=await Ae[r(1764,"WFzA")](o);if(n[r(1920,"SxCa")](c[r(1406,"jrYj")],-1*-7271+2*2921+1*-12913)){let u=[],l=[];c[r(1811,"5y@]")][r(418,"lbro")][r(547,"FO4*")](f=>{let p=r;if(n[p(748,"#Hok")](f[p(1504,"U(wg")],""))u[p(550,"jrYj")](f.id);else if(n[p(555,"a&Z$")](f[p(1613,"WFzA")+p(635,"FO4*")],n[p(708,"KC!H")])){let m=/[#|'"\[\]&<>]/g,h=m[p(1319,"WLav")](f[p(553,"WLav")])?f[p(725,"WFzA")][p(372,"eKKZ")](m,""):f[p(1050,"yn!2")];l[p(1960,"WLav")]({name:h,size:n[p(781,"#CM4")](Number,f[p(1565,"lrSf")])||5162+2551*-1+-2611,fileId:f.id,share_id:this[p(1193,"K!]D")],parent_id:f[p(991,"yn!2")],pass_code_token:n[p(1584,"U(wg")](encodeURIComponent,this[p(1800,"@pEn")+p(1416,"#Hok")]),pass_code:this[p(1869,"W7VB")]})}});let d=await Promise[r(1349,"KC!H")](u[r(710,"6cH]")](async f=>this[r(1947,"fbFQ")+r(789,"w8pn")](f)));return d=d[r(1358,"RAI2")](f=>f!=null),[...l,...d[r(677,"a&Z$")]()]}}async[Te(1288,"RAI2")+"l"](e,r,n,s=""){let i=Te,a={GjuBH:function(p,m){return p!==m},VTxPS:function(p,m){return p===m},pqCFf:function(p,m){return p+m},gmzob:i(1096,"%SDn")+i(743,"Ab)Y")+i(1470,"j(Pm")+i(1523,"X7W[")+i(639,"a&Z$")+"l=",lbVaJ:function(p,m){return p(m)},WphNd:i(1223,"WLav")+i(1e3,"DiMt"),xJEJB:i(1886,"5y@]"),Fvwoz:i(1388,"P6I4"),dsANa:function(p,m){return p(m)},cqaKP:i(500,"%SDn")+i(1687,"]tXZ")+i(679,"%SDn")+i(703,"jrYj")+i(1893,"!DZ@")+i(1061,"w8pn")+i(1277,"yn!2")+i(366,"]tXZ")+i(1606,"4b1b")+i(1660,"SxCa")+i(521,"fbFQ")+"6",NnUqT:i(605,"!DZ@")+i(737,"w8pn")+i(461,"6!X(")+i(1566,"ky6h")+i(492,"2k6H"),dcKhR:i(324,"4b1b"),QqZfo:i(860,"RAI2")+i(885,"ky6h"),ktdrU:i(279,"lbro")+i(1508,"DiMt"),PIJBl:i(2041,"Ab)Y")+i(597,"o]EO")+i(868,"mH&s")+"6a"},o=a[i(691,"kM4s")],c=a[i(803,"4b1b")],u=await this[i(1351,"P6I4")+i(435,"2k6H")](o,c),l=s||this[i(1449,"o]EO")]||"",d={method:a[i(627,"WFzA")],url:this[i(1020,"#CM4")]+(i(1842,"%SDn")+i(1822,"yn!2")+i(870,"p1lY")+i(1636,"U(wg")+"=")+a[i(1944,"X7W[")](encodeURIComponent,n)+(i(1903,"mPFZ")+i(1132,"#CM4"))+e+i(1278,"KC!H")+r+(i(576,"K!]D")+"e=")+l,headers:{"User-Agent":a[i(339,"!DZ@")],"accept-language":a[i(2080,"cf3y")],authorization:"","cache-control":a[i(603,"5y@]")],"content-type":a[i(1838,"4b1b")],"x-captcha-token":u,"x-client-id":a[i(1548,"GXhD")],"x-device-id":a[i(1645,"mH&s")]}},f=await Ae[i(749,"HZbC")](d);if(a[i(778,"IXUY")](f[i(1084,"DiMt")],7699+5158*-1+-2341)){this[i(1247,"c0A9")]="";let p=[];return f[i(2069,"lsgr")][i(1736,"%SDn")][i(1552,"U(wg")][i(751,"jrYj")](m=>{let h=i;a[h(332,"j(Pm")](m[h(1019,"WLav")],null)&&(a[h(981,"lsgr")](this[h(498,"IXUY")],"")&&(this[h(1112,"j(Pm")]=new URL(m[h(549,"mH&s")][h(1324,"SxCa")])[h(1053,"4b1b")]),p[h(1635,"Ab)Y")](m[h(1628,"yn!2")],a[h(1131,"W7VB")](a[h(514,"lbro")],a[h(1815,"K!]D")](encodeURIComponent,m[h(2063,"kM4s")][h(888,"K!]D")]))))}),p}return[]}async[Te(1604,"o]EO")+"ta"](e){let r=Te,n={lxuSB:r(434,"WFzA")};if(e[r(293,"RAI2")](n[r(771,"HZbC")]))return await this[r(487,"%SDn")](e),await this[r(1567,"p1lY")+"st"]()}async[Te(1210,"lrSf")](e,r,n){let s=Te,i={nGyWt:s(1339,"K!]D")+s(1017,"eKKZ"),ssEzY:s(782,"DiMt"),QExzW:function(f,p){return f(p)},cmQUI:s(653,"lrSf"),Xqkub:s(1519,"SxCa")+s(1695,"mH&s")+s(1368,"X7W[")+s(703,"jrYj")+s(1105,"MTVZ")+s(1280,"2k6H")+s(2101,"U(wg")+s(2071,"KC!H")+s(1945,"p1lY")+s(361,"U(wg")+s(812,"yn!2")+"6",thDGk:s(1725,"DiMt")+s(1256,"j(Pm"),YHgSB:s(1558,"IXUY")+s(1583,"KdbQ")+s(268,"#Hok")+s(537,"U(wg")+s(841,"eKKZ"),yTKJR:function(f,p){return f===p},VUJoT:function(f,p){return f===p},dRNcF:s(1953,"@pEn"),URQjc:s(483,"KdbQ")},a=i[s(1039,"W7VB")],o=i[s(2066,"#Hok")],c=await this[s(1032,"#CM4")+s(2040,"p1lY")](a,o),u=JSON[s(578,"c0A9")]({parent_id:this[s(1664,"KdbQ")],share_id:r,pass_code_token:i[s(1329,"ky6h")](decodeURIComponent,n),ancestor_ids:[],file_ids:[e],specify_parent_id:!0}),l={method:i[s(1539,"#CM4")],url:this[s(1861,"a&Z$")]+(s(471,"6cH]")+s(805,"o]EO")+"re"),headers:{"User-Agent":i[s(625,"UUoF")],"Content-Type":i[s(1527,"fbFQ")],"accept-language":i[s(364,"UUoF")],authorization:this[s(1266,"!DZ@")],"x-captcha-token":c,"x-client-id":this[s(284,"Tl!3")+"d"],"x-device-id":this[s(1419,"W7VB")]},data:u},d=await Ae[s(1533,"lrSf")](l)[s(1776,"GXhD")](f=>f[s(877,"lrSf")]);return i[s(1259,"fbFQ")](d?.[s(1592,"K&$@")],-6974+2242*-1+9416)&&i[s(687,"#Hok")](d?.[s(926,"a&Z$")]?.[s(1992,"UUoF")+"us"],"OK")?(console[s(1391,"j(Pm")](i[s(1969,"]tXZ")]),!0):(console[s(1391,"j(Pm")](d?.[s(1811,"5y@]")]?.[s(1120,"WLav")+"us"]||s(973,"kM4s")+(d?.[s(315,"eKKZ")]||i[s(533,"DiMt")])),!1)}async[Te(1763,"mH&s")](e,r,n){let s=Te,i={FfgOq:function(a,o){return a!==o},ZWRIB:s(674,"K!]D")+s(1643,"Ab)Y"),FwPpu:s(917,"Tl!3")};if(await this[s(1650,"#CM4")](),i[s(1052,"6cH]")](this[s(2004,"5y@]")],"")&&i[s(1551,"lrSf")](this[s(300,"c0A9")],void 0)){if(!await this[s(797,"]tXZ")](e,r,n))throw new Error(i[s(1144,"U(wg")])}else throw new Error(i[s(264,"p1lY")])}async[Te(1423,"DiMt")](){let e=Te,r={iTUXI:function(u,l){return u===l},mcKVQ:function(u,l){return u===l},NAaPi:e(742,"X7W[")+e(1773,"P6I4"),ngueR:e(904,"MTVZ"),KmybT:e(1079,"j(Pm"),vQdKB:e(1988,"2k6H")+e(481,"Ab)Y")+e(473,"cf3y")+e(596,"DiMt")+e(2010,"KdbQ")+e(1203,"KdbQ")+e(995,"DiMt")+e(1072,"FO4*")+e(513,"yn!2")+e(2006,"SxCa")+e(1021,"Tl!3")+e(962,"DiMt")+e(1971,"UUoF")+e(1272,"5y@]")+e(2058,"FO4*")+e(1741,"lsgr")+e(1090,"FO4*")+e(552,"K!]D")+e(1511,"GXhD")+e(294,"j(Pm")+e(946,"Tl!3")+e(1337,"kM4s")+e(1375,"j(Pm"),KbZpT:e(272,"w8pn")+e(1338,"6!X(")+e(1474,"jrYj")+e(855,"RAI2")+e(1275,"UUoF"),veruj:e(689,"IXUY")+e(303,"p1lY")};(r[e(1983,"mH&s")](this[e(935,"]tXZ")],void 0)||r[e(945,"c0A9")](this[e(399,"@pEn")],""))&&await this[e(1681,"]tXZ")]();let n=r[e(1673,"]tXZ")],s=r[e(288,"X7W[")],i=await this[e(368,"FO4*")+e(867,"K&$@")](n,s),a=this[e(1024,"Tl!3")]+(e(1923,"2k6H")+e(1871,"X7W[")+e(719,"Tl!3")+e(843,"W7VB")+e(1975,"WFzA")+e(1238,"lrSf")+e(2028,"fbFQ")+e(310,"a&Z$")+e(1794,"mH&s")+e(382,"]tXZ")+e(1111,"IXUY")+e(1231,"mPFZ")+e(1452,"o]EO")+e(1867,"KC!H")+e(1159,"GXhD")+e(1201,"P6I4")+e(1888,"jrYj")+e(1049,"DiMt")+e(1082,"WLav")),o={method:r[e(1252,"WFzA")],url:a,headers:{"User-Agent":r[e(1507,"6cH]")],"accept-language":r[e(884,"IXUY")],authorization:this[e(1133,"ky6h")],"content-type":r[e(522,"j(Pm")],"x-captcha-token":i,"x-client-id":this[e(1980,"P6I4")+"d"],"x-device-id":this[e(497,"GXhD")]}},c=await Ae[e(929,"lsgr")](o);if(r[e(736,"!DZ@")](c[e(1357,"p1lY")],-1548+-8534*-1+-6786)){let u=c[e(728,"MTVZ")][e(574,"W7VB")][e(1014,"5y@]")](l=>l[e(725,"WFzA")]===this[e(705,"@pEn")]);u?this[e(1157,"!DZ@")]=u.id:this[e(263,"cf3y")]=""}}async[Te(1269,"c0A9")](){let e=Te,r={uNCuj:function(n,s){return n===s},dphUS:e(846,"lbro")+e(2019,"!DZ@"),tUELw:e(1730,"%SDn"),tNmLW:e(319,"IXUY")+"er",BfoNR:e(290,"K!]D"),YsQjM:e(1126,"2k6H")+e(690,"SxCa")+e(679,"%SDn")+e(1162,"WLav")+e(1607,"j(Pm")+e(1257,"5y@]")+e(1087,"]tXZ")+e(1254,"w8pn")+e(1281,"]tXZ")+e(1274,"6!X(")+e(1532,"cf3y")+"6",RlLro:e(451,"eKKZ")+e(1646,"lrSf"),KeFHA:e(1080,"2k6H")+e(1234,"!DZ@")+e(461,"6!X(")+e(757,"fbFQ")+e(1225,"P6I4"),GlWSR:e(1107,"]tXZ")+"\u5B58"};if(await this[e(1505,"p1lY")](),r[e(895,"Tl!3")](this[e(1316,"p1lY")],"")||r[e(1629,"UUoF")](this[e(1085,"X7W[")],void 0)){let n=r[e(1286,"!DZ@")],s=r[e(817,"!DZ@")],i=await this[e(1976,"K&$@")+e(2040,"p1lY")](n,s),a=JSON[e(1781,"ky6h")]({parent_id:"",name:this[e(1207,"X7W[")],kind:r[e(1620,"yn!2")],space:""}),o={method:r[e(478,"FO4*")],url:this[e(515,"lsgr")]+(e(1176,"KC!H")+e(2003,"mPFZ")),headers:{"User-Agent":r[e(1283,"WLav")],"Content-Type":r[e(1036,"K&$@")],"accept-language":r[e(1991,"lrSf")],authorization:this[e(308,"DiMt")],"x-captcha-token":i,"x-client-id":this[e(439,"ky6h")+"d"],"x-device-id":this[e(475,"lbro")]},data:a},c=await Ae[e(928,"cf3y")](o);r[e(791,"kM4s")](c[e(457,"GXhD")],-31*-121+-1*1709+-1842)&&(this[e(790,"%SDn")]=c[e(463,"X7W[")][e(724,"w8pn")].id,console[e(1154,"cf3y")](r[e(1076,"6cH]")]))}}async[Te(388,"GXhD")](){let e=Te,r={xmBXF:e(1333,"a&Z$")+e(456,"yn!2"),CGHgb:e(1789,"6cH]"),sQFTT:e(1002,"K&$@"),cGBDY:e(1769,"ky6h")+e(1007,"%SDn")+e(1152,"#Hok")+e(883,"mPFZ")+e(2088,"%SDn")+e(1694,"!DZ@")+e(1249,"WFzA")+e(1866,"IXUY")+e(1140,"cf3y")+e(295,"FO4*")+e(1451,"K&$@")+"6",WhMBq:e(594,"]tXZ")+e(1630,"c0A9")+e(586,"4b1b")+e(769,"lrSf")+e(396,"fbFQ"),hvsdf:e(408,"kM4s")+e(960,"FO4*"),NVPDM:function(u,l){return u===l}};this[e(1957,"X7W[")]="";let n=r[e(440,"SxCa")],s=r[e(1760,"p1lY")],i=await this[e(1147,"ky6h")+e(979,"lbro")](n,s),a=this[e(1861,"a&Z$")]+(e(1495,"UUoF")+e(2086,"HZbC")+e(474,"SxCa"))+this[e(414,"a&Z$")]+(e(1192,"%SDn")+e(1086,"c0A9")+e(1686,"p1lY")+e(2016,"eKKZ")+e(975,"jrYj")+e(651,"lrSf")+e(1395,"lsgr")+e(1997,"fbFQ")+e(1674,"c0A9")+e(1317,"4b1b")+e(1095,"W7VB")+e(1940,"a&Z$")+e(1287,"UUoF")+e(462,"WLav")+e(709,"jrYj")+e(1719,"lbro")+e(1853,"2k6H")),o={method:r[e(1134,"!DZ@")],url:a,headers:{"User-Agent":r[e(507,"o]EO")],"accept-language":r[e(1850,"KC!H")],authorization:this[e(1133,"ky6h")],"content-type":r[e(1732,"K&$@")],"x-captcha-token":i,"x-client-id":this[e(439,"ky6h")+"d"],"x-device-id":this[e(936,"Ab)Y")]}},c=await Ae[e(1804,"kM4s")](o);if(r[e(786,"MTVZ")](c[e(918,"6!X(")],37*-79+31*88+395)){let u=Array[e(1323,"HZbC")](c[e(1856,"#Hok")]?.[e(730,"6!X(")])?c[e(455,"c0A9")][e(582,"j(Pm")]:[],l=u[e(1599,"W7VB")](d=>d?.id);l&&(this[e(477,"yn!2")]=l.id)}return this[e(1467,"4b1b")]}async[Te(832,"eKKZ")+"Id"](e=8,r=2268*3+2678+-8282){let n=Te,s={CUijw:function(i,a){return i<=a},WBDeG:function(i,a){return i<a}};for(let i=0;s[n(1729,"o]EO")](i,e);i++){let a=await this[n(1846,"#Hok")]()[n(1425,"mH&s")](o=>"");if(a)return a;s[n(318,"SxCa")](i,e)&&await this[n(616,"kM4s")](r)}return""}async[Te(1894,"K!]D")](){let e=Te,r={ZPhdc:function(n,s){return n!==s},WwjQX:e(1397,"#CM4")+e(1414,"a&Z$"),VXhVa:e(864,"a&Z$"),PXEdY:e(1314,"KC!H"),CLJTr:e(965,"FO4*")+e(1562,"yn!2")+e(1152,"#Hok")+e(1448,"cf3y")+e(1004,"a&Z$")+e(1118,"lbro")+e(1550,"HZbC")+e(1585,"jrYj")+e(1836,"w8pn")+e(1697,"mPFZ")+e(1244,"c0A9")+"6",XVUHQ:e(1531,"lsgr")+e(2094,"!DZ@"),KFlkw:e(1408,"KdbQ")+e(892,"mH&s")+e(1746,"IXUY")+e(1293,"kM4s")+e(1186,"%SDn"),HiATS:function(n,s){return n===s},Dvxkm:e(1788,"UUoF"),eYADq:function(n,s){return n===s},saLnh:e(527,"IXUY")};if(await this[e(908,"]tXZ")](),r[e(758,"WFzA")](this[e(1122,"ky6h")],"")&&r[e(1717,"o]EO")](this[e(934,"2k6H")],void 0)){let n=r[e(1379,"WLav")],s=r[e(2068,"X7W[")],i=await this[e(441,"SxCa")+e(531,"K!]D")](n,s),a=JSON[e(2024,"HZbC")]({ids:[this[e(485,"o]EO")]],space:""}),o={method:r[e(1463,"W7VB")],url:this[e(575,"fbFQ")]+(e(1833,"fbFQ")+e(871,"#Hok")+e(1590,"Ab)Y")),headers:{"User-Agent":r[e(1852,"DiMt")],"Content-Type":r[e(1089,"#CM4")],"accept-language":r[e(1509,"HZbC")],authorization:this[e(399,"@pEn")],"x-captcha-token":i,"x-client-id":this[e(1471,"KC!H")+"d"],"x-device-id":this[e(1385,"mPFZ")]},data:a},c=await Ae[e(1631,"DiMt")](o)[e(1596,"!DZ@")](u=>u[e(1974,"K&$@")]);r[e(1497,"p1lY")](c[e(762,"UUoF")],200)?console[e(1224,"!DZ@")](r[e(1973,"lsgr")]):r[e(299,"!DZ@")](c[e(2033,"6cH]")],404)&&console[e(800,"%SDn")](r[e(1058,"lrSf")])}}async[Te(804,"DiMt")+Te(1605,"o]EO")+Te(580,"Ab)Y")](){let e=Te,r={jfUjY:e(572,"4b1b")+e(711,"eKKZ"),yyBcO:e(1382,"SxCa")+e(1031,"X7W[")+e(656,"KC!H"),znnhb:e(1649,"6cH]")+"7",asaHp:e(1098,"c0A9")+e(1304,"mH&s"),WKcof:e(1427,"P6I4"),YKxAQ:e(1271,"5y@]")+e(1426,"cf3y")+e(538,"j(Pm")+e(1001,"GXhD")+e(911,"kM4s")+e(933,"]tXZ")+e(1373,"X7W[")+e(792,"ky6h")+e(503,"#Hok")+e(727,"6cH]")+e(1372,"!DZ@")+e(1088,"lsgr")+e(1514,"lrSf")+e(618,"SxCa")+e(1432,"KC!H")+e(723,"#Hok")+e(454,"yn!2")+e(1679,"]tXZ")+e(1928,"lsgr")+e(551,"cf3y")+e(806,"#Hok")+e(1796,"X7W[")+e(858,"#CM4"),tcYxQ:e(1441,"c0A9")+e(1766,"lsgr"),qTsZZ:e(985,"a&Z$")+e(829,"Ab)Y"),jRZCo:function(o,c){return o===c}},n=this[e(2075,"cf3y")+e(1901,"kM4s")](this[e(617,"ky6h")]),s={client_id:this[e(787,"K&$@")+"d"],action:r[e(938,"fbFQ")],device_id:this[e(281,"#Hok")],captcha_token:"",meta:{package_name:r[e(1735,"P6I4")],client_version:r[e(1870,"FO4*")],captcha_sign:"1."+n,timestamp:r[e(1410,"]tXZ")],user_id:this[e(654,"lsgr")]}},i={method:r[e(404,"#CM4")],url:this[e(1048,"Tl!3")]+(e(2054,"mPFZ")+e(260,"eKKZ")+"it"),headers:{"User-Agent":r[e(840,"HZbC")],"Accept-Encoding":r[e(1262,"lrSf")],"Content-Type":r[e(815,"lsgr")]},data:s},a=await Ae[e(1125,"KC!H")](i);if(r[e(1949,"eKKZ")](a[e(315,"eKKZ")],18*-318+349+5575))return a[e(741,"]tXZ")][e(697,"mPFZ")+e(1369,"!DZ@")]}async[Te(1065,"K!]D")+Te(714,"lbro")](){let e=Te,r={IfBiz:e(896,"KdbQ")+e(1690,"!DZ@"),PEzRj:e(1625,"eKKZ")+e(291,"4b1b"),mdRzn:e(734,"Ab)Y"),cJXTP:e(1459,"RAI2")+e(694,"Tl!3")+e(1996,"SxCa")+e(1431,"!DZ@")+e(360,"SxCa")+e(624,"kM4s")+e(1663,"p1lY")+e(1458,"#CM4")+e(977,"mPFZ")+e(1660,"SxCa")+e(282,"2k6H")+"6",Eltoc:e(633,"fbFQ")+e(1792,"Tl!3"),tYcPB:function(a,o){return a===o}},n=JSON[e(799,"WLav")]({client_id:r[e(1913,"ky6h")],action:r[e(486,"SxCa")],device_id:this[e(1450,"mH&s")],captcha_token:"",meta:{phone_number:e(1381,"5y@]")+this[e(1661,"@pEn")]}}),s={method:r[e(1662,"eKKZ")],url:this[e(693,"mH&s")]+(e(1218,"5y@]")+e(932,"!DZ@")+"it"),headers:{"User-Agent":r[e(2059,"KdbQ")],"Content-Type":r[e(581,"6!X(")]},data:n},i=await Ae[e(1141,"IXUY")](s);if(r[e(910,"MTVZ")](i[e(1389,"a&Z$")],5653+2777*-1+-2676))return i[e(2049,"#CM4")][e(1938,"K&$@")+e(465,"p1lY")]}async[Te(1055,"eKKZ")](){let e=Te,r={LmyWD:e(623,"!DZ@"),XsKiv:e(837,"RAI2")+e(1109,"Tl!3")+e(622,"!DZ@")+e(1767,"WLav")+e(398,"p1lY")+e(1824,"IXUY")+e(1678,"SxCa")+e(1554,"a&Z$")+e(982,"RAI2")+e(1321,"4b1b")+e(413,"cf3y")+e(1290,"WLav")+e(948,"RAI2")+e(1880,"IXUY")+e(599,"5y@]"),vyqDi:e(1696,"MTVZ")+e(1256,"j(Pm"),vXrwc:function(o,c){return o===c},UbWeH:e(1515,"6!X(")+e(894,"#CM4"),rfUZR:e(1688,"eKKZ"),eVGsW:function(o,c){return o+c},moKPi:function(o,c){return o+c},VIOgu:e(869,"GXhD")+"d"},n=await this[e(716,"U(wg")+e(510,"mH&s")](),s=JSON[e(1318,"MTVZ")]({username:e(1381,"5y@]")+this[e(1632,"2k6H")],password:this[e(587,"mPFZ")],client_id:this[e(472,"%SDn")+"d"]}),i={method:r[e(1812,"UUoF")],url:this[e(420,"K&$@")]+(e(1667,"fbFQ")+e(1239,"yn!2")),headers:{"User-Agent":r[e(1481,"UUoF")],"Content-Type":r[e(2078,"@pEn")],"x-captcha-token":n,"x-client-id":this[e(1598,"#CM4")+"d"],"x-device-id":this[e(925,"K&$@")]},data:s},a=await Ae[e(712,"w8pn")](i);r[e(664,"KdbQ")](a[e(1884,"FO4*")],-1849+-3*-117+1698)&&(es[e(464,"mPFZ")](r[e(682,"SxCa")],a[e(501,"mPFZ")][e(974,"4b1b")+e(2051,"lrSf")]),es[e(1595,"UUoF")](r[e(1313,"MTVZ")],r[e(562,"4b1b")](r[e(823,"6cH]")](a[e(2009,"yn!2")][e(1179,"ky6h")]," "),a[e(863,"@pEn")][e(1512,"X7W[")+"en"])),es[e(1046,"W7VB")](r[e(556,"c0A9")],a[e(1265,"o]EO")][e(1669,"RAI2")]))}async[Te(1749,"kM4s")+Te(1261,"@pEn")](){let e=Te,r={ycril:function(n,s){return n===s},DGrCX:function(n,s){return n===s},MYWjj:e(1793,"WLav")+e(1292,"GXhD")+e(1489,"lbro")+e(1301,"4b1b")+e(1574,"lsgr"),TJdyU:e(850,"X7W[")+e(1369,"!DZ@"),rByPD:e(1675,"fbFQ"),rRXkv:e(1359,"W7VB")+e(1526,"2k6H")+e(614,"6cH]")+e(1299,"Ab)Y")+e(1713,"lbro")+e(961,"o]EO")+e(831,"o]EO")+e(862,"HZbC")+e(1624,"jrYj")+e(1803,"j(Pm")+e(1740,"p1lY")+e(1546,"j(Pm")+e(545,"lbro")+e(1958,"c0A9")+e(953,"P6I4"),XVkcH:e(860,"RAI2")+e(1622,"W7VB"),pJMzg:function(n,s){return n(s)},WfgHD:e(269,"lsgr"),kNYRt:e(1153,"mPFZ")+e(1011,"KdbQ"),oFEVz:e(1524,"jrYj"),zOrbF:function(n,s){return n+s},EYhfy:e(341,"kM4s")+e(1387,"lbro"),kJwGy:function(n,s){return n>s},shRXK:function(n,s){return n/s},iXkwA:e(1881,"WFzA")+e(1909,"j(Pm"),QvWKo:e(1848,"Tl!3")+"\u767B\u5F55"};if(r[e(1185,"!DZ@")](this[e(1282,"K!]D")],void 0)||r[e(1683,"p1lY")](this[e(986,"K&$@")],"")){if(this[e(286,"jrYj")+e(1610,"KdbQ")]){let n=JSON[e(2089,"p1lY")]({client_id:this[e(1677,"lbro")+"d"],client_secret:r[e(971,"FO4*")],grant_type:r[e(640,"]tXZ")],refresh_token:this[e(1326,"RAI2")+e(1915,"6cH]")]}),s={method:r[e(760,"yn!2")],url:this[e(1048,"Tl!3")]+(e(1445,"X7W[")+e(265,"5y@]")),headers:{"User-Agent":r[e(1246,"!DZ@")],"Content-Type":r[e(353,"jrYj")],"x-client-id":this[e(1392,"eKKZ")+"d"],"x-device-id":this[e(1412,"6!X(")]},data:n},i=await r[e(1651,"FO4*")](Ae,s)[e(793,"MTVZ")](a=>a[e(685,"fbFQ")]);if(r[e(632,"K&$@")](i?.[e(798,"Ab)Y")],1*5262+2*-1081+-290*10)){console[e(800,"%SDn")](r[e(539,"KC!H")]),es[e(304,"lsgr")](r[e(1898,"a&Z$")],i[e(1790,"cf3y")][e(850,"X7W[")+e(1989,"6!X(")]),es[e(2095,"w8pn")](r[e(744,"P6I4")],r[e(1291,"5y@]")](r[e(476,"6cH]")](i[e(838,"Ab)Y")][e(1493,"cf3y")]," "),i[e(1250,"Tl!3")][e(1542,"2k6H")+"en"]));return}}if(await this[e(1685,"K!]D")](),!this[e(1699,"j(Pm")])throw new Error(r[e(899,"P6I4")])}else try{let n=JSON[e(1759,"fbFQ")](Cl.default[e(573,"%SDn")][e(1576,"UUoF")][e(277,"P6I4")](this[e(1805,"mPFZ")][e(1634,"DiMt")](".")[1])[e(387,"@pEn")](Cl.default[e(1845,"#CM4")][e(607,"p1lY")]));r[e(976,"!DZ@")](n[e(1030,"KdbQ")],Math[e(604,"%SDn")](r[e(1954,"KdbQ")](Date[e(602,"U(wg")](),-4765+11*547+9*-28)))?console[e(1943,"HZbC")](r[e(1315,"lbro")]):(console[e(1180,"jrYj")](r[e(2076,"WLav")]),es[e(1692,"cf3y")](r[e(1933,"Tl!3")],""),await this[e(1955,"WLav")+e(1196,"lsgr")]())}catch{es[e(998,"KdbQ")](r[e(1407,"WFzA")],""),await this[e(1484,"fbFQ")+e(1496,"P6I4")]()}}async[Te(411,"5y@]")+Te(410,"K&$@")](e,r,n){let s=Te,i={GGQpV:s(579,"GXhD")+s(1637,"KdbQ"),ydelK:s(1241,"6cH]"),koIny:s(1700,"6!X(")+s(2038,"DiMt")+s(2034,"#CM4")+s(1117,"lsgr")+s(301,"#CM4")+s(916,"W7VB")+s(1602,"a&Z$")+s(1091,"W7VB")+s(989,"Ab)Y")+s(1255,"!DZ@")+s(1205,"c0A9")+s(1994,"#Hok")+s(1795,"K&$@")+s(1834,"mH&s")+s(1704,"SxCa")+s(309,"GXhD")+s(1919,"W7VB")+s(1859,"eKKZ")+s(686,"KdbQ")+s(680,"MTVZ")+s(1967,"lrSf")+s(667,"#CM4")+s(1998,"fbFQ"),thMbx:s(1904,"w8pn"),IsjIQ:s(431,"mPFZ"),VujEJ:s(813,"@pEn")+s(1197,"ky6h"),mzROv:s(1529,"4b1b")+s(1569,"lbro"),utbtm:function(a,o){return a===o},hXIQl:s(1060,"SxCa")+"4",GdGNR:s(818,"WLav")+s(601,"Tl!3"),Zkiue:function(a,o){return a===o},qwZRs:s(1138,"Tl!3")+s(1171,"4b1b"),HaNGV:s(1529,"4b1b")+s(1858,"W7VB")+s(1702,"!DZ@"),RWemc:function(a,o){return a!==o}};try{await this[s(314,"p1lY")](),await this[s(695,"P6I4")+s(1709,"WFzA")](),await this[s(261,"%SDn")](),await this[s(1999,"!DZ@")](e,r,n);let a=await this[s(1754,"lbro")+"Id"]();if(!a)throw new Error(i[s(958,"Tl!3")]);let o=await this[s(1078,"RAI2")+s(2103,"GXhD")+s(650,"Tl!3")](),c={method:i[s(1214,"o]EO")],url:this[s(1177,"ky6h")]+(s(1844,"WFzA")+s(1421,"c0A9"))+a+(s(1083,"lbro")+s(1461,"lrSf")+s(1127,"WLav")+s(1742,"j(Pm")+s(747,"w8pn")),headers:{"User-Agent":i[s(1586,"lbro")],Connection:i[s(1712,"2k6H")],Accept:i[s(1916,"#CM4")],"Accept-Encoding":i[s(509,"SxCa")],"x-captcha-token":o,authorization:this[s(1282,"K!]D")],"content-type":i[s(1538,"5y@]")],"x-device-id":this[s(1802,"#CM4")]}},u;try{u=await Ae[s(379,"K&$@")](c)}catch(l){if(i[s(648,"lsgr")](l?.[s(1500,"jrYj")]?.[s(1366,"!DZ@")],7165*1+-3*1045+-3626)){let d=i[s(1367,"j(Pm")][s(489,"GXhD")]("|"),f=0;for(;;){switch(d[f++]){case"0":c[s(657,"UUoF")]=this[s(1861,"a&Z$")]+(s(875,"#Hok")+s(2018,"P6I4"))+a+(s(1921,"K!]D")+s(1374,"GXhD")+s(502,"j(Pm")+s(583,"X7W[")+s(1165,"j(Pm"));continue;case"1":await this[s(923,"ky6h")](-124*-61+-7566+2*601);continue;case"2":console[s(1230,"yn!2")](i[s(1684,"mPFZ")]);continue;case"3":if(!a)throw l;continue;case"4":u=await Ae[s(546,"lbro")](c);continue;case"5":a=await this[s(1100,"]tXZ")+"Id"](3,2909*-2+-5674+2*6346);continue}break}}else throw l}if(i[s(1270,"a&Z$")](u[s(276,"%SDn")],-6007*1+-685*9+12372)){let l=u[s(1311,"ky6h")][i[s(1914,"jrYj")]]||u[s(1187,"6!X(")][s(1720,"o]EO")][i[s(959,"eKKZ")]][s(888,"K!]D")],d=new URL(l)[s(354,"Ab)Y")];return i[s(1847,"U(wg")](this[s(1775,"X7W[")],"")&&(l=l[s(1433,"a&Z$")](d,this[s(1771,"%SDn")])),l}}catch(a){return console[s(768,"mPFZ")](a),""}}},Vh=new oV;async function X6e(t,e){let r=Te,n={LFAAQ:function(c,u){return c(u)},MwZUU:function(c,u){return c===u},TjYHA:r(717,"X7W["),uxbsp:function(c,u,l){return c(u,l)},KrcKy:function(c,u){return c(u)},SQqRS:function(c,u){return c(u)},ijYiL:r(826,"FO4*"),SzAZz:r(658,"jrYj")};await n[r(402,"c0A9")](ib,e);let s=await Vh[r(417,"DiMt")+"ta"](t);if(!s)return null;let i=await n[r(873,"j(Pm")](msr,n[r(914,"kM4s")]),a=[],o=[];return Object[r(1703,"p1lY")](s)[r(1248,"WLav")](c=>{let u=r,l=Array[u(1204,"KC!H")](s[c])?s[c]:[],d=l[u(1593,"X7W[")](p=>{let m=u;return{vod_id:[p[m(638,"fbFQ")],p[m(1876,"WFzA")],p[m(1365,"KdbQ")],p[m(1475,"IXUY")+m(1572,"]tXZ")],p[m(1137,"jrYj")]||""][m(437,"K&$@")]("*"),vod_name:p[m(844,"lbro")],vod_size:n[m(1925,"P6I4")](Number,p[m(1962,"Ab)Y")])||0,vod_group:n[m(1334,"UUoF")](c,n[m(1875,"IXUY")])?"":c}}),f=n[u(2099,"5y@]")](Ps,i,d);f&&f[u(851,"HZbC")]&&f[u(1168,"U(wg")]&&(a[u(443,"6cH]")](f[u(1841,"2k6H")]),o[u(861,"!DZ@")](f[u(1402,"eKKZ")]))}),a[r(1522,"@pEn")]?{from:a[r(1297,"]tXZ")](n[r(1114,"mH&s")]),url:o[r(905,"KdbQ")](n[r(1918,"WLav")])}:null}var J6e=t=>{let e=Te,r={DhqqU:function(i,a){return i(a)},RdJaH:function(i,a){return i||a}},n=r[e(1982,"#Hok")](String,r[e(374,"jrYj")](t,""))[e(1728,"!DZ@")+"e"]();if(!n)return-1*-5029+-8*62+-4533;if(n[e(1672,"#CM4")]("\u539F\u753B"))return-41*-2994+-16*-6368+-124642;if(n[e(344,"mPFZ")]("4k"))return-5406+4703*2;if(n[e(344,"mPFZ")]("2k"))return-1*9660+9*661+-1*-5711;let s=n[e(1934,"4b1b")](/(\d+)\s*p/);return s?r[e(1670,"FO4*")](Number,s[-1*6805+1857*3+-13*-95])||-17*453+-9786+17487:n[e(412,"6cH]")]("\u84DD\u5149")?11750+-10*1055:n[e(1354,"X7W[")]("\u8D85\u6E05")?-8*-752+-24*171+-416*2:n[e(1525,"kM4s")]("\u9AD8\u6E05")?-3847+-894*11+14401:n[e(412,"6cH]")]("\u6D41\u7545")?9628+-1*6706+37*-66:n[e(2097,"W7VB")]("\u6807\u6E05")?3734*-2+-5430+13438:n[e(1182,"Ab)Y")]("\u666E\u753B")?1090+1*-2639+-23*-83:n[e(1330,"lbro")]("\u6781\u901F")?1945*3+-1257*-3+-1561*6:0},hsr=t=>{let e=Te,r={FcujK:function(s,i){return s<i},FFqkH:function(s,i){return s(i)},KBpco:function(s,i){return s(i)},oQnve:function(s,i){return s+i},NhiqP:function(s,i){return s||i}},n=[];for(let s=-3512+-21*181+7313*1;r[e(336,"FO4*")](s,t[e(1485,"kM4s")]);s+=13*692+2*573+-338*30){let i=r[e(1623,"mH&s")](String,t[s]||"")[e(1025,"kM4s")](),a=r[e(1068,"lbro")](String,t[r[e(984,"GXhD")](s,-8657+3*1178+5124)]||"")[e(1476,"DiMt")]();r[e(2081,"K&$@")](!i,!a)||n[e(1183,"5y@]")]([i,a])}return n};function fB(){let t=["WRaHW5j8WRG3ztW","W77cINtdLgK","DSkrt8kGWRxdLmkCpb7cPa","zmoNzbC","W67cUH4knSoQm1KwsHtcRa","xW4iWPGsW5lcMfGpW7O","rSk2W4dcGColnKVcKGxdHW","W4lcUhZdQ27dP8oRoSovAa","z8orx2StuwJdO3RcTq","W5FcRMhdHxxcVmk2","W5/cPuRdRwq","W6BdVwbAwa","f0ddTMXz","FWPmytCita","WOFcIca8m1qwC8osyq","WOddQZ3dK2NcPSk6zmkrkW","dtPbrmkGW4m0yW","W4TWW4D3","b8oOd8kFcmkq","WQ/dUvvs","WQlcQ8kn","f23dJ11mWR/cRwlcSCkb","o8oGl8oaF8kviCoXW71+","WQldKc5AWPxdLW7dRru7","yCoqW6bwW4/dHgakW4y3","yaRcGqW7W7z7wdFdJW","W40oW5WOuSoT","ab4zW40","EmoHW5tcJsOMjSoYFZm","WRRcNNm","aSoSoSkc","W4NdN2TQ","rmo8WQtdLmkyxvlcIKVcHG","fhHgWOqr","xYLFWOWdW4/cJ1qOW6S","WPG8zNC","B8ooW49oW4NdJgqq","WQVdK8khjmo2fG","ahjRW5f+g8oFox0O","WQ9CW5NcTNldGd3dOX0","j0rQWO4c","bX8/W5rkWOFdMbXRWRm","W6NcLCofW640W6FcLaFcKmkP","cComeSkBhsqJd8o1W5O","DCorcCoeW7xcLCk0F1a","x1ldUc3cPW","ECkQWOKHW6q","AHaNWRHDW5VcN0e5W6C","AwVdVIlcTW","tHTpuX0FsWBdP04","e8oOk8kBkCooD8kaWRON","sSoVW4PxeW","WRxcP8kpo0pdMmoyku3dQW","aN/dJxFcJwLWW7/cM8kw","ndddTN/cP8kVbwbDwG","WP0oW6jBWQGHBIRdTey","bmoMf8kapCodzmkCWQ87","rLFdUspcSW","cbCa","W5JcVCo0sLi","vSopW5P5ea","WQRdOSo/idZdNSkXWRi","txVcJSkfbGi","WPnCohFdQq","crSyW5DXWQJdVf/cSa","rG0AFW","tSoyW5T4gditW5ddHa","DwemW416dCk3WQtdQsC","W4/dNZ0Omc0DDmk+Cq","WQrAW4BcVNVdKtBdObec","aaXlW5ddJCorhCoLWRuJ","amketmoQx3S8fCkhW7a","CSkeWQyvW4e","WQVcGSk4WO8IW6dcLbhcKmkI","BKD+WQPIaCkYW6hdHMW","o8kupmoIW6dcI8k4tKZcHa","WR5VDXldOW","AcnUDGWbp8k0WRPe","rdhcKmkMcalcHmkfWRFdNW","FbTprxri","W7a2W4WxxW","hmkaWPKUlmkW","udacWOa9W5JcHhO/W7C","W5/dVSoSAfBdSJ/dHIy/","n17dMfiNW7GVhqldGG","vKRdKq","kM7dVY7cRCkN","rmojrtddTG","W6hdVvP+yG","W5ddM3X9B3G","W6RcHwHsWONdIG/dSd0H","W6hcKxbOWRRdKaBdPW","WR3dQCkxjmoNdCon","WPT0W6SPlLa9sSkoWPe","WQnbW5hdVW3dLJy","WPGBWRJcTHNcImkqFSkLaW","W43dNffjDG","WPldO1XtBCkYmqDUeq","cCkygxRcV8k+yCoSW77cGq","bX0hW4y","uCogva","WOnjh2C","oIOuW6KF","xSkxWPa4","WR7cMNpcMu0","l25rEJC7hCo0W7vj","rCkmWOi4A8oO","pMVdQ3i8WPi","tCoaW4pcQXCgdmk4","WQZdUfrtB8k5ou4I","e15DW4BdHmkBs8ojWRWc","ewxdH1XHWPNcHLZcI8k7","W5u3W4HogfaJ","cuLzx8oDW49FnSo7","ESoPW41rndavW4/dSSkd","W4rvW5RcIYe","5yUP6zQF5PE35lI+5OQK5yMl","W7hcU8kH","WRxcR8knAW","WQWAW57cOeldMG","fSoEsmogrwy","W7LzW7hcHXxcLmkdi8k5hG","W53cVvzbWRNdRs/cP1b6","v8owW4CYt2y8W4VdJ8kC","ACojW5D6n8k7WRVdNCoPW6K","WQNdPCkknmolgG","WOxcVthcR8o5","wSkYW6tcL8o2hK3cGK8","W44BW44VEmo9tsVcNZ0","utNcHsJdLtiLW4tcKmkUd8kIsW","WR0QW4D5WQ42ssS","baGgW4RcL8kqoCoOW7Ok","FsnRrWyfjq","mvhdHuO","CXVcT8kI","r1xdVGVcPG","WP/cGCk3tW","W5yEy2bSWQBdJMztkW","WQldTSoIdd7dGSkMWQtcU8kG","u8kJWR4h","WOxcLGNcN8oW","frWtW607","mmozFM0m","uHHQqqG","BSoztZBdTG","r8onqW","f8omW7/cSG","k3neWOatx8otWR1wba","yWWpWRStvmozWQz+hG","Fdz2wXC","fCkrWP8OA8k3fXZdOSoH","ngBdKY3dKdeXW7pdHmon","aNKuWQX4emk+W4xdMcC","W780W6q","WRuGW5y","W6BcTmkudwa","DLtdKff4WOCOfWddIW","dHWEamoCWP4WzSkNWR8","W5BcPgFdGwhcQ8k2","vCoXkq","tMVdPgBdSCo6bcPycq","umoAxJxdTSo0ECoWWOtcTa","W73cK2LHWQRdNbJdSqSN","u8kwWOa","aXFcJmkebGhcR8olW6VcJG","WQvqW4dcKeZdHdddSbam","W4VdHmorW5X7","lMddH3lcIgzWWQtdH8ox","WRNdVSkib8o2","nv5iWOe","cWaDW4rlW67dPaJdSci","wH9kssezBqy","WQVdVSkpj8oNuCopWP7dKCo2","WRWHW5i","WPe4F0rSWQ/dOI0","WOrrsXxdJa","dmkEsCoqroI/J+ADHU+9Q+MeLEAuQq","iMddMbvR","WQjzW5OQpa","WRNcVCojmmo3cSorWOdcJCo5","iepdT0/cLG","BHKx","W6NcUSk0z3NcHmo6W6/cHCo6","WRVdO8knnmoSiConW5BcJSo1","WPi8F3m","qJpcMueOW5tcJqJdNSoM","W47dGCoVue/dGJCgW7NcPG","bZXgDmkVWPL1oSoJAG","WQBcMb/cPmoIWRhcSCkUW6RdUG","p10XW6DDw8ox","W4zZoZWZW6xcM2KXFG","eWmiW5ddMG","nhhdG04","W4JdIvX7Da","pf0MWROlxmo9W6/dH34","WPauWQaSAmo3WR/cIMJcTW","WR7dVe8","W5dcJ8oZqgtdHcXpW68","cdavW5yv","x8kuWOy/iCoRW7ldPConW5e","nem3W7i","ieuMW6Gfxq","o33dH05B","avWAW5in","WRZdPmkhi8oNiCoqW4S","WO4MW58MW7LOidFcRL0","W7xcUutdRNe","WQxcP8knzHy","zXHWWRr+dSk+W5FdIte","WRVdO8knnmoS5P2u6l2+5P6W77+Y57M3","WOmHW4L8","W6hcNSk5s1JdKGT8W7dcOa","asOAW4OcWPC","esPzCSkIW5mjBW","umkNWR4","ESkgW78","W4WRW4PocKKWgCoDWQK","WOvNEdpdTW","xSokW6tcJa0oemk6ss4","uCouW4WYr3z0WPFcKmog","vZayWOCKW5tcMuG1","wCkPgSkFoSokC8kiWQSQ","wH9qrtyzyGVdRNq","WQxcN8kTqXO","WQVdHgfjWPldTZZdPWC4","umkcW6dcVGTbgSkQCJa","lgygW6Pi","W4BcV8k2i3JdHGZdRtuH","W4VdL1f4qG","BHLjwWqy","cejm","DLFdGunOWR12xGldHW","sdhcGCkgra3cPSknWQZdNW","WQv2qHhdMW","W49iW5Gix8omvc7dGGa","WPjLW6dcH2G","WRD2wHVdH34","57Qm5lYu55wf","E8oLrJxdT8kYpCkMW6NdQG","WOzyW7/cJa","W7BcKxjS","WPBdQMrtEW","W5W1W7XdcG","W73cU8k7","WPa8W5TzWPW","e27dJ2JcGq","W7TbW5hcUWO","W47dGCkXaXVdLcDaW5ZcTW","yCk2W53cJ8oM","aqLmqsezgutdTxG","BSoqW7Pmda","n15oWPOFfColW7GMcW","WQJdQCksb8oNdmoqW4NcH8ot","WQzJo1xdTW","xg9UA8kXW5OLxmk1oa","W6/cTrCmzmk8z0K/dG","W7idWPtcNeZdGtddU0OU","aLWSW5L4","bgquW7uP","bhZdL1jL","WQO7W5bKWRGG","f8k3z8oJua","W7FdLmo/W5L8","W6X8WOy+W75LigFdKYe","lWPWsmkmW7CmrW","BbbPWPG","xCoyW5LPfs4TW6BdLmkh","i8oNc8kRWQtdJmkCv2FcOG","CgX5W49vx8owvsWj","W6j7W6ddSXZcHgRcO0nn","k8k5WO54b8klldldISoR","C8ostq","uSklWQicFW","WOldUxPRB3HwA8kHCa","eGmmW5FdMW","u8onqXddU8k6FCkKW6/cTW","W4tcJmoQwf8","hX11wmkU","sSoyW5fBW68","z8knWPKY","fJ8pW58","6l+s5AYI5Ps65lQQ5OI35yIb","WQNdQ8oEcWa","W49EW6tcPr/cKCkAFCk9eq","ah/dUcnG","qmkxWOCfwG","imkAtSk8WQldKmo9sKJcGa","nea+W4PzDmoxBG","W5HoW6pcIq","W5WrW5yypCkSWP7dU3RcVa","awpdKbC","W5ddN2nSzwzh","mSkbzSoHrW","WQrJxqJdGhhcVmos","aCkBaNRcVCoPpSo0WOVcIG","iNldVZldRmo8tConu8k7","aSoXW71iWQCcW6CIfWO","W5tcMvVdP0y","dCkfWP4L","WQdcLb7dP8knW7tcS8kVW6ZdOq","WP/cR8kuB1ZcSCkFkHxcTW","WOzdW4ZcUea","tmoCW5PTgsG/W5W","WR/dPmkhiSoNw8klWP3dM8kJ","wCoCW51CbJypW5JdKmkC","tCoyW494fsC8W43dG8ka","WQzNxaVdIG","W4/cGmoFwL8","WPj6gxJdJYeXW70Bhq","WRtcRmoMictdNW","WRi1EMnw","W7VcPfnvWRu","W7nxW5ldQHZdLYxdTuXD","wSkYW6xcL8om","tSk2W6hcJCokggVcGG","atSp","eMjJWR41C8o5W6rQaG","uSokW74","eLVdRxtcOa","qvVdKbtdMa","WRRcKXhcUSorWOVcSmkPW6ldOq","vCoTW7fibq","WR99mJjmWPJdVsWqBa","pxzwWPGkqSoiWOHkhq","cSkDW4pdHmkytqZdLHhdKG","D8knbxhdP8kPBSkYW4pcTW","DCkib2O","a8oOlCkkdmopESk6","WO0mW7iXsbbKtmoBW5O","uZ9oACkKW5G0vmk5pG","lCk/WR4zFSo+cehcQmoF","ouJdLfe","uCkRWQydW51q","rmoDrcS","q8kmW5RcJCkjralcGK/cHa","W6agWPm","W4RdUSoyW64UW7NdKHJcJ8oZ","gCkrWPKS","W7tcS8kIyNRcGSo3W7BcISkS","mXa/W6W4WQ0pWPqIoW","nb1pW5mwWPyfW74vmW","xa5B","W5NcMxiIW4NcIL3cRff+","55Ij5BYl5OMR5yIH","r31kASoKWOrYlSoJgW","WPGkuuvU","WOnjh2FcIq","gCoLpSkC","WQ/cLX/cP8og","WQNcGtS9W5lcGuBdPWXZ","dNeQWOqlW5VcK3S1W7e","W6WsW4DlmG","Bmojwheyrc/dPMW","z8oireCxvJldQa","kmoaW5H6jCkefHtdHmo0","WPlcMJPoAxTxk8oNnW","bSkAeNddKSo+pCoZW7VcMG","WQvJwG","rxKpvmkGW4m0y8oIgq","WOtdINn+zuPhk8o7iq","jSkbra","W6xcQSk0pgZdKG","WRy4W598WQiYzd/dQGy","W4JdGNTEzW","6AIA6kYF56ou5BA65y+i6ykG","d1BdK0/cLq","dIhdHw7cIMz0W6ldNmkD","z8ofW6r5W4FdL3uDW4C5","W4hdKNngDhPyiCo+","q2JdJeSOWO/cIvBdMSoI","z8ovgCoFW5q","dM7dJq","W6pcNCk0i2m","WOVdLSk2eW","xCoDW7NcQqbafmoUmY8","bmkrbNxdTSk5omkGW4/dOW","dSkuumoCthevcmk/W7a","WR0UW4vX","WODnW6lcSXVcGmkKzCk9rq","yvVdUa","WRJcKINcMuRdOSkL","k8kfgsPpeN/dRLhcPLLFW70","jHxcNLfJWReUfadcGq","qItcLmkAaa/cQ8kqWRpdLq","W4JcLhBdQgNcRCkWF8k5mq","C2jZW4XlcSktW7KYtq","hhfiWO5gW4q7W5uGia","WRNdICoubXS","W6xcQSkNixFdHGddHs0","e0JdMeDLWQWcpa","zmofW6ztW4xdGKGA","yY90wq","rLddHafPWQ3cMvhcHCkg","lSk6t8oYrW","WOuUtMHA","Av/dOJ/dSq","ymkGWOSAFW","WQzuW4dcSG","WQRcJmk4WOKLW67dGrhcKmkM","WPXAW7jicSkLWPJdH3ddTW","fd0VWPKwW4a","FCkyW7pcGSoJ","W4ddS0f6wq","WRBcQ8knvtdcImkgpXNcSG","W7LnW4FcQH8","D8obW4rkW6tcKq","W4GdW4WytG","i01uWP8LwCosWQ1S","WP/cOmkSEYC","CmorW4bSjG","f2BdP1hcHq","dwtdISohwf/dVSoeWRtdNW","WRldT8o4iZJcI8oSW7NcHCk5","DZ5IsHSokCkGWQ1D","DSort2TjuYFdSNdcQq","W4DZAhbGW7NcMY8gkq","rLi1W4jEWQ3dT27cUJm","W5hdJMbWBNjAiSoP","o8odW7HBW5tdLgqkWPin","fxnmwSoxW49Uk8oaW6a","fGO5W5xdVmkg","DSoreCoZW6K","hSkMmCkCjCoi","udhcKa","WRRcNNpcReddVCoJzSkpka","W4NcGmoJx07dGYzy","vZ3cIw3cRKnWW6RcVa","qSk6WQGvW6q","uJJcJI7dKJWHWRpdGSoj","W7yUztddU1lcG8kBeYy","hCksf8kmgdbSumoPWQ8","WRNcPetcU3xdM8ojsmk3na","xSoZBKO5AGlcRxBcQa","WQ5YaqJdG37cPSozh2O","lttdJcBdLcqN","fI5FB8kIW54Hjmk5na","cXCyW5DAWQtdLfdcSZq","WPvCW5RdPrNcJ2tdQ05z","WRFcP8kvBZRcJq","W6tdJujPDq","wmkPWQ8i","W50RW7rqaa","bHKrWPjPWQtdSvlcShG","W40SnIiTW7pcHYWmja","5PI25PAfW4dcVeBdKsRMIOpLI6C","WQbPvb7dQG","Fmo4tYW","wtZdImktb0hcJCkMW6hdIW","W6hcVxnmWRG","xNJcU2q","xb4FamklW4bmo8osW6Wo","hayvW4zBWRi","WPPecgFdGW","vSkYWROkW71xWQz+ns0","FYaBW4qqW73cThqhW7S","kCkJDCoAtW","WPi4FxTGWQ7dOI0","nu1vWOvvd8koW74NxG","rJnEWPzdWOBdGb5IWQS","amkUqCozq203e8khW7a","AcnU","W58NW4bJhfmIi8kuWPu","W6NdGCkVDgNcNG","wmkFWPyPta","tSonW6rPfa","BJvVDa","W6/dGCoJWPvNWR/dG0FdICo8","W5vIW7yolmkYWPlcGYRdRq","hLHormokW5LxnSoRW6e","dqiiW4VdISkFsSkUWRff","qNblWPbhW4P7WPKsnq","gX0arCowW4nLm8o7WQy","ouVdNW0YW7G7cGVdMG","W4FdGMi","fCoqgSkRoW","DmoDeCo3W5NcGW","W7D/WP8HW7XGng/dTGW","j8khsmkRWR7dLCoSlaNcVG","W4ZcLxHQB3S","WRfqW4a","AwFdVI7cSmkH","duLFfxzmfLhdOha","WQVcNNxcK0pdPSoPyCkcaG","aNRdIxm","WRVcLhxcL3pdQSo4C8kFba","bNSAW6DOCSoUtXi/","WRBcQ8knxbBcM8kFlqpcMq","WQ3dQvvkBSkWi00","W5pcNCkagLddTtddVaad","W4VdLhTT","bJToB8k0W4u","W4/cLgPSBNLwlCk+ia","q8oPxdpdVW","FCkrW5pcGCoU","muqQW6WPgSo4W6VdHdm","WO5dWOXQqSo8fs7cNLm","WRpdPunuDCoXyazIhW","nCkeWOiAla","jeKVW4XFq8oFvtKt","W7tdMSkMW5L1WRxdJeW","fWCAW61pWRtdPLe","W5KRoJ1ZWRNdGJ8lCW","W5ldJ2fX","WR/dOCktErZcH8oAAW7cVW","fCkeWPK9n8oRuv/dV8os","W4BcJ8oYwHtcKNaCWQtdOq","W6NcNSonDw4","jGeyW6FdTG","rmkDWPa8CCo1W6ddSG","gCoSW7JcRqOcb8oWlwG","W5NcPhS","nd0oW5q8","W7ddRSoGlNxdOLhcLHu","WQNcLgZcN0VdKmo+ECkgdG","e8o4oSkKgG","W5HAW6pcKGFcICkgDq","6l+k6zQX55MH5B2N5Aws6lwt772D5Ps45Rca6i6s","WRpdO0e","WPrUW4qbkSkU","ouRdKK5+WRWUcW","W49FW7BcHbe","W4xdN2zkAxjDb8oXna","W7NcUSkW","qNSxl8o1W7SuuSkgmWa","WPu8F3fR","cu1BvW","BLVdOdxdUSoHmSkqAa","vmkEW5P8","W7uuW41Ymq","gMxdMqy","ie0RW7Ljx8ow","WOJdPuGmnCoLCfbTcW","Bmojs2Wdua","DWH3W69vrCoAztOp","btmdW4RdLG","a8oZW5BcLmozeuFcSu/cKa","W6yOhLBcNZhdV8kxycS","WOXmfNhdUsC+W70HeW","WRRcKXhcUSorWOVcQSk5","WPdcSXFcM8o2","W6VcVvDiWOy","W5NcOhdcPeFcRCk9ymkjCq","WOH1W4tdGuhdLSoAiCoPua","ftSpW78hWPqiW5GXia","WOtcRxddIgFdJq","WPitELvX","W73cTmksj14","bYPFD8kGW5uL","WRRcNNpcJ1ddPSoU","W78MW6XWmq","asbeFSkV","ag7dJw/cH2jWWQtcM8kx","W6NdK2y2nsyeASkJCG","WQKUW4jJWPiWBYVdVty","tmoCW5HOeZu4","WOf7W4pcTMi","WOLCW43cMNu","WPxdVfhcOtlcI8o7oCoula","WRjbW7NcP08","CmoryaxdQq","WOnYWOGIsHL8uSozW4m","jKqZ","W4OvW64OvCo3tcG","WRRcNNpcReRdQ8odza","AsDOw0XdySoVW7Sw","WRZdPCkbpW","FaFcOCk1pd7cG8kWWOpdPq","z8ofW6rpW5pdJMu","gCoYW6PoW4nDWQLUmZu","WRJdQebFya","bu8uW693","ESktrN7cO8o1oq","qmojW4W/DSoYW7BdU8omWPa","WOldTey5msuDDmkRza","W58pW4K0","xejdWOmCW7FcON/cUdS4WR7dUW","ag7dJw/cH2jWW5tcHSkw","wCoghSozW6K","zXLUxqGtpW","WO4eW5j/WQS","WRrrW5JcIvW","laqxW4ZdKSoCg8kVWR1l","W4tdLN12CG","BJzQxGOvmmkSWRXk","WQjPrr3dGq","wSoSW5TX","umkNWR4IW7TdWQLMmYm","W7/cSmk2jgZdHqZdKa","WRZcQ8owo0pdKCoyE1tdRW","iueZW511tW","eY4s","uCoxW7z0eG","bgRdIuJcJgTJW67cTSky","qtGhWPei","t8kDWQKkW71rWQL+aYS","x8ojW4a","DmofW6HoWONdL20FW4y2","WQ/cLXhcVa","tdpcTmkWea","rmk8W6a","ySk1WQ9GpSo3W7RdVmonWP8","zxpdOdBdTW","CJCKWRid","tSoKW7pcKcq","v8ojrZFdSmkZBSoUW4lcVa","WQRcUatcGCoc","EGVcMW","sSokW6q","wmofmSkbp8oEnSoRWPf8","WQFdUmksiCoXrmkwWOa","dfHiWOCFva","qhWAiSoVWOrXpSoWaG","vmowW4bZ","vt4DWP0FW5lcHbHG","WQFdK0vwAmk7pLWevG","uSk+W5xcVmoV","tCk2W6pcPCozdwhcH1RcHG","nKujWO8vv8ksWQ17ba","W6BcQ8kMia","WPGpWQlcPYdcS8ocymk1fG","dM9lW4jdWPH6WOG9zq","ieZdTwDE","W5JcTmk2p1W","55Mm5B6x5OUA5yU5","at8DW5SuWOu7W40Ipa","p3CR","fd9FD8kOW5uHF8k5nq","W4/dGCoTWOi","CazSWO4","e8oFW5X9zmkIgHVdKCoB","DSovcCoZ","fmkCWOG+","WQ7cJ2BcJLddVa","WRRcNNpdGaRdQ8o4ACkadG","WO4Ozu1XWQ7dJtShBa","WQ90EdhdMW","aSoEWQ3dR0TxtSk6CMC","W4boW73cGX7cH8kDFCknaW","uSkzWPCT","i0hdHq","W4NdN3W","W7pcGhzHWPxdMGVdTGSN","WPGkW5W7qSobvIdcKqC","WR/cOCko","W5KTW410fW","FZr1raOsnmkQ","W7lcRmk8pNZcJH/cKNS/","fY0xW55hWQtdVe3cGdG","WR7cUCkxzHZcImksoWJcTq","xSkmW77cGmku","qZqDWP0yW5lcV0G","W6ZcKCkNkL8","c8kFWOKeaa","mdGuW7aL","adXkACkEW58K","WRBdTSkEae3dRcxcJ3qG","hYtdKGD3WOdcJvNdGmk2","WPZcJxlcTea","WO/dJCohhqtdPSkn","55QM5B6U5OIx5yML","y2VdVcZcJCkT","ESkwW63cTSod","cGOrW5f7WRpdVG","gwFcKx7cIIDwW4NdICki","WQ7cI2VcK1e","WOFdULddIMBcQSkry8owCW","wmoAW6tcTW","hrDwW5fkfmkl","k1XRy8oK","vCkuWOOPCmoVW4ZdVSom","WRpcOCkDCW","WPGlWQa","WRNcNNhcK0BdQSodza","pvKWW64","WOlcH8k+rcZcOmk4","iH0oW5TcWQ3dSXBdQN8","nexdHum","caGYW5BdLSorcmoLW5Cr","WRG8zNCSWPpdGIGnCG","bSobW5j6E8o5WQtdTSomWO4","W5PvW6ubo8kLW5tdMI7dSq","aCkBag3cOmoTl8oPW6dcMG","zKxdKG3cNq","W7RcN3v5","FmkMW73cOCoJ","W7hcMgC","W5tcRMpdRwpcRCkxBW","WRxcS0hcJx8","m8krWOaOA8kjfXhdQmot","qdWrWPSz","WRPaW5RcJeZdHc0","W49EW6tcVJpcH8kezCkXga","dSoadCogqMe8c8k8WRy","cfxdGrjGWPijidpdHG","wmo3WQvPW43dQgKYW6SY","BcDQrGaEmmo3WRXl","uSojrsRcVmoUpmo2WOxdOq","fW4FW5ddLa","peRdU0HA","DCorcCotW6xcK8k1","W7tdVCoByCkSrSkvW4RcKmkR","WPrNxr3cMsS","5PEs5lUa5P2P5OUK5yM877Y15yQ+6zUG5AAz6lwY","bKLb","a34aESk0W4iOjmkMpW","fNNdH3lcQa","xrjDFZyttWFdRa","WPPczHFdUW","nL3dRhhcHW","W5tdJxH0ra","fI5FB8kIW54HvmkKnq","hX4rW6vlWQpdMvdcQ34","WQC7hLBcMdpcTCoFhGK","dHWdW4NdKCorhSoWW7Ok","WQjxW7aGcq","rCkNWRStW7fhWRm","d2ddMG","f3ldJXe","ECoFyLm8CYpdTg0","ywKRaKmfnCkZWOna","zGiGWPejW5NcK0b/WQe","vtqAWOeEW4tcGG","hZ8l","WPpdH0v2ua","W77cMwHM","W503W5v5","WR3cP8kCzaFdHSogzupdUG","taLvtYXtevpcSse","W4zAW73cHa","WO7cVIq","mgiiW4Xg","rmo9mSo1W6u","WRlcPSkyvqFcHSkDlHq","W53cT8kHzYZcKL7cJwD6","sbnyrtbtheZcTYC","vSoyW5T4stuKW5JdKSkn","t0CmdNvqxGRcR1i","W7/dO8omW4Ld","WRvNxGZdJhFcRSkywIq","WRVdO8knnmoS","W4VcRmo2CNa","W5VcLCk7WPm","WQBcPmkiFdS","yuBdLXS6WRSQhLdcNG","dWOaW4a","WQ5Vn1RdVG","W4pcOmkZCe3dRrz6WR7dOG","W53dSmoFWObxWPFdTh3dO8oA","cHWx","W4BcH8oSvKG","tmoDwrZdSSkRzG","gfXmqtepEWhdRxu","vCoCW4C","yCoad8o7W77cGmk0F1a","6lYy6zIm6l2R5A6I5PYp5AYd5OQA77Ym5P+C6i+C","jKxdOtDx","FmodW6tcSay","bWibW4ddJq","v8kFW4u5BCo6W7tdSSkvW7K","E8oyxhevrG/dPa","h1HPW45pu8oevxO1","WQhdHmk2WOO6W67cIeZdJSkP","iexdGLf8WRC5ha","W6pdUSkRwthcVSkFeG","CmoqtZDhe37cRIxdQq","WOlcHSk4oW","cKLBACo9W4TWk8o8W6e","ASoRhSo+W7NcGSkZBxBcJW","WQWHW511WQr9yYddTuy","W4RcOZNdOw7dPCkzsCoDkq","hmkaWOq","fwBdMx7cLIuPWQxdH8op","ntVcO3RdTCoXvJXBcW","v8kXWPC/sa","vSkWWQnjWQehW7aKB3q","cWiHW5vx","tmobfU++UEETO+w+JEwrL+MgQUISJq","WRHPwq","u8kHWOeoW4y","cr4BW51C","cSoHD8kkjmkluCkDW7u5","WOpdS3BdOdpdV8k4ASoFpG","W7FdJNqH","beFdQXzG","BmoWx1KY","bxnBwCovW49U","WR7dPSo6oIJdLmkkWRi","W6dcLxD4WPNdIH4","EYxcLmogaIBcImk8WO3dKG","W5VcSCkVixxdJqJcJgfI","cCkyWPGJimk0df/cTSkm","AYn2uXO","WRVdQvbtySk7guW","rCkWW7JcImo/gfdcLupcNq","WQRdUe4vD8k7iKe9vG","WOSOW6zzWRGPtdy","i1tdNuT/","pCoMiCkgjSokD8oWW7TM","imogcmk7","rc9UhvzfzSo2W6yt","WPhcIHVcVCow","WPuYzJX7WR7dHsuhDG","WONdUSkrpSo4","WQldNJyJW4ZcL1RcOJeP","ifHvWOuuxCouWQ9W","WRhdL8oubJG","jJmYW4z9","ESo+W5TElG","vCoyrY/dUSk4BSk1W4lcVq","r8koWQ0As8oFW5xdVCooW4W","hsWc","cXCcW5TnWQtdM10","uZxcL8kfnG/cPCkaWR8","uSobwYBdMSk/","kuqWW5LytSomntGo","W6tcGxhdVvu","EYLXvW0","rCkmWPeLCmo8W7RdSCor","WPldNmkWaqRcLxiAW5JcKq","zMTQuW1ykCkTWRTj","WQRdVM9Ws8knAeWnzG","W7dcV8kNitBcLfRcLhP/","bCkVWO4HlCk0eatdMmox","WRDbW5BcP0a","eCk+WQ4jmq","lmk+ACoWza","u27dKWpdMSolimkPqmok","q38C","wNhdHqG","WRDgW5hcOwtdKa","huVdI0TNWRqQv1hcGa","WODEW6ebkCkLWOK","WRZcIrW","WOLMWOi","o8oAdCozpCoviCkzW7C","W5GBW481cmkRexJdLfe","aMVdMqfgWO/cH1tcI8kn","Cw3dGZ3cTSkGxwm","w0baW4rKWOJdS1JcKq","WQZdM8o+jcG","qSk9cCk8cmoXF8kg","a3PoWQqS","WOz+WOuMW6rZkaxdMt8","vHbTace0","uKvpscmoqt3dQ3u","zhldUq","kbCxW5LbW6JcSNRcTYm","qSoLW7vrW6NdK01iW4O","gCoLbmkCi8oCC8oIWP0b","6l+76zQn6l2q5A245AwZ6lwz77YO5PAc5Rgx6i6M","WQhcU8kkyG","xrrnWOiyWQFdSvJdQZC","iuq+W4W","ad8cW5Ha","tZWGWPiFW7hcVaNdPhe","BmojW7vuW5lcIdfqWPz4","WPnqW6ubySo1W4JcMZhdRq","F8kXW4dcGCoH","FcdcI8kDdai","WRJcVx8","rSonrdpdVmk1FmkK","W6RcTCkShcRdHmk3WR7dLSkk","WQaiqx1x","f8oSl8k8i8obEmkCWQ84","neyZW7yLwSo/W7ddGtG","gSoZWR/cS8oae0BcIv3cGq","wdzYFaC","W50JW5rIha","W7pcGg8","smorcSoIq2y9cmkVW6O","WO1adLddItmXW6uRfq","WPPecwFdUsCWW60HkW","m0xdGvzOWRaQjXddGq","eCkvWOmQmmk5","wCorcSo+WQBcRSkRsh3cTq","W7RdJCoyC3RcGCoTW6BdN8oP","tCopW6PtW4RdI2brWPP2","WODGoZW0W6FdKsfpxa","W7ORW4GNtrTQbmowW44","vSoyW77cSWOobSkVBJm","W5GtW5e5sCo/tYO","mSo3fCoGW7/cISk4nHJdKG","W54pW5nqpq","WPzfW7SBna","W4q4W4mSkMKqoCk/WQK","W7VcV8kL","nbb7vmkkW7mo","uthcLCkddb/cVG","jvFdLfbLWRKMhq","rdKk","W5lcJu/dPvm","WRfJwJNdN2/cJmowqZ4","rmkxWOW4","ad41W6azWRhdTMZcIqq","dmkUs8orfY4/dSk0W60","W40FW44VtSoXtaBcVG","hMGs","AY3dUJRcQ8kN","WPaYEx9vWQ7dMtOlCa","rt3cImkt","WQhdRCklna","r3KxkmoWWO50rmkYdsBdPa8","W7/cGCkyitNcMeNdHZe6","zmobW6rB","WR5OnJJcHIG2W6iHva","x8ogW7ZcUHy","W6jIW7VcHbVcGg3cSZKD","rIZcLa","5OYj5P6k55UR5B2V5AAI55kH","iKxdUsy","pNpcRxNdQSoXh2efba","hCoQemk5gW","hMtdISoprqNcPmojWO/dQq","WQLinvpdRG","WQrJxHtdJNZcQG","WQKUW58+WRuMBIpdVqa","W5tcQMhdPq","uSkkWOO6E8k0W6xcPSkhW5K","ecFdNb19W4hcKftcNmk7","WOvJp0ldNa","AJ4rWP0xW5VcLWnLWR0","adSkW4SsWPC/","zGdcP8k+","WOexxgz5","BCoyw20tudi","W7VcP1ZdH0G","W4aJW5y","WRRdV8kdi8oSh8ouW4O","C8ouW7foW5pdLa","WRJcUMNcV0i","y2pdOIddQ8o8adnfda","WQ7cJ3xcK0VdQmoJzSkp","rCkvb23cPmo3DCkPWOBcKq","WPxdNmkonCoH","57Uk5lYU55wd","d8kYWPqDaa","vmooW6a","WRRcJXhcVmobWQC","WQrCW5JcTKpdLsNdTG","EmoyxKSEqJtdPvhcOG","WPddNSkW","hsPoF8kKW4qZ","nvZdLefEWQON","peVdLG","EWpcPNlcRSkOf8kriCom","WO9zWRSni8oTWRZdRItcRW","C8ofx0S0","DXL5xGOtp8kSWOPm","WQvBW53cVq","imoTW79aW4/dI20FWObT","qezeWPjkWQtdPfdcVdq","u8oaW41Le8k4ebtdQmoj","rG9sFYmjuaO","a2i7W4OF","x8kGW7lcLSkedLhcIGtcIG","obSAWOqAW7RcSKhdQwu","WQOvW519WOC","bgRdIq","zq9WWQL9aCo7WRZcMgm","hs5DFSoUW5iLF8kXmW","wmoxWOK/CCo1","tSo2W4b+W6S","rSoMW4PXhYmIW43dV8kb","WRZdHcG8W4ZcL1NcU1z4","vZxcJCkA","crSyW5DNWQu","EGHzrWK","W7dcUbyAzCk7jKe4wG","y8obW6rzW44","W63dNSoaW5TJ","cLRdI3hcTq","rdhcKa","W4pcQMpdOvlcRCkTFSkkla","ax7dIWzSWP8","W5TpW6lcIb7cGCkDD8kR","aX0t","ie0RW6TusSomBWev","eq8NW4pdVa","W6ldV8ooW7bw","bgRdIv/cI31/W6FcNCky","BwpdOIZdQ8k7vNCFua","W54ryNX2WRpcI309kW","WP/cS2ddQG","WQn4W5mTaG","Dmoyra","gZuEWP4WWOeOW5iUFq","ie5RECoN","g8krWP8KA8oKtuFcQCkn","W5KaW5qSc8k+rIRcNa4","W4xdN2zjyxT9jCo9iq","WRnHW4FcIxC","6l6Q6zQf5Poz5PAm5y+S5PAX5lQF5A615PAR","bmoChSkJpq","6As+5QYA6iYN5yY36l616zIr5y2R55sQ6lYg5zQU","eqOdWOVdHSoffmoSW60m","j3zOD8oz","g8kquSobswa4omkSW7y","6AUC6k+L56kW55Mz5B2E","W7VcSCkEgha","mSo5eSoOW7NcI8kXEaBdKW","W5FcRMhdSxxcOCk6","cISvW5isWO0","DCorcCowW7/cKmkZDuBcHW","WQpcIZRcGCoo","hcxdGaf2WOi","c01Dx8krWP8ZAmkXWRO","AwFdHYZcPSkcwNbecG","aI5gB8khW5KYxCk/pG","W4ONW5jceue4gCkKWP8","W7xcLxjjWPNdJWpdOqCx","WQldRSk3xLpdMmogzuRdOq","W7y5W5rIWQq1Eq","gurAwmoAW49YCmkUWRS","fMVdNHm","CgRdPqi6W6HLsf/cJG","rSo2uLKN","o3rEjSoXWPH2","g8kzWOeOnW","W4xcNmoZdH7cKaeoWRJdOa","stagWPe","xSoUwGNdPG","qYmcWOiEWPJcGb1/W7u","wJj8cG","rgGjW4rmWOhcLXHKWQu","55Iu5BYN5Awf6lAx","rmkDWOu+E8oOW7VdImoCW5a","ECoprxu","s2ZdJKmGW57dNqJdMSoN","uCkwWOOI","WPj2W43cN08","hbeFgmkjWOz6n8kYW4O","WR5jxdZdIq","W5GXW4nJmeq","WPHVWOe5","W63dLtFdLbxcOCk6imkLcG","dfXFwSoxW4LHk8o2W6y","amo8kmkh","lmkkbcTaa27dI13cKW","W5OBW4K9","ie0R","xhFdKHNdLG","W7RdGmoKistdNmkMW7NdLCo9","xCorW4HcaIKNW5ZdJG","WQldItC7WPNdM13dOWz5","WQxcJMNcPvddVmoVCSkPaG","W4VdLhr2p2vsn8oJgW","WP8XBMe5WQNdIJ0bDW","Cmo7xrpdTW","mJOCW7FdRq","WO0cW708W60/AstdVuK","WPiVyMrMW6tdNxHnEq","jumWW7i","EfVdPsZdTSoQhSkC","F8oeoCoyW4G","WOXjWOXPf8kU","WPrbW74","rSonucBdQW","rh8Fk8oXWOzX","b03dNXq/W6nRaflcMG","hLqzW6Oy","WRhcO0XjBSkW","WRhcKMNcKq","W7RdI2iPA19Xhmohla","sWHq","W4KNW5b4gKudga","BgZdUt0","WRDLtr3dNgZcKmodxce","WQ/dGcG0W5ddNatcRZCB","WOb7W7BcH14","WReqW4v/WQy2BG","dCk/yCoaqa","WOldSSo8yYddU8kbWO7cS8kH","WOH4W7JcKX/cI8krpSoKrW","yf/dKt7dSa","WQ98eNldNW","vCoaW7C","bqOzW4q","i1nSW6X9fSoUW7BdGse","a34aESk0W4iOjmkJmW","z8ofW6q","WRddRmoLpq","W4NcQmoUvKK","W5JdG1zyEq","W5FcRMhdGMNcPmk7","pHNcL1zJWQ0MgGRdJW","Dmo5W7nQW6q","ixy0a1jfzCo4WRTa","W67cGCk2jhddHaFdLWSL","W53dSmoF","zIXdwY8","f8kzW6HTbIOPW67dHCkk","W5tcUCoVqvddSZPBW6/dVq","6l696zIg6l2o5A+T55Ue5B2D5yMc5BQD5AEP6lA8","sSoBW7hcQXaC","gXSaW55l","W6/dHSoUW4H6WRFdIuW","tbnAsseDuaVdRx8","lCk/WR4z","WRVdQuPBEa","umkrWROvCq","wSoCW590fsmfW50","i0KRW5K","WO3dQSoIzx/cISoJWQ7dKSo9","WQpcQ8kiFXBcMSkc","WRbqW4xcPKJdHZa","W6lcSCkgpgVdIaFdHa","dmkRs8oLxq","e8oOk8kBkCooD8oWWQCM","W4tcNhRdTMVcNmkNE8kdDW","nuvlWOKZxG","W5hcVMhdRa","fM/dNbT6WONcOvq","uuvDWOVcJSkEsSkGW5Se","xSooyINdIG","WQr1rXFdGtddUSkgahO","WQ0yW55IWQyhEt/dVuy","vcehWP0p","khKEW7DA","W5hdN2y","cGeyW5iEWOeLW40Epq","F8oxnSoeW4e","umk9s8oBx3b5u8khWQ0","W7OlW6bywue6dmkjWP4","lh9Ku8omW4rLm8kWWRS","WRFcP8kvFHBcMW","55Mc5B+66l2x5P+a772P6yAI5PEs55QK5B2j","wSkJWRO","rIec","WOTxeZVcK3DOWQD3qG","mxawW61Mw8oXyhOq","Dr4iW5iyDmosWQJcIdS","pmkuvmoCsw0qiW","W581W6P/hq","p8k2C8ofFa","ps5Hxmkx","hherW40yWOO","uK3dH3/dSmoGe0uBtW","kI/cHdVcQ1LhW67cGmkk","pxiPcLqsn8oQWRyv","WQrzW58spa","pZebW5CBWOGQWPz0EG","BCo6W7PsW6K","W5e1W5mZsa","imkgu8kHWR7dLCoQoxRcHW","CSkRWOKCEG","smourc5cggBdUcpdSW","pWCSW5qD","kCk9wmocxW","6l2J5AYE5AsR6lsxwvy","W6JdKmoTW4HXWQxdJhBdLmo9","WOHWWPrbmwezoCk/WQ4","g8odlmkOmW","CgFdMvbKWRuUv1xcMG","W6BcK25S","rdKkWQSpW5JcNuK+","WRD2rW","WPrHW4ZcG34","igadfSosW4nRoSk/W44","W6CWfKJcMcVcRmogFJ9Myq","WRlcQMNcJea","jLGVW5rvsmoFFIqt","x8omW511","s07dOqlcVa","aCorhCoxzCoTwCkCWRz8","pgVdHXC2WRtcGvhcGCk/","DGzMWOOseG","dCkrWP8OkSkLirNdOW","f8oSlW","WRn3yHldJG","h0nzx8oAW49Y","neBdU1ldHgTHW7VcM8kD","WONcGIq5","fgxdOMLUWQOLhqJcGq","WQNdPSo4","w8oAtG","egFdNgNcGq","WQVcKMpcN1FcOmkYlSodxq","ECo8W70","cMtdMdVcO29YW6dcNCoq","BGGEW4Hmr8oBxsGE","gSkND8oIyq","jNCmW5fBrq","x1jCW6vhWQ/dTLBcQci","Ft4DWOCd","e8oFWOC+k8k/","aYzlFSkZ","WRldNmo4pcddLmkT","rG9sFZiDvXhdTx4","WPlcG8kttJFdM8ksmW/cJa","uCkRWQqc","wmohua","pvX9B8oh","hcnkAa","W6WzW44PCa","W4rsW77cIG","WQe6W59pWQWJAq","eCksr8o4rwW8c8o3W5q","nfWTW5fstmoxBdq","zrxcHHS9W6eVhGlcMa","amketmoQs3GW","EZrZxW","W4W3W5j5","jgixWRXiqSkwWOC9lW","ou/dPa","i03dI0C","WR/dU8o8","gmkCWOW7Cmo3W7ZdTSomW48","WR4QW4vrWR0JqY7dQb0","WQFdImkhjCoG","qCoDgSo8","WQVdRCksma","BmovW6vVgq","W5aGW6OTyG","zLddNdBdIa","W47cQCo5ze8","zSofFtBdHG","WQbvl0FdJa","ztGzWRyl","A8oCwcJdTSk1","BSkDWRzoW47dKMWCW4e5","EJv/qa0xpmk9","W5pcI8o0","tCkYWR8pW6W","gCkbsW","kLxdUetcT0DqW4FcVSoF","e8krWOaO","hmkPuCoYtG","W5dcUmkYb2G","W7ldMSo4W44","iKhdGfDUWQS/","nd9FwSk0W4iO","WRnMd27dTq","k30yW7bu","Ev/dMJldSq","kfhdN31QWQGI","gmkVWQBcMmkCarhcMHRcJG","Ad3cKmozxf/dVCokW6NcJa","aSoVnCk2ca","gsbi","W4rVjseTW7NcNgKXFG","wr9iytimzWpdSMu","WRPOzbldVG","cCkrWOqH","BbmBWPCu","W5SNW5r4h0KPhCkuWPm","C8o9WPW","WQLqW5hcOWddLsJdUG4i","xwPlWP4tWOe9W5aImq","qtWIW7lcImkeu8kGW4Kv","m1KXW7CAxmoSW7FdGtG","W6hcHMXSWRC","W5hcSSkcg0S","WQ/cNMhcIeddVmoIx8kcba","cKLBCSorW51Um8oWW6G","jI45","kuqlWOKuf8o6WOSYha","WRDYs1tcJ33cVq","W4rsW73cIatdM8obiq","gciBWPuyW5ldIWONW7O","ehVdNg/cKxK","umkrWO8Pv8o/","jCo2wmkGWQlcL8k1EfRcGW","WPddO17dJftcHCksj8ogna","WOSvWO3dS2ldPXldTGOE","WOezW6ryWPW","hhfkWO5xWPCVW5ixmq","WO/dMSkWe1/dGJvcW6NcTW","WOfyW6meka","WRVdTSo4oW","WQNcKCkAzHRcJmkypYxcSW","W6hcImoHx0JdGMyCW47dTW","bWyaW4jDW7VcVrBcQdq","qZJcMKqSWOBcPftcO8k3uW","i8kdtSkNWQBdKCoTirNdLG","6l+Z6zIp5yso6k6n5y+X6igM5BwH6l2q5P63WOu","W4FcQNZdSeBcP8kSxCkjpa","zSojWP9Rbt42W6BcL8kH","eG4z","mvC3W7S","bCkgdNhcVCoI","kCkaW5fkW5BdI2qPW4O6","W6aTW5X4fuWRu8ovW5q","5Ps35lI95yIo5BM+5OIq5yMx77+s5BYl5AsT6lY0","dr8lW4lcKCo5sCouWRGs","vSofdmkbbdTUu8oOWRK","WRZdRvjzAq","j1CWW7iPxCk7WRBcMNi","cqqEW5e","WQSQW4bLWQGGDa","W4hcIKDxWOy","WOzbW5KmdG","WPVdTSo4jaq","WRrCW5dcTL/cM3ZcVu1B","BdGFW5ToWOtdGqjJWQu","mCkjbcLgdxxcUshdTW","W5TtW7hcKXxcUCkhzCkZba","vtqyWOquW5NcHuK","WRNdPuPFsmk6","wmk2W7hcLSomdKRcUv7cNq","j0nmWOKu5PYq6l265P+w77Yf57Qk","WODuW6yDkmkZWO8","hKnDWOuwvSoCW6y8qW","W4fyW4/cKHJcH8kgDmknba","fSoOkCkgzCktjCoOW6b7","gCkcWOq7iCo+cehcQmon","WQNcLgZcN0VMORpLVOxLVilLU47VVAC","W5dcN8odDv0","WRuQW655WQLU","WR7dUvjs","a8oyhCk7hG","dtDxy8k5W444C8kOiG","jKiXW7mIxSo3W6ldKq","W50JW5vIjKmLgmkf","d8kuqmoQswC3e8k9W7C","W7pdIYFdKNldPSoKzmkzha","W7hcJCkrEbZcHmktzeVdRG","j1mYW68PsSoQ","W6BcHSo3WOm","tSo6gtCXsYNdSfRdRa","WOXrFdhdRq","W6ONW4v6fGLQp8kiWOG","W6JdKmo6W49XWQxdKa","WRJdQvj7CCkUe0KRsW","hbOvW4bl","W5JdPSoBW4j1","vSonW51TbxXJWPBdMmke","W7ebW5xdOXVcHIxdSHLF","W5ytxZiYW7VcHxLzpW","kfhdN315WR0TcGhdNq","WR3cOCkE","y1ldSZVdVmkRomkQsCoD","tSoPW7HyW68","fSoGn8kka8oc","W7BdKmoLW51GWR4","WQNcK1JcM1ddQ8oJDmolhW","WObSjgfRWQldJIugma","WR/cLbtcGCoW","W79sW77dL0tdNCouACoKra","x8ooW6lcTKPAuCoOmM8","W4xcMwG7W4JcGKRdULr8","jd8UW60","WRHBW68Anq","WRZcJNpcKG","WQn0qG","EL/dPdNdT8oWmSkqAa","qumMW63dQSo9nSkSWQGj","W67dQSoNW5n6WR0","gGerW4baWQddV1W","WOmdWQBdGq","aJiEW6KsWOyaW5a1EW","WPL6WPuJqbfZeSkKWPVdT27cRW","WPfdW74EkmoVWO3cNtdcUa","WQFdUuHLymkUoq","vI4PW6ddICowhG","WQVdO01FB8kbjfeRwG","W4eTW4e","DSofW6jtW4ddJMiFW5SX","g2tdIr5SWOJcJum","r8k3WRKo","WRRcN2hcN0q","cCoQkCkgjG","iuKfWO8EW6/cPa","xCooW6tcVG","c8obW4i+lmk4gXZdO8kr","ESkyrtBdSmkqomksWPpcHq","WO5edNu","dXHAgxmFrqtcTIe","srqDW55AWQtdOeRdONq","trjDuICJtqy","WRezBLP0","AmoCumorW54","WQzQW5xcPLNdNa","WR7dUemwiCk8iG","oKeTW7yJwmo6W7tdMJG","nuhdKJXm","aeZdOtny","WPHqhZldKIWQW6qMgG","xWPmtcSFrrBdQ34","WQ7dLmoJisddPCk6WQBcGCoM","WPXcW5yAp8kHWOi","E8oxgmoFW7/cG8k4DqBcQW","kXauW5iN","umkrWO8PCmo6W77dSG","WQVdR05B","WQW8W5rIWPi6za","Ev/dOdNdI8oHhSkmymo7","gCoHW4tdV1rFtmoVj3W","xaRdUsRdVW","iXGtW6KbWOXYWOGGhW","FgBdTsxcJW","WPOYBa","uHvB","dbmeW4znWQNdS2BcQZ4","qCoZW6uvW7XDWQjMog0","EuRdTYJdRmo3","W7JcUmoEzCk2m8oTW7BcQmo5na","CmoWxhiy","d3zewCoq","WODFW6lcIaBcG8oBz8oJxW","hmoMpa","WQqEcYNcLMPP","i00PW5fFtSo3BG","svldVZNdT8oWo8kCFSo8","W4tcL09BWQ0","EXZcHWi","eCkFWOO","y2xcLbvjW715sGhdNW","pLPzWPpcL8kquSokW4KZ","gmkEWO4","tCk5DCowzSodEmoYWPSB","tgVdJ3lcKM8+W73dG8ow","lNCsW5eCeSkEBIGk","h8kVWQdcMmkBartcMHVdGq","sXVcOr7cVmk2x8kCFCkQ","gSkEWOqJ","WQtdQ8oNFs/dJtRdJbOcaW","W5hcM8kb","aWmCbSkpWOPWm8o+W70","p3C8W5rvtSoqFHiv","Dmovd8o7WR/dKSoUlGFdLq","W6/dLwHWBhLsA8kLAG","aSoBa8kepa","ESoBdSoM","W45uW6lcPbhcHCkC","W6/cPmkTgCowm8o1WOpdNSo8","hmkqvSou","zSoBfSo3W77OVkdMN4lVVjxPH6tMLzy","WOtdOCkFm8ow","tSoaW5W","sJ/cGCowlGNcQCkpWRxcKW","gCowfSkgASkFnSk7WQS+","d0qhW5BdKCoE","FmkRWR5jWQehW7aKB3q","WP/dQCoccHZdU8kkW7NcP8ky","tCo8FaNdGq","FSonqW","W5OLW5WPu8o2","FL3dJYtdIa","kN3dVI7dTSoPcmowpCk7","e3RdMH5WWO/cIutcH8k9","ywpdPcG","eCo8l8kh","W4CBAeGWWQdcNa0JBq","WRfJwJVdJM/cU8ouwYS","CCoggmoZW6tcGSkBCexcGW","hum2W41z","DSkmWO40W5T9WOmNpY0","wmkHWQukW4jrWRv5ns0","vZayWOCmW5JcHeG","cCkbWQddSvvbuSo/tZ0","WOFdGahdTCkeW7RdTq","wYTaBmkVW5OVASk0kG","xCoyWQyfemkCmLZcP8os","W5ncW78jp8kLWQtdHxVdOW","p0na","gevtW4npcCkkW6C6wW","WPdcIh3dTM/cPCk7jmoxBa","xW9isa","W7fiW4hcIZ0","W43dT3rWtq","WONcO8kPubq","fmo5m8k6gq","WQ3cKGtdTCoaWQBcTSk4WQxdOq","cKLBzCowW4TYoSokW7S","wYhcJsJdIJO/WRldGSop","WPSoWQNdJ0ldL8obmCkkna","tCknWRGeW5i","WRVcQKZcI13dRSk4nCkZmG","FNSQhfrAk8kWW7HM","nsqMW6ddSa","dGieW55hWQldS03cTJ4","WQBcS8oWAZFcGmo3WQRdLCo7","W5RcPhZdQG","W5/dUmoXW4TD","qIRcGIvWWOlcJf/cMCkH","AsPBAHK","W5NdUmo8W4bmWPtdQHRdG8oM","WPhcKHhcP8ozWR3cNmoVWRhcPq","g8kXW7hdNCkyhKpcGb7dGG","WQldGdy","ESkTWRapW7HyWQyLAwW","nSk8WQaOna","W4VdSezXtW","gcPCAmkGW5eL","W6ddUCompuddMSooCKZdQW","yCoUeCo/W5O","WRVdRvjB","f1P9udiqqtxdP3m","CSogW4vGW7q","WQv+W4q8","tGKaWOm6","W4tdK358sxe","WR/cH8k5W59LW7pcLHVcHCkH","C8ouW6jtW4JdGgGyW5y","W5XEW6pcLq","q8kJWQmk","W7/dLSoGW5u9W7BdP0hdKSo9","oMhdSwVcJW","DSooA2OeqJ8","x8kHW7S","zSkXW7pcQSok","h0LjrmoBW5LOamoRW6y","jvamW4Xm","WOddUeLrzmkW","WO7dIv5avG","tJ8iWPGoW5pcK18","W5tcH8o0x14","xdXMqre","i1O2W45zbmoio2iA","WOtcJcRcNCoH","kf5+xmop","umk7WRRcH8oh","uhCUbePwECksWPrZ","bmkFWR7dPKKkdmoYsq8","wGHvvIDtuLpcRxC","cY0VW7tdQa","FSk2WPqCEG","W4lcRMtdSwxcU8kQ","fmkaFaVdH8kwq8oTWOVcVG","WQxcQ8kkFG","f8kmWP5gWQueW6K6z2i","W5HxW7xcTHxcHmk/EmkMxW","W6ZdL3f6ta","xSkPWQ9gW5nrWQrHm2S","WPrDW7S","CbDFqW4","WO1adLFdHZqRW6OSfq","AtfyrGG","W5KFW4KtrCo0rYZcJIy","x8kwWOaGA8o/W7BdPa","fNZdMgNdIxLIW6FdNmkb","ngddQdDy","W5hdJNnTDwy","c0vdqSoBW5G","W5tcHSo1xv/dGJeeWRVdOa","WRtcL1JcIuZdTCoVpCkLiG","WQPVW79eW61ImghcQfi","W4JcJ33dQ3m","CWrSWQqUD8oXW6uPaq","WOlcKGtdP8kbW6FdTmoZWRdcOW","WQRdOSo+nIxdHCkCWR/cGa","a8o9oSkBp8ov","ctmKW7tdKG","fSk2WRDSl8kRWR3cP8ktWP8","g8oSnq","FSore8o1W6tcJW","CGirWPyV","gCoQpSkIjCocC8kZW6ef","yCkXWQufpSo6W6pdP8obW5S","WQNcK1ZdINJcSSo6DCkubW","ieTDWOW","t8onyfON","WP7cMNpcReRdQ8ofCmktbq","tZLeyGu","W79mW7RcScG","mLHaxCoBW4q9","hmo6W7Xg","sCk8W7RdISorceZcIK/cMW","W6RcO8kKbcldN8kNWRNcK8k6","cmoenCkkkq","nehdH0TOWR0cha","WR/dRCkiF8o6c8oxW4pcM8o5","5y+X5lMA6lYw5ysz6k66","WQ1GlG","nfW+W4Xjwa","F8omW7XFgq","dqqk","drbmD8kOW5mUF8kpmW","W6hcN3r5","W78MBWJdN3pcQSoGvIG","WPzWWPhdOr/cKxpdL11F","hLj3AbyXAe7cON0","WR09W5HMWQH8DN7cTW8","vqXhACkUW5SLjmoHBG","Fmk3W5pcG8og","WRJdQvi","k33dNr1y","ad1d","pwn8yG","W5hcU2xdQgNcQ8k/F8kpnW","W6RcN8oXEfy","W542W4DLdfm","WQddISkJb8o4","WQddQ8kGnIxcNmkeWPtdN8k4","BXdcRmkzpq","W5hcUhtdJha","pbKUW4SK","xCokW6BcTGykk8k7","jCoxeSo/WR7cN8kOD0xcGW","lKq6W4S","sYdcKmkggLBdPColWRVdIG","WOiYyhDT","W4ldGmoyW4jd","v8kiWOO","W4tcI8o2wLJdGGPp","yHSsW5TjaSkoW7G8wa","E8oygmoHWR8","W63dMY/cRuZdOCoUB8kbga","bgRdIv3cJwz0","iHeOW6O","W7hcKxjUWPq","WRZdOmkbFX3cHCktiLtcVG","WRPQkua","C8kdWPKTW7fgWQLVmg0","W7SXW40FBG","cG4d","j8oGnCozFSkDnSkNW7H8","WPSEWQryFmoGWOVdGh7cQG","nu0VW5rDsmoB","W6KjW60ABW","m8kyvSkAhZTUsCoRWQ8","W6BdNxDkAG","6lYZ6zQQ5PkM5PsS6zo95O2U6iYC5y6F5Awt6ls6","zmoOW6BdMCkzuXq","WQRdQmoObbG","W41DW7xdMbBcHmohCmoHqa","DCoofmoIWRZdH8k5Fe/cIG","WRBdRmoRoIu","sSoaemkeg1O6","bSoSkCkglmopDCk+WROH","gCkoW5jJF8oUW6FdV8khW4S","zLhdSq","xSokW6tcJaWidmkCFsW","WOBcP8kxpeFdKSowm0ZdRG","DwpdOZRcM8kQxgao","W7BcLxbKWP/dNcpdPG","wmoyW5T0wxn/WO7cJSoB","iddcOMZdT8kivwuhta","iCkttCo3yG","FLFdOJddVa","mNy0c08tp8o1WOb2","xX4bbCkqWPG3F8omW6G","tdNcGCozwfZdSSokW6RcLa","WRaKW5qWWOO2yYtdT0a","ienvx8osW4zHCmkQWQC","WOxcINFdIK7dHCoiwmkHaW","FLBdJwZdHmk5hCkmBSoJ","yMFdPa","W7dcTSofv2i","qgr7","uZ44WOajW57cMeS","WPS3W5XEWOW","W6ZdMSoVW7nq","agVdONy","WPXakh3dQa","fW5dW53dI8oEfSoLW6fl","WO1UW7qejmkLWPxdMedcTW","WRTDm2ldQa","wCo6W59PfWWnW7ddKCkq","WPyZWPSHvXHMgCkoW4e","jvCWW6KtwSoXW6ddJqG","f33dLhy","WP/cISk2zZK","c0boqG","yCoQW7hcQX0","WO7cGwlcG0y","WPhcIdVcOCoc","ccKEWPPu","k1LjWRmix8oBWRTShG","u8onqWFdVmkSyCkTW4tcSW","yYn0vrCE","kfhdN31+WQSUcGRdJW","nslcUb7cRCkNv2SCta","WRFdQ8k8hmoA","BryFWQ5jW6JdGbTLWQy","gejdu8oxWOrJmmoYWQy","W4tcO2ddQMtcRCkSjmoxAG","WPPRW7GojG","WQxcOCksBX3cTSkcmGRcVW","fw/dNG","WQ3cIrNcVSorW7VcTCoSWQZdSW","WO56g2hdKIW","W6RdK1nnuW","AColW7uAW6hdGMivW4bX","tSkBW6ehWPBcItC","W58NW5vHfK45gq","uG8iW4tcJ8kctCk5WRee","W7ZdN2X+WPpdLW","W4KBW6KSzCkO","WRTVqX3dSgVcTSohvG","W4xdN2zFAxLw","dSkeWP8KkSk2fXBdVG","W6dcJ8kXa1S","fg7dQwVcPJW","vmo7rNmb","W6FcNX/cV8oAWRJcRmk8W6FdPq","W63dJsFcTutdUSo+Amoeka","v8kBWOaPBCoOW4ZdO8ohW5q","WOiYwgzXWQldHs4","y1hdUhpcOmkKhCkly8o7","qCoAW77cGbCkbmkTEs8","BSkpW7PjW4NdIq","WQlcNH4","W5/cRmkukve","z8k8W63cJCofeupdIr/dNa","cmkdWOG/kSkWeXu","WQFdQCoGFYRcMf7cLMf9","W5iFW5m7u8o2","vCkxWO5JASoOW4ZdS8ohW4G","W5u3W4Hogfu+fa","zIH5xHysnmkR","FrGjW5HucCkkW705tq","qmoaCWtdUa","eGmmW5FdM8oVe8oK","W7VdHCo7W5z9WRxdHv3dICo9","f8oJWRNdNCkfgeZdI3/cOq","WQnfW4tcV0tdLYxdPXec","WRFcR8kly1ZdNmofFftdQq","EfVdPYNdVmo3gq","lxKmW7Di","WRpdQuHDDCk2","WR3dPSo4eJVdGCkaWRFcLmk9","iLCxW6OodW","wSk4WPGPW6i","WROIW6bfWOq","WOLedNFdJG","WQpcQ8kEBWS","mK9eWOKjsCoIWR1MbG","uYhcJtxdLcqHWQVcOCky","W6ddIKv9va","W5furYtcIhXZW6WQtW","uL5uWOVcJmkbt8kGW5aH","zSoxfCoZ","WRBcJ2pcIha","WOJcSqhdU8oEWRBcQSkv","p8kvyvaIBGRcRdxcQW","tfJdSrpdQa","WRTJsHhdJMW","WR3dPCkaomoHh8onW4BcKCo+","Db9XWOSkc8kwqquO","CmoFW652jq","dbSPW6/dPG","W6hcTmkNbhm","l15VW78IfmozW4BcKYy","W7/cOSowF8kYumkjWO/cRCoX","W5pcMSoYwLxdGcPnW7m","bsamW7rdWOddIfZcTIa","tCoqW4uAlCk/gH/dSmon","W7iRW4iS","rmkNWRGqW7fg","EvFdRdK","WQ7cSryunSoYkKb2Fa","W4xdN2zkAhrbiCoClq","W5FcT8kAb2m","sx4bWOCuW5K","m1CXW7nJdmkTWRpcHMq","WORdJmoFbW","W4tcPh7dOw4","phyTa1fayCkEWRjpW67cG8oc","WPuaWOa","pMGJae1p","WOVcMGpcRCkcW6a","uHmuW4qEWOGNW5HUyq","WPFcQ8oeDKZdGsC","a3ZcR8k+pshcHSoiW7RdLG","g2hdJ1jEWONcI1VcGCo7","kSkAtCkHWR7dL8oZibNdKa","jbSaWP0BW7lcPrFdRgC","W6FcS8kIAMFdLmkTW7VcSCkA","WQvCqHxdPq","W4qPW4mXpKuPf8kpW5m","td4IWPOc","WP17WPuIsbGVrmoqW44","W7FcOSkqzXRcNColEKRdQG","p07cNW","nM/dHHDTWOK","rw8htmkOW5GKzmkNkq","tConW4HPaZu","w8kzWPm","pCoheSk4oq","WRRcNGq","e8oOl8kmiG","zCkoW7XvW4hdJM9rW5LR","WQeqW5j8WQq2BJVdHWa","W4BcH8oUvW","hCkxq8oarNW","nJj1rZOAnCkbW6DW","egezW7eCsSooEIqy","hgNdGczW","yMFdPbRcRmkOqweVxG","yv3dKWJcLmkDCeWQya","WRRdTSoJW4H7WRVdGqBcKCkM","seSSW5xdJSoCh8oxW60h","EXLBsbuiyLVdHem","gY5cFG","WRhdPSoI","h8kuvG","WOmPyZ1WWQldJcClCq","WQNdPCkknmoDhCoyW5VcM8o3","W7FdP8oNE3ZdG1NdHMz+","W6pdU8olp0xcHCkLjdtcLmoS","vCkzWPm4FCoZW7lcUmobW5e","W6hcUmoiymkYumkkWPBdISkG","W5BdN8kVuK7dKYSeW7ZcTW","CSoly1id","cCk+WOabeW","cSktWOy4nW","W47dGCoQqftdIq","W5tcTNDMWRq","W6aoWOOXfuKHgCoaWR0","jqb8t8o7WPK2oSo/oW","hNKBW6SntCoA","WOiuWRO","emkvWOKKjCkoebhdQSoB","WRZcTtpcVCoE","l8keu8kRWRZcGSkZnhZcTq","ewRdJg7cGxLL","jL9cWP4uw8oqWQW","W5BcI8oYwL3dNG9eW63cUW","eh/dKxlcKa","aN/dMrO","WRvPsH3dSgVcOmoCvIq","5yYm5yQZ5Psl5lQLaSo1","W7dcPsLRWPFcGq","bK3dHb5V","W7KFW543smk3aGZcKHa","W6r/WP8PW6e2BMldJtO","WRtdQuG","5y6K5y6v55Ar","xSk3W6dcNSoBkuhdKNNcVa","W4lcUuXpWPa","zbhdVc/dTSoQ","W7bVW7bGWR0/zrJdVqS","jeKRW5ftrq","WQ7dSmoLEZFcKuFcMMr6","WRO9W5rXWRK2rIBdTaW","aHq2W4qq","WO9uWOrKrmo6q3ZdIvm","tHjksWu","WQRcLCkJW619WRJdGeBdL8oH","WRdcJmkUtHG","WRpcRCoOpdZdN8kVWRNcHCkT","FmojW755iG","DKJdMe9IWQX2svtcNG","Ba4ivGnlxLBcTwC","gSo9WQFdISkzuXldHNNcKW","W4SjW5GUsCo/tYO","gcT9yCkV","WOlcKLLrvfH/AmkWka","WRZdQSoGnGldLq","WRbGjuFdQWutW4u","W7pcGCokyvy","qSkzgcldPSkVz8oUW5JcUW","W6VcL3/cMvZdPmoiu8kfdq","gf9krmoHW4nK","nJykW48I","vmkJWR4fW7W"];return fB=function(){return t},fB()}function to(t,e){let r=fB();return to=function(n,s){n=n-(-5286+-1*-8219+-2675);let i=r[n];if(to.ZPPeVW===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h<A;h++)m+="%"+("00"+p.charCodeAt(h).toString(16)).slice(-2);return decodeURIComponent(m)};let l=function(d,f){let p=[],m=0,h,A="";d=a(d);let g;for(g=0;g<256;g++)p[g]=g;for(g=0;g<256;g++)m=(m+p[g]+f.charCodeAt(g%f.length))%256,h=p[g],p[g]=p[m],p[m]=h;g=0,m=0;for(let b=0;b<d.length;b++)g=(g+1)%256,m=(m+p[g])%256,h=p[g],p[g]=p[m],p[m]=h,A+=String.fromCharCode(d.charCodeAt(b)^p[(p[g]+p[m])%256]);return A};to.czIPUB=l,t=arguments,to.ZPPeVW=!0}let o=r[-302*-16+2074+2302*-3],c=n+o,u=t[c];return u?i=u:(to.Jbnsat===void 0&&(to.Jbnsat=!0),i=to.czIPUB(i,s),t[c]=i),i},to(t,e)}async function Z6e(t,e){let r=Te,n={DSjPd:function(l,d){return l!==d},kTXUs:function(l,d){return l(d)},tZiPw:function(l,d){return l<d},xMnec:r(816,"%SDn"),gBhSL:r(1305,"5y@]")+r(1591,"eKKZ")+r(1345,"5y@]")+r(1164,"mH&s")+r(2022,"lbro")+r(377,"p1lY")+r(1170,"j(Pm")+r(810,"FO4*")+r(897,"WLav")+r(385,"jrYj")+r(292,"KC!H")+r(453,"a&Z$"),NhCGp:function(l,d){return l(d)},zyDAy:r(325,"%SDn"),IAFtS:r(1437,"#Hok")};await n[r(630,"KdbQ")](ib,t);let s=n[r(1993,"K&$@")](String,t[r(495,"cf3y")].id||"")[r(1821,"kM4s")]("*");if(n[r(931,"Tl!3")](s[r(698,"yn!2")],7499*1+-4681*2+1867))throw new Error(n[r(1384,"!DZ@")]);let i={"User-Agent":n[r(1813,"FO4*")]},a=n[r(1718,"5y@]")](hsr,await Vh[r(1890,"6!X(")+"l"](s[-2*963+2*4701+6*-1246],s[-1*-961+2369+-3329],s[-170+59*-169+10144],s[-3*695+-1622+-3*-1237]||"")||[]),o=null;if(n[r(872,"fbFQ")](es[r(1611,"Tl!3")](n[r(907,"p1lY")])||"",""))try{let l=await Vh[r(827,"c0A9")+r(1864,"mPFZ")](s[0],s[1],s[3]);l&&(o=["\u539F\u753B",l])}catch(l){console[r(541,"DiMt")](r(1099,"X7W[")+" "+(l?.[r(1308,"eKKZ")]||l))}a[r(1393,"mH&s")]((l,d)=>J6e(d[-3297+5*1193+-2668])-J6e(l[-8119+2*-4343+16805*1]));let c=[];o&&c[r(1691,"ky6h")](o),a[r(1830,"]tXZ")](l=>{let d=r;n[d(969,"X7W[")](l[0],"\u539F\u753B")&&c[d(327,"p1lY")](l)});let u=c[r(422,"UUoF")]();if(!u[r(1535,"ky6h")])throw new Error(n[r(631,"%SDn")]);return{parse:0,url:u,header:i}}var n5e=require("crypto");var Asr="https://api.guangyapan.com",ysr="https://account.guangyapan.com",s5e="aMe-8VSlkrbQXpUR",i5e=200,xsr="0123456789abcdef0123456789abcdef",a5e={Accept:"application/json, text/plain, */*","Content-Type":"application/json"},bsr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],pB,cV={},P0={set(t,e){cV[t]=e,pB&&pB.push(`/guangyapan/${t}`,e)},get(t){return cV[t]}},Esr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,cI=async t=>{pB=t.server.db,cV=await pB.getObjectDefault("/guangyapan",{})};function _sr(t){let e=/https?:\/\/(?:www\.)?guangyapan\.com\/s\/([^/#?]+)/i.exec(String(t||"").trim());return e?.[1]?{shareId:e[1]}:null}function o5e(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{msg:t}}return t}function uI(t,e=""){return[t?.msg,t?.message,t?.error_description,t?.error,e].map(n=>String(n||"").trim()).filter(Boolean)[0]||"unknown error"}function Ssr(t){let e=String(t||"").toLowerCase();return bsr.some(r=>e.endsWith(r))}function vsr(t,e){return t?`${t}/${e}`:e}function Isr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}function c5e(){let t=Isr(P0.get("device_id"));if(t)return t;try{t=(0,n5e.randomBytes)(16).toString("hex")}catch{t=xsr}return P0.set("device_id",t),t}function Csr(t=""){let e={...a5e,Did:c5e(),Dt:"4"},r=String(t||"").trim();return r&&(e.Authorization=`Bearer ${r}`),e}function Tsr(){let t=c5e();return{...a5e,"X-Client-Id":s5e,"X-Client-Version":"0.0.1","X-Device-Id":t,"X-Device-Model":"chrome%2F147.0.0.0","X-Device-Name":"PC-Chrome","X-Device-Sign":`wdi10.${t}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,"X-Net-Work-Type":"NONE","X-OS-Version":"Win32","X-Platform-Version":"1","X-Protocol-Version":"301","X-Provider-Name":"NONE","X-SDK-Version":"9.0.2"}}async function oI(t,e,r=""){let n=await he.request({url:`${Asr}${t}`,method:"POST",headers:Csr(r),data:e,validateStatus:()=>!0});return{status:Number(n?.status||0),data:o5e(n?.data)}}async function wsr(){let t=String(P0.get("refresh_token")||"").trim();if(!t)return"";let e=await he.request({url:`${ysr}/v1/auth/token`,method:"POST",headers:Tsr(),data:{client_id:s5e,grant_type:"refresh_token",refresh_token:t},validateStatus:()=>!0}),r=o5e(e?.data),n=String(r?.access_token||"").trim();if(!n)throw new Error(`\u5237\u65B0\u5149\u9E2D access_token \u5931\u8D25: ${uI(r,`status=${e?.status||0}`)}`);P0.set("access_token",n);let s=String(r?.refresh_token||"").trim();return s&&P0.set("refresh_token",s),n}async function uV(t=!1){let e=t?"":String(P0.get("access_token")||"").trim();return e||await wsr()}async function u5e(t){let{status:e,data:r}=await oI("/nd.bizuserres.s/v1/get_share_access_token",{shareId:t}),n=String(r?.data?.accessToken||"").trim();if(!n)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB accessToken \u5931\u8D25: ${uI(r,`status=${e}`)}`);return n}async function Rsr(t,e="",r=0){let n={pageSize:i5e,accessToken:t,parentId:e,orderBy:0,sortType:0};r>0&&(n.cursor=r);let{status:s,data:i}=await oI("/nd.bizuserres.s/v1/get_share_page_files_list",n);if(s<200||s>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB\u76EE\u5F55\u5931\u8D25: ${uI(i,`status=${s}`)}`);return i?.data||{list:[]}}async function Nsr(t){let e=await u5e(t),r=[{parentId:"",folderPath:""}],n=[];for(;r.length>0;){let{parentId:s,folderPath:i}=r.shift(),a=0,o=!0;for(;o;){let c=await Rsr(e,s,a);(Array.isArray(c?.list)?c.list:[]).forEach(d=>{let f=String(d?.fileId||"").trim(),p=String(d?.fileName||"").trim();if(!(!f||!p)){if(Number(d?.resType||0)===2){r.push({parentId:f,folderPath:vsr(i,p)});return}Ssr(p)&&n.push({vod_id:`${t}*${f}`,vod_name:p,vod_size:Number(d?.fileSize||d?.size||0),vod_group:i})}}),o=!!c?.hasMore;let l=Number(c?.cursor||0);if(!o||l<=a)break;a=l}}return n}async function lV(t,e,r=""){let{status:n,data:s}=await oI("/nd.bizuserres.s/v1/get_share_download_url",{fileId:t,accessToken:e},r);return{status:n,code:Number(s?.code||0),msg:uI(s,`status=${n}`),url:String(s?.data?.downloadUrl||"").trim()}}function e5e(t,e){return{status:t,code:Number(e?.code||0),msg:uI(e,`status=${t}`),data:e?.data||{}}}function t5e(t,e){return{status:500,code:0,msg:String(t?.message||t||e||"\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38"),data:{}}}function l5e(t){let e=String(t?.msg||"").toLowerCase();return t?.status===401||t?.status===403||t?.code===401||t?.code===403||e.includes("token expired")||e.includes("unauthorized")}async function r5e(t=!1){let e=await uV(t);if(!e)throw new Error("\u5149\u9E2D\u767B\u5F55\u6001\u7F3A\u5931");return e}async function d5e(t,e){let r="";try{r=await r5e(!1)}catch(i){return t5e(i,"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}let n=await oI(t,e,r),s=e5e(n.status,n.data);if(!l5e(s))return s;try{r=await r5e(!0),n=await oI(t,e,r),s=e5e(n.status,n.data)}catch(i){return t5e(i,"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}return s}async function Osr(t,e){let r="";try{r=await uV(!1)}catch(s){return{status:500,code:0,msg:String(s?.message||s||"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}let n=await lV(t,e,r);if(!n.url&&l5e(n))try{r=await uV(!0),n=await lV(t,e,r)}catch(s){n={status:500,code:0,msg:String(s?.message||s||"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}return n}async function f5e(t,e=""){await cI(t);let r=await d5e("/nd.bizuserres.s/v1/file/get_file_list",{parentId:String(e||"").trim(),pageSize:i5e,orderBy:3,sortType:1,fileTypes:[]});if(r.status<200||r.status>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u4E2A\u4EBA\u76EE\u5F55\u5931\u8D25: ${r.msg}`);return{total:Number(r.data?.total||0),list:Array.isArray(r.data?.list)?r.data.list:[]}}async function p5e(t,e){await cI(t);let r=String(e||"").trim();if(!r)return{url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await d5e("/nd.bizuserres.s/v1/get_res_download_url",{fileId:r}),s=String(n.data?.signedURL||n.data?.downloadUrl||"").trim();return s?{url:s,msg:""}:{url:"",msg:n.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}async function m5e(t){let e=_sr(t);if(!e?.shareId)return{};let r=await Nsr(e.shareId);return Ps(await Esr("guangyapan"),r)}async function h5e(t){try{await cI(t);let[e,r]=String(t.body?.id||"").trim().split("*");if(!e||!r)return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await u5e(e),s=await lV(r,n);return s.url||(String(P0.get("access_token")||"").trim()||String(P0.get("refresh_token")||"").trim())&&(s=await Osr(r,n)),s.url?{parse:0,url:["\u539F\u753B",s.url]}:{parse:0,url:"",msg:s.code===207||String(s.msg||"").includes("\u514D\u767B\u5F55\u4E0B\u8F7D")?"\u5149\u9E2D\u4E91\u76D8\u5206\u4EAB\u672A\u5F00\u542F\u514D\u767B\u5F55\u4E0B\u8F7D\uFF0C\u8BF7\u5148\u5728\u201C\u767B\u5F55-\u5149\u9E2D\u201D\u4E2D\u586B\u5165 access_token \u6216 refresh_token":s.msg||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25"}}catch(e){return{parse:0,url:"",msg:String(e?.message||e||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25")}}}var Co=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,Tl=t=>{let e=globalThis.Pans?.find(r=>r.key===t)?.name;return String(e||t)};var Gr=l0,Psr=t=>t==null||t==="root"?"":String(t),dV=t=>{if(!t)return[];if(Array.isArray(t))return t;let e=[];return Object.keys(t).forEach(r=>{let n=t[r];if(!Array.isArray(n))return;let s=Psr(r);n.forEach(i=>{e.push({...i,vod_group:i?.vod_group??s})})}),e};async function qr(t,e){return{}}async function wr(t,e){t=Array.isArray(t)?t:[t];let r=t.map(o=>{let c=rf().find(u=>u.validator(o))?.key;return{key:c,url:o,order:globalThis.Pans.findIndex(u=>u.key===c)}}).filter(o=>o.key);r.sort((o,c)=>o.order-c.order);let n=[],s=[];(await Promise.allSettled(r.map(async({key:o,url:c})=>{if(o==="ali")return await tBe(c);if(o==="quark")return await hBe(c);if(o==="uc")return await M4e(c);if(o==="tianyi"){let u=await tf.getShareData(c);if(!u)return null;let l=await Co("tianyi");return Ps(l,dV(u))}if(o==="yidong"){let u=await WK.getShareData(c),l=await Co("yidong");return Ps(l,dV(u))}if(o==="123"){let u=await N0.getShareData(c),l=await N0.getFilesByShareUrl(u),d=await Co("123");return Ps(d,dV(l))}return o==="115"?await U6e(c,e):o==="baidu"?await V6e(c,e):o==="xunlei"?await X6e(c,e):o==="guangyapan"?await m5e(c):null}))).forEach((o,c)=>{if(o.status==="fulfilled"){let d=o.value;d&&d.from&&d.url&&(n.push(d.from),s.push(d.url));return}let u=String(r[c]?.key||"unknown"),l=String(o.reason?.message||o.reason||"unknown error");console.warn(`[Pan Detail] ${u} detail failed: ${l}`)});let a={};return n.forEach((o,c)=>{a[o]?n[c]=`${o}-${++a[o]}`:a[o]=1}),{froms:n.join("$$$"),urls:s.join("$$$")}}async function Rr(t,e){let r=t.params.site;if(r=="ali")return await g3(t,e);if(r=="quark")return await E3(t,e);if(r=="uc")return await W4e(t,e);if(r=="baidu")return await lB(t,e)}async function Nr(t,e){let r=t.body.flag;if(r.startsWith(await Co("ali")))return await A3(t,e);if(r.startsWith(await Co("quark")))return await _3(t,e);if(r.startsWith(await Co("uc")))return await $4e(t,e);if(r.startsWith(await Co("tianyi"))){let n=t.body.id.split("*");await rb(t);let s=n[2]||"video",i=n[3]||"",a=n[4]||"";if(s==="cas")try{let c=await tf.getShareTextPlayable(n[0],n[1],i,a);if(!c?.url){let u=tf.getShareTextResolveReason?tf.getShareTextResolveReason():"";throw new Error(u||"\u5929\u7FFCCAS\u89E3\u6790\u5931\u8D25")}return{parse:0,url:["\u539F\u753B",c.url],...c.header?{header:c.header}:{}}}catch(c){throw c}return{parse:0,url:["\u539F\u753B",await tf.getShareUrl(n[0],n[1])]}}else if(r.startsWith(await Co("yidong"))){let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await WK.getSharePlay(n[0],n[1],n[2]||"",n[3]||"")]}}else if(r.startsWith(await Co("123"))){await nb(t);let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await N0.getDownload(...n)],header:N0.getDownloadHeader()}}else{if(r.startsWith(await Co("115")))return await q6e(t,e);if(r.startsWith(await Co("baidu")))return await uB(t,e);if(r.startsWith(await Co("xunlei")))return await Z6e(t,e);if(r.startsWith(await Co("guangyapan")))return await h5e(t,e)}}async function y5e(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);n.init=s.json(),lI(s.json()),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),lI(s.json());let i=!1;if(n.home.class&&n.home.class.length>0){let a=n.home.class[0].type_id,o={};if(n.home.filters){let c=n.home.filters[a];if(c)for(let u of c){let l=u.init;if(l){for(let d of u.value)if(d.v==l){o[u.key]=l;break}}}}if(s=await t.server.inject().post(`${r}/category`).payload({id:a,page:1,filter:!0,filters:o}),n.category=s.json(),lI(s.json()),n.category.list.length>0){i=!0;let c=n.category.list[0].vod_id;await A5e(t,c,n)}}if(s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),!i&&n.search.list.length>0){let a=n.search.list[0].vod_id;await A5e(t,a,n)}return lI(s.json()),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}async function A5e(t,e,r){let n=t.server.prefix,s=await t.server.inject().post(`${n}/detail`).payload({id:e});if(r.detail=s.json(),lI(s.json()),r.detail.list&&r.detail.list.length>0){r.play=[];for(let i of r.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c<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 lI(t){t.statusCode&&t.statusCode==500&&console.error(t)}var ksr={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"},wl=t=>{let e=globalThis.Pans?.find(n=>n.key===t)?.pic,r=String(e||"").trim();return r||ksr[t]||""},rf=()=>[{key:"quark",name:Tl("quark"),validator:d3,pic:wl("quark")},{key:"uc",name:Tl("uc"),validator:f3,pic:wl("uc")},{key:"ali",name:Tl("ali"),validator:l3,pic:wl("ali")},{key:"baidu",name:Tl("baidu"),validator:M3e,pic:wl("baidu")},{key:"xunlei",name:Tl("xunlei"),validator:W3e,pic:wl("xunlei")},{key:"tianyi",name:Tl("tianyi"),validator:k3e,pic:wl("tianyi")},{key:"yidong",name:Tl("yidong"),validator:D3e,pic:wl("yidong")},{key:"123",name:Tl("123"),validator:B3e,pic:wl("123")},{key:"115",name:Tl("115"),validator:L3e,pic:wl("115")},{key:"guangyapan",name:Tl("guangyapan"),validator:$3e,pic:wl("guangyapan")}];var Dsr=["https://tv.yydsys.cc","https://tv.yydsys.top","https://tv.214521.xyz","https://yydsys.de5.net"],fV=async t=>(await t.db.getObjectDefault("/duoduo",{}))?.urls||t.config.duoduo?.urls||Dsr,Bsr=async(t,e)=>{await t.db.push("/duoduo/urls",e)},Lsr=async t=>{await t.db.delete("/duoduo/urls")};async function pV(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await fV(e.server)})}),t.put("/urls",async(e,r)=>{await Bsr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Lsr(e.server),r.send({code:0})})}var mV,mB=t=>{if(!mV){let e=Date.now();mV=new Promise(async r=>{let n=await fV(t),s=await Xn(n,{"User-Agent":Gr});console.log("\u591A\u591A\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return mV};function Msr(t){if(typeof t!="string"||t.length===0)return t;let r=t.indexOf('"<!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 hV(t){let e=await he.get(t,{headers:{"User-Agent":Gr}});return Msr(e.data)}function gV(t){return String(t||"").replace(/\/$/,"")}function Wsr(t,e){let r=e;return t("#page a").each((n,s)=>{let i=t(s).attr("href"),a=i&&i.match(/\/page\/(\d+)\.html/i);if(!a)return;let o=parseInt(a[1],10);Number.isNaN(o)||(r=Math.max(r,o))}),r}async function $sr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"20",type_name:"\u7EAA\u5F55"}],filters:{}}}async function Fsr(t,e){let r=await mB(t.server),n=t.body.id,s=t.body.page,i=parseInt(s,10);(!i||i<1)&&(i=1);let o=`${gV(r)}/index.php/vod/show/id/${n}/page/${i}.html`,c=await hV(o),u=Me(c),l=u("#main .module-item").map((f,p)=>{let m=u(p).find(".module-item-pic a").attr("href"),h=u(p).find(".module-item-pic img").attr("alt"),A=u(p).find(".module-item-pic img").attr("data-src")||u(p).find(".module-item-pic img").attr("src"),g=u(p).find(".module-item-text").text().trim();return{vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g}}).get().filter(f=>f.vod_id&&f.vod_name),d=Wsr(u,i);return{page:i,pagecount:d,limit:72,total:72*d,list:l}}async function Usr(t,e){let r=await mB(t.server),n=gV(r),s=Array.isArray(t.body.id)?t.body.id:[t.body.id],i=[];for(let a of s)try{let o=await hV(`${n}${a}`),c=Me(o),u={vod_id:a,vod_name:c(".page-title").first().text().trim(),vod_pic:c(".mobile-play .lazyload").first().attr("data-src")||c(".mobile-play img").first().attr("data-src")||c(".mobile-play img").first().attr("src"),vod_remarks:c('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""};c(".video-info-itemtitle").each((f,p)=>{let m=c(p).text(),h=c(p).next().find("a").map((A,g)=>c(g).text().trim()).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?u.vod_content=c(p).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?u.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(u.vod_actor=h.trim())});let l=c(".module-row-info p").map((f,p)=>c(p).text().trim()).get().filter(Boolean),d=await wr(l,t);d&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls),i.push(u)}catch(o){console.error("duoduo detail fetch failed",a,o)}return{list:i}}async function qsr(t,e){let r=await mB(t.server),n=gV(r),s=t.body.page,i=t.body.wd,a=parseInt(s,10);(!a||a<1)&&(a=1);let o=encodeURIComponent(i||""),c=[`${n}/index.php/vod/search/page/${a}/wd/${o}.html`,`${n}/index.php/vod/search/wd/${o}.html`,`${n}/index.php/vod/search.html?wd=${o}&page=${a}`];for(let u of c)try{let l=await hV(u),d=Me(l),f=d(".module-search-item").map((p,m)=>{let h=d(m).find(".video-serial"),A=d(m).find(".module-item-pic > img");return{vod_id:h.attr("href"),vod_name:h.attr("title"),vod_pic:A.attr("data-src")||A.attr("src"),vod_remarks:h.text()}}).get().filter(p=>p.vod_id&&p.vod_name);if(f.length>0)return{page:a,pagecount:f.length<10?a:a+1,list:f}}catch{}return{page:a,pagecount:a,list:[]}}var x5e={meta:{key:"duoduo",name:"\u300C\u76D8\u300D\u591A\u591A",type:3},api:async t=>{t.post("/init",qr),t.post("/home",$sr),t.post("/category",Fsr),t.post("/detail",Usr),t.post("/play",Nr),t.post("/search",qsr),t.get("/test",y5e),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:mB};var yw=Re(Jn(),1),kit=Re(S0(),1);var Iit=Re(require("http"),1);var gw=Re(require("fs"),1),nae=Re(require("path"),1);var b5e=Re(require("os"),1),jsr=t=>{if(!t)return!1;let e=typeof t.family=="string"?t.family:String(t.family||"");return e==="IPv4"||e==="4"},Hsr=t=>{let e=String(t||"").trim();return/^\d{1,3}(\.\d{1,3}){3}$/.test(e)?e.split(".").every(r=>{let n=Number(r);return Number.isInteger(n)&&n>=0&&n<=255}):!1},Qsr=t=>/^192\.168\./.test(t)||/^10\./.test(t)||/^172\.(1[6-9]|2\d|3[0-1])\./.test(t),AV=t=>/^100\.(6[4-9]|[7-9]\d|1[01]\d|12[0-7])\./.test(t),Gsr=t=>{let e=String(t||"").trim();return/^0\./.test(e)||/^127\./.test(e)||/^169\.254\./.test(e)||/^192\.0\.0\./.test(e)||/^192\.0\.2\./.test(e)||/^198\.18\./.test(e)||/^198\.19\./.test(e)||/^198\.51\.100\./.test(e)||/^203\.0\.113\./.test(e)||/^22[4-9]\./.test(e)||/^23\d\./.test(e)||/^24\d\./.test(e)||/^25[0-5]\./.test(e)},yV=(t="")=>/(rmnet|ccmni|pdp|wwan|cell|mobile|clat|v4-rmnet)/i.test(String(t||"")),Ksr=(t="")=>/(wlan|wi-?fi|eth|en\d|lan|bridge)/i.test(String(t||"")),xV=(t="")=>/(virtual|veth|vethernet|vmware|vbox|hyper-v|docker|podman|br-|wsl|utun|tun|tap|tailscale|zerotier|wireguard|wg|clash|mihomo|loopback|pseudo)/i.test(String(t||"")),Vsr=t=>{let e=0;return/^192\.168\./.test(t.ip)?e+=300:/^172\.(1[6-9]|2\d|3[0-1])\./.test(t.ip)?e+=260:/^10\./.test(t.ip)?e+=220:AV(t.ip)||(e+=180),Ksr(t.name)&&(e+=80),yV(t.name)&&(e-=320),xV(t.name)&&(e-=260),AV(t.ip)&&(e-=220),e},k0=function(){let t=String(process.env.CATPAW_HOST_IP||process.env.HOST_IP||"").trim();if(Hsr(t))return t;let e=b5e.default.networkInterfaces()||{},r=[];Object.entries(e).forEach(([a,o])=>{Array.isArray(o)&&o.forEach(c=>{if(!jsr(c)||c.internal)return;let u=String(c.address||"").trim();!u||u.startsWith("169.254.")||Gsr(u)||r.push({ip:u,name:String(a||"")})})});let n=r.map(a=>({...a,score:Vsr(a)})).sort((a,o)=>o.score-a.score),s=n.find(a=>{let o=yV(a.name),c=xV(a.name);return!o&&!c&&!AV(a.ip)});if(s)return s.ip;let i=n.find(a=>Qsr(a.ip)&&!yV(a.name)&&!xV(a.name));return i?i.ip:"127.0.0.1"};Ot();ir();_t();kB();$n();Ot();_t();ir();so();function Pir(t,e,r=!1){if(e===0&&!r)return t.map(i=>({...i,t:i.t!==void 0?i.t:parseFloat(i.p.split(",")[0])}));let n=t.reduce((i,a)=>{let o=a.t!==void 0?a.t:parseFloat(a.p.split(",")[0]),c=e===0?o.toFixed(2):Math.floor(o/(e*60));return i[c]||(i[c]=[]),i[c].push({...a,t:o}),i},{});return Object.keys(n).map(i=>{let o=n[i].reduce((c,u)=>{let l=u.m.split(" X")[0].trim();if(c[l]||(c[l]={count:0,earliestT:u.t,cid:u.cid,p:u.p,like:0,sources:new Set}),c[l].count+=1,c[l].earliestT=Math.min(c[l].earliestT,u.t),c[l].like+=u.like!==void 0?u.like:0,u.p){let d=u.p.match(/\[([^\]]*)\]$/);d&&d[1]&&d[1].split(/[&&]/).forEach(f=>{f.trim()&&c[l].sources.add(f.trim())})}return c},{});return Object.keys(o).map(c=>{let u=o[c],l=Math.max(1,u.sources.size),d=Math.round(u.count/l);d<1&&(d=1);let f=Array.from(u.sources).join("\uFF06"),p=u.p.replace(/\[([^\]]*)\]$/,`[${f}]`);return{cid:u.cid,p,m:d>1?`${c}\u200Ax\u200A${d}`:c,t:u.earliestT,like:u.like}})}).flat().sort((i,a)=>i.t-a.t)}function kir(t){if(!O.likeSwitch)return t;let e=new Set(["[hanjutv]","[sohu]","[bilibili1]","[migu]"]);return t.map(r=>{if(!r.like||r.like<5)return r;let n=r.p.match(/,(\[[^\]]+\])$/)?.[1]||"",a=n.includes("\u97E9\u5C0F\u5708")||n.includes("\u6781\u901F\u7248")||e.has(n)?100:1e3,o=r.like>=a?"\u{1F525}":"\uFE0F\u2661",c;r.like>=1e4?c=(r.like/1e4).toFixed(1)+"w":r.like>=1e3?c=(r.like/1e3).toFixed(1)+"k":c=r.like.toString();let u=`\u200A${o}${c}`,l=r.m+u,{like:d,...f}=r;return{...f,m:l}})}function Dir(t,e){if(e===0)return t;let r=e*1e3,n=t.length;if(n<=r)return t;let s=n/r,i=[];for(let a=0;a<r;a++){let o=Math.floor(a*s);i.push(t[o])}return i}function BI(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},p=m=>m?parseInt(m.replace("#",""),16):16777215;i=t.danmuku.map(m=>({timepoint:m[0],ct:f[m[1]]!==void 0?f[m[1]]:1,color:p(m[2]),content:m[4]}))}else Array.isArray(t)&&(i=t);if(!i.length)return[];for(let f of i){let p,m,h,A,g;if("progress"in f&&"mode"in f&&"content"in f)h=(f.progress/1e3).toFixed(2),A=f.mode||1,g=f.color||16777215,m=f.content;else if("timepoint"in f)h=parseFloat(f.timepoint).toFixed(2),A=f.ct||0,g=f.color||16777215,m=f.content;else{if(!("p"in f))continue;let y=f.p.split(",");h=parseFloat(y[0]).toFixed(2),A=y[1]||0,y.length===4?g=y[2]||16777215:y.length>=8?g=y[3]||16777215:g=y[3]||y[2]||16777215,m=f.m}let b=f._sourceLabel||e;f.realTimeSource&&!b.includes(f.realTimeSource)&&(b=`${b}\uFF06${f.realTimeSource}`),!s&&/[&&]/.test(b)&&(s=!0),p=[h,A,g,`[${b}]`].join(","),r.push({p,m,cid:n++,like:f?.like})}let a=O.blockedWords.split(/(?<=\/),(?=\/)/).map(f=>{let p=f.trim();if(p.startsWith("/")&&p.endsWith("/"))try{return new RegExp(p.slice(1,-1))}catch(m){return _("error",`[Utils] [Danmu] \u65E0\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F: ${p}`,m),null}return null}).filter(f=>f!==null);_("info",`[Utils] [Danmu] \u539F\u59CB\u5C4F\u853D\u8BCD\u5B57\u7B26\u4E32: ${O.blockedWords}`),_("info",`[Utils] [Danmu] \u5C4F\u853D\u8BCD\u5217\u8868: ${(f=>Array.isArray(f)?f.map(p=>p.toString()).join(`
`):String(f))(a)}`);let c=r.filter(f=>!a.some(p=>p.test(f.m)));_("info",`[Utils] [Danmu] \u53BB\u91CD\u5206\u949F\u6570: ${O.groupMinute}`);let u=Pir(c,O.groupMinute,s),l=kir(u),d=Dir(l,O.danmuLimit);if(O.convertTopBottomToScroll||O.convertColor==="white"||O.convertColor==="color"){let f=0,p=0;d=d.map(m=>{let h=m.p.split(",");if(h.length<3)return m;let A=parseInt(h[1],10),g=parseInt(h[2],10),b=!1;O.convertTopBottomToScroll&&(A===4||A===5)&&(f++,A=1,b=!0),O.convertColor==="white"&&g!==16777215&&(p++,g=16777215,b=!0);let y=O.colorPool.split(",").map(v=>parseInt(v.trim(),10)).filter(v=>!isNaN(v)&&v>=0&&v<=16777215),x=y[Math.floor(Math.random()*y.length)];if(O.convertColor==="color"&&g===16777215&&g!==x&&(p++,g=x,b=!0),b){let v=[h[0],A,g,...h.slice(3)].join(",");return{...m,p:v}}return m}),f>0&&_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${f} \u6761\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u4E3A\u6D6E\u52A8\u5F39\u5E55`),p>0&&_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${p} \u6761\u5F39\u5E55\u989C\u8272`)}return O.danmuSimplifiedTraditional==="traditional"&&(d=d.map(f=>({...f,m:No(f.m)})),_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${d.length} \u6761\u5F39\u5E55\u4E3A\u7E41\u4F53\u5B57`)),_("info",`[Utils] [Danmu] danmus_original: ${r.length}`),_("info",`[Utils] [Danmu] danmus_filter: ${c.length}`),_("info",`[Utils] [Danmu] danmus_group: ${u.length}`),_("info",`[Utils] [Danmu] danmus_limit: ${d.length}`),_("info","[Utils] [Danmu] Top 5 danmus:",JSON.stringify(d.slice(0,5),null,2)),d}function cz(t){return typeof t.r!="number"||t.r<0||t.r>255||typeof t.g!="number"||t.g<0||t.g>255||typeof t.b!="number"||t.b<0||t.b>255?-1:t.r*256*256+t.g*256+t.b}function hb(t){return typeof t!="string"||t.length!==6||!/^[0-9A-Fa-f]{6}$/.test(t)?16777215:parseInt(t,16)}function Bir(t){let e=`<?xml version="1.0" ?>
`;e+=`<i>
`;let r=t.comments||[];if(Array.isArray(r))for(let n of r){let s=Mir(n);e+=' <d p="'+Wir(s)+'">'+$ir(n.m)+`</d>
`}return e+="</i>",e}function Lir(){let e=(Date.now()%1e8).toString().padStart(8,"0"),r=Math.floor(Math.random()*1e3).toString().padStart(3,"0");return e+r}function Mir(t){let e=t.p.split(","),n=(parseFloat(e[0])||0).toFixed(1),s=e[1]||"1",i="25",a=e[2]||"16777215",o="1751533608",c="0",u="0",l=Lir();return`${n},${s},${i},${a},${o},${c},${u},${l}`}function Wir(t){return t?String(t).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;"):""}function $ir(t){return t?String(t).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;"):""}function ag(t,e){let r=e||O.danmuOutputFormat;if(r=r.toLowerCase(),_("info",`[Utils] [Danmu] [Format] Using format: ${r}`),r==="xml")try{let n=Bir(t);return _8e(n)}catch(n){return _("error",`[Utils] [Danmu] Failed to convert to XML: ${n.message}`),Le(t)}return Le(t)}ir();var df=class{constructor({apiKey:e,baseURL:r="https://api.openai.com/v1",model:n="gpt-4o",systemPrompt:s=""}){this.apiKey=e,this.baseURL=r.replace(/\/$/,""),this.model=n,this.systemPrompt=s}async chat(e,r={}){let n={model:r.model||this.model,messages:e,temperature:r.temperature??0,max_tokens:r.maxTokens??8192,stream:!1},s=await Kr(`${this.baseURL}/chat/completions`,JSON.stringify(n),{headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},timeout:6e4}),i=s.data;if(i?.error){let a=i.error.message;throw new Error(`AI API error ${s.status}: ${a}`)}return i.choices[0].message.content}async ask(e,r={}){let n=[];return this.systemPrompt&&n.push({role:"system",content:this.systemPrompt}),n.push({role:"user",content:e}),this.chat(n,r)}session(e={}){let r=[],n=this.chat.bind(this),s=this.systemPrompt;return s&&r.push({role:"system",content:s}),{async send(i){r.push({role:"user",content:i});let a=await n(r,e);return r.push({role:"assistant",content:a}),a},clear(){r.length=0,s&&r.push({role:"system",content:s})},getHistory(){return[...r]}}}async verify(){try{return{ok:!0,reply:await this.ask("hi",{maxTokens:1})}}catch(e){return{ok:!1,error:e.message}}}};var ga=Re(require("fs"),1),zB=Re(require("path"),1);bI();Ot();_t();hn();so();var Hn=null,KB=0,Oo=!1,GB=0,gb="0.00",LI=!1,U0=new Map,H8e="custom",Q8e=null,G8e=null,VB=zB.default.join(process.cwd(),".cache"),Y8e="bangumi-data-cache.json",Fir=2e4,og=new Map,K8e={custom:["https://cdn.jsdelivr.net/npm/@wan0ge/[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"]},Uir="@wan0ge/bangumi-data",qir="bangumi-data",jir=/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|æ—¥[语語]|日配|原版|原[声聲])(?:版)?/,J8e=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|åŠ‡å ´ç‰ˆ|ç»­[篇集]|å¤–ä¼ )(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/gi,Hir=/\s+/g,Qir=/[,,]/,Gir=/[::]/;function lz(t){let e=new Map,r=t.length;for(let n=0;n<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)}}U0=e}function V8e(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 Kir(t,e){let r=V8e(t),n=V8e(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 z8e(t){try{let e=`https://registry.npmjs.org/${encodeURIComponent(t)}/latest`;_("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${e}`);let r=await cb(e,{headers:{Accept:"application/json"},signal:AbortSignal.timeout(8e3)});return r.ok&&(await r.json())?.version||null}catch(e){return _("warn",`[Utils] [Bangumi-Data] \u67E5\u8BE2 ${t} \u7248\u672C\u53F7\u5931\u8D25: ${e.message}`),null}}async function Vir(){try{let[t,e]=await Promise.all([Q8e||z8e(Uir),G8e||z8e(qir)]);if(t&&(Q8e=t),e&&(G8e=e),!t||!e)return _("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=Kir(t,e)>=0?"custom":"official";return _("info",`[Utils] [Bangumi-Data] \u7248\u672C\u5BF9\u6BD4: @wan0ge/bangumi-data@${t} vs bangumi-data@${e} => \u4F7F\u7528${n==="custom"?"\u81EA\u5B9A\u4E49":"\u5B98\u65B9"}\u6E90`),n}catch(t){return _("warn",`[Utils] [Bangumi-Data] \u6570\u636E\u6E90\u9009\u62E9\u5F02\u5E38\uFF0C\u56DE\u9000\u5230\u81EA\u5B9A\u4E49\u6E90: ${t.message}`),"custom"}}async function YB(t,e=!1,r=null){if(!O.useBangumiData)return;let n=null,s=O.bangumiDataCacheDays!==void 0?O.bangumiDataCacheDays:7,i=s*24*60*60*1e3;if(t==="node"?ga.default.existsSync(VB)?n=zB.default.join(VB,Y8e):LI||(_("warn","[Utils] [Bangumi-Data] \u672A\u68C0\u6D4B\u5230\u6839\u76EE\u5F55\u7684 .cache \u6587\u4EF6\u5939\uFF01"),_("warn","[Utils] [Bangumi-Data] \u6309\u7167\u9879\u76EE\u89C4\u8303\uFF0C\u8BF7\u624B\u52A8\u6302\u8F7D\u6216\u521B\u5EFA .cache \u76EE\u5F55\u4EE5\u542F\u7528\u6301\u4E45\u5316\u3002"),_("warn","[Utils] [Bangumi-Data] \u672C\u6B21\u8FD0\u884C\u5DF2\u9000\u5316\u4E3A\u7EAF\u5185\u5B58\u6A21\u5F0F (\u91CD\u542F\u540E\u9700\u91CD\u65B0\u4E0B\u8F7D)\u3002"),LI=!0):LI||(_("info",`[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230 ${t} \u4E91\u73AF\u5883\uFF0C\u5F53\u524D\u8FD0\u884C\u4E8E\u7EAF\u5185\u5B58\u52A0\u901F\u6A21\u5F0F\u3002`),LI=!0),Oo&&Date.now()-GB>Fir&&(_("warn","[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230\u4E0B\u8F7D\u72B6\u6001\u9501\u6B7B (\u7531\u4E8E Serverless \u8FDB\u7A0B\u4F11\u7720/\u5F3A\u6740\u5BFC\u81F4)\uFF0C\u5F3A\u5236\u91CA\u653E\u9501..."),Oo=!1),Hn){if(s>0&&Date.now()-KB<i)return;e&&!Oo&&(_("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...`),Oo=!0,GB=Date.now(),uz(n).finally(()=>{Oo=!1}));return}if(n&&ga.default.existsSync(n))try{let a=ga.default.statSync(n),o=process.memoryUsage().heapUsed,c=Date.now();Hn=JSON.parse(ga.default.readFileSync(n,"utf-8")),Hn?.items?.length>0&&Hn.items[0]._flatText===void 0?(Hn=X8e(Hn),ga.default.writeFileSync(n,JSON.stringify(Hn),"utf-8"),lz(Hn.items)):Hn?.items?.length>0&&lz(Hn.items);let u=process.memoryUsage().heapUsed,l=Date.now()-c;gb=Math.max(0,(u-o)/1024/1024).toFixed(2);let d=(process.memoryUsage().rss/1024/1024).toFixed(2);KB=Date.now(),_("info",`[Utils] [Bangumi-Data] \u6210\u529F\u4ECE\u672C\u5730\u78C1\u76D8\u52A0\u8F7D\u57FA\u7840\u6570\u636E\uFF0C\u6761\u76EE\u6570: ${Hn.items.length}\uFF0C\u89E3\u6790\u8017\u65F6: ${l} ms\uFF0C\u7EA6\u5360\u5185\u5B58: ${gb} MB`),(s===0||Date.now()-a.mtimeMs>=i)&&e&&!Oo&&(_("info",`[Utils] [Bangumi-Data] \u78C1\u76D8\u6570\u636E${s===0?"\u5F3A\u5236\u66F4\u65B0":"\u5DF2\u8FC7\u671F"}\uFF0C\u4FDD\u7559\u8001\u6570\u636E\u670D\u52A1\u672C\u6B21\u8BF7\u6C42\uFF0C\u542F\u52A8\u540E\u53F0\u9759\u9ED8\u66F4\u65B0...`),Oo=!0,GB=Date.now(),uz(n).finally(()=>{Oo=!1}));return}catch(a){_("error","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u89E3\u6790\u5931\u8D25\uFF0C\u51C6\u5907\u91CD\u65B0\u4E0B\u8F7D",a.message),Hn=null}if(Oo){if(e){_("info","[Utils] [Bangumi-Data] \u6B63\u5728\u7B49\u5F85\u57FA\u7840\u6570\u636E\u4E0B\u8F7D\u5B8C\u6210...");let a=0;for(;Oo;){if(a>150){_("warn","[Utils] [Bangumi-Data] \u7B49\u5F85\u6392\u961F\u8D85\u65F6\uFF0C\u653E\u5F03\u7B49\u5F85"),Oo=!1;break}await new Promise(o=>setTimeout(o,100)),a++}}}else{_("info","[Utils] [Bangumi-Data] \u672A\u547D\u4E2D\u4EFB\u4F55\u6709\u6548\u7F13\u5B58\uFF0C\u6B63\u5728\u83B7\u53D6\u57FA\u7840\u6570\u636E..."),Oo=!0,GB=Date.now();let a=uz(n).finally(()=>{Oo=!1});e?await a:(_("info","[Utils] [Bangumi-Data] \u5F53\u524D\u975E\u6838\u5FC3\u8BF7\u6C42\uFF0C\u6570\u636E\u83B7\u53D6\u8F6C\u5165\u540E\u53F0\u5F02\u6B65\u6267\u884C"),r&&typeof r.waitUntil=="function"&&(_("info","[Utils] [Bangumi-Data] \u8C03\u7528 ctx.waitUntil \u5EF6\u957F Serverless \u751F\u547D\u5468\u671F"),r.waitUntil(a)))}}var zir=new Set(["anidb","bangumi","gamer","gamer_hk","bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw","tmdb"]);function X8e(t){if(!t||!t.items)return{items:[]};let e=[];for(let r of t.items){let n=[];if(r.sites){for(let o of r.sites)if(zir.has(o.site)){let c={site:o.site,id:o.id};o.season_id&&(c.season_id=String(o.season_id)),o.video_sn&&(c.video_sn=String(o.video_sn)),o.comment&&(c.comment=o.comment),o.related&&(c.related=o.related),n.push(c)}}if(n.length===0)continue;let s={title:r.title,type:r.type,sites:n};r.begin&&(s.begin=r.begin),r.titleTranslate&&(s.titleTranslate=r.titleTranslate);let i=r.title;if(r.titleTranslate)for(let o in r.titleTranslate){let c=r.titleTranslate[o];for(let u=0;u<c.length;u++)i+=c[u]}let a=Qt(i);s._flatText=Fr(a).toLowerCase().replace(J8e,""),e.push(s)}return{items:e}}async function uz(t){_("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;H8e=await Vir();let s=K8e[H8e]||K8e.custom,i={headers:{"Accept-Encoding":"br, gzip, deflate"}},a=s.map(()=>new AbortController);s.forEach(p=>{_("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${p}`)});let o=s.map(async(p,m)=>{let h=a[m],A=await cb(p,{...i,signal:h.signal});if(!A.ok)throw new Error(`HTTP error ${A.status} from ${p}`);let g=await A.json(),b=g.items?g.items.length:0;if(h.signal.aborted)throw new Error("Aborted before parsing");let y=Date.now(),x=X8e(g),v=Date.now()-y,I=null;return t&&!h.signal.aborted&&(I=`${t}.tmp${m}`,ga.default.writeFileSync(I,JSON.stringify(x),"utf-8")),{index:m,url:p,tempFilePath:I,resultData:x,pruneCost:v,originalCount:b}}),c=await Promise.any(o);a.forEach((p,m)=>{m!==c.index&&p.abort()}),t&&(s.forEach((p,m)=>{if(m!==c.index){let h=`${t}.tmp${m}`;if(ga.default.existsSync(h))try{ga.default.unlinkSync(h)}catch{}}}),ga.default.renameSync(c.tempFilePath,t));let u=((Date.now()-r)/1e3).toFixed(2);_("info",`[Utils] [Bangumi-Data] \u7CBE\u7B80\u6570\u636E\u5DF2\u6210\u529F\u5199\u5165\u78C1\u76D8 (\u8282\u70B9: ${new URL(c.url).hostname} ,\u9636\u6BB5\u8017\u65F6: ${u} \u79D2)`),Hn=c.resultData,n=c.pruneCost,lz(Hn.items),og.clear();let l=process.memoryUsage().heapUsed,d=((Date.now()-r)/1e3).toFixed(2);gb=Math.max(0,(l-e)/1024/1024).toFixed(2);let f=(process.memoryUsage().rss/1024/1024).toFixed(2);KB=Date.now(),_("info",`[Utils] [Bangumi-Data] \u52A0\u8F7D\u5230\u5185\u5B58\u6210\u529F\uFF0C\u4FDD\u7559/\u539F\u59CB\u6761\u76EE\u6570: ${Hn.items.length} / ${c.originalCount}\uFF0C\u5904\u7406\u8017\u65F6: ${n} ms\uFF0C\u5168\u94FE\u8DEF\u603B\u8017\u65F6: ${d} \u79D2\uFF0C\u51C0\u589E\u5185\u5B58: ${gb} MB (\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${f} MB)`)}catch(e){let r=e instanceof AggregateError?e.errors.map(n=>n.message).join(" | "):e.message;_("error","[Utils] [Bangumi-Data] \u4E0B\u8F7D\u5931\u8D25 (\u6240\u6709 CDN \u5747\u672A\u54CD\u5E94\u6216\u62A5\u9519):",r)}}async function Au(t,e){if(!Hn||!Hn.items)return[];let r=og.get(t);if(!r){if(r=(async()=>{let c=[],u=[t];try{u=[...new Set([t,Qt(t),No(t)])]}catch{}let d=[Qt(t)].map(h=>{let A=h.replace(J8e,"");return A=Fr(A).toLowerCase(),A.length>=2?A:Fr(h).toLowerCase()}).filter(h=>h.length>0),f=null;if(typeof U0<"u"&&U0.size>0&&d.length>0){let h=new Set;for(let A of d){let g=Array.from(new Set(A.replace(Hir,"")));if(g.length===0)continue;g.sort((x,v)=>{let I=U0.get(x)?.length||0,R=U0.get(v)?.length||0;return I-R});let b=U0.get(g[0]);if(!b||b.length===0)continue;let y=new Set(b);for(let x=1;x<g.length;x++){let v=U0.get(g[x]);if(!v){y.clear();break}let I=new Set(v);for(let R of y)I.has(R)||y.delete(R);if(y.size===0)break}for(let x of y)h.add(x)}f=Array.from(h)}else f=Hn.items.map((h,A)=>A);let p=Hn.items,m=u.length;for(let h=0;h<f.length;h++){let A=p[f[h]],g=!1;for(let b=0;b<m;b++){let y=u[b];if(yt(A.title,y)){g=!0;break}if(A.titleTranslate)for(let x in A.titleTranslate){let v=A.titleTranslate[x];for(let I=0;I<v.length;I++)if(v[I]&&yt(v[I],y)){g=!0;break}if(g)break}if(g)break}if(g){let b=[A.title];if(A.titleTranslate)for(let y in A.titleTranslate){let x=A.titleTranslate[y];for(let v=0;v<x.length;v++)b.push(x[v])}c.push({item:A,titles:b})}}return c})(),og.size>100){let c=og.keys().next().value;og.delete(c)}og.set(t,r)}let n=await r,s=n,i=Wt(t);if(i!==null){let c=n.filter(({item:u})=>{let l=Ct(u.title).season;if(l===null&&u.titleTranslate)for(let d in u.titleTranslate){let f=u.titleTranslate[d];for(let p=0;p<f.length;p++){let m=Ct(f[p]).season;if(m!==null){l=m;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=jir,o=[];for(let{item:c,titles:u}of s){if(!c.sites)continue;let l=c.sites.filter(d=>e.includes(d.site));for(let d of l){let f="TV\u52A8\u753B",p="tvseries";c.type==="movie"?(f="\u5267\u573A\u7248",p="movie"):c.type==="tv"?(f="TV\u52A8\u753B",p="tvseries"):c.type==="ova"?(f="OVA",p="ova"):c.type==="web"&&(f="WEB\u52A8\u753B",p="web");let m="";["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(d.site)&&(m="\uFF08\u6E2F\u6FB3\u53F0\uFF09");let h=[],A=[];if(d.comment){let b=d.comment.split(Qir),y=new Map;if(d.related&&Array.isArray(d.related))for(let x of d.related)x.id&&y.set(String(x.id),x.season_id||null);for(let x of b){let v=x.split(Gir);if(v.length>=2){let I=v[0].trim(),R=v[1].trim();R&&a.test(I)&&h.push({title:c.title,titles:[...u],begin:c.begin,siteId:R,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:` ${I}${m}`,season_id:y.get(R)||null})}else if(v.length===1&&v[0].trim()){let I=v[0].trim();a.test(I)&&A.push(I)}}}let g="";A.length>0&&(g+=` ${A.join(" ")}`),g+=m,o.push({title:c.title,titles:[...u],begin:c.begin,siteId:d.id,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:g,season_id:d.season_id||null,video_sn:d.video_sn||null}),o.push(...h)}}return o}function Z8e(t=!1){if(Hn!==null){let e=Hn.items?Hn.items.length:0;Hn=null,KB=0,og.clear(),U0.clear();let r=(process.memoryUsage().rss/1024/1024).toFixed(2);_("info",`[Utils] [Bangumi-Data] \u5185\u5B58\u7F13\u5B58\u5DF2\u4E3B\u52A8\u91CA\u653E (\u539F\u6761\u76EE\u6570: ${e}\uFF0C\u91CA\u653E: ${gb} MB\uFF0C\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${r} MB)`),gb="0.00",LI=!1}if(t&&ga.default.existsSync(VB))try{let e=zB.default.join(VB,Y8e);ga.default.existsSync(e)&&ga.default.unlinkSync(e);for(let r=0;r<5;r++){let n=`${e}.tmp${r}`;ga.default.existsSync(n)&&ga.default.unlinkSync(n)}_("info","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u5DF2\u540C\u6B65\u6E05\u7406")}catch(e){_("error",`[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ${e.message}`)}}Ot();ir();_t();so();kB();$T();$n();_V();hn();Ot();_t();ir();so();var JL=new Map;async function FT(t,e={}){let n=`https://api.tmdb.org/3/${t}`,s=O.makeProxyUrl(n);try{let i=await ge(s,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:e.signal});return i.status!=200?null:i}catch(i){if(i.name==="AbortError")throw i;return _("error","[Utils] [TMDB] Api error:",{message:i.message,name:i.name,stack:i.stack}),null}}async function XL(t,e="multi",r={}){let{page:n=1,maxPages:s=3,signal:i=null}=r;if(r.page!==void 0){let o=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${n}`;return await FT(o,{signal:i})}let a=[];for(let o=1;o<=s;o++){if(i&&i.aborted)throw new DOMException("Aborted","AbortError");let c=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${o}`,u=await FT(c,{signal:i});if(!u||!u.data)break;let l=typeof u.data=="string"?JSON.parse(u.data):u.data;if(!l.results||l.results.length===0||(a.push(...l.results),l.results.length<20))break}return _("info",`[Utils] [TMDB] \u5171\u83B7\u53D6\u5230 ${a.length} \u6761\u641C\u7D22\u7ED3\u679C\uFF08\u6700\u591A${s}\u9875\uFF09`),{data:{results:a},status:200}}async function S0r(t,e,r={}){let n=`${t}/${e}?api_key=${O.tmdbApiKey}&language=ja-JP`;return await FT(n,r)}async function mnt(t,e,r={}){let n=`${t}/${e}/external_ids?api_key=${O.tmdbApiKey}`;return await FT(n,r)}async function v0r(t,e,r={}){let n=`${t}/${e}/alternative_titles?api_key=${O.tmdbApiKey}`;return await FT(n,r)}function I0r(t,e,r=""){let n=t?.data?.results||t?.data?.titles||[];if(!n.length)return null;let s=(r||"").toLowerCase().trim(),i=o=>o.title||o.name||"",a=[o=>s&&i(o).toLowerCase().trim()===s,...["CN","TW","HK","SG"].map(o=>c=>(c.iso_3166_1||c.iso_639_1)===o&&!cf(i(c))),o=>!cf(i(o))];for(let o of a){let c=n.find(o);if(c){let u=i(c);return _("info",`[Utils] [TMDB] \u6309\u4F18\u5148\u7EA7\u7B56\u7565\u6210\u529F\u63D0\u53D6\u6700\u4F73\u4E2D\u6587\u522B\u540D: ${u}`),u}}return null}async function C0r(t,e,r=""){let n=t.name||t.title||"";if(r&&n.toLowerCase().trim()===r.toLowerCase().trim()||!(cf(n)||r&&n.toLowerCase().trim()!==r.toLowerCase().trim()))return n;_("info",`[Utils] [TMDB] \u5C1D\u8BD5\u83B7\u53D6\u4E2D\u6587\u522B\u540D\u4EE5\u5BFB\u627E\u66F4\u4F18\u5339\u914D (\u5F53\u524D\u6807\u9898: "${n}")`);let i=t.media_type||(t.name?"tv":"movie");try{if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let a=await v0r(i,t.id,{signal:e});if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let o=I0r(a,i,r);return o?(_("info",`[Utils] [TMDB] \u5C06\u4F7F\u7528\u4E2D\u6587\u522B\u540D\u8FDB\u884C\u76F8\u4F3C\u5339\u914D: ${o}`),o):(_("info",`[Utils] [TMDB] \u672A\u627E\u5230\u4E2D\u6587\u522B\u540D\uFF0C\u4F7F\u7528\u539F\u6807\u9898: ${n}`),n)}catch(a){if(a.name==="AbortError")throw a;return _("error",`[Utils] [TMDB] \u83B7\u53D6\u522B\u540D\u5931\u8D25: ${a.message}`),n}}async function Xb(t,e=null,r="Unknown"){let n=ynt(t);if(n!==t&&_("info",`[Utils] [TMDB] \u4F18\u5316\u641C\u7D22\u5173\u952E\u8BCD: "${t}" -> "${n}"`),O.useBangumiData){let o=await Au(n,["tmdb","bangumi","anidb"]);if(o&&o.length>0){let c=o[0],u=c.titles.find(d=>d&&d.includes(n))||c.titles[1]||c.title,l=c.title;return _("info",`[Utils] [TMDB] Bangumi-Data \u672C\u5730\u547D\u4E2D\uFF0C\u63D0\u53D6\u539F\u540D\u6210\u529F: \u539F\u540D=${l}, \u522B\u540D=${u}\uFF08\u68C0\u7D22\u8BCD\uFF1A${n}\uFF09`),{title:l,cnAlias:u}}}if(!O.tmdbApiKey)return _("info","[Utils] [TMDB] \u672A\u914D\u7F6EAPI\u5BC6\u94A5\uFF0C\u8DF3\u8FC7TMDB\u7F51\u7EDC\u641C\u7D22"),null;let s=JL.get(n);if(s)_("info",`[Utils] [TMDB] \u52A0\u5165\u6B63\u5728\u8FDB\u884C\u7684\u641C\u7D22: ${n} (${r})`);else{let o=new AbortController;s={controller:o,refCount:0,promise:(async()=>{try{let u=o.signal,l=P=>{let B=P.genre_ids||[],M=P.genres||[],D=B.length>0?B:M.map(W=>W.id),L=P.original_language||"";return D.includes(16)?{isValid:!0,reason:"\u660E\u786E\u52A8\u753B\u7C7B\u578B(genre_id: 16)"}:L==="ja"?{isValid:!0,reason:"\u539F\u59CB\u8BED\u8A00\u4E3A\u65E5\u8BED(ja),\u53EF\u80FD\u662F\u65E5\u5267/\u65E5\u5F71/\u65E5\u7EFC\u827A"}:{isValid:!1,reason:`\u975E\u52A8\u753B\u4E14\u975E\u65E5\u8BED\u5185\u5BB9(language: ${L}, genres: ${D.join(",")})`}},d=(P,B)=>{let M=J=>J.toLowerCase().replace(/\s+/g,"").replace(/[::、,。!?;""''()【】《》]/g,"").trim(),D=M(P),L=M(B);if(D===L)return 1;let Z=D.length<L.length?D:L,W=D.length>=L.length?D:L;if(W.includes(Z)&&Z.length>0)return .6+Z.length/W.length*.3;let F=P.length>B.length?P:B,K=P.length>B.length?B:P;if(F.length===0)return 1;let j=(J,se)=>{J=J.toLowerCase(),se=se.toLowerCase();let oe=[];for(let ue=0;ue<=J.length;ue++){let Ie=ue;for(let we=0;we<=se.length;we++)if(ue===0)oe[we]=we;else if(we>0){let qe=oe[we-1];J.charAt(ue-1)!==se.charAt(we-1)&&(qe=Math.min(Math.min(qe,Ie),oe[we])+1),oe[we-1]=Ie,Ie=qe}ue>0&&(oe[se.length]=Ie)}return oe[se.length]};return(F.length-j(F,K))/F.length};if(_("info",`[Utils] [TMDB] \u6B63\u5728\u641C\u7D22 (Shared Task): ${n}`),u.aborted)throw new DOMException("Aborted","AbortError");let f=await XL(n,"multi",{signal:u});if(!f||!f.data)return _("info","[Utils] [TMDB] TMDB\u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),null;let p=typeof f.data=="string"?JSON.parse(f.data):f.data;if(!p.results||p.results.length===0)return _("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),null;let m=[],h=[];for(let P of p.results){let B=l(P);if(B.isValid)m.push(P);else{let M=P.name||P.title||"\u672A\u77E5";h.push(`${M}(${B.reason})`)}}if(m.length===0)return _("info","[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u62E6\u622A: \u641C\u7D22\u7ED3\u679C\u4E2D\u6CA1\u6709\u4EFB\u4F55\u76EE\u6807\u7C7B\u578B(\u52A8\u753B/\u65E5\u6587)\u7684\u5185\u5BB9"),null;_("info",`[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u5B8C\u6210: \u4FDD\u7559 ${m.length} \u4E2A\u6709\u6548\u6761\u76EE\u53C2\u4E0E\u5339\u914D\uFF0C\u8FC7\u6EE4 ${h.length} \u4E2A\u65E0\u5173\u6761\u76EE${h.length>0?"\uFF0C\u8FC7\u6EE4\u8BE6\u60C5: "+h.join(", "):""}`);let A=null,g=-1,b=null,y=0,x=5,v=!1;for(let P of m){let B=P.name||P.title||"";if(!B)continue;let M=d(n,B),D=P.original_name||P.original_title||"",L=D?d(n,D):0,Z=Math.max(M,L);if(Z===1&&!v){v=!0,_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: 100.00% (\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22)`),Z>g&&(g=Z,A=P,b=B);continue}let W,F,K=B.toLowerCase().trim()===n.toLowerCase().trim();if(v||K)W=B,F=Z,v&&K?_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: ${(F*100).toFixed(2)}% (\u5DF2\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u522B\u540D\u641C\u7D22)`):_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: ${(F*100).toFixed(2)}%`);else{if(y<x)try{W=await C0r(P,u,n),W!==B&&y++}catch(se){if(se.name==="AbortError")throw se;_("error",`[Utils] [TMDB] \u5904\u7406\u7ED3\u679C\u5931\u8D25: ${se.message}`),W=B}else W=B,_("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);F=Math.max(j,L);let J=W!==B?`"${B}" (\u522B\u540D: ${W})`:`"${B}"`;_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 ${J} - \u76F8\u4F3C\u5EA6: ${(F*100).toFixed(2)}%`),F===1&&!v&&(v=!0,_("info","[Utils] [TMDB] \u901A\u8FC7\u522B\u540D\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22"))}F>g&&(g=F,A=P,b=W)}if(!A||g<.4)return _("info",`[Utils] [TMDB] \u6700\u4F73\u5339\u914D\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\u6216\u672A\u627E\u5230\u5339\u914D (${A?(g*100).toFixed(2)+"%":"N/A"}),\u8DF3\u8FC7`),null;_("info",`[Utils] [TMDB] TMDB\u6700\u4F73\u5339\u914D: ${b}, \u76F8\u4F3C\u5EA6: ${(g*100).toFixed(2)}%`);let R=A.media_type||(A.name?"tv":"movie"),w=await S0r(R,A.id,{signal:u}),N;if(!w||!w.data)N=A.name||A.title,_("info",`[Utils] [TMDB] \u4F7F\u7528\u4E2D\u6587\u641C\u7D22\u7ED3\u679C\u6807\u9898: ${N}`);else{let P=typeof w.data=="string"?JSON.parse(w.data):w.data;N=P.original_name||P.original_title||P.name||P.title,_("info",`[Utils] [TMDB] \u627E\u5230\u65E5\u8BED\u539F\u540D: ${N}`)}return{title:N,cnAlias:b}}catch(u){return u.name==="AbortError"?(_("info",`[Utils] [TMDB] \u540E\u53F0\u641C\u7D22\u4EFB\u52A1\u5DF2\u5B8C\u5168\u7EC8\u6B62 (${n})`),null):(_("error","[Utils] [TMDB] Background Search error:",{message:u.message,name:u.name,stack:u.stack}),null)}})().finally(()=>{JL.delete(n)})},JL.set(n,s),_("info",`[Utils] [TMDB] \u542F\u52A8\u65B0\u641C\u7D22\u4EFB\u52A1: ${n}`)}s.refCount++;let i=()=>{JL.get(n)===s&&(s.refCount--,s.refCount<=0&&(_("info",`[Utils] [TMDB] \u6240\u6709\u8C03\u7528\u8005\u5DF2\u53D6\u6D88\uFF0C\u7EC8\u6B62\u540E\u53F0\u8BF7\u6C42: ${n}`),s.controller.abort()))},a;if(e){if(e.aborted)return i(),_("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null;e.addEventListener("abort",i)}try{let o=new Promise((c,u)=>{e&&(a=()=>u(new DOMException("Aborted","AbortError")),e.addEventListener("abort",a))});return await Promise.race([s.promise,o])}catch(o){return o.name==="AbortError"?(_("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null):(_("error",`[Utils] [TMDB] \u641C\u7D22\u5F02\u5E38: ${o.message}`),null)}finally{e&&(e.removeEventListener("abort",i),a&&e.removeEventListener("abort",a))}}async function hnt(t,e=null,r=null){if(!cf(t))return t;if(O.useBangumiData){let i=ynt(t),a=Au(i,["tmdb","bangumi","anidb"]);if(a&&a.length>0){let o=a[0],c=o.titles.find(u=>u&&!cf(u))||o.titles[1];if(c&&!cf(c))return _("info",`[Utils] [TMDB] \u547D\u4E2D\u672C\u5730 Bangumi Data: ${t} -> ${c}\uFF08\u68C0\u7D22\u8BCD\uFF1A${i}\uFF09`),c}}let n=e!=null,s=n?"tv":"movie";try{let i=await XL(t,s);if(!i.data.results||i.data.results.length===0)return _("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),t;let o=i.data.results.find(u=>{let l=n?u.name:u.title;return l&&!cf(l)})||i.data.results[0],c=n?o.name:o.title;return c?(_("info",`\u539F\u6807\u9898: ${t} -> \u4E2D\u6587\u6807\u9898: ${c}`),c):t}catch(i){return _("error","\u67E5\u8BE2 TMDB \u65F6\u51FA\u9519:",i),t}}var gnt=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|åŠ‡å ´ç‰ˆ|ç»­[篇集]|å¤–ä¼ )(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/i,pnt=/[ ::~~]/;function Ant(t){let e=t.match(gnt);return e?e.index:t.length}function ynt(t){let e=Ant(t);return e<t.length?t.substring(0,e).trim():t}function Zb(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;_("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,Ant(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&&_("info",`[Utils] [TMDB] \u8BA1\u7B97\u51FA\u6700\u957F\u516C\u5171\u524D\u7F00 (LCP): "${s}"`);for(let i of t){let a=i.title||"";if(!(i.isLocalPriority||a.includes(e)))if(s&&s.length>1&&a.startsWith(s)){let o=a.substring(s.length).trim();i._displayTitle=o?`${e}${o.match(/^[~~::]/)?"":" "}${o}`:e,_("info",`[Utils] [TMDB] [LCP\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else{let o=a.match(pnt);if(o){let c=a.substring(0,o.index).trim(),u=a.substring(o.index);if(c&&gnt.test(c)){let l=u.trim().match(pnt),d=l?u.trim().substring(l.index):"";i._displayTitle=`${c} ${e}${d}`,_("info",`[Utils] [TMDB] [\u524D\u7F00\u4FDD\u62A4\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else i._displayTitle=e+u,_("info",`[Utils] [TMDB] [\u5206\u9694\u7B26\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else cf(a)?(i._displayTitle=e,_("info",`[Utils] [TMDB] [\u7EAF\u5916\u6587\u5168\u66FF\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)):_("info",`[Utils] [TMDB] [\u8DF3\u8FC7\u66FF\u6362] "${a}" \u542B\u6709\u4E2D\u6587\u4E14\u7279\u5F81\u4E0D\u7B26\uFF0C\u62D2\u7EDD\u5F3A\u5236\u5168\u66FF\u4EE5\u9632\u8BEF\u6740`)}}}Ot();_t();$n();so();hn();var Cu="$$$",Sg="&",T0r=!1,oi=Object.freeze({TITLE_STRUCTURE_CONFLICT:-.3,LANG_MATCH_CN:.15,LANG_MISMATCH:-.2,DATE_MATCH:0,EP_ALIGN:{MOVIE_TYPE_MISMATCH:-5,SPECIAL_STRICT_MISMATCH:-8,LANG_MATCH:3,LANG_MISMATCH:-5,SEASON_NUM_MISMATCH:-10,SPECIAL_TYPE_MISMATCH:-10,SPECIAL_TYPE_MATCH:3,IS_SPECIAL_MATCH:3,SEASON_SHIFT_EXACT:15,CN_STRICT_MATCH:25,CN_STRICT_MISMATCH:-5,NUMERIC_MATCH:2,PATTERN_CONSISTENCY_BONUS:2,ZERO_DIFF_BONUS_BASE:100,ZERO_DIFF_BONUS_PER_HIT:5}}),Hl=Object.freeze({SIMILARITY_MIN:.65,SIMILARITY_STRONG:.98,TIER_DEFAULT:.001,TIER_CN:.4,TIER_PART:.5,COLLECTION_RATIO:4,COLLECTION_DIFF:6});function mt(t,...e){typeof e[0]=="string"&&e[0].includes("[Merge-Check]")&&!T0r||_(t,...e)}var ye={Lang:{CN:/(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])(?:版)?/,JP:/(æ—¥[语語]|日配|原版|原[声聲])(?:版)?/,CN_DUB_VER:/(\(|(|\[)?(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])版?(\)|)|\])?/g,JP_DUB_VER:/(\(|(|\[)?(æ—¥[语語]|日配|原版|原[声聲])版?(\)|)|\])?/g,KEYWORDS_STRONG:/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|æ—¥[语語]|日配|原版|原[声聲])(?:版)?/g,CN_STD:/普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]/g,JP_STD:/æ—¥[语語]|日配|原版|原[声聲]/g},Season:{PURE_PART:/^(?:(?:第|S(?:eason)?)\s*\d+(?:å­£|期|部)?|(?:Part|P|第)\s*\d+(?:部分)?)$/i,PART_NORM:/第\s*(\d+)\s*部分/g,PART_NORM_2:/(?:Part|P)[\s.]*(\d+)/gi,FINAL:/(?:The\s+)?Final\s+Season/gi,NORM:/(?:Season|S)\s*(\d+)/gi,CN:/第\s*([一二三四五六七八九十])\s*å­£/g,ROMAN:/(\s|^)(IV|III|II|I)(\s|$)/g,INFO_STRONG:/(?:season|s|第)\s*[0-9一二三四五六七八九十]+\s*(?:å­£|期|部(?!分))?/gi,PART_INFO_STRONG:/(?:part|p|第)\s*\d+\s*(?:部分)?/gi,PART_ANY:/(?:part|p)\s*\d+/gi,CN_STRUCTURE:/(?:^|\s|×\d+\s?)(承|转|结)(?=$|[\s\(\(\[【])/i,SUFFIX_AMBIGUOUS:/(?:[\s\u4e00-\u9fa5]|^)(S|T|R|II|III|IV)(?=$|[\s\(\(\[【])/i,SUFFIX_SEQUEL:/(?:续篇|续集|The Sequel)/i},Clean:{NA_TAG:/(\(|(|\[)N\/A(\)|)|\])/gi,SOURCE_TAG:/【.*?】/g,REGION_LIMIT:/(\(|(|\[)仅限.*?地区(\)|)|\])/g,PUNCTUATION:/[!!??,,.。、~~::\-–—_]/g,WHITESPACE:/\s+/g,FROM_SUFFIX:/\s*from\s+.*$/i,PARENTHESES_CONTENT:/(\(|(|\[).*?(\)|)|\])/g,MOVIE_KEYWORDS:/剧场版|åŠ‡å ´ç‰ˆ|the\s*movie|theatrical|movie|film|电影/gi,LONE_VER_CHAR:/(\s|^)版(\s|$)/g,NON_ALPHANUM_CN:/[^\u4e00-\u9fa5a-zA-Z0-9]/g,META_SUFFIX:/(\(|(|\[)(续篇|TV版|æ— ä¿®|æœªåˆ å‡|完整版)(\)|)|\])/gi,YEAR_TAG:/(\(|(|\[)\d{4}(\)|)|\]).*$/i,SUBTITLE_SEPARATOR:/^[\s::\-–—((\[【]/,SPACE_STRUCTURE:/.+[\s\u00A0\u3000].+/,SPLIT_SPACES:/[\s\u00A0\u3000]+/,REDUNDANT_SEPARATOR:/[\s::~~]/,REDUNDANT_UNSAFE_END:/[\(\(\[【::~~\-]$/,REDUNDANT_VALID_CHARS:/[\u4e00-\u9fa5a-zA-Z]{2,}/},Episode:{SUFFIX_DIGIT:/_\d+(?=$|\s)/g,FILE_NOISE:/_(\d{2,4})(?=\.)/g,SEASON_PREFIX:/(?:^|\s)(?:第\s*[0-9一二三四五六七八九十]+\s*å­£|S(?:eason)?\s*\d+)(?:\s+|_)/gi,CLEAN_SMART:/(?:^|\s)(?:EP|E|Vol|Episode|No|Part|第)\s*\d+(?:\.\d+)?(?:\s*[话話集])?(?!\s*[季期部])/gi,PUNCTUATION:/[!!??,,.。、~~::\-–—]/g,DANDAN_TAG:/^【(dandan|animeko)】/i,SPECIAL_START:/^S\d+/i,MOVIE_CHECK:/剧场版|åŠ‡å ´ç‰ˆ|movie|film/i,PV_CHECK:/(pv|trailer|预告)/i,SPECIAL_CHECK:/^(s|o|sp|special)\d/i,SEASON_MATCH:/(?:^|\s)(?:第|S)\s*(\d+)\s*[å­£S]/i,NUM_STRATEGY_A:/(?:第|s)\s*(\d+)\s*[å­£s]\s*(?:第|ep|e)\s*(\d+)/i,NUM_STRATEGY_B:/(?:ep|e|vol|episode|chapter|no|part|第)\s*(\d+(\.\d+)?)(?:\s*[话話集])?(?!\s*[季期部])/i,NUM_STRATEGY_C:/(?:^|\s)(?:第)?(\d+(\.\d+)?)(?:话|集|\s|$)/,DANDAN_IGNORE:/^[SC]\d+/i,MAP_EXCLUDE_KEYWORDS:/(?:^|\s)(?:PV|OP|ED|SP|Special|Drama|OAD|OVA|Opening|Ending|特番|特典|Behind\s+the\s+Scenes|Making|Interview)(?:\s|$|[::])/i,SINK_TITLE_STRICT:/^(?:S\d+|C\d+|SP\d*|OP\d*|ED\d*|PV\d*|Trailers?|Interview|Making|特番|特典)(?:\s|$|[::.\-]|\u3000)/i},Category:{ANIME_KW:/(动画|TV动画|动漫|日漫|国漫)/,REAL_KW:/(电视剧|真人剧|综艺|纪录片)/,ANIMEKO_SOURCE:/animeko/i},Similarity:{CN_STRICT_CORE_REMOVE:/[0-9a-zA-Z\s第季集话partEPep._\-–—::【】()()]/gi}},t4=[{regex:/(?:\s|^)A's$/i,val:"S2"},{regex:/(?:\s|^)StrikerS$/i,val:"S3"},{regex:/(?:\s|^)ViVid$/i,val:"S4"},{regex:/(?:\s|^)SuperS$/i,val:"S4"}],w0r=[{regex:/(?:第)?\s*(\d+)\s*(?:å­£|期|部(?!分))/,prefix:"S"},{regex:/\bseason\s*(\d+)/i,prefix:"S"},{regex:/\bs\s*(\d+)\b/i,prefix:"S"},{regex:/\bpart\s*(\d+)/i,prefix:"P"},{regex:/\b(ova|oad)\d*\b/i,val:"OVA"},{regex:/(剧场版|åŠ‡å ´ç‰ˆ|the\s*movie|theatrical|movie|film|电影)/i,val:"MOVIE"},{regex:/(续篇|续集)/,val:"SEQUEL"},{regex:/\b(sp|special)\d*\b/i,val:"SP"},{regex:/[^0-9](\d)$/,prefix:"S",useCleaned:!0}],R0r=[{seriesKeywords:["\u7F8E\u5C11\u5973\u6218\u58EB"],mappings:[{markers:["R"],targetStandard:"\u7B2C\u4E8C\u5B63"},{markers:["S"],targetStandard:"\u7B2C\u4E09\u5B63"},{markers:["SuperS","Super S"],targetStandard:"\u7B2C\u56DB\u5B63"},{markers:["Sailor Stars","\u6700\u540E\u7684\u661F\u5149"],targetStandard:"\u7B2C\u4E94\u5B63"}]},{seriesKeywords:["\u5C0F\u6797\u5BB6\u7684\u9F99\u5973\u4EC6"],mappings:[{markers:["S"],targetStandard:"\u7B2C\u4E8C\u5B63"}]},{seriesKeywords:["\u53EF\u80FD\u6210\u4E3A\u604B\u4EBA","\u4E0D\u884C"],mappings:[{markers:["NEXT SHINE","\u518D\u6B21\u95EA\u8000"],targetStandard:"\u7EED\u7BC7"}]},{seriesKeywords:["\u7EA2\u732A","\u5343\u4E0E\u5343\u5BFB","\u9F99\u732B"],defaultStandard:"\u5267\u573A\u7248"}];function N0r(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Sie(t){if(typeof structuredClone=="function")try{return structuredClone(t)}catch{}return JSON.parse(JSON.stringify(t))}function co(t){if(!t)return"Unspecified";let e=t.toLowerCase();return ye.Lang.CN.test(e)?"CN":ye.Lang.JP.test(e)?"JP":"Unspecified"}function Rnt(t){if(!t)return"";let e=t,r=e.toUpperCase();for(let n of R0r){if(!n.seriesKeywords.every(a=>r.includes(a.toUpperCase())))continue;let i=!1;if(n.mappings)for(let a of n.mappings)a.markers.forEach(o=>{let c=new RegExp(N0r(o),"gi");c.test(e)&&(e=e.replace(c,` ${a.targetStandard} `),i=!0)});!i&&n.defaultStandard&&(e+=` ${n.defaultStandard} `)}return e}function K0(t){if(!t)return"";let e=Qt(t);e=e.replace(ye.Clean.NA_TAG,""),e=e.replace(ye.Season.PART_NORM,"part $1"),e=e.replace(ye.Season.PART_NORM_2,"part $1"),e=e.replace(ye.Season.FINAL,"\u6700\u7EC8\u5B63"),e=e.replace(ye.Season.NORM,"\u7B2C$1\u5B63");let r={\u4E00:"1",\u4E8C:"2",\u4E09:"3",\u56DB:"4",\u4E94:"5",\u516D:"6",\u4E03:"7",\u516B:"8",\u4E5D:"9",\u5341:"10"};return e=e.replace(ye.Season.CN,(n,s)=>`\u7B2C${r[s]}\u5B63`),e=e.replace(ye.Season.ROMAN,(n,s,i,a)=>`${s}\u7B2C${{I:"1",II:"2",III:"3",IV:"4"}[i]}\u5B63${a}`),e=e.replace(ye.Lang.CN_DUB_VER,"\u4E2D\u914D\u7248"),e=e.replace(ye.Lang.JP_DUB_VER,""),e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Clean.REGION_LIMIT,""),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(ye.Clean.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(ye.Clean.WHITESPACE," ").toLowerCase().trim()}function wc(t){if(!t)return"";let e=Rnt(t);e=Qt(e);let r=e.match(/^(?:【|\[)(.+?)(?:】|\])/);if(r){let n=r[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(n)||(e=e.replace(r[0],n+" "))}return e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Clean.FROM_SUFFIX,""),e=e.replace(ye.Clean.NA_TAG,""),e=e.replace(ye.Clean.PARENTHESES_CONTENT,""),e=e.replace(ye.Season.INFO_STRONG,""),e=e.replace(ye.Season.PART_INFO_STRONG,""),e=e.replace(ye.Clean.MOVIE_KEYWORDS,""),e=e.replace(ye.Lang.KEYWORDS_STRONG,""),e=e.replace(ye.Clean.LONE_VER_CHAR,""),e=e.replace(ye.Clean.NON_ALPHANUM_CN,""),e.toLowerCase()}function eE(t){if(!t)return"";let e=Qt(t);return e=e.replace(ye.Episode.SUFFIX_DIGIT,""),e=e.replace(ye.Episode.FILE_NOISE,""),e=e.replace(ye.Episode.SEASON_PREFIX," "),e=e.replace(ye.Episode.CLEAN_SMART," "),e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Lang.CN_STD,"\u4E2D\u6587"),e=e.replace(ye.Lang.JP_STD,"\u65E5\u6587"),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(ye.Episode.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(ye.Clean.WHITESPACE," ").toLowerCase().trim()}function xnt(t){return t?t.replace(ye.Clean.PARENTHESES_CONTENT,"").trim():""}function Iie(t){if(!t)return"";let e=String(t).split(Cu)[0].trim();if(e.startsWith("//"))return"https:"+e;let r=e.match(/^([^:]+):(.+)$/);if(r){let n=r[1].toLowerCase(),s=r[2];return n==="http"||n==="https"?e:/^https?:\/\//i.test(s)?s:s.startsWith("//")?"https:"+s:s}return e}function bnt(t){if(!t||t==="N/A")return{year:null,month:null};let e=new Date(t),r=e.getTime();if(isNaN(r))return{year:null,month:null};let n=e.getFullYear();return n>2030?{year:null,month:null}:{year:n,month:e.getMonth()+1}}function O0r(t,e){let r=t.length,n=e.length;if(r===0)return n;if(n===0)return r;let s=new Array(n+1),i=new Array(n+1);for(let a=0;a<=n;a++)s[a]=a;for(let a=1;a<=r;a++){i[0]=a;let o=t.charCodeAt(a-1);for(let u=1;u<=n;u++){let l=o===e.charCodeAt(u-1)?0:1;i[u]=Math.min(i[u-1]+1,s[u]+1,s[u-1]+l)}let c=s;s=i,i=c}return s[n]}function P0r(t,e){if(!t||!e)return 0;let r=new Set(t.replace(ye.Clean.WHITESPACE,"")),n=new Set(e.replace(ye.Clean.WHITESPACE,"")),s=r.size,i=n.size;if(s===0&&i===0)return 1;if(s===0||i===0)return 0;let a=0,[o,c]=s<i?[r,n]:[n,r];for(let u of o)c.has(u)&&a++;return 2*a/(s+i)}function G0(t,e){if(!t||!e)return 0;let r=wc(t),n=wc(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=O0r(r,n),u=a===0?1:1-c/a,l=new Set(r.replace(ye.Clean.WHITESPACE,"")),d=new Set(n.replace(ye.Clean.WHITESPACE,"")),f=l.size,p=d.size;if(f===0||p===0)return 0;let m=0,[h,A]=f<p?[l,d]:[d,l];for(let x of h)A.has(x)&&m++;let g=2*m/(f+p),b=0,y=Math.min(f,p);return y>2&&(b=m/y,b>.6&&y/Math.max(f,p)<.6&&(b-=.25)),Math.max(u,g,b)}function uo(t,e="",r=[]){let n=new Set,s=K0(e||""),i=l=>{let d=K0(Rnt(l)),f=d.replace(ye.Season.PART_ANY,""),p=f.match(ye.Season.CN_STRUCTURE);if(p){let A={\u627F:"S2",\u8F6C:"S3",\u7ED3:"S4"};A[p[1]]&&n.add(A[p[1]])}if(w0r.forEach(A=>{let g=(A.useCleaned?f:d).match(A.regex);g&&n.add(A.prefix?`${A.prefix}${parseInt(g[1])}`:A.val)}),!t4.some(A=>{if(A.regex.test(f))return n.add(A.val),!0})){let A=f.match(ye.Season.SUFFIX_AMBIGUOUS);if(A){n.add("AMBIGUOUS");let g={II:"S2",III:"S3",IV:"S4"},b=A[1].toUpperCase();g[b]&&n.add(g[b])}}ye.Season.SUFFIX_SEQUEL.test(d)&&n.add("SEQUEL");let h={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,final:99};for(let[A,g]of Object.entries(h))d.includes(`\u7B2C${A}\u5B63`)&&n.add(`S${g}`)};[t,...Array.isArray(r)?r:[]].filter(Boolean).forEach(i),s.includes("\u7EED\u7BC7")&&n.add("SEQUEL"),/(剧场版|movie|film|电影)/i.test(s)&&n.add("MOVIE"),/\b(ova|oad)\b/i.test(s)&&n.add("OVA"),/\b(sp|special)\b/i.test(s)&&n.add("SP");let a=Array.from(n),o=a.some(l=>l.startsWith("S")),c=a.some(l=>l.startsWith("P")),u=["MOVIE","OVA","SP","SEQUEL","AMBIGUOUS"].some(l=>n.has(l));return c&&!o&&n.add("S1"),!o&&!c&&!u&&n.add("S1"),n}function Ei(t,e="",r=[]){let n=uo(t,e,r),s=null;for(let i of n)if(i.startsWith("S")){let a=parseInt(i.substring(1));isNaN(a)||(s===null||a>s)&&(s=a)}return s}function vg(t,e){let r=(t+" "+(e||"")).toLowerCase(),n=r.includes("\u7535\u5F71"),s=r.includes("\u7535\u89C6\u5267");return n&&!s?"MOVIE":s&&!n?"TV":null}function tE(t,e,r){if(r&&ye.Category.ANIMEKO_SOURCE.test(r))return"ANIME";let n=(t+" "+(e||"")).toLowerCase();return ye.Category.ANIME_KW.test(n)?"ANIME":ye.Category.REAL_KW.test(n)?"REAL":"UNKNOWN"}function k0r(t,e,r=!0){if(!t||!e||wc(t)===wc(e))return!1;let n=d=>{if(!d)return"";let f=Qt(d);return f=f.replace(ye.Clean.META_SUFFIX,"").replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").replace(ye.Clean.WHITESPACE," "),f.trim().toLowerCase()},s=n(t),i=n(e);if(s===i)return!1;let a=d=>{let f=[":","\uFF1A"," code:"," code\uFF1A"," season"," part"];for(let m of f){let h=d.indexOf(m);if(h!==-1)return d.substring(h).trim()}let p=d.split(ye.Clean.WHITESPACE);return p.length>=2?p.slice(1).join(" "):null},o=a(s),c=a(i),[u,l]=s.length<i.length?[s,i]:[i,s];if(l.startsWith(u)){if(l.length===u.length)return!1;let d=l[u.length];if(ye.Clean.SUBTITLE_SEPARATOR.test(d)){let f=l.slice(u.length).replace(ye.Clean.SUBTITLE_SEPARATOR,"").trim();if(!r&&f.length>1||f.length>2)return!0}}return!!(o&&c&&P0r(o,c)<.2)}function Nnt(t,e,r,n){if(!((r||"").includes("\u5267\u573A\u7248")||(n||"").includes("\u5267\u573A\u7248")))return!1;let i=c=>c?Qt(c).replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim():"",a=i(t),o=i(e);if(ye.Clean.SPACE_STRUCTURE.test(a)&&ye.Clean.SPACE_STRUCTURE.test(o)){let c=d=>{let f=d.split(ye.Clean.SPLIT_SPACES);return f.length>1?f.slice(1).join(" "):""},u=c(a),l=c(o);return!(ye.Season.PURE_PART.test(u)||ye.Season.PURE_PART.test(l))}return!1}function D0r(t,e,r,n,s,i,a="",o=""){let c=tE(t,r,a),u=tE(e,n,o);if(c==="REAL"&&u==="ANIME"||c==="ANIME"&&u==="REAL")return!0;let l=(r||"").includes("3D"),d=(n||"").includes("3D"),f=(r||"").includes("2D"),p=(n||"").includes("2D"),m=!l&&!f,h=!d&&!p;if(!m&&h?/3[dD]/.test(e)?d=!0:/2[dD]/.test(e)&&(p=!0):!h&&m&&(/3[dD]/.test(t)?l=!0:/2[dD]/.test(t)&&(f=!0)),(l||f)&&(d||p)&&l!==d)return!0;let b=vg(t,r),y=vg(e,n);return!b||!y||b===y||Nnt(t,e,r,n)?!1:s>0&&i>0?Math.abs(s-i)>5:!0}function B0r(t,e,r,n,s=[],i=[]){let a=uo(t,r,s),o=uo(e,n,i);if(a.size===0&&o.size===0)return!1;let c=f=>Array.from(f).some(p=>p.startsWith("S")&&parseInt(p.substring(1))>=2),u=f=>f.has("SEQUEL"),l=f=>f.has("AMBIGUOUS"),d=f=>f.has("S1");if(a.size>0&&o.size>0){if(l(a)&&d(o)||l(o)&&d(a))return!0;if(l(a)&&(c(o)||u(o))||l(o)&&(c(a)||u(a))||c(a)&&u(o)||c(o)&&u(a))return!1;for(let f of a)if(f.startsWith("S")){let p=o.has(f),m=Array.from(o).some(h=>h.startsWith("S"));if(!p&&m)return!0}return!1}return a.size!==o.size?!Nnt(t,e,r,n):!1}function L0r(t,e,r,n,s=[],i=[]){let a=uo(t,r,s),o=uo(e,n,i),c=Array.from(a).filter(l=>l.startsWith("S")),u=Array.from(o).filter(l=>l.startsWith("S"));return c.length>0&&u.length>0?c.some(l=>u.includes(l)):!1}function M0r(t,e,r=!1){if(!t.year||!e.year)return .05;let n=t.year-e.year;if(n===0){if(t.month&&e.month){let i=Math.abs(t.month-e.month);return i>2?0:i===0?.2:.1}return .1}let s=Math.abs(n);return r&&s<=10?0:s>1?-1:0}function W0r(t,e,r,n,s,i=!1){if(/^(dandan|animeko)$/i.test(n)||/^(dandan|animeko)$/i.test(s))return!0;if(i){let c=Math.min(e,r);return c>0&&t/c>.5?!0:!(t<2)}let a=Math.max(e,r);if(a===0)return!1;let o=t/a;return!(a>5&&o<.18)}function ZL(t){if(!t)return null;let e=t.toLowerCase();return e.includes("opening")?"opening":e.includes("ending")?"ending":e.includes("interview")?"interview":e.includes("bloopers")?"Bloopers":null}function Aa(t,e=""){let r=!1,n=e;if(t){let m=t.match(ye.Episode.DANDAN_TAG);m&&(n=m[1].toLowerCase())}if(/^(dandan|animeko)$/i.test(n)&&t){let m=t.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();(ye.Episode.SPECIAL_START.test(m)||ye.Episode.DANDAN_IGNORE.test(m))&&(r=!0)}let i=K0(t||""),a=ye.Episode.MOVIE_CHECK.test(i),o=ye.Episode.PV_CHECK.test(i),c=null,u=null,l=ZL(t),d=o||r||!!l||ye.Episode.SPECIAL_CHECK.test(i),f=i.match(ye.Episode.SEASON_MATCH);f&&(u=parseInt(f[1]));let p=i.match(ye.Episode.NUM_STRATEGY_A);if(p)c=parseFloat(p[2]);else{let m=i.match(ye.Episode.NUM_STRATEGY_B);if(m)c=parseFloat(m[1]);else{let h=i.match(ye.Episode.NUM_STRATEGY_C);h&&(c=parseFloat(h[1]))}}return{isMovie:a,num:c,isSpecial:d,isPV:o,season:u,isStrictSpecial:r}}function Cie(t,e,r=""){if(!t)return[];let s=["animeko","bilibili","bilibili1","bahamut","dandan"].includes(r);if(!e||s)return t.map((o,c)=>({link:o,originalIndex:c}));let i=[],a=[];if(t.forEach((o,c)=>{let u=o.title||o.name||"";e.test(u)?a.push(u):i.push({link:o,originalIndex:c})}),a.length>0){let o=r?`[${r}] `:"";mt("info",`[Merge-Check] ${o}\u547D\u4E2DEPISODE_TITLE_FILTER\u8FC7\u6EE4\uFF0C\u5DF2\u524D\u7F6E\u5254\u9664 ${a.length} \u96C6: ${a.join(", ")}`)}return i}var Ent=new Map;function e4(t,e,r){if(!t||t.length<2||!e)return"";let n=l=>{if(!l||!r)return l||"";try{let d=Ent.get(r);if(!d){let f=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");d=new RegExp(`(\\[|\u3010|\\s)?${f}(\\]|\u3011|\\s)?`,"gi"),Ent.set(r,d)}return l.replace(d,"").trim()}catch{return l}},s=n(e),i=s.match(ye.Clean.REDUNDANT_SEPARATOR);i&&(s=s.substring(0,i.index));let a=t.map(l=>{let d=l.link||l;return d?n(d.title||d.name||""):""});if(a.some(l=>!l))return"";let o=(l,d)=>{let f="";for(let p=0;p<l.length;p++)for(let m=p+1;m<=l.length;m++){let h=l.substring(p,m);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(ye.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&&(ye.Clean.REDUNDANT_VALID_CHARS.test(u)||u.length>3)?(mt("info",`[Merge-Check] \u68C0\u6D4B\u5230\u96C6\u5185\u5197\u4F59\u6807\u9898\u5B57\u6BB5: "${u}" (\u5DF2\u5FFD\u7565\u6765\u6E90: ${r}, \u951A\u5B9A\u9A8C\u8BC1\u901A\u8FC7)`),u):""}function _nt(t,e){let r=new Set;if(!t)return r;let n=-1;for(let s=0;s<t.length;s++){let i=t[s].title||t[s].name||"",a=Aa(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=Aa(a,e);o.num!==null&&!o.isSpecial&&!o.isPV&&o.num%1!==0&&i<n&&r.add(o.num)}),r}function Snt(t,e,r,n){let s=[],i=[],a=0;t.forEach(o=>{let c=o.title||o.name||"",u=Aa(c,r);u.num!==null&&e.has(u.num)?(i.push(o),a++):s.push(o)}),a>0&&(t.length=0,t.push(...s,...i),mt("info",`[Merge-Check] [${n}] \u81EA\u52A8\u6C89\u5E95: \u79FB\u52A8\u4E86 ${a} \u4E2A\u4E2D\u95F4\u63D2\u503C\u96C6\u6570 (${Array.from(e).join(",")}) \u5230\u672B\u5C3E`))}function vnt(t,e,r="Unspecified",n="Unspecified",s="",i="",a="",o=""){if(t.length===0||e.length===0)return 0;let c=e4(t,a,s),u=e4(e,o,i),l=(R,w)=>R?w&&R.includes(w)?R.replace(w,""):R:"",d=(R,w,N,P)=>{let B=R.link.title||"",M=l(B,P),D=Aa(M,w),L=co(M),Z=L!=="Unspecified"?L:N,W=Z==="Unspecified"&&/^(dandan|animeko)$/i.test(w)?"JP":Z,F=eE(M),K=W==="CN"?M.replace(ye.Similarity.CN_STRICT_CORE_REMOVE,""):null;return{info:D,effLang:W,specialType:ZL(M),cleanEpText:F,strictCnCore:K}},f=t.map(R=>d(R,s,r,c)),p=e.map(R=>d(R,i,n,u)),m=null,h=null;f.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(m=m===null?R.num:Math.min(m,R.num))}),p.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(h=h===null?R.num:Math.min(h,R.num))});let A=m!==null&&h!==null?m-h:null,g=15,b=A!==null?-A:0,y=Math.max(Math.min(-g,b-g),-Math.max(t.length,e.length)),x=Math.min(Math.max(g,b+g),Math.max(t.length,e.length)),v=0,I=-9999;for(let R=y;R<=x;R++){let w=0,N=0,P=0,B=new Map,M=!1,D=null;for(let L=0;L<e.length;L++){let Z=L+R;if(Z<0||Z>=t.length)continue;let W=f[Z],F=p[L],K=W.info,j=F.info,J=0;K.isMovie!==j.isMovie&&(J+=oi.EP_ALIGN.MOVIE_TYPE_MISMATCH),(K.isStrictSpecial&&!j.isSpecial||j.isStrictSpecial&&!K.isSpecial)&&(J+=oi.EP_ALIGN.SPECIAL_STRICT_MISMATCH);let se=W.effLang==="Unspecified"?"JP":W.effLang,oe=F.effLang==="Unspecified"?"JP":F.effLang;se===oe?J+=oi.EP_ALIGN.LANG_MATCH:J+=oi.EP_ALIGN.LANG_MISMATCH,K.season!==null&&j.season!==null&&K.season!==j.season&&(J+=oi.EP_ALIGN.SEASON_NUM_MISMATCH),(W.specialType||F.specialType)&&(W.specialType!==F.specialType?J+=oi.EP_ALIGN.SPECIAL_TYPE_MISMATCH:J+=oi.EP_ALIGN.SPECIAL_TYPE_MATCH),K.isSpecial===j.isSpecial&&(J+=oi.EP_ALIGN.IS_SPECIAL_MATCH),A!==null&&!K.isSpecial&&!j.isSpecial&&K.num-j.num===A&&(J+=oi.EP_ALIGN.SEASON_SHIFT_EXACT,M=!0);let ue=0;W.effLang==="CN"&&F.effLang==="CN"&&W.strictCnCore&&F.strictCnCore&&(W.strictCnCore.includes(F.strictCnCore)||F.strictCnCore.includes(W.strictCnCore))?ue=K.num!==null&&j.num!==null&&K.num===j.num?oi.EP_ALIGN.CN_STRICT_MATCH:oi.EP_ALIGN.CN_STRICT_MISMATCH:ue=G0(W.cleanEpText,F.cleanEpText),J+=ue,N+=ue,K.num!==null&&j.num!==null&&K.num===j.num&&(J+=oi.EP_ALIGN.NUMERIC_MATCH);let Ie=1;if(K.num!==null&&!K.isSpecial&&(D!==null&&K.num-D>1?Ie=.1:D=K.num),J*=Ie,ue*=Ie,N+=ue,w+=J,K.num!==null&&j.num!==null){let we=(j.num-K.num).toFixed(4);B.set(we,(B.get(we)||0)+Ie)}P++}if(P>0){let L=w/P,Z=0;for(let j of B.values())Z=Math.max(Z,j);let W=Z/P,F=N/P;W>.6&&(M||F>.33)&&(L+=oi.EP_ALIGN.PATTERN_CONSISTENCY_BONUS),L+=Math.min(P*.15,1.5);let K=B.get("0.0000")||0;K>3?(L+=oi.EP_ALIGN.ZERO_DIFF_BONUS_BASE,L+=K*oi.EP_ALIGN.ZERO_DIFF_BONUS_PER_HIT):K>0&&(L+=K*2),L>I&&(I=L,v=R)}}return I>.3?v:0}function $0r(t,e,r){let n=new Map,s=[];for(let o of t){if(r&&r.has(o.animeId))continue;let c=O.animes.find(f=>String(f.animeId)===String(o.animeId))||o;if(tE(c.animeTitle,c.typeDescription,c.source)==="REAL"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u771F\u4EBA\u5267/REAL)`);continue}if(vg(c.animeTitle,c.typeDescription)==="MOVIE"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u7535\u5F71/MOVIE)`);continue}let d=Ei(c.animeTitle,c.typeDescription,c.aliases);if(d!==null&&c.links){let p=Cie(c.links,e,c.source).filter(m=>{let h=m.link.title||m.link.name||"",g=K0(h).replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();return!(/^(dandan|animeko)$/i.test(c.source)&&(ye.Episode.SPECIAL_CHECK.test(g)||ye.Episode.DANDAN_IGNORE.test(g))||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(g)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(h))}).length;if(p>0){n.has(d)||n.set(d,new Map);let m=n.get(d);m.has(p)||m.set(p,[]),m.get(p).push(c.source),s.push(` [\u91C7\u7EB3] [${c.source}] S${d} = ${p}\u96C6 ("${c.animeTitle}")`)}else s.push(` [\u5FFD\u7565] [${c.source}] S${d} (\u6709\u6548\u96C6\u6570\u4E3A 0)`)}}let i=new Map,a=[];for(let[o,c]of n.entries()){let u=0,l=0,d=[];for(let[p,m]of c.entries()){let h=m.length;h>l?(l=h,u=p,d=m):h===l&&p<u&&(u=p,d=m)}i.set(o,u);let f=Array.from(c.entries()).map(([p,m])=>`${p}\u96C6(x${m.length})[${m.join(",")}]`).join(", ");a.push(`S${o}=${u} (\u63A8\u65AD\u6765\u6E90: ${d.join(",")} | \u7EDF\u8BA1: ${f})`)}return(s.length>0||a.length>0)&&mt("info",`[Merge-Check] [Map-Build] \u5B63\u5EA6\u5730\u56FE\u6784\u5EFA\u8BE6\u60C5:
${s.join(`
`)}
=> \u6700\u7EC8\u5224\u5B9A: { ${a.join("; ")} }`),i}function F0r(t,e,r=""){let n=`${t}_${e}_${r}`,s=0;for(let i=0;i<n.length;i++)s=(s<<5)-s+n.charCodeAt(i)|0;return Math.abs(s)%1e9+1e9}function Int(t,e){let r=t.link,n=r.title||r.name||`Episode ${t.originalIndex+1}`,s=r.url||"";s&&(s=Iie(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 U0r(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||"",p=Aa(f,t.source);if(!p.isSpecial&&!p.isPV&&!p.isStrictSpecial&&p.num!==null){o=l;break}}for(let l of e){let d=l.relativeIndex,f=l.info&&l.info.isStrictSpecial,p=l.info&&!l.info.isSpecial&&!l.info.isPV&&!f&&l.info.num!==null;d<0&&!f?n.push(l):d>=a&&!f||p&&d>o?s.push(l):i.push(l)}let c=[],u=(l,d,f)=>{l.length>0&&(l.sort((p,m)=>p.originalIndex-m.originalIndex),d.push(...l.map(p=>Int(p,r))),c.push(` [\u8865\u5168-${f}] \u63D2\u5165/\u8FFD\u52A0 ${l.length} \u96C6 (${l.map(p=>p.link.title).join(", ")})`))};n.length>0&&(n.sort((l,d)=>l.originalIndex-d.originalIndex),t.links.unshift(...n.map(l=>Int(l,r))),c.push(` [\u8865\u5168-\u5934\u90E8] \u63D2\u5165 ${n.length} \u96C6 (${n.map(l=>l.link.title).join(", ")})`)),u(s,t.links,"\u5C3E\u90E8"),u(i,t.links,"\u7279\u6B8A"),c.length>0&&mt("info",`[Merge] [${r}] \u667A\u80FD\u8865\u5168:
${c.join(`
`)}`)}function q0r(t){let e=new Map;if(!t||t.length<2)return e;let r=t.map(s=>{let i=s.animeTitle||"",a=K0(i).replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();return{id:s.animeId,raw:i,clean:a}}),n=new Set(r.map(s=>s.clean));for(let s of r){let i=null;for(let a of t4)if(s.clean.match(a.regex)){i=s.clean.replace(a.regex,"").trim();break}if(!i){let a=s.clean.match(ye.Season.SUFFIX_AMBIGUOUS);if(a){let o=a[1];s.clean.endsWith(o)&&(i=s.clean.substring(0,s.clean.length-o.length).trim())}}i&&i.length>1&&n.has(i)&&(e.set(String(s.id),i),mt("info",`[Merge-Check] \u4E0A\u4E0B\u6587\u611F\u77E5: \u5224\u5B9A [${s.raw}] \u4E3A\u7EED\u4F5C (Base: "${i}" \u540C\u65F6\u4E5F\u5B58\u5728\u4E8E\u5217\u8868)`))}return e}function j0r(t,e){let r={isStrongMatch:!1,isStrongMismatch:!1};if(!t.links||!e.links||!t.links.length||!e.links.length)return r;let n=h=>h.filter(A=>{let g=(A.title||A.name||"").toLowerCase();return!ye.Episode.PV_CHECK.test(g)&&!ye.Episode.SPECIAL_CHECK.test(g)}).length,s=n(t.links),i=n(e.links);s>5&&i>5&&Math.min(s,i)/Math.max(s,i)<.4;let a=h=>h.map(A=>eE(A.title||A.name||"").replace(/\d+/g,"").trim()).filter(A=>A.length>1),o=a(t.links),c=a(e.links);if(o.length<3||c.length<3)return r;let u=co(o.join(" ")),l=co(c.join(" "));if(u!==l||u==="Unspecified")return r;let d=Math.min(o.length,c.length,5),f=0,p=0,m=[];for(let h=0;h<d;h++){let A=Math.floor(h*o.length/d),g=Math.floor(h*c.length/d),b=G0(o[A],c[g]);h<3&&m.push(`"${o[A]}" vs "${c[g]}" (${b.toFixed(2)})`),b>.6?f++:b<.3&&p++}return f>=Math.ceil(d*.6)?(r.isStrongMatch=!0,mt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Match): ${m.join(", ")}`)):p>=Math.ceil(d*.8)&&(r.isStrongMismatch=!0,mt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Mismatch): ${m.join(", ")}`)),r}function Tie(t,e){let r=O.customMergeRules||[];if(r.length===0)return null;let n=Ei(t.animeTitle,t.typeDescription,t.aliases),s=Ei(e.animeTitle,e.typeDescription,e.aliases),i=(a,o)=>{let c=Qt(a||"").toLowerCase().replace(ye.Clean.FROM_SUFFIX,""),u=Qt(o||"").toLowerCase(),l=/[\((\[]?\d{4}[\))\]]?/.test(u),d=/【.*?】/.test(u)||/\[.*?\]/.test(u);if(l||(c=c.replace(/[\((\[]\d{4}[\))\]]/g,"")),!d){let f=c.match(/^(?:【|\[)(.+?)(?:】|\])/);if(f){let p=f[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|电影|电视剧|连续剧|综艺|真人秀|纪录片|日剧|韩剧|美剧|英剧|泰剧|国产剧|港剧|台剧|短剧|微短剧|特摄|OVA|OAD|SP|AVC|HEVC|MP4|MKV)$/i.test(p)||(c=c.replace(f[0],p+" "))}c=c.replace(ye.Clean.SOURCE_TAG,"").replace(/\[.*?\]/g,"")}return!u.includes("\u5B63")&&!u.includes("season")&&(c=c.replace(ye.Season.INFO_STRONG,"")),c=c.replace(ye.Clean.MOVIE_KEYWORDS,""),{target:Fr(c).replace(/\s+/g,""),rule:Fr(u).replace(/\s+/g,"")}};for(let a of r){let o=A=>String(A).split(Sg)[0],c=o(a.primary.source),u=o(a.secondary.source),l=String(t.source).split(Sg),d=String(e.source).split(Sg);if(!l.includes(c)||!d.includes(u))continue;let f=i(t.animeTitle,a.primary.title),p=i(e.animeTitle,a.secondary.title),m=f.target===f.rule,h=p.target===p.rule;if(!(!m||!h)&&!(a.primary.season!==null&&(n||1)!==a.primary.season)&&!(a.secondary.season!==null&&(s||1)!==a.secondary.season))return a}return null}function H0r(t,e,r=new Set,n=[]){if(!e||e.length===0)return[];let s=t.animeTitle||"",i=s.replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),a=!!i.match(ye.Lang.CN_DUB_VER)||ye.Lang.CN.test(i),o=t.source==="hanjutv",c=s.includes("N/A")||o?{year:null,month:null}:bnt(t.startDate),u=t.episodeCount||(t.links?t.links.length:0),l=co(s),d=K0(i),f=wc(i),p=uo(s,t.typeDescription,t.aliases),m=Array.from(p).filter(w=>w.startsWith("S")),h=[{animeId:t.animeId,animeTitle:s},...e],A=q0r(h),g=A.has(String(t.animeId)),b=A.get(String(t.animeId)),y=r.has(t.animeId),x=(w,N)=>{mt("info",`[Merge-Check] \u62D2\u7EDD: [${t.source}] ${s} vs [${w}] -> ${N}`)},v=[],I=0;for(let w of e){let N=w.animeTitle||"",P=Tie(t,w);if(P){if(P.action==="block"){x(N,"\u88AB\u6620\u5C04\u8868 [\xD7] \u660E\u786E\u7981\u6B62\u4E0E\u4E3B\u6E90\u5408\u5E76");continue}let X=co(N);v.push({anime:w,score:1,lang:X,debugTitle:N,isCustomMapped:!0}),mt("info",`[Merge-Check] \u5408\u5E76\u6620\u5C04\u8868\u7279\u6743\u653E\u884C: [${t.source}] ${s} <-> [${w.source}] ${N}`);continue}if(!n.includes(w.source)){x(N,"\u8BE5\u6765\u6E90\u4E3A\u6620\u5C04\u8868\u52A8\u6001\u6CE8\u5165\uFF0C\u4E14\u672A\u547D\u4E2D\u7279\u6743\u89C4\u5219\uFF0C\u53D7\u9650\u4E8E\u6743\u9650\u6C99\u7BB1\u4E88\u4EE5\u963B\u65AD");continue}let B=r.has(w.animeId),M=y||B,D=w.source==="hanjutv",L=N.includes("N/A")||D?{year:null,month:null}:bnt(w.startDate),Z=co(N),W=N.replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),F=!!W.match(ye.Lang.CN_DUB_VER)||ye.Lang.CN.test(W),K=a||F,j=w.episodeCount||(w.links?w.links.length:0);if(W.includes("\u4E4B")){let X=W.split("\u4E4B"),ie=K0(X[0]);if(d===ie){x(N,`\u7ED3\u6784\u51B2\u7A81: \u4E3B\u6807\u9898\u662F\u526F\u6807\u9898\u7684\u524D\u7F00\u7236\u96C6 (Prefix: "${ie}")`);continue}}if(D0r(s,N,t.typeDescription,w.typeDescription,u,j,t.source,w.source)){let X=tE(s,t.typeDescription,t.source),ie=tE(N,w.typeDescription,w.source);x(N,`\u5A92\u4F53\u7C7B\u578B\u6216\u7EF4\u6570\u4E0D\u5339\u914D (P:${X}/${vg(s,t.typeDescription)} [${t.typeDescription}] vs S:${ie}/${vg(N,w.typeDescription)} [${w.typeDescription}])`);continue}let J=c.year!==null&&L.year!==null,se=k0r(s,N,J);if(A.has(String(w.animeId))){let X=A.get(String(w.animeId));if(f===wc(X)&&!(ye.Season.SUFFIX_AMBIGUOUS.test(d)||t4.some(ce=>ce.regex.test(d)))){x(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S1) vs \u526F\u6E90(S2/S\u7EED\u4F5C) (Base: "${X}")`);continue}}if(g&&wc(W)===wc(b)){x(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S2/Sequel) vs \u526F\u6E90(Base/S1) (Base: "${b}")`);continue}if(!J&&se){x(N,"\u6807\u9898\u7ED3\u6784\u51B2\u7A81\u4E14\u65E5\u671F\u65E0\u6548");continue}let ue=L0r(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases),Ie=j0r(t,w),we=s.search(ye.Clean.MOVIE_KEYWORDS)!==-1,qe=N.search(ye.Clean.MOVIE_KEYWORDS)!==-1;if(we!==qe){let X=uo(N,w.typeDescription,w.aliases),ie=Ne=>wc(Ne.replace(ye.Clean.MOVIE_KEYWORDS,"")),ce=ie(s),fe=ie(N);if(G0(ce,fe)>.9&&!p.has("SEQUEL")&&!X.has("SEQUEL")){x(N,`\u5267\u573A\u7248\u6807\u9898\u963B\u65AD: [${we?"Movie":"TV"}] vs [${qe?"Movie":"TV"}] (\u65E0\u7EED\u7BC7\u6807\u8BC6)`);continue}}let Fe=M?0:M0r(c,L,K);if(Fe===-1){let X=ue;if(Ie.isStrongMatch&&(X=!0),M&&(X=!0),se&&!M&&(X=!1),X&&c.year&&L.year&&Math.abs(c.year-L.year)>2&&!Ie.isStrongMatch&&!M&&(X=!1),!X){x(N,`\u65E5\u671F\u4E25\u91CD\u4E0D\u5339\u914D\u4E14\u65E0\u8C41\u514D (P:${c.year} vs S:${L.year}, IsDub:${K})`);continue}}if(!M&&B0r(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases))if(Ie.isStrongMatch)mt("info",`[Merge-Check] \u5B63\u5EA6\u51B2\u7A81\u8C41\u514D: [${s}] vs [${N}] (Probe\u5F3A\u5339\u914D)`);else{x(N,"\u5B63\u5EA6\u6807\u8BB0\u51B2\u7A81");continue}let _e=X=>X?String(X).replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim():"",U=Array.from(new Set([i,...t.aliases||[]].map(_e).filter(Boolean))),G=Array.from(new Set([W,...w.aliases||[]].map(_e).filter(Boolean))),V=0,q=0;for(let X of U){let ie=xnt(X);for(let ce of G)V=Math.max(V,G0(X,ce)),q=Math.max(q,G0(ie,xnt(ce)))}let H=Math.max(V,q),ee=H;se&&(H+=oi.TITLE_STRUCTURE_CONFLICT),Fe!==-1&&(H+=Fe);let ne=l==="CN",re=Z==="CN";if(ne&&re?H+=oi.LANG_MATCH_CN:ne!==re&&(H+=oi.LANG_MISMATCH),Ie.isStrongMatch?(mt("info",`[Merge-Check] \u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u5339\u914D! \u63D0\u5347\u5206\u6570 (\u539F\u5206: ${H.toFixed(2)}) -> ${Hl.SIMILARITY_STRONG}`),H=Math.max(H,Hl.SIMILARITY_STRONG)):Ie.isStrongMismatch&&(x(N,"\u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u4E0D\u5339\u914D (\u96C6\u6807\u9898/\u5185\u5BB9\u5DEE\u5F02\u5DE8\u5927)"),H=0),H<Hl.SIMILARITY_MIN){let X=f,ie=wc(W);x(N,`\u76F8\u4F3C\u5EA6\u4E0D\u8DB3: ${H.toFixed(2)} (Raw:${ee.toFixed(2)}, CleanA:"${X}", CleanB:"${ie}")`)}else H>I&&(I=H),v.push({anime:w,score:H,lang:Z,debugTitle:N}),mt("info",`[Merge-Check] \u5019\u9009\u9009\u4E2D: ${N} Score=${H.toFixed(2)} (BestSoFar=${I.toFixed(2)})`)}if(v.length===0||I<Hl.SIMILARITY_MIN&&!v.some(w=>w.isCustomMapped))return[];let R=v.filter(w=>{if(w.isCustomMapped||w.score>=I-Hl.TIER_DEFAULT||w.lang==="CN"&&w.score>=I-Hl.TIER_CN)return!0;let N=uo(w.debugTitle,w.anime.typeDescription,w.anime.aliases);if(Array.from(N).some(B=>B.startsWith("P"))&&w.score>=I-Hl.TIER_PART){let B=Array.from(N).filter(M=>M.startsWith("S"));if(m.length>0&&B.length>0){if(m.some(D=>B.includes(D)))return!0}else return!0}return!1});return R.sort((w,N)=>w.isCustomMapped&&!N.isCustomMapped?-1:!w.isCustomMapped&&N.isCustomMapped?1:N.score-w.score),R.map(w=>w.anime)}function Q0r(t){let e=new Set;if(!t||t.length===0)return e;let r={\u4E00:"1",\u4E8C:"2",\u4E09:"3",\u56DB:"4",\u4E94:"5",\u516D:"6",\u4E03:"7",\u516B:"8",\u4E5D:"9",\u5341:"10"},n=new Map;t.forEach(s=>{let i=O.animes.find(f=>String(f.animeId)===String(s.animeId))||s,a=uo(i.animeTitle,i.typeDescription,i.aliases);if(a.has("MOVIE")||a.has("OVA")||a.has("SP")||a.has("SEQUEL"))return;let o=Qt(s.animeTitle||""),c=o.match(/^(?:【|\[)(.+?)(?:】|\])/);if(c){let f=c[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(f)||(o=o.replace(c[0],f+" "))}o=o.replace(/第([一二三四五六七八九十])å­£/g,(f,p)=>`\u7B2C${r[p]}\u5B63`);let u=o.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.META_SUFFIX,"").replace(ye.Lang.KEYWORDS_STRONG,"");if(t4.forEach(f=>u=u.replace(f.regex,"")),u=u.replace(ye.Season.SUFFIX_AMBIGUOUS,"").replace(/(?:第|S)\d+(?:å­£|期|部)/gi,"").replace(/(?:Part|P)\s*\d+/gi,"").replace(/\s+/g,"").toLowerCase().trim(),!u)return;let l=tE(s.animeTitle,i.typeDescription,i.source),d=`${u}|${l}`;n.has(d)||n.set(d,[]),n.get(d).push(s)});for(let[s,i]of n.entries()){if(i.length<2)continue;let[a,o]=s.split("|"),c=i.map(f=>` - [${f.source}] ${f.animeTitle}`).join(`
`);mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u6B63\u5728\u68C0\u67E5\u5206\u7EC4: "${a}" [${o}] (\u5305\u542B ${i.length} \u4E2A\u6761\u76EE):
${c}`);let u=new Map,l=0;if(i.forEach(f=>{let p=O.animes.find(b=>String(b.animeId)===String(f.animeId))||f,m=uo(p.animeTitle,p.typeDescription,p.aliases),h=1;for(let b of m)if(b.startsWith("S")){let y=parseInt(b.substring(1));isNaN(y)||(h=y)}if(h===1){let b=m.has("SEQUEL")||ye.Season.SUFFIX_SEQUEL.test(p.animeTitle),y=m.has("AMBIGUOUS")||ye.Season.SUFFIX_AMBIGUOUS.test(p.animeTitle);(b||y)&&(h=2,mt("info",`[Merge-Check] [Detail] [${p.source}] "${p.animeTitle}" -> \u5224\u5B9A\u4E3A S2 (Reason: Sequel/Ambiguous Suffix)`))}h>l&&(l=h);let A=0;p.links&&(/^(dandan|animeko)$/i.test(p.source)?A=p.links.filter(b=>{let y=b.title||b.name||"",x=y.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();if(ye.Episode.SPECIAL_CHECK.test(x)||ye.Episode.DANDAN_IGNORE.test(x))return!1;let v=K0(y);return!(ye.Episode.SPECIAL_CHECK.test(v)||ye.Episode.DANDAN_IGNORE.test(v)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(x)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(y))}).length:A=p.links.length),u.has(p.source)||u.set(p.source,{seasonCounts:{},maxSeason:0,s1Candidates:[]});let g=u.get(p.source);g.seasonCounts[h]||(g.seasonCounts[h]=0),g.seasonCounts[h]=Math.max(g.seasonCounts[h],A),h>g.maxSeason&&(g.maxSeason=h),h===1&&g.s1Candidates.push({anime:p,originalCount:A})}),l<=1)continue;let d=Array.from(u.keys());for(let[f,p]of u.entries()){if(p.maxSeason>1)continue;let m=0,h=!1;for(let g of d){if(g===f)continue;let b=u.get(g);b.seasonCounts[1]&&(h=!0,b.seasonCounts[1]>m&&(m=b.seasonCounts[1]))}if(!h)continue;let A=m+Hl.COLLECTION_DIFF;p.s1Candidates.forEach(g=>{let b=m>0?g.originalCount/m:0;if(g.originalCount>A){if(b>Hl.COLLECTION_RATIO){mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u62D2\u7EDD: [${f}] ${g.anime.animeTitle} (Ratio too high: ${b.toFixed(2)} > ${Hl.COLLECTION_RATIO})`);return}e.add(g.anime.animeId),mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u53D1\u73B0\u7591\u4F3C\u5408\u96C6(\u5355\u4F53): [${f}] ${g.anime.animeTitle} (Count:${g.originalCount} > Thr:${A}, Ratio:${b.toFixed(2)}) -> \u6807\u8BB0\u4E3A\u5408\u96C6`)}else mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u672A\u547D\u4E2D: [${f}] ${g.anime.animeTitle} (Count:${g.originalCount} <= Threshold:${A})`)})}}return e}async function vie(t){let{pAnime:e,availableSecondaries:r,curAnimes:n,groupConsumedIds:s,globalConsumedIds:i,generatedSignatures:a,epFilter:o,groupFingerprint:c,currentPrimarySource:u,logPrefix:l,limitSecondaryLang:d,collectionAnimeIds:f,allowReuseIds:p,collectionProgress:m,baseSecondaries:h}=t;if(f.has(e.animeId)&&s.has(e.animeId))return mt("info",`${l} \u8DF3\u8FC7: [${u}] \u662F\u5408\u96C6\u4E14\u5DF2\u4F5C\u4E3A\u7EC4\u5185\u526F\u6E90\u53C2\u4E0E\u8FC7\u5408\u5E76\u3002`),null;let A=Sie(e);if(!A.links){let D=O.animes.find(L=>String(L.animeId)===String(e.animeId));A.links=D?.links?Sie(D.links):[]}if(!A.links||A.links.length===0)return mt("warn",`${l} \u4E3B\u6E90\u6570\u636E\u4E0D\u5B8C\u6574\uFF0C\u8DF3\u8FC7: ${e.animeTitle}`),null;let g=e.animeTitle.replace(ye.Clean.FROM_SUFFIX,""),b=[],y=[e.animeId],x=!1,v=co(e.animeTitle),I=e4(A.links,e.animeTitle,u),R=f.has(e.animeId),w=(D,L)=>D?L&&D.includes(L)?D.replace(L,""):D:"",N=wc(e.animeTitle),P=n.filter(D=>wc(D.animeTitle)===N),B=$0r(P,o,f);if(B.size>0){let D=Array.from(B.entries()).map(([L,Z])=>`S${L}=${Z}`).join(", ");(R||r.some(L=>n.some(Z=>Z.source===L&&f.has(Z.animeId))))&&mt("info",`${l} [\u5408\u96C6\u5904\u7406] \u6784\u5EFA\u5B63\u5EA6\u96C6\u6570\u5730\u56FE (Mode\u7B56\u7565): { ${D} }`)}let M=[];for(let D of r){let L=n.filter(K=>{if(K.source!==D)return!1;let j=Tie(e,K);if(j)return j.action==="block"?(mt("info",`${l} \u62E6\u622A: \u526F\u6E90 [${K.source}] ${K.animeTitle} \u88AB\u6620\u5C04\u8868 [\xD7] \u89C4\u5219\u660E\u786E\u963B\u65AD`),!1):!0;if(R)return!0;let J=s.has(K.animeId),se=p&&p.has(K.animeId);return!(J&&!se)}),Z=[],W=new Set;for(let K of L)W.has(K.animeId)||(W.add(K.animeId),Z.push(K));if(L=Z,d&&(L=L.filter(K=>co(K.animeTitle)===d)),L.length>1&&L.sort((K,j)=>{let J=co(K.animeTitle)==="CN",se=co(j.animeTitle)==="CN";return J===se?0:J?1:-1}),L.length===0)continue;let F=H0r(e,L,f,h);M.push(...F)}if(M.length>0){if(M.length>1&&(R||M.some(D=>f.has(D.animeId)))){M.sort((L,Z)=>{let W=Ei(L.animeTitle,L.typeDescription,L.aliases)||1,F=Ei(Z.animeTitle,Z.typeDescription,Z.aliases)||1;if(W!==F)return W-F;let K=r.indexOf(L.source),j=r.indexOf(Z.source);return K-j});let D=M.map(L=>`[${L.source}]S${Ei(L.animeTitle,L.typeDescription,L.aliases)||1}`);mt("info",`${l} [\u5408\u96C6\u65F6\u5E8F] \u5DF2\u5C06\u8DE8\u6E90\u5339\u914D\u961F\u5217\u6309\u5B63\u6570\u5347\u5E8F\u6392\u5217\uFF0C\u4FDD\u969C\u5207\u7247\u63A8\u65AD\u4E25\u683C\u81EA\u4E3E: ${D.join(" -> ")}`)}for(let D of M){let L=D.source,Z=Tie(e,D);if(Z&&Z.action==="block"){mt("info",`${l} [\u5B89\u5168\u7F51\u62E6\u622A] \u5173\u8054\u53D6\u6D88: [${u}] ${e.animeTitle} <-> [${L}] ${D.animeTitle} \u88AB\u660E\u786E\u963B\u65AD`);continue}if(!R&&!(p&&p.has(D.animeId))&&!Z&&s.has(D.animeId))continue;let W=O.animes.find(Pe=>String(Pe.animeId)===String(D.animeId));if(!W?.links)continue;let F=Sie(W),K=[],j=new Set,J=[],se=[],oe=F.animeTitle.replace(ye.Clean.FROM_SUFFIX,""),ue=_nt(A.links,u),Ie=_nt(F.links,L),we=new Set([...Ie].filter(Pe=>!ue.has(Pe))),qe=new Set([...ue].filter(Pe=>!Ie.has(Pe)));qe.size>0&&Snt(A.links,qe,u,`\u4E3B\u6E90:${u}`),we.size>0&&Snt(F.links,we,L,`\u526F\u6E90:${L}`);let Fe=F.links,_e=Cie(A.links,o,u),U=Cie(Fe,o,L),G=co(F.animeTitle),V=_e,q=U,H=0,ee=0,ne=f.has(D.animeId),re=(Pe,Ue,ze)=>{let Ye=0,Ze=Ue;if(ze&&ze>1){let nt=!1,ct=Pe?e.animeId:D.animeId;if(m&&m.has(ct)){let tt=m.get(ct),Pt=ze-1;if(tt[`S${Pt}`]!==void 0){let lt=tt[`S${Pt}`]+1;lt>0&&lt<Ue.length&&(Ze=Ue.slice(lt),Ye=lt,mt("info",`${l} [\u5408\u96C6\u5207\u7247] \u5386\u53F2\u63A8\u65AD\u547D\u4E2D: \u6839\u636E S${Pt} \u7ED3\u675F\u4F4D\u7F6E (Index ${tt[`S${Pt}`]}), \u8BBE\u5B9A S${ze} \u8D77\u70B9\u4E3A Index ${lt}`),nt=!0)}}if(!nt){let tt=0;for(let lt=1;lt<ze;lt++)tt+=B.get(lt)||0;let Pt=tt;if(Pt>=Ue.length){let lt=(ze-1)*12;lt<Ue.length&&(mt("info",`${l} [\u5408\u96C6\u5207\u7247] \u8D77\u70B9\u8D8A\u754C\u4FEE\u6B63: \u539F\u8BA1\u7B97 ${Pt} > Total ${Ue.length}\uFF0C\u542F\u7528\u56DE\u9000\u4F30\u7B97 (S${ze} -> Index ${lt})`),Pt=Math.max(0,lt-2))}if(Pt>0&&Pt<Ue.length){let lt=tt+(B.get(ze)||999),ke=Math.min(lt,Ue.length);Ze=Ue.slice(Pt,ke),Ye=Pt;let Je=Pe?`\u4E3B\u6E90[${u}]`:`\u526F\u6E90[${L}]`;mt("info",`${l} [\u5408\u96C6\u5207\u7247] \u68C0\u6D4B\u5230${Je}\u4E3A\u5408\u96C6 (Target: S${ze}): \u65E0\u5386\u53F2\u63A8\u65AD(Defensive Fallback)\uFF0C\u4FE1\u4EFB\u5730\u56FE\u5207\u81F3 ${Pt}~${ke} (\u5171 ${Ze.length} \u96C6) \u53C2\u4E0E\u5BF9\u9F50`)}else mt("info",`${l} [\u5408\u96C6\u5207\u7247] \u653E\u5F03\u5207\u7247: \u8BA1\u7B97\u8D77\u70B9 ${Pt} \u8D85\u51FA\u8303\u56F4 (Total: ${Ue.length})`)}}else if(ze===1){let nt=B.get(1);if(nt&&nt<Ue.length){Ze=Ue.slice(0,nt);let ct=Pe?`\u4E3B\u6E90[${u}]`:`\u526F\u6E90[${L}]`;mt("info",`${l} [\u5408\u96C6\u5207\u7247] \u68C0\u6D4B\u5230${ct}\u4E3A\u5408\u96C6 (Target: S1): \u4F7F\u7528 Index 0~${nt} \u53C2\u4E0E\u5BF9\u9F50`)}}return{sliceStart:Ye,slicedList:Ze}};if(R&&!ne){let Pe=Ei(F.animeTitle,F.typeDescription,F.aliases),Ue=re(!0,_e,Pe);V=Ue.slicedList,H=Ue.sliceStart}else if(!R&&ne){let Pe=Ei(e.animeTitle,e.typeDescription,e.aliases),Ue=re(!1,U,Pe);q=Ue.slicedList,ee=Ue.sliceStart}A.animeId=F0r(A.animeId,D.animeId,c),A.bangumiId=String(A.animeId);let X=0,ie=e4(F.links,F.animeTitle,L),ce=Pe=>Pe.isSpecial||Pe.isStrictSpecial||Pe.num!==null&&Pe.num%1!==0,fe=new Map,Ne=0;if(Z&&Z.hasRoutes){mt("info",`${l} \u542F\u7528\u6620\u5C04\u8868\u7CBE\u786E\u8DEF\u7531: ${e.animeTitle} <-> ${D.animeTitle}`);let Ue=vnt(V,q,v,G,u,L,e.animeTitle,F.animeTitle)+H-ee;Ne=Ue;let ze=new Map;for(let Ye of Z.routes){let Ze=Ye.sec.end-Ye.sec.start+1,nt=Ye.prim.end-Ye.prim.start+1;if(Ze!==nt){mt("warn",`[Merge] [\u6620\u5C04\u8868] \u8DEF\u7531\u533A\u95F4\u8DE8\u5EA6\u4E0D\u5BF9\u7B49\uFF0C\u8DF3\u8FC7\u6B64\u6BB5: E${Ye.sec.start}~E${Ye.sec.end} > E${Ye.prim.start}~E${Ye.prim.end}`);continue}for(let ct=0;ct<Ze;ct++)ze.set(Ye.sec.start+ct,Ye.prim.start+ct)}for(let Ye=0;Ye<U.length;Ye++){let Ze=U[Ye],nt=Ze.link,ct=nt.name||nt.title||`Index ${Ye}`,tt=w(nt.title||nt.name,ie),Pt=Aa(tt,L),lt={link:nt,originalIndex:Ze.originalIndex,relativeIndex:-1,info:Pt},ke=Pt.num;if(ke===null&&!Pt.isStrictSpecial&&(ke=Ye+1),ke===null||!ze.has(ke)){lt.relativeIndex=Ye+Ue,K.push({idx:lt.relativeIndex,text:` [\u672A\u8DEF\u7531\u843D\u5355] ${ct} (\u5E94\u7528\u63A8\u65AD\u504F\u79FB\u4F4D\u7F6E)`}),se.push(lt);continue}let Je=ze.get(ke),ft=_e.findIndex((rt,bt)=>{let An=Aa(w(rt.link.title||rt.link.name,I),u),vt=An.num;return vt===null&&!An.isStrictSpecial&&(vt=bt+1),vt===Je&&!An.isSpecial&&!An.isStrictSpecial});if(ft!==-1){fe.set(Ye,ft),lt.relativeIndex=ft;let rt=_e[ft].originalIndex,bt=A.links[rt],An=bt.name||bt.title||`Index ${rt}`,vt=Iie(nt.url),_r=bt.url,qs=`${L}:${vt}`;_r.includes(Cu)||_r.startsWith(u+":")||(_r=`${u}:${_r}`);let Pr=`${_r}${Cu}${qs}`,js=bt.title;if(js){let Hs=L,ys=(nt.title||"").match(/^【([^】\d]+)(?:\d*)】/);ys&&(Hs=ys[1].trim()),js=js.replace(/^【([^】]+)】/,(Qs,Bu)=>`\u3010${Bu}${Sg}${Hs}\u3011`)}K.push({idx:ft,text:` [\u5DF2\u8DEF\u7531\u6620\u5C04] ${An} <-> ${ct} (Rule: E${ke}>E${Je})`}),j.add(ft),X++,J.push({linkIndex:rt,newUrl:Pr,newTitle:js})}else lt.relativeIndex=Ye+Ue,K.push({idx:lt.relativeIndex,text:` [\u8DEF\u7531\u5931\u8D25] \u4E3B\u6E90\u627E\u4E0D\u5230 E${Je} <-> ${ct}`}),se.push(lt)}}else{Z&&mt("info",`${l} \u547D\u4E2D\u6620\u5C04\u8868\u5E38\u89C4\u5408\u5E76: [${L}] ${D.animeTitle} -> [${u}] ${e.animeTitle} (\u5DF2\u514D\u68C0\u653E\u884C\uFF0C\u4EA4\u7531\u7CFB\u7EDF\u81EA\u52A8\u5BF9\u9F50)`),Ne=vnt(V,q,v,G,u,L,e.animeTitle,F.animeTitle)+H-ee,Ne!==0&&mt("info",`${l} \u96C6\u6570\u81EA\u52A8\u5BF9\u9F50 (${L}): Offset=${Ne} (P:${_e.length}, S:${U.length})`);let Ue=new Map,ze=null;U.forEach((ct,tt)=>{let Pt=_e[tt+Ne];if(!Pt)return;let lt=w(Pt.link.title||Pt.link.name,I),ke=w(ct.link.title||ct.link.name,ie),Je=Aa(lt,u),ft=Aa(ke,L);if(Je.num===null||ft.num===null||ce(Je)||ce(ft))return;let rt=Je.num-ft.num,An=1+(G0(eE(lt),eE(ke))>.45?1:0);ze!==null&&Je.num-ze>1?An=.1:ze=Je.num,Ue.set(rt,(Ue.get(rt)||0)+An)});let Ye=Ue.size>0?[...Ue.entries()].reduce((ct,tt)=>tt[1]>ct[1]?tt:ct)[0]:null,Ze=_e.reduce((ct,tt,Pt)=>{let lt=Aa(w(tt.link.title||tt.link.name,I),u);return ce(lt)&&!lt.isPV&&ct.push(Pt),ct},[]),nt=0;for(let ct=0;ct<U.length;ct++){let tt=ct+Ne,Pt=U[ct],lt=Pt.link,ke=lt.name||lt.title||`Index ${ct}`,Je=w(lt.title||lt.name,ie),ft=Aa(Je,L),rt={link:lt,originalIndex:Pt.originalIndex,relativeIndex:tt,info:ft},bt=ce(ft);if(Ye!==null&&ft.num!==null&&!bt){let An=ft.num+Ye;if(tt=_e.findIndex(vt=>{let _r=Aa(w(vt.link.title||vt.link.name,I),u);return _r.num===An&&!ce(_r)}),tt!==-1)rt.relativeIndex=tt;else{let vt=-.5;for(let _r=_e.length-1;_r>=0;_r--){let qs=Aa(w(_e[_r].link.title||_e[_r].link.name,I),u);if(qs.num!==null&&!qs.isSpecial&&qs.num<An){vt=_r;break}}rt.relativeIndex=vt+ct*.001+.1}}else if(bt){let An=-1,vt=.65,_r=eE(Je);for(let qs of Ze){let Pr=w(_e[qs].link.title||_e[qs].link.name,I),js=Aa(Pr,u);if(ft.isPV!==js.isPV)continue;let Hs=G0(_r,eE(Pr));Hs>vt&&(vt=Hs,An=qs)}An===-1&&!ft.isPV&&nt<Ze.length&&(An=Ze[nt]),ft.isPV||nt++,tt=An,rt.relativeIndex=tt!==-1?tt:_e.length+ct*.001}else rt.relativeIndex=tt!==-1?tt:ct+Ne;if(tt>=0&&tt<_e.length){fe.set(ct,tt);let An=_e[tt].originalIndex,vt=A.links[An],_r=vt.name||vt.title||`Index ${An}`,qs=w(vt.title,I),Pr=ZL(qs),js=ZL(Je),Hs=Aa(qs,u);if(ft.isPV&&!Pr){K.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${_r} =/= ${ke} (PV\u4E0D\u5339\u914D\u6B63\u7247)`}),se.push(rt);continue}if(Pr!==js){K.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${_r} =/= ${ke} (\u7279\u6B8A\u96C6\u7C7B\u578B\u4E0D\u5339\u914D)`}),se.push(rt);continue}let ys=Hs.isStrictSpecial||Hs.num!==null&&Hs.num%1!==0,Qs=ft.isStrictSpecial||ft.num!==null&&ft.num%1!==0,Bu=!Hs.isSpecial&&(Hs.num===null||Hs.num%1===0),Ao=!ft.isSpecial&&(ft.num===null||ft.num%1===0);if(ys&&Ao||Qs&&Bu){K.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${_r} =/= ${ke} (\u6B63\u7247\u4E0E\u756A\u5916\u963B\u65AD)`}),se.push(rt);continue}let Dc=Iie(lt.url),Ta=vt.url,yn=`${L}:${Dc}`;Ta.includes(Cu)||Ta.startsWith(u+":")||(Ta=`${u}:${Ta}`);let wa=`${Ta}${Cu}${yn}`,td=vt.title;if(td){let yo=L;if(lt.title){let bA=lt.title.match(/^【([^】\d]+)(?:\d*)】/);bA&&(yo=bA[1].trim())}td=td.replace(/^【([^】]+)】/,(bA,u6)=>`\u3010${u6}${Sg}${yo}\u3011`)}K.push({idx:rt.relativeIndex,text:` [\u5339\u914D] ${_r} <-> ${ke}`}),j.add(tt),X++,J.push({linkIndex:An,newUrl:wa,newTitle:td})}else K.push({idx:rt.relativeIndex,text:` [\u843D\u5355] (\u4E3B\u6E90\u8D8A\u754C) <-> ${ke}`}),se.push(rt)}}for(let Pe=0;Pe<_e.length;Pe++)if(!j.has(Pe)){let Ue=_e[Pe].originalIndex,ze=A.links[Ue],Ye=ze.name||ze.title||`Index ${Ue}`;K.push({idx:Pe,text:` [\u843D\u5355] ${Ye} <-> (\u526F\u6E90\u7F3A\u5931\u6216\u88AB\u7565\u8FC7)`})}if(X>0){let Pe=f.has(e.animeId)||f.has(D.animeId),Ue=!1;if(Z?Ue=X>0:Ue=W0r(X,_e.length,U.length,u,L,Pe),Ue){for(let ke of J){let Je=A.links[ke.linkIndex];Je.url=ke.newUrl,Je.title=ke.newTitle}let ze=ke=>ke?ke.replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim():"",Ye=ze(A.animeTitle);A.aliases=[...new Set([...A.aliases||[],...F.aliases||[],...D.aliases||[],ze(F.animeTitle)])].filter(ke=>ke&&ke!==Ye),mt("info",`${l} \u5173\u8054\u6210\u529F: [${u}] ${g} <-> [${L}] ${oe} (\u672C\u6B21\u5408\u5E76 ${X} \u96C6)`),K.length>0&&(K.sort((ke,Je)=>ke.idx-Je.idx),mt("info",`${l} [${L}] \u6620\u5C04\u8BE6\u60C5:
${K.map(ke=>ke.text).join(`
`)}`)),A.mergedChildren=A.mergedChildren||[],A.mergedChildren.some(ke=>String(ke.animeId)===String(D.animeId)&&ke.source===D.source)||A.mergedChildren.push({animeId:D.animeId,animeTitle:D.animeTitle,source:D.source,episodes:F.links?F.links.length:0,imageUrl:D.imageUrl||""});let Ze=O.animes.find(ke=>String(ke.animeId)===String(D.animeId)&&ke.source===D.source);if(Ze&&(Ze.isHiddenChild=!0),m&&(ne||R)){let ke=-1;if(R&&!ne){for(let Je=0;Je<U.length;Je++){let ft=fe.has(Je)?fe.get(Je):Je+Ne;if(j.has(ft)){let rt=_e[ft].originalIndex;rt>ke&&(ke=rt)}}if(ke!==-1){let Je=Ei(F.animeTitle,F.typeDescription,F.aliases)||1;m.has(e.animeId)||m.set(e.animeId,{});let ft=m.get(e.animeId);X>=3&&(ft[`S${Je}`]=ke)}}else if(!R&&ne){for(let Je=0;Je<U.length;Je++){let ft=fe.has(Je)?fe.get(Je):Je+Ne;if(j.has(ft)){let rt=U[Je];rt.originalIndex>ke&&(ke=rt.originalIndex)}}if(ke!==-1){let Je=Ei(e.animeTitle,e.typeDescription,e.aliases)||1;m.has(D.animeId)||m.set(D.animeId,{});let ft=m.get(D.animeId);X>=3&&(ft[`S${Je}`]=ke,mt("info",`[Merge-Check] \u66F4\u65B0\u5408\u96C6\u8FDB\u5EA6 [${D.animeId}]: S${Je} -> MaxIndex ${ke}`))}}}let nt=Ei(e.animeTitle,e.typeDescription,e.aliases)||1,ct=Ei(F.animeTitle,F.typeDescription,F.aliases)||1,tt=Z&&nt!==ct;f.has(D.animeId)||tt?mt("info",`${l} [\u667A\u80FD\u8865\u5168] \u8DF3\u8FC7: \u526F\u6E90 [${L}] \u4E3A\u5408\u96C6\u6216\u89E6\u53D1\u8DE8\u5B63\u5EA6\u6620\u5C04\uFF0C\u4E3A\u907F\u514D\u6DF7\u5165\u5176\u4ED6\u5B63\u5EA6\u96C6\u6570\uFF0C\u4E0D\u6267\u884C\u8865\u5168\u3002`):U0r(A,se,L);let Pt=[],lt=[];A.links.forEach(ke=>{let Je=ke.title.replace(ye.Clean.SOURCE_TAG,"").trim();ye.Episode.SINK_TITLE_STRICT.test(Je)?lt.push(ke):Pt.push(ke)}),lt.length>0&&(A.links=[...Pt,...lt],mt("info",`${l} [\u6392\u5E8F\u4F18\u5316] \u7ACB\u5373\u6267\u884C\u756A\u5916\u6C89\u5E95: \u79FB\u52A8\u4E86 ${lt.length} \u4E2A\u756A\u5916\u96C6\u5230\u672B\u5C3E`)),x=!0,b.push(L),y.push(D.animeId)}else mt("info",`${l} \u5173\u8054\u53D6\u6D88: [${u}] ${g} <-> [${L}] ${oe} (\u5339\u914D\u7387\u8FC7\u4F4E: ${X}/${Math.max(_e.length,U.length)})`)}}}if(x){let D=y.join("|");if(a.has(D))return mt("info",`${l} \u68C0\u6D4B\u5230\u91CD\u590D\u7684\u5408\u5E76\u7ED3\u679C (Signature: ${D})\uFF0C\u5DF2\u81EA\u52A8\u9690\u53BB\u5197\u4F59\u6761\u76EE\u3002`),null;a.add(D);let L=O.animes.find(W=>String(W.animeId)===String(e.animeId)&&W.source===e.source);L&&(L.isHiddenChild=!0);for(let W=1;W<y.length;W++){let F=y[W];f.has(F)?mt("info",`${l} \u5408\u96C6\u4FDD\u7559: ID [${F}] \u662F\u5408\u96C6\uFF0C\u4FDD\u7559\u4EE5\u4F9B\u540C\u7EC4\u590D\u7528\u3002`):s.add(F),i.add(F)}let Z=b.join(Sg);return A.animeTitle=A.animeTitle.replace(`from ${u}`,`from ${u}${Sg}${Z}`),A.source=u,A}return null}async function Ont(t,e=null){if(!t||t.length<2)return;let r=O.mergeSourcePairs||[],n=O.customMergeRules||[],s=new Map;for(let p of n){if(p.action==="block")continue;let m=p.primary.source.split("&")[0],h=p.secondary.source.split("&")[0];s.has(m)||s.set(m,new Set),s.get(m).add(h)}let i=r.map(p=>({primary:p.primary,secondaries:[...p.secondaries],baseSecondaries:[...p.secondaries]}));for(let[p,m]of s.entries()){let h=i.find(A=>A.primary===p);h||(h={primary:p,secondaries:[],baseSecondaries:[]},i.push(h));for(let A of m)h.secondaries.includes(A)||h.secondaries.push(A)}if(!i||i.length===0)return;mt("info",`[Merge] \u542F\u52A8\u6E90\u5408\u5E76\u7B56\u7565\uFF0C\u7EC4\u5408\u8BA1\u7B97\u540E\u7684\u914D\u7F6E: ${JSON.stringify(i)}`);let a=O.episodeTitleFilter;if(a&&typeof a=="string")try{a=new RegExp(a,"i")}catch{a=null}let o=Q0r(t),c=new Map,u=[],l=new Set,d=new Set,f=new Set;i.forEach(p=>{p.secondaries.length===0&&f.add(p.primary)});for(let p of i){if(p.secondaries.length===0)continue;let m=new Map,h=[p.primary,...p.secondaries];h.forEach((w,N)=>m.set(w,N));let A=h.join("&"),g=new Set,b=(w,N)=>{if(!w||w.length<2)return w;mt("info",`[Merge-Check] [Sort] ${N} \u6392\u5E8F\u524D\u9996\u4E2A\u5143\u7D20: ${w[0].animeTitle}`),w.sort((B,M)=>{let D=m.get(B.source)??99,L=m.get(M.source)??99;if(D!==L)return D-L;let Z=J=>{let se=uo(J.animeTitle,J.typeDescription,J.aliases);return se.has("MOVIE")||se.has("OVA")||se.has("SP")||vg(J.animeTitle,J.typeDescription)==="MOVIE"?2:1},W=Z(B),F=Z(M);if(W!==F)return W-F;let K=Ei(B.animeTitle,B.typeDescription,B.aliases)||1,j=Ei(M.animeTitle,M.typeDescription,M.aliases)||1;return K-j});let P=w.map(B=>{let M=Ei(B.animeTitle,B.typeDescription,B.aliases)||1,D=uo(B.animeTitle,B.typeDescription,B.aliases).has("MOVIE")||vg(B.animeTitle,B.typeDescription)==="MOVIE"?"Movie":`S${M}`;return`[P${m.get(B.source)??"?"}] [${D}] [${B.source}] ${B.animeTitle}`});return mt("info",`[Merge-Check] [Sort] ${N} \u6267\u884C\u987A\u5E8F:
${P.join(`
`)}`),w},y=[];h.forEach(w=>{t.filter(P=>P.source===w&&!g.has(P.animeId)&&co(P.animeTitle)==="CN").forEach(P=>y.push(P))});let x=!1;for(let w of h)if(t.some(N=>N.source===w&&!g.has(N.animeId)&&co(N.animeTitle)==="CN")){x=!0;break}if(y.length>0&&x){mt("info",`[Merge] [Phase 1] \u542F\u52A8 CN \u9694\u79BB\u7B56\u7565: \u5305\u542B ${y.length} \u4E2A CN \u8D44\u6E90\u3002`),b(y,"Phase 1");for(let w of y){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let B=await vie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1: CN-Strict]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});B&&(u.push(B),g.add(w.animeId),d.add(w.animeId))}}let v=[];for(let w=1;w<h.length;w++){let N=h[w];t.filter(B=>B.source===N&&!g.has(B.animeId)&&co(B.animeTitle)==="CN").forEach(B=>v.push(B))}if(v.length>=2){mt("info",`[Merge] [Phase 1.5] \u542F\u52A8\u526F\u6E90 CN \u81EA\u7EC4\u7EC7: \u68C0\u6D4B\u5230 ${v.length} \u4E2A\u5269\u4F59 CN \u8D44\u6E90\u3002`),b(v,"Phase 1.5");for(let w of v){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let B=await vie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1.5: CN-Secondary]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});B&&(u.push(B),g.add(w.animeId),d.add(w.animeId))}}let I=[];h.forEach(w=>{t.filter(P=>P.source===w&&!g.has(P.animeId)).forEach(P=>I.push(P))});let R=new Set(I.map(w=>w.source));if(I.length>0&&R.size>=2){mt("info",`[Merge] [Phase 2] \u542F\u52A8\u6807\u51C6\u56DE\u9000\u5339\u914D: \u5269\u4F59 ${I.length} \u4E2A\u8D44\u6E90\u3002`),b(I,"Phase 2");for(let w of I){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let B=uo(w.animeTitle,w.typeDescription,w.aliases),M=Array.from(B).some(Z=>Z.startsWith("P")),D=null;if(M){D=new Set;let Z=Ei(w.animeTitle,w.typeDescription,w.aliases)||1;for(let W of d){let F=O.animes.find(J=>String(J.animeId)===String(W));if(!F||!P.includes(F.source))continue;let K=uo(F.animeTitle,F.typeDescription,F.aliases);if(Array.from(K).some(J=>J.startsWith("P")))continue;let j=Ei(F.animeTitle,F.typeDescription,F.aliases)||1;Z===j&&D.add(F.animeId)}}let L=await vie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 2: Standard]",collectionAnimeIds:o,allowReuseIds:D,collectionProgress:c,baseSecondaries:p.baseSecondaries});L&&(u.push(L),g.add(w.animeId),d.add(w.animeId))}}}if(u.length>0){for(let p of u)Dt(p,e);t.unshift(...u)}if(f.size>0)for(let p of t)d.has(p.animeId)&&f.has(p.source)&&d.delete(p.animeId);for(let p=t.length-1;p>=0;p--){let m=t[p];(m._isMerged||d.has(m.animeId))&&t.splice(p,1)}u.length>0?mt("info",`[Merge] \u5408\u5E76\u6267\u884C\u5B8C\u6BD5\uFF0C\u65B0\u589E\u4E86 ${u.length} \u4E2A\u5408\u5E76\u9879\uFF0C\u6700\u7EC8\u5217\u8868\u6570\u91CF: ${t.length}`):mt("info",`[Merge] \u626B\u63CF\u5B8C\u6BD5\uFF0C\u672A\u4EA7\u751F\u4EFB\u4F55\u5408\u5E76\uFF0C\u5217\u8868\u4FDD\u6301\u4E0D\u53D8 (\u6570\u91CF: ${t.length})`)}function Cnt(t){if(t.p&&typeof t.p=="string"){let e=parseFloat(t.p.split(",")[0]);if(!isNaN(e))return e}return t.t!==void 0&&t.t!==null?Number(t.t):typeof t.progress=="number"?t.progress/1e3:0}function Tnt(t){if(t){if(typeof t.m=="string")return t.m;if(typeof t.text=="string")return t.text;if(typeof t.content=="string")return t.content}return""}function wnt(t){return!t||typeof t!="string"?"":t.replace(/[\s.,!?"'(){}\[\]<>;:,。!?、""''()【】《》;:~~]/g,"").toLowerCase()}function Pnt(t,e){let r=[...t||[],...e||[]],n=s=>{if(!s)return 0;if(s.t!==void 0&&s.t!==null)return Number(s.t);if(s.p&&typeof s.p=="string"){let i=parseFloat(s.p.split(",")[0]);return isNaN(i)?0:i}return 0};return r.sort((s,i)=>n(s)-n(i)),r}function knt(t,e,r,n=.8,s=1){let i=e.indexOf("dandan");if(i===-1||!t[i]?.length)return mt("info","[Merge][AlignTimeline] \u65E0 dandan \u6E90\u6216\u65E0\u6570\u636E\uFF0C\u8DF3\u8FC7\u65F6\u95F4\u8F74\u5BF9\u9F50"),t;let a=t[i],o=a.length,c=new Map;return a.forEach(u=>{let l=wnt(Tnt(u)),d=Cnt(u);l&&(!c.has(l)||d<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,p=[],m=0;u.forEach(x=>{let v=wnt(Tnt(x)),I=Cnt(x);if(p.push({danmu:x,time:I}),v&&c.has(v)){m++;let R=Math.round(I-c.get(v));f.set(R,(f.get(R)||0)+1)}});let h=0,A=0;f.forEach((x,v)=>{x>A&&(A=x,h=v)});let g=Math.min(o,u.length),b=A/g,y=m>0?A/m:0;if(m/g<n||b<.05||y<.15){mt("info",`[Merge][AlignTimeline] ${d}:${r[l]} \u5339\u914D\u7387\u6216\u96C6\u4E2D\u5EA6\u8FC7\u4F4E (\u6709\u6548:${(b*100).toFixed(1)}%, \u96C6\u4E2D\u5EA6:${(y*100).toFixed(1)}%)\uFF0C\u8DF3\u8FC7\u5BF9\u9F50`);return}if(Math.abs(h)<s){mt("info",`[Merge][AlignTimeline] ${d}:${r[l]} \u6700\u4F73\u504F\u79FB ${h}s \u4F4E\u4E8E\u9608\u503C\uFF0C\u65E0\u9700\u5BF9\u9F50`);return}mt("info",`[Merge][AlignTimeline] ${d}:${r[l]} \u5E94\u7528\u504F\u79FB ${h}s (\u83B7 ${A} \u7968)`),p.forEach(({danmu:x,time:v})=>{let I=Math.max(0,v-h);typeof x.p=="string"&&(x.p=x.p.replace(/^[^,]+(?=,)/,I.toFixed(2))),x.t!=null&&(x.t=I),typeof x.progress=="number"&&(x.progress=Math.round(I*1e3))})}),t}Ts();function Mnt(t,e=Date.now()){let r=Number(t);return Number.isFinite(r)&&r>0?Math.trunc(r):Math.trunc(Number(e)||Date.now())}function G0r(t=""){return OB(eg(t)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function K0r(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(e.length/4)*4,"=");return Cc(vI(r))}var Wnt="6.8.2",V0r="a_8280",z0r="xiaomi",$nt="Redmi Note 12",Y0r="Xiaomi",Fnt="14",J0r=`HanjuTV/${Wnt} (${$nt}; Android ${Fnt}; Scale/2.00)`,Unt=14*24*60*60*1e3,Dnt="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",qnt="f349wghhe784tqwh",jnt="d3w8hf94fidk38lk",X0r="34F9Q53w/HJW8E6Q",Bnt="fb3597b87601d5a7";function qT(t){return typeof TextEncoder<"u"?new TextEncoder().encode(t):eg(t)}function Z0r(t){return typeof TextDecoder<"u"?new TextDecoder().decode(t):Cc(t)}function Hnt(t,e){let r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=t[n]^e[n];return r}function emr(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 tmr(t){return t.replace(/[\u0000-\u001f\u007f-\u009f]/g,"")}function rE(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 Lnt(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 Un(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 rmr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=Un(n[0],2)^Un(n[1],3)^n[2]^n[3],e[4*r+1]=n[0]^Un(n[1],2)^Un(n[2],3)^n[3],e[4*r+2]=n[0]^n[1]^Un(n[2],2)^Un(n[3],3),e[4*r+3]=Un(n[0],3)^n[1]^n[2]^Un(n[3],2)}return e}function nmr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=Un(n[0],14)^Un(n[1],11)^Un(n[2],13)^Un(n[3],9),e[4*r+1]=Un(n[0],9)^Un(n[1],14)^Un(n[2],11)^Un(n[3],13),e[4*r+2]=Un(n[0],13)^Un(n[1],9)^Un(n[2],14)^Un(n[3],11),e[4*r+3]=Un(n[0],11)^Un(n[1],13)^Un(n[2],9)^Un(n[3],14)}return e}function smr(t,e){let r=new Uint8Array(t);r=rE(r,e,0);for(let n=1;n<=9;n++)r=RB(r),r=Lnt(r),r=rmr(r),r=rE(r,e,n);return r=RB(r),r=Lnt(r),r=rE(r,e,10),r}function imr(t,e){let r=new Uint8Array(t);r=rE(r,e,10);for(let n=9;n>=1;n--)r=SI(r),r=_I(r),r=rE(r,e,n),r=nmr(r);return r=SI(r),r=_I(r),r=rE(r,e,0),r}function amr(t,e,r){let n=emr(t,16),s=NB(e),i=new Uint8Array(n.length),a=new Uint8Array(r);for(let o=0;o<n.length;o+=16){let c=n.slice(o,o+16),u=Hnt(c,a),l=smr(u,s);i.set(l,o),a=l}return i}function omr(t,e,r){if(t.length%16!==0)throw new Error(`\u5BC6\u6587\u957F\u5EA6\u4E0D\u662F16\u7684\u500D\u6570: ${t.length}`);let n=NB(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=Hnt(imr(o,n),i);s.set(c,a),i=o}return s}async function r4(t,e,r){let n=qT(e),s=qT(r),i=qT(t),a=amr(i,n,s);return OB(a)}async function cmr(t,e,r){let n=qT(e),s=qT(r),i=vI(t),a=omr(i,n,s);return Z0r(a)}function Qnt(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 Gnt(t=20){let e="";for(let r=0;r<t;r++)e+=Dnt[Qnt(Dnt.length)];return e}function n4(t,e){let r="";for(let n=0;n<e;n++)r+=t[Qnt(t.length)];return r}function umr(t,e=Date.now()){let r=Mnt(e);return{uid:t||Gnt(),said:n4("0123456789abcdef",16),oa:n4("0123456789abcdef",16),installTs:Math.max(0,r-Unt)}}function lmr(t,e){let r=Mnt(e,t.installTs+Unt);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:$nt,maker:Y0r,osv:Fnt,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 Knt(t=Date.now(),e=Gnt()){let r=umr(e,t),n=Ls(r.uid),s=await r4(r.uid,qnt,jnt);return async function(a=Date.now()){let o=lmr(r,a),c=await r4(o,n.slice(0,16),n.slice(16,32));return{uid:r.uid,headers:{app:"hj",ch:z0r,said:r.said,uk:s,vn:Wnt,sign:c,"User-Agent":J0r,vc:V0r,"Accept-Encoding":"gzip",Connection:"Keep-Alive"}}}}async function Vnt(t=Date.now()){let e=n4("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",20),r=n4("0123456789abcdef",16);return async function(s=Date.now()){let i=Ls(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:Bnt,oa:r,dpc:0,dsc:0,qpc:0,apad:0}),o=await r4(e,qnt,jnt),c=await r4(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:Bnt,di:o,token:"",uid:"",rp:c,"Accept-Encoding":"gzip",Connection:"Keep-Alive"}}}}async function wie(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=Ls(`${e}${r}`)),!n)throw new Error("\u7F3A\u5C11\u89E3\u5BC6 key\uFF0C\u4E14\u65E0\u6CD5\u901A\u8FC7 uid+ts \u63A8\u5BFC");let s=Ls(`${n}${X0r}`),i=s.slice(0,16),a=s.slice(16,32),o=await cmr(t.data,i,a),c=tmr(o).trim();return JSON.parse(c)}function znt(t=""){let e=String(t||"").trim();return e.startsWith("hanjutv:")?e.slice(8):e}function UT(t="",e=!1){let r=String(t||"").trim();return r?{id:r,preferTv:e,rawId:`${e?"tv":"hxq"}:${r}`}:null}function dmr(t=""){if(!t.startsWith("merge:"))return null;try{let e=K0r(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 Ynt(t="",e=""){let r=String(t||"").trim(),n=String(e||"").trim();return!r||!n?"":`merge:${G0r(JSON.stringify({hxq:r,tv:n}))}`}function Jnt(t=""){let e=znt(t);if(!e)return{id:"",preferTv:!1,rawId:"",refs:[]};let r=dmr(e);if(r){let s=[UT(r.hxqId,!1),UT(r.tvId,!0)].filter(Boolean);return{id:s[0]?.id||"",preferTv:!1,rawId:e,refs:s}}if(e.startsWith("tv:")){let s=UT(e.slice(3),!0);return{id:s?.id||"",preferTv:!0,rawId:s?.rawId||"",refs:s?[s]:[]}}if(e.startsWith("hxq:")){let s=UT(e.slice(4),!1);return{id:s?.id||"",preferTv:!1,rawId:s?.rawId||"",refs:s?[s]:[]}}let n=UT(e,!1);return{id:n?.id||"",preferTv:!1,rawId:n?.rawId||"",refs:n?[n]:[]}}function s4(t=""){let e=znt(t);return e.startsWith("merge:")?"\u97E9\u5C0F\u5708\uFF06\u6781\u901F\u7248":e.startsWith("tv:")?"\u6781\u901F\u7248":"\u97E9\u5C0F\u5708"}_t();hn();var Tt=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`),_("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`),_("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`),_("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`),_("info",`[system] [Base] \u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${a.length} \u6761`),BI(a,r)}async getSegmentComments(e,r=null){r&&await r(5,`\u5F00\u59CB\u83B7\u53D6\u5206\u7247\u5F39\u5E55${e.type}\u5F39\u5E55`),_("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`),_("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`),_("info",`[system] [Base] \u5206\u7247\u5F39\u5E55\u5904\u7406\u5B8C\u6210\uFF0C\u5171 ${s.length} \u6761`),BI(s,e.type)}sortAndPushAnimesByYear(e,r){e.filter(n=>n!==null).sort((n,s)=>{let i=W0(n.animeTitle),a=W0(s.animeTitle);if(i!=null&&a!==null&&a!==void 0){if(a!==i)return a-i;let o=zV(n.animeTitle),c=zV(s.animeTitle);return o.length-c.length}return i!=null&&a==null?-1:i==null&&a!=null?1:0}).forEach(n=>{r.findIndex(i=>i.animeId===n.animeId)===-1&&r.push(n)})}};Ot();_t();ir();function Or(t){let e=parseInt(t);return isNaN(e)||e<1900||e>2100?`${new Date().getFullYear()}-01-01T00:00:00Z`:`${e}-01-01T00:00:00Z`}function Ig(t){let e=t.split(":").map(Number),r=0;return e.length===3?r=e[0]*3600+e[1]*60+e[2]:e.length===2?r=e[0]*60+e[1]:r=e[0],r}$n();hn();var jT=class extends Tt{async get360Zongyi(e,r,n,s){try{let i=[];for(let a=0;a<=10;a++){let u=(await(await ge(`https://api.so.360kan.com/episodeszongyi?entid=${r}&site=${n}&y=${s}&count=20&offset=${a*20}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data).data.list;if(_("info",`[360kan] 360kan zongyi response: \u7B2C${a}\u9875\u83B7\u53D6\u5230${u?u.length:0}\u6761\u5267\u96C6`),!u)break;for(let l of u){let d=l.name.match(/第(\d+)期([上中下])?/)||l.period.match(/第(\d+)期([上中下])?/),f=d?d[1]:null;f&&d[2]&&(f=d[2]==="\u4E0A"?`${f}.1`:d[2]==="\u4E2D"?`${f}.2`:`${f}.3`),i.push({name:l.id,url:l.url,title:`\u3010${n}\u3011 ${l.name} ${l.period}`,sort:f||l.sort||null})}_("info",`[360kan] links.length: ${i.length}`)}return i.sort((a,o)=>{if(!a.sort||!o.sort)return 0;let c=parseFloat(a.sort),u=parseFloat(o.sort);return c-u}),i}catch(i){return _("error","[360kan] get360Animes error:",{message:i.message,name:i.name,stack:i.stack}),[]}}async getNumber(e,r,n){try{let s=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&site=${n}`,a=(await ge(s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(a&&a.data&&a.data.allupinfo)return Number(a.data.allupinfo[n])}catch(s){_("error","[360kan] getNumber error:",s&&s.message?s.message:s)}return null}async get360Detail(e,r,n,s,i){try{let a=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&start=${s}&end=${i}&site=${n}`;return(await ge(a,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data}catch(a){_("error","[360kan] get360Detail error:",a&&a.message?a.message:a)}return null}async getEpisodesV1(e,r,n,s){try{if(!s||Number(s)===0)return[];let i=200,a=1,o=[],c=Number(s);for(;a<=c;){let u=Math.min(a+i-1,c);try{let l=await this.get360Detail(e,r,n,a,u);if(l&&l.data&&l.data.allepidetail&&l.data.allepidetail[n])for(let d of l.data.allepidetail[n])o.push({name:d.playlink_num,url:d.url});else{if(a===1)return[];break}}catch(l){if(_("error",`[360kan] getEpisodesV1 batch ${a}-${u} failed for site ${n}: ${l&&l.message?l.message:l}`),a===1)return[];break}a=u+1}return o}catch(i){return _("error",`getEpisodesV1 error: ${i&&i.message?i.message:i}`),[]}}async getEpisodesV2(e,r,n){try{let s=JSON.stringify([{cat_id:String(e),ent_id:String(r),site:n}]),i=`https://api.so.360kan.com/episodesv2?v_ap=1&s=${encodeURIComponent(s)}`,o=(await ge(i,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(typeof o=="string")try{o=JSON.parse(o)}catch(c){return _("error",`[360kan] getEpisodesV2 JSON parse error: ${c.message}`),[]}if(!o)return[];if(o.code===0&&Array.isArray(o.data)&&o.data.length>0){let c=o.data[0].seriesHTML||{},u=c.seriesPlaylinks||c.series_playlinks||[],l=[];for(let d=0;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 p=f.url,m=d+1;l.push({name:String(m),url:p||""})}}}return l.filter(d=>d.url)}return[]}catch(s){return _("error","[360kan] getEpisodesV2 error:",{message:s&&s.message?s.message:String(s),stack:s&&s.stack?s.stack:void 0}),[]}}async search(e){try{let n=(await ge(`https://api.so.360kan.com/index?force_v=1&kw=${encodeURIComponent(e)}&from=&pageno=1&v_ap=1&tab=all`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data,s=[];return"rows"in n.data.longData&&(s=n.data.longData.rows),_("info",`[360kan] 360kan response: ${JSON.stringify(s)}`),_("info",`[360kan] 360kan animes.length: ${s.length}`),s}catch(r){return _("error","[360kan] get360Animes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[360kan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.titleTxt,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.titleTxt).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[360kan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=[];if(l.cat_name==="\u7535\u5F71")for(let f of Object.keys(l.playlinks))O.vodAllowedPlatforms.includes(f)&&d.push({name:f.toString(),url:l.playlinks[f],title:`\u3010${f}\u3011 ${l.titleTxt}(${l.year})`});else if(l.cat_name==="\u7535\u89C6\u5267"||l.cat_name==="\u52A8\u6F2B"){let f=0;l.cat_name==="\u7535\u89C6\u5267"?f=2:l.cat_name==="\u52A8\u6F2B"&&(f=4);let p=null;if(Array.isArray(l.seriesPlaylinks)&&l.seriesPlaylinks.length>0){if(O.vodAllowedPlatforms.includes(l.seriesSite))for(let m=0;m<l.seriesPlaylinks.length;m++){let h=l.seriesPlaylinks[m],A="";h&&typeof h=="object"?A=h.url||"":typeof h=="string"&&(A=l.playlinks&&l.playlinks[l.seriesSite]?l.playlinks[l.seriesSite]:""),A&&d.push({name:(m+1).toString(),url:A,title:`\u3010${l.seriesSite}\u3011 \u7B2C${m+1}\u96C6`})}}else if(l.playlinks&&typeof l.playlinks=="object"){for(let m of Object.keys(l.playlinks))if(O.vodAllowedPlatforms.includes(m))try{let h=l.en_id,A=await this.getEpisodesV2(f,h,m);if(A&&A.length>0)for(let g of A)d.push({name:g.name,url:g.url,title:`\u3010${m}\u3011 \u7B2C${g.name}\u96C6`,sort:g.name});else try{let g=await this.getNumber(f,h,m);if(g&&Number(g)>0){let b=await this.getEpisodesV1(f,h,m,g);if(b&&b.length>0)for(let y of b)d.push({name:y.name,url:y.url,title:`\u3010${m}\u3011 \u7B2C${y.name}\u96C6`,sort:y.name})}}catch(g){_("error",`[360kan] fallback detail fetch failed for site ${m}: ${g&&g.message?g.message:g}`)}}catch(h){_("error",`[360kan] failed to fetch episodesv2 for site ${m}: ${h&&h.message?h.message:h}`)}}}else l.cat_name==="\u7EFC\u827A"&&(d=(await Promise.all(Object.keys(l.playlinks_year).map(async p=>O.vodAllowedPlatforms.includes(p)?(await Promise.all(l.playlinks_year[p].map(async h=>await this.get360Zongyi(l.titleTxt,l.id,p,h)))).flat():[]))).flat());if(d.length>0){let f={animeId:Number(l.id),bangumiId:String(l.id),animeTitle:`${l.titleTxt}(${l.year})\u3010${l.cat_name}\u3011from 360`,type:l.cat_name,typeDescription:l.cat_name,imageUrl:l.cover,startDate:Or(l.year),episodeCount:d.length,rating:0,isFavorited:!0,source:"360"};a.push(f),Dt({...f,links:d},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[360kan] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};Ot();_t();ir();$n();hn();var HT=class extends Tt{async getVodAnimes(e,r,n){try{let s=B8e(e),i=encodeURIComponent(s),a=await ge(`${r}/api.php/provide/vod/?ac=detail&wd=${i}&pg=1`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});if(a&&a.data&&a.data.list&&a.data.list.length>0){_("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F`);let o=a.data;return _("info",`[VOD] ${n} response: \u2193\u2193\u2193`),ts(o),{serverName:n,list:o.list}}else return _("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F\uFF0C\u4F46 response.data.list \u4E3A\u7A7A`),{serverName:n,list:[]}}catch(s){return _("error",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u5931\u8D25:`,{message:s.message,name:s.name,stack:s.stack}),{serverName:n,list:[]}}}async getVodAnimesFromAllServersImpl(e,r){let n=r.map(i=>this.getVodAnimes(e,i.url,i.name));return(await Promise.allSettled(n)).filter(i=>i.status==="fulfilled").map(i=>i.value)}async getVodAnimesFromFastestServer(e,r,n=null,s=null){if(!r||r.length===0)return[];let i=r.map(l=>this.getVodAnimes(e,l.url,l.name)),a;try{a=await Promise.race(i)}catch(l){return _("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u76F4\u63A5\u629B\u9519",l),[]}let o=l=>!n||s!=="vod"?!0:(JSON.stringify(l)?.toLowerCase()||"").includes(String(n).toLowerCase());if(o(a)&&a&&a.list&&a.list.length>0)return _("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName}${s==="vod"?" \u5B57\u7B26\u4E32\u5305\u542B preferAnimeId \u2192 \u4F18\u5148\u4F7F\u7528":""}`),[a];_("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName} \u4E0D\u542B preferAnimeId\uFF0C\u7B49\u5F85\u5176\u4ED6\u670D\u52A1\u5668\u2026`);let c=await Promise.allSettled(i);if(n){for(let l of c)if(l.status==="fulfilled"&&o(l.value)&&l.value&&l.value.list&&l.value.list.length>0)return _("info",`[VOD fastest mode] \u627E\u5230\u5305\u542B preferAnimeId \u7684\u670D\u52A1\u5668: ${l.value.serverName}`),[l.value];_("info","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u90FD\u4E0D\u5305\u542B preferAnimeId\uFF0C\u56DE\u9000\u5230\u201C\u771F\u6B63\u6709\u6570\u636E\u201D\u7684\u6700\u5FEB\u670D\u52A1\u5668")}let u=c.filter(l=>l.status==="fulfilled").map(l=>l.value).filter(l=>l&&l.list&&l.list.length>0);if(u.length>0){let l=u[0];return _("info",`[VOD fastest mode] \u4F7F\u7528\u6700\u5FEB\u6709\u6570\u636E\u7684\u670D\u52A1\u5668: ${l.serverName}`),[l]}return _("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u5747\u65E0\u6709\u6548\u6570\u636E"),[]}async search(e,r=null,n=null){return!O.vodServers||O.vodServers.length===0?[]:O.vodReturnMode==="fastest"?await this.getVodAnimesFromFastestServer(e,O.vodServers,r,n):await this.getVodAnimesFromAllServersImpl(e,O.vodServers)}async getEpisodes(e){}async handleAnimes(e,r,n,s,i=null,a=null){let o=[];if(!e||!Array.isArray(e))return _("error","[VOD] sourceAnimes is not a valid array"),[];let c=e.filter(d=>yt(d.vod_name,r,a)),u=a!==null?a:Wt(r);if(u!==null){let d=c.filter(f=>{let p=Ct(f.vod_name).season;return p===u||u===1&&p===null});d.length>0&&(c=d,_("info",`[VOD] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=await Promise.all(c.map(async d=>{try{let f=d.vod_play_from.split("$$$");f=f.map(g=>g==="mgtv"?"imgo":g==="bilibili"?"bilibili1":g);let p=d.vod_play_url.split("$$$"),m=f.map((g,b)=>O.vodAllowedPlatforms.includes(g)?b:-1).filter(g=>g!==-1),h=[],A=0;for(let g of m){let b=f[g],y=p[g].split("#");for(let x of y){let v=x.split("$");A++,h.push({name:A.toString(),url:v[1],title:`\u3010${b}\u3011 ${v[0]}`})}}if(h.length>0){let g={animeId:Number(d.vod_id),bangumiId:String(d.vod_id),animeTitle:`${d.vod_name}(${d.vod_year})\u3010${d.type_name}\u3011from ${s}`,type:d.type_name,typeDescription:d.type_name,imageUrl:d.vod_pic,startDate:Or(d.vod_year),episodeCount:h.length,rating:0,isFavorited:!0,source:"vod"};o.push(g),Dt({...g,links:h},i),O.animes.length>O.MAX_ANIMES&&$t()}}catch(f){_("error",`[VOD] Error processing anime: ${f.message}`)}}));return this.sortAndPushAnimesByYear(o,n),l}async getEpisodeDanmu(e){}formatComments(e){}};_t();_t();ir();Ot();async function Xnt(t){let e="https://m.douban.com/rexxar/api/v2",r={Referer:"https://m.douban.com/movie/","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"};O.doubanCookie&&(r.Cookie=O.doubanCookie);try{let n=await ge(`${e}${t}`,{method:"GET",headers:r});return n.status!=200?null:n}catch(n){return _("error","[Utils] [Douban] GET API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function Znt(t,e={}){let r="https://api.douban.com/v2";try{let n=await Kr(`${r}${t}`,JSON.stringify({...e,apikey:"0ac44ae016490db2204ce0a042db2916"}),{method:"GET",headers:{Referer:"https://api.douban.com","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return n.status!=200?null:n}catch(n){return _("error","[Utils] [Douban] POST API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function est(t,e=20){let r=`/search?q=${t}&start=0&count=${e}&type=movie`;return await Xnt(r)}async function tst(t,e=20){return await Znt("/movie/search",{q:t,start:0,count:e})}async function rst(t){let e=`/movie/${t}?for_mobile=1`;return await Xnt(e)}async function nst(t){let e=`/movie/imdb/${t}`;return await Znt(e)}_t();ir();async function sst(t){let e="https://api.imdbapi.dev";try{let r=await ge(`${e}${t}`,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return r.status!=200?null:r}catch(r){return _("error","[Utils] [IMDB] API error:",{message:r.message,name:r.name,stack:r.stack}),null}}async function ist(t){let e=`/titles/${t}/seasons`;return await sst(e)}async function ast(t,e){let r=`/titles/${t}/episodes?season=${e}`;return await sst(r)}var QT=class extends Tt{constructor(e){super("BaseSource"),this.doubanSource=e}async _getDoubanInfo(e,r,n){if(!e)return;let s=await nst(e);if(!s||!s?.data)return;let i=s?.data?.id;if(i){let o=i.split("/").pop(),c=r==="movie"?"\u7535\u5F71":"\u7535\u89C6\u5267";o&&n.push({layout:"subject",target_id:o,type_name:c,target:{cover_url:s.data?.image,title:s.data?.alt_title}})}}async getDoubanIdByTmdbId(e,r){try{let n=[],i=(await mnt(e,r)).data?.imdb_id;if(!i)return[];if(e==="movie")await this._getDoubanInfo(i,e,n);else{let a=await ist(i);_("info","[TMDB] imdb seasons:",a.data.seasons);let o=(a?.data?.seasons??[]).map(async c=>{let u=i;_("info","[TMDB] imdb season:",c.season);try{Number(c.season)!==1&&(u=(await ast(i,c.season)).data?.episodes.find(d=>d.episodeNumber===1)?.id??""),await this._getDoubanInfo(u,e,n)}catch(l){_("error",`[TMDB] \u5904\u7406\u7B2C ${c.season} \u5B63\u5931\u8D25\uFF0C\u7EE7\u7EED\u6267\u884C\u5176\u4ED6\u5B63:`,l)}});await Promise.all(o)}return n}catch(n){return _("error","[TMDB] getTmdbIds error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async search(e){try{let n=(await XL(e)).data,s=[],i=[];n?.results?.length>0&&(i=n.results.filter(c=>(c.name||c.title)===e)),_("info",`[TMDB] tmdb items.length: ${i.length}`);let a=i.map(async c=>{try{return await this.getDoubanIdByTmdbId(c.media_type,c.id)}catch(u){return _("error",`[TMDB] \u83B7\u53D6 TMDB ID ${c.id} \u7684\u8C46\u74E3 ID \u5931\u8D25\uFF0C\u7EE7\u7EED\u5904\u7406\u5176\u4ED6\u6761\u76EE:`,u),[]}}),o=await Promise.all(a);return s=[...s,...o.flat()],s}catch(r){return _("error","[TMDB] getTmdbAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){return this.doubanSource.handleAnimes(e,r,n,s,i)}async getEpisodeDanmu(e){}formatComments(e){}};_t();hn();var GT=class extends Tt{constructor(e,r,n,s,i){super("BaseSource"),this.tencentSource=e,this.iqiyiSource=r,this.youkuSource=n,this.bilibiliSource=s,this.miguSource=i}async search(e){try{let n=(await est(e))?.data;if(!n||!n?.subjects?.items?.length&&!n?.smart_box?.length){_("info","[Douban] searchDoubanTitles failed or empty, trying searchDoubanTitlesByPublic");let a=(await tst(e))?.data;a?.subjects?.length>0&&(n={subjects:{items:a.subjects.map(o=>this.convertToOriginalFormat(o))}})}let s=[];return n?.subjects?.items?.length>0&&(s=[...s,...n.subjects.items]),n?.smart_box?.length>0&&(s=[...s,...n.smart_box]),_("info",`[Douban] douban animes.length: ${s.length}`),s}catch(r){return _("error","[Douban] getDoubanAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}convertToOriginalFormat(e){let n={movie:"\u7535\u5F71",tv:"\u7535\u89C6\u5267"}[e.subtype]||e.subtype,s=e.images?.large||e.images?.medium||e.images?.small||"",i="";if(s){let u=s.match(/\/(p\d+)\.jpg/);u&&u[1]&&(i=`https://qnmob3.doubanio.com/view/photo/large/public/${u[1]}.jpg?imageView2/0/q/80/w/9999/h/120/format/jpg`)}let a=e.directors?.map(u=>u.name).join(" ")||"",o=e.casts?.slice(0,3).map(u=>u.name).join(" ")||"",c=`${e.year} / ${e.genres?.join(" / ")||""} / ${a}${o?" / "+o:""}`;return{layout:"subject",type_name:n,target_id:String(e.id),target:{rating:{count:e.collect_count||0,max:e.rating?.max||10,star_count:e.rating?.stars?parseInt(e.rating.stars)/10:0,value:e.rating?.average||0},controversy_reason:"",title:e.title,abstract:"",has_linewatch:!1,uri:`douban://douban.com/${e.subtype==="movie"?"movie":"tv"}/${e.id}`,cover_url:i,year:String(e.year||""),card_subtitle:c,id:String(e.id),null_rating_reason:""},target_type:e.subtype==="movie"?"movie":"tv"}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Douban] sourceAnimes is not a valid array"),[];let o=e.filter(l=>{let d=l?.target?.title||"";return yt(d,r,i)}),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=d?.target?.title||"",p=Ct(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("info",`[Douban] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.allSettled(o.map(async l=>{try{if(l?.layout!=="subject")return;let d=l.target_id,f=l?.type_name;if(f!=="\u7535\u5F71"&&f!=="\u7535\u89C6\u5267")return;_("info","[Douban] doubanId: ",d,l?.target?.title,f);let p=await rst(d),m=[];for(let h of p.data?.vendors??[]){if(!h)continue;_("info","[Douban] vendor uri: ",h.uri),p.data?.genres.includes("\u771F\u4EBA\u79C0")?f="\u7EFC\u827A":p.data?.genres.includes("\u7EAA\u5F55\u7247")?f="\u7EAA\u5F55\u7247":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u6F2B":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.includes("\u65E5\u672C")?f="\u65E5\u756A":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u6F2B":f==="\u7535\u5F71"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u753B\u7535\u5F71":f==="\u7535\u5F71"&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u534E\u8BED\u7535\u5F71":f==="\u7535\u5F71"?f="\u5916\u8BED\u7535\u5F71":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u4EA7\u5267":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>["\u65E5\u672C","\u97E9\u56FD"].includes(g))?f="\u65E5\u97E9\u5267":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>["\u7F8E\u56FD","\u82F1\u56FD","\u52A0\u62FF\u5927","\u6CD5\u56FD","\u5FB7\u56FD","\u610F\u5927\u5229","\u897F\u73ED\u7259","\u6FB3\u5927\u5229\u4E9A"].includes(g))&&(f="\u6B27\u7F8E\u5267");let A=[{title:p.data?.title,year:p.data?.year,type:f,imageUrl:l?.target?.cover_url}];switch(h.id){case"qq":{let g=new URL(h.uri).searchParams.get("cid");g&&(A[0].provider="tencent",A[0].mediaId=g,await this.tencentSource.handleAnimes(A,p.data?.title,a,s,i));break}case"iqiyi":{let g=new URL(h.uri).searchParams.get("tvid");g&&(A[0].provider="iqiyi",A[0].mediaId=l?.type_name==="\u7535\u5F71"?`movie_${g}`:g,await this.iqiyiSource.handleAnimes(A,p.data?.title,a,s,i));break}case"youku":{let g=new URL(h.uri).searchParams.get("showid");g&&(A[0].provider="youku",A[0].mediaId=g,await this.youkuSource.handleAnimes(A,p.data?.title,a,s,i));break}case"bilibili":{let g=new URL(h.uri).pathname.split("/").pop();g&&(A[0].provider="bilibili",A[0].mediaId=`ss${g}`,await this.bilibiliSource.handleAnimes(A,p.data?.title,a,s,i));break}case"miguvideo":{let g=null,y=decodeURIComponent(h.uri).match(/"contentID":"([^"]+)"/);y&&y[1]&&(g=y[1]),g&&(A[0].provider="migu",A[0].mediaId=`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${g}/1`,await this.miguSource.handleAnimes(A,p.data?.title,a,s,i));break}}}return m}catch(d){return _("error",`[Douban] Error processing anime: ${d.message}`),[]}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};Ot();_t();ir();Ts();$n();hn();hs();var Uf=null,KT=0,VT=0,Vi={search:"WIN",detail:"TV",danmu:"TV"},zT=class extends Tt{constructor(){super(),this.isBatchMode=!1}API_CONFIG={TV_SECRET_KEY:"cf65GPholnICgyw1xbrpA79XVkizOdMq",TV_HOST:"api.gorafie.com",TV_DANMU_HOST:"static-dm.qwdjapp.com",TV_VERSION:"1.2.2",TV_USER_AGENT:"okhttp/3.12.13",TV_CLIENT_TYPE:"android_qwtv_RRSP",TV_PKT:"rrmj",MAC_HOST:"api.cluuid.cn",MAC_DANMU_HOST:"static-dm.lequkeji.com",MAC_VERSION:"1.2.3",MAC_USER_AGENT:"%E4%BA%BA%E4%BA%BA%E8%A7%86%E9%A2%91%20for%20Mac/1.0 CFNetwork/3860.600.21 Darwin/25.5.0",MAC_CLIENT_TYPE:"mac_rrsp",WIN_HOST:"api.pleasfun.com",WIN_DANMU_HOST:"static-dm.lequkeji.com",WIN_VERSION:"1.24.2",WIN_USER_AGENT:"Boost.Beast/351",WIN_CLIENT_TYPE:"win_rrsp_gw",WEB_HOST:"api.rrmj.plus",WEB_DANMU_HOST:"static-dm.rrmj.plus"};generateRandomAliId(){let e="aY",r=24-e.length,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=e;for(let i=0;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=Uf;Uf=this.generateRandomAliId(),KT=0,VT=Math.floor(Math.random()*31)+30,e?_("info",`[Renren] AliID \u8F6E\u6362\u5B8C\u6210: ${e} -> ${Uf}`):_("info",`[Renren] AliID \u521D\u59CB\u5316\u5B8C\u6210: ${Uf}`),_("info",`[Renren] AliID \u4E0B\u6B21\u8F6E\u6362\u5C06\u5728 ${VT} \u6B21\u64CD\u4F5C\u540E\u89E6\u53D1`)}checkAndIncrementUsage(){Uf||this.rotateAliId(),KT>=VT&&(_("info",`[Renren] AliID \u89E6\u53D1\u9608\u503C (${KT}/${VT})\uFF0C\u6B63\u5728\u8F6E\u6362 ID...`),this.rotateAliId()),KT++,_("info",`[Renren] AliID \u8BA1\u6570\u589E\u52A0: ${KT}/${VT} (\u5F53\u524DID: ...${Uf.slice(-6)})`)}getAliId(){return Uf||this.rotateAliId(),this.isBatchMode||this.checkAndIncrementUsage(),Uf}generateTvHeaders(e,r){let n=this.getAliId();return{clientVersion:this.API_CONFIG.TV_VERSION,p:"Android",deviceid:"tWEtIN7JG2DTDkBBigvj6A%3D%3D",token:"",aliid:n,umid:"",clienttype:this.API_CONFIG.TV_CLIENT_TYPE,pkt:this.API_CONFIG.TV_PKT,t:e.toString(),sign:r,isAgree:"1",et:"2","Accept-Encoding":"gzip","User-Agent":this.API_CONFIG.TV_USER_AGENT}}buildMacHeaders(){return{aliId:this.generateMacAliId(),ct:this.API_CONFIG.MAC_CLIENT_TYPE,cv:this.API_CONFIG.MAC_VERSION,token:"",Accept:"*/*","Accept-Language":"zh-CN,zh-Hans;q=0.9","User-Agent":this.API_CONFIG.MAC_USER_AGENT}}buildWinHeaders(){return{aliId:this.generateWinAliId(),ct:this.API_CONFIG.WIN_CLIENT_TYPE,cv:this.API_CONFIG.WIN_VERSION,token:"","Content-Type":"application/json","User-Agent":this.API_CONFIG.WIN_USER_AGENT}}generateSignature(e,r,n,s,i,a,o,c){let u=`${e.toUpperCase()}
aliId:${r}
ct:${n}
cv:${s}
t:${i}
${a}?${o}`;return R8e(c,u)}buildSignedHeaders({method:e,url:r,params:n={},deviceId:s,token:i}){let a={client_type:"web_pc",client_version:"1.0.0",user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},o=S8e(r),c=EI(n),u=Date.now(),d=this.generateSignature(e,s,a.client_type,a.client_version,u,o,c,"ES513W0B1CsdUrR13Qk5EgDAKPeeKZY");return{clientVersion:a.client_version,deviceId:s,clientType:a.client_type,t:String(u),aliId:s,umid:s,token:i||"",cv:a.client_version,ct:a.client_type,uet:"9","x-ca-sign":d,Accept:"application/json","User-Agent":a.user_agent,Origin:a.origin,Referer:a.referer}}async fetchStandardDanmu(e,r,n){try{let s=await ge(e,{headers:r,timeout:5e3,validStatusCodes:[404]});if(s.status===404)return s.data&&s.data.error==="Document not found"?[]:(_("info",`[Renren] ${n} \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548`),null);if(!s.data)return null;let i=s.data;return Array.isArray(i)?i:i&&i.data&&Array.isArray(i.data)?i.data:[]}catch(s){return _("info",`[Renren] ${n} \u7AEF\u5F39\u5E55\u62C9\u53D6\u5F02\u5E38: ${s.message}`),null}}async renrenHttpGet(e,{params:r={},headers:n={},validStatusCodes:s=[]}={}){let i=lb(e,r);return await ge(i,{headers:n,timeout:5e3,validStatusCodes:s})}async renrenRequest(e,r,n={}){let s=this.generateDeviceId(),i=this.buildSignedHeaders({method:e,url:r,params:n,deviceId:s});return await ge(r+"?"+EI(n),{headers:i,timeout:5e3})}async searchAppContent(e,r=30){try{let n=Date.now(),s="/qwtv/search",i={searchWord:e,num:r,searchNext:"",well:"match"},a=CI(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p==null?"":String(p))}`).join("&"),c=this.generateTvHeaders(n,a),u=`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,l=await ge(u,{headers:c,timeout:5e3});return!l.data||l.data.code!=="0000"?(_("info",`[Renren] TV\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${l?.data?.code}, msg=${l?.data?.msg}`),null):(l.data.data||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:null,currentEpisodeIndex:null}})}catch(n){return _("info","[Renren] searchAppContent error:",n.message),null}}async performMacSearch(e,r=20){try{let n="/search/v5/season",s={keywords:e,order:"match",search_after:"",size:r},i=this.buildMacHeaders(),a=EI(s),o=`https://${this.API_CONFIG.MAC_HOST}${n}?${a}`,c=await ge(o,{headers:i,timeout:5e3});return!c.data||c.data.code!=="0000"?(_("info",`[Renren] Mac\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${c?.data?.code}`),null):(c.data.data||[]).map(l=>{let d=[];if(l.highlights&&(l.highlights.alias&&(d=l.highlights.alias.split(",").map(f=>f.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),l.highlights.original_name)){let f=l.highlights.original_name.replace(/<[^>]+>/g,"").trim();f&&!d.includes(f)&&d.push(f)}return{provider:"renren",mediaId:String(l.id),title:String(l.title||l.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:d,type:l.classify||l.cat||"Renren",season:null,year:l.year||null,imageUrl:l.cover||l.cover3||"",episodeCount:null,currentEpisodeIndex:null}})}catch(n){return _("info","[Renren] performMacSearch error:",n.message),null}}async performWinSearch(e,r=30){try{let n=`https://${this.API_CONFIG.WIN_HOST}/search/comprehensive/precise-mixed`,i=EI({keywords:e,searchAfter:"",size:r}),a=this.buildWinHeaders(),o=await ge(`${n}?${i}`,{headers:a,timeout:5e3});if(!o.data||o.data.code!=="0000")return _("info",`[Renren] Win\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${o?.data?.code}`),null;let c=o.data.data||{},u=[],l=c.seasonList||[],d=c.fuzzySeasonList||[],f=c.seriesList||[],p=m=>{let h=[];if(m.highlights&&(m.highlights.alias&&(h=m.highlights.alias.split(",").map(A=>A.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),m.highlights.original_name)){let A=m.highlights.original_name.replace(/<[^>]+>/g,"").trim();A&&!h.includes(A)&&h.push(A)}return{provider:"renren",mediaId:String(m.id),title:String(m.title||m.alias||m.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:h,type:m.classify||m.cat||"Renren",season:null,year:m.year||null,imageUrl:m.cover||m.coverUrl,episodeCount:null,currentEpisodeIndex:null}};return l.forEach(m=>u.push(p(m))),d.forEach(m=>u.push(p(m))),f.forEach(m=>{m.seasonList&&Array.isArray(m.seasonList)&&m.seasonList.forEach(h=>{u.push(p(h))})}),u}catch(n){return _("info","[Renren] performWinSearch error:",n.message),null}}async performNetworkSearch(e,{lockRef:r=null,lastRequestTimeRef:n={value:0},minInterval:s=500}={}){try{let i=`https://${this.API_CONFIG.WEB_HOST}/m-station/search/drama`,a={keywords:e,size:20,order:"match",search_after:"",isExecuteVipActivity:!0};if(r){for(;r.value;)await new Promise(f=>setTimeout(f,50));r.value=!0}let c=Date.now()-n.value;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?(II(u.data)?.data?.searchDramaList||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:f.episodeTotal,currentEpisodeIndex:null}}):(_("info","[Renren] \u7F51\u9875\u7248\u641C\u7D22\u65E0\u54CD\u5E94\u6570\u636E"),null)}catch(i){return _("info","[Renren] performNetworkSearch error:",i.message),null}}async search(e){_("info",`[Renren] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=[],n=!1,s=["WIN","TV","MAC","WEB"],i=s.indexOf(Vi.search);i===-1&&(i=0);for(let a=i;a<s.length;a++){let o=s[a];_("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,Vi.search!==o&&(_("info",`[Renren] \u641C\u7D22\u57DF\u63A5\u53E3\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${Vi.search} -> ${o}`),Vi.search=o);break}else _("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38\u6216\u8BF7\u6C42\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){_("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return n||(_("info","[Renren] \u641C\u7D22\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5F02\u5E38\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 WIN \u7AEF"),Vi.search="WIN"),r}async getAppDramaDetail(e,r=""){try{let n=Date.now(),s="/qwtv/drama/details",i={isAgeLimit:"false",seriesId:String(e),episodeId:String(r),clarity:"HD",caption:"0",hevcOpen:"1"},a=CI(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p)}`).join("&"),c=this.generateTvHeaders(n,a),u=await ge(`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,{headers:c,timeout:5e3});if(!u||!u.data)return _("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A: ID=${e}`),null;let l=u.data,d=l.msg||l.message||"";return d.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(_("info",`[Renren] TV\u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):l.code!=="0000"?(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${l.code}, msg=${d} (ID=${e})`),null):!l.data||!l.data.episodeList||l.data.episodeList.length===0?l.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),l.data.episodeList||(l.data.episodeList=[]),l.data):(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (ID=${e})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(_("info",`[Renren] TV\u7AEF\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${l.data.episodeList.length}`),l.data)}catch(n){return _("info","[Renren] getAppDramaDetail error:",n.message),null}}async getGatewayDramaDetail(e,r,n=""){try{let s=Date.now(),i="/qwtv/drama/details",a={isAgeLimit:"false",seriesId:String(r),episodeId:String(n),clarity:"HD",caption:"0",hevcOpen:"1"},o=CI(i,s,a,this.API_CONFIG.TV_SECRET_KEY),c=Object.entries(a).map(([m,h])=>`${m}=${encodeURIComponent(h)}`).join("&"),u=this.generateTvHeaders(s,o),l=`https://${e}${i}?${c}`,d=await ge(l,{headers:u,timeout:5e3});if(!d||!d.data)return _("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A (${e}): ID=${r}`),null;let f=d.data,p=f.msg||f.message||"";return p.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(_("info",`[Renren] \u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):f.code!=="0000"?(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${f.code}, msg=${p} (${e}) (ID=${r})`),null):!f.data||!f.data.episodeList||f.data.episodeList.length===0?f.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),f.data.episodeList||(f.data.episodeList=[]),f.data):(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (${e}) (ID=${r})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(_("info",`[Renren] \u8DE8\u534F\u8BAE\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F (${e}): ID=${r}, \u5305\u542B\u96C6\u6570=${f.data.episodeList.length}`),f.data)}catch(s){return _("info",`[Renren] getGatewayDramaDetail error (${e}):`,s.message),null}}async getWebDramaDetailFallback(e){let r=`https://${this.API_CONFIG.WEB_HOST}/m-station/drama/page`,n={hsdrOpen:0,isAgeLimit:0,dramaId:String(e),hevcOpen:1};try{let s=await this.renrenRequest("GET",r,n);if(!s.data)return null;let i=II(s.data);return i&&i.data&&i.data.episodeList&&i.data.episodeList.length>0?(_("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${i.data.episodeList.length}`),i.data):null}catch(s){return _("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u8BF7\u6C42\u5931\u8D25: ${s.message}`),null}}async getDetail(e,r=""){let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(Vi.detail);i===-1&&(i=0);for(let a=i;a<s.length;a++){let o=s[a];_("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 Vi.detail!==o&&(_("info",`[Renren] \u8BE6\u60C5\u57DF\u63A5\u53E3\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${Vi.detail} -> ${o}`),Vi.detail=o),n;_("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5931\u8D25\u6216\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){_("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return _("info","[Renren] \u8BE6\u60C5\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),Vi.detail="TV",null}async getEpisodes(e){let r=await this.getDetail(e);if(!r)return _("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: \u8BE6\u60C5\u5BF9\u8C61\u4E3A\u7A7A ID=${e}`),[];if(!r.episodeList||!Array.isArray(r.episodeList))return _("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: episodeList \u5B57\u6BB5\u7F3A\u5931\u6216\u975E\u6570\u7EC4 ID=${e}`),[];let n=[],s=String(e);r.episodeList.forEach((a,o)=>{let c=String(a.sid||"").trim();if(!c)return;let u=a.title?String(a.title):`\u7B2C${String(a.episodeNo||o+1).padStart(2,"0")}\u96C6`,l=`${s}-${c}`;n.push({sid:l,order:a.episodeNo||o+1,title:u})});let i=n.map(a=>({provider:"renren",episodeId:a.sid,title:a.title,episodeIndex:a.order,url:null}));if(r.dramaInfo&&(r.dramaInfo.enName&&(i.enName=r.dramaInfo.enName),r.dramaInfo.year&&(i.year=r.dramaInfo.year),r.dramaInfo.dramaType)){let a=r.dramaInfo.dramaType,o=r.dramaInfo.plotType||"";a==="TV"?a="\u7535\u89C6\u5267":a==="MOVIE"?o.includes("\u52A8\u753B")?a="\u5267\u573A\u7248":a="\u7535\u5F71":a==="COMIC"?a="\u52A8\u753B":a==="VARIETY"?a="\u7EFC\u827A":a==="DOCUMENTARY"&&(a="\u7EAA\u5F55\u7247"),i.type=a}return i}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("info","[Renren] sourceAnimes is not a valid array"),[];let o=e.filter(d=>yt(d.title,r,i)?!0:d.aliases&&Array.isArray(d.aliases)?d.aliases.some(f=>yt(f,r,i)):!1),c=i!==null?i:Wt(r);if(c!==null){let d=o.filter(f=>{let p=Ct(f.title).season;return p===c||c===1&&p===null});d.length>0&&(o=d,_("info",`[Renren] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l={TV:"TV",MAC:"Mac",WIN:"Win",WEB:"\u7F51\u9875"}[Vi.search]||"\u672A\u77E5";_("info",`[Renren] ${l}\u7AEF\u641C\u7D22\u63D0\u53D6\u7ED3\u679C\u6570\u91CF: ${e.length} \u6709\u6548\u7ED3\u679C\u6570\u91CF\uFF1A${o.length}`),this.isBatchMode=!0;try{await Promise.all(o.map(async d=>{try{let f=await this.getEpisodes(d.mediaId),p=[];for(let m of f)p.push({name:m.episodeIndex.toString(),url:m.episodeId,title:`\u3010${m.provider}\u3011 ${m.title}`});if(p.length>0){let m=d.aliases||[];f.enName&&!m.includes(f.enName)&&m.push(f.enName);let h=f.year||d.year||"",A=f.type||(d.type&&d.type!=="Renren"?d.type:"Renren"),g={animeId:Number(d.mediaId),bangumiId:String(d.mediaId),animeTitle:`${d.title}(${h})\u3010${A}\u3011from renren`,aliases:m,type:A,typeDescription:A,imageUrl:d.imageUrl,startDate:Or(h),episodeCount:p.length,rating:0,isFavorited:!0,source:"renren"};a.push(g),Dt({...g,links:p},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(f){_("info",`[Renren] Error processing anime: ${f.message}`)}}))}finally{this.isBatchMode=!1,this.checkAndIncrementUsage()}return this.sortAndPushAnimesByYear(a,n),a}async getAppDanmu(e){try{let r=Date.now(),n=e;String(e).includes("-")&&(n=String(e).split("-")[1]);let s=`/v1/produce/danmu/EPISODE/${n}`,a=CI(s,r,{},this.API_CONFIG.TV_SECRET_KEY),o=this.generateTvHeaders(r,a),c=`https://${this.API_CONFIG.TV_DANMU_HOST}${s}`,u=await ge(c,{headers:o,timeout:5e3,validStatusCodes:[404]});if(u.status===404)return u.data&&u.data.error==="Document not found"?[]:(_("info","[Renren] TV \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!u.data)return null;let l=II(u.data);return Array.isArray(l)?l:l&&l.data&&Array.isArray(l.data)?l.data:[]}catch(r){return _("info","[Renren] getAppDanmu error:",r.message),null}}async getMacDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,n=`https://${this.API_CONFIG.MAC_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.MAC_USER_AGENT,Accept:"*/*"};return this.fetchStandardDanmu(n,s,"MAC")}async getWinDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,n=`https://${this.API_CONFIG.WIN_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.WIN_USER_AGENT};return this.fetchStandardDanmu(n,s,"WIN")}async getWebDanmuFallback(e){let r=e;String(e).includes("-")&&(r=String(e).split("-")[1]);let n={user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},s=`https://${this.API_CONFIG.WEB_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,i={Accept:"application/json","User-Agent":n.user_agent,Origin:n.origin,Referer:n.referer};try{let a=await this.renrenHttpGet(s,{headers:i,validStatusCodes:[404]});if(a.status===404)return a.data&&a.data.error==="Document not found"?[]:(_("info","[Renren] WEB \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!a.data)return null;let o=II(a.data),c=[];return Array.isArray(o)?c=o:o?.data&&Array.isArray(o.data)&&(c=o.data),c}catch(a){return _("info",`[Renren] \u7F51\u9875\u7248\u5F39\u5E55\u964D\u7EA7\u5931\u8D25: ${a.message}`),null}}async getEpisodeDanmu(e){let r=0;if(String(e).includes("-")){let[o,c]=String(e).split("-"),u=await this.getDetail(o,c);if(u&&u.watchInfo){let l=u.watchInfo.m3u8||u.watchInfo.tria4kPlayInfo||{},d=parseInt(l.startingLength)||0,f=parseInt(l.openingLength)||0;r=d>0?d:f>0?f:0}}let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(Vi.danmu);i===-1&&(i=0);for(let o=i;o<s.length;o++){let c=s[o];_("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 Vi.danmu!==c&&(_("info",`[Renren] \u5F39\u5E55\u57DF\u63A5\u53E3\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${Vi.danmu} -> ${c}`),Vi.danmu=c),n.length>0?_("info",`[Renren] \u6210\u529F\u83B7\u53D6 ${n.length} \u6761\u5F39\u5E55 (${c}\u7AEF)`):_("info",`[Renren] \u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55 (${c}\u7AEF)`),n.adDurationMs=r,n.episodeId=e,n;_("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(u){_("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${u.message}`)}}_("info","[Renren] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),Vi.danmu="TV";let a=[];return a.adDurationMs=r,a.episodeId=e,a}async getEpisodeDanmuSegments(e){return new St({type:"renren",segmentList:[{type:"renren",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}parseRRSPPFields(e){let r=String(e).split(","),n=(l,d,f)=>{if(l==null||l==="")return f;let p=d(l);return isNaN(p)?f:p},s=n(r[0],parseFloat,0),i=n(r[1],l=>parseInt(l,10),1),a=n(r[2],l=>parseInt(l,10),25),o=n(r[3],l=>parseInt(l,10),16777215),c=r[6]||"",u=r[7]||`${s}:${c}`;return{timestamp:s,mode:i,size:a,color:o,userId:c,contentId:u}}formatComments(e){let r=e.adDurationMs||0,n=e.episodeId||"\u672A\u77E5",s=r/1e3,i=0,a=e.map(o=>{let c=String(o.d||"");if(!c&&o.content&&(c=String(o.content)),!c)return null;if(o.p){let u=this.parseRRSPPFields(o.p),l=u.timestamp-s;return l<0?(i++,null):{cid:Number(u.contentId)||0,p:`${l.toFixed(2)},${u.mode},${u.color},[renren]`,m:c,t:l}}return null}).filter(Boolean);return r>0&&_("info",`[Renren] \u8BC6\u522B\u5230\u524D\u7F6E\u5E7F\u544A(${r}ms)\uFF0C\u5DF2\u81EA\u52A8\u504F\u79FB\u65F6\u95F4\u8F74\u3002\u6210\u529F\u8F6C\u6362 ${a.length} \u6761\uFF0C\u5254\u9664\u65E0\u6548\u5F39\u5E55 ${i} \u6761 (ID=${n})`),a}};Ot();_t();ir();Ts();$n();hn();hs();var fmr={1:"\u97E9\u5267",2:"\u7EFC\u827A",3:"\u7535\u5F71",4:"\u65E5\u5267",5:"\u7F8E\u5267",6:"\u6CF0\u5267",7:"\u56FD\u4EA7\u5267"},Cg=1e8,ost=6e4,As=Object.freeze({HXQ:"hxq",TV:"tv",MERGED:"merged"}),YT=class extends Tt{constructor(){super(),this.appHost="https://hxqapi.hiyun.tv",this.tvHost="https://api.xiawen.tv",this.fallbackDanmuHost="https://hxqapi.zmdcq.com",this.danmuHosts=Array.from(new Set([this.appHost,this.fallbackDanmuHost])),this.defaultRefer="2JGztvGjRVpkxcr0T4ZWG2k+tOlnHmDGUNMwAGSeq548YV2FMbs0h0bXNi6DJ00L",this.danmuUserAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",this.appUserAgent="HanjuTV/6.8.2 (Redmi Note 12; Android 14; Scale/2.00)",this._mobileMakeHeaders=null,this._tvMakeHeaders=null,this._mobileWarmupPromise=null,this._mobileWarmupAttempted=!1}getDanmuHeaders(){return{"Content-Type":"application/json","User-Agent":this.danmuUserAgent}}getAppHeaders(){return{vc:"a_8280",vn:"6.8.2",ch:"xiaomi",app:"hj","User-Agent":this.appUserAgent,"Accept-Encoding":"gzip"}}getCategory(e){return fmr[e]||"\u5176\u4ED6"}async buildTvHeaders(){return this._tvMakeHeaders||(this._tvMakeHeaders=await Vnt(Date.now())),this._tvMakeHeaders(Date.now())}async buildMobileHeaders(){return this._mobileMakeHeaders||(this._mobileMakeHeaders=await Knt(Date.now())),this._mobileMakeHeaders(Date.now())}async tvGet(e,r={}){let n=await this.buildTvHeaders(),s=await ge(`${this.tvHost}${e}`,{headers:n.headers,timeout:1e4,retries:1,...r});return wie(s?.data,n.uid)}logError(e,r){_("error",`[Hanjutv] ${e}:`,{message:r.message,name:r.name,stack:r.stack})}attachDanmuSourceLabel(e=[],r=""){let n=s4(r);return Array.isArray(e)?e.map(s=>({...s,_sourceLabel:n})):[]}async tryGet(e,r,n){try{return await e()}catch(s){return n&&_("warn",`${n}: ${s.message}`),r}}normalizeSearchItems(e=[]){return Array.isArray(e)?e.map(r=>{if(!r||typeof r!="object")return null;let n=r.sid||r.seriesId||r.id||r.series_id,s=r.name||r.title||r.seriesName||r.showName;if(!n||!s)return null;let i=typeof r.image=="object"&&r.image!==null?r.image:{},a=i.thumb||i.poster||i.url||r.thumb||r.poster||"";return{...r,sid:String(n),name:String(s),image:{...i,thumb:a}}}).filter(Boolean):[]}normalizeEpisodes(e=[]){return Array.isArray(e)?e.map((r,n)=>{if(!r||typeof r!="object")return null;let s=r.pid||r.eid||r.id||r.programId||r.episodeId;if(!s)return null;let i=r.serialNo??r.serial_no??r.sort??r.sortNo??r.num??r.episodeNo??n+1,a=Number(i),o=r.pid||r.programId||r.episodeId||r.id||"",c=r.eid||r.id||r.episodeId||"";return{...r,episodeId:String(s),pid:o?String(o):"",eid:c?String(c):"",serialNo:Number.isFinite(a)&&a>0?a:n+1,title:r.title||r.name||r.programName||r.episodeTitle||""}}).filter(Boolean).sort((r,n)=>r.serialNo-n.serialNo):[]}normalizeHxqEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.pid).map(r=>({...r,pid:String(r.pid)}))}normalizeTvEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.eid||r.episodeId).map(r=>({...r,eid:String(r.eid||r.episodeId)}))}extractSearchItems(e){let r=e?.seriesData?.seriesList||e?.seriesList||e?.seriesData?.series||[];return this.normalizeSearchItems(r)}dedupeBySid(e=[]){let r=new Map;for(let n of e){if(!n?.sid)continue;let s=String(n.sid);r.has(s)||r.set(s,n)}return Array.from(r.values())}isMergeableSearchPair(e,r,n=""){return!e?.name||!r?.name||n&&(!yt(e.name,n)||!yt(r.name,n))?!1:yt(e.name,r.name)&&yt(r.name,e.name)}buildSearchCandidate(e,r,n=""){if(!e?.sid)return null;let s=String(e.sid),i=String(n||"").trim(),a=r===As.MERGED?Yr(`hxq:${s}|tv:${i}`):Yr(s);return{...e,animeId:a,_variant:r,...i?{tvSid:i}:{}}}mergeSearchCandidates(e,r=[],n=[]){let s=this.dedupeBySid(r),i=this.dedupeBySid(n),a=p=>{let m=[],h=[];for(let A of p)(yt(A?.name||"",e)?m:h).push(A);return{matched:m,unmatched:h}},o=a(s),c=a(i),u=o.matched.length+c.matched.length>0,l=[],d=new Set;for(let p of o.matched){let m=c.matched.find(h=>!d.has(String(h.sid))&&this.isMergeableSearchPair(p,h,e));m?(d.add(String(m.sid)),l.push(this.buildSearchCandidate(p,As.MERGED,m.sid))):l.push(this.buildSearchCandidate(p,As.HXQ))}c.matched.filter(p=>!d.has(String(p.sid))).forEach(p=>{l.push(this.buildSearchCandidate(p,As.TV))}),u?l.push(...o.unmatched.map(p=>this.buildSearchCandidate(p,As.HXQ)).filter(Boolean),...c.unmatched.map(p=>this.buildSearchCandidate(p,As.TV)).filter(Boolean)):l.push(...s.map(p=>this.buildSearchCandidate(p,As.HXQ)).filter(Boolean),...i.map(p=>this.buildSearchCandidate(p,As.TV)).filter(Boolean));let f=p=>p.map(m=>m.name);return{resultList:l,stats:{s5Total:s.length,s5Matched:o.matched.length,tvTotal:i.length,tvMatched:c.matched.length,mergedCount:u?l.filter(p=>p?._variant===As.MERGED).length:0,s5MatchedList:f(o.matched),s5UnmatchedList:f(o.unmatched),tvMatchedList:f(c.matched),tvUnmatchedList:f(c.unmatched)}}}async extractFromPayload(e,r,n){if(!e||typeof e!="object")throw new Error(`${n} \u54CD\u5E94\u4E3A\u7A7A`);if(typeof e.data=="string"&&e.data.length>0){let i;try{i=await wie(e,r)}catch(o){throw new Error(`${n} \u54CD\u5E94\u89E3\u5BC6\u5931\u8D25: ${o.message}`)}let a=this.extractSearchItems(i);if(a.length===0)throw new Error(`${n} \u89E3\u5BC6\u540E\u65E0\u6709\u6548\u7ED3\u679C`);return a}let s=this.extractSearchItems(e);if(s.length===0)throw new Error(`${n} \u65E0\u6709\u6548\u7ED3\u679C`);return s}async warmupMobileIdentity(e){try{await ge(`${this.appHost}/api/common/configs`,{headers:e,timeout:8e3,retries:0})}catch{}}async ensureMobileIdentityWarmed(){if(this._mobileWarmupAttempted){await this._mobileWarmupPromise;return}this._mobileWarmupAttempted=!0,this._mobileWarmupPromise=(async()=>{let e=await this.buildMobileHeaders();await this.warmupMobileIdentity(e.headers)})(),await this._mobileWarmupPromise}async searchWithS5Api(e){await this.ensureMobileIdentityWarmed();let{uid:r,headers:n}=await this.buildMobileHeaders(),s=encodeURIComponent(e),i=await ge(`https://hxqapi.hiyun.tv/api/search/s5?k=${s}&srefer=search_input&type=0&page=1`,{headers:n,timeout:1e4,retries:1});return this.extractFromPayload(i?.data,r,"s5")}async searchWithTvApi(e){let r=encodeURIComponent(e),n=await this.buildTvHeaders(),s=await ge(`https://api.xiawen.tv/api/v1/aggregate/search?key=${r}&scope=101&page=1`,{headers:n.headers,timeout:1e4,retries:1});return this.extractFromPayload(s?.data,n.uid,"tv")}async search(e){try{let r=String(e||"").trim();if(!r)return[];let[n,s]=await Promise.all([this.tryGet(()=>this.searchWithS5Api(r),[],"[Hanjutv] s5 \u641C\u7D22\u5931\u8D25"),this.tryGet(()=>this.searchWithTvApi(r),[],"[Hanjutv] TV \u641C\u7D22\u5931\u8D25")]),{resultList:i,stats:a}=this.mergeSearchCandidates(r,n,s),o=a.s5Matched+a.tvMatched;return i.length>0&&o===0?(_("warn",`[Hanjutv] \u6240\u6709\u5019\u9009\u5747\u672A\u547D\u4E2D\u5173\u952E\u8BCD\uFF0C\u4E22\u5F03\u7591\u4F3C\u63A8\u8350\u6D41\u7ED3\u679C: ${r}`),[]):i.length===0?(_("info","[Hanjutv] hanjutvSearchresp: s5 \u4E0E TV \u63A5\u53E3\u5747\u65E0\u6709\u6548\u7ED3\u679C"),[]):(_("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5MatchedList=${JSON.stringify(a.s5MatchedList)}, s5UnmatchedList=${JSON.stringify(a.s5UnmatchedList)}, tvMatchedList=${JSON.stringify(a.tvMatchedList)}, tvUnmatchedList=${JSON.stringify(a.tvUnmatchedList)}`),_("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5=${a.s5Total}(\u547D\u4E2D${a.s5Matched}), tv=${a.tvTotal}(\u547D\u4E2D${a.tvMatched}), merged=${a.mergedCount}`),_("info",`[Hanjutv] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i.filter(Boolean))}catch(r){return this.logError("getHanjutvAnimes error",r),[]}}async getSeriesDetail(e,r,n,s){try{let i=String(e||"").trim();if(!i)return null;let a=await this.tryGet(()=>r(i),null,s);return a||(_("info",`[Hanjutv] ${n}: series \u4E0D\u5B58\u5728`),null)}catch(i){return this.logError(s,i),null}}async getHxqDetail(e){return this.getSeriesDetail(e,async r=>(await ge(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data?.series??null,"getHanjutvHxqDetail","getHanjutvHxqDetail error")}async getTvDetail(e){return this.getSeriesDetail(e,async r=>(await this.tvGet(`/api/v1/series/detail/query?sid=${r}`))?.series??null,"getHanjutvTvDetail","getHanjutvTvDetail error")}async getHxqEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=[async()=>{let i=await ge(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1});return this.normalizeHxqEpisodes(Array.isArray(i?.data?.playItems)?i.data.playItems:[])},async()=>{let a=(await ge(`${this.appHost}/api/series2/episodes?sid=${r}&refer=${encodeURIComponent(this.defaultRefer)}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes(a?.programs||a?.episodes||a?.qxkPrograms||[])},async()=>{let a=(await ge(`${this.appHost}/api/series/programs_v2?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes([...Array.isArray(a?.programs)?a.programs:[],...Array.isArray(a?.qxkPrograms)?a.qxkPrograms:[]])}],s=[];for(let i of n){if(s.length>0)break;s=await this.tryGet(i,[])}return s.length===0?(_("info","[Hanjutv] getHanjutvHxqEpisodes: episodes \u4E0D\u5B58\u5728"),[]):s.sort((i,a)=>i.serialNo-a.serialNo)}catch(r){return this.logError("getHanjutvHxqEpisodes error",r),[]}}async getTvEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=await this.tryGet(async()=>{let s=await this.tvGet(`/api/v1/series/detail/query?sid=${r}`);return this.normalizeTvEpisodes(s?.episodes||[])},[],"getHanjutvTvEpisodes error");return n.length===0?(_("info","[Hanjutv] getHanjutvTvEpisodes: episodes \u4E0D\u5B58\u5728"),[]):n.sort((s,i)=>s.serialNo-i.serialNo)}catch(r){return this.logError("getHanjutvTvEpisodes error",r),[]}}resolveAnimeYear(e,...r){let n=[e?.updateTime,e?.publishTime,...r.map(s=>s?.updateTime),...r.map(s=>s?.publishTime)];for(let s of n){if(!s)continue;let a=new Date(s).getFullYear();if(Number.isFinite(a)&&a>1900)return a}return new Date().getFullYear()}buildEpisodeTitle(e,r=""){let n=String(r||"").trim();return n?`\u7B2C${e}\u96C6\uFF1A${n}`:`\u7B2C${e}\u96C6`}buildEpisodeLink(e,r){let n=e?.serialNo??r?.serialNo??1,s=this.buildEpisodeTitle(n,e?.title||r?.title||""),i="";if(e?.pid&&r?.eid){let a=Ynt(e.pid,r.eid);i=a?`hanjutv:${a}`:""}else e?.pid?i=`hxq:${e.pid}`:r?.eid&&(i=`tv:${r.eid}`);return i?{name:s,url:i,title:`\u3010hanjutv\u3011 ${s}`}:null}mergeVariantEpisodes(e=[],r=[]){let n=new Map(e.map(a=>[Number(a.serialNo),a])),s=new Map(r.map(a=>[Number(a.serialNo),a]));return Array.from(new Set([...n.keys(),...s.keys()])).filter(Number.isFinite).sort((a,o)=>a-o).map(a=>this.buildEpisodeLink(n.get(a),s.get(a))).filter(Boolean)}buildAnimeSummary(e,r,n,s){let i=this.getCategory(r?.category??e?.category),a=this.resolveAnimeYear(e,r);return{animeId:s,bangumiId:String(s),animeTitle:`${e.name}(${a})\u3010${i}\u3011from hanjutv`,type:i,typeDescription:i,imageUrl:e?.image?.thumb||"",startDate:Or(a),episodeCount:n.length,rating:Number(r?.rank??0),isFavorited:!0,source:"hanjutv"}}async getHxqBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getHxqDetail(e),this.getHxqEpisodes(e)]);return{detail:r,episodes:n}}async getTvBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getTvDetail(e),this.getTvEpisodes(e)]);return{detail:r,episodes:n}}async buildAnimePayload(e){let r=e?._variant||As.HXQ,n=String(e?.sid||"").trim(),s=String(e?.tvSid||"").trim(),i=s||(r===As.TV?n:""),a=Number(e?.animeId),o=r===As.MERGED&&n&&s?Number.isFinite(a)&&a>0?a:Yr(`hxq:${n}|tv:${s}`):null,c=(r===As.HXQ||r===As.MERGED)&&n,u=(r===As.TV||r===As.MERGED)&&i,[l,d]=await Promise.all([c?this.getHxqBundle(n):Promise.resolve({detail:null,episodes:[]}),u?this.getTvBundle(i):Promise.resolve({detail:null,episodes:[]})]);if(r===As.MERGED&&n&&s){let f=this.mergeVariantEpisodes(l.episodes,d.episodes);if(f.length>0){let p=l.detail?.category?l.detail:d.detail?.category?d.detail:l.detail||d.detail;return{summary:this.buildAnimeSummary(e,p,f,o),links:f}}}if((r===As.HXQ||r===As.MERGED)&&n){let f=l.episodes.map(p=>this.buildEpisodeLink(p,null)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,l.detail,f,o??Yr(n)),links:f}}if((r===As.TV||r===As.MERGED)&&i){let f=d.episodes.map(p=>this.buildEpisodeLink(null,p)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,d.detail,f,o??Yr(i)),links:f}}return null}async handleAnimes(e,r,n,s=null,i=null){if(!Array.isArray(e))return _("error","[Hanjutv] sourceAnimes is not a valid array"),[];let a=[],o=e.filter(u=>yt(u.name,r,i)),c=i!==null?i:Wt(r);if(c!==null){let u=o.filter(l=>{let d=Ct(l.name).season;return d===c||c===1&&d===null});u.length>0&&(o=u,_("info",`[Hanjutv] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}return await Promise.all(o.map(async u=>{try{let l=await this.buildAnimePayload(u);if(!l||!l.summary||!Array.isArray(l.links)||l.links.length===0)return;a.push(l.summary),Dt({...l.summary,links:l.links},s),O.animes.length>O.MAX_ANIMES&&$t()}catch(l){_("error",`[Hanjutv] Error processing anime: ${l.message}`)}})),this.sortAndPushAnimesByYear(a,n),a}async fetchEpisodeDanmuByRef(e){let r=String(e?.id||"").trim();if(!r)return[];let n=[];if(!e.preferTv){let s=this.getDanmuHeaders();for(let i of this.danmuHosts){let a=[];try{let o=0,c=0,u=ost,l=0,d=240;for(;c<Cg&&l<d;){let f=await ge(`${i}/api/danmu/playItem/list?pid=${r}&prevId=${o}&fromAxis=${c}&toAxis=${u}&offset=0`,{headers:s,timeout:1e4,retries:1});l++;let p=Array.isArray(f?.data?.danmus)?f.data.danmus:[];p.length>0&&a.push(...p);let m=Number(f?.data?.more??0)===1||f?.data?.more===!0||f?.data?.more==="1",h=Number(f?.data?.nextAxis??Cg),A=Number(f?.data?.lastId??o);if(!Number.isFinite(h)||h<=c||h>=Cg)break;if(Number.isFinite(A)&&A>o&&(o=A),c=h,!m){if(p.length===0)break;u=c+ost}}if(a.length>0){n=a;break}}catch(o){if(this.logError(`fetchHanjutvEpisodeDanmu(\u97E9\u5C0F\u5708\u5F39\u5E55:${i})`,o),a.length>0){n=a;break}}}}if(n.length===0){let s=0,i=0,a=0,o=120;for(;i<Cg&&a<o;)try{let c=await this.tvGet(`/api/v1/bulletchat/episode/get?eid=${r}&prevId=${s}&fromAxis=${i}&toAxis=${Cg}&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??Cg),f=Number(c.lastId??s);if(!Number.isFinite(d)||d<=i||d>=Cg||(Number.isFinite(f)&&f>s&&(s=f),i=d,l||(s=0),u.length===0&&!l))break}catch(c){this.logError("fetchHanjutvEpisodeDanmu(TV\u7AEF)",c);break}}return n}async getEpisodeDanmu(e){let r=Jnt(e),n=Array.isArray(r?.refs)?r.refs.filter(i=>i?.id):[];if(n.length===0)return[];if(n.length===1){let i=await this.fetchEpisodeDanmuByRef(n[0]);return this.attachDanmuSourceLabel(i,n[0].rawId)}return(await Promise.all(n.map(async i=>{let a=await this.fetchEpisodeDanmuByRef(i);return this.attachDanmuSourceLabel(a,i.rawId)}))).flat()}async getEpisodeDanmuSegments(e){return _("info","[Hanjutv] \u83B7\u53D6\u97E9\u5267TV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"hanjutv",duration:0,segmentList:[{type:"hanjutv",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>({cid:Number(r.did),p:`${(r.t/1e3).toFixed(2)},${r.tp===2?5:r.tp},${Number(r.sc)},[${r._sourceLabel||"hanjutv"}]`,m:r.con,t:r.t/1e3,like:r.lc,_sourceLabel:r._sourceLabel}))}};Ot();_t();ir();$n();so();hn();hs();var Tg=class extends Tt{async search(e){try{let r=[];O.useBangumiData&&(r=await Au(e,["gamer","gamer_hk"]),_("info",`[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(p=>p.video_sn);if(r.length>0&&r.length===n.length)return _("info","[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D\u5747\u542B video_sn\uFF0C\u542F\u7528\u6570\u636E\u6E90\u76F4\u901A\u6A21\u5F0F\uFF08\u8DF3\u8FC7\u641C\u7D22\u63A5\u53E3\uFF09"),r.map(p=>{let h=(p.titles.find(A=>A&&A.includes(e))||p.titles[1]||p.title)+(p.titleSuffix||"");return{video_sn:parseInt(p.video_sn),title:h,_displayTitle:h,isLocalPriority:!0,aliases:[...p.titles],_typeStr:p.typeStr,_fromDataSourceDirectHit:!0,_originalQuery:e,_bangumiBegin:p.begin||null}});let s=No(e),i=e,a=encodeURIComponent(s);_("info",`[Bahamut] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`),_("info",`[Bahamut] \u5DF4\u54C8\u4F7F\u7528\u641C\u7D22\u8BCD: ${s}`);let o=new AbortController,c=(async()=>{try{let p=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${a}`,m=O.makeProxyUrl(p),h=await ge(m,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(h&&h.data&&h.data.anime&&h.data.anime.length>0){o.abort();let A=h.data.anime;for(let g of A)try{g._originalQuery=e,g._searchUsedTitle=s}catch{}return _("info",`[Bahamut] bahamutSearchresp (original): ${JSON.stringify(A)}`),_("info",`[Bahamut] \u8FD4\u56DE ${A.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:A,source:"original"}}return _("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"}}catch(p){return _("error","[Bahamut] \u539F\u59CB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"original"}}})(),u=(async()=>{try{await new Promise(x=>setTimeout(x,100));let p=await Xb(i,o.signal,"Bahamut");if(!p||!p.title)return _("info","[Bahamut] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:m,cnAlias:h}=p;_("info",`[Bahamut] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u8FDB\u884C\u641C\u7D22: ${m}`);let g=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${encodeURIComponent(m)}`,b=O.makeProxyUrl(g),y=await ge(b,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},signal:o.signal,retries:3});if(y&&y.data&&y.data.anime&&y.data.anime.length>0){let x=y.data.anime;for(let v of x)try{v._originalQuery=e,v._searchUsedTitle=m,v._tmdbCnAlias=h}catch{}return _("info",`[Bahamut] bahamutSearchresp (TMDB): ${JSON.stringify(x)}`),_("info",`[Bahamut] \u8FD4\u56DE ${x.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:x,source:"tmdb"}}return _("info","[Bahamut] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"}}catch(p){return p.name==="AbortError"?(_("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0}):(_("error","[Bahamut] TMDB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"tmdb"})}})(),[l,d]=await Promise.all([c,u]),f=[];if(l.success?f=l.data:d.success?f=d.data:_("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C"),f.length>0&&r.length>0)for(let p of f){if(!p||!p.acg_sn)continue;let m=r.find(h=>String(p.acg_sn)===String(h.siteId))||r.find(h=>p.title&&h.title===p.title);if(m){let h=p.title,g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.isLocalPriority=!0,p.aliases=[...m.titles],h&&!p.aliases.includes(h)&&p.aliases.push(h),p._typeStr=m.typeStr,_("info",`[Bahamut] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}}return f}catch(r){return _("error","[Bahamut] getBahamutAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=`https://api.gamer.com.tw/anime/v1/video.php?videoSn=${e}`,n=O.makeProxyUrl(r),s=await ge(n,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(!s||!s.data)return _("info","[Bahamut] getBahamutEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];if(!s.data.data||!s.data.data.video||!s.data.data.anime)return _("info","[Bahamut] getBahamutEposides: video \u6216 anime \u4E0D\u5B58\u5728"),[];let{video:i,anime:a}=s.data.data;return _("info",`[Bahamut] getBahamutEposides: videoSn=${i.videoSn}, animeSn=${a.animeSn}, title=${a.title}, totalEpisode=${a.totalEpisode}, episodes=${JSON.stringify(a.episodes)}`),s.data.data}catch(r){return _("error","[Bahamut] getBahamutEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[],o=/[\u3040-\u309F\u30A0-\u30FF]/.test(r);r=No(r);function c(A,g,b){if(!A)return!1;let y=String(A),x=String(g||""),v=String(b||"");if(O.strictTitleMatch){if($0(y,x)||v&&$0(y,v))return!0;try{if($0(y,No(x))||$0(y,Qt(x))||v&&($0(y,No(v))||$0(y,Qt(v))))return!0}catch{}return!1}let I=Fr(y),R=Fr(x),w=v?Fr(v):"";if(I.includes(R)||w&&I.includes(w))return!0;try{if(I.includes(Fr(No(x)))||I.includes(Fr(Qt(x)))||w&&(I.includes(Fr(No(v)))||I.includes(Fr(Qt(v)))))return!0}catch{}try{if(I.toLowerCase().includes(R.toLowerCase())||w&&I.toLowerCase().includes(w.toLowerCase()))return!0}catch{}return!1}let l=(Array.isArray(e)?e:[]).filter(A=>{let g=A.title||"",b=A._searchUsedTitle||A._originalQuery||"";return o||A._searchUsedTitle&&A._searchUsedTitle!==r?(_("info",`[Bahamut] \u547D\u4E2D\u65E5\u8BED\u5173\u952E\u8BCD\u6216TMDB\u7ED3\u679C\uFF0C\u7ED5\u8FC7\u5339\u914D\u89C4\u5219\u76F4\u63A5\u4FDD\u7559: ${g}`),!0):c(g,r,b)||Array.isArray(A.aliases)&&A.aliases.some(y=>c(y,r,b))});l.forEach(A=>{A._originalTitleAlias=A.title?Qt(A.title):""});let d=l.length>0?l[0]._tmdbCnAlias:null;Zb(l,d);let f=i!==null?i:Wt(r),p=l;if(f!==null){let A=l.filter(g=>{let b=g._displayTitle||g.title,y=Ct(b).season;return y===f||f===1&&y===null});A.length>0&&(p=A,_("info",`[Bahamut] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${f}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let m=new Map,h=await Promise.all(p.map(async A=>{try{let g=String(A.video_sn);m.has(g)||m.set(g,this.getEpisodes(A.video_sn));let b=await m.get(g);if(!b||typeof b!="object"||Array.isArray(b))return null;let y=b.video,x=null;b.anime.episodes&&(x=b.anime.episodes[0]||Object.values(b.anime.episodes)[0]);let v=[];if(x&&Array.isArray(x))for(let I of x){let R=`\u7B2C${I.episode}\u96C6`;v.push({name:I.episode.toString(),url:I.videoSn.toString(),title:`\u3010bahamut\u3011 ${R}`})}if(v.length>0){let I=null;if(A._bangumiBegin&&(I=parseInt(A._bangumiBegin.substring(0,4))),!I&&b.anime&&b.anime.seasonStart&&(I=new Date(b.anime.seasonStart).getFullYear()),!I&&y&&y.upTime){let L=String(y.upTime).match(/(\d{4})/);L&&(I=parseInt(L[1]))}if(!I){let D=(A.info||"").match(/(\d{4})/);D&&(I=parseInt(D[1]))}let R=b.anime&&b.anime.cover||A.cover||y&&y.cover||"",w=A._displayTitle||Qt(A.title),N=Array.isArray(A.aliases)?[...A.aliases]:[];A._originalTitleAlias&&A._originalTitleAlias!==w&&!N.includes(A._originalTitleAlias)&&N.push(A._originalTitleAlias);let P=A._typeStr||"\u52A8\u6F2B",B=b.anime&&b.anime.title||y&&y.title||"";B.includes("[\u96FB\u5F71]")?P="\u5267\u573A\u7248":B.includes("[\u7279\u5225\u7BC7]")&&(P="OVA");let M={animeId:A.video_sn,bangumiId:String(A.video_sn),animeTitle:`${w}(${I||"N/A"})\u3010${P}\u3011from bahamut`,aliases:N,type:"\u52A8\u6F2B",typeDescription:"\u52A8\u6F2B",imageUrl:R,startDate:I?Or(I):Or(b.anime.seasonStart?new Date(b.anime.seasonStart).getFullYear():null),episodeCount:v.length,rating:y.rating,isFavorited:!0,source:"bahamut"};a.push(M),Dt({...M,links:v},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(g){_("error",`[Bahamut] Error processing anime: ${g.message}`)}}));return this.sortAndPushAnimesByYear(a,n),h}async getEpisodeDanmu(e){let r=[];try{let n=`https://api.gamer.com.tw/anime/v1/danmu.php?geo=TW%2CHK&videoSn=${e}`,s=O.makeProxyUrl(n),i=await ge(s,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});return i.data&&i.data.data&&i.data.data.danmu&&(r=i.data.data.danmu),r}catch(n){return _("error","[Bahamut] fetchBahamutEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return _("info","[Bahamut] \u83B7\u53D6\u5DF4\u54C8\u59C6\u7279\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"bahamut",segmentList:[{type:"bahamut",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){let r={0:1,1:5,2:4};return e.map(n=>({cid:Number(n.sn),p:`${(n.time/10).toFixed(2)},${r[n.position]||n.tp},${parseInt(n.color.slice(1),16)},[bahamut]`,m:O.danmuSimplifiedTraditional==="simplified"?Qt(n.text):n.text,t:n.time/10}))}};Ot();_t();ir();$n();so();hs();Ot();_t();ir();Ts();$n();hn();hs();var wg=class extends Tt{extractAliasesFromHintWords(e){if(!e||typeof e!="string")return[];let r=[],n=i=>{let a=String(i||"").replace(/<\/?em>/g,"").trim();a&&!r.includes(a)&&r.push(a)},s=e.match(/(?:又名|别名)\s*[::]\s*(.+)$/);return s&&s[1].split(/[、,,/|]+/).forEach(n),r}titleOrAliasMatches(e,r,n=null){return yt(e.title,r,n)?!0:Array.isArray(e.aliases)&&e.aliases.some(s=>yt(s,r,n))}filterTencentSearchItem(e,r){if(!e.videoInfo||!e.doc)return null;let n=e.videoInfo,s=e.doc.id;if(!n.year||n.year===0||n.subTitle==="\u5168\u7F51\u641C"||n.playFlag===2)return null;let i=n.title.replace(/<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(m=>{m.text&&m.text.includes("3D")&&(u=!0),m.text&&m.text.includes("2D")&&(l=!0)}),n.coverDoc.tags&&Array.isArray(n.coverDoc.tags)&&n.coverDoc.tags.forEach(m=>{m&&m.includes("3D")&&(u=!0),m&&m.includes("2D")&&(l=!0)})),u?c="3D"+c:l&&(c="2D"+c);let d=(n.playSites||[]).concat(n.episodeSites||[]);if(d.length>0&&!d.some(m=>m.enName==="qq")||a==="\u7535\u5F71"&&["\u82B1\u7D6E","\u5F69\u86CB","\u5E55\u540E","\u72EC\u5BB6","\u89E3\u8BF4","\u7279\u8F91","\u63A2\u73ED","\u62CD\u6444","\u5236\u4F5C","\u5BFC\u6F14","\u8BB0\u5F55","\u56DE\u987E","\u76D8\u70B9","\u6DF7\u526A","\u89E3\u6790","\u62A2\u5148"].some(h=>i.includes(h)))return null;let f=a==="\u7535\u5F71"?1:n.subjectDoc?n.subjectDoc.videoNum:0,p=this.extractAliasesFromHintWords(n.hintWords).filter(m=>m!==i);return{provider:"tencent",mediaId:s,title:i,aliases:p,type:c,year:n.year,imageUrl:n.imgUrl,episodeCount:f}}async search(e){try{_("info",`[Tencent] \u5F00\u59CB\u641C\u7D22: ${e}`);let r="https://pbaccess.video.qq.com/trpc.videosearch.mobile_search.MultiTerminalSearch/MbSearch?vplatform=2",n={version:"25071701",clientType:1,filterValue:"",uuid:"0379274D-05A0-4EB6-A89C-878C9A460426",query:e,retry:0,pagenum:0,isPrefetch:!0,pagesize:30,queryFrom:0,searchDatakey:"",transInfo:"",isneedQc:!0,preQid:"",adClientInfo:"",extraInfo:{multi_terminal_pc:"1",themeType:"1",sugRelatedIds:"{}",appVersion:""}},s={"Content-Type":"application/json",Origin:"https://v.qq.com","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`https://v.qq.com/x/search/?q=${encodeURIComponent(e)}&stag=&smartbox_ab=`,H38:"220496a1fb1498325e9be6d938",H42:"335a00a80ab9bbbef56793d8e7a97e87b9341dee34ebd83d61afc0cdb303214caaece3",Uk:"8e91af25d3af99d0f0640327e7307666",Cookie:"tvfe_boss_uuid=ee8f05103d59226f; pgv_pvid=3155633511; video_platform=2; ptag=v_qq_com; main_login=qq"},i=await Kr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("info","[Tencent] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return _("error",`[Tencent] API\u8FD4\u56DE\u9519\u8BEF: ${a.msg} (ret: ${a.ret})`),[];let o=[];if(a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.boxId==="MainNeed"&&u.itemList){_("info",`[Tencent] \u4ECE MainNeed box \u627E\u5230 ${u.itemList.length} \u4E2A\u9879\u76EE`),o=u.itemList;break}}if(o.length===0&&a.data&&a.data.normalList&&a.data.normalList.itemList&&(_("info","[Tencent] MainNeed box \u672A\u627E\u5230\uFF0C\u4F7F\u7528 normalList"),o=a.data.normalList.itemList),a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.itemList&&u.boxTitle&&Array.isArray(u.boxTitle.boxTitles)&&u.boxTitle.boxTitles.includes("\u76F8\u5173\u5F71\u89C6")){let l=u.itemList.filter(d=>d.videoInfo&&d.videoInfo.title&&d.videoInfo.title.includes(e));l.length>0?(_("info",`[Tencent] \u8FFD\u52A0\u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u5339\u914D "${e}" \u7684 ${l.length} \u4E2A\u9879\u76EE`),o=[...o,...l]):_("info",`[Tencent] \u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u65E0\u5339\u914D "${e}" \u7684\u9879\u76EE`);break}}if(o.length===0)return _("info","[Tencent] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o){let l=this.filterTencentSearchItem(u,e);l&&c.push(l)}return _("info",`[Tencent] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return _("error","[Tencent] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Tencent] \u83B7\u53D6\u5206\u96C6\u5217\u8868: cid=${e}`);let r="https://pbaccess.video.qq.com/trpc.universal_backend_service.page_server_rpc.PageServer/GetPageData?video_appid=3000010&vversion_name=8.2.96&vversion_platform=2",n={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:e,vid:"",lid:"",page_num:"",page_context:`cid=${e}&detail_page_type=1&req_from=web_vsite&req_from_second_type=&req_type=0`,detail_page_type:"1"}},s={"Content-Type":"application/json",Origin:"https://v.qq.com",Referer:`https://v.qq.com/x/cover/${e}.html`,"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/537.36 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Accept:"application/json","Accept-Language":"zh-CN,zh;q=0.9"},i=await Kr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("info","[Tencent] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return _("error",`[Tencent] \u5206\u96C6API\u8FD4\u56DE\u9519\u8BEF: ret=${a.ret}`),[];let o=[];if(a.data&&a.data.module_list_datas)for(let u of a.data.module_list_datas){for(let l of u.module_datas)if(l.module_params&&l.module_params.tabs)try{o=JSON.parse(l.module_params.tabs);break}catch(d){_("error","[Tencent] \u89E3\u6790tabs\u5931\u8D25:",d.message)}if(o.length>0)break}let c=[];if(o.length===0){if(_("info","[Tencent] \u672A\u627E\u5230\u5206\u9875\u4FE1\u606F,\u5C1D\u8BD5\u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5206\u96C6"),a.data&&a.data.module_list_datas){for(let u of a.data.module_list_datas)for(let l of u.module_datas)if(l.item_data_lists&&l.item_data_lists.item_datas)for(let d of l.item_data_lists.item_datas)d.item_params&&d.item_params.vid&&d.item_params.is_trailer!=="1"&&c.push({vid:d.item_params.vid,title:d.item_params.title,unionTitle:d.item_params.union_title||d.item_params.title})}if(c.length===0)return _("info","[Tencent] \u521D\u59CB\u54CD\u5E94\u4E2D\u4E5F\u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];_("info",`[Tencent] \u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5230 ${c.length} \u96C6`)}else{_("info",`[Tencent] \u627E\u5230 ${o.length} \u4E2A\u5206\u9875`);for(let u of o){if(!u.page_context)continue;let l={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:e,vid:"",lid:"",page_num:"",page_context:u.page_context,detail_page_type:"1"}},d=await Kr(r,JSON.stringify(l),{headers:s});if(!d||!d.data)continue;let f=typeof d.data=="string"?JSON.parse(d.data):d.data;if(!(f.ret!==0||!f.data)&&f.data.module_list_datas){for(let p of f.data.module_list_datas)for(let m of p.module_datas)if(m.item_data_lists&&m.item_data_lists.item_datas)for(let h of m.item_data_lists.item_datas)h.item_params&&h.item_params.vid&&h.item_params.is_trailer!=="1"&&c.push({vid:h.item_params.vid,title:h.item_params.title,unionTitle:h.item_params.union_title||h.item_params.title})}}}return _("info",`[Tencent] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return _("error","[Tencent] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Tencent] sourceAnimes is not a valid array"),[];let o=e.filter(l=>this.titleOrAliasMatches(l,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Tencent] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p<d.length;p++){let m=d[p],h=m.unionTitle||m.title||`\u7B2C${p+1}\u96C6`,A=`https://v.qq.com/x/cover/${l.mediaId}/${m.vid}.html`;f.push({name:(p+1).toString(),url:A,title:`\u3010qq\u3011 ${h}`})}if(f.length>0){let p=d[0].unionTitle||d[0].title||"\u7B2C1\u96C6",m=l.title,h=p.match(/\[.+版\]/);h&&p.includes(l.title)&&(m=`${l.title}${h[0]}`);let g={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${m}(${l.year})\u3010${l.type}\u3011from tencent`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"tencent",aliases:l.aliases||[]};a.push(g),Dt({...g,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Tencent] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}extractVid(e){let r=e;if(typeof e=="string"&&(e.startsWith("http")||e.includes("vid="))){let n=e.match(/[?&]vid=([^&]+)/);if(n)r=n[1];else{let s=e.split("/");r=s[s.length-1].split(".")[0]}}return r}async getEpisodeDanmu(e){_("info","[Tencent] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u817E\u8BAF\u89C6\u9891\u5F39\u5E55...",e);let r=this.extractVid(e);_("info",`[Tencent] vid: ${r}`);let n;try{n=await ge(e,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(l){return _("error","[Tencent] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",l),[]}let s=n.data.match(/<title[^>]*>(.*?)<\/title>/i),i=s?s[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";_("info",`[Tencent] \u6807\u9898: ${i}`);let a=await this.getEpisodeDanmuSegments(e);if(!a||!a.segmentList||a.segmentList.length===0)return[];let o=a.segmentList;_("info",`[Tencent] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o.length}`);let c=[];for(let l of o)c.push(ge(l.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let u=[];try{(await Promise.allSettled(c)).filter(f=>f.status==="fulfilled").map(f=>f.value&&f.value.data?f.value.data:null).filter(f=>f!==null).forEach(f=>{f=typeof f=="string"?JSON.parse(f):f,u.push(...f.barrage_list)})}catch(l){return _("error","[Tencent] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",l),[]}return ts(u),u}async getEpisodeDanmuSegments(e){_("info","[Tencent] \u83B7\u53D6\u817E\u8BAF\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://dm.video.qq.com/barrage/base/",n="https://dm.video.qq.com/barrage/segment/",s=this.extractVid(e);_("info",`[Tencent] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - vid: ${s}`);let i;try{i=await ge(r+s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return u.response?.status===404?new St({type:"qq",segmentList:[]}):(_("error","[Tencent] \u8BF7\u6C42\u5F39\u5E55\u57FA\u7840\u6570\u636E\u5931\u8D25:",u),new St({type:"qq",segmentList:[]}))}let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=Object.values(a.segment_index);for(let u of c)o.push({type:"qq",segment_start:(Number(u.segment_start)||0)/1e3,segment_end:(Number(u.segment_name.split("/").pop())||0)/1e3,url:`${n}${s}/${u.segment_name}`});return new St({type:"qq",segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=await ge(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.barrage_list)}return n}catch(r){return _("error","[Tencent] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>{let n={timepoint:r.time_offset/1e3,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:r.content};if(r.content_style&&r.content_style!=="")try{let s=JSON.parse(r.content_style);s.gradient_colors&&s.gradient_colors.length>0?n.color=parseInt(s.gradient_colors[0].replace("#",""),16):s.color&&s.color!=="ffffff"&&(n.color=parseInt(s.color.replace("#",""),16)),s.position===2?n.ct=5:s.position===3&&(n.ct=4)}catch{}return n.like=parseInt(r.up_count)||0,n})}};_t();ir();hn();Ts();$n();Ot();hs();var Rg=class t extends Tt{static XOR_KEY=0x75706971676c;static SECRET_KEY="howcuteitis";static KEY_NAME="secret_key";async search(e){try{_("info",`[iQiyi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,current_page:"1",mode:"1",source:"input",suggest:"",pcv:"13.074.22699",version:"13.074.22699",pageNum:"1",pageSize:"25",pu:"",u:"f6440fc5d919dca1aea12b6aff56e1c7",scale:"200",token:"",userVip:"0",conduit:"",vipType:"-1",os:"",osShortName:"win10",dataType:"",appMode:"",ad:JSON.stringify({lm:3,azd:0xe8d4a513b7,azt:733,position:"feed"}),adExt:JSON.stringify({r:"2.1.5-ares6-pure"})},s=`https://mesh.if.iqiyi.com/portal/lw/search/homePageV3?${yi(r)}`,i=await ge(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!i||!i.data)return _("info","[iQiyi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.data||!a.data.templates)return _("info","[iQiyi] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[],c=a.data.templates;for(let u of c){let l=[];u.template===112&&u.intentAlbumInfos?(_("info",`[iQiyi] \u627E\u5230\u610F\u56FE\u5361\u7247 (template 112)\uFF0C\u5904\u7406 ${u.intentAlbumInfos.length} \u4E2A\u7ED3\u679C`),l=u.intentAlbumInfos):[101,102,103].includes(u.template)&&u.albumInfo&&(_("info",`[iQiyi] \u627E\u5230\u666E\u901A\u7ED3\u679C\u5361\u7247 (template ${u.template})`),l=[u.albumInfo]);for(let d of l){let f=this._filterIqiyiSearchItem(d,e);f&&o.push(f)}}return _("info",`[iQiyi] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[iQiyi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}_filterIqiyiSearchItem(e,r){if(!e.title)return null;if(e.btnText==="\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E")return _("info",`[iQiyi] \u8FC7\u6EE4\u6389\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E\u5185\u5BB9: ${e.title}`),null;let n=e.channel||"",s="\u7535\u89C6\u5267";if(n.includes("\u7535\u5F71"))s="\u7535\u5F71";else if(n.includes("\u52A8\u6F2B"))s="\u52A8\u6F2B";else if(n.includes("\u7EFC\u827A"))s="\u7EFC\u827A";else if(n.includes("\u7EAA\u5F55\u7247"))s="\u7EAA\u5F55\u7247";else if(n.includes("\u7535\u89C6\u5267"))s="\u7535\u89C6\u5267";else return null;let i=!1,a=!1;if(e.metaTags&&Array.isArray(e.metaTags)&&e.metaTags.forEach(p=>{p.name==="3D"&&(i=!0),p.name==="2D"&&(a=!0)}),e.baseTags&&Array.isArray(e.baseTags)&&e.baseTags.forEach(p=>{p.value==="3D"&&(i=!0),p.value==="2D"&&(a=!0)}),i?s="3D"+s:a&&(s="2D"+s),s.includes("\u7535\u5F71")){let p=e.qipuId||e.playQipuId;if(!p)return _("info",`[iQiyi] \u7535\u5F71\u7F3A\u5C11 qipuId: ${e.title}`),null;let m=null;if(e.year){let A=e.year.value||e.year.name;A&&typeof A=="string"&&A.length===4&&/^\d{4}$/.test(A)&&(m=parseInt(A))}let h=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:`movie_${p}`,title:h,type:s,year:m,imageUrl:e.img||e.imgH,episodeCount:1,_qipuId:p}}let o=e.pageUrl;if(!o)return _("info",`[iQiyi] \u975E\u7535\u5F71\u5185\u5BB9\u7F3A\u5C11 pageUrl: ${e.title}`),null;let c=o.match(/v_(\w+?)\.html/);if(!c)return _("info",`[iQiyi] \u65E0\u6CD5\u4ECE pageUrl \u63D0\u53D6 link_id: ${o}`),null;let u=c[1],l=null;if(e.year){let p=e.year.value||e.year.name;p&&typeof p=="string"&&p.length===4&&/^\d{4}$/.test(p)&&(l=parseInt(p))}let d=null;if(e.videos&&e.videos.length>0)d=e.videos.length;else if(e.subscriptContent){let p=e.subscriptContent.match(/(?:更新至|å…¨|å…±)\s*(\d+)\s*(?:集|话|期)/);if(p)d=parseInt(p[1]);else{let m=e.subscriptContent.trim().match(/^(\d+)$/);m&&(d=parseInt(m[1]))}}let f=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:u,title:f,type:s,year:l,imageUrl:e.img||e.imgH,episodeCount:d}}async getEpisodes(e){try{if(_("info",`[iQiyi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`),e.startsWith("movie_")){let p=e.substring(6);_("info",`[iQiyi] \u7535\u5F71\u7C7B\u578B\uFF0C\u8C03\u7528 base_info API \u83B7\u53D6\u89C6\u9891ID: qipuId=${p}`);let m=await this._getMovieVideoId(p);return m?(_("info",`[iQiyi] \u7535\u5F71\u89C6\u9891ID: ${m}`),[{id:m,title:"\u6B63\u7247",order:1,link:`https://www.iqiyi.com/v_${m}.html`}]):(_("error",`[iQiyi] \u65E0\u6CD5\u83B7\u53D6\u7535\u5F71\u7684\u89C6\u9891ID: qipuId=${p}`),[])}let r=/^\d+$/.test(e)?e:this._videoIdToEntityId(e);if(!r)return _("error",`[iQiyi] \u65E0\u6CD5\u5C06 media_id '${e}' \u8F6C\u6362\u4E3A entity_id`),[];let n={entity_id:r,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.082.22866",app_version:"13.082.22866",ext:"",app_mode:"standard",scale:"100",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.2.0-ares6-pure"}'};n.sign=this._createSign(n);let i=`https://www.iqiyi.com/prelw/tvg/v2/lw/base_info?${yi(n)}`,a=await ge(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.iqiyi.com/"}});if(!a||!a.data)return _("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.status_code!==0||!o.data||!o.data.template)return _("error",`[iQiyi] API \u8FD4\u56DE\u9519\u8BEF\uFF0Cstatus_code: ${o.status_code}`),[];let c=[],u=o.data.template.tabs||[];if(u.length===0)return _("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6807\u7B7E\u9875"),[];let l=u[0].blocks||[],d=!1;for(let p of l)if(p.bk_type==="video_list"&&p.data?.data){if(_("info",`[iQiyi] \u627E\u5230 video_list \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757, bk_id: ${p.bk_id}`),!p.tag||!p.tag.includes("episodes")){_("info",`[iQiyi] \u8DF3\u8FC7\u975E\u5206\u96C6\u5757: ${p.bk_id}`);continue}d=!0;let m=p.data.data;if(!Array.isArray(m)){_("warn","[iQiyi] data.data \u4E0D\u662F\u6570\u7EC4\uFF0C\u8DF3\u8FC7\u6B64\u5757");continue}for(let h of m)if(!(!h.videos||!Array.isArray(h.videos))){for(let A of h.videos)if(!(!A.data||!Array.isArray(A.data)))for(let g of A.data){if(g.content_type!==1)continue;let y=(g.play_url||"").match(/tvid=(\d+)/);if(!y)continue;let x=y[1],v=g.short_display_name||g.title||"\u672A\u77E5\u5206\u96C6",I=g.subtitle;I&&!v.includes(I)&&(v=`${v} ${I}`);let R=g.album_order,w=g.page_url;x&&v&&w&&c.push({id:x,title:v,order:R!==void 0?R:c.length,link:w})}}}else if(p.bk_type==="album_episodes"&&p.data?.data){_("info","[iQiyi] \u627E\u5230 album_episodes \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757"),d=!0;let m=p.data.data;for(let h of m){let A=h.videos;if(typeof A=="string"){_("info",`[iQiyi] \u53D1\u73B0\u5206\u5B63URL\uFF0C\u6B63\u5728\u83B7\u53D6: ${A}`);try{let g=await ge(A);A=typeof g.data=="string"?JSON.parse(g.data):g.data}catch(g){_("error",`[iQiyi] \u83B7\u53D6\u5206\u5B63\u6570\u636E\u5931\u8D25: ${g.message}`);continue}}if(A&&typeof A=="object"&&A.feature_paged)for(let g in A.feature_paged){let b=A.feature_paged[g];for(let y of b){if(y.content_type!==1)continue;let v=(y.play_url||"").match(/tvid=(\d+)/);if(!v)continue;let I=v[1],R=y.short_display_name||y.title||"\u672A\u77E5\u5206\u96C6",w=y.subtitle;w&&!R.includes(w)&&(R=`${R} ${w}`);let N=y.album_order,P=y.page_url;I&&R&&N&&P&&c.push({id:I,title:R,order:N,link:P})}}}}if(!d)return _("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6570\u636E\u5757"),[];let f=Array.from(new Map(c.map(p=>[p.id,p])).values());return f.sort((p,m)=>p.order-m.order),_("info",`[iQiyi] \u6210\u529F\u83B7\u53D6 ${f.length} \u4E2A\u5206\u96C6`),f}catch(r){return _("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieVideoId(e){try{let r={entity_id:e,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.103.23529",app_version:"13.103.23529",ext:"",app_mode:"standard",scale:"125",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.5.0-ares6-pure"}'};r.sign=this._createSign(r);let s=`https://mesh.if.iqiyi.com/tvg/v2/lw/base_info?${yi(r)}`;_("info",`[iQiyi] \u8BF7\u6C42\u7535\u5F71\u8BE6\u60C5: ${s}`);let i=await ge(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!i||!i.data)return _("error","[iQiyi] base_info API \u54CD\u5E94\u4E3A\u7A7A"),null;let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.data&&a.data.base_data){let o=a.data.base_data;if(o.share_url){let c=o.share_url.match(/v_(\w+)\.html/);if(c){let u=c[1];return _("info",`[iQiyi] \u4ECE share_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}if(o.page_url){let c=o.page_url.match(/v_(\w+)\.html/);if(c){let u=c[1];return _("info",`[iQiyi] \u4ECE page_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}}return _("error","[iQiyi] base_info API \u54CD\u5E94\u4E2D\u672A\u627E\u5230\u89C6\u9891ID"),_("info",`[iQiyi] \u54CD\u5E94\u6570\u636E\u7ED3\u6784: ${JSON.stringify(a).substring(0,1e3)}...`),null}catch(r){return _("error",`[iQiyi] \u83B7\u53D6\u7535\u5F71\u89C6\u9891ID\u65F6\u51FA\u9519: ${r.message}`),null}}_videoIdToEntityId(e){try{let r=parseInt(e,36),n=this._xorOperation(r),s=n<9e5?100*(n+9e5):n;return String(s)}catch(r){return _("error",`[iQiyi] \u5C06 video_id '${e}' \u8F6C\u6362\u4E3A entity_id \u65F6\u51FA\u9519: ${r.message}`),null}}_xorOperation(e){let r=e.toString(2),n=t.XOR_KEY.toString(2),s=r.split("").reverse(),i=n.split("").reverse(),a=[],o=Math.max(s.length,i.length);for(let u=0;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 Ls(a).toUpperCase()}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[iQiyi] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[iQiyi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p of d){let m=p.link||`https://www.iqiyi.com/v_${l.mediaId}.html`;f.push({name:p.order.toString(),url:m,title:`\u3010qiyi\u3011 ${p.title}`})}if(f.length>0){let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from iqiyi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"iqiyi"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[iQiyi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[iQiyi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u7231\u5947\u827A\u5F39\u5E55...",e);let r;try{r=await ge(e,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return _("error","[iQiyi] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",u),[]}let n=r.data.match(/<title[^>]*>(.*?)<\/title>/i),s=n?n[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";_("info",`[iQiyi] \u6807\u9898: ${s}`);let i=await this.getEpisodeDanmuSegments(e);if(!i||!i.segmentList||i.segmentList.length===0)return[];let a=i.segmentList;_("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${a.length}`);let o=[];for(let u of a)o.push(this.getEpisodeSegmentDanmu(u));let c=[];try{(await Promise.allSettled(o)).filter(d=>d.status==="fulfilled").map(d=>d.value).filter(d=>d!==null).forEach(d=>{c.push(...d)})}catch(u){return _("error","[iQiyi] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",u),[]}return ts(c),c}async getEpisodeDanmuSegments(e){_("info","[iQiyi] \u83B7\u53D6\u7231\u5947\u827A\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcw-api.iq.com/api/decode/",n="https://pcw-api.iqiyi.com/video/video/baseinfo/",s;try{let d=e.match(/v_(\w+)/);if(!d)return _("error","[iQiyi] \u65E0\u6CD5\u4ECE URL \u4E2D\u63D0\u53D6 tvid"),new St({type:"qiyi",segmentList:[]});s=d[1],_("info",`[iQiyi] tvid: ${s}`);let f=`${r}${s}?platformId=3&modeCode=intl&langCode=sg`,p=await ge(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});s=(typeof p.data=="string"?JSON.parse(p.data):p.data).data.toString(),_("info",`[iQiyi] \u89E3\u7801\u540E tvid: ${s}`)}catch(d){return _("error","[iQiyi] \u8BF7\u6C42\u89E3\u7801\u4FE1\u606F\u5931\u8D25:",d),new St({type:"qiyi",segmentList:[]})}let i;try{let d=`${n}${s}`,f=await ge(d,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=(typeof f.data=="string"?JSON.parse(f.data):f.data).data;if(i=Number(m.durationSec)||0,m.displayBarrage===!1)return _("info","[iQiyi] \u7231\u5947\u827A\u89C6\u9891\u672A\u5F00\u542F\u5F39\u5E55"),new St({type:"qiyi",duration:i,segmentList:[]});_("info",`[iQiyi] \u65F6\u957F: ${i}`)}catch(d){return _("error","[iQiyi] \u8BF7\u6C42\u89C6\u9891\u57FA\u7840\u4FE1\u606F\u5931\u8D25:",d),new St({type:"qiyi",segmentList:[]})}let a=60,o=Math.ceil(i/a);_("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o}`);let c=[],u=`0000${s}`,l=`${u.slice(-4,-2)}/${u.slice(-2)}`;for(let d=0;d<o;d++){let f=d+1,p=Ls(`${s}_${a}_${f}cbzuw1259a`).slice(-8),m=`https://cmts.iqiyi.com/bullet/${l}/${s}_${a}_${f}_${p}.br`;c.push({type:"qiyi",segment_start:d*a,segment_end:Math.min((d+1)*a,i),url:m})}return new St({type:"qiyi",duration:i,segmentList:c})}async getEpisodeSegmentDanmu(e){try{let r=await ge(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=this._base64ToUint8Array(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 _("error","[iQiyi] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}_base64ToUint8Array(e){if(typeof atob=="function"){let r=atob(e),n=new Uint8Array(r.length);for(let s=0;s<r.length;s++)n[s]=r.charCodeAt(s);return n}if(typeof Buffer<"u")return new Uint8Array(Buffer.from(e,"base64"));throw new Error("\u5F53\u524D\u73AF\u5883\u4E0D\u652F\u6301 base64 \u89E3\u7801")}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{_("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=of(r.content),n.size=25,n.like=r.like,n})}};Ot();_t();ir();hn();Ts();$n();hs();var Ng=class extends Tt{transformV2Color(e){if(!e)return-1;let n=cz(e.color_left),s=cz(e.color_right);return n===-1&&s===-1?-1:n===-1?s:s===-1?n:Math.floor((n+s)/2)}_extractMediaType(e){let r=(e||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u52A8\u6F2B")||r.includes("\u52A8\u753B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EFC\u827A")||r.includes("\u771F\u4EBA\u79C0")||r.includes("variety")?"\u7EFC\u827A":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(e){try{_("info",`[Mango] \u5F00\u59CB\u641C\u7D22: ${e}`);let n=`https://mobileso.bz.mgtv.com/msite/search/v2?q=${encodeURIComponent(e)}&pc=30&pn=1&sort=-99&ty=0&du=0&pt=0&corr=1&abroad=0&_support=10000000000000000`,s=await ge(n,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json",Referer:"https://www.mgtv.com/"}});if(!s||!s.data)return _("info","[Mango] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let i=typeof s.data=="string"?JSON.parse(s.data):s.data;if(!i.data||!i.data.contents)return _("info","[Mango] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let a=[];for(let o of i.data.contents)if(o.type==="media")for(let c of o.data){if(c.source!=="imgo")continue;let u=c.url?c.url.match(/\/b\/(\d+)/):null;if(!u)continue;let l=u[1],d=c.title?c.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"):"",f=c.desc&&c.desc[0]?c.desc[0].match(/[12][890][0-9][0-9]/):null,p=f?parseInt(f[0]):null,m=c.desc&&c.desc[0]?c.desc[0].split("/")[0].replace("\u7C7B\u578B:","").trim():"",h=this._extractMediaType(m);a.push({provider:"imgo",mediaId:l,title:d,type:h,year:p,imageUrl:c.img||null,episodeCount:c.videoCount||null})}return _("info",`[Mango] \u641C\u7D22\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),a}catch(r){return _("error","[Mango] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Mango] \u83B7\u53D6\u5206\u96C6\u5217\u8868: collection_id=${e}`);let r=[],n="",s=0,i=1;for(;s<i;){let u=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${e}&month=${n}&page=1&_support=10000000`,l=await ge(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){_("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){_("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,_("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"?(_("info",`[Mango] \u8FC7\u6EE4\u9884\u544A\u7247: ${l}`),!1):a.test(l)?(_("info",`[Mango] \u9ED1\u540D\u5355\u8FC7\u6EE4: ${l}`),!1):!0}),c=this._processVarietyEpisodes(o);return _("info",`[Mango] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return _("error","[Mango] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieEpisode(e){try{_("info",`[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247: collection_id=${e}`);let r=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${e}&month=&page=1&_support=10000000`,n=await ge(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.mgtv.com/"}});if(!n||!n.data)return _("info","[Mango] \u672A\u627E\u5230\u7535\u5F71\u4FE1\u606F"),null;let s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(!s.data||!s.data.list||s.data.list.length===0)return _("info","[Mango] \u7535\u5F71\u5217\u8868\u4E3A\u7A7A"),null;let i=s.data.list.find(a=>a.isIntact==="1");return i||(i=s.data.list.find(a=>a.isnew!=="2")),i||(i=s.data.list[0]),_("info",`[Mango] \u627E\u5230\u7535\u5F71\u6B63\u7247: ${i.t3||i.t1||"\u6B63\u7247"}`),i}catch(r){return _("error","[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247\u51FA\u9519:",r.message),null}}_processVarietyEpisodes(e){if(!e||e.length===0)return[];_("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5F00\u59CB\uFF0C\u539F\u59CB\u5206\u96C6\u6570: ${e.length}`);let r=e.some(i=>{let a=`${i.t2||""} ${i.t1||""}`.trim();return/第\d+期/.test(a)});_("info",`[Mango] \u7EFC\u827A\u683C\u5F0F\u5206\u6790: \u6709\u671F\u6570\u683C\u5F0F=${r}`);let n=[],s=new Map;for(let i of e){let a=`${i.t2||""} ${i.t1||""}`.trim();if(r){let o=a.match(/第(\d+)期([上中下])/),c=a.match(/第(\d+)期/),u=/第\d+期[上中下]/.test(a);if(o){let l=o[1],d=o[2],f=`\u7B2C${l}\u671F${d}`,p=a.substring(a.indexOf(f)+f.length);/^(åŠ æ›´|会员版|纯享版|特别版|独家版|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后)/.test(p)?_("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u4E0A\u4E2D\u4E0B\u683C\u5F0F+\u540E\u7F00: ${a}`):(s.set(i,[parseInt(l),d]),n.push(i),_("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u4E0A\u4E2D\u4E0B\u683C\u5F0F: ${a}`))}else if(c&&!u&&!/会员版|纯享版|特别版|独家版|åŠ æ›´|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后|访谈|采访|混剪|合集|盘点|总结|åˆ å‡|未播放|NG|番外|片段|看点|精彩|制作|导演|演员|拍摄|片尾曲|插曲|主题曲|背景音乐|OST|音乐|歌曲/.test(a)){let l=c[1];s.set(i,[parseInt(l),""]),n.push(i),_("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u6807\u51C6\u671F\u6570: ${a}`)}else _("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u975E\u6807\u51C6\u671F\u6570\u683C\u5F0F: ${a}`)}else{if(a.includes("\u5E7F\u544A")||a.includes("\u63A8\u5E7F")){_("info",`[Mango] \u8DF3\u8FC7\u5E7F\u544A\u5185\u5BB9: ${a}`);continue}n.push(i),_("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u539F\u59CB\u6807\u9898: ${a}`)}}return r?n.sort((i,a)=>{let o=s.get(i)||[0,""],c=s.get(a)||[0,""];if(o[0]!==c[0])return o[0]-c[0];let u={"":0,\u4E0A:1,\u4E2D:2,\u4E0B:3};return(u[o[1]]||0)-(u[c[1]]||0)}):n.sort((i,a)=>{let o=l=>{let f=`${l.t2||""} ${l.t1||""}`.trim().match(/第(\d+)集/);return f?parseInt(f[1]):999999},c=o(i),u=o(a);if(c===999999&&u===999999){let l=i.ts||"0",d=a.ts||"0";return l.localeCompare(d)}return c-u}),_("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5B8C\u6210\uFF0C\u8FC7\u6EE4\u540E\u5206\u96C6\u6570: ${n.length}`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Mango] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Mango] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{if(l.type==="\u7535\u5F71"){let p=await this._getMovieEpisode(l.mediaId);if(!p)return;let m=`https://www.mgtv.com/b/${l.mediaId}/${p.video_id}.html`,h=p.t3||p.t1||"\u6B63\u7247",A=[{name:"1",url:m,title:`\u3010imgo\u3011 ${h}`}],b={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:1,rating:0,isFavorited:!0,source:"imgo"};a.push(b),Dt({...b,links:A},s),O.animes.length>O.MAX_ANIMES&&$t();return}let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p<d.length;p++){let m=d[p],h=`https://www.mgtv.com/b/${l.mediaId}/${m.video_id}.html`,A=`${m.t2||""} ${m.t1||""}`.trim();f.push({name:String(p+1),url:h,title:`\u3010imgo\u3011 ${A}`})}if(f.length>0){let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"imgo"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Mango] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Mango] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u8292\u679CTV\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Mango] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=[];for(let a of n)s.push(ge(a.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let i=[];try{(await Promise.allSettled(s)).filter(c=>c.status==="fulfilled").map(c=>c.value&&c.value.data?c.value.data:null).filter(c=>c!==null).forEach(c=>{c=typeof c=="string"?JSON.parse(c):c,c.data?.items&&i.push(...c.data.items)})}catch(a){return _("error","[Mango] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",a),[]}return ts(i),i}async getEpisodeDanmuSegments(e){_("info","[Mango] \u83B7\u53D6\u8292\u679CTV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcweb.api.mgtv.com/video/info",n="https://galaxy.bz.mgtv.com/getctlbarrage",s="https://galaxy.bz.mgtv.com/rdbarrage",i=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,a=e.match(i),o;if(a)o=a[2].split("/").filter(Boolean);else return _("error","[Mango] Invalid URL"),new St({type:"imgo",segmentList:[]});let c=o[o.length-2],u=o[o.length-1].split(".")[0];_("info",`[Mango] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - cid: ${c}, vid: ${u}`);let l;try{let m=`${r}?cid=${c}&vid=${u}`;l=await ge(m,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(m){return m.response?.status===404?new St({type:"imgo",segmentList:[]}):(_("error","[Mango] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m),new St({type:"imgo",segmentList:[]}))}let f=(typeof l.data=="string"?JSON.parse(l.data):l.data).data.info.time,p=!0;try{let m=`${n}?version=8.1.39&abroad=0&uuid=&os=10.15.7&platform=0&mac=&vid=${u}&pid=&cid=${c}&ticket=`,h=await ge(m,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),A=typeof h.data=="string"?JSON.parse(h.data):h.data;(!A.data||!A.data.cdn_list||!A.data.cdn_version)&&(_("warn","[Mango] \u65B0API\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u8FD4\u56DE\u7A7A\u5206\u6BB5\u5217\u8868"),p=!1);let g=[];if(p){let b=Math.ceil(Ig(f)/60),y=A.data.cdn_list.split(",")[0],x=A.data.cdn_version;for(let v=0;v<b;v++)g.push({type:"imgo",segment_start:v*60,segment_end:Math.min((v+1)*60,Ig(f)),url:`https://${y}/${x}/${v}.json`})}else{let y=Ig(f);for(let x=0;x<y;x+=60)g.push({type:"imgo",segment_start:x,segment_end:Math.min(x+60,Ig(f)),url:`${s}?vid=${u}&cid=${c}&time=${x*1e3}`})}return new St({type:"imgo",segmentList:g})}catch(m){return _("error","[Mango] \u8BF7\u6C42\u5F39\u5E55\u5206\u6BB5\u6570\u636E\u5931\u8D25:",m),new St({type:"imgo",segmentList:[]})}}async getEpisodeSegmentDanmu(e){try{let r=await ge(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;s.data?.items&&n.push(...s.data.items)}return n}catch(r){return _("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})}};Ot();_t();ir();Ts();$n();hn();hs();so();var Og=class t extends Tt{static WBI_MIXIN_KEY_CACHE={key:null,timestamp:0};static WBI_MIXIN_KEY_CACHE_TTL=3600;static WBI_MIXIN_KEY_TABLE=[46,47,18,2,53,8,23,32,15,50,10,31,58,3,45,35,27,43,5,49,33,9,42,19,29,28,14,39,12,38,41,13,37,48,7,16,24,55,40,61,26,17,0,1,60,51,30,4,22,25,54,21,56,59,6,63,57,62,11,36,20,34,44,52];static APP_KEY="1d8b6e7d45233436";static APP_SEC="560c52ccd288fed045859ed18bffd973";async resolveB23Link(e){let r;try{_("info",`[Bilibili] \u6B63\u5728\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5: ${e}`);let n=parseInt(O.vodRequestTimeout||"5000",10)||5e3,s=new AbortController;r=setTimeout(()=>s.abort(),n);let a=await(typeof fetch=="function"?fetch:(await Promise.resolve().then(()=>(bI(),TB))).default)(e,{method:"GET",headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:s.signal,redirect:"manual"}),o=a.headers?.get?.("location")||a.headers?.get?.("Location"),c=o?new URL(o,e).toString():a.url;return c&&c!==e?(_("info",`[Bilibili] b23.tv \u77ED\u94FE\u63A5\u5DF2\u89E3\u6790\u4E3A: ${c}`),c):(_("error","[Bilibili] \u65E0\u6CD5\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5"),e)}catch(n){return _("error","[Bilibili] \u89E3\u6790 b23.tv \u77ED\u94FE\u63A5\u5931\u8D25:",n),e}finally{r&&clearTimeout(r)}}async _getWbiMixinKey(){let e=Math.floor(Date.now()/1e3),r=t.WBI_MIXIN_KEY_CACHE;if(r.key&&e-r.timestamp<t.WBI_MIXIN_KEY_CACHE_TTL)return r.key;_("info","[Bilibili] WBI mixin key \u5DF2\u8FC7\u671F\u6216\u4E0D\u5B58\u5728\uFF0C\u6B63\u5728\u83B7\u53D6\u65B0\u7684...");try{let n=await ge("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 _("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,_("info","[Bilibili] \u6210\u529F\u83B7\u53D6\u65B0\u7684 WBI mixin key"),l}catch(n){return _("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",n.message),"dba4a5925b345b4598b7452c75070bca"}}_getWbiSignedParams(e,r){let n={...e};n.wts=Math.floor(Date.now()/1e3);let o=Object.keys(n).sort().map(u=>{let l=n[u]??"";return`${encodeURIComponent(u)}=${encodeURIComponent(l)}`}).join("&")+r,c=Ls(o);return n.w_rid=c,n}async _searchByType(e,r,n){try{_("info",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}'\uFF0C\u5173\u952E\u8BCD '${e}'`);let s={keyword:e,search_type:r},i=this._getWbiSignedParams(s,n),o=`https://api.bilibili.com/x/web-interface/wbi/search/type?${Object.keys(i).map(d=>`${encodeURIComponent(d)}=${encodeURIComponent(i[d])}`).join("&")}`,c=await ge(o,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),u=typeof c.data=="string"?JSON.parse(c.data):c.data;if(u.code!==0||!u.data?.result)return _("info",`[Bilibili] \u7C7B\u578B '${r}' \u65E0\u7ED3\u679C (Code: ${u.code})`),[];let l=[];for(let d of u.data.result){let f=d.season_id?`ss${d.season_id}`:d.bvid?`bv${d.bvid}`:"";if(!f)continue;let p=this._extractMediaType(d.season_type_name),m=p==="\u7535\u5F71"?1:d.ep_size||0,h=null;try{d.pubdate?typeof d.pubdate=="number"?h=new Date(d.pubdate*1e3).getFullYear():typeof d.pubdate=="string"&&d.pubdate.length>=4&&(h=parseInt(d.pubdate.substring(0,4))):d.pubtime&&(h=new Date(d.pubtime*1e3).getFullYear())}catch{}let A=of((d.title||"").replace(/<[^>]+>/g,"")).replace(/:/g,"\uFF1A").trim(),g=of((d.org_title||"").replace(/<[^>]+>/g,"")).trim(),b={provider:"bilibili",mediaId:f,mdId:d.media_id?`md${d.media_id}`:null,title:A,org_title:g,type:p,year:h,imageUrl:d.cover||null,episodeCount:m};d.eps&&d.eps.length>0&&(b._eps=d.eps),l.push(b)}return _("info",`[Bilibili] \u7C7B\u578B '${r}' \u627E\u5230 ${l.length} \u4E2A\u7ED3\u679C`),l}catch(s){return _("error",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}' \u5931\u8D25:`,s.message),[]}}_extractMediaType(e){let r=(e||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u756A\u5267")||r.includes("\u56FD\u521B")||r.includes("\u52A8\u6F2B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":r.includes("\u7EFC\u827A")||r.includes("variety")?"\u7EFC\u827A":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(e){let r=[];O.useBangumiData&&(r=await Au(e,["bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"]),_("info",`[Bilibili] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(s=>["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(s.matchedSiteKey));try{_("info",`[Bilibili] \u5F00\u59CB\u641C\u7D22: ${e}`);let s=await this._getWbiMixinKey(),i=this._searchByType(e,"media_bangumi",s),a=this._searchByType(e,"media_ft",s),o=Promise.resolve([]);this._hasBilibiliProxy()&&(_("info","[Bilibili] \u68C0\u6D4B\u5230\u4EE3\u7406\u914D\u7F6E\uFF0C\u542F\u7528\u6E2F\u6FB3\u53F0\u5E76\u884C\u641C\u7D22"),o=this._searchOversea(e,n.length>0));let c=(await Promise.all([i,a,o])).flat(),u=[],l=new Set,d=new Set;for(let p of c){if(!p||!p.mediaId&&!p.season_id)continue;let m=r.find(A=>p.mdId&&p.mdId===`md${A.siteId}`)||r.find(A=>p.org_title&&A.title===p.org_title);if(m){let g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.aliases=[...m.titles],p.type=m.typeStr||p.type,p.isLocalPriority=!0,d.add(`md${m.siteId}`),_("info",`[Bilibili] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}let h=p.mediaId||(p.season_id?`ss${p.season_id}`:null);h&&l.has(h)||(h&&l.add(h),u.push(p))}let f=r.filter(p=>!d.has(`md${p.siteId}`));if(f.length>0){let p=f.filter(h=>h.season_id),m=f.filter(h=>!h.season_id);if(p.length>0){_("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${p.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5....\uFF08\u5305\u542B season_id \uFF09`);for(let h of p){let g=(h.titles.find(x=>x&&x.includes(e))||h.titles[1]||h.title)+(h.titleSuffix||""),b={provider:"bilibili",mediaId:`ss${h.season_id}`,mdId:`md${h.siteId}`,title:g,org_title:h.title,aliases:[...h.titles],_displayTitle:g,type:h.typeStr,year:h.begin?parseInt(h.begin.substring(0,4)):null,imageUrl:"",episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(h.matchedSiteKey),isLocalPriority:!0},y=b.mediaId;y&&!l.has(y)&&(l.add(y),u.unshift(b))}}if(m.length>0){_("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${m.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5...`);let h=m.map(async g=>{let b=await this._resolveMediaInfo(g.siteId),x=(g.titles.find(v=>v&&v.includes(e))||g.titles[1]||g.title)+(g.titleSuffix||"");return{provider:"bilibili",mediaId:b.seasonId||`md${g.siteId}`,mdId:`md${g.siteId}`,title:x,org_title:g.title,aliases:[...g.titles],_displayTitle:x,type:g.typeStr,year:g.begin?parseInt(g.begin.substring(0,4)):null,imageUrl:b.cover,episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(g.matchedSiteKey),isLocalPriority:!0}}),A=await Promise.all(h);for(let g of A){let b=g.mediaId;b&&l.has(b)||b&&(l.add(b),u.unshift(g))}}}return _("info",`[Bilibili] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${u.length} \u4E2A\u6709\u6548\u7ED3\u679C`),u}catch(s){return _("error","[Bilibili] \u641C\u7D22\u51FA\u9519:",s.message),[]}}async _resolveMediaInfo(e){try{let r=await ge(`https://api.bilibili.com/pgc/review/user?media_id=${e}`),n=typeof r.data=="string"?JSON.parse(r.data):r.data;if(n.code===0&&n.result&&n.result.media){let s=n.result.media;return{seasonId:`ss${s.season_id}`,cover:s.cover||s.horizontal_picture||""}}}catch(r){_("error",`[Bilibili] \u83B7\u53D6\u5A92\u4F53\u4FE1\u606F\u5931\u8D25 (md${e}):`,r.message)}return{seasonId:null,cover:""}}async _getPgcEpisodes(e){let r=[],n=[`https://api.bilibili.com/pgc/view/web/season?season_id=${e}`,`https://api.bilibili.com/pgc/web/season/section?season_id=${e}`];for(let i of n)try{let a=await ge(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.code===0&&o.result&&(r=o.result.main_section?.episodes||o.result.episodes||[],o.result.cover&&(r._cover=o.result.cover),r.length>0))break}catch{}if(r.length===0)return _("error",`[Bilibili] \u83B7\u53D6\u756A\u5267\u5206\u96C6\u5931\u8D25 (season_id=${e}): \u6240\u6709\u63A5\u53E3\u5747\u65E0\u6570\u636E`),[];let s=r.map((i,a)=>{let o="";if(i.show_title)o=i.show_title;else{let c=i.title||String(a+1),u=i.long_title||"";o=/^\d+(\.\d+)?$/.test(c)?`\u7B2C${c}\u8BDD`:c,u&&u!==c&&(o+=` ${u}`)}return{vid:`${i.aid},${i.cid}`,id:i.id,title:o.trim(),link:`https://www.bilibili.com/bangumi/play/ep${i.id}`}});return r._cover&&(s._cover=r._cover),_("info",`[Bilibili] \u83B7\u53D6\u5230 ${s.length} \u4E2A\u756A\u5267\u5206\u96C6`),s}async _getUgcEpisodes(e){try{let r=`https://api.bilibili.com/x/web-interface/view?bvid=${e}`,n=await ge(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(s.code!==0||!s.data)return _("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u5931\u8D25 (bvid=${e}):`,s.message),[];let i=s.data.pages||[];if(i.length===0)return _("info",`[Bilibili] \u89C6\u9891 bvid=${e} \u65E0\u5206\u96C6\u6570\u636E`),[];let a=i.map((o,c)=>({vid:`${s.data.aid},${o.cid}`,id:o.cid,title:(o.part||`P${o.page}`).trim(),link:`https://www.bilibili.com/video/${e}?p=${o.page}`}));return _("info",`[Bilibili] \u83B7\u53D6\u5230 ${a.length} \u4E2A\u89C6\u9891\u5206\u96C6`),a}catch(r){return _("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u51FA\u9519 (bvid=${e}):`,r.message),[]}}async getEpisodes(e){if(e.startsWith("md")){let r=e.substring(2),n=await this._resolveMediaInfo(r);if(n.seasonId){let s=await this._getPgcEpisodes(n.seasonId.substring(2));return s._cover=n.cover,s}return[]}if(e.startsWith("ss")){let r=e.substring(2);return await this._getPgcEpisodes(r)}else if(e.startsWith("bv")){let r=e.substring(2);return await this._getUgcEpisodes(r)}return _("error",`[Bilibili] \u4E0D\u652F\u6301\u7684 ID \u683C\u5F0F: ${e}`),[]}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Bilibili] sourceAnimes is not a valid array"),[];e.forEach(d=>{d.aliases=d.aliases||[],d.title&&!d.aliases.includes(d.title)&&d.aliases.push(d.title),d.org_title&&!d.aliases.includes(d.org_title)&&d.aliases.push(d.org_title)});let o=e.length>0?e[0]._tmdbCnAlias:null;Zb(e,o);let c=e.filter(d=>d.isOversea||yt(d.title,r,i)||d.aliases&&d.aliases.some(f=>yt(f,r,i))),u=i!==null?i:Wt(r);if(u!==null){let d=c.filter(f=>{let p=f._displayTitle||f.title,m=Ct(p).season;return m===u||u===1&&m===null});d.length>0&&(c=d,_("info",`[Bilibili] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=c.map(async d=>{try{let f=[],p=d.checkMore?.content?.includes("\u67E5\u770B\u5168\u90E8");if(d._eps&&d._eps.length>0&&!p){f=d._eps.map((b,y)=>{let x;d.isOversea&&b.position?x=b.position.toString():x=b.index_title||b.index||(y+1).toString();let v=b.title||b.index_title||x,I=b.long_title||"",R=/^\d+(\.\d+)?$/.test(v)?`\u7B2C${v}\u8BDD`:v;I&&I!==v&&(R+=` ${I}`);let w=b.id||b.param,N=`https://www.bilibili.com/bangumi/play/ep${w}?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(N+="&area=hkmt"),{name:x,url:N,title:`\u3010bilibili1\u3011 ${R.trim()}`,_id:parseInt(w,10)||0}});let g=f.map(b=>uf(b.name));g.every(b=>b!==null)?(f.forEach((b,y)=>b._sortKey=g[y]),f.sort((b,y)=>b._sortKey-y._sortKey)):f.sort((b,y)=>b._id-y._id),_("info",`[Bilibili] \u76F4\u63A5\u4F7F\u7528\u641C\u7D22\u7ED3\u679C\u4E2D\u7684 ${f.length} \u96C6\u5206\u96C6`)}else{let g=await this.getEpisodes(d.mediaId);if(g.length===0){_("info",`[Bilibili] ${d.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}g._cover&&(d.imageUrl=g._cover),f=g.map((b,y)=>{let x=b.link+`?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(x+="&area=hkmt"),{name:`${y+1}`,url:x,title:`\u3010bilibili1\u3011 ${b.title}`,_id:parseInt(b.id,10)||0}}),f.sort((b,y)=>b._id-y._id)}if(f.length===0)return;let m=Yr(d.mediaId),h=d._displayTitle||Qt(d.title),A={animeId:m,bangumiId:d.mediaId,animeTitle:`${h}(${d.year||"N/A"})\u3010${d.type}\u3011from bilibili`,type:d.type,typeDescription:d.type,imageUrl:d.imageUrl,startDate:Or(d.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"bilibili",aliases:d.aliases};a.push(A),Dt({...A,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}catch(f){_("error",`[Bilibili] \u5904\u7406 ${d.title} \u5931\u8D25:`,f.message)}});return await Promise.all(l),this.sortAndPushAnimesByYear(a,n),a}async _extractVideoInfo(e){_("info","[Bilibili] \u63D0\u53D6B\u7AD9\u89C6\u9891\u4FE1\u606F...",e);let r="https://api.bilibili.com/x/web-interface/view",n="https://api.bilibili.com/pgc/view/web/season",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),_("info","[Bilibili] ",a);else return _("error","[Bilibili] Invalid URL"),null;let o,c,u,l;if(e.includes("video/"))try{let d=e.split("?")[1],f=1;if(d){let A=d.split("&");for(let g of A){let[b,y]=g.split("=");b==="p"&&(f=y||1)}}_("info",`[Bilibili] p: ${f}`);let p;e.includes("BV")?p=`${r}?bvid=${a[2]}`:(c=a[2].substring(2),p=`${r}?aid=${a[2].substring(2)}`);let m=await ge(p,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),h=typeof m.data=="string"?JSON.parse(m.data):m.data;if(h.code!==0)return _("error","[Bilibili] \u83B7\u53D6\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",h.message),null;u=h.data.duration,o=h.data.pages[f-1].cid}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ep"))try{let d=a.slice(-1)[0].slice(2),f=e.split("?")[1]||"",p=null,m=!1;f.split("&").forEach(A=>{let[g,b]=A.split("=");g==="season_id"&&(p=b),g==="area"&&b==="hkmt"&&(m=!0)});let h=!1;if(!m){let A=await ge(`${n}?ep_id=${d}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0"}}),g=typeof A.data=="string"?JSON.parse(A.data):A.data;if(g.code===0&&g.result){let b=g.result.episodes.find(y=>y.id==d);b&&(o=b.cid,u=b.duration/1e3,l=b.share_copy,h=!0)}}if((!h||m)&&p&&this._hasBilibiliProxy()){try{let A=this._makeProxyUrl(`https://api.bilibili.com/pgc/view/web/season?season_id=${p}`),g=await ge(A,{headers:{Cookie:O.bilibliCookie||"","User-Agent":"Mozilla/5.0"}}),b=typeof g.data=="string"?JSON.parse(g.data):g.data;if(b.code===0&&b.result){let y=(b.result.episodes||b.result.main_section?.episodes||[]).find(x=>x.id==d);y&&(o=y.cid,c=y.aid,u=y.duration/1e3,l=y.long_title,h=!0)}}catch{}if(!h)try{let A=await ge(`https://api.bilibili.com/pgc/web/season/section?season_id=${p}`,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||""}}),g=typeof A.data=="string"?JSON.parse(A.data):A.data;if(g.code===0&&g.result?.main_section?.episodes){let b=g.result.main_section.episodes.find(y=>y.id==d);b&&(o=b.cid,c=b.aid,u=b.duration?b.duration/1e3:0,l=b.long_title,h=!0)}}catch{}}if(!o)return _("error","[Bilibili] \u672A\u627E\u5230\u5339\u914D\u7684\u756A\u5267\u96C6\u4FE1\u606F"),null;!u&&u!==0&&(u=0)}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ss"))try{let d=a.slice(-1)[0].slice(2).split("?")[0],f=`${n}?season_id=${d}`;_("info",`[Bilibili] \u83B7\u53D6\u756A\u5267\u4FE1\u606F: season_id=${d}`);let p=await ge(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return _("error","[Bilibili] \u83B7\u53D6\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m.message),null;if(!m.result.episodes||m.result.episodes.length===0)return _("error","[Bilibili] \u756A\u5267\u6CA1\u6709\u53EF\u7528\u7684\u96C6\u6570"),null;let h=m.result.episodes[0];o=h.cid,u=h.duration/1e3,l=h.share_copy,_("info",`[Bilibili] \u4F7F\u7528\u7B2C\u4E00\u96C6: ${l}, cid=${o}`)}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else return _("error","[Bilibili] \u4E0D\u652F\u6301\u7684B\u7AD9\u89C6\u9891\u7F51\u5740\uFF0C\u4EC5\u652F\u6301\u666E\u901A\u89C6\u9891(av,bv)\u3001\u5267\u96C6\u89C6\u9891(ep,ss)"),null;return _("info",`[Bilibili] \u63D0\u53D6\u89C6\u9891\u4FE1\u606F\u5B8C\u6210: cid=${o}, aid=${c}, duration=${u}`),{cid:o,aid:c,duration:u,title:l}}async getEpisodeDanmu(e){_("info","[Bilibili] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42B\u7AD9\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Bilibili] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=6,i=[];for(let a=0;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):(_("info","[Bilibili] \u6355\u83B7\u5230\u5206\u6BB5\u8BF7\u6C42\u51FA\u9519\uFF0C\u8BF4\u660E\u8BF7\u6C42\u5B8C\u6BD5\uFF0C\u505C\u6B62\u540E\u7EED\u8BF7\u6C42"),l=!0);if(l)break}return i}async getEpisodeDanmuSegments(e){if(_("info","[Bilibili] \u83B7\u53D6B\u7AD9\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),typeof e=="string"&&e.includes("/combine?")){let c=[],u=0,l=0,d=e.startsWith("http")?e:`https://www.bilibili.com${e}`,f=new URL(d);for(let[p,m]of f.searchParams.entries()){if(!p.startsWith("cid"))continue;let h=p.substring(3),[A,g]=m.split("-"),b=parseFloat(A)||0,y=parseFloat(g)||0,x=y-b;if(x<=0)continue;l+=x;let v=Math.ceil(y/360);for(let I=0;I<v;I++){let R=`#combine_start=${b}&combine_end=${y}&combine_offset=${u}`;c.push({type:"bilibili1",segment_start:I*360,segment_end:Math.min((I+1)*360,y),url:`https://api.bilibili.com/x/v2/dm/web/seg.so?type=1&oid=${h}&segment_index=${I+1}${R}`})}u+=x}return new St({type:"bilibili1",duration:l,segmentList:c})}let r=await this._extractVideoInfo(e);if(!r)return new St({type:"bilibili1",segmentList:[]});let{cid:n,aid:s,duration:i}=r;_("info",`[Bilibili] \u89C6\u9891\u4FE1\u606F: cid=${n}, aid=${s}, duration=${i}`),i<=0&&_("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;_("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 St({type:"bilibili1",duration:i>0?i:0,segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=new URL(e.url),n=e.url.split("#")[0],s=await ge(n,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Cookie:O.bilibliCookie},base64Data:!0,retries:1}),i=[];if(s&&s.data&&(i=T8e(s.data)),r.hash&&r.hash.includes("combine_offset")){let a=new URLSearchParams(r.hash.substring(1)),o=parseFloat(a.get("combine_start"))||0,c=parseFloat(a.get("combine_end"))||0,u=parseFloat(a.get("combine_offset"))||0,l=[];for(let d of i){let f=0;if(d.p&&typeof d.p=="string"?f=parseFloat(d.p.split(",")[0]):d.t!==void 0?f=Number(d.t):d.progress!==void 0&&(f=d.progress/1e3),!isNaN(f)&&f>=o&&f<=c){let p=f-o+u;if(d.p&&typeof d.p=="string"){let m=d.p.split(",");m[0]=p.toFixed(5),d.p=m.join(",")}d.t!==void 0&&(d.t=p),d.progress!==void 0&&(d.progress=Math.round(p*1e3)),l.push(d)}}return l}return i}catch(r){throw r}}formatComments(e){return e.map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=Qt(r.m)),r.like=r.like_num,r))}_makeProxyUrl(e){return O.makeProxyUrl(e)}_hasBilibiliProxy(){return(O.proxyUrl||"").split(",").some(e=>{let r=e.trim();return r.startsWith("bilibili@")||r.startsWith("@")})}_javaUrlEncode(e){return encodeURIComponent(e).replace(/!/g,"%21").replace(/'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/\*/g,"%2A").replace(/%20/g,"+")}async _searchOverseaRequest(e,r,n,s="Original",i=null){let o=(O.bilibliCookie||"").match(/([0-9a-fA-F]{32})/);if(!((O.proxyUrl||"").includes("bilibili@")||(O.proxyUrl||"").includes("@")))return[];if(o){_("info",`[Bilibili-Proxy][${s}] \u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 APP \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${r})...`);try{let u={keyword:e,type:r,area:"tw",mobi_app:"android",platform:"android",build:"8140200",ts:Math.floor(Date.now()/1e3),appkey:t.APP_KEY,access_key:o[1],disable_rcmd:1},l=Object.keys(u).sort().map(h=>`${h}=${this._javaUrlEncode(String(u[h]))}`).join("&"),d=Ls(l+t.APP_SEC),f=`https://app.bilibili.com/x/v2/search/type?${l}&sign=${d}`,p=O.makeProxyUrl(f),m=await this._fetchAppSearchWithStream(p,{"User-Agent":"Mozilla/5.0 Android","X-From-Biliroaming":"1.0.0"},s,i);if(m&&m.code===0)return(m.data?.items||m.data?.result||m.data||[]).filter(h=>h.goto!=="recommend_tips"&&h.area!=="\u6F2B\u6E38"&&h.badge!=="\u516C\u544A").map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:h.uri.match(/season\/(\d+)/)?.[1]?`ss${h.uri.match(/season\/(\d+)/)[1]}`:"",title:of((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:of((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.ptime?new Date(h.ptime*1e3).getFullYear():null,imageUrl:h.cover||h.pic||"",episodeCount:0,_eps:h.episodes||h.episodes_new,checkMore:h.check_more,isOversea:!0})).filter(h=>h.mediaId);m&&m.code!==0&&_("warn",`[Bilibili-Proxy] App \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`)}catch(u){if(u.name==="AbortError")throw u;_("error",`[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}`)}_("info","[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5931\u8D25\uFF0C\u81EA\u52A8\u964D\u7EA7\u81F3 Web \u63A5\u53E3...")}else _("info",`[Bilibili-Proxy][${s}] \u672A\u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 Web \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${n})...`);try{let u={keyword:e,search_type:n,area:"tw",page:1,order:"totalrank",__refresh__:!0,_timestamp:Date.now()},d=`https://api.bilibili.com/x/web-interface/search/type?${Object.keys(u).map(h=>`${encodeURIComponent(h)}=${encodeURIComponent(u[h])}`).join("&")}`,f=O.makeProxyUrl(d),p=await ge(f,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||"","X-From-Biliroaming":"1.0.0"},signal:i}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return _("warn",`[Bilibili-Proxy] Web \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`),[];if(m.data?.result)return m.data.result.filter(h=>h.url?.includes("bilibili.com")&&!h.areas?.includes("\u6F2B\u6E38")).map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:"",mdId:h.media_id?`md${h.media_id}`:null,title:of((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:of((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.pubtime?new Date(h.pubtime*1e3).getFullYear():null,imageUrl:h.cover||null,episodeCount:h.ep_size||0,_eps:h.eps,isOversea:!0})).filter(h=>h.mediaId)}catch(u){if(u.name==="AbortError")throw u;_("error",`[Bilibili-Proxy] Web \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}\uFF08\u5982\u679C\u662F-500/-502\u8BF4\u660E\u53EA\u662F\u98CE\u63A7\uFF09`)}return[]}async _searchOversea(e,r=!1){let n=new AbortController,s=r?[{appType:8,webType:"media_ft"}]:[{appType:7,webType:"media_bangumi"},{appType:8,webType:"media_ft"}],i=Promise.all(s.map(async(o,c)=>(c>0&&await new Promise(u=>setTimeout(u,c*300)),this._searchOverseaRequest(e,o.appType,o.webType,"Original")))).then(o=>{let c=o.flat();return c.length&&n.abort(),c.forEach(u=>u._originalQuery=e),c}).catch(()=>[]),a=O.tmdbApiKey?new Promise(o=>setTimeout(o,100)).then(async()=>{let o=await Xb(e,n.signal,"Bilibili");if(o&&o.title&&o.title!==e){let{title:c,cnAlias:u}=o,l=s.map(async(f,p)=>(p>0&&await new Promise(m=>setTimeout(m,p*300)),this._searchOverseaRequest(c,f.appType,f.webType,"TMDB",n.signal))),d=(await Promise.all(l)).flat();return d.forEach(f=>{f._originalQuery=e,f._searchUsedTitle=c,f._tmdbCnAlias=u}),d}return[]}).catch(()=>[]):Promise.resolve([]);return(await Promise.all([i,a])).flat()}async _fetchAppSearchWithStream(e,r,n,s){if(typeof $V!="function")return null;let i=!1,a=!1,o=await $V(e,{headers:r,sniffLimit:8192,signal:s},c=>i?!0:c.includes('"goto":"recommend_tips"')||c.includes("\u6682\u65E0\u641C\u7D22\u7ED3\u679C")?(_("info",`[Bilibili-Proxy][${n}] \u55C5\u63A2\u5230\u65E0\u6548\u6570\u636E\uFF0C\u4E2D\u65AD`),a=!0,!1):((c.includes('"season_id"')||c.includes('"episodes"'))&&(i=!0),!0));return a?{code:0,data:{items:[]}}:o}};Ot();_t();ir();hn();Ts();$n();hs();var Pg=class extends Tt{convertYoukuUrl(e){let r=e.match(/vid=([^&]+)/);return!r||!r[1]?null:`https://v.youku.com/v_show/id_${r[1]}.html`}filterYoukuSearchItem(e,r){let n=e.commonData;if(!n||!n.titleDTO||n.isYouku!==1&&n.hasYouku!==1)return null;let s=n.titleDTO.displayName;if(["\u4E2D\u914D\u7248","\u62A2\u5148\u770B","\u975E\u6B63\u7247","\u89E3\u8BFB","\u63ED\u79D8","\u8D4F\u6790","\u300A"].some(f=>s.includes(f)))return null;let a=n.feature.match(/[12][890][0-9][0-9]/),o=a?parseInt(a[0]):null,c=s.replace(/<[^>]+>/g,"").replace(/【.+?】/g,"").trim().replace(/:/g,"\uFF1A"),u="\u7535\u89C6\u5267",l=(n.cats||"").toLowerCase(),d=(n.feature||"").toLowerCase();return l.includes("\u52A8\u6F2B")||l.includes("anime")?u="\u52A8\u6F2B":l.includes("\u7535\u5F71")||l.includes("movie")?u="\u7535\u5F71":l.includes("\u7535\u89C6\u5267")||l.includes("drama")?u="\u7535\u89C6\u5267":l.includes("\u7EFC\u827A")||l.includes("variety")?u="\u7EFC\u827A":d.includes("\u52A8\u6F2B")?u="\u52A8\u6F2B":d.includes("\u7535\u5F71")?u="\u7535\u5F71":d.includes("\u7535\u89C6\u5267")?u="\u7535\u89C6\u5267":d.includes("\u7EFC\u827A")&&(u="\u7EFC\u827A"),{provider:"youku",mediaId:n.showId,title:c,type:u,year:o,imageUrl:n.posterDTO?n.posterDTO.vThumbUrl:null,episodeCount:n.episodeTotal,cats:n.cats}}async search(e){try{_("info",`[Youku] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=encodeURIComponent(e),n=encodeURIComponent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"),s=`https://search.youku.com/api/search?keyword=${r}&userAgent=${n}&site=1&categories=0&ftype=0&ob=0&pg=1`,i=await ge(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Accept:"application/json",Referer:"https://www.youku.com/"}});if(!i||!i.data)return _("info","[Youku] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.pageComponentList)return _("info","[Youku] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[];for(let c of a.pageComponentList){let u=this.filterYoukuSearchItem(c,e);u&&o.push(u)}return _("info",`[Youku] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Youku] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Youku] \u83B7\u53D6\u5206\u96C6\u5217\u8868: show_id=${e}`);let r=100,n=await this._getEpisodesPage(e,1,r);if(!n||!n.videos||n.videos.length===0)return _("info","[Youku] \u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];let s=[...n.videos],i=n.total;if(i>r){let a=Math.ceil(i/r);_("info",`[Youku] \u68C0\u6D4B\u5230 ${i} \u4E2A\u5206\u96C6\uFF0C\u5C06\u5E76\u53D1\u8BF7\u6C42 ${a} \u9875`);let o=[];for(let u=2;u<=a;u++)o.push(this._getEpisodesPage(e,u,r));let c=await Promise.allSettled(o);for(let u=0;u<c.length;u++){let l=c[u];l.status==="fulfilled"&&l.value&&l.value.videos?s.push(...l.value.videos):l.status==="rejected"&&_("error",`[Youku] \u83B7\u53D6\u5206\u96C6\u9875\u9762 ${u+2} \u5931\u8D25:`,l.reason)}_("info",`[Youku] \u5E76\u53D1\u83B7\u53D6\u5B8C\u6210\uFF0C\u5171\u83B7\u53D6 ${s.length} \u4E2A\u5206\u96C6`)}return _("info",`[Youku] \u5171\u83B7\u53D6 ${s.length} \u96C6`),s}catch(r){return _("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 ge(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});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 _("error","[Youku] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Youku] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=this._extractMediaType(l.cats,l.type),p=this._processAndFormatEpisodes(d,f),m=[];for(let h of p){let A=h.link||`https://v.youku.com/v_show/id_${h.vid}.html`;m.push({name:h.episodeIndex.toString(),url:A,title:`\u3010youku\u3011 ${h.title}`})}if(m.length>0){let A={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from youku`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:m.length,rating:0,isFavorited:!0,source:"youku"};a.push(A),Dt({...A,links:m},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Youku] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}_processAndFormatEpisodes(e,r="variety"){return[...e].map((i,a)=>{let o=a+1,c=this._formatEpisodeTitle(i,o,r);return{vid:i.id,title:c,episodeIndex:o,link:i.link}})}_formatEpisodeTitle(e,r,n){let s=e.displayName||e.title,i=/^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*(?=(?:第\d+期))|^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*:\s*/;if(s=s.replace(i,"").trim(),n==="movie")return s;if(n==="variety"){let a=s.match(/第(\d+)期/);return a?`\u7B2C${a[1]}\u671F ${e.published?.split(" ")[0]??""} ${s}`:`\u7B2C${r}\u671F ${e.published?.split(" ")[0]??""} ${s}`}return/^第\d+集/.test(s)?s:`\u7B2C${r}\u96C6 ${s}`}_extractMediaType(e,r){let n=(e||"").toLowerCase(),s=(r||"").toLowerCase();return n.includes("\u7EFC\u827A")||n.includes("variety")?"variety":n.includes("\u7535\u5F71")||n.includes("movie")?"movie":n.includes("\u52A8\u6F2B")||n.includes("anime")?"anime":n.includes("\u7535\u89C6\u5267")||n.includes("drama")?"drama":s.includes("\u7EFC\u827A")?"variety":s.includes("\u7535\u5F71")?"movie":s.includes("\u52A8\u6F2B")?"anime":(s.includes("\u7535\u89C6\u5267"),"drama")}async getEpisodeDanmu(e){if(_("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5F39\u5E55...",e),!e)return[];let n=(await this.getEpisodeDanmuSegments(e)).segmentList,s=[],i=O.youkuConcurrency,a=[...n];for(let o=0;o<a.length;o+=i){let c=a.slice(o,o+i).map(async u=>{let l=await Kr(u.url,yi({data:u.data}),{headers:{Cookie:`_m_h5_tk=${u._m_h5_tk};_m_h5_tk_enc=${u._m_h5_tk_enc};`,Referer:"https://v.youku.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1,retries:1}),d=[];if(l.data?.data&&l.data.data.result){let f=JSON.parse(l.data.data.result);f.code!=="-1"&&d.push(...f.data.result)}return d});try{let u=await Promise.allSettled(c);for(let l of u)l.status==="fulfilled"&&Array.isArray(l.value)&&(s=s.concat(l.value))}catch(u){_("error","[Youku] \u4F18\u9177\u5206\u6BB5\u6279\u91CF\u8BF7\u6C42\u5931\u8D25:",u.message)}}return ts(s),s}async getEpisodeDanmuSegments(e){if(_("info","[Youku] \u83B7\u53D6\u4F18\u9177\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),!e)return new St({type:"youku",segmentList:[]});e.includes("youku.com/video?vid")&&(e=this.convertYoukuUrl(e));let r="https://openapi.youku.com/v2/videos/show.json",n="https://acs.youku.com/h5/mopen.youku.danmu.list/1.0/",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),_("info","[Youku]",a);else return _("error","[Youku] Invalid URL"),[];let o=a[a.length-1].split(".")[0].slice(3);_("info",`[Youku] video_id: ${o}`);let c;try{let x=`${r}?client_id=53e6cc67237fc59a&video_id=${o}&package=com.huawei.hwvplayer.youku&ext=show`;c=await ge(x,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1})}catch(x){return _("error","[Youku] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",x),[]}let u=typeof c.data=="string"?JSON.parse(c.data):c.data,l=u.title,d=u.duration;_("info",`[Youku] \u6807\u9898: ${l}, \u65F6\u957F: ${d}`);let f,p,m;try{let x="https://log.mmstat.com/eg.js",v="https://acs.youku.com/h5/mtop.com.youku.aplatform.weakget/1.0/?jsv=2.5.1&appKey=24679788",I=await ge(x,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});_("info",`[Youku] cnaRes: ${JSON.stringify(I)}`),_("info",`[Youku] cnaRes.headers: ${JSON.stringify(I.headers)}`);let R=I.headers.etag||I.headers.Etag;_("info",`[Youku] etag: ${R}`),f=R.replace(/^"|"$/g,""),_("info",`[Youku] cna: ${f}`);let w;for(;!w;)w=await ge(v,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});_("info",`[Youku] tkEncRes: ${JSON.stringify(w)}`),_("info",`[Youku] tkEncRes.headers: ${JSON.stringify(w.headers)}`);let N=w.headers["set-cookie"]||w.headers["Set-Cookie"];_("info",`[Youku] tkEncSetCookie: ${N}`);let P=N.match(/_m_h5_tk_enc=([^;]+)/);p=P?P[1]:null;let B=N.match(/_m_h5_tk=([^;]+)/);m=B?B[1]:null,_("info",`[Youku] _m_h5_tk_enc: ${p}`),_("info",`[Youku] _m_h5_tk: ${m}`)}catch(x){return _("error","[Youku] \u83B7\u53D6 cna \u6216 tk_enc \u5931\u8D25:",x),[]}let h=60,A=Math.floor(d/h)+1,g=[],b=async x=>{let v={ctime:Date.now(),ctype:10004,cver:"v1.0",guid:f,mat:x,mcount:1,pid:0,sver:"3.1.0",type:1,vid:o},I=JSON.stringify(v);function R(Z){let W="";for(let F=0;F<Z.length;F++)Z.charCodeAt(F)>255?W+=encodeURIComponent(Z[F]):W+=Z[F];return W}function w(Z){let W="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",F="",K=0,j=0;for(let J=0;J<Z.length;J++)for(K=K<<8|Z.charCodeAt(J),j+=8;j>=6;)F+=W[K>>j-6&63],j-=6;for(j>0&&(F+=W[K<<6-j&63]);F.length%4!==0;)F+="=";return F}let N=w(R(I));v.msg=N,v.sign=Ls(`${N}MkmC9SoIw6xCkSKHhJ7b5D2r51kBiREr`).toString().toLowerCase();let P=JSON.stringify(v),B=Date.now(),M={jsv:"2.5.6",appKey:"24679788",t:B,sign:Ls([m.slice(0,32),B,"24679788",P].join("&")).toString().toLowerCase(),api:"mopen.youku.danmu.list",v:"1.0",type:"originaljson",dataType:"jsonp",timeout:"20000",jsonpIncPrefix:"utility"},D=yi(M),L=`${n}?${D}`;return _("info",`[Youku] piece_url: ${L}`),{type:"youku",segment_start:x*h,segment_end:Math.min((x+1)*h,d),url:L,data:P,_m_h5_tk:m,_m_h5_tk_enc:p}},y=Array.from({length:A},(x,v)=>v);for(let x=0;x<y.length;x++){let v=await b(y[x]);g.push(v)}return new St({type:"youku",segmentList:g})}async getEpisodeSegmentDanmu(e){_("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5206\u6BB5\u5F39\u5E55...",e.url);let r=await Kr(e.url,yi({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})}};hn();var ysn=new wg,xsn=new Rg,bsn=new Ng,Esn=new Og,_sn=new Pg,Ssn=new Tg,i4=`LogVar Danmu API/${O.version}`,JT=class extends Tt{async search(e,r=!1){if(O.useBangumiData&&!r){let n=await Au(e,["anidb"]);if(n.length>0)return _("info",`[Dandan] Bangumi-Data \u672C\u5730\u547D\u4E2D ${n.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`),n.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||s.titles[1]||s.title)+(s.titleSuffix||"");return{animeId:parseInt(s.siteId),animeTitle:a,type:s.typeId,typeDescription:s.typeStr,imageUrl:"",startDate:s.begin,rating:0,aliases:[...s.titles]}})}try{_("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`);let n=new AbortController,s=(async()=>{try{let c=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":i4},retries:1});if(!c||!c.data)return _("info","[Dandan] \u539F\u59CB\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: original)"),{success:!1,source:"original"};if(!c.data.animes||c.data.animes.length===0)return _("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"};n.abort();let u=c.data.animes;return _("info",`[Dandan] dandanSearchresp (original): ${JSON.stringify(u)}`),_("info",`[Dandan] \u8FD4\u56DE ${u.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:u,source:"original"}}catch(c){return _("error","[Dandan] getDandanAnimes error:",{message:c.message,name:c.name,stack:c.stack}),{success:!1,source:"original"}}})(),i=(async()=>{try{await new Promise(p=>setTimeout(p,100));let c=await Xb(e,n.signal,"Dandan");if(!c||!c.title)return _("info","[Dandan] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:u,cnAlias:l}=c;_("info",`[Dandan] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u901A\u8FC7 episodes \u63A5\u53E3\u8FDB\u884C\u641C\u7D22: ${u}`);let d=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/episodes?anime=${encodeURIComponent(u)}`,{headers:{"Content-Type":"application/json","User-Agent":i4},signal:n.signal,retries:1});if(!d||!d.data)return _("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: tmdb)"),{success:!1,source:"tmdb"};if(!d.data.animes||d.data.animes.length===0)return _("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"};let f=d.data.animes;for(let p of f)p.isTmdbSource=!0,p._tmdbCnAlias=l;return _("info",`[Dandan] dandanSearchresp (tmdb): ${JSON.stringify(f)}`),_("info",`[Dandan] \u8FD4\u56DE ${f.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:f,source:"tmdb"}}catch(c){if(c.name==="AbortError")return _("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0};throw c}})(),[a,o]=await Promise.all([s,i]);if(a.success)return a.data;if(o.success)return o.data;if(_("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (\u5F53\u524D\u641C\u7D22\u8BCD: ${e})`),!r){let c=e.replace(/(?:第\s*[0-9一二三四五六七八九十百千万]+\s*[季期部])|(?:S(?:eason)?\s*\d+)|(?:Part\s*\d+)/gi,"").trim();if(c&&c!==e)return _("info",`[Dandan] \u5C1D\u8BD5\u53BB\u9664\u5B63\u5EA6\u4FE1\u606F\u8FDB\u884C\u964D\u7EA7\u641C\u7D22: ${c}`),await this.search(c,!0)}return[]}catch(n){return _("error","[Dandan] getDandanAnimes error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async getEpisodes(e){try{let r=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":i4},retries:1});if(!r||!r.data)return _("info","[Dandan] getDandanEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};if(!r.data.bangumi)return _("info","[Dandan] getDandanEposides: bangumi \u6570\u636E\u4E0D\u5B58\u5728"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};let n=r.data.bangumi,s=Array.isArray(n.episodes)?n.episodes:[],i=Array.isArray(n.titles)?n.titles.map(f=>f.title):[],a=Array.isArray(n.relateds)?n.relateds:[],o=n.type||null,c=n.typeDescription||null,u=!1,l=!1;n.tags&&Array.isArray(n.tags)&&n.tags.forEach(f=>{f.name&&f.name.toUpperCase().includes("3D")&&(u=!0),f.name&&f.name.toUpperCase().includes("2D")&&(l=!0)}),u?c="3D"+(c||""):l&&(c="2D"+(c||""));let d=n.imageUrl||null;return _("info",`[Dandan] getDandanEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),{episodes:s,titles:i,relateds:a,type:o,typeDescription:c,imageUrl:d}}catch(r){return _("error","[Dandan] getDandanEposides error:",{message:r.message,name:r.name,stack:r.stack}),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null,imageUrl:null}}}calculateSimilarity(e,r){if(!e||!r)return 0;let n=new Set(e.toLowerCase()),s=new Set(r.toLowerCase()),i=[...n].filter(o=>s.has(o)).length,a=new Set([...n,...s]).size;return i/a}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Dandan] sourceAnimes is not a valid array"),[];e.forEach(m=>{m.title=m.animeTitle});let o=e.length>0?e[0]._tmdbCnAlias:null;Zb(e,o);let c=e.length,u=new Set,l=[],d=i!==null?i:Wt(r),f=e,p=!1;if(d!==null){let m=e.filter(h=>{let A=h._displayTitle||h.animeTitle,g=Ct(A).season;return g===d||d===1&&g===null});m.length>0&&(f=m,p=!0,_("info",`[Dandan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${d}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}for(let m of f)u.add(m.animeId),l.push({...m,isRelated:!1});for(;l.length>0;){let m=l.splice(0,l.length);await Promise.all(m.map(async h=>{try{let A=await this.getEpisodes(h.animeId),g=A.episodes,b=A.titles||[],y=this.calculateSimilarity(r,h.animeTitle),x=!p;if(y>=.1&&A.relateds&&Array.isArray(A.relateds)&&x)for(let w of A.relateds){let N=Ct(w.animeTitle).season!==null;!u.has(w.animeId)&&(N||c>=25)&&(u.add(w.animeId),l.push({animeId:w.animeId,animeTitle:w.animeTitle,imageUrl:w.imageUrl,rating:w.rating||0,isRelated:!0}))}let v=[h.animeTitle,...b,...h.aliases||[]],I=!1;if(h.isRelated||h.isTmdbSource)if(d!==null){let w=null;for(let N of v){if(!N)continue;let P=Wt(N);if(P!==null){w=P;break}}d>1?I=(w||1)===d:d===1&&(I=w===null||w===1)}else I=!0;else I=v.some(w=>w&&yt(w,r,d));if(!I)return;let R=[];for(let w of g){let N=w.episodeTitle&&w.episodeTitle.trim()!==""?`${w.episodeTitle}`:`\u7B2C${w.episodeNumber}\u96C6`;R.push({name:N,url:w.episodeId.toString(),title:`\u3010dandan\u3011 ${N}`})}if(R.length>0){let w=h._displayTitle||h.animeTitle,N=[...new Set([...b,...h.aliases||[]])];h.animeTitle&&h.animeTitle!==w&&!N.includes(h.animeTitle)&&N.push(h.animeTitle);let P=A.type||h.type||"tvseries",B=A.typeDescription||h.typeDescription||"TV\u52A8\u753B",M=h.startDate||(g.length>0?g[0].airDate:null),D=M?new Date(M).getFullYear():"\u672A\u77E5",L={animeId:h.animeId,bangumiId:String(h.animeId),animeTitle:`${w}(${D})\u3010${B}\u3011from dandan`,aliases:N,type:P,typeDescription:B,imageUrl:A.imageUrl||h.imageUrl,startDate:M,episodeCount:R.length,rating:h.rating||0,isFavorited:!0,source:"dandan"};a.push(L),Dt({...L,links:R},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(A){_("error",`[Dandan] Error processing anime: ${A.message}`)}}))}return this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e,r=[]){let n=[],s={};try{let a=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=%2Fv2%2Fcomment%2F${e}%3Ffrom%3D0%26withRelated%3Dtrue%26chConvert%3D0`,{headers:{"Content-Type":"application/json","User-Agent":i4},retries:1}).catch(o=>(_("error",`[Dandan] dandan base comments error: ${o.message}`),null));a&&a.data&&a.data.comments?(n=a.data.comments,s.dandan=n.length):s.dandan=0}catch(i){_("error","[Dandan] getEpisodeDanmu error:",{message:i.message,name:i.name,stack:i.stack})}return n}async getEpisodeDanmuSegments(e){return _("info","[Dandan] \u83B7\u53D6\u5F39\u5F39play\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"dandan",segmentList:[{type:"dandan",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>r.isRealTimePulled?O.danmuSimplifiedTraditional==="simplified"&&r.m?{...r,m:Qt(r.m)}:r:{cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:O.danmuSimplifiedTraditional==="simplified"?Qt(r.m):r.m})}};Ot();_t();ir();$n();so();hs();var XT=class extends Tt{async search(e){try{let r=await ge(`${O.customSourceApiUrl}/api/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(_("info","[Custom] customSourceSearchresp: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):r.data.animes?(_("info",`[Custom] \u641C\u7D22\u627E\u5230 ${r.data.animes.length} \u4E2A\u6709\u6548\u7ED3\u679C`),r.data.animes):(_("info","[Custom] customSourceSearchresp: seriesData \u6216 seriesList \u4E0D\u5B58\u5728"),[])}catch(r){return _("error","[Custom] getCustomSourceAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=await ge(`${O.customSourceApiUrl}/api/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(_("info","[Custom] getCustomSourceEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):!r.data.bangumi||!r.data.bangumi.episodes?(_("info",`[Custom] getCustomSourceEposides: episodes \u4E0D\u5B58\u5728. Response: ${JSON.stringify(r.data)}`),[]):(_("info",`[Custom] getCustomSourceEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),r.data.bangumi.episodes)}catch(r){return _("error","[Custom] getCustomSourceEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null){let i=[];if(!e||!Array.isArray(e))return _("error","[Custom] sourceAnimes is not a valid array"),[];let a=await Promise.all(e.map(async o=>{try{let c=await this.getEpisodes(o.bangumiId),u=[];for(let l of c){let d=l.episodeTitle&&l.episodeTitle.trim()!==""?`${l.episodeTitle}`:`\u7B2C${l.episodeNumber}\u96C6`;u.push({name:d,url:l.episodeId.toString(),title:`\u3010custom\u3011 ${d}`})}if(u.length>0){let l={animeId:o.animeId,bangumiId:String(o.bangumiId),animeTitle:`${o.animeTitle}(${new Date(o.startDate).getFullYear()})\u3010${o.typeDescription}\u3011from custom`,type:o.type,typeDescription:o.typeDescription,imageUrl:o.imageUrl,startDate:o.startDate,episodeCount:u.length,rating:o.rating,isFavorited:!0,source:"custom"};i.push(l),Dt({...l,links:u},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(c){_("error",`[Custom] Error processing anime: ${c.message}`)}}));return this.sortAndPushAnimesByYear(i,n),a}async getEpisodeDanmu(e){let r=[];try{let n=await ge(`${O.customSourceApiUrl}/api/v2/comment/${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1});return n.data&&n.data.comments&&(r=n.data.comments),r}catch(n){return _("error","[Custom] fetchCustomSourceEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return _("info","[Custom] \u83B7\u53D6Custom Source\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"custom",segmentList:[{type:"custom",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>({cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:O.danmuSimplifiedTraditional==="simplified"?Qt(r.m):r.m}))}};Ot();_t();ir();Ts();$n();Ts();var pmr=`
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
`,Bo=null,ZT=null,ew=null,Nie=null,o4=0,qf=new Array(132).fill(void 0);qf.push(void 0,null,!0,!1);var tw=qf.length;function ust(t){let e=qf[t];return t>=132&&(qf[t]=tw,tw=t),e}function Rie(){return(ew===null||ew.byteLength===0)&&(ew=new Uint8Array(Nie.buffer)),ew}function a4(){return(ZT===null||ZT.byteLength===0)&&(ZT=new Int32Array(Nie.buffer)),ZT}function lst(t,e){return t=t>>>0,Cc(Rie().subarray(t,t+e))}function cst(t,e,r){if(r===void 0){let i=eg(t),a=e(i.length,1)>>>0;return Rie().subarray(a,a+i.length).set(i),o4=i.length,a}let n=eg(t),s=e(n.length,1)>>>0;return Rie().subarray(s,s+n.length).set(n),o4=n.length,s}function mmr(t){return t==null}function hmr(t){let e=atob(t.replace(/\s+/g,"")),r=new Uint8Array(e.length);for(let n=0;n<e.length;n++)r[n]=e.charCodeAt(n);return r}async function gmr(){if(Bo!==null)return Bo;let t=hmr(pmr),e={wbg:{__wbindgen_object_drop_ref:n=>ust(n),__wbindgen_string_new:(n,s)=>{let i=lst(n,s);tw===qf.length&&qf.push(qf.length+1);let a=tw;return tw=qf[a],qf[a]=i,a},__wbindgen_debug_string:()=>{}}};return Bo=(await WebAssembly.instantiate(t,e)).instance.exports,Nie=Bo.memory,ZT=null,ew=null,Bo}function Amr(t,e){let r,n;try{let s=Bo.__wbindgen_add_to_stack_pointer(-16),i=cst(t,Bo.__wbindgen_malloc,Bo.__wbindgen_realloc),a=o4,o=mmr(e)?0:cst(e,Bo.__wbindgen_malloc,Bo.__wbindgen_realloc),c=o4;Bo.gateway_decrypt(s,i,a,o,c);let u=a4()[s/4+0],l=a4()[s/4+1],d=a4()[s/4+2],f=a4()[s/4+3],p=u,m=l;if(f)throw p=0,m=0,ust(d);return r=p,n=m,lst(p,m)}finally{Bo.__wbindgen_add_to_stack_pointer(16),r!==void 0&&n!==void 0&&Bo.__wbindgen_free(r,n,1)}}async function dst(t,e){return t=t.replace(/\s+/g,""),await gmr(),Amr(t,e)}hn();hs();var Oie=class extends Tt{async search(e){try{let r="https://jadeite.migu.cn/search/v3/open-search",n={appVersion:"6.1.1.00",ct:101,isCorrectWord:1,k:e,mediaSource:9e6,packId:"1002581,1002601,1003861,1003862,1003863,1003864,1003865,1003866,1004041,1004121,1004261,1004262,1004281,1004321,1004262,1004281,1004322,1004261,1004421,1004422,1002781,1004301,1004641,1004761,1005061,1005261,1005301,1005321,1005361,1005362,1005341,1005342,1005521,1005722,1005721,1015749,1015761,1015760,1015762,1015763,1015768,1015786,1015790,1015812,1015813,1015814,1015815,1015816,1015817,1015820,1015819,1015821",pageIdx:1,pageSize:20,sid:"1X4A395AL3XS3UV5MT8PQ1L5JUYK6KFM8VKDSDD48S5Y7YX5WY1MOUHRT6512988",copyrightTerminal:3,searchScene:2,uiVersion:"A3.26.0"},s={Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive","Content-Type":"application/json",Origin:"https://www.miguvideo.com",Referer:"https://www.miguvideo.com/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"cross-site","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",appId:"miguvideo","sec-ch-ua":'Not(A:Brand";v="8", "Chromium";v="144", "Google Chrome";v="144"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"Windows",terminalId:"www"},i=await Kr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("info","[Migu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let o=(typeof i.data=="string"?JSON.parse(i.data):i.data)?.body?.contentInfoList,c=[];return o.forEach(u=>{let l=u?.shortMediaAsset;if(l&&l.isLong){let d;l?.extraData?d=l?.extraData?.episodes?.[0]:d=l?.pID,c.push({name:l.name,type:l.contDisplayName,year:l.year.trim(),img:l.h5pics?.highResolutionV,url:`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${d}/1`,epsId:d})}}),_("info",`[Migu] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return _("error","[Migu] getMiguAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}extractEpId(e){let n=e.split("?")[0].split("/").filter(s=>s!=="");return n[n.length-1]||""}async getDetail(e){try{let r=await ge(`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${e}/1`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return _("info","[Migu] getMiguDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{duration:0,epsID:null};let n=r.data?.body?.data?.playing?.duration||0,s=r.data?.body?.data?.epsID||null;return{duration:n,epsID:s}}catch(r){return _("error","[Migu] getMiguDetail error:",{message:r.message,name:r.name,stack:r.stack}),{duration:0,epsID:null}}}async getEpisodes(e){try{let r=await ge(e,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return _("info","[Migu] getMiguEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let n=r.data?.body?.data?.datas;if(n)return n;{let s=r.data?.body?.data?.name,i=r.data?.body?.data?.playing?.pID;return i?[{name:s,pID:i}]:(_("info","[Migu] getMiguEposides: eps \u4E0D\u5B58\u5728"),[])}}catch(r){return _("error","[Migu] getMiguEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Migu] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name||l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=d.name||d.title,p=Ct(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("info",`[Migu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url||l.mediaId),f=[];for(let p of d)f.push({name:p.name,url:`https://webapi.miguvideo.com/gateway/live_barrage/videox/barrage/v2/list/${l.epsId??p.pID}/${p.pID}`,title:`\u3010migu\u3011 ${p.name}`});if(f.length>0){let p={animeId:Yr(l.epsId??d[0]?.pID),bangumiId:String(l.epsId??d[0]?.pID),animeTitle:`${l.name||l.title}(${l.year})\u3010${l.type}\u3011from migu`,type:l.type,typeDescription:l.type,imageUrl:l.img??l.imageUrl,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"migu"};a.push(p),Dt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Migu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Migu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u54AA\u5495\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Migu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;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],p=f.segment_start,m=f.segment_end;if(d.status==="fulfilled"){let h=d.value;h&&h.length>0&&i.push(...h)}else _("error",`[Migu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+s<n.length&&await new Promise(l=>setTimeout(l,200))}return i.length===0?(_("info",`[Migu] \u54AA\u5495\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Migu] \u83B7\u53D6\u54AA\u5495\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=this.extractEpId(e),n=await this.getDetail(r),s=Ig(n.duration);_("info","[Migu] itemId:",r),_("info","[Migu] durationSec:",s),_("info","[Migu] epsID:",n.epsID);let i=30,a=[];for(let o=0;o<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 St({type:"migu",segmentList:a})}async getEpisodeSegmentDanmu(e){try{let r=await ge(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 dst(r.data),a=(typeof r.data=="string"?JSON.parse(s):s)?.body?.result??[];n.push(...a)}return n}catch(r){return _("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,${hb(r.textcolor)},[migu]`,m:r.msg,t:r.playtime,like:r.praiseCount}))}},fst=Oie;Ot();_t();ir();Ts();$n();hn();hs();var rw=class extends Tt{constructor(){super(),this.positionMap={1:1,4:5,5:4}}filterSohuSearchItem(e,r){if(!e.aid||!e.album_name||e.is_trailer===1||e.corner_mark&&e.corner_mark.text==="\u9884\u544A")return null;let n=e.album_name.replace("<<<","").replace(">>>",""),s=null;if(e.meta&&Array.isArray(e.meta)){for(let i of e.meta)if(i.txt&&i.txt.includes("|")){let a=i.txt.split("|");if(a.length>0){let o=a[0].trim();o.includes("\u522B\u540D")&&a.length>1?s=a[1].trim():s=o;break}}}return{mediaId:String(e.aid),title:n,type:s,year:e.year||null,imageUrl:e.ver_big_pic||null,episodeCount:e.total_video_count||0}}async search(e){try{_("info",`[Sohu] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,type:"1",page:"1",page_size:"20",user_id:"",tabsChosen:"0",poster:"4",tuple:"6",extSource:"1",show_star_detail:"3",pay:"1",hl:"3",uid:String(Math.floor(Date.now()*1e3)),passport:"",plat:"-1",ssl:"0"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://so.tv.sohu.com/",Origin:"https://so.tv.sohu.com"},s=`https://m.so.tv.sohu.com/search/pc/keyword?${yi(r)}`,i=await ge(s,{headers:n});if(!i||!i.data)return _("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.data||!a.data.items)return _("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E2D\u65E0\u6570\u636E"),[];let o=[];for(let c of a.data.items){let u=this.filterSohuSearchItem(c,e);u&&o.push(u)}return _("info",`[Sohu] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Sohu] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getPlaylistData(e){let r={playlistid:e,api_key:"f351515304020cad28c92f70f002261c"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://tv.sohu.com/"},s=`https://pl.hd.sohu.com/videolist?${yi(r)}`,i=await ge(s,{headers:n,timeout:15e3});if(!i||!i.data)return null;let a=i.data;if(typeof a=="string"&&a.startsWith("jsonp")){let o=a.indexOf("(")+1,c=a.lastIndexOf(")");if(o>0&&c>o)a=JSON.parse(a.substring(o,c));else return _("error","[Sohu] \u641C\u72D0\u89C6\u9891: \u65E0\u6CD5\u89E3\u6790JSONP\u54CD\u5E94"),null}else typeof a=="string"&&(a=JSON.parse(a));return a}async getEpisodes(e){try{_("info",`[Sohu] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=await this.getPlaylistData(e);if(!r)return _("info","[Sohu] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let n=r.videos||[];if(!n||n.length===0)return _("warn",`[Sohu] \u641C\u72D0\u89C6\u9891: \u672A\u627E\u5230\u5206\u96C6\u5217\u8868 (media_id=${e})`),[];let s=[];for(let i=0;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 _("info",`[Sohu] \u6210\u529F\u83B7\u53D6 ${s.length} \u4E2A\u5206\u96C6 (media_id=${e})`),s}catch(r){return _("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 _("error","[Sohu] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Sohu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p<d.length;p++){let m=d[p],h=m.title||`\u7B2C${p+1}\u96C6`,A=`https://tv.sohu.com/item/${l.mediaId}.html`;f.push({name:(p+1).toString(),url:`${m.url}`,title:`\u3010sohu\u3011 ${h}`})}if(f.length>0){let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from sohu`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"sohu"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Sohu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDuration(e,r){if(!e)return 0;try{let n=await this.getPlaylistData(e),s=Array.isArray(n?.videos)?n.videos:[];if(!s.length)return 0;let i=s.find(o=>String(o?.vid||"")===String(r||""))||(s.length===1?s[0]:null),a=Number(i?.playLength||0);return Number.isFinite(a)&&a>0?a:0}catch(n){return _("warn",`[Sohu] \u83B7\u53D6\u771F\u5B9E\u65F6\u957F\u5931\u8D25: ${n.message}`),0}}async extractVidAndAid(e){let r,n="0",s=await ge(e,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),i=s.data.match(/vid="(\d+)"/);return i&&(r=i[1]),n=s.data.match(/id="aid"[^>]*value=['"](\d+)['"]/)?.[1],n||(n=s.data.match(/playlistId="(\d+)"/)?.[1]),{vid:r,aid:n}}async getEpisodeDanmu(e){_("info","[Sohu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u641C\u72D0\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Sohu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;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],p=f.segment_start,m=f.segment_end;if(d.status==="fulfilled"){let h=d.value;if(h&&h.length>0)i.push(...h);else if(p>600)break}else _("error",`[Sohu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+s<n.length&&await new Promise(l=>setTimeout(l,200))}return i.length===0?(_("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getDanmuSegment(e){try{let r={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Referer:"https://tv.sohu.com/"},n=await ge(e.url,{headers:r,timeout:1e4});if(!n||!n.data)return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u5F39\u5E55\u6BB5\u54CD\u5E94\u4E3A\u7A7A (${e.segment_start}-${e.segment_end}s)`),[];try{let i=(typeof n.data=="string"?JSON.parse(n.data):n.data).info?.comments||[];return i&&i.length>0&&_("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5230 ${i.length} \u6761\u5F39\u5E55 (${e.segment_start}-${e.segment_end}s)`),i||[]}catch(s){return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u89E3\u6790\u5F39\u5E55\u54CD\u5E94\u5931\u8D25: ${s.message}`),[]}}catch(r){return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (vid=${vid}, ${start}-${end}s): ${r.message}`),[]}}async getEpisodeDanmuSegments(e){_("info","[Sohu] \u83B7\u53D6\u641C\u72D0\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let{vid:r,aid:n}=await this.extractVidAndAid(e),s=await this.getEpisodeDuration(n,r),i=s>0?Math.ceil(s):10800,a=300,o=[];for(let c=0;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 St({type:"sohu",duration:s>0?s:0,segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=await ge(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.info?.comments||[])}return n}catch(r){return _("error","[Sohu] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>{try{let n=16777215;if(r.t&&r.t.c){let l=r.t.c;typeof l=="string"&&l.startsWith("#")?n=parseInt(l.substring(1),16):n=parseInt(String(l),16)}let s=r.v||0,i=Math.floor(parseFloat(r.created||Date.now()/1e3)),a=r.uid||"",o=r.i||"",c=1;r.t&&r.t.p&&(c=this.positionMap[r.t.p]||1);let u=`${s},1,25,${n},${i},0,${a},${o}`;return{cid:String(o),p:u,m:r.c||"",t:parseFloat(s),like:r.fcount}}catch(n){return _("error",`[Sohu] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};Ot();_t();ir();Ts();$n();hn();hs();var pst={tv:"\u7535\u89C6\u5267",movie:"\u7535\u5F71",cartoon:"\u52A8\u6F2B",comic:"\u52A8\u6F2B"},nw=class extends Tt{constructor(){super(),this.positionMap={4:1,3:4,1:5,2:1}}filterLeshiSearchItem(e,r){if(!e.pid||!e.title)return null;let n=e.title,s=pst[e.type]||"\u7535\u89C6\u5267";return{mediaId:String(e.pid),title:n,type:s,year:e.year||null,imageUrl:e.imageUrl||null,episodeCount:e.episodeCount||0}}async search(e){try{_("info",`[Leshi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={wd:e,from:"pc",ref:"click",click_area:"search_button",query:e,is_default_query:"0",module:"search_rst_page"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Accept-Encoding":"gzip, deflate, br",Referer:"https://so.le.com/",Connection:"keep-alive","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin"},s=`https://so.le.com/s?${yi(r)}`,i=await ge(s,{headers:n,timeout:15e3});if(!i||!i.data)return _("info","[Leshi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=i.data;_("info",`[Leshi] \u641C\u7D22\u8BF7\u6C42\u6210\u529F\uFF0C\u54CD\u5E94\u957F\u5EA6: ${a.length} \u5B57\u7B26`);let o=[],c=/<div class="So-detail[^"]*"[^>]*data-info="({.*?})"[^>]*>/g,u,l=[];for(;(u=c.exec(a))!==null;)l.push(u);_("info",`[Leshi] \u4ECEHTML\u4E2D\u627E\u5230 ${l.length} \u4E2A data-info \u5757`);for(let d of l)try{let f=d[1];_("info",`[Leshi] \u63D0\u53D6\u5230 data-info \u539F\u59CB\u5B57\u7B26\u4E32: ${f.substring(0,200)}...`),f=f.replace(/'/g,'"'),f=f.replace(/([{,])(\w+):/g,'$1"$2":');let p=JSON.parse(f);_("info",`[Leshi] \u6210\u529F\u89E3\u6790 data-info\uFF0Cpid=${p.pid}, type=${p.type}`);let m=p.pid||"",h=p.type||"",A=p.total||"0";if(!m)continue;let g=d.index,b=[`</div>
</div>`,`</div>
</div>`,"</div></div>"],y=-1;for(let L of b){let Z=a.indexOf(L,g);if(Z!==-1){y=Z;break}}if(y===-1){let L=a.indexOf('<div class="So-detail',g+100);if(L!==-1)y=L;else continue}let x=a.substring(g,y),v="",I=/<h1>[\s\S]*?<a[^>]*title="([^"]*)"[^>]*>/.exec(x);if(I&&I[1]&&(v=I[1].trim()),!v&&p.keyWord){let L=/(.*?)(?:\d{4})?(?:电影|电视剧|综艺)?$/.exec(p.keyWord);L&&L[1]&&(v=L[1].replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g,"").trim())}if(!v){let L=/<a[^>]*title="([^"]*?)[^0-9\u4e00-\u9fa5][^"]*"/.exec(x);L&&L[1]&&(v=L[1].trim())}v||_("info","[Leshi] \u672A\u627E\u5230\u6807\u9898\uFF0C\u5C1D\u8BD5\u4ECE\u5176\u4ED6\u6765\u6E90\u83B7\u53D6");let R=/<img[^>]*(?:src|data-src|alt)="([^"]+)"/.exec(x),w=R?R[1]:"",N=null,P=/<b>年份:<\/b>.*?>(\d{4})<\/a>/.exec(x);P||(P=/<b>ä¸Šæ˜ æ—¶é—´ï¼š<\/b>.*?>(\d{4})<\/a>/.exec(x)),P||(P=/_y(\d{4})_/.exec(x)),P||(P=/(\d{4})/.exec(p.keyWord||"")),P&&(N=parseInt(P[1]));let B=pst[h]||"\u7535\u89C6\u5267",M=A&&/^\d+$/.test(A)?parseInt(A):0,D={mediaId:m,title:v,type:B,year:N,imageUrl:w&&w.startsWith("http")?w:w?`https:${w}`:null,episodeCount:M};o.push(D),_("info",`[Leshi] \u89E3\u6790\u6210\u529F - ${v} (pid=${m}, type=${B}, episodes=${M})`)}catch(f){_("warn",`[Leshi] \u89E3\u6790\u641C\u7D22\u7ED3\u679C\u9879\u5931\u8D25: ${f}`);continue}if(o.length>0){_("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C\u3002`),_("info","[Leshi] \u641C\u7D22\u7ED3\u679C\u5217\u8868:");for(let d of o)_("info",`[Leshi] - ${d.title} (ID: ${d.mediaId}, \u7C7B\u578B: ${d.type}, \u5E74\u4EFD: ${d.year})`)}else _("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 0 \u4E2A\u7ED3\u679C\u3002`);return o}catch(r){return _("error","[Leshi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Leshi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=[`https://www.le.com/tv/${e}.html`,`https://www.le.com/comic/${e}.html`,`https://www.le.com/playlet/${e}.html`,`https://www.le.com/movie/${e}.html`],n=null;for(let l of r)try{let d=await ge(l,{timeout:1e4});if(d&&d.data&&d.status===200){n=d.data,_("info",`[Leshi] \u6210\u529F\u83B7\u53D6\u9875\u9762: ${l}`);break}}catch(d){_("info",`[Leshi] \u5C1D\u8BD5URL\u5931\u8D25 ${l}: ${d}`);continue}if(!n)return _("error",`[Leshi] \u65E0\u6CD5\u83B7\u53D6\u4F5C\u54C1\u9875\u9762: media_id=${e}`),[];let s=/<div class="show_cnt twxj-[^"]*">[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(s)return _("info","[Leshi] \u627E\u5230\u56FE\u6587\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(s[0],e);let i=/<div class="show_cnt sjxj-[^"]*">[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(i)return _("info","[Leshi] \u627E\u5230\u6570\u5B57\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(i[0],e);_("info","[Leshi] \u672A\u627E\u5230\u7279\u5B9A\u9009\u96C6\u5BB9\u5668\uFF0C\u5C1D\u8BD5\u67E5\u627E\u7B2C\u4E00\u96C6\u89C6\u9891\u5217\u8868...");let a=/<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)}_("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],p={vid:d,title:`\u7B2C${u.length+1}\u96C6`,url:f,episodeId:`${d}:${e}`};u.push(p)}return u.length>0?(_("info",`[Leshi] \u4ECEHTML\u5185\u5BB9\u4E2D\u5339\u914D\u5230 ${u.length} \u4E2A\u5267\u96C6\u94FE\u63A5`),u):[]}catch(r){return _("error","[Leshi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}parseEpisodesFromHtml(e,r){try{let n=/<div class="col_4"[^>]*>[\s\S]*?<\/div>/g,s=e.match(n);if(!s||s.length===0){_("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5BB9\u5668div.col_4\uFF0C\u5C1D\u8BD5\u67E5\u627Edl.dl_temp\u5143\u7D20");let a=/<dl class="dl_temp">[\s\S]*?<\/dl>/g,o=e.match(a);if(!o||o.length===0){_("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5143\u7D20\uFF0C\u5C1D\u8BD5\u66F4\u5E7F\u6CDB\u7684\u9009\u62E9\u5668");let c=/<dl[^>]*class="[^"]*dl_temp[^"]*"[^>]*>[\s\S]*?<\/dl>/g,u=e.match(c);return!u||u.length===0?(_("error",`[Leshi] \u65E0\u6CD5\u4ECEHTML\u4E2D\u89E3\u6790\u5230\u4EFB\u4F55\u5267\u96C6: media_id=${r}`),[]):this.extractEpisodes(u,r)}return this.extractEpisodes(o,r)}let i=[];for(let a of s){let o=/<dl class="dl_temp">[\s\S]*?<\/dl>/.exec(a);o&&i.push(o[0])}return i.length===0?(_("error",`[Leshi] \u4ECE\u5BB9\u5668\u4E2D\u672A\u80FD\u63D0\u53D6\u5230\u4EFB\u4F55dl.dl_temp\u5143\u7D20: media_id=${r}`),[]):this.extractEpisodes(i,r)}catch(n){return _("error",`[Leshi] \u89E3\u6790\u5267\u96C6HTML\u5931\u8D25: ${n.message}`),[]}}extractEpisodes(e,r){let n=[];for(let s of e)try{let i=/<a[^>]+href="(\/\/www\.le\.com\/ptv\/vplay\/(\d+)\.html)"[^>]*>/.exec(s);if(!i){_("info","[Leshi] \u8DF3\u8FC7\u65E0\u6CD5\u89E3\u6790\u94FE\u63A5\u7684\u5267\u96C6\u5143\u7D20");continue}let a=i[1],o=i[2],c=`https:${a}`,u="",l=/<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 p=/<a[^>]*title="([^"]*)"[^>]*>[\s\S]*?<dt class="d_tit">/.exec(s)||/<dt class="d_tit">[\s\S]*?<a[^>]*title="([^"]*)"/.exec(s);if(p&&p[1])u=p[1].trim();else{let m=/<dd class="d_cnt"[^>]*>([^<]*)/.exec(s);if(m&&m[1])u=m[1].trim();else{let h=/<a[^>]*title="[^"]*"[^>]*>([^<]*)/.exec(s);h&&h[1]&&(u=h[1].trim())}}}if(!u){let p=/第(\d+)集|(\d+)(?:\s*预告)?/.exec(s);p?u=`\u7B2C${p[1]||p[2]}\u96C6`:u=`\u7B2C${n.length+1}\u96C6`}if(/预告|Preview|preview/.test(u)){_("info",`[Leshi] \u8DF3\u8FC7\u9884\u544A\u7247: ${u}`);continue}let f={vid:o,title:u,url:c,episodeId:`${o}:${r}`};n.push(f)}catch(i){_("warn",`[Leshi] \u89E3\u6790\u5355\u4E2A\u5267\u96C6\u5931\u8D25: ${i.message}`);continue}return _("info",`[Leshi] \u6210\u529F\u89E3\u6790\u5267\u96C6\u5217\u8868: media_id=${r}, \u5171 ${n.length} \u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Leshi] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Leshi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p<d.length;p++){let m=d[p],h=m.title||`\u7B2C${p+1}\u96C6`;f.push({name:(p+1).toString(),url:`${m.url}`,title:`\u3010leshi\u3011 ${h}`})}if(f.length>0){let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from leshi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"leshi"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Leshi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Leshi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4E50\u89C6\u7F51\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Leshi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;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],p=f.segment_start,m=f.segment_end;if(d.status==="fulfilled"){let h=d.value;if(h&&h.length>0)i.push(...h);else if(p>600)break}else _("error",`[Leshi] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+s<n.length&&await new Promise(l=>setTimeout(l,200))}return i.length===0?(_("info",`[Leshi] \u4E50\u89C6\u7F51: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getDanmuSegment(e){try{let r=await ge(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?r.data:JSON.stringify(r.data),i=/vjs_\d+\((.*)\)/.exec(s);if(i){let a=JSON.parse(i[1]);a.code===200&&a.data&&n.push(...a.data.list||[])}}return n}catch(r){return _("error","[Leshi] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}async getEpisodeDanmuSegments(e){_("info","[Leshi] \u83B7\u53D6\u4E50\u89C6\u7F51\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e,n=e.match(/\/vplay\/(\d+)\.html/);n&&(r=n[1]);let s=await this.getVideoDuration(r),i=[];for(let a=0;a<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 _("info",`[Leshi] \u4E50\u89C6\u7F51: \u89C6\u9891\u65F6\u957F ${s}\u79D2\uFF0C\u5206\u4E3A ${i.length} \u4E2A\u65F6\u95F4\u6BB5`),new St({type:"leshi",segmentList:i})}async getEpisodeSegmentDanmu(e){return this.getDanmuSegment(e)}async getVideoDuration(e){try{let r=await ge(`https://www.le.com/ptv/vplay/${e}.html`,{timeout:1e4});if(!r||!r.data)return _("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 _("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 _("error",`[Leshi] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};Ot();_t();ir();Ts();$n();hn();hs();var Pie=class extends Tt{async search(e){try{let r=`https://m.ixigua.com/s/${e}`,s=(await ge(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}})).data,i=[],a=/<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+)"/),p=f?`https://m.ixigua.com${f[1]}`:"",m=d.match(/<h3 class="s-long-video-info-title">[\s\S]*?title="([^"]+)"/),h=m?m[1]:"",A=d.match(/<img src="([^"]+)"/),g=A?A[1]:"";g&&g.startsWith("//")&&(g="https:"+g),g=g.replace(/&amp;/g,"&");let b=d.match(/<p>([^<]+\/[^<]+\/\d{4})<\/p>/),y="",x="";if(b){let v=b[1].split("/");y=v[0]||"",x=v[2]||""}p&&h&&i.push({name:h,type:y,year:x,img:g,url:p})})}else return _("info","[Xigua] xiguaSearchresp: \u76F8\u5173\u89C6\u9891\u7684section \u4E0D\u5B58\u5728"),[];return _("info",`[Xigua] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i}catch(r){return _("error","[Xigua] getXiguaAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let n=`https://m.ixigua.com/video/${e.split("/").pop()}`,s=await ge(n,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!s||!s.data)return _("info","[Xigua] getXiguaDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),0;let i=s.data.match(/"duration"\s*:\s*([\d.]+)/);return i?parseFloat(i[1]):0}catch(r){return _("error","[Xigua] getXiguaDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r=`https://m.ixigua.com/video/${e}`,n=await ge(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!n||!n.data)return _("info","[Xigua] getXiguaEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let s=n.data.match(/"episodes_list"\s*:\s*(\[[\s\S]*?\})\s*\]/);if(s)try{let i=s[0].replace(/"episodes_list"\s*:\s*/,"");return JSON.parse(i).map(c=>({seq_num:c.seq_num,title:c.title||`\u7B2C${c.seq_num}\u96C6`,url:`https://m.ixigua.com/video/${c.gid}`,gid:c.gid,cover_image_url:c.cover_image_url}))}catch(i){_("error","[Xigua] \u89E3\u6790episodes_list\u5931\u8D25:",i)}else return _("info","[Xigua] getXiguaEposides: episodes_list \u4E0D\u5B58\u5728"),[]}catch(r){return _("error","[Xigua] getXiguaEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Xigua] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Xigua] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=l.url.split("/").pop(),f=await this.getEpisodes(d),p=[];for(let m of f){let h=m.title;p.push({name:h,url:m.url,title:`\u3010xigua\u3011 ${h}`})}if(p.length>0){let m={animeId:Yr(d),bangumiId:String(d),animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from xigua`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Or(l.year),episodeCount:p.length,rating:0,isFavorited:!0,source:"xigua"};a.push(m),Dt({...m,links:p},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Xigua] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Xigua] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u897F\u74DC\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Xigua] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;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],p=f.segment_start,m=f.segment_end;if(d.status==="fulfilled"){let h=d.value;h&&h.length>0&&i.push(...h)}else _("error",`[Xigua] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+s<n.length&&await new Promise(l=>setTimeout(l,200))}return i.length===0?(_("info",`[Xigua] \u897F\u74DC\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Xigua] \u83B7\u53D6\u897F\u74DC\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e.split("/").pop(),n=await this.getDetail(e)*1e3;_("info","[Xigua] itemId:",r),_("info","[Xigua] duration:",n);let s=3e5,i=[];for(let a=0;a<n;a+=s){let o=a,c=Math.min(a+s,n),l=`https://ib.snssdk.com/vapp/danmaku/list/v1/?${yi({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 St({type:"xigua",segmentList:i})}async getEpisodeSegmentDanmu(e){try{let r=await ge(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 _("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)}))}},mst=Pie;Ot();_t();ir();Ts();$n();hn();hs();var kie=class extends Tt{constructor(){super(),this.domain="https://mob.mddcloud.com.cn",this.headers={"user-agent":"Mdd/5.8.00 (Android+32+)","Content-Type":"application/json",version:"5.8.00",Referer:"mdd"}}getPlayload(e,r){let n=Date.now(),s=yi(r,!1),i=`os:Android|version:5.8.00|action:${e}|time:${n}|appToken:|privateKey:e1be6b4cf4021b3d181170d1879a530a9e4130b69032144d5568abfd6cd6c1c2|data:${s}&`;return{channel:"1000",data:r,deviceNum:"853BDD7A1DC011F1C341455071C03AEB",deviceType:0,jsonSign:0,os:"Android",sign:Ls(i),sourceVersion:0,terminalType:"APP",thirdStatus:0,time:n,version:"5.8.00",visitorStatus:0}}extractByRegex(e){let r=e.match(/\/video\/([a-f0-9]+)\.html/i),n=e.match(/[?&]uuid=([a-f0-9]+)/i);return{vodUuid:r?r[1]:null,uuid:n?n[1]:null,success:!!(r&&n)}}async search(e){try{let r="/searchApi/search/getAllSearchResult4820.action",n=`${this.domain}${r}`,s={keyWord:e},i=await Kr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return _("info","[Maiduidui] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=a?.data;for(let u of c)if(u?.typeName==="\u5267\u96C6"||u?.typeName==="\u7535\u5F71"||u?.typeName==="\u7EFC\u827A")for(let l of u?.vodList)o.push({name:l.name,type:u.typeName,year:l.yearName,img:l.downImage,url:l.uuid});return _("info",`[Maiduidui] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Maiduidui] getMaiduiduiAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let r=this.extractByRegex(e),n=r.uuid,s=r.vodUuid,i="/api/vod/listVodSactions.action",a=`${this.domain}${i}`,o={hasIntroduction:0,vodUuid:s},c=await Kr(a,JSON.stringify(this.getPlayload(i,o)),{headers:this.headers});if(!c||!c.data)return _("info","[Maiduidui] \u83B7\u53D6\u8BE6\u60C5\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let u=typeof c.data=="string"?JSON.parse(c.data):c.data;for(let l of u?.data)if(l.uuid===n)return l.duration;return 0}catch(r){return _("error","[Maiduidui] getMaiduiduiDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r="/api/vod/listVodSactions.action",n=`${this.domain}${r}`,s={hasIntroduction:0,vodUuid:e},i=await Kr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return _("info","[Maiduidui] \u83B7\u53D6\u96C6\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let a=[];return(typeof i.data=="string"?JSON.parse(i.data):i.data)?.data.forEach(c=>{a.push({title:c.name,episodeId:c.uuid})}),a}catch(r){return _("error","[Maiduidui] getMaiduiduiEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Maiduidui] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Maiduidui] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url),f=[];for(let p of d){let m=p.title;f.push({name:m,url:`https://www.mddcloud.com.cn/video/${l.url}.html?uuid=${p.episodeId}`,title:`\u3010maiduidui\u3011 ${m}`})}if(f.length>0){let p={animeId:Yr(l.url),bangumiId:l.url,animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from maiduidui`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"maiduidui"};a.push(p),Dt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Maiduidui] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Maiduidui] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u57CB\u5806\u5806\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Maiduidui] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=20,i=[];for(let a=0;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],p=f.segment_start,m=f.segment_end;if(d.status==="fulfilled"){let h=d.value;h&&h.length>0&&i.push(...h)}else _("error",`[Maiduidui] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+s<n.length&&await new Promise(l=>setTimeout(l,200))}return i.length===0?(_("info",`[Maiduidui] \u57CB\u5806\u5806: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Maiduidui] \u83B7\u53D6\u57CB\u5806\u5806\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let n=this.extractByRegex(e).uuid,s=await this.getDetail(e);_("info","[Maiduidui] uuid:",n),_("info","[Maiduidui] duration:",s);let i=60,a=[];for(let o=0;o<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 St({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 Kr(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 _("error","[Maiduidui] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>({cid:Number(r.uuid),p:`${r.times.toFixed(2)},1,${hb(r.color.replace("#",""))},[maiduidui]`,m:r.content,t:r.times}))}},hst=kie;_t();ir();Ts();$n();hn();so();Ot();Ot();_t();Ts();ir();var ymr="https://www.yfsp.tv/",xmr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",bmr=60*1e3;function sw(t,e,r){if(t==null)return r;let n=e.split("."),s=t;for(let i=0;i<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 Emr(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 _mr(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 Smr(t){let e=sw(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 vmr(t){let e=Emr(t,"injectJson");if(e)try{let r=JSON.parse(e),n=Smr(r);if(n)return n}catch(r){_("warn","[Utils] [Aiyifan] \u89E3\u6790 injectJson \u5931\u8D25\uFF0C\u56DE\u9000\u5230 pConfig \u63D0\u53D6: "+(r.message||"\u672A\u77E5\u9519\u8BEF"))}return _mr(t)}function gst(t){return t==null?null:String(t)}function Imr(t){return t==="vv"||t==="pub"}function Cmr(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 Tmr(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 Cmr(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,gst(n)])}),r.filter(function(n){return n[1]!==null})}catch{}return Object.keys(t).map(function(n){return[n,gst(t[n])]}).filter(function(n){return n[1]!==null})}return[]}function wmr(t){return Tmr(t).filter(function(e){return!Imr(e[0])}).map(function(e){return e[0]+"="+e[1]}).join("&")}function Rmr(t,e){let r=wmr(t),n=e.publicKey+"&"+r.toLowerCase()+"&"+e.privateKey;return Ls(n)}function Nmr(t){return typeof t=="string"?JSON.parse(t):t}function Omr(t){var e=sw(t,"ret",null),r=sw(t,"data.code",null);return e===200&&r===0}function Ast(t,e){var r=sw(t,"data.msg",null)||sw(t,"msg",null);return r||"HTTP "+e}var c4=class{constructor(e){e=e||{},this.proxyUrlBuilder=e.proxyUrlBuilder||function(r){return O.makeProxyUrl(r)},this.userAgent=e.userAgent||xmr,this.configPageUrl=e.configPageUrl||ymr,this.ttlMs=e.ttlMs||bmr,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 ge(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=vmr(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,_("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=Rmr(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=lb(e,o),u=await ge(this.proxyUrlBuilder(c),{headers:n}),l;try{l=Nmr(u.data)}catch(f){if(!i)return _("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||!Omr(l)){if(!i)return _("warn","["+s+"] \u5F53\u524D\u7B7E\u540D\u8BF7\u6C42\u5931\u8D25\uFF0C\u5237\u65B0 pConfig \u540E\u91CD\u8BD5: "+Ast(l,d)),this.signedGetJson(e,r,n,s,!0);throw new Error(Ast(l,d))}return{data:l,vv:o.vv,signingConfig:a}}};var iw=class extends Tt{constructor(){super(),this.USER_AGENT="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",this.SEARCH_API="https://rankv21.tripdata.app/v3/list/briefsearch",this.PLAYLIST_API="https://m10.yfsp.tv/v3/video/languagesplaylist",this.VIDEO_API="https://m10.yfsp.tv/v3/video/play",this.DANMU_API="https://m10.yfsp.tv/api/video/getBarrage",this.DOMAIN_API="https://www.yfsp.tv/play",this.CONFIG_PAGE_API="https://www.yfsp.tv/",this.signingProvider=new c4({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"};_("info",`[Aiyifan] [\u641C\u7D22] \u5173\u952E\u8BCD: ${e}, \u9875\u7801: ${r}`);try{let a=lb(this.SEARCH_API,s),o=await ge(O.makeProxyUrl(a),{headers:i});return typeof o.data=="string"?JSON.parse(o.data):o.data}catch(a){return _("error",`[Aiyifan] [\u641C\u7D22\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractDramaList(e){let r=[],n=e?.data?.info||[];if(!n.length)return _("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}),_("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"};_("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 _("info",`[Aiyifan] [\u64AD\u653E\u5217\u8868] \u5171\u83B7\u53D6\u5230 ${i.length} \u96C6`),i}catch(s){return _("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})`:"";_("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 _("info",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F] vv\u7B7E\u540D: ${o.substring(0,16)}...`),a.data||{}}catch(a){return _("error",`[Aiyifan] [\u89C6\u9891\u4FE1\u606F\u5931\u8D25] \u9519\u8BEF: ${a.message}`),null}}extractUniqueKey(e){let n=(e.info?.[0]||{}).uniqueKey;return n&&_("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};_("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");_("info",`[Aiyifan] [\u5F39\u5E55] vv\u7B7E\u540D: ${o.substring(0,16)}...`);let c=a.data?.info||[];return _("info",`[Aiyifan] [\u5F39\u5E55] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c}catch(a){return _("error",`[Aiyifan] [\u5F39\u5E55\u5931\u8D25] \u9519\u8BEF: ${a.message}`),[]}}async search(e){_("info",`[Aiyifan] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=await this.searchDrama(e);if(!r)return _("error","[Aiyifan] \u641C\u7D22\u5931\u8D25\uFF0C\u9000\u51FA"),[];let n=this.extractDramaList(r);if(!n.length)return _("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 _("info",`[Aiyifan] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${s.length} \u4E2A\u7ED3\u679C`),s}async getEpisodes(e){_("info",`[Aiyifan] \u83B7\u53D6\u5267\u96C6\u8BE6\u60C5: ${e}`);let r=await this.getPlaylist(e);if(!r.length)return _("error","[Aiyifan] \u83B7\u53D6\u64AD\u653E\u5217\u8868\u5931\u8D25"),[];let n=r.map((s,i)=>({vid:s.key,id:s.id,title:s.name||`\u7B2C${i+1}\u96C6`,link:`${this.DOMAIN_API}/${e}?id=${s.key}`}));return _("info",`[Aiyifan] \u83B7\u53D6\u5230 ${n.length} \u4E2A\u5267\u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Aiyifan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Aiyifan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId);if(d.length===0){_("info",`[Aiyifan] ${l.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}let f=d.map((h,A)=>({name:h.title||`${A+1}`,url:h.link,title:`\u3010aiyifan\u3011 ${h.title}`}));if(f.length===0)return;let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from aiyifan`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"aiyifan"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}catch(d){_("error",`[Aiyifan] \u5904\u7406 ${l.title} \u5931\u8D25:`,d.message)}});return await Promise.all(u),this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e){_("info",`[Aiyifan] \u83B7\u53D6\u5F39\u5E55: ${e}`);let r=this.extractEpisodeRequestKey(e),n=this.inflightDanmuRequests.get(r);if(n)return _("info",`[Aiyifan] \u590D\u7528\u8FDB\u884C\u4E2D\u7684\u5F39\u5E55\u8BF7\u6C42: ${r}`),await n;let s=(async()=>{let i=r,a=await this.getVideoInfo(i);if(!a)return _("error","[Aiyifan] \u83B7\u53D6\u89C6\u9891\u4FE1\u606F\u5931\u8D25"),[];let o=this.extractUniqueKey(a);if(!o)return _("error","[Aiyifan] \u672A\u83B7\u53D6\u5230uniqueKey"),[];let c=await this.fetchBarrage(o);return c.length===0?(_("info","[Aiyifan] \u672A\u83B7\u53D6\u5230\u5F39\u5E55"),[]):(c.sort((u,l)=>(u.second||0)-(l.second||0)),_("info",`[Aiyifan] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c)})();this.inflightDanmuRequests.set(r,s);try{return await s}finally{this.inflightDanmuRequests.delete(r)}}async getEpisodeDanmuSegments(e){let r=await this.getEpisodeDanmu(e),n=[{type:"aiyifan",segment_start:0,segment_end:Math.max(...r.map(s=>s.second||0),0),url:`${this.DANMU_API}?uniqueKey=${e}`}];return{type:"aiyifan",duration:Math.max(...r.map(s=>s.second||0),0),segmentList:n}}async getEpisodeSegmentDanmu(e){let r=e.url?.split("uniqueKey=")[1];return r?await this.getEpisodeDanmu(r):[]}formatComments(e){return e.map(r=>({p:`${r.second||0},${r.position===1?5:1},25,${hb(r.color.replace("#",""))},0,0,0,0`,m:r.contxt||r.content||"",like:r.good,...r})).map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=Qt(r.m)),r))}};Ot();_t();ir();$n();so();hs();hn();var Rc={danmu:null,subject:null},aw=new Map,Pmr=3*60*1e3,kmr=100,ow=class extends Tt{get headers(){return{"Content-Type":"application/json","User-Agent":`huangxd-/danmu_api/${O.version}(https://github.com/huangxd-/danmu_api)`}}_applyProxyForSearch(e){return O.makeProxyUrl(e)}_getDanmuServerPriority(){return new Date().getTimezoneOffset()===-480?["https://api.animeko.org","https://danmaku-global.myani.org","https://danmaku-cn.myani.org","https://s1.animeko.openani.org"]:["https://danmaku-global.myani.org","https://api.animeko.org","https://s1.animeko.openani.org","https://danmaku-cn.myani.org"]}_getSubjectServerPriority(){let e="https://api.bgm.tv",r="https://api.bangumi.lol",n=this._applyProxyForSearch(e),i=new Date().getTimezoneOffset()===-480?[{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"},{type:"V2",url:"https://s1.animeko.openani.org"}]:[{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://s1.animeko.openani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"}];return n!==e?[...i,{type:"V0",url:n},{type:"V0",url:r}]:[...i,{type:"V0",url:r},{type:"V0",url:e}]}async _fetchV0AllEpisodes(e,r){let n=[],s=0,i=200;try{for(;;){let a=`${e}/v0/episodes?subject_id=${r}&limit=${i}&offset=${s}`,o=await ge(a,{headers:this.headers,timeout:3e3});if(!o||!o.data||!Array.isArray(o.data.data)){s===0&&_("info",`[Animeko] Subject ${r} \u65E0\u5267\u96C6\u6570\u636E\u6216\u54CD\u5E94\u5F02\u5E38`);break}let c=o.data.data;if(c.length===0||(n=n.concat(c),c.length===i&&_("info",`[Animeko] ID:${r} \u6B63\u52A0\u8F7D\u66F4\u591A\u5267\u96C6 (\u5F53\u524D\u5DF2\u83B7: ${n.length})`),c.length<i))break;if(s+=i,s>1600){_("warn",`[Animeko] ID:${r} \u5267\u96C6\u6570\u91CF\u8D85\u8FC7\u5B89\u5168\u9650\u5236(1600)\uFF0C\u505C\u6B62\u7FFB\u9875`);break}}return n}catch(a){return _("error","[Animeko] V0\u5267\u96C6\u83B7\u53D6\u5F02\u5E38:",{message:a.message,id:r,offset:s}),[]}}async _fetchAnimekoSubject(e){let r=aw.get(e);if(r&&Date.now()-r.timestamp<Pmr)return r.data;let n=this._getSubjectServerPriority(),s=Rc.subject,i=n.findIndex(a=>a.url===s);(!s||i===-1)&&(i=0,s=n[0].url,Rc.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"){_("info",`[Animeko] \u8BE6\u60C5\u63A5\u53E3\u8BF7\u6C42 V2 \u8282\u70B9: ${o.url} (${e})`);let u=await ge(`${o.url}/v2/subjects/${e}`,{headers:this.headers,timeout:3e3});u&&u.data&&u.data.id&&(c=u.data)}else if(o.type==="V0"){_("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),ge(`${o.url}/v0/subjects/${e}/subjects`,{headers:this.headers,timeout:3e3}).catch(d=>(_("warn",`[Animeko] V0\u5173\u8054\u83B7\u53D6\u5F02\u5E38: ${d.message}`),null))]);(u&&u.length>0||l)&&(c={id:e},u&&u.length>0&&(c.episodes=u.map(d=>({episodeId:d.id,sort:d.sort,ep:d.ep,type:d.type===0?"MAIN":d.type===1?"SP":String(d.type),name:d.name,nameCn:d.name_cn,airdate:d.airdate}))),l&&l.data&&Array.isArray(l.data)&&(c.relations=l.data))}if(c){if(Rc.subject!==o.url&&(_("info",`[Animeko] \u8BE6\u60C5\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${Rc.subject} -> ${o.url}`),Rc.subject=o.url),aw.set(e,{data:c,timestamp:Date.now()}),aw.size>kmr){let u=aw.keys().next().value;aw.delete(u)}return c}_("warn",`[Animeko] \u8282\u70B9 ${o.url} \u8FD4\u56DE\u65E0\u6548\u6570\u636E`)}catch(c){_("warn",`[Animeko] \u8282\u70B9\u8BF7\u6C42\u5931\u8D25: ${o.url} - ${c.message}`)}}return _("warn","[Animeko] \u6240\u6709\u8BE6\u60C5\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u4F18\u5148\u7EA7\u9996\u4F4D"),Rc.subject=n[0].url,null}async search(e){if(O.useBangumiData){let r=await Au(e,["bangumi"]);if(r.length>0){_("info",`[Animeko] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`);let n=r.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||s.titles[1]||s.title)+(s.titleSuffix||"");return{id:parseInt(s.siteId),name:s.title,name_cn:a,imageUrl:"",date:s.begin,score:0,platform:s.typeStr,aliases:[...s.titles]}});if(n.length>1){let s=await this.checkRelationsAndModifyTitles(n);return _("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF08Bangumi-Data + \u5173\u7CFB\u68C0\u6D4B\uFF09\uFF0C\u5171\u627E\u5230 ${s.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(s)}return this.transformResults(n)}}try{let r=e.replace(/[._]/g," ").replace(/\s+/g," ").trim();_("info",`[Animeko] \u5F00\u59CB\u641C\u7D22 (V0): ${r}`);let n=[],s=0,i=20;for(;;){let o=`/v0/search/subjects?limit=${i}&offset=${s}`,c=`https://api.bgm.tv${o}`,u=`https://api.bangumi.lol${o}`,l=this._applyProxyForSearch(c),d=[];l!==c?d=[{id:"PROXY_OFFICIAL",url:l},{id:"MIRROR",url:u}]:d=[{id:"MIRROR",url:u},{id:"OFFICIAL",url:c}];let f={keyword:r,filter:{type:[2]}},p=null;for(let A of d)try{if(p=await Kr(A.url,JSON.stringify(f),{headers:this.headers,timeout:5e3}),p&&p.data){_("info",`[Animeko] \u641C\u7D22\u8282\u70B9 [${A.id}] \u8BF7\u6C42\u6210\u529F (offset: ${s})`);break}}catch(g){_("warn",`[Animeko] \u641C\u7D22\u8282\u70B9 [${A.id}] \u8BF7\u6C42\u5931\u8D25: ${g.message}`)}if(!p||!p.data){_("info",`[Animeko] \u641C\u7D22\u8BF7\u6C42\u6240\u6709\u8282\u70B9\u5747\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (offset: ${s})`);break}let m=p.data.data||[];if(m.length===0)break;let h=this.filterSearchResults(m,e);if(h.length>0&&(n=n.concat(h)),h.length<i){_("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){_("warn","[Animeko] \u641C\u7D22\u7FFB\u9875\u8FBE\u5230\u5B89\u5168\u4E0A\u9650(60)\uFF0C\u5F3A\u5236\u505C\u6B62");break}}if(n.length===0)return _("info","[Animeko] \u8FC7\u6EE4\u540E\u65E0\u5339\u914D\u7ED3\u679C"),[];let a=Array.from(new Map(n.map(o=>[o.id,o])).values());return a.length>1&&(a=await this.checkRelationsAndModifyTitles(a)),_("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF0C\u5171\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(a)}catch(r){return _("error","[Animeko] Search error:",{message:r.message,name:r.name,stack:r.stack}),[]}}filterSearchResults(e,r){return e.filter(n=>{let s=[n.name,n.name_cn];return n.infobox&&Array.isArray(n.infobox)&&n.infobox.forEach(i=>{i.key==="\u522B\u540D"&&Array.isArray(i.value)&&i.value.forEach(a=>{a&&a.v&&s.push(a.v)}),i.key==="\u4E2D\u6587\u540D"&&typeof i.value=="string"&&s.push(n.value)}),s.some(i=>i&&yt(i,r))})}hasExplicitSeasonInfo(e){return e?/第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|Season\s*\d+|S\d+|Part\s*\d+|Act\s*\d+|Phase\s*\d+|The\s+Final\s+Season|OVA|OAD|剧场版|åŠ‡å ´ç‰ˆ|Movie|Film|ç»­[篇集]|å¤–ä¼ |SP|(?<!\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&&(_("info",`[Animeko] \u68C0\u6D4B\u5230\u5173\u7CFB: [${o}] -> ${d.relation} -> [${c}]`),["\u7EED\u96C6","\u756A\u5916\u7BC7","\u4E3B\u7EBF\u6545\u4E8B","\u524D\u4F20","\u4E0D\u540C\u6F14\u7ECE","\u884D\u751F"].includes(d.relation))){let p=d.relation;p==="\u7EED\u96C6"&&(p="\u7EED\u7BC7"),a._relation_mark=`(${p})`}}}return e}_extractRelations(e){if(!e||!e.relations)return[];let r=e.relations;if(Array.isArray(r))return r.filter(i=>i.type===2).map(i=>({id:i.id,name:i.name_cn||i.name,relation:i.relation}));let n=[],s=(i,a)=>{Array.isArray(i)&&i.forEach(o=>{o&&n.push({id:o,name:"",relation:a})})};return s(r.sequelSubjects,"\u7EED\u96C6"),s(r.prequelSubjects,"\u524D\u4F20"),s(r.sideStorySubjects,"\u756A\u5916\u7BC7"),s(r.alternativeSettingSubjects,"\u4E0D\u540C\u6F14\u7ECE"),s(r.characterSubjects,"\u884D\u751F"),n}_extractInfoboxValue(e,r){if(!e||!e.fields||!Array.isArray(e.fields))return null;let n=e.fields.find(s=>s.key===r);return n&&n.values&&n.values.length>0&&n.values[0].v||null}_ExtractInfoboxAliases(e){let r=[];return!e||!e.fields||!Array.isArray(e.fields)||e.fields.forEach(n=>{n.key==="\u522B\u540D"&&Array.isArray(n.values)&&n.values.forEach(s=>{s&&s.v&&!r.includes(s.v)&&r.push(s.v)})}),r}transformResults(e){return e.map(r=>{let n="\u52A8\u6F2B";if(r.platform)switch(r.platform){case"TV":case 1:n="TV\u52A8\u753B";break;case"Web":n="Web\u52A8\u753B";break;case"OVA":n="OVA";break;case"Movie":n="\u5267\u573A\u7248";break;default:n=typeof r.platform=="number"?"TV\u52A8\u753B":r.platform}let s=!1,i=!1;r.tags&&Array.isArray(r.tags)&&r.tags.forEach(u=>{let l=u.name||u;l==="3D"&&(s=!0),l==="2D"&&(i=!0)}),s?n="3D"+n:i&&(n="2D"+n);let a=r._relation_mark?` ${r._relation_mark}`:"",o=Array.isArray(r.aliases)?[...r.aliases]:[];r.infobox&&(Array.isArray(r.infobox)?r.infobox.forEach(u=>{u.key==="\u522B\u540D"&&Array.isArray(u.value)&&u.value.forEach(l=>{l&&l.v&&!o.includes(l.v)&&o.push(l.v)})}):r.infobox.fields&&this._ExtractInfoboxAliases(r.infobox).forEach(l=>{o.includes(l)||o.push(l)})),r.name_cn&&r.name_cn!==r.name&&o.push(r.name_cn),r.nameCn&&r.nameCn!==r.name&&(o.includes(r.nameCn)||o.push(r.nameCn));let c=r.airDate||r.date||"";return{id:r.id,name:r.name,name_cn:(r.name_cn||r.nameCn||r.name)+a,aliases:o,images:r.images,air_date:c,score:r.score?parseFloat(r.score):0,typeDescription:n}})}async getEpisodes(e){try{let r=await this._fetchAnimekoSubject(e);return!r||!r.episodes||!Array.isArray(r.episodes)?(r&&_("info",`[Animeko] Subject ${e} \u65E0\u5267\u96C6\u6570\u636E`),[]):r.episodes.map(n=>({id:n.episodeId,sort:parseInt(n.sort)||0,ep:n.ep,type:n.type==="MAIN"?0:n.type==="SP"?1:n.type,name:n.name||"",name_cn:n.nameCn||"",airdate:n.airdate||""}))}catch(r){return _("error","[Animeko] GetEpisodes error:",{message:r.message,id:e}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return e&&_("error","[Animeko] sourceAnimes is not a valid array"),[];let o=e,c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=d.name_cn||d.name,p=Ct(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("info",`[Animeko] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.id),f=[],p=l.air_date||"";if(Array.isArray(d)){d.sort((m,h)=>(m.sort||0)-(h.sort||0));for(let m of d){if(m.type!==0)continue;!p&&m.airdate&&(p=m.airdate);let h=m.sort||m.ep,A=m.name_cn||m.name||"",g=`\u7B2C${h}\u8BDD ${A}`.trim();f.push({name:`${h}`,url:m.id.toString(),title:`\u3010animeko\u3011 ${g}`})}}if(f.length>0){let m=p?new Date(p).getFullYear():"",h={animeId:l.id,bangumiId:String(l.id),animeTitle:`${l.name_cn||l.name}(${m})\u3010${l.typeDescription||"\u52A8\u6F2B"}\u3011from animeko`,aliases:l.aliases||[],type:"\u52A8\u6F2B",typeDescription:l.typeDescription||"\u52A8\u6F2B",imageUrl:l.images?l.images.common||l.images.large:"",startDate:p,episodeCount:f.length,rating:l.score||0,isFavorited:!0,source:"animeko"};a.push(h),Dt({...h,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Animeko] Error processing anime ${l.id}: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){let r=String(e).trim();if(r.includes("/")){let a=r.split("/");r=a[a.length-1]}if(r.includes("?")&&(r=r.split("?")[0]),!r)return _("error","[Animeko] \u65E0\u6548\u7684 episodeId"),[];let n=this._getDanmuServerPriority(),s=Rc.danmu,i=n.indexOf(s);(!s||i===-1)&&(i=0,s=n[0],Rc.danmu=s);for(let a=0;a<n.length;a++){let o=(i+a)%n.length,c=n[o],u=`${c}/v1/danmaku/${r}`;_("info",`[Animeko] \u5C1D\u8BD5\u4F7F\u7528 ${c} \u8282\u70B9\u83B7\u53D6\u5F39\u5E55`);try{let l=await ge(u,{headers:this.headers,timeout:3e3});if(l&&l.data){let d=l.data.danmakuList;if(d&&Array.isArray(d))return Rc.danmu!==c&&(_("info",`[Animeko] \u5F39\u5E55\u57DF\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${Rc.danmu} -> ${c}`),Rc.danmu=c),_("info",`[Animeko] \u6210\u529F\u83B7\u53D6\u5F39\u5E55\uFF0C\u5171 ${d.length} \u6761 (${c}\u8282\u70B9)`),d}_("info",`[Animeko] ${c} \u8282\u70B9\u83B7\u53D6\u5931\u8D25/\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(l){_("warn",`[Animeko] \u8BF7\u6C42\u8282\u70B9\u5931\u8D25: ${c} - ${l.message}`)}}return _("info","[Animeko] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u9996\u9009\u8282\u70B9"),Rc.danmu=n[0],[]}async getEpisodeDanmuSegments(e){return new St({type:"animeko",segmentList:[{type:"animeko",segment_start:0,segment_end:3e4,url:String(e)}]})}async getEpisodeSegmentDanmu(e){let r=(e.url||"").trim();return r?this.getEpisodeDanmu(r):[]}formatComments(e){if(!Array.isArray(e))return[];let r={NORMAL:1,TOP:5,BOTTOM:4};return e.filter(n=>n&&n.danmakuInfo).map(n=>{let s=n.danmakuInfo,i=(Number(s.playTime)/1e3).toFixed(2),a=r[s.location]||1,o=s.color===-1?16777215:s.color,c=O.danmuSimplifiedTraditional==="simplified"?Qt(s.text):s.text;return{cid:n.id,p:`${i},${a},${o},[animeko]`,m:c}})}};Ot();_t();ir();hn();hs();var cw=class extends Tt{async search(e){}async getEpisodes(e){}async handleAnimes(e,r,n,s=null){}async getEpisodeDanmu(e){try{let r=await ge(`${O.otherServer}/?url=${e}&ac=dm`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return _("info",`[Other] danmu response from ${O.otherServer}: \u2193\u2193\u2193`),ts(r.data),r.data}catch(r){return _("error",`[Other] \u8BF7\u6C42 ${O.otherServer} \u5931\u8D25:`,r),[]}}async getEpisodeDanmuSegments(e){return _("info","[Other] \u83B7\u53D6\u7B2C\u4E09\u65B9\u670D\u52A1\u5668\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"other_server",segmentList:[{type:"other_server",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e}};hs();var bst=new jT,Est=new HT,uw=new zT,lw=new YT,dw=new Tg,fw=new JT,h4=new XT,V0=new wg,z0=new Pg,Y0=new Rg,kg=new Ng,Tu=new Og,J0=new fst,Dg=new rw,Bg=new nw,Lg=new mst,Mg=new hst,Wg=new iw,pw=new ow,Bie=new cw,Lie=new GT(V0,Y0,z0,Tu,J0),_st=new QT(Lie),u4=new Map;function yst(t){let e=Number(t||0);return!Number.isFinite(e)||e<=0?0:e>6*60*60?e/1e3:e}function Sst(t,e=!1){return e?String(t||O.danmuOutputFormat||"json").toLowerCase()==="json":!1}function l4(t,e=null){return e===null?t:{videoDuration:e,...t}}function Dmr(t){let e=yst(t?.duration||t?.videoDuration||0);if(e>0)return e;let r=Array.isArray(t?.segmentList)?t.segmentList:[];if(!r.length)return 0;let n=0;return r.forEach(s=>{let i=yst(s?.segment_end||0);i<=0||i>n&&(n=i)}),n>0?n:0}async function Mie(t){if(!/^https?:\/\//i.test(t))return 0;try{let e=t,r=null;return e.includes(".qq.com")?r=await be.run("tencent",()=>V0.getComments(e,"qq",!0)):e.includes(".iqiyi.com")?r=await be.run("iqiyi",()=>Y0.getComments(e,"qiyi",!0)):e.includes(".mgtv.com")?r=await be.run("mango",()=>kg.getComments(e,"imgo",!0)):e.includes(".bilibili.com")||e.includes("b23.tv")?(e.includes("b23.tv")&&(e=await be.run("bilibili",()=>Tu.resolveB23Link(e))),r=await be.run("bilibili",()=>Tu.getComments(e,"bilibili1",!0))):e.includes(".youku.com")?r=await be.run("youku",()=>z0.getComments(e,"youku",!0)):e.includes(".miguvideo.com")?r=await be.run("migu",()=>J0.getComments(e,"migu",!0)):e.includes(".sohu.com")?r=await be.run("sohu",()=>Dg.getComments(e,"sohu",!0)):e.includes(".le.com")?r=await be.run("leshi",()=>Bg.getComments(e,"leshi",!0)):e.includes(".douyin.com")||e.includes(".ixigua.com")?r=await be.run("xigua",()=>Lg.getComments(e,"xigua",!0)):e.includes(".mddcloud.com.cn")?r=await be.run("maiduidui",()=>Mg.getComments(e,"maiduidui",!0)):e.includes(".yfsp.tv")&&(r=await be.run("aiyifan",()=>Wg.getComments(e,"aiyifan",!0))),Dmr(r)}catch(e){return _("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function Bmr(t){return String(t||"").split(Cu).map(e=>{let r=e.indexOf(":");return r===-1?e.trim():e.slice(r+1).trim()}).filter(Boolean)}async function d4(t){if(!t)return 0;try{let e=t.includes(Cu)?Bmr(t):[t];return(await Promise.all(e.map(Mie))).reduce((n,s)=>Math.max(n,s||0),0)}catch(e){return _("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function f4(t,e){if(!e)return!0;let r=W0(t.animeTitle);return r?r===e:!0}function Lmr(t,e,r){let n=t.animeTitle.match(/^(.*?)\(\d{4}\)/),s=n?n[1].trim():t.animeTitle.split("(")[0].trim(),i=Fr(s),a=Fr(e);if(i.includes(a)){if(i.startsWith(a)){let o=i.substring(a.length).trim();if(o===""&&r===1)return!0;let c=o.match(/\d+/);if(c&&c[0]===r.toString())return!0;let u=o.match(/[一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+/);if(u&&tg(u[0])===r)return!0}return!1}else return!1}function Die(t,e,r,n,s){if(r===null||e===null)return!0;let i=[];s&&(i=s.split("&").map(o=>o.trim().toLowerCase()).filter(o=>o)),i.length===0&&(i=["_any_"]);let a=!0;for(let o of i){let c=!1,u=new Map,l=!1;for(let d of t){let f=p4(d.animeTitle)||d.source;if(o!=="_any_"&&jf(f,o)===0)continue;l=!0;let p=Fg(d,n);if(p?.success&&p.bangumi?.episodes){let m=p.bangumi.episodes.filter(y=>!O.episodeTitleFilter.test(y.episodeTitle)),h=$g(m);if(h.some(y=>uf(y.episodeTitle)===r)){c=!0;break}let A=[d.animeTitle];d.aliases&&Array.isArray(d.aliases)&&A.push(...d.aliases);let g=null;for(let y of A){if(!y)continue;let x=Ct(y).season;if(x!==null){g=x;break}}g===null&&(g=1);let b=u.get(g)||0;h.length>b&&u.set(g,h.length)}}if(l&&!c){let d=0;for(let f of u.values())d+=f;if(d<r){a=!1;break}}}return a}async function xst(t,e,r,n,s,i=null,a=null){let{vod:o,360:c,tmdb:u,douban:l,renren:d,hanjutv:f,bahamut:p,dandan:m,custom:h,tencent:A,youku:g,iqiyi:b,imgo:y,bilibili:x,migu:v,sohu:I,leshi:R,xigua:w,maiduidui:N,aiyifan:P,animeko:B}=t,M=O.sourceOrderArr.filter(W=>t[W]!==void 0),D=[];for(let W of M){let F=[],K=new Map;if(W==="360")D.push({key:W,animes:F,detailStore:K,promise:be.run(In(W),()=>bst.handleAnimes(c,e,F,K,s))});else if(W==="vod"){if(o&&Array.isArray(o)){let j=be.run(W,()=>(async()=>{for(let J of o)J&&J.list&&J.list.length>0&&await Est.handleAnimes(J.list,e,F,J.serverName,K,s)})());D.push({key:W,animes:F,detailStore:K,promise:j})}}else W==="tmdb"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>_st.handleAnimes(u,e,F,K,s))}):W==="douban"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Lie.handleAnimes(l,e,F,K,s))}):W==="renren"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>uw.handleAnimes(d,e,F,K,s))}):W==="hanjutv"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>lw.handleAnimes(f,e,F,K,s))}):W==="bahamut"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>dw.handleAnimes(p,e,F,K,s))}):W==="dandan"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>fw.handleAnimes(m,e,F,K,s))}):W==="custom"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>h4.handleAnimes(h,e,F))}):W==="tencent"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>V0.handleAnimes(A,e,F,K,s))}):W==="youku"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>z0.handleAnimes(g,e,F,K,s))}):W==="iqiyi"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Y0.handleAnimes(b,e,F,K,s))}):W==="imgo"?D.push({key:W,animes:F,detailStore:K,promise:be.run(In(W),()=>kg.handleAnimes(y,e,F,K,s))}):W==="bilibili"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Tu.handleAnimes(x,e,F,K,s))}):W==="migu"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>J0.handleAnimes(v,e,F,K,s))}):W==="sohu"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Dg.handleAnimes(I,e,F,K,s))}):W==="leshi"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Bg.handleAnimes(R,e,F,K,s))}):W==="xigua"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Lg.handleAnimes(w,e,F,K,s))}):W==="maiduidui"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Mg.handleAnimes(N,e,F,K,s))}):W==="aiyifan"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Wg.handleAnimes(P,e,F,K,s))}):W==="animeko"&&D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>pw.handleAnimes(B,e,F,K,s))})}let L=await Promise.allSettled(D.map(W=>W.promise)),Z=new Set(r.map(W=>W.animeId));for(let W=0;W<D.length;W++){if(L[W].status==="rejected"){_("error",`[system] [executeSourceHandlers] \u6E90 ${D[W].key} \u5904\u7406\u5931\u8D25: ${L[W].reason}`);continue}let{animes:F,detailStore:K}=D[W];for(let j of F)Z.has(j.animeId)||(r.push(j),Z.add(j.animeId));for(let[j,J]of K)n.has(j)||n.set(j,J)}}async function nE(t,e=null,r=null,n=null,s=null){let i=t.searchParams.get("keyword"),a=t.searchParams.get("season");a=a?parseInt(a,10):null;let o=t.searchParams.get("episode");if(o=o?parseInt(o,10):null,_("info",`[system] [searchAnime] Search anime with keyword: ${i}, target season: ${a}, target episode: ${o}`),i==="")return Le({errorCode:0,success:!0,errorMessage:"",animes:[]});if(O.animeTitleSimplified){let A=Qt(i);_("info",`[system] [searchAnime] searchAnime converted traditional to simplified: ${i} -> ${A}`),i=A}let c=n instanceof Map?n:new Map,u=a!==null?`${i}_S${a}`:i,l=OI(u,c);if(l===null&&a!==null){let A=OI(i,c);A!==null&&(_("info",`[system] [searchAnime] Cache miss for ${u}, fallback to generic cache for ${i}`),l=A)}if(l!==null){let A=Die(l,a,o,c,s);if(A)return Le({errorCode:0,success:!0,errorMessage:"",animes:l});{let g=a+1,b=[...l],y=!1;for(;!A&&!y;){let x=`${i}_S${g}`,v=OI(x,c);v!==null&&v.length>0?(b.push(...v),A=Die(b,a,o,c,s),g++):y=!0}if(A)return _("info",`[system] [LogVar-API] Episode ${o} satisfied by combining cached seasons S${a} to S${g-1}`),Le({errorCode:0,success:!0,errorMessage:"",animes:b});_("info",`[system] [LogVar-API] Episode ${o} not satisfied in cache. Proceeding to network search.`)}}let d=[];if(/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}(:\d+)?(\/[^\s]*)?$/.test(i)){let A=F0.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u89E3\u6790",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),g="unknown";i.includes(".qq.com")?g="qq":i.includes(".iqiyi.com")?g="qiyi":i.includes(".mgtv.com")?g="imgo":i.includes(".youku.com")?g="youku":i.includes(".bilibili.com")?g="bilibili1":i.includes(".miguvideo.com")?g="migu":i.includes(".sohu.com")?g="sohu":i.includes(".le.com")?g="leshi":i.includes(".douyin.com")||i.includes(".ixigua.com")?g="xigua":i.includes(".mddcloud.com.cn")?g="maiduidui":i.includes(".yfsp.tv")&&(g="aiyifan");let b=await be.run(In(g),()=>E8e(i)),y=[{name:"\u624B\u52A8\u89E3\u6790\u94FE\u63A5\u5F39\u5E55",url:i,title:`\u3010${g}\u3011 ${b}`}];d.push(A),Dt(F0.fromJson({...A,links:y}),c),O.animes.length>O.MAX_ANIMES&&$t(),O.localCacheValid&&d.length!==0&&await QB(),O.redisValid&&d.length!==0&&await PB(),O.localRedisValid&&d.length!==0&&await zL();let x=d.map(({links:v,...I})=>I);return Le({errorCode:0,success:!0,errorMessage:"",animes:x})}try{_("info",`[system] [LogVar-API] Search sourceOrderArr: ${O.sourceOrderArr}`);let A={},g={};for(let I of O.sourceOrderArr)I==="360"?g[I]=be.run(In(I),()=>bst.search(i)):I==="vod"?g[I]=be.run(In(I),()=>Est.search(i,e,r)):I==="tmdb"?g[I]=be.run(In(I),()=>_st.search(i)):I==="douban"?g[I]=be.run(In(I),()=>Lie.search(i)):I==="renren"?g[I]=be.run(In(I),()=>uw.search(i)):I==="hanjutv"?g[I]=be.run(In(I),()=>lw.search(i)):I==="bahamut"?g[I]=be.run(In(I),()=>dw.search(i)):I==="dandan"?g[I]=be.run(In(I),()=>fw.search(i)):I==="custom"?g[I]=be.run(In(I),()=>h4.search(i)):I==="tencent"?g[I]=be.run(In(I),()=>V0.search(i)):I==="youku"?g[I]=be.run(In(I),()=>z0.search(i)):I==="iqiyi"?g[I]=be.run(In(I),()=>Y0.search(i)):I==="imgo"?g[I]=be.run(In(I),()=>kg.search(i)):I==="bilibili"?g[I]=be.run(In(I),()=>Tu.search(i)):I==="migu"?g[I]=be.run(In(I),()=>J0.search(i)):I==="sohu"?g[I]=be.run(In(I),()=>Dg.search(i)):I==="leshi"?g[I]=be.run(In(I),()=>Bg.search(i)):I==="xigua"?g[I]=be.run(In(I),()=>Lg.search(i)):I==="maiduidui"?g[I]=be.run(In(I),()=>Mg.search(i)):I==="aiyifan"?g[I]=be.run(In(I),()=>Wg.search(i)):I==="animeko"&&(g[I]=be.run(In(I),()=>pw.search(i)));let b=O.sourceOrderArr.map(I=>{let R=[],w=new Map,N=g[I].then(async P=>{A[I]=P,await xst({[I]:P},i,R,w,a,e,r)});return{key:I,animes:R,detailStore:w,promise:N}}),y=await Promise.allSettled(b.map(I=>I.promise)),x=new Set(d.map(I=>I.animeId));for(let I=0;I<b.length;I++){if(y[I].status==="rejected"){_("error",`[system] [searchAnime] \u6E90 ${b[I].key} \u7BA1\u9053\u5904\u7406\u5931\u8D25: ${y[I].reason}`);continue}let{animes:R,detailStore:w}=b[I];for(let N of R)x.has(N.animeId)||(d.push(N),x.add(N.animeId));for(let[N,P]of w)c.has(N)||c.set(N,P)}if(d.length>0&&PI(u,d.map(({links:I,...R})=>R),c),!Die(d,a,o,c,s)&&a!==null){let I=a;for(let R of O.sourceOrderArr){let w=A[R];if(Array.isArray(w))for(let N of w){let P=N&&Array.isArray(N.list)?N.list:[N];for(let B of P){if(!B)continue;let M=Ct(B.animeTitle||B.title||"").season;M!==null&&M>I&&(I=M)}}}if(I>a){_("info",`[system] [LogVar-API] Episode ${o} not satisfied in Season ${a}. Parallel mapping to S${a+1}~S${I}...`);let R=[];for(let N=a+1;N<=I;N++)R.push((async()=>{let P=[];return await xst(A,i,P,c,N,e,r),P.length>0&&PI(`${i}_S${N}`,P.map(({links:B,...M})=>M),c),P})());let w=await Promise.all(R);for(let N of w)d.push(...N)}}}catch(A){_("error","[system] [LogVar-API] \u53D1\u751F\u9519\u8BEF:",A)}let p=O.mergeSourcePairs&&O.mergeSourcePairs.length>0,m=O.customMergeRules&&O.customMergeRules.length>0;if((p||m)&&await Ont(d,c),nz(d,i),O.enableAnimeEpisodeFilter){let A=[];for(let g of d){let b=g.animeTitle||"";if(O.animeTitleFilter&&O.animeTitleFilter.test(b)){_("info",`[searchAnime] Anime ${g.animeId} filtered by name: ${b}`);continue}let y=ig(g?.bangumiId,c,g?.source)||ig(g?.animeId,c,g?.source)||sg(g?.bangumiId,c,g?.source)||sg(g?.animeId,c,g?.source);if(y&&y.links){let x=y.links.map((v,I)=>({episodeId:v.id,episodeTitle:v.title,episodeNumber:I+1}));x=x.filter(v=>!O.episodeTitleFilter.test(v.episodeTitle)),_("info",`[searchAnime] Anime ${g.animeId} filtered episodes: ${x.length}/${y.links.length}`),x.length>0&&A.push(g)}}d.length=0,d.push(...A)}O.localCacheValid&&d.length!==0&&await QB(),O.redisValid&&d.length!==0&&await PB(),O.localRedisValid&&d.length!==0&&await zL();let h=d.map(({links:A,...g})=>g);if(h.length>0){let A=a!==null?`${i}_S${a}`:i;PI(A,h,c)}return Le({errorCode:0,success:!0,errorMessage:"",animes:h})}function $g(t){return t.filter((r,n,s)=>!s.slice(0,n).some(i=>i.episodeTitle===r.episodeTitle))}function jf(t,e){if(!t||!e)return 0;let r=t.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),n=e.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),s=0;for(let i of n)r.some(o=>o===i||o.includes(i)&&i.length>2||i.includes(o)&&o.length>2)&&s++;return s===0?0:s*1e3-r.length}function p4(t){let e=t.match(/from\s+([a-zA-Z0-9&]+)/i);return e?e[1]:null}function m4(t,e,r,n=null){if(!t||t.length===0)return null;let s=t;if(n&&(s=t.filter(i=>{let a=rg(i.episodeTitle);return jf(a,n)>0})),s.length===0)return null;for(let i of s){let a=uf(i.episodeTitle);if(e===r&&a===r)return _("info",`Found episode by title number: ${i.episodeTitle} (extracted: ${a})`),i}if(s.length>=r){let i=s[r-1];return _("info",`Using fallback array index for episode ${r}: ${i.episodeTitle}`),i}for(let i of s)if(i.episodeNumber&&parseInt(i.episodeNumber,10)===r)return _("info",`Found episode by episodeNumber: ${i.episodeTitle} (episodeNumber: ${i.episodeNumber})`),i;return null}async function Mmr(t,e,r,n,s,i,a,o,c=null){let u=O.aiBaseUrl,l=O.aiModel,d=O.aiApiKey,f=O.aiMatchPrompt;if(!O.aiValid||!f)return _("warn","AI configuration is incomplete, falling back to normal matching"),{resEpisode:null,resAnime:null};let p=new df({apiKey:d,baseURL:u,model:l,systemPrompt:f}),m={title:s,season:t,episode:e,year:r,dynamicPlatformOrder:a,preferAnimeId:o,animes:n.animes.map(h=>{let A=h.animeTitle||"",g=A.match(/^(.*?)\(\d{4}\)/),b=g?g[1].trim():A.split("(")[0].trim();return{animeId:h.animeId,animeTitle:b,aliases:h.aliases||[],type:h.type,year:h.startDate?h.startDate.slice(0,4):null,episodeCount:h.episodeCount,source:h.source}})};try{let h=JSON.stringify(m,null,2),A=await p.ask(h);_("info",`AI match response: ${A}`);let g;try{let I=A.match(/```json\s*([\s\S]*?)\s*```|```([\s\S]*?)\s*```|({[\s\S]*})/),R=I?I[1]||I[2]||I[3]:A;g=JSON.parse(R.trim())}catch(I){return _("error",`Failed to parse AI response: ${I.message}`),{resEpisode:null,resAnime:null}}let b=g.animeIndex;if(b==null)return{resEpisode:null,resAnime:null};let y=n.animes[b];if(!y)return _("error",`AI returned invalid anime index: ${b}`),{resEpisode:null,resAnime:null};let x=Fg(y,c);if(!x?.success||!x?.bangumi?.episodes)return{resEpisode:null,resAnime:null};let v=null;if(t&&e){let I=x.bangumi.episodes.filter(w=>!O.episodeTitleFilter.test(w.episodeTitle)),R=$g(I);_("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",R.map(w=>w.episodeTitle)),v=m4(R,e,e)}else x.bangumi.episodes.length>0&&(v=x.bangumi.episodes[0]);return{resEpisode:v,resAnime:y}}catch(h){return _("error",`AI matching failed: ${h.message}`),{resEpisode:null,resAnime:null}}}function Fg(t,e=null){let r=ig(t?.bangumiId,e,t?.source)||ig(t?.animeId,e,t?.source);return r?$ie(r,t?.bangumiId||t?.animeId||""):(_("warn",`[matchAnime] Missing request detail snapshot for anime ${t?.animeId??t?.bangumiId}`),null)}function vst(t,e,r,n,s){let i=String(e),a=t[i].match(/^([^:]+):(.+)$/),o=Number(a?.[1])||0,c=a?.[2]||"",u=r-o,l=n.findIndex(d=>d.episodeTitle===c);return l!==-1&&(s=l+u+1,_("info",`Applying offset "${t[i]}" for S${e}E${r} -> ${s}`)),s}function Ist(t,e,r,n,s,i,a){if(!n||!s)return{resEpisode:null,resAnime:null};_("info",`[system] [Spillover] \u5F53\u524D\u5B63\u96C6\u5339\u914D\u7B56\u7565\u5931\u8D25 (S${n}E${s})\uFF0C\u6B63\u5728\u8FDB\u884C\u8DE8\u5B63\u96C6\u6570\u6620\u5C04\u5339\u914D...`);let o=Fr(e),c=new Map;for(let f of t.animes){let p=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&p.push(...f.aliases);let m=!1;for(let A of p)if(A&&Fr(A).includes(o)){if(!f4(f,r))continue;m=!0;break}if(!m)continue;let h=null;for(let A of p){if(!A)continue;let g=Ct(A).season;if(g!==null){h=g;break}}if(h===null&&(h=1),!c.has(h)){let A=Fg(f,a);if(A?.success&&A?.bangumi?.episodes){let g=A.bangumi.episodes.filter(y=>!O.episodeTitleFilter.test(y.episodeTitle)),b=$g(g);b.length>0&&c.set(h,{anime:f,episodes:b,actualPlatform:p4(f.animeTitle)||f.source})}}}let u=s,l=n,d={anime:null,episode:null,score:0};for(;c.has(l);){let f=c.get(l),p=f.episodes,m=null;for(let h of p)if(uf(h.episodeTitle)===s){m=h;break}if(m){if(i&&jf(rg(m.episodeTitle),i)===0)break;_("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u7EDD\u5BF9\u6807\u9898\u6570\u5B57) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${m.episodeTitle}`),d={anime:f.anime,episode:m,score:i?jf(f.actualPlatform,i):1};break}if(u<=p.length){let h=p[u-1];if(i&&jf(rg(h.episodeTitle),i)===0)break;_("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u76F8\u5BF9\u6392\u4F4D\u8BA1\u7B97) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${h.episodeTitle}`),d={anime:f.anime,episode:h,score:i?jf(f.actualPlatform,i):1};break}_("info",`[system] [Spillover] S${l} \u5171\u6709 ${p.length} \u96C6(\u5DF2\u8FC7\u6EE4\u756A\u5916)\uFF0C\u5269\u4F59\u76EE\u6807\u96C6\u6570\u4E3A ${u}\uFF0C\u6620\u5C04\u81F3 S${l+1} \u7EE7\u7EED\u67E5\u627E`),u-=p.length,l++}return{resEpisode:d.episode,resAnime:d.anime}}async function Wmr(t,e,r,n,s,i,a,o,c,u=null){let l={anime:null,episode:null,score:-9999},d=Fr(s);for(let f of n.animes){if(O.rememberLastSelect&&o&&String(f.bangumiId)!==String(o)&&String(f.animeId)!==String(o))continue;let m=!1,h=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&h.push(...f.aliases);for(let y of h)if(y){if(t&&e){if(Fr(y).includes(d)){if(!f4(f,r)){_("info",`Year mismatch: anime year ${W0(f.animeTitle)} vs query year ${r}`);continue}let x=O.rememberLastSelect&&o&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o)),v={...f,animeTitle:y};if(Lmr(v,s,t)||x){m=!0;break}}}else if(y.split("(")[0].trim()===s){if(!f4(f,r)){_("info",`Year mismatch: anime year ${W0(f.animeTitle)} vs query year ${r}`);continue}m=!0;break}}if(!m)continue;let A=Fg(f,u);if(!A?.success||!A?.bangumi?.episodes)continue;_("info","\u5224\u65AD\u5267\u96C6",`Anime: ${f.animeTitle}`),_("info",A);let g=null,b=O.rememberLastSelect&&o!=null&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o));if(t&&e){let y=A.bangumi.episodes.filter(I=>!O.episodeTitleFilter.test(I.episodeTitle)),x=$g(y);_("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",x.map(I=>I.episodeTitle));let v=e;c&&c[String(t)]!==void 0&&(v=vst(c,t,e,x,v)),g=m4(x,e,v,a),!g&&b&&(_("info",`[system] [Match] \u4F18\u9009\u5267\u96C6\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u96C6\u6570`),g=m4(x,e,v,null))}else if(A.bangumi.episodes.length>0)if(a){let y=A.bangumi.episodes.find(x=>{let v=rg(x.episodeTitle);return jf(v,a)>0});y?g=y:b&&(_("info",`[system] [Match] \u4F18\u9009\u7535\u5F71\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u8D44\u6E90`),g=A.bangumi.episodes[0])}else g=A.bangumi.episodes[0];if(g){let y=p4(f.animeTitle)||f.source,x=0;if(a?x=jf(y,a):x=1,b&&(x+=9999),x>l.score&&(l={anime:f,episode:g,score:x}),!a||b)break}}if(!l.episode&&t&&e){let f=Ist(n,s,r,t,e,a,u);f.resEpisode&&(l={episode:f.resEpisode,anime:f.resAnime,score:a?jf(p4(f.resAnime.animeTitle)||f.resAnime.source,a):1})}return{resEpisode:l.episode,resAnime:l.anime}}async function $mr(t,e,r,n,s,i,a,o,c,u=null){for(let d of t.animes){if(s&&!f4(d,s)){_("info",`Fallback: Year mismatch: anime year ${W0(d.animeTitle)} vs query year ${s}`);continue}let f=Fg(d,u);if(!(!f?.success||!f?.bangumi?.episodes)){if(_("info",f),r&&n){let p=f.bangumi.episodes.filter(g=>!O.episodeTitleFilter.test(g.episodeTitle)),m=$g(p);_("info","[system] [LogVar-API] \u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",m.map(g=>g.episodeTitle));let h=n;c&&c[String(r)]!==void 0&&(h=vst(c,r,n,m,h));let A=m4(m,n,h,null);if(A){a=A,o=d;break}}else if(f.bangumi.episodes.length>0){a=f.bangumi.episodes[0],o=d;break}}}let l=!1;if(!a&&r&&n){let d=Ist(t,i,s,r,n,null,u);d.resEpisode&&(a=d.resEpisode,o=d.resAnime,l=!0)}return{resEpisode:a,resAnime:o,isSpillover:l}}async function Fmr(t){let e=/^(.+?)[.\s]+S(\d+)E(\d+)/i,r=t.match(e),n,s,i,a;if(r){n=r[1].trim(),s=parseInt(r[2],10),i=parseInt(r[3],10);let o=t.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);o&&(a=parseInt(o[1],10));let c=n.match(/^[\u4e00-\u9fa5·]+[^.\r\n]*/);if(c)n=c[0];else if(/^[A-Za-z0-9]/.test(n)){let u=n.match(/^([A-Za-z0-9.&\s]+?)(?=\.\d{4}|$)/);u&&(n=u[1].trim().replace(/[._]/g," "))}else{let u=n.split(/\.(?:19|20)\d{2}|2160p|1080p|720p|H265|iPhone/)[0],l=u.match(/^[\u4e00-\u9fa5·]+/);n=l?l[0]:u.trim()}n=n.replace(/\.\d{4}$/i,"").trim()}else{let o=/^([^.\s]+(?:[.\s][^.\s]+)*?)(?:[.\s](?:\d{4}|(?:19|20)\d{2}|\d{3,4}p|S\d+|E\d+|WEB|BluRay|Blu-ray|HDTV|DVDRip|BDRip|x264|x265|H\.?264|H\.?265|AAC|AC3|DDP|TrueHD|DTS|10bit|HDR|60FPS))/i,c=t.match(o);n=c?c[1].replace(/[._]/g," ").trim():t,s=null,i=null;let u=t.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);u&&(a=parseInt(u[1],10))}return O.titleToChinese&&(n=await hnt(n.replace("."," "),s,i)),_("info","[system] [Match] Parsed title, season, episode, year",{title:n,season:s,episode:i,year:a}),{title:n,season:s,episode:i,year:a}}function Cst(t,e,r,n){let s=new URL(t),i=s.pathname.replace(/\/(?:match|search\/episodes)$/,"");return s.pathname=`${i}/search/anime`,s.search="",s.searchParams.set("keyword",e||""),r!==void 0&&s.searchParams.set("season",r||""),n!==void 0&&s.searchParams.set("episode",n||""),s}async function Tst(t,e,r){try{let n=await e.json();if(!n)return _("error","[system] [Match] Request body is empty"),Le({errorCode:400,success:!1,errorMessage:"Empty request body"},400);let{fileName:s}=n;if(!s)return _("error","[system] [Match] Missing fileName parameter in request body"),Le({errorCode:400,success:!1,errorMessage:"Missing fileName parameter"},400);let{cleanFileName:i,preferredPlatform:a}=k8e(s);_("info",`[system] [Match] Processing anime match for query: ${s}`),_("info",`[system] [Match] Parsed cleanFileName: ${i}, preferredPlatform: ${a}`);let{title:o,season:c,episode:u,year:l}=await Fmr(i);if(O.titleMappingTable&&O.titleMappingTable.size>0){let N=O.titleMappingTable.get(o);N&&(o=N,_("info",`[system] [Match] Title mapped from original: ${t.searchParams.get("keyword")} to: ${o}`))}if(O.animeTitleSimplified){let N=Qt(o);_("info",`[system] [Match] matchAnime converted traditional to simplified: ${o} -> ${N}`),o=N}let[d,f,p]=iz(o,c);_("info",`[system] [Match] prefer animeId: ${d} from ${f}`);let m=D8e(a),h=m.length>0?m[0]:null,A=new Map,g=Cst(e.url,o,c,u),y=await(await nE(g,d,f,A,h)).json();_("info",`[system] [Match] searchData: ${y.animes}`);let x,v,I=!1,R={errorCode:0,success:!0,errorMessage:"",isMatched:!1,matches:[]};_("info",`[system] [Match] Original platformOrderArr: ${O.platformOrderArr}`),_("info",`[system] [Match] Dynamic platformOrder: ${m}`),_("info",`[system] [Match] Preferred platform: ${a||"none"}`);let w=await Mmr(c,u,l,y,o,e,m,d,A);if(w.resAnime&&w.resEpisode)x=w.resAnime,v=w.resEpisode,R.isMatched=!0,_("info",`[system] [Match] AI match found: ${x.animeTitle}; episode: ${v.episodeTitle}`);else{for(let N of m){let P=await Wmr(c,u,l,y,o,e,N,d,p,A);if(v=P.resEpisode,x=P.resAnime,x){R.isMatched=!0,_("info",`[system] [Match] Found match with platform: ${N||"default"}`);break}}if(!x){let N=await $mr(y,e,c,u,l,o,v,x,p,A);v=N.resEpisode,x=N.resAnime,I=N.isSpillover}}return v&&(R.isMatched=!0,r&&!I&&ZV(r,{title:o,season:c,episode:u,episodeId:v.episodeId}),R.matches=[BB.fromJson({episodeId:v.episodeId,animeId:x.animeId,animeTitle:x.animeTitle,episodeTitle:v.episodeTitle,type:x.type,typeDescription:x.typeDescription,shift:0,imageUrl:x.imageUrl})]),_("info",`[system] [Match] resMatchData: ${R}`),Le(R)}catch(n){return _("error",`[system] [Match] Failed to parse request body: ${n.message}`),Le({errorCode:400,success:!1,errorMessage:"Invalid JSON body"},400)}}async function wst(t){let e=t.searchParams.get("anime"),r=t.searchParams.get("episode")||"";if(O.animeTitleSimplified){let c=Qt(e);_("info",`[system] [Episodes] searchEpisodes converted traditional to simplified: ${e} -> ${c}`),e=c}if(_("info",`[system] [Episodes] Search episodes with anime: ${e}, episode: ${r}`),!e)return _("error","[system] [Episodes] Missing anime parameter"),Le({errorCode:400,success:!1,errorMessage:"Missing anime parameter"},400);let n=Cst(t,e),s=new Map,a=await(await nE(n,null,null,s)).json();if(!a.success||!a.animes||a.animes.length===0)return _("info","[system] [Episodes] No anime found for the given title"),Le({errorCode:0,success:!0,errorMessage:"",hasMore:!1,animes:[]});let o=[];for(let c of a.animes){let u=sg(c.bangumiId,s,c.source)||sg(c.animeId,s,c.source),l=null;if(u)l=$ie(u,c.bangumiId);else{let d=new URL(`/bangumi/${c.bangumiId}`,t.origin);l=await(await Wie(d.pathname)).json()}if(l.success&&l.bangumi&&l.bangumi.episodes){let d=l.bangumi.episodes;if(r){if(r==="movie")d=l.bangumi.episodes.filter(f=>c.typeDescription&&(c.typeDescription.includes("\u7535\u5F71")||c.typeDescription.includes("\u5267\u573A\u7248")||f.episodeTitle.toLowerCase().includes("movie")||f.episodeTitle.includes("\u5267\u573A\u7248")));else if(/^\d+$/.test(r)){let f=parseInt(r);d=l.bangumi.episodes.filter(p=>parseInt(p.episodeNumber)===f)}}d.length>0&&o.push(MB.fromJson({animeId:c.animeId,animeTitle:c.animeTitle,type:c.type,typeDescription:c.typeDescription,episodes:d.map(f=>({episodeId:f.episodeId,episodeTitle:f.episodeTitle}))}))}}return _("info",`[system] [Episodes] Found ${o.length} animes with filtered episodes`),Le({errorCode:0,success:!0,errorMessage:"",animes:o})}async function Wie(t,e=null,r=null){let n=t.split("/").pop(),s=ig(n,e,r)||sg(n);return s?Le($ie(s,n)):(_("error",`[system] [Bangumi] Anime with ID ${n} not found`),Le({errorCode:404,success:!1,errorMessage:"Anime not found",bangumi:null},404))}function $ie(t,e=""){_("info",`[system] [Bangumi] Fetched details for anime ID: ${e||t.bangumiId}`);let r=[];for(let s=0;s<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)),_("info",`[system] [getBangumi] Episode filter enabled. Filtered episodes: ${r.length}/${t.links.length}`),r.length===0)return _("warn",`[system] [getBangumi] No valid episodes after filtering for anime ID ${e||t.bangumiId}`),{errorCode:404,success:!1,errorMessage:"No valid episodes after filtering",bangumi:null};r=r.map((s,i)=>({...s,episodeNumber:`${i+1}`}))}return{errorCode:0,success:!0,errorMessage:"",bangumi:WB.fromJson({animeId:t.animeId,bangumiId:t.bangumiId,animeTitle:t.animeTitle,imageUrl:t.imageUrl,isOnAir:!0,airDay:1,isFavorited:t.isFavorited,rating:t.rating,type:t.type,typeDescription:t.typeDescription,seasons:[{id:`season-${t.animeId}`,airDate:t.startDate,name:"Season 1",episodeCount:t.episodeCount}],episodes:r})}}async function Umr(t,e,r){let n=t.split(Cu),s=n.map(m=>{let h=m.indexOf(":");if(h===-1)return{realId:"",logicalSource:"",sourceLabel:""};let A=m.substring(0,h),g=m.substring(h+1);return A!=="hanjutv"?{realId:g,logicalSource:A,sourceLabel:A}:{realId:g,logicalSource:"hanjutv",sourceLabel:s4(g)}}),i=s.map(m=>m.logicalSource).filter(Boolean),a=s.map(m=>m.realId),o=s.map(m=>m.sourceLabel).filter(Boolean).join("\uFF06");_("info",`[Merge] \u5F00\u59CB\u83B7\u53D6 [${o}] \u805A\u5408\u5F39\u5E55...`);let c=lf(t);if(c)return _("info",`[Merge] \u547D\u4E2D\u7F13\u5B58 [${o}]\uFF0C\u8FD4\u56DE ${c.length} \u6761`),c;let u={},l=s.map(async m=>{let h=m.logicalSource,A=m.sourceLabel||m.logicalSource,g=m.realId;if(!h||!g)return[];let b=`${h}:${g}`;if(u4.has(b)){_("info",`[Merge] \u590D\u7528\u6B63\u5728\u8FDB\u884C\u7684\u8BF7\u6C42: ${b}`);try{return await u4.get(b)||[]}catch{return[]}}let y=be.run(In(h),async()=>{let x=null;if(h==="renren"?x=uw:h==="hanjutv"?x=lw:h==="bahamut"?x=dw:h==="dandan"?x=fw:h==="tencent"?x=V0:h==="youku"?x=z0:h==="iqiyi"?x=Y0:h==="imgo"?x=kg:h==="bilibili"?x=Tu:h==="migu"?x=J0:h==="sohu"?x=Dg:h==="leshi"?x=Bg:h==="xigua"?x=Lg:h==="maiduidui"?x=Mg:h==="aiyifan"?x=Wg:h==="animeko"&&(x=pw),x)try{let v=await x.getEpisodeDanmu(g,n),I=x.formatComments(v);return _("info",`[${A}] \u83B7\u53D6\u5F39\u5E55 ${I.length} \u6761`),I&&Array.isArray(I)&&I.forEach(R=>{R._sourceLabel||(R._sourceLabel=A)}),u[A]=I.length,I}catch(v){return _("error",`[Merge] \u83B7\u53D6 ${A} \u5931\u8D25: ${v.message}`),u[A]=0,[]}return[]});u4.set(b,y);try{return await y}finally{u4.delete(b)}}),d=await Promise.all(l);if(knt(d,i,a),O.danmuOffsetRules?.length>0&&e&&r){let[,,m]=UB(r);if(m){let{baseTitle:h,season:A,episode:g}=YV(e,m);A||=1,g||=FB(r)+1;let b=`S${A.toString().padStart(2,"0")}`,y=`E${g.toString().padStart(2,"0")}`;for(let x=0;x<d.length;x++){let v=d[x],I=bV(O.danmuOffsetRules,{anime:h,season:b,episode:y,source:i[x]}),R=I?.offset||0;if(R!==0){let w=a[x],N=I?.usePercent?await Mie(w):0,P=I?.usePercent?"%":"s";_("info",`[Merge] \u5E94\u7528\u504F\u79FB ${R}${P} -> ${i[x]} (${h}/${b}/${y})${I?.usePercent?`, duration=${N}s`:""}`),d[x]=EV(v,R,{usePercent:I?.usePercent,videoDuration:N})}}}}let f=[];d.forEach(m=>{f=Pnt(f,m)});let p=Object.entries(u).map(([m,h])=>`${m}: ${h}`).join(", ");return _("info",`[Merge] \u805A\u5408\u539F\u59CB\u6570\u636E\u5B8C\u6210: \u603B\u8BA1 ${f.length} \u6761 (${p})`),BI(f,o)}async function Fie(t,e,r,n,s=!1){let i=parseInt(t.split("/").pop()),a=rz(i),o=DI(i),c=tz(i),u=c?(c.match(/【(.*?)】/)||[null])[0]?.replace(/[【】]/g,""):null,l=Sst(e,s);if(_("info","[system] [LogVar-API] comment url...",o),_("info","[system] [LogVar-API] comment title...",c),_("info","[system] [LogVar-API] comment platform...",u),!o)return _("error",`[system] [LogVar-API] Comment with ID ${i} not found`),Le({count:0,comments:[]},404);_("info",`[system] [LogVar-API] Fetched comment ID: ${i}`);let d=lf(o);if(d!==null){let y=l4({count:d.length,comments:d},l?await d4(o):null);return ag(y,e)}_("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",o);let f=[],p=l?d4(o):null;if(o&&o.includes(Cu))f=await Umr(o,a,i);else{o.includes(".qq.com")?f=await be.run("tencent",()=>V0.getComments(o,u,r)):o.includes(".iqiyi.com")?f=await be.run("iqiyi",()=>Y0.getComments(o,u,r)):o.includes(".mgtv.com")?f=await be.run("mango",()=>kg.getComments(o,u,r)):o.includes(".bilibili.com")||o.includes("b23.tv")?(o.includes("b23.tv")&&(o=await be.run("bilibili",()=>Tu.resolveB23Link(o))),f=await be.run("bilibili",()=>Tu.getComments(o,u,r))):o.includes(".youku.com")?f=await be.run("youku",()=>z0.getComments(o,u,r)):o.includes(".miguvideo.com")?f=await be.run("migu",()=>J0.getComments(o,u,r)):o.includes(".sohu.com")?f=await be.run("sohu",()=>Dg.getComments(o,u,r)):o.includes(".le.com")?f=await be.run("leshi",()=>Bg.getComments(o,u,r)):o.includes(".douyin.com")||o.includes(".ixigua.com")?f=await be.run("xigua",()=>Lg.getComments(o,u,r)):o.includes(".mddcloud.com.cn")?f=await be.run("maiduidui",()=>Mg.getComments(o,u,r)):o.includes(".yfsp.tv")&&(f=await be.run("aiyifan",()=>Wg.getComments(o,u,r)));let y=/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i;y.test(o)||(u==="renren"?f=await be.run("renren",()=>uw.getComments(o,u,r)):u==="hanjutv"?f=await be.run("hanjutv",()=>lw.getComments(o,u,r)):u==="bahamut"?f=await be.run("bahamut",()=>dw.getComments(o,u,r)):u==="dandan"?f=await be.run("dandan",()=>fw.getComments(o,u,r)):u==="custom"?f=await be.run("custom",()=>h4.getComments(o,u,r)):u==="animeko"&&(f=await be.run("animeko",()=>pw.getComments(o,u,r)))),(!f||f.length===0)&&y.test(o)&&(f=await be.run("other",()=>Bie.getComments(o,"other_server",r)))}let[m,h,A,g]=UB(i);if(m&&h){let y=null,x=null,v=null;if(n){let R=ez(n);R&&R.title&&R.season&&R.episode&&A&&(y=R.title,x=R.season,v=`${R.episode}:${A}`,_("info",`[system] [LogVar-API] Calculated episode offset for IP ${n}: Query E${R.episode}, Selected ${A} -> Offset ${v} (Season ${x})`))}_("info",`[system] [LogVar-API] animeTitle\uFF1A${a}; lastTitle\uFF1A${y}; titleMatches\uFF1A${yt(a,y)}`),(yt(a,y)||Array.isArray(g)&&g.some(R=>yt(R,y)))&&(_("info","[system] [LogVar-API] excute setPreferByAnimeId"),sz(m,h,x,v)),O.localCacheValid&&m&&HB("lastSelectMap",JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.redisValid&&m&&jV("lastSelectMap",O.lastSelectMap).catch(R=>_("error","[system] [LogVar-API] Redis set error",R)),O.localRedisValid&&m&&VL("lastSelectMap",O.lastSelectMap)}if(a&&A&&O.danmuOffsetRules?.length>0&&!(o&&o.includes(Cu))){let{baseTitle:y,season:x,episode:v}=YV(a,A);x||=1,v||=FB(i)+1;let I=`S${x.toString().padStart(2,"0")}`,R=`E${v.toString().padStart(2,"0")}`,w=bV(O.danmuOffsetRules,{anime:y,season:I,episode:R,source:h}),N=w?.offset||0;if(N!==0){let P=w?.usePercent?await Mie(o):0;_("info",`[system] [LogVar-API] Applying danmu offset: ${N}${w?.usePercent?"%":"s"} for ${y}/${I}/${R}${w?.usePercent?`, duration=${P}s`:""}`),f=EV(f,N,{usePercent:w?.usePercent,videoDuration:P})}}r||(f&&f.comments&&(f=f.comments),Array.isArray(f)||(f=[]),f.length>0&&kI(o,f));let b=l4({count:f.length,comments:f},p?await p:null);return ag(b,e)}async function Uie(t,e,r,n=!1){try{if(!t||typeof t!="string")return _("error","[system] [LogVar-API] Missing or invalid url parameter"),Le({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);if(t=t.trim(),!t.startsWith("http"))return _("error","[system] [LogVar-API] Invalid url format, must start with http or https"),Le({errorCode:400,success:!1,errorMessage:"Invalid url format, must start with http or https",count:0,comments:[]},400);_("info",`[system] [LogVar-API] Processing comment request for URL: ${t}`);let s=t,i=Sst(e,n),a=lf(s);if(a!==null){let l=l4({errorCode:0,success:!0,errorMessage:"",count:a.length,comments:a},i?await d4(s):null);return ag(l,e)}_("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",s);let o=[],c=i?d4(s):null;s.includes(".qq.com")?o=await be.run("tencent",()=>V0.getComments(s,"qq",r)):s.includes(".iqiyi.com")?o=await be.run("iqiyi",()=>Y0.getComments(s,"qiyi",r)):s.includes(".mgtv.com")?o=await be.run("mango",()=>kg.getComments(s,"imgo",r)):s.includes(".bilibili.com")||s.includes("b23.tv")?(s.includes("b23.tv")&&(s=await be.run("bilibili",()=>Tu.resolveB23Link(s))),o=await be.run("bilibili",()=>Tu.getComments(s,"bilibili1",r))):s.includes(".youku.com")?o=await be.run("youku",()=>z0.getComments(s,"youku",r)):s.includes(".miguvideo.com")?o=await be.run("migu",()=>J0.getComments(s,"migu",r)):s.includes(".sohu.com")?o=await be.run("sohu",()=>Dg.getComments(s,"sohu",r)):s.includes(".le.com")?o=await be.run("leshi",()=>Bg.getComments(s,"leshi",r)):s.includes(".douyin.com")||s.includes(".ixigua.com")?o=await be.run("xigua",()=>Lg.getComments(s,"xigua",r)):s.includes(".mddcloud.com.cn")?o=await be.run("maiduidui",()=>Mg.getComments(s,"maiduidui",r)):s.includes(".yfsp.tv")?o=await be.run("aiyifan",()=>Wg.getComments(s,"aiyifan",r)):/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i.test(s)&&(o=await be.run("other",()=>Bie.getComments(s,"other_server",r))),_("info",`[system] [LogVar-API] Successfully fetched ${o.length} comments from URL`),o.length>0&&kI(s,o);let u=l4({errorCode:0,success:!0,errorMessage:"",count:o.length,comments:o},c?await c:null);return ag(u,e)}catch(s){return _("error",`[system] [LogVar-API] Failed to process comment by URL request: ${s.message}`),Le({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}async function Rst(t,e){try{let r=t.url,n=t.type;if(!r||typeof r!="string")return _("error","[system] [SegmentComment] Missing or invalid url parameter"),Le({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);r=r.trim(),_("info",`[system] [SegmentComment] Processing segment comment request for URL: ${r}`);let s=lf(r);if(s!==null){let o={errorCode:0,success:!0,errorMessage:"",count:s.length,comments:s};return ag(o,e)}_("info",`[system] [SegmentComment] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5206\u6BB5\u5F39\u5E55... URL: ${r}`);let i=[];n==="qq"?i=await be.run("tencent",()=>V0.getSegmentComments(t)):n==="qiyi"?i=await be.run("iqiyi",()=>Y0.getSegmentComments(t)):n==="imgo"?i=await be.run("mango",()=>kg.getSegmentComments(t)):n==="bilibili1"?i=await be.run("bilibili",()=>Tu.getSegmentComments(t)):n==="youku"?i=await be.run("youku",()=>z0.getSegmentComments(t)):n==="migu"?i=await be.run("migu",()=>J0.getSegmentComments(t)):n==="sohu"?i=await be.run("sohu",()=>Dg.getSegmentComments(t)):n==="leshi"?i=await be.run("leshi",()=>Bg.getSegmentComments(t)):n==="xigua"?i=await be.run("xigua",()=>Lg.getSegmentComments(t)):n==="maiduidui"?i=await be.run("maiduidui",()=>Mg.getSegmentComments(t)):n==="aiyifan"?i=await be.run("aiyifan",()=>Wg.getSegmentComments(t)):n==="hanjutv"?i=await be.run("hanjutv",()=>lw.getSegmentComments(t)):n==="bahamut"?i=await be.run("bahamut",()=>dw.getSegmentComments(t)):n==="renren"?i=await be.run("renren",()=>uw.getSegmentComments(t)):n==="dandan"?i=await be.run("dandan",()=>fw.getSegmentComments(t)):n==="animeko"?i=await be.run("animeko",()=>pw.getSegmentComments(t)):n==="custom"?i=await be.run("custom",()=>h4.getSegmentComments(t)):n==="other_server"&&(i=await be.run("other",()=>Bie.getSegmentComments(t))),_("info",`[system] [SegmentComment] Successfully fetched ${i.length} segment comments from URL`),i.length>0&&kI(r,i);let a={errorCode:0,success:!0,errorMessage:"",count:i.length,comments:i};return ag(a,e)}catch(r){return _("error",`[system] [SegmentComment] Failed to process segment comment request: ${r.message}`),Le({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}Ot();ir();_t();so();hn();var qmr=[[/[\(\[(【]\s*(19|20)\d{2}\s*[\)\])】]/g," "],[/\b(19|20)\d{2}\b/g," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps)\b/gi," "],[/[_.-]+/g," "]],jmr=[[/\[[^\]]*\]/g," "],[/[【((][^】))]*[】))]/g," "],[/\.(mp4|mkv|avi|rmvb|ts|flv|mov|m4v)$/gi," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps|aac|flac|dts)\b/gi," "],[/[_~.-]+/g," "]],Hmr=[{pattern:/[Ss]\d{1,2}\s*[Ee](\d{1,4})/,group:1},{pattern:/第\s*([零一二三四五六七八九十百零〇两\d]+)\s*[é›†æœŸè¯ç« å›žæ®µç¯‡]/,group:1,chinese:!0},{pattern:/[Ee][Pp]?\.?\s*(\d{1,4})/,group:1},{pattern:/[Ee](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/Episode\s*(\d{1,4})/i,group:1},{pattern:/(?:正在)?播放[::]\s*(\d{1,4})/,group:1},{pattern:/(?:第\s*)?[零一二三四五六七八九十百\d]+\s*å­£\s*[||]\s*(\d{1,4})/,group:1},{pattern:/[\[【\((](\d{1,4})[\]】\))]/,group:1},{pattern:/@@@(\d{1,4})/,group:1},{pattern:/(?:^|[\s_\-])(\d{1,4})x(?:[\s_\-]|$)/i,group:1},{pattern:/\s(\d{1,4})\.(?:mp4|mkv|avi|mov|mp3|1080|720|4k|2k)/i,group:1},{pattern:/[_\-](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/\s(\d{1,4})\s/,group:1},{pattern:/\s(\d{1,4})$/,group:1},{pattern:/^(\d{1,4})\s/,group:1},{pattern:/(\d{1,4})(?:\s|$)$/,group:1}],Qmr=[{pattern:/(\d{4})[.\-\/å¹´](\d{1,2})[.\-\/月](\d{1,2})/,type:"ymd"},{pattern:/(\d{4})(\d{2})(\d{2})/,type:"ymd_compact"}];function g4(t){let e=String(t||"").trim();if(!e)return"";if(O.animeTitleSimplified)try{e=Qt(e)}catch{}return Fr(e.toLowerCase())}function Nst(t){let e=String(t||"").replace(/\D/g,"");return e.length>=8?e.slice(0,8):""}function Gmr(t){let e=String(t||"");return qmr.forEach(([r,n])=>{e=e.replace(r,n)}),e}function Pst(t){let e=String(t||"");return jmr.forEach(([n,s],i)=>{e=e.replace(n,s)}),e.replace(/\s+/g," ").trim()}function Ost(t){if(!t)return null;let e=String(t);for(let{pattern:s,group:i,chinese:a}of Hmr){let o=e.match(s);if(o&&o[i]!==void 0){let c=o[i];if(a){let u=tg(c);if(u!==null&&!isNaN(u))return u}else{let u=parseInt(c,10);if(!isNaN(u)&&u>0&&u<1e4)return u}}}for(let{pattern:s,type:i}of Qmr){let a=e.match(s);if(a){if(i==="ymd"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}else if(i==="ymd_compact"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}}}let r=Pst(t),n=uf(r);return n!==null?n:null}function Kmr(t){let e=String(t||"").trim();if(!e)return[];let r=[],n=a=>{let o=Fr(String(a||"").trim());!o||r.includes(o)||r.push(o)};n(e);let s=Fr(Gmr(e)).trim();s&&s!==e&&n(s);let i=Fr(e.replace(/[\(\[(【].*$/,"")).trim();return i&&i!==e&&n(i),r.sort((a,o)=>a.length-o.length)}function Vmr(t){let e=new URL(t.url),r=e.pathname.replace(/\/+$/,""),n="/api/v2/",s="/danmaku",i="",a=r.indexOf(n);if(a>=0)i=r.slice(0,a);else{let o=r.indexOf(s);o>=0?i=r.slice(0,o):i=r}return`${e.origin}${i}`}async function zmr(t,e){if(e.method==="GET")return{name:t.searchParams.get("name")||"",episode:t.searchParams.get("episode")||""};try{let r=e.clone(),n=(r.headers.get("content-type")||"").toLowerCase();if(n.includes("application/json")){let i=await r.json();return{name:i?.name||"",episode:i?.episode||""}}if(n.includes("application/x-www-form-urlencoded")||n.includes("multipart/form-data")){let i=await r.formData();return{name:i.get("name")||"",episode:i.get("episode")||""}}let s=await r.text();if(s)try{let i=JSON.parse(s);return{name:i?.name||"",episode:i?.episode||""}}catch{let a=new URLSearchParams(s);return{name:a.get("name")||"",episode:a.get("episode")||""}}}catch(r){_("warn",`[system] [Fongmi] \u89E3\u6790\u8BF7\u6C42\u53C2\u6570\u5931\u8D25: ${r.message}`)}return{name:"",episode:""}}function Ymr(t,e,r,n){let s=Math.max(0,200-n),i=Pst(r),a=g4(i);if(!a)return s;let o=e?.episodeTitle||"",c=g4(o),u=g4(rg(o)),l=g4(t?.animeTitle||"");(c===a||u===a)&&(s+=1e4),(c.includes(a)||a.includes(c))&&(s+=4500),u&&(u.includes(a)||a.includes(u))&&(s+=2500);let d=Ost(i),f=Ost(o),p=parseInt(e?.episodeNumber||`${n+1}`,10);d!==null&&f!==null&&d===f&&(s+=7e3),d!==null&&Number.isFinite(p)&&d===p&&(s+=4e3);let m=Nst(i),h=Nst(o);return m&&h&&m===h&&(s+=9e3),m&&a.includes(m)&&(s+=800),l.includes("\u7EFC\u827A")&&m&&h&&(s+=1200),l.includes("\u7EFC\u827A")&&m&&!h&&d===null&&(s-=1500),s}function Jmr(t,e,r){let n=[];for(let s of t){let i=Fg(s,e);if(!i?.success||!i?.bangumi?.episodes?.length)continue;let a=i.bangumi.episodes;O.enableAnimeEpisodeFilter&&(a=a.filter(o=>!O.episodeTitleFilter.test(o.episodeTitle))),a=$g(a),a.forEach((o,c)=>{let u=`${r}/api/v2/comment/${encodeURIComponent(o.episodeId)}?format=xml`;n.push({anime:s,episode:o,index:c,commentUrl:u})})}return n}async function qie(t,e){let{name:r,episode:n}=await zmr(t,e);if(!r)return Le([],200);if(O.titleMappingTable&&O.titleMappingTable.size>0){let f=O.titleMappingTable.get(r);f&&(_("info",`[system] [Fongmi] Title mapped from original: ${r} to: ${f}`),r=f)}let s=new URL(t.toString()),i=new Map,a=Kmr(r),o=[];for(let f of a){s.searchParams.set("keyword",f);let m=await(await nE(s,null,null,i)).json();if(o=Array.isArray(m?.animes)?m.animes:[],o.length){f!==r&&_("info",`[system] [Fongmi] Search fallback hit: raw=${r}, keyword=${f}, episode=${n}`);break}}if(!o.length)return _("info",`[system] [Fongmi] No danmaku candidates for name=${r}, episode=${n}`),Le([],200);let c=Vmr(e),u=Jmr(o,i,c).map(f=>({...f,score:Ymr(f.anime,f.episode,n,f.index)})).sort((f,p)=>p.score-f.score),l=new Set,d=[];for(let f of u)if(!(!f?.commentUrl||l.has(f.commentUrl))&&(l.add(f.commentUrl),d.push({name:`${f.anime.animeTitle} - ${f.episode.episodeTitle}`,url:f.commentUrl}),d.length>=1e3))break;return _("info",`[system] [Fongmi] name=${r}, episode=${n}, candidates=${d.length}`),Le(d,200)}Ot();ir();Ot();var kst=`
/* \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 Dst=`
/* \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 Bst=`
/* \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 Lst=`
/* \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 Mst=`
// \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 Wst=`
// \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 $st=`
// \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 Fst=`
// 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 Ust=`
// \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 qst=`
// \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 jst=`
// \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 Hst=`
<!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>${kst}</style>
<style>${Dst}</style>
<style>${Bst}</style>
<style>${Lst}</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>
${Mst}
${Wst}
${$st}
${Fst}
${Ust}
${qst}
${jst}
</script>
</body>
</html>
`;_t();var ya=class{static async getHandler(e){switch(e?.toLowerCase()){case"cloudflare":let{CloudflareHandler:r}=await Promise.resolve().then(()=>(Gst(),Qst));return new r;case"vercel":let{VercelHandler:n}=await Promise.resolve().then(()=>(Vst(),Kst));return new n;case"netlify":let{NetlifyHandler:s}=await Promise.resolve().then(()=>(Yst(),zst));return new s;case"edgeone":let{EdgeoneHandler:i}=await Promise.resolve().then(()=>(Xst(),Jst));return new i;case"huggingface":let{HuggingfaceHandler:a}=await Promise.resolve().then(()=>(eit(),Zst));return new a;case"node":let{NodeHandler:o}=await import(["./node-handler",".js"].join(""));return new o;default:let{NodeHandler:c}=await import(["./node-handler",".js"].join(""));return new c}}static getSupportedPlatforms(){return["cloudflare","vercel","netlify","edgeone","huggingface","node"]}};function zie(){return new Response(Hst.replace("globals.currentToken",O.currentToken),{headers:{"Content-Type":"text/html; charset=utf-8","Access-Control-Allow-Origin":"*"}})}function A4(t=!1){let e=O.envVarConfig,r={api:[],source:[],match:[],danmu:[],cache:[],system:[]},n={...O.accessedEnvVars,localCacheValid:O.localCacheValid,redisValid:O.redisValid,localRedisValid:O.localRedisValid,aiValid:O.aiValid,deployPlatform:O.deployPlatform};Object.keys(n).forEach(o=>{let c=e[o]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"},u=c.category||"system";r[u].push({key:o,value:n[o].value||n[o],type:n[o].type||c.type||"text",description:c.description||"\u65E0\u63CF\u8FF0",options:n[o].options||c.options})});let i=(O.adminToken||"").trim()!=="",a={...O.originalEnvVars};return(!t||O.currentToken!==O.adminToken)&&Object.keys(a).forEach(o=>{(O.currentToken!==O.token||o!=="TOKEN")&&o in n&&/^\*+$/.test(n[o])&&(a[o]=n[o])}),Le({message:"Welcome to the LogVar Danmu API server",version:O.VERSION,envs:n,categorizedEnvVars:r,envVarConfig:e,originalEnvVars:a,hasAdminToken:i,repository:"https://github.com/huangxd-/danmu_api.git",description:"\u4E00\u4E2A\u4EBA\u4EBA\u90FD\u80FD\u90E8\u7F72\u7684\u57FA\u4E8E js \u7684\u5F39\u5E55 API \u670D\u52A1\u5668\uFF0C\u652F\u6301\u7231\u4F18\u817E\u8292\u54D4\u54AA\u4EBA\u97E9\u5DF4\u72D0\u4E50\u897F\u57CB\u5E06\u5F39\u5E55\u76F4\u63A5\u83B7\u53D6\uFF0C\u517C\u5BB9\u5F39\u5F39play\u7684\u641C\u7D22\u3001\u8BE6\u60C5\u67E5\u8BE2\u548C\u5F39\u5E55\u83B7\u53D6\u63A5\u53E3\u89C4\u8303\uFF0C\u5E76\u63D0\u4F9B\u65E5\u5FD7\u8BB0\u5F55\uFF0C\u652F\u6301vercel/netlify/edgeone/cloudflare/docker/hf\u7B49\u90E8\u7F72\u65B9\u5F0F\uFF0C\u4E0D\u7528\u63D0\u524D\u4E0B\u8F7D\u5F39\u5E55\uFF0C\u6CA1\u6709nas\u6216\u5C0F\u9E21\u4E5F\u80FD\u4E00\u952E\u90E8\u7F72\u3002",notice:"\u672C\u9879\u76EE\u4EC5\u4E3A\u4E2A\u4EBA\u5B66\u4E60\u7231\u597D\u5F00\u53D1\uFF0C\u4EE3\u7801\u5F00\u6E90\u3002\u5982\u6709\u4EFB\u4F55\u4FB5\u6743\u884C\u4E3A\uFF0C\u8BF7\u8054\u7CFB\u672C\u4EBA\u5220\u9664\u3002\u6709\u95EE\u9898\u63D0issue\u6216\u79C1\u4FE1\u673A\u5668\u4EBA\u90FDok\uFF0CTG MSG ROBOT: [https://t.me/ddjdd_bot]; \u63A8\u8350\u52A0\u4E92\u52A9\u7FA4\u54A8\u8BE2\uFF0CTG GROUP: [https://t.me/logvar_danmu_group]; \u5173\u6CE8\u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0\u5185\u5BB9\uFF0CTG CHANNEL: [https://t.me/logvar_danmu_channel]\u3002"})}async function tit(){try{let t=O.deployPlatform;if(_("info",`[system] [Server] Deployment request received for platform: ${t}`),t.toLowerCase()==="node")return _("info","[system] [Server] Node/Docker deployment - no redeployment needed, config changes take effect automatically"),Le({success:!0,message:"Node/Docker deployment - configuration changes take effect automatically"},200);let e=await ya.getHandler(t);return e?await e.deploy()?(_("info",`[system] [Server] Deployment triggered successfully for platform: ${t}`),Le({success:!0,message:"Deployment triggered successfully"},200)):(_("error",`[system] [Server] Failed to trigger deployment for platform: ${t}`),Le({success:!1,message:"Failed to trigger deployment"},500)):(_("error",`[system] [Server] No handler found for platform: ${t}`),Le({success:!1,message:`No handler found for platform: ${t}`},400))}catch(t){return _("error",`[system] [Server] Deployment error: ${t.message}`),Le({success:!1,message:`Deployment failed: ${t.message}`},500)}}function rit(){let t=O.logBuffer.map(r=>`[${r.timestamp}] ${r.level}: ${C5e(r.message)}`).join(`
`),e=t;return O.currentToken!==O.adminToken&&(e=t.replace(/(client\s+ip:\s*)([^\n\r]*)/gi,(r,n,s)=>{let i=s.replace(/[^.\s\n\r]/g,"*");return n+i})),new Response(e,{headers:{"Content-Type":"text/plain; charset=utf-8"}})}function nit(){return O.logBuffer=[],Le({success:!0,message:"Logs cleared"},200)}async function sit(){try{O.animes=[],O.episodeIds=[],O.episodeNum=10001,O.lastSelectMap=new Map,O.reqRecords=[],O.todayReqNum=0,O.searchCache=new Map,O.commentCache=new Map,O.requestHistory=new Map;try{Z8e(!0),O.useBangumiData&&YB(O.deployPlatform,!1).catch(t=>{_("warn",`[system] [Server] Bangumi-Data background reload failed: ${t.message}`)})}catch(t){_("error",`[system] [Server] Failed to clear Bangumi-Data cache: ${t.message}`)}_("info","[system] [Server] Memory cache cleared successfully");try{if(O.localCacheValid){let{updateLocalCaches:t}=await Promise.resolve().then(()=>($n(),j8e));await t(),_("info","[system] [Server] Local cache cleared successfully")}}catch(t){_("warn",`[system] [Server] Local cache may not be available: ${t.message}`)}try{if(O.redisValid){let{updateRedisCaches:t}=await Promise.resolve().then(()=>(kB(),O8e));await t(),_("info","[system] [Server] Redis cache cleared successfully")}}catch(t){_("warn",`[system] [Server] Redis may not be available: ${t.message}`)}try{if(O.localRedisValid){let{updateLocalRedisCaches:t}=await Promise.resolve().then(()=>($T(),YL));await t(),_("info","[system] [Server] LocalRedis cache cleared successfully")}}catch(t){_("warn",`[system] [Server] LocalRedis may not be available: ${t.message}`)}return _("info","[system] [Server] All caches cleared successfully"),Le({success:!0,message:"Cache cleared successfully",clearedItems:{animes:0,episodeIds:0,episodeNum:10001,lastSelectMap:0,searchCache:0,commentCache:0,requestHistory:0,reqRecords:0,todayReqNum:0}},200)}catch(t){return _("error",`[system] [Server] Cache clear failed: ${t.message}`),Le({success:!1,message:`Cache clear failed: ${t.message}`},500)}}function Xmr(t){let e=t.indexOf("?");if(e===-1)return t;let r=t.slice(0,e),s=t.slice(e+1).replace(/([^&=]+)=([^&]*)/g,(i,a)=>`${a}=***`);return`${r}?${s}`}function Vie(t){if(t==null)return t;if(Array.isArray(t))return t.map(Vie);if(typeof t=="object"){let e={};for(let r of Object.keys(t))e[r]=Vie(t[r]);return e}return"***"}function iit(){let t=[...O.reqRecords].reverse(),e=O.todayReqNum||0;return O.currentToken!==O.adminToken&&(t=t.map(r=>{let n={...r};return n.clientIp&&(n.clientIp=n.clientIp.replace(/[^.]/g,"*")),typeof n.interface=="string"&&(n.interface=Xmr(n.interface)),n.params!=null&&(n.params=Vie(n.params)),n})),Le({records:t,todayReqNum:e},200)}function ait(){try{let t=[...O.animes||[]].reverse(),e=new Map;t.forEach(n=>{n?.source&&n?.animeId&&e.set(`${n.source}_${n.animeId}`,n)});let r=t.filter(n=>!n.isHiddenChild).map(n=>{let s=typeof n.toJson=="function"?n.toJson():{...n},{links:i=[],mergedChildren:a=[],...o}=s;return{...o,episodes:o.episodeCount||o.episodes||1,links:i,mergedChildren:a.map(c=>{let u=e.get(`${c.source}_${c.animeId}`),l=typeof u?.toJson=="function"?u.toJson():u,d=l?.links?.length>0?l.links:c.links||[];return{...c,episodes:c.episodeCount||c.episodes||1,links:d}})}});return Le({success:!0,data:r},200)}catch(t){return _("error",`[system] [Server] Fetch cache animes failed: ${t.message}`),Le({success:!1,message:`\u83B7\u53D6\u7F13\u5B58\u5931\u8D25: ${t.message}`},500)}}ir();_t();Ot();async function oit(t){try{let{key:e,value:r}=await t.json();if(!e)return Le({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await ya.getHandler(n)).setEnv(e,r)?Le({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u6210\u529F`}):Le({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Le({success:!1,message:`\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function cit(t){try{let{key:e,value:r}=await t.json();if(!e)return Le({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await ya.getHandler(n)).addEnv(e,r)?Le({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u6210\u529F`}):Le({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Le({success:!1,message:`\u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function uit(t){try{let{key:e}=await t.json();if(!e)return Le({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let r=O.deployPlatform;return await(await ya.getHandler(r)).delEnv(e)?Le({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u6210\u529F`}):Le({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Le({success:!1,message:`\u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function lit(t){try{let e=await t.json(),r=e.aiBaseUrl||O.aiBaseUrl||"https://api.openai.com/v1",n=e.aiModel||O.aiModel||"gpt-4o",s=e.aiApiKey||O.aiApiKey;if(!s)return Le({success:!1,ok:!1,message:"AI_API_KEY \u672A\u914D\u7F6E"},400);let a=await new df({baseURL:r,model:n,apiKey:s,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify();return a.ok?Le({success:!0,ok:!0,message:"AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F"}):Le({success:!1,ok:!1,message:`AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25: ${a.error}`},200)}catch(e){return _("error","[system] [Server] AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25:",e),Le({success:!1,ok:!1,message:`AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25: ${e.message}`},500)}}hs();ir();_t();Ot();var dit=new Map;function fit(){try{if(O&&typeof O.bilibliCookie=="string"&&O.bilibliCookie)return O.bilibliCookie}catch{}try{if(O&&O.env&&typeof O.env.BILIBILI_COOKIE=="string"&&O.env.BILIBILI_COOKIE)return O.env.BILIBILI_COOKIE}catch{}return typeof process<"u"&&process.env&&typeof process.env.BILIBILI_COOKIE=="string"&&process.env.BILIBILI_COOKIE?process.env.BILIBILI_COOKIE:""}function Zmr(t){try{let e=t.match(/SESSDATA=([^;]+)/);if(!e)return Math.floor(Date.now()/1e3)+30*24*60*60;let r=e[1],n=decodeURIComponent(r),s=Math.floor(Date.now()/1e3),i=(n.match(/\d{10,}/g)||[]).map(c=>Number(c)).filter(c=>Number.isFinite(c)),a=10*365*24*60*60,o=i.filter(c=>c>s&&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 pit(t){if(!t)return{isValid:!1,error:"\u7F3A\u5C11Cookie"};if(!t.includes("SESSDATA")||!t.includes("bili_jct"))return{isValid:!1,error:"Cookie\u683C\u5F0F\u4E0D\u5B8C\u6574\uFF08\u9700\u8981\u5305\u542B SESSDATA \u548C bili_jct\uFF09"};try{let e=await fetch("https://api.bilibili.com/x/web-interface/nav",{method:"GET",headers:{Cookie:t,"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}});if(!e.ok){let n=await e.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25\uFF1AHTTP ${e.status}${n?" - "+n.slice(0,80):""}`}}let r;try{r=await e.json()}catch(n){let s=await e.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${s?s.slice(0,80):n.message}`}}return r?.code===0&&r?.data?.isLogin?{isValid:!0,data:{uname:r.data.uname,mid:r.data.mid,face:r.data.face}}:r?.code===0&&r?.data&&r.data.isLogin===!1?{isValid:!1,error:"\u8D26\u53F7\u672A\u767B\u5F55\uFF08Cookie \u5DF2\u5931\u6548\uFF09"}:{isValid:!1,error:r?.message||"Cookie\u65E0\u6548\u6216\u5DF2\u8FC7\u671F"}}catch(e){return{isValid:!1,error:"\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25: "+e.message}}}async function mit(t,e="saved"){if(!t)return{success:!0,data:{isValid:!1,checked:e,error:"\u672A\u914D\u7F6ECookie"}};let r=await pit(t);return r.isValid?{success:!0,data:{isValid:!0,checked:e,uname:r.data?.uname||"\u672A\u77E5\u7528\u6237",expiresAt:Zmr(t)}}:{success:!0,data:{isValid:!1,checked:e,error:r.error||"Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548"}}}async function hit(){try{let t=fit(),e=await mit(t,"saved");return Le(e)}catch(t){return Le({success:!1,message:t.message},500)}}async function git(t){try{let e={};try{e=await t.json()}catch{e={}}let r=typeof e.cookie=="string"?e.cookie.trim():"",n=!r||/^\*+$/.test(r),s=n?fit():r,a=await mit(s,n?"saved":"input");return Le(a)}catch(e){return Le({success:!1,message:e.message},500)}}async function Ait(){try{let e=await(await fetch("https://passport.bilibili.com/x/passport-login/web/qrcode/generate",{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}})).json();return e.code!==0?Le({success:!1,message:e.message||"\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25"},500):(dit.set(e.data.qrcode_key,{createTime:Date.now(),status:"generated"}),Le({success:!0,data:e.data}))}catch(t){return Le({success:!1,message:t.message},500)}}function ehr(t){let e=new Map,r=[];try{if(t?.headers&&typeof t.headers.getSetCookie=="function")r=t.headers.getSetCookie()||[];else{let u=t?.headers?.get?.("set-cookie");u&&(r=[u])}}catch{r=[]}for(let u of r){if(!u||typeof u!="string")continue;let l=u.split(";")[0],d=l.indexOf("=");if(d<=0)continue;let f=l.slice(0,d).trim(),p=l.slice(d+1).trim();f&&e.set(f,p)}let n=e.get("SESSDATA"),s=e.get("bili_jct"),i=e.get("DedeUserID"),a=e.get("DedeUserID__ckMd5"),o=e.get("sid");if(!n)return null;let c=[`SESSDATA=${n}`];return s&&c.push(`bili_jct=${s}`),i&&c.push(`DedeUserID=${i}`),a&&c.push(`DedeUserID__ckMd5=${a}`),o&&c.push(`sid=${o}`),c.join("; ")}async function yit(t){let e=null;try{let r=await t.json();if(e=r.qrcodeKey||r.qrcode_key,!e)return Le({success:!1,message:"\u7F3A\u5C11qrcodeKey\u53C2\u6570"},400);let n=await fetch(`https://passport.bilibili.com/x/passport-login/web/qrcode/poll?qrcode_key=${e}`,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}}),s=await n.json(),i=null;if(s?.data?.code===0&&(i=ehr(n),!i&&s?.data?.url))try{let o=new URL(s.data.url),c=new URLSearchParams(o.search),u=decodeURIComponent(c.get("SESSDATA")||""),l=decodeURIComponent(c.get("bili_jct")||""),d=decodeURIComponent(c.get("DedeUserID")||"");if(u){let f=[`SESSDATA=${u}`];l&&f.push(`bili_jct=${l}`),d&&f.push(`DedeUserID=${d}`),i=f.join("; ")}}catch{}let a={success:!0,data:{code:s?.data?.code,message:s?.data?.message||""}};return i&&(a.data.cookie=i),Le(a)}catch(r){return Le({success:!1,message:r.message},500)}finally{e&&dit.delete(e)}}async function xit(t){try{let r=((await t.json()).cookie||"").trim();if(!r)return Le({success:!1,message:"\u7F3A\u5C11cookie\u53C2\u6570"},400);if(!r.includes("SESSDATA")||!r.includes("bili_jct"))return Le({success:!1,message:"Cookie\u683C\u5F0F\u4E0D\u6B63\u786E"},400);let n=await pit(r);if(!n.isValid)return Le({success:!1,message:"Cookie\u9A8C\u8BC1\u5931\u8D25: "+(n.error||"\u65E0\u6548")},400);let s=O.deployPlatform,i=await ya.getHandler(s);return i?await i.setEnv("BILIBILI_COOKIE",r)?Le({success:!0,data:{uname:n.data?.uname},message:"Cookie\u4FDD\u5B58\u6210\u529F"}):Le({success:!1,message:"Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u73AF\u5883\u53D8\u91CF\u5199\u5165\u5931\u8D25"},500):Le({success:!1,message:`Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u4E0D\u652F\u6301\u7684\u90E8\u7F72\u5E73\u53F0 ${s||"unknown"}`},400)}catch(e){return Le({success:!1,message:e.message},500)}}var gt;async function Eit(t,e,r,n,s){gt=zh.init(e);let i=new URL(t.url),a=i.pathname,o=t.method,c=a.includes("/search")||a.includes("/match")||a.includes("/danmaku");if(gt.useBangumiData&&await YB(r,c,s),gt.deployPlatform=r,r==="node"){await oz(a,r);let{judgeLocalRedisValid:h}=await Promise.resolve().then(()=>($T(),YL));await h(a)}if(await GV(a),!gt.aiValid&&gt.aiBaseUrl&&gt.aiModel&&gt.aiApiKey&&a!=="/favicon.ico"&&a!=="/robots.txt"&&(await new df({baseURL:gt.aiBaseUrl,model:gt.aiModel,apiKey:gt.aiApiKey,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify()).ok&&(gt.aiValid=!0),_("info",`[system] [Server] request url: ${JSON.stringify(i)}`),_("info",`[system] [Server] request path: ${a}`),_("info",`[system] [Server] client ip: ${n}`),gt.ipBlacklist?.length&&gt.ipBlacklist.some(A=>thr(A,n)))return _("warn",`[Utils] [IP Blacklist] Blocked request from IP: ${n}`),Le({errorCode:403,success:!1,errorMessage:"Forbidden"},403);let u=a.split("/").filter(Boolean),l=["api","v1","v2","search","match","bangumi","comment","danmaku"],d=u[0]||"",f=gt.token==="87654321",p=d===gt.token||d===gt.adminToken;if(gt.currentToken=p?d:f&&(d==="87654321"||l.includes(d))?d==="87654321"?d:"87654321":"",r==="node"&&gt.localCacheValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await az(),gt.redisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await QV(),r==="node"&&gt.localRedisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"){let{getLocalRedisCaches:h}=await Promise.resolve().then(()=>($T(),YL));await h()}if(["/api/v2/search/anime","/api/v2/match","/api/v2/search/episodes","/api/v2/fongmi/danmaku","/danmaku","/api/v2/bangumi","/api/v2/comment","/api/v2/segmentcomment"].some(h=>a.includes(h))){let h=gt.reqRecords.length>0?gt.reqRecords[gt.reqRecords.length-1]:null,A=new Date().toDateString();if(h){let v=new Date(h.timestamp).toDateString();_("info",`[system] [Server] currentDate: ${A}`),_("info",`[system] [Server] lastDate: ${v}`),v!==A?gt.todayReqNum=1:gt.todayReqNum++}else gt.todayReqNum=1;let g=t.url,b=g.indexOf("/api/v2");b!==-1&&(g=g.substring(b));let y=null;if(o==="POST"||o==="PUT"||o==="PATCH")try{let v=t.clone();if((v.headers.get("content-type")||"").includes("application/json"))y=await v.json();else{let R=await v.text();R&&(y=JSON.parse(R))}}catch{y=null}let x={interface:g,params:y,timestamp:new Date().toISOString(),method:o,clientIp:n};gt.reqRecords.push(x),gt.reqRecords.length>gt.MAX_RECORDS&&(gt.reqRecords=gt.reqRecords.slice(-gt.MAX_RECORDS))}if(a==="/"&&o==="GET")return zie();if(a==="/favicon.ico"||a==="/robots.txt"||o==="OPTIONS")return new Response(null,{status:204,headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, User-Agent"}});if(gt.token==="87654321"){if(u.length>0){if(u[0]==="87654321"||u[0]===gt.adminToken)a="/"+u.slice(1).join("/");else if(!l.includes(u[0]))return a==="/api/config"&&o==="GET"?A4(!1):(_("error",`[system] [Server] Invalid token in path: ${a}`),Le({errorCode:401,success:!1,errorMessage:"Unauthorized"},401))}}else{if(u.length<1||u[0]!==gt.token&&u[0]!==gt.adminToken)return a==="/api/config"&&o==="GET"?A4(!1):(_("error",`[system] [Server] Invalid or missing token in path: ${a}`),Le({errorCode:401,success:!1,errorMessage:"Unauthorized"},401));a="/"+u.slice(1).join("/")}if(a.endsWith("/danmaku/api/v2/fongmi/danmaku")&&(_("info",`[Path Fix] Collapsed nested danmaku path: "${a}" -> "/danmaku"`),a="/danmaku"),a==="/api/config"&&o==="GET")return A4(!0);if(a==="/api/reqrecords"&&o==="GET")return iit();if(_("info",`[system] [Server] ${a}`),a!=="/"&&a!=="/danmaku"&&a!=="/api/logs"&&!a.startsWith("/api/env")&&!a.startsWith("/api/deploy")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")){_("info",`[Path Check] Starting path normalization for: "${a}"`);let h=a;for(a=a.replace(/\/+/g,"/");a.startsWith("/api/v2/api/v2/");)_("info","[Path Check] Found redundant /api/v2 prefix. Cleaning..."),a=a.substring(7);a!==h?_("info",`[Path Check] Path after cleanup: "${a}"`):_("info","[Path Check] Path after cleanup: No cleanup needed.");let A=a;!a.startsWith("/api/v2")&&a!=="/"&&!a.startsWith("/api/logs")&&!a.startsWith("/api/env")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")&&(a.startsWith("/v2/")||a==="/v2"?(_("info","[Path Check] Path is missing /api prefix. Adding /api..."),a="/api"+a):a.startsWith("/api/")||a==="/api"?(_("info","[Path Check] Path is missing /v2 prefix. Adding /v2..."),a="/api/v2"+a.substring(4)):(_("info","[Path Check] Path is missing /api/v2 prefix. Adding /api/v2..."),a="/api/v2"+(a.startsWith("/")?a:"/"+a))),a===A&&_("info","[Path Check] Prefix Check: No prefix addition needed."),_("info",`[Path Check] Final normalized path: "${a}"`)}if(a==="/"&&o==="GET")return zie();if(a==="/api/v2/search/anime"&&o==="GET")return nE(i);if(a==="/api/v2/search/episodes"&&o==="GET")return wst(i);if(a==="/api/v2/fongmi/danmaku"&&(o==="GET"||o==="POST"))return qie(i,t);if(a==="/danmaku"&&(o==="GET"||o==="POST"))return qie(i,t);if(a==="/api/v2/match"&&o==="POST")return Tst(i,t,n);if(a.startsWith("/api/v2/bangumi/")&&o==="GET")return Wie(a);if((a.startsWith("/api/v2/comment")||a.startsWith("/api/v2/extcomment"))&&o==="GET"){let h=i.searchParams.get("format"),A=i.searchParams.get("url"),g=i.searchParams.get("segmentflag"),b=i.searchParams.get("duration"),y=g==="true"||g==="1",x=b==="true"||b==="1";if(A){if(lf(A)!==null)return _("info",`[Utils] [Rate Limit] Cache hit for URL: ${A}, skipping rate limit check`),Uie(A,h,y,x);if(gt.rateLimitMaxRequests>0){let w=Date.now(),N=60*1e3;qB(w),gt.requestHistory.has(n)||gt.requestHistory.set(n,[]);let B=gt.requestHistory.get(n).filter(M=>w-M<=N);if(B.length>=gt.rateLimitMaxRequests)return _("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${B.length}/${gt.rateLimitMaxRequests} requests in 1 minute)`),Le({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);B.push(w),gt.requestHistory.set(n,B),_("info",`[Utils] [Rate Limit] IP ${n} request count: ${B.length}/${gt.rateLimitMaxRequests}`)}return Uie(A,h,y,x)}if(!a.startsWith("/api/v2/comment/"))return _("error","[system] [Server] Missing commentId or url parameter"),Le({errorCode:400,success:!1,errorMessage:"Missing commentId or url parameter"},400);let v=parseInt(a.split("/").pop()),I=DI(v);if(I&&lf(I)!==null)return _("info",`[Utils] [Rate Limit] Cache hit for URL: ${I}, skipping rate limit check`),Fie(a,h,y,n,x);if(gt.rateLimitMaxRequests>0){let R=Date.now(),w=60*1e3;qB(R),gt.requestHistory.has(n)||gt.requestHistory.set(n,[]);let P=gt.requestHistory.get(n).filter(B=>R-B<=w);if(P.length>=gt.rateLimitMaxRequests)return _("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${P.length}/${gt.rateLimitMaxRequests} requests in 1 minute)`),Le({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);P.push(R),gt.requestHistory.set(n,P),_("info",`[Utils] [Rate Limit] IP ${n} request count: ${P.length}/${gt.rateLimitMaxRequests}`)}return Fie(a,h,y,n,x)}if(a.startsWith("/api/v2/segmentcomment")&&o==="POST")try{let h=i.searchParams.get("format"),A=await t.json(),g;try{g=fb.fromJson(A)}catch{return _("error","[system] [Server] Invalid JSON in request body for segment"),Le({errorCode:400,success:!1,errorMessage:"Invalid JSON in request body"},400)}return Rst(g,h)}catch(h){return _("error",`[system] [Server] Error processing segmentcomment request: ${h.message}`),Le({errorCode:500,success:!1,errorMessage:"Internal server error"},500)}return a==="/api/logs"&&o==="GET"?rit():a==="/api/logs/clear"&&o==="POST"?nit():a==="/api/env/set"&&o==="POST"?oit(t):a==="/api/env/add"&&o==="POST"?cit(t):a==="/api/env/del"&&o==="POST"?uit(t):a==="/api/deploy"&&o==="POST"?tit():a==="/api/cache/animes"&&o==="GET"?ait():a==="/api/cache/clear"&&o==="POST"?sit():a==="/api/cookie/status"&&o==="GET"?hit():a==="/api/cookie/qr/generate"&&o==="POST"?Ait():a==="/api/cookie/qr/check"&&o==="POST"?yit(t):a==="/api/cookie/verify"&&o==="POST"?git(t):a==="/api/cookie/save"&&o==="POST"?xit(t):a==="/api/ai/verify"&&o==="POST"?lit(t):Le({message:"Not found"},404)}function thr(t,e){return!t||!e||e==="unknown"?!1:t.type==="exact"?t.value===e:t.type==="regex"?t.value.test(e):t.type==="cidr"?rhr(e,t.ip,t.prefix):!1}function rhr(t,e,r){if(t.includes(":")||e.includes(":")){let o=bit(t),c=bit(e);if(!o||!c||r<0||r>128)return!1;let u=Math.floor(r/8),l=r%8;for(let d=0;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=Yie(t),i=Yie(e);if(s===null||i===null||r<0||r>32)return!1;let a=r===0?0:4294967295<<32-r>>>0;return(s&a)===(i&a)}function Yie(t){let e=t.split(".");if(e.length!==4)return null;let r=e.map(n=>Number(n));return r.some(n=>Number.isNaN(n)||n<0||n>255)?null:(r[0]<<24>>>0)+(r[1]<<16)+(r[2]<<8)+r[3]}function bit(t){if(!t||typeof t!="string"||!t.includes(":"))return null;let r=t.trim().split("::");if(r.length>2)return null;let n=r[0]?r[0].split(":").filter(Boolean):[],s=r[1]?r[1].split(":").filter(Boolean):[],i=c=>{if(c.length===0)return c;let u=c[c.length-1];if(!u.includes("."))return c;let l=Yie(u);if(l===null)return null;let d=(l>>>16&65535).toString(16),f=(l&65535).toString(16);return[...c.slice(0,-1),d,f]};if(n=i(n),s=i(s),!n||!s)return null;if(r.length===1){if(n.length!==8)return null}else{let c=n.length+s.length;if(c>8)return null;let u=8-c;s=new Array(u).fill("0").concat(s)}let a=n.concat(s);if(a.length!==8)return null;let o=[];for(let c of a){if(!/^[0-9a-fA-F]{1,4}$/.test(c))return null;let u=parseInt(c,16);o.push(u>>8&255,u&255)}return o}var wu=null,aE=9321,y4=0,Ug=null,_it=!1,iE={...process.env,ADMIN_TOKEN:"douer"},x4=!1,mw=null,Nc=null,Tn={overrides:{},deletedKeys:[]};function _i(...t){}function hw(...t){}function Cit(){return y4>0}function nhr(){try{let byEval=eval("1 + 1")===2,byFunction=Function("return 2 + 2")()===4;return byEval&&byFunction}catch{return!1}}function Xie(){return{overrides:{},deletedKeys:[]}}function Tit(){let t=String(process.env.DANMU_ENV_STORE_FILE||"").trim();if(t)return t;let e=String(process.env.NODE_PATH||"").trim()||process.cwd();return nae.default.resolve(e,"danmu_env_overrides.json")}function shr(t){let e=Xie();if(!t||typeof t!="object")return e;let r=Array.isArray(t.deletedKeys)?t.deletedKeys.map(s=>String(s||"").trim()).filter(s=>s):[];e.deletedKeys=Array.from(new Set(r));let n=new Set(e.deletedKeys);return t.overrides&&typeof t.overrides=="object"&&!Array.isArray(t.overrides)&&Object.entries(t.overrides).forEach(([s,i])=>{let a=String(s||"").trim();!a||n.has(a)||(e.overrides[a]=i==null?"":String(i))}),e}function ihr(){Nc=Tit();try{if(!gw.default.existsSync(Nc)){Tn=Xie(),_i("loadPersistedEnvStore()",{loaded:!1,reason:"store file not found",path:Nc});return}let t=gw.default.readFileSync(Nc,"utf8"),e=t?JSON.parse(t):{};Tn=shr(e),_i("loadPersistedEnvStore()",{loaded:!0,path:Nc,overrides:Object.keys(Tn.overrides).length,deleted:Tn.deletedKeys.length})}catch(t){Tn=Xie(),hw("loadPersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Nc})}}function ahr(){try{Nc||(Nc=Tit());let t=nae.default.dirname(Nc);gw.default.mkdirSync(t,{recursive:!0});let e={version:1,updatedAt:new Date().toISOString(),overrides:Tn.overrides,deletedKeys:Tn.deletedKeys};return gw.default.writeFileSync(Nc,JSON.stringify(e,null,2),"utf8"),!0}catch(t){return hw("savePersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Nc||""}),!1}}function Zie(){let t={...process.env};return Object.entries(Tn.overrides).forEach(([e,r])=>{t[e]=r}),Tn.deletedKeys.forEach(e=>{delete t[e]}),ohr(t)}function ohr(t){let e=t||{},r=String(e.TOKEN||"").trim();e.TOKEN=r||"87654321";let n=String(e.SOURCE_ORDER||"").trim();e.SOURCE_ORDER=n||"tencent,youku,iqiyi,imgo,bilibili,dandan,renren,hanjutv";let s=String(e.STRICT_TITLE_MATCH||"").trim();e.STRICT_TITLE_MATCH=s||"true";let i=String(e.RATE_LIMIT_MAX_REQUESTS||"").trim();e.RATE_LIMIT_MAX_REQUESTS=i||"0";let a=String(e.ADMIN_TOKEN||"").trim();return e.ADMIN_TOKEN=a||"douer",e}function chr(t){return t==null?null:Array.isArray(t)?t.map(e=>String(e)).join(","):typeof t=="string"?t:typeof t=="number"||typeof t=="boolean"?String(t):null}function uhr(t,e){if(!t||typeof t!="object"||!t.originalEnvVars||typeof t.originalEnvVars!="object")return t;let r=t.originalEnvVars,n=t.envs&&typeof t.envs=="object"?t.envs:{};return Object.keys(r).forEach(s=>{let i=r[s];if(!(i==null||String(i).trim()===""))return;if(s==="TOKEN"){r[s]=String(e.TOKEN||"87654321");return}if(s==="ADMIN_TOKEN"){r[s]=String(e.ADMIN_TOKEN||"");return}let o=e[s];if(o!=null&&String(o).trim()!==""){r[s]=String(o);return}if(!Object.prototype.hasOwnProperty.call(n,s))return;let c=n[s];if(typeof c=="string"&&/^\*+$/.test(c))return;let u=chr(c);u!==null&&u!==""&&(r[s]=u)}),t}function Jie(t,e,r=!1){let n=String(t||"").trim();if(!n)return!1;let s=Object.prototype.hasOwnProperty.call(process.env,n),i=process.env[n],a=Object.prototype.hasOwnProperty.call(Tn.overrides,n),o=Tn.overrides[n],c=Tn.deletedKeys.includes(n);if(r)delete process.env[n],delete Tn.overrides[n],Tn.deletedKeys.includes(n)||Tn.deletedKeys.push(n);else{let u=e==null?"":String(e);process.env[n]=u,Tn.overrides[n]=u,Tn.deletedKeys=Tn.deletedKeys.filter(l=>l!==n)}return ahr()?(iE=Zie(),!0):(a?Tn.overrides[n]=o:delete Tn.overrides[n],c&&!Tn.deletedKeys.includes(n)&&Tn.deletedKeys.push(n),c||(Tn.deletedKeys=Tn.deletedKeys.filter(u=>u!==n)),s?process.env[n]=i:delete process.env[n],iE=Zie(),!1)}var lhr={async setEnv(t,e){return Jie(t,e,!1)?(_i("memoryNodeEnvHandler.setEnv()",{key:String(t||"")}),!0):!1},async addEnv(t,e){return Jie(t,e,!1)?(_i("memoryNodeEnvHandler.addEnv()",{key:String(t||"")}),!0):!1},async delEnv(t){return Jie(t,"",!0)?(_i("memoryNodeEnvHandler.delEnv()",{key:String(t||"")}),!0):!1}};function dhr(){x4||(mw=ya.getHandler,ya.getHandler=async function(e){let r=String(e||"").toLowerCase();return!r||r==="node"?lhr:mw.call(ya,e)},x4=!0,_i("installNodeEnvHotReloadPatch()",{patched:!0}))}function fhr(){!x4||!mw||(ya.getHandler=mw,mw=null,x4=!1,_i("uninstallNodeEnvHotReloadPatch()",{patched:!1}))}function phr(t){return t==null?Buffer.alloc(0):Buffer.isBuffer(t)?t:t instanceof ArrayBuffer?Buffer.from(t):ArrayBuffer.isView(t)?Buffer.from(t.buffer,t.byteOffset,t.byteLength):Buffer.from(String(t),"utf8")}async function mhr(t){if(!t||typeof t.getReader!="function")return Buffer.from(String(t??""),"utf8");let e=t.getReader(),r=[];try{for(;;){let{done:n,value:s}=await e.read();if(n)break;if(s!=null){if(Buffer.isBuffer(s)){r.push(s);continue}if(s instanceof Uint8Array){r.push(Buffer.from(s));continue}if(s instanceof ArrayBuffer){r.push(Buffer.from(s));continue}if(ArrayBuffer.isView(s)){r.push(Buffer.from(s.buffer,s.byteOffset,s.byteLength));continue}r.push(Buffer.from(String(s),"utf8"))}}}finally{typeof e.releaseLock=="function"&&e.releaseLock()}return r.length?Buffer.concat(r):Buffer.alloc(0)}async function hhr(t){if(t==null)return Buffer.alloc(0);if(Buffer.isBuffer(t))return t;if(t instanceof ArrayBuffer)return Buffer.from(t);if(ArrayBuffer.isView(t))return Buffer.from(t.buffer,t.byteOffset,t.byteLength);if(typeof t=="string")return Buffer.from(t,"utf8");if(typeof Blob=="function"&&t instanceof Blob){let e=await t.arrayBuffer();return Buffer.from(e)}return typeof t.getReader=="function"?mhr(t):Buffer.from(String(t),"utf8")}var Aw=class{constructor(e=void 0){if(this._map=new Map,!!e){if(typeof e.forEach=="function"){e.forEach((r,n)=>this.set(n,r));return}if(Array.isArray(e)){e.forEach(([r,n])=>this.set(r,n));return}typeof e=="object"&&Object.entries(e).forEach(([r,n])=>this.set(r,n))}}set(e,r){this._map.set(String(e).toLowerCase(),String(r))}get(e){let r=this._map.get(String(e).toLowerCase());return r===void 0?null:r}has(e){return this._map.has(String(e).toLowerCase())}delete(e){this._map.delete(String(e).toLowerCase())}forEach(e,r=void 0){for(let[n,s]of this._map.entries())e.call(r,s,n,this)}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}},eae=class t{constructor(e,r={}){this.url=String(e||""),this.method=String(r.method||"GET").toUpperCase();let n=globalThis.Headers||Aw;this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this._bodyBuffer=phr(r.body)}clone(){return new t(this.url,{method:this.method,headers:Object.fromEntries(this.headers.entries()),body:this._bodyBuffer})}async text(){return this._bodyBuffer.toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){return this._bodyBuffer.buffer.slice(this._bodyBuffer.byteOffset,this._bodyBuffer.byteOffset+this._bodyBuffer.byteLength)}},tae=class{constructor(e=null,r={}){let n=globalThis.Headers||Aw;this.status=Number(r.status||200),this.statusText=String(r.statusText||""),this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this.ok=this.status>=200&&this.status<300,this.body=e,this.bodyUsed=!1,this._bodyBuffer=null,this._bodyBufferPromise=null}async _ensureBodyBuffer(){return this._bodyBuffer?this._bodyBuffer:(this._bodyBufferPromise||(this._bodyBufferPromise=hhr(this.body).then(e=>(this._bodyBuffer=e,this.bodyUsed=!0,e))),this._bodyBufferPromise)}async text(){return(await this._ensureBodyBuffer()).toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){let e=await this._ensureBodyBuffer();return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}};function ghr(){_it||(typeof globalThis.Headers!="function"&&(globalThis.Headers=Aw),typeof globalThis.Response!="function"&&(globalThis.Response=tae),typeof globalThis.Request!="function"&&(globalThis.Request=eae),_it=!0,_i("installWebApiPolyfills()",{hasFetch:typeof globalThis.fetch=="function",hasRequest:typeof globalThis.Request=="function",hasHeaders:typeof globalThis.Headers=="function",hasResponse:typeof globalThis.Response=="function"}))}async function Sit(t,e={}){let r=await Ae({url:t,method:e.method||"GET",headers:e.headers||{},data:e.body,signal:e.signal,responseType:"arraybuffer",validateStatus:()=>!0,timeout:1e4}),n=Buffer.from(r.data),s={};return Object.entries(r.headers||{}).forEach(([i,a])=>{s[i]=String(a)}),{ok:r.status>=200&&r.status<300,status:r.status,statusText:r.statusText||"",headers:new Headers(s),url:String(t),async text(){return n.toString("utf8")},async json(){return JSON.parse(n.toString("utf8"))},async arrayBuffer(){return n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}}}function Ahr(){_i("installPatches()",{hasFetch:typeof globalThis.fetch=="function"}),Ug=globalThis.fetch,globalThis.fetch=function(e,r){return y4>0?Sit(e,r):typeof Ug=="function"?Ug(e,r):Sit(e,r)}}function rae(){if(_i("uninstallPatches()",{hasOriginalFetch:!!Ug}),typeof Ug=="function")globalThis.fetch=Ug;else try{delete globalThis.fetch}catch{globalThis.fetch=void 0}Ug=null}function wit(t=9321){if(aE=t,ghr(),dhr(),ihr(),iE=Zie(),_i("loadDanmuEnv()",{source:"process.env + persisted store",adminTokenFallback:iE.ADMIN_TOKEN==="douer",persistedEnvStorePath:Nc,persistedOverrides:Object.keys(Tn.overrides).length,persistedDeletedKeys:Tn.deletedKeys.length}),_i("start()",{port:t,alreadyRunning:!!wu,node:process.version,platform:`${process.platform}/${process.arch}`,v8:process.versions?.v8,dynamicCode:nhr()}),!wu){Ahr();try{wu=Iit.default.createServer(async(e,r)=>{y4++;let n=`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,s=Date.now();_i(`[${n}] inbound`,{method:e.method,url:e.url,host:e.headers.host,remote:e.socket?.remoteAddress||"unknown"});try{let i=`http://${e.headers.host||`127.0.0.1:${t}`}${e.url}`,a=(()=>{try{return new URL(i).pathname||""}catch{return String(e.url||"")}})(),o=e.method==="GET"&&a.endsWith("/api/config"),c;(e.method==="POST"||e.method==="PUT")&&(c=await new Promise(p=>{let m="";e.on("data",h=>m+=h),e.on("end",()=>p(m))}));let u=new Request(i,{method:e.method,headers:Object.fromEntries(Object.entries(e.headers).map(([p,m])=>[p,String(m)])),body:c||void 0}),l={...iE},d=await Eit(u,l,"node",e.socket?.remoteAddress||"unknown");_i(`[${n}] worker done`,{status:d.status}),r.statusCode=d.status,d.headers.forEach((p,m)=>{let h=m.toLowerCase();h!=="content-encoding"&&h!=="content-length"&&r.setHeader(m,p)});let f;if(o){let p=await d.text();try{let m=JSON.parse(p),h=uhr(m,l);f=Buffer.from(JSON.stringify(h),"utf8")}catch{f=Buffer.from(p||"","utf8")}}else f=Buffer.from(await d.arrayBuffer());r.setHeader("Content-Length",f.length),r.end(f)}catch(i){hw(`[${n}] request failed`,{message:i?.message||String(i),stack:i?.stack||""}),r.statusCode=500,r.end("Internal Server Error")}finally{_i(`[${n}] complete`,{costMs:Date.now()-s}),y4--}}),wu.listen(t,"0.0.0.0",()=>{let e=wu?.address?.();_i("listen ok",{address:e})}),wu.on("error",e=>{hw("server error",{message:e?.message||String(e),code:e?.code}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),rae(),wu=null})}catch(e){hw("start() failed",{message:e?.message||String(e),stack:e?.stack||""}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),rae()}}}function Rit(){_i("stop()",{hasServer:!!wu,port:aE}),wu&&(wu.close(),wu=null),fhr(),rae()}function qcn(){return aE}function vit(t){let e=String(t||"").trim().toLowerCase();return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function yhr(t){let e=String(t||"").trim();if(!e)return"";try{return new URL(e).hostname||""}catch{try{return new URL(`http://${e}`).hostname||""}catch{return e.replace(/^\w+:\/\//,"").split("/")[0].split(":")[0].trim()}}}function xhr(t){let e=yhr(t);if(e&&!vit(e))return e;let r=String(k0()||"").trim();return r&&!vit(r)?r:"127.0.0.1"}function bhr(t){let e=Number.parseInt(String(t??""),10);return Number.isFinite(e)&&e>0?e:aE}function sae(t,e=aE){let r=xhr(t),n=bhr(e);return`http://${r}:${n}`}function iae(t,e=aE){let r=sae(t,e),n=String(Ehr()||"").trim();return n?`${r}/${encodeURIComponent(n)}`:r}function Ehr(){return String(iE?.ADMIN_TOKEN||"").trim()||"douer"}function Shr(t){return yw.default.enc.Utf8.stringify(yw.default.enc.Base64.parse(t))}function Nit(t){return yw.default.enc.Base64.stringify(yw.default.enc.Utf8.parse(t))}function Dit(t){return String(t||"").split(",")[0].trim()}function Oit(t){return Dit(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function Pit(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function b4(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=Oit(t?.headers?.["x-forwarded-host"])||Oit(t?.headers?.host),s=Dit(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http",a=s||String(t?.protocol||"").trim()||i;if(n&&!Pit(n))return`${a}://${n}`;let o=String(k0()||"").trim(),c=Number.parseInt(String(t?.server?.address?.()?.port||""),10);return o&&!Pit(o)?Number.isFinite(c)&&c>0?`${a}://${o}:${c}`:`${a}://${o}`:e}async function vhr(t,e){return{}}async function Ihr(t,e){return{class:[{type_id:"setting",type_name:`${b4(t)}/website`}]}}async function Chr(t,e){let r=b4(t),n=r+t.server.prefix+"/proxy",s=iae(r);return{page:1,pagecount:1,limit:1,total:1,list:[{vod_id:"openInternalWebsite",vod_name:"\u901A\u7528\u914D\u7F6E",vod_pic:n+"/"+Nit(`${r}/website`)},{vod_id:"builtinDanmuApiQr",vod_name:"\u5F39\u5E55\u670D\u52A1",vod_pic:n+"/"+Nit(s)}]}}async function Thr(t,e){if(t.body.id==="openInternalWebsite"){let r=b4(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:`${r}/website`}}),{list:[{vod_name:"",vod_content:""}]}}if(t.body.id==="builtinDanmuApiQr"){let r=b4(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:iae(r)}}),{list:[{vod_name:"",vod_content:""}]}}return{list:[{vod_name:"",vod_content:""}]}}async function whr(t,e){let r=t.params.img,n=Shr(r),s=await kit.default.toBuffer(n,{width:120,height:120,margin:15});e.send(s)}var Bit={meta:{key:"baseset",name:"\u300C\u8BBE\u300D\u914D\u7F6E",type:3},api:async t=>{t.post("/init",vhr),t.post("/home",Ihr),t.post("/category",Chr),t.post("/detail",Thr),t.get("/proxy/:img",whr)}};var Rhr=["https://666.666291.xyz","https://www.muou.asia","https://www.muou.site"],aae=async t=>(await t.db.getObjectDefault("/muou",{}))?.urls||t.config.muou?.urls||Rhr,Nhr=async(t,e)=>{await t.db.push("/muou/urls",e)},Ohr=async t=>{await t.db.delete("/muou/urls")};async function oae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await aae(e.server)})}),t.put("/urls",async(e,r)=>{await Nhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Ohr(e.server),r.send({code:0})})}var cae,E4=t=>{if(!cae){let e=Date.now();cae=new Promise(async r=>{let n=await aae(t),s=await Xn(n);console.log("\u6728\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return cae};async function uae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Phr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EAA\u5F55"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"25",type_name:"115"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[29]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[25]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function khr(t,e){let r=await E4(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`),i.by&&(o+=`/by/${i.by}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let c=await uae(o,Gr),u=Me(c),l=u("#main .module-item"),d=[];for(var f of l){let h=u(f).find(".module-item-pic a").attr("href"),A=u(f).find(".module-item-pic img").attr("alt"),g=u(f).find(".module-item-pic img").attr("data-src"),b=u(f).find(".module-item-text").text();d.push({vod_id:h,vod_name:A,vod_pic:g,vod_remarks:b})}let m=u("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:m,limit:72,total:72*m,list:d}}async function Dhr(t,e){let r=await E4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await uae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function Bhr(t,e){let r=await E4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await uae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Lit={meta:{key:"muou",name:"\u300C\u76D8\u300D\u6728\u5076",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Phr),t.post("/category",khr),t.post("/detail",Dhr),t.post("/play",Nr),t.post("/search",Bhr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:E4};var Lhr=["http://xiaocge.fun","http://xiaocgege.shop"],lae=async t=>(await t.db.getObjectDefault("/labi",{}))?.urls||t.config.labi?.urls||Lhr,Mhr=async(t,e)=>{await t.db.push("/labi/urls",e)},Whr=async t=>{await t.db.delete("/labi/urls")};async function dae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await lae(e.server)})}),t.put("/urls",async(e,r)=>{await Mhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Whr(e.server),r.send({code:0})})}var fae,_4=t=>{if(!fae){let e=Date.now();fae=new Promise(async r=>{let n=await lae(t),s=await Xn(n);console.log("\u8721\u7B14\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return fae};async function pae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function $hr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"24",type_name:"4K"},{type_id:"29",type_name:"\u81FB\u5F69"},{type_id:"5",type_name:"\u77ED\u5267"}],filters:{}}}async function Fhr(t,e){let r=await _4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await pae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Uhr(t,e){let r=await _4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await pae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function qhr(t,e){let r=await _4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await pae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Mit={meta:{key:"labi",name:"\u300C\u76D8\u300D\u8721\u7B14",type:3},api:async t=>{t.post("/init",qr),t.post("/home",$hr),t.post("/category",Fhr),t.post("/detail",Uhr),t.post("/play",Nr),t.post("/search",qhr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:_4};var jhr=["http://shandian.blog","http://sd.sduc.site"],mae=async t=>(await t.db.getObjectDefault("/shandian",{}))?.urls||t.config.shandian?.urls||jhr,Hhr=async(t,e)=>{await t.db.push("/shandian/urls",e)},Qhr=async t=>{await t.db.delete("/shandian/urls")};async function hae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await mae(e.server)})}),t.put("/urls",async(e,r)=>{await Hhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Qhr(e.server),r.send({code:0})})}var gae,S4=t=>{if(!gae){let e=Date.now();gae=new Promise(async r=>{let n=await mae(t),s=await Xn(n);console.log("\u95EA\u7535\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return gae};async function Aae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Ghr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"30",type_name:"\u77ED\u5267"}],filters:{}}}async function Khr(t,e){let r=await S4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await Aae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Vhr(t,e){let r=await S4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Aae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function zhr(t,e){let r=await S4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Aae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Wit={meta:{key:"shandian",name:"\u300C\u76D8\u300D\u95EA\u7535",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Ghr),t.post("/category",Khr),t.post("/detail",Vhr),t.post("/play",Nr),t.post("/search",zhr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:S4};var Yhr=["https://woog.nxog.eu.org"],yae=async t=>(await t.db.getObjectDefault("/ouge",{}))?.urls||t.config.ouge?.urls||Yhr,Jhr=async(t,e)=>{await t.db.push("/ouge/urls",e)},Xhr=async t=>{await t.db.delete("/ouge/urls")};async function xae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await yae(e.server)})}),t.put("/urls",async(e,r)=>{await Jhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Xhr(e.server),r.send({code:0})})}var bae,v4=t=>{if(!bae){let e=Date.now();bae=new Promise(async r=>{let n=await yae(t),s=await Xn(n);console.log("\u6B27\u54E5\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return bae};async function Eae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Zhr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"21",type_name:"\u7EFC\u5408"}],filters:{}}}async function egr(t,e){let r=await v4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await Eae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function tgr(t,e){let r=await v4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Eae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function rgr(t,e){let r=await v4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Eae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var $it={meta:{key:"ouge",name:"\u300C\u76D8\u300D\u6B27\u6B4C",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Zhr),t.post("/category",egr),t.post("/detail",tgr),t.post("/play",Nr),t.post("/search",rgr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:v4};var ngr=["https://www.wexwp.cc","https://www.erxiaozhan.top","https://www.2xiaopan.top","https://www.2xiaozhan.top"],_ae=async t=>(await t.db.getObjectDefault("/erxiao",{}))?.urls||t.config.erxiao?.urls||ngr,sgr=async(t,e)=>{await t.db.push("/erxiao/urls",e)},igr=async t=>{await t.db.delete("/erxiao/urls")};async function Sae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await _ae(e.server)})}),t.put("/urls",async(e,r)=>{await sgr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await igr(e.server),r.send({code:0})})}var vae,I4=t=>{if(!vae){let e=Date.now();vae=new Promise(async r=>{let n=await _ae(t),s=await Xn(n);console.log("\u4E8C\u5C0F\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return vae};async function Iae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function agr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"22",type_name:"\u771F\u5F69"},{type_id:"21",type_name:"\u7EFC\u827A"}],filters:{}}}async function ogr(t,e){let r=await I4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await Iae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function cgr(t,e){let r=await I4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Iae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function ugr(t,e){let r=await I4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Iae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Fit={meta:{key:"erxiao",name:"\u300C\u76D8\u300D\u4E8C\u5C0F",type:3},api:async t=>{t.post("/init",qr),t.post("/home",agr),t.post("/category",ogr),t.post("/detail",cgr),t.post("/play",Nr),t.post("/search",ugr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:I4};var lgr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",dgr="https://img.icons8.com/color/48/video.png",fgr="https://img.icons8.com/color/48/file.png",pgr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],mgr=[".srt",".ass",".scc",".stl",".ttml"];async function hgr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Uit(t){return t?.dir===!0||t?.dir===1||t?.type==="dir"||t?.type==="folder"}function qit(t){let e=String(t?.file_name||"").toLowerCase();return t?.obj_category==="video"||pgr.some(r=>e.endsWith(r))}function ggr(t){let e=String(t?.file_name||"").toLowerCase();return mgr.some(r=>e.endsWith(r))}function Agr(t,e){return`folder@@@${t}@@@${e}`}function ygr(t){let e=["own","",t.fid,"",t.subtitle?t.subtitle.fid:"",t.subtitle&&t.subtitle.share_fid_token||""];return`file@@@${t.file_name}@@@${e.join("*")}`}async function xgr(t,e,r=1){let n=[],s=[],i=await dBe(t,e||"0",r);i.forEach(o=>{let c=Uit(o),u=o.file===!0||o.file===1||o.type==="file";if(!c){if(u&&qit(o)){if(Number(o.size||0)<1024*1024*5)return;n.push(o);return}u&&ggr(o)&&s.push(o)}}),s.length>0&&n.forEach(o=>{let c=ml({name:o.file_name},s.map(u=>({...u,name:u.file_name})));c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return i.forEach(o=>{let c=Uit(o);if(!c&&!qit(o))return;let u=String(o.file_name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=fgr;c?l=lgr:l=dgr,a.push({vod_id:c?Agr(u,o.fid):ygr(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":Hi(Number(o.size||0)),...c?{cate:{id:o.fid,name:u}}:{},ratio:1.33})}),{rawCount:i.length,list:a}}async function bgr(t,e){return await kv(t),{}}async function Egr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684\u5938\u514B\u7F51\u76D8"}]}}async function _gr(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await xgr(t,r==="0"?"0":r,n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function Sgr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await hgr("quark","\u5938\u514B");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function vgr(t,e){return await _3(t,e)}async function Igr(t,e){return{page:1,pagecount:1,list:[]}}async function Cgr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var jit={meta:{key:"myquark",name:"\u300C\u76D8\u300D\u5938\u514B",type:3},api:async t=>{t.post("/init",bgr),t.post("/home",Egr),t.post("/category",_gr),t.post("/detail",Sgr),t.post("/play",vgr),t.post("/search",Igr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",E3),t.get("/test",Cgr)}};var Tgr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",wgr="https://img.icons8.com/color/48/video.png",Rgr="https://img.icons8.com/color/48/file.png",Ngr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],Ogr=[".srt",".ass",".scc",".stl",".ttml"];async function Pgr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function kgr(t){return t?.type==="folder"}function Hit(t){let e=`.${String(t?.file_extension||"").toLowerCase()}`;return t?.category==="video"||Ngr.includes(e)}function Dgr(t,e){return`folder@@@${t}@@@${e}`}function Bgr(t){return`file@@@${t.name}@@@own*${t.file_id}*${t.subtitle?t.subtitle.file_id:""}`}async function Lgr(t,e){let r=[],n=[],s=[],i="";do{let o=await J3e(t,e||"root",i);s.push(...Array.isArray(o.items)?o.items:[]),i=String(o.next_marker||"")}while(i);s.forEach(o=>{if(o.type==="file"&&Hit(o)){if(Number(o.size||0)<1024*1024*5)return;r.push(o);return}let c=String(o.file_extension||"").toLowerCase();o.type==="file"&&Ogr.some(u=>c.endsWith(u))&&n.push(o)}),n.length>0&&r.forEach(o=>{let c=ml(o,n);c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return s.forEach(o=>{let c=kgr(o);if(!c&&!Hit(o))return;let u=String(o.name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=Rgr;c?l=Tgr:l=wgr,a.push({vod_id:c?Dgr(u,o.file_id):Bgr(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":Hi(Number(o.size||0)),...c?{cate:{id:o.file_id,name:u}}:{},ratio:1.33})}),a}async function Mgr(t,e){return await Pv(t),{}}async function Wgr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u963F\u91CC\u7F51\u76D8"}]}}async function $gr(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"root");let n=Number.parseInt(t.body.page,10)||1,s=await Lgr(t,r||"root");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function Fgr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Pgr("ali","\u963F\u91CC");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function Ugr(t,e){return await A3(t,e)}async function qgr(t,e){return{page:1,pagecount:1,list:[]}}async function jgr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Qit={meta:{key:"myali",name:"\u300C\u76D8\u300D\u963F\u91CC",type:3},api:async t=>{t.post("/init",Mgr),t.post("/home",Wgr),t.post("/category",$gr),t.post("/detail",Fgr),t.post("/play",Ugr),t.post("/search",qgr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",g3),t.get("/test",jgr)}};var Kit="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Hgr="https://img.icons8.com/color/48/video.png",Qgr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],C4=100,Ggr=5,Kgr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36";async function Git(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Vgr(t){if(Number(t?.mediaType)===3)return!0;let e=String(t?.name||t?.fileName||"").toLowerCase();return Qgr.some(r=>e.endsWith(r))}function Cae(t){return String(t?.name||t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Tae(t){return String(t?.id||t?.fileId||t?.folderId||t?.fileID||t?.fId||"")}function zgr(t){return Number(t?.size||t?.fileSize||0)}function Ygr(t,e){return`folder@@@${t}@@@${e}`}function Jgr(t){return`file@@@${Cae(t)}@@@own*${Tae(t)}`}function Xgr(t){return String(t?.vod_id||"").startsWith("file@@@")}function Zgr(t){let e=String(t?.vod_id||"").split("@@@"),r=e[1]||t?.vod_name||"\u89C6\u9891\u64AD\u653E",n=e[2]||"";return n?`${r}$${n}`:""}function wae(t,e=4,r=4){let n=String(t||"").trim();return n?n.length<=e+r+1?n:`${n.slice(0,e)}...${n.slice(-r)}`:""}function eAr(t){return wae(t,36,10)}async function Vit(t,e="-11",r=1){await rb(t);let n=await tf.listOwnFiles(e,r,C4),s=[];return(n.folderList||[]).forEach(i=>{let a=Tae(i);if(!a)return;let o=Cae(i);s.push({vod_id:Ygr(o,a),vod_name:o,vod_pic:Kit,vod_remarks:"\u76EE\u5F55",cate:{id:a,name:o},ratio:1.33})}),(n.fileList||[]).forEach(i=>{if(!Tae(i)||!Vgr(i))return;let a=Cae(i);s.push({vod_id:Jgr(i),vod_name:a,vod_pic:Hgr,vod_remarks:Hi(zgr(i)),ratio:1.33})}),{rawCount:Number(n.count||0),list:s}}async function tAr(t,e){return await rb(t),{}}async function rAr(t,e){return{class:[{type_id:"-11",type_name:"\u6211\u7684\u5929\u7FFC\u4E91\u76D8"}]}}async function nAr(t,e){let r=String(t.body.id||"-11");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"-11");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await Vit(t,r||"-11",n);return{page:n,pagecount:s>=C4?n+1:n,limit:C4,total:9999,list:i}}async function sAr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@")){let o=r.split("@@@"),c=o[1]||"\u76EE\u5F55",u=o[2]||"-11",l=[],d=1;for(;d<=Ggr;){let{rawCount:f,list:p}=await Vit(t,u,d);if(l.push(...p.filter(Xgr)),f<C4)break;d+=1}if(l.length>0){let f=await Git("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:c,vod_pic:Kit,vod_remarks:`${l.length}\u4E2A\u89C6\u9891`,vod_content:`\u76EE\u5F55: ${c}`,vod_play_from:f,vod_play_url:l.map(Zgr).filter(Boolean).join("#")}]}}return{list:[{vod_id:r,vod_name:c,vod_remarks:"\u76EE\u5F55",vod_content:"\u5F53\u524D\u76EE\u5F55\u6CA1\u6709\u53EF\u64AD\u653E\u89C6\u9891"}]}}let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Git("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function iAr(t,e){await rb(t);let r=Date.now(),n=String(t.body.id||""),s=n.split("*"),i=wae(n,8,6),a=wae(s[1],4,4);if(console.log("[mytianyi][play] request",{rawId:i,source:s[0]||"",fileId:a}),s[0]!=="own"||!s[1])return console.warn("[mytianyi][play] invalid params",{rawId:i,source:s[0]||"",hasFileId:!!s[1]}),{parse:0,url:"",msg:"\u5929\u7FFC\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let o=await tf.getOwnDownload(s[1]),c=String(o?.url||"").trim();return c?(console.log("[mytianyi][play] success",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,urlPreview:eAr(c),costMs:Date.now()-r}),{parse:0,url:["\u539F\u753B",c],header:{"User-Agent":Kgr}}):(console.warn("[mytianyi][play] empty download url",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,resMsg:o?.data?.res_message||"",costMs:Date.now()-r}),{parse:0,url:"",msg:"\u5929\u7FFC\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"})}catch(o){return console.error("[mytianyi][play] failed",{fileId:a,rawId:i,costMs:Date.now()-r,message:String(o?.message||o),stack:String(o?.stack||"").split(`
`).slice(0,2).join(" | ")}),{parse:0,url:"",msg:`\u5929\u7FFC\u63A5\u53E3\u5F02\u5E38: ${o?.message||o}`}}}async function aAr(t,e){return{page:1,pagecount:1,list:[]}}async function oAr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var zit={meta:{key:"mytianyi",name:"\u300C\u76D8\u300D\u5929\u7FFC",type:3},api:async t=>{t.post("/init",tAr),t.post("/home",rAr),t.post("/category",nAr),t.post("/detail",sAr),t.post("/play",iAr),t.post("/search",aAr),t.get("/test",oAr)}};var cAr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",uAr="https://img.icons8.com/color/48/video.png",lAr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function dAr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function fAr(t){return encodeURIComponent(String(t||""))}function pAr(t){return Number(t?.isdir)===1||Number(t?.category)===6}function mAr(t){if(Number(t?.category)===1)return!0;let e=String(t?.server_filename||t?.path||"").toLowerCase();return lAr.some(r=>e.endsWith(r))}function Yit(t){return String(t?.server_filename||t?.path?.split("/").pop()||"\u672A\u77E5").trim()||"\u672A\u77E5"}function hAr(t,e){return`folder@@@${t}@@@${e}`}function gAr(t){let e=Yit(t),r=String(t?.fs_id||t?.fsid||""),n=String(t?.path||"");return`file@@@${e}@@@own*${r}*${fAr(n)}`}async function AAr(t,e="/",r=1){let{list:n,rawCount:s}=await z6e(t,e||"/",r);return{rawCount:s,list:n.reduce((i,a)=>{let o=pAr(a);if(!o&&!mAr(a))return i;let c=Yit(a);return i.push({vod_id:o?hAr(c,String(a?.path||"/")):gAr(a),vod_name:c,vod_pic:o?cAr:uAr,vod_remarks:o?"\u76EE\u5F55":Hi(Number(a?.size||0)),...o?{cate:{id:String(a?.path||"/"),name:c}}:{},ratio:1.33}),i},[])}}async function yAr(t,e){return await sb(t),{}}async function xAr(t,e){return{class:[{type_id:"/",type_name:"\u6211\u7684\u767E\u5EA6\u7F51\u76D8"}]}}async function bAr(t,e){let r=String(t.body.id||"/");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"/");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await AAr(t,r||"/",n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function EAr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55",vod_remarks:"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await dAr("baidu","\u767E\u5EA6");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function _Ar(t,e){return await uB(t,e)}async function SAr(t,e){return{page:1,pagecount:1,list:[]}}async function vAr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Jit={meta:{key:"mybaidu",name:"\u300C\u76D8\u300D\u767E\u5EA6",type:3},api:async t=>{t.post("/init",yAr),t.post("/home",xAr),t.post("/category",bAr),t.post("/detail",EAr),t.post("/play",_Ar),t.post("/search",SAr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",lB),t.get("/test",vAr)}};var IAr="115Drive",Xit="https://img.icons8.com/fluency/96/folder-invoices--v1.png",CAr="https://img.icons8.com/color/48/video.png",TAr={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5","X-Requested-With":"XMLHttpRequest",Origin:"https://115.com"};async function wAr(t,e="0",r=1){let n=await O0(t);if(!n)return{list:[],count:0};let s=Number.parseInt(r,10)||1,i=115,a=(s-1)*i,o=`https://webapi.115.com/files?aid=1&cid=${encodeURIComponent(e)}&o=user_ptime&asc=0&offset=${a}&show_dir=1&limit=${i}&code=&scid=&snap=0&natsort=1&record_open_time=1&source=&format=json`;try{let u=(await he.get(o,{headers:{...TAr,Cookie:n}}))?.data;if(u?.state)return{list:Array.isArray(u.data)?u.data:[],count:Number.parseInt(u.count,10)||0}}catch(c){console.error("[my115] list error:",c.message)}return{list:[],count:0}}function RAr(t){return encodeURIComponent(String(t||""))}function NAr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function OAr(t,e,r){return`LOCAL###${t}###${RAr(e)}###${r}`}function Zit(t){let e=String(t||"");if(!e.startsWith("LOCAL###"))return{id:e,name:"115\u8D44\u6E90",value:e,kind:"file",isOwn:!1};let r=e.split("###");if(r.length>=4&&["dir","file"].includes(r[1]))return{id:e,kind:r[1],name:NAr(r[2])||"115\u8D44\u6E90",value:r.slice(3).join("###"),isOwn:!0};let[,n="115\u8D44\u6E90",s=""]=r;return{id:e,name:n,value:s,kind:/^\d+$/.test(s)?"dir":"file",isOwn:!0}}function PAr(t){let e=Number(t.fc)===0,r=String(t.n||t.name||"\u672A\u77E5").trim()||"\u672A\u77E5",n=String(e?t.cid||"":t.pc||t.pick_code||"");return{vod_id:OAr(e?"dir":"file",r,n),vod_name:r,vod_pic:e?Xit:CAr,vod_remarks:e?"\u76EE\u5F55":Hi(Number(t.s||t.size||0)),...e?{cate:{id:n,name:r}}:{},ratio:1.33}}async function kAr(t,e){return{}}async function DAr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684115\u7F51\u76D8"}]}}async function BAr(t,e){let r=String(t.body.id||"0");r.startsWith("LOCAL###")&&(r=Zit(r).value||"0");let n=Number.parseInt(t.body.page,10)||1,{list:s,count:i}=await wAr(t.server,r,n);return{page:n,pagecount:Math.max(1,Math.ceil(i/115)),limit:115,total:i,list:s.map(PAr)}}async function LAr(t,e){return{list:(Array.isArray(t.body.id)?t.body.id:[t.body.id]).map(s=>{let i=Zit(s);return i.isOwn?i.kind==="dir"?{vod_id:i.id,vod_name:i.name||"\u76EE\u5F55",vod_pic:Xit,vod_remarks:"\u76EE\u5F55",vod_content:`\u76EE\u5F55: ${i.name||"115\u8D44\u6E90"}`}:{vod_id:i.id,vod_name:i.name,vod_content:`\u6587\u4EF6\u540D: ${i.name}`,vod_play_from:IAr,vod_play_url:`OWN$${i.value}`}:{vod_id:i.id,vod_name:"115\u8D44\u6E90"}})}}async function MAr(t,e){let r=String(t.body.id||"").trim(),n=r.startsWith("OWN$")?r.slice(4):r;return n?await oB(t.server,n):{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"}}async function WAr(t,e){return{page:1,pagecount:1,list:[]}}async function $Ar(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var eat={meta:{key:"my115",name:"\u300C\u76D8\u300D115",type:3},api:async t=>{t.post("/init",kAr),t.post("/home",DAr),t.post("/category",BAr),t.post("/detail",LAr),t.post("/play",MAr),t.post("/search",WAr),t.get("/test",$Ar)}};var FAr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",UAr="https://img.icons8.com/color/48/video.png",qAr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function jAr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function HAr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function QAr(t){return t?.data??t??{}}function GAr(t){let e=QAr(t);return[e.InfoList,e.infoList,e.list,t?.InfoList,t?.infoList,t?.list].find(n=>Array.isArray(n))||[]}function Nae(t){return String(t?.FileName||t?.file_name||t?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Rae(t){return String(t?.FileId||t?.fileId||t?.file_id||"")}function tat(t){return Number(t?.Size||t?.size||0)}function KAr(t){return String(t?.S3KeyFlag||t?.s3KeyFlag||"")}function VAr(t){return String(t?.Etag||t?.etag||"")}function zAr(t){return Number(t?.Category)===0||Number(t?.Type)===1||t?.type==="folder"}function YAr(t){let e=Nae(t).toLowerCase();return Number(t?.Category)===2||qAr.some(r=>e.endsWith(r))}function JAr(t,e){return`folder@@@${t}@@@${e}`}function XAr(t){let e=Nae(t),r=["own",Rae(t),KAr(t),String(tat(t)),VAr(t),encodeURIComponent(e)];return`file@@@${e}@@@${r.join("*")}`}async function ZAr(t,e="0"){await nb(t);let r=await N0.getrootmyfile(e||"0"),n=GAr(r),s=[];return n.forEach(i=>{let a=zAr(i);if(!a&&!YAr(i))return;let o=Nae(i);s.push({vod_id:a?JAr(o,Rae(i)):XAr(i),vod_name:o,vod_pic:a?FAr:UAr,vod_remarks:a?"\u76EE\u5F55":Hi(tat(i)),...a?{cate:{id:Rae(i),name:o}}:{},ratio:1.33})}),s}async function eyr(t,e){return await nb(t),{}}async function tyr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684123\u7F51\u76D8"}]}}async function ryr(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,s=await ZAr(t,r||"0");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function nyr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await jAr("123","123");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function syr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||r.length<5)return{parse:0,url:"",msg:"123 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};await nb(t);try{let n=await N0.getmyDownload(r[1],r[2],r[3],r[4],HAr(r[5]||""));return n?{parse:0,url:["\u539F\u753B",n]}:{parse:0,url:"",msg:"123 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`123 \u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function iyr(t,e){return{page:1,pagecount:1,list:[]}}async function ayr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var rat={meta:{key:"my123",name:"\u300C\u76D8\u300D123",type:3},api:async t=>{t.post("/init",eyr),t.post("/home",tyr),t.post("/category",ryr),t.post("/detail",nyr),t.post("/play",syr),t.post("/search",iyr),t.get("/test",ayr)}};var iat="https://pan1.me";function nat(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function aat(t){return String(t||"").trim().replace(/\/+$/,"")||iat}var oat=async(t,e,r)=>{let n=await t.db.getObjectDefault("/123ypzysq",{});if(nat(n,e))return n[e];let s=t.config?.["123ypzysq"]||{};return nat(s,e)?s[e]:r},oyr=async t=>aat(await oat(t,"url",iat)),cyr=async t=>String(await oat(t,"cookie","")||"").trim(),Oae=async t=>({url:await oyr(t),cookie:await cyr(t)}),sat=async(t,e,r)=>{await t.db.push(`/123ypzysq/${e}`,r)},uyr=async t=>{await t.db.delete("/123ypzysq")};async function Pae(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await Oae(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await sat(e.server,"url",aat(n.url)),await sat(e.server,"cookie",String(n.cookie||"").trim()),r.send({code:0})}),t.delete("/config",async(e,r)=>{await uyr(e.server),r.send({code:0})})}var T4="https://pan1.me",lyr=["CATPAW_123YPZYSQ_COOKIE","PAN1_ME_COOKIE","YPZYSQ_COOKIE"],dyr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",fyr=/https?:\/\/[A-Za-z0-9._~:/?#[\]@!$&'()*+,;=%-]+/g,pyr=/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/i,dat=[{type_id:"2",type_name:"\u7535\u5F71"},{type_id:"48",type_name:"\u7535\u89C6\u5267"},{type_id:"37",type_name:"\u52A8\u6F2B"},{type_id:"52",type_name:"\u7EFC\u827A"},{type_id:"56",type_name:"4K\u539F\u76D8"}],cat=["\u54C8\u54C8\uFF0C\u4E0D\u9519\u54E6\uFF01","\u4E0D\u9519\u7684\u5E16\u5B50\uFF01","\u975E\u5E38\u68D2\uFF01\uFF01\uFF01","\u611F\u8C22\u5206\u4EAB,\u592A\u68D2\u4E86\uFF01","\u8FD9\u4E0D\u6B63\u662F\u6211\u82E6\u82E6\u5BFB\u627E\u7684\u8D44\u6E90\u5417\uFF01","\u597D\u4EBA\u4E00\u80CE\u751F\u5341\u4E2A\uFF01","\u770B\u5B8C\u697C\u4E3B\u7684\u8FD9\u4E2A\u5E16\u5B50\u4EE5\u540E\uFF0C\u6211\u7684\u5FC3\u4E45\u4E45\u4E0D\u80FD\u5E73\u9759\uFF0C\u9707\u64BC\u554A\uFF01","\u4E3A\u4EC0\u4E48\u4F1A\u6709\u5982\u6B64\u597D\u7684\u5E16\u5B50\uFF01","\u864E\u8EAF\u4E00\u9707\uFF0C\u4E09\u5206\u8D70\u4EBA\u3002","\u6E2F\uFF0C\u662F\u4E00\u79CD\u7F8E\u5FB7\u3002","\u6D41\u6C13\u5E76\u4E0D\u53EF\u6015\uFF0C\u53EF\u6015\u7684\u662F\u6D41\u6C13\u6709\u6587\u5316\u3002","\u597D\u4EBA\u4E00\u80CE\u751F10086\u4E2A"];function Hf(t){return String(t||"").replace(/\s+/g," ").trim()}async function kae(t){let e=await Oae(t.server).catch(()=>({url:T4,cookie:""})),r=String(e.url||T4).trim().replace(/\/+$/,""),n=lyr.map(s=>process.env[s]).find(Boolean);return{baseUrl:r||T4,cookie:String(e.cookie||n||"").trim()}}function myr(t,e=!1){let r={"User-Agent":dyr,Referer:t.baseUrl,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"};return e&&(r.Origin=t.baseUrl,r["X-Requested-With"]="XMLHttpRequest",r["Content-Type"]="application/x-www-form-urlencoded"),t.cookie&&(r.Cookie=t.cookie),r}function fat(t,e=T4){let r=String(t||"").trim();return r?new URL(r,e).toString():""}async function xw(t,e,r,n={}){let s=await he.request({url:fat(t,r.baseUrl),method:n.method||"GET",headers:myr(r,n.ajax),data:n.data||void 0});return String(s?.data||"")}function pat(t){let e=String(t||"");return e.match(/thread-(\d+)/)?.[1]||e.match(/^\d+$/)?.[0]||""}function mat(t){let e=Me(t),r=[];return e("li.media.thread.tap").each((n,s)=>{let i=e(s),a=i.find('a[href*="thread-"]').first(),o=Hf(a.text()),c=i.attr("data-tid")||pat(a.attr("href"));if(!o||!c)return;let u=Hf(i.find(".date.text-grey").text()),l=i.find("a.badge.badge-pill.badge-dark").map((d,f)=>Hf(e(f).text())).get().filter(Boolean).join(" / ");r.push({vod_id:c,vod_name:o,vod_remarks:[l,u].filter(Boolean).join(" \xB7 "),topRightRemarks:l})}),{$:e,list:r}}function hat(t,e,r,n){let s=String(n||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=r==="search"?new RegExp(`search-${s}-(\\d+)\\.htm`):new RegExp(`forum-${s}-(\\d+)\\.htm`),a=Number.parseInt(e,10)||1;return t("a[href]").each((o,c)=>{let u=String(t(c).attr("href")||""),l=Number.parseInt(u.match(i)?.[1]||"",10);Number.isFinite(l)&&(a=Math.max(a,l))}),a}function hyr(){return cat[Math.floor(Math.random()*cat.length)]}async function gyr(t,e,r){if(r.cookie)try{let n=new URLSearchParams({doctype:"1",return_html:"1",quotepid:"0",message:hyr()}).toString();await xw(`/?post-create-${t}-1.htm`,e,r,{method:"POST",ajax:!0,data:n}),await new Promise(s=>setTimeout(s,500))}catch(n){console.warn("[123ypzysq] \u81EA\u52A8\u56DE\u590D\u5931\u8D25:",n?.message||n)}}function uat(t){return Hf(t).match(/(?:æå–ç |è®¿é—®ç |å¯†ç |code)[::\s]*([A-Za-z0-9]{4})/i)?.[1]||""}function Ayr(t){return String(t||"").replace(/&amp;/g,"&").replace(/[)\])】,,。;;\s]+$/g,"").trim()}function yyr(t,e){try{let r=new URL(t);return r.searchParams.has("pwd")||r.searchParams.set("pwd",e),r.toString()}catch{let n=t.includes("?")?"&":"?";return`${t}${n}pwd=${encodeURIComponent(e)}`}}function lat(t,e){let r=Ayr(t);return pyr.test(r)?e?yyr(r,e):r:""}function xyr(t){let e=t(".alert.alert-success").length?t(".alert.alert-success"):t(".post, .message, body"),r=new Set;return e.each((n,s)=>{let i=t(s),a=i.text(),o=uat(a);i.find("a[href]").each((c,u)=>{let l=t(u).attr("href"),d=uat(t(u).parent().text())||o,f=lat(l,d);f&&r.add(f)});for(let c of i.html()?.match(fyr)||[]){let u=lat(c,o);u&&r.add(u)}}),[...r]}function byr(t,e,r){let n={vod_id:e,vod_name:Hf(t(".movie-title").first().text())||Hf(t("h1, h2, .title").first().text())||"123\u4E91\u76D8\u8D44\u6E90",vod_pic:fat(t(".movie-poster img").first().attr("src")||"",r),vod_content:Hf(t(".plot-content").first().text())};return t(".detail-label").each((s,i)=>{let a=Hf(t(i).text()),o=Hf(t(i).next().text());o&&(a.includes("\u5E74\u4EFD")&&(n.vod_year=o),a.includes("\u7C7B\u578B")&&(n.vod_type=o),a.includes("\u5BFC\u6F14")&&(n.vod_director=o),a.includes("\u4E3B\u6F14")&&(n.vod_actor=o))}),n}async function Eyr(t,e){return await qr(t,e),{}}async function _yr(t,e){return{class:dat}}async function Syr(t,e){let r=String(t.body.id||dat[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=await kae(t),i=await xw(`/?forum-${r}-${n}.htm`,t,s),{$:a,list:o}=mat(i);return{page:n,pagecount:hat(a,n,"forum",r),limit:o.length,total:o.length,list:o}}async function vyr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[],s=await kae(t);for(let i of r){let a=pat(i);if(!a)continue;let o=await xw(`/?thread-${a}.htm`,t,s),c=Me(o);c(".alert.alert-warning").text().includes("\u8BF7\u56DE\u590D\u540E\u518D\u67E5\u770B")&&(await gyr(a,t,s),o=await xw(`/?thread-${a}.htm`,t,s),c=Me(o));let u=byr(c,a,s.baseUrl),l=xyr(c),d=l.length>0?await wr(l,t):null;d?.froms&&d?.urls&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls),!u.vod_content&&l.length>0&&(u.vod_content=`\u5171\u53D1\u73B0${l.length}\u4E2A123\u7F51\u76D8\u94FE\u63A5`),n.push(u)}return{list:n}}async function Iyr(t,e){let r=String(t.body.wd||"").trim(),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:1,list:[]};let s=encodeURIComponent(r),i=await kae(t),a=await xw(`/?search-${s}-${n}.htm`,t,i),{$:o,list:c}=mat(a);return{page:n,pagecount:hat(o,n,"search",s),limit:c.length,total:c.length,list:c}}async function Cyr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/home`);if(n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var gat={meta:{key:"123ypzysq",name:"\u300C\u76D8\u300D123\u793E\u533A",type:3},api:async t=>{t.post("/init",Eyr),t.post("/home",_yr),t.post("/category",Syr),t.post("/detail",vyr),t.post("/play",Nr),t.post("/search",Iyr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr),t.get("/test",Cyr)}};var Tyr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",wyr="https://img.icons8.com/color/48/video.png",Aat=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function Ryr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Nyr(t){return Number(t?.resType||0)===2}function Oyr(t){if(Number(t?.resType||0)!==1)return!1;let e=String(t?.ext||"").toLowerCase(),r=String(t?.mineType||"").toLowerCase(),n=String(t?.fileName||"").toLowerCase();return Number(t?.fileType||0)===2||r.startsWith("video/")||Aat.includes(e)||Aat.some(s=>n.endsWith(s))}function yat(t){return String(t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Dae(t){return String(t?.fileId||"")}function Pyr(t){return Number(t?.fileSize||t?.size||0)}function kyr(t,e){return`folder@@@${t}@@@${e}`}function Dyr(t){return`file@@@${yat(t)}@@@own*${Dae(t)}`}async function Byr(t,e=""){let r=await f5e(t,e||""),n=Array.isArray(r?.list)?r.list:[],s=[];return n.forEach(i=>{let a=Nyr(i);if(!a&&!Oyr(i))return;let o=yat(i);s.push({vod_id:a?kyr(o,Dae(i)):Dyr(i),vod_name:o,vod_pic:a?Tyr:String(i?.thumbnail||"").trim()||wyr,vod_remarks:a?"\u76EE\u5F55":Hi(Pyr(i)),...a?{cate:{id:Dae(i),name:o}}:{},ratio:1.33})}),{rawCount:n.length,total:Number(r?.total||n.length),list:s}}async function Lyr(t,e){return await cI(t),{}}async function Myr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u5149\u9E2D"}]}}async function Wyr(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||""),r==="root"&&(r="");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,total:i,list:a}=await Byr(t,r||"");return{page:n,pagecount:1,limit:s,total:Math.max(i,s),list:a}}async function $yr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Ryr("guangyapan","\u5149\u9E2D");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function Fyr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||!r[1])return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let n=await p5e(t,r[1]);return n?.url?{parse:0,url:["\u539F\u753B",n.url]}:{parse:0,url:"",msg:n?.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function Uyr(t,e){return{page:1,pagecount:1,list:[]}}async function qyr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var xat={meta:{key:"myguangyapan",name:"\u300C\u76D8\u300D\u5149\u9E2D",type:3},api:async t=>{t.post("/init",Lyr),t.post("/home",Myr),t.post("/category",Wyr),t.post("/detail",$yr),t.post("/play",Fyr),t.post("/search",Uyr),t.get("/test",qyr)}};var jyr=["http://103.217.192.130:16969"],Bae=async t=>(await t.db.getObjectDefault("/huban",{}))?.urls||t.config.huban?.urls||jyr,Hyr=async(t,e)=>{await t.db.push("/huban/urls",e)},Qyr=async t=>{await t.db.delete("/huban/urls")};async function Lae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Bae(e.server)})}),t.put("/urls",async(e,r)=>{await Hyr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Qyr(e.server),r.send({code:0})})}var Mae,w4=t=>{if(!Mae){let e=Date.now();Mae=new Promise(async r=>{let n=await Bae(t),s=await Xn(n);console.log("\u864E\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Mae};async function Wae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Gyr(t,e){return{class:[{type_id:"1",type_name:"\u98CE"},{type_id:"2",type_name:"\u82B1"},{type_id:"3",type_name:"\u96EA"},{type_id:"4",type_name:"\u6708"},{type_id:"5",type_name:"\u7CBE"},{type_id:"6",type_name:"\u77ED"},{type_id:"30",type_name:"115"}],filters:{}}}async function Kyr(t,e){let r=await w4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await Wae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Vyr(t,e){let r=await w4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Wae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function zyr(t,e){let r=await w4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Wae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var bat={meta:{key:"huban",name:"\u300C\u76D8\u300D\u864E\u6591",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Gyr),t.post("/category",Kyr),t.post("/detail",Vyr),t.post("/play",Nr),t.post("/search",zyr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:w4};var Yyr=["http://103.217.192.184:12512"],$ae=async t=>(await t.db.getObjectDefault("/xiaoban",{}))?.urls||t.config.xiaoban?.urls||Yyr,Jyr=async(t,e)=>{await t.db.push("/xiaoban/urls",e)},Xyr=async t=>{await t.db.delete("/xiaoban/urls")};async function Fae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await $ae(e.server)})}),t.put("/urls",async(e,r)=>{await Jyr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Xyr(e.server),r.send({code:0})})}var Uae,R4=t=>{if(!Uae){let e=Date.now();Uae=new Promise(async r=>{let n=await $ae(t),s=await Xn(n);console.log("\u5C0F\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Uae};async function qae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Zyr(t,e){return{class:[{type_id:"1",type_name:"\u6885"},{type_id:"2",type_name:"\u5170"},{type_id:"3",type_name:"\u7AF9"},{type_id:"4",type_name:"\u83CA"},{type_id:"6",type_name:"\u77ED"},{type_id:"5",type_name:"\u7CBE"}],filters:{}}}async function exr(t,e){let r=await R4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await qae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function txr(t,e){let r=await R4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await qae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function rxr(t,e){let r=await R4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await qae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Eat={meta:{key:"xiaoban",name:"\u300C\u76D8\u300D\u5C0F\u6591",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Zyr),t.post("/category",exr),t.post("/detail",txr),t.post("/play",Nr),t.post("/search",rxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:R4};var Sat=Re(require("vm"),1),Hae=class{add(e,r,n){if(typeof arguments[0]!="string")for(let s in arguments[0])this.add(s,arguments[0][s],arguments[1]);else(Array.isArray(e)?e:[e]).forEach(function(s){this[s]=this[s]||[],r&&this[s][n?"unshift":"push"](r)},this)}run(e,r){this[e]=this[e]||[],this[e].forEach(function(n){n.call(r&&r.context?r.context:r,r)})}},Qae=class{constructor(e){this.jsep=e,this.registered={}}register(...e){e.forEach(r=>{if(typeof r!="object"||!r.name||!r.init)throw new Error("Invalid JSEP plugin format");this.registered[r.name]||(r.init(this.jsep),this.registered[r.name]=r)})}},lo=class t{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+t.version}static addUnaryOp(e){return t.max_unop_len=Math.max(e.length,t.max_unop_len),t.unary_ops[e]=1,t}static addBinaryOp(e,r,n){return t.max_binop_len=Math.max(e.length,t.max_binop_len),t.binary_ops[e]=r,n?t.right_associative.add(e):t.right_associative.delete(e),t}static addIdentifierChar(e){return t.additional_identifier_chars.add(e),t}static addLiteral(e,r){return t.literals[e]=r,t}static removeUnaryOp(e){return delete t.unary_ops[e],e.length===t.max_unop_len&&(t.max_unop_len=t.getMaxKeyLen(t.unary_ops)),t}static removeAllUnaryOps(){return t.unary_ops={},t.max_unop_len=0,t}static removeIdentifierChar(e){return t.additional_identifier_chars.delete(e),t}static removeBinaryOp(e){return delete t.binary_ops[e],e.length===t.max_binop_len&&(t.max_binop_len=t.getMaxKeyLen(t.binary_ops)),t.right_associative.delete(e),t}static removeAllBinaryOps(){return t.binary_ops={},t.max_binop_len=0,t}static removeLiteral(e){return delete t.literals[e],t}static removeAllLiterals(){return t.literals={},t}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(e){this.expr=e,this.index=0}static parse(e){return new t(e).parse()}static getMaxKeyLen(e){return Math.max(0,...Object.keys(e).map(r=>r.length))}static isDecimalDigit(e){return e>=48&&e<=57}static binaryPrecedence(e){return t.binary_ops[e]||0}static isIdentifierStart(e){return e>=65&&e<=90||e>=97&&e<=122||e>=128&&!t.binary_ops[String.fromCharCode(e)]||t.additional_identifier_chars.has(String.fromCharCode(e))}static isIdentifierPart(e){return t.isIdentifierStart(e)||t.isDecimalDigit(e)}throwError(e){let r=new Error(e+" at character "+this.index);throw r.index=this.index,r.description=e,r}runHook(e,r){if(t.hooks[e]){let n={context:this,node:r};return t.hooks.run(e,n),n.node}return r}searchHook(e){if(t.hooks[e]){let r={context:this};return t.hooks[e].find(function(n){return n.call(r.context,r),r.node}),r.node}}gobbleSpaces(){let e=this.code;for(;e===t.SPACE_CODE||e===t.TAB_CODE||e===t.LF_CODE||e===t.CR_CODE;)e=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");let e=this.gobbleExpressions(),r=e.length===1?e[0]:{type:t.COMPOUND,body:e};return this.runHook("after-all",r)}gobbleExpressions(e){let r=[],n,s;for(;this.index<this.expr.length;)if(n=this.code,n===t.SEMCOL_CODE||n===t.COMMA_CODE)this.index++;else if(s=this.gobbleExpression())r.push(s);else if(this.index<this.expr.length){if(n===e)break;this.throwError('Unexpected "'+this.char+'"')}return r}gobbleExpression(){let e=this.searchHook("gobble-expression")||this.gobbleBinaryExpression();return this.gobbleSpaces(),this.runHook("after-expression",e)}gobbleBinaryOp(){this.gobbleSpaces();let e=this.expr.substr(this.index,t.max_binop_len),r=e.length;for(;r>0;){if(t.binary_ops.hasOwnProperty(e)&&(!t.isIdentifierStart(this.code)||this.index+e.length<this.expr.length&&!t.isIdentifierPart(this.expr.charCodeAt(this.index+e.length))))return this.index+=r,e;e=e.substr(0,--r)}return!1}gobbleBinaryExpression(){let e,r,n,s,i,a,o,c,u;if(a=this.gobbleToken(),!a||(r=this.gobbleBinaryOp(),!r))return a;for(i={value:r,prec:t.binaryPrecedence(r),right_a:t.right_associative.has(r)},o=this.gobbleToken(),o||this.throwError("Expected expression after "+r),s=[a,i,o];r=this.gobbleBinaryOp();){if(n=t.binaryPrecedence(r),n===0){this.index-=r.length;break}i={value:r,prec:n,right_a:t.right_associative.has(r)},u=r;let l=d=>i.right_a&&d.right_a?n>d.prec:n<=d.prec;for(;s.length>2&&l(s[s.length-2]);)o=s.pop(),r=s.pop().value,a=s.pop(),e={type:t.BINARY_EXP,operator:r,left:a,right:o},s.push(e);e=this.gobbleToken(),e||this.throwError("Expected expression after "+u),s.push(i,e)}for(c=s.length-1,e=s[c];c>1;)e={type:t.BINARY_EXP,operator:s[c-1].value,left:s[c-2],right:e},c-=2;return e}gobbleToken(){let e,r,n,s;if(this.gobbleSpaces(),s=this.searchHook("gobble-token"),s)return this.runHook("after-token",s);if(e=this.code,t.isDecimalDigit(e)||e===t.PERIOD_CODE)return this.gobbleNumericLiteral();if(e===t.SQUOTE_CODE||e===t.DQUOTE_CODE)s=this.gobbleStringLiteral();else if(e===t.OBRACK_CODE)s=this.gobbleArray();else{for(r=this.expr.substr(this.index,t.max_unop_len),n=r.length;n>0;){if(t.unary_ops.hasOwnProperty(r)&&(!t.isIdentifierStart(this.code)||this.index+r.length<this.expr.length&&!t.isIdentifierPart(this.expr.charCodeAt(this.index+r.length)))){this.index+=n;let i=this.gobbleToken();return i||this.throwError("missing unaryOp argument"),this.runHook("after-token",{type:t.UNARY_EXP,operator:r,argument:i,prefix:!0})}r=r.substr(0,--n)}t.isIdentifierStart(e)?(s=this.gobbleIdentifier(),t.literals.hasOwnProperty(s.name)?s={type:t.LITERAL,value:t.literals[s.name],raw:s.name}:s.name===t.this_str&&(s={type:t.THIS_EXP})):e===t.OPAREN_CODE&&(s=this.gobbleGroup())}return s?(s=this.gobbleTokenProperty(s),this.runHook("after-token",s)):this.runHook("after-token",!1)}gobbleTokenProperty(e){this.gobbleSpaces();let r=this.code;for(;r===t.PERIOD_CODE||r===t.OBRACK_CODE||r===t.OPAREN_CODE||r===t.QUMARK_CODE;){let n;if(r===t.QUMARK_CODE){if(this.expr.charCodeAt(this.index+1)!==t.PERIOD_CODE)break;n=!0,this.index+=2,this.gobbleSpaces(),r=this.code}this.index++,r===t.OBRACK_CODE?(e={type:t.MEMBER_EXP,computed:!0,object:e,property:this.gobbleExpression()},e.property||this.throwError('Unexpected "'+this.char+'"'),this.gobbleSpaces(),r=this.code,r!==t.CBRACK_CODE&&this.throwError("Unclosed ["),this.index++):r===t.OPAREN_CODE?e={type:t.CALL_EXP,arguments:this.gobbleArguments(t.CPAREN_CODE),callee:e}:(r===t.PERIOD_CODE||n)&&(n&&this.index--,this.gobbleSpaces(),e={type:t.MEMBER_EXP,computed:!1,object:e,property:this.gobbleIdentifier()}),n&&(e.optional=!0),this.gobbleSpaces(),r=this.code}return e}gobbleNumericLiteral(){let e="",r,n;for(;t.isDecimalDigit(this.code);)e+=this.expr.charAt(this.index++);if(this.code===t.PERIOD_CODE)for(e+=this.expr.charAt(this.index++);t.isDecimalDigit(this.code);)e+=this.expr.charAt(this.index++);if(r=this.char,r==="e"||r==="E"){for(e+=this.expr.charAt(this.index++),r=this.char,(r==="+"||r==="-")&&(e+=this.expr.charAt(this.index++));t.isDecimalDigit(this.code);)e+=this.expr.charAt(this.index++);t.isDecimalDigit(this.expr.charCodeAt(this.index-1))||this.throwError("Expected exponent ("+e+this.char+")")}return n=this.code,t.isIdentifierStart(n)?this.throwError("Variable names cannot start with a number ("+e+this.char+")"):(n===t.PERIOD_CODE||e.length===1&&e.charCodeAt(0)===t.PERIOD_CODE)&&this.throwError("Unexpected period"),{type:t.LITERAL,value:parseFloat(e),raw:e}}gobbleStringLiteral(){let e="",r=this.index,n=this.expr.charAt(this.index++),s=!1;for(;this.index<this.expr.length;){let i=this.expr.charAt(this.index++);if(i===n){s=!0;break}else if(i==="\\")switch(i=this.expr.charAt(this.index++),i){case"n":e+=`
`;break;case"r":e+="\r";break;case"t":e+=" ";break;case"b":e+="\b";break;case"f":e+="\f";break;case"v":e+="\v";break;default:e+=i}else e+=i}return s||this.throwError('Unclosed quote after "'+e+'"'),{type:t.LITERAL,value:e,raw:this.expr.substring(r,this.index)}}gobbleIdentifier(){let e=this.code,r=this.index;for(t.isIdentifierStart(e)?this.index++:this.throwError("Unexpected "+this.char);this.index<this.expr.length&&(e=this.code,t.isIdentifierPart(e));)this.index++;return{type:t.IDENTIFIER,name:this.expr.slice(r,this.index)}}gobbleArguments(e){let r=[],n=!1,s=0;for(;this.index<this.expr.length;){this.gobbleSpaces();let i=this.code;if(i===e){n=!0,this.index++,e===t.CPAREN_CODE&&s&&s>=r.length&&this.throwError("Unexpected token "+String.fromCharCode(e));break}else if(i===t.COMMA_CODE){if(this.index++,s++,s!==r.length){if(e===t.CPAREN_CODE)this.throwError("Unexpected token ,");else if(e===t.CBRACK_CODE)for(let a=r.length;a<s;a++)r.push(null)}}else if(r.length!==s&&s!==0)this.throwError("Expected comma");else{let a=this.gobbleExpression();(!a||a.type===t.COMPOUND)&&this.throwError("Expected comma"),r.push(a)}}return n||this.throwError("Expected "+String.fromCharCode(e)),r}gobbleGroup(){this.index++;let e=this.gobbleExpressions(t.CPAREN_CODE);if(this.code===t.CPAREN_CODE)return this.index++,e.length===1?e[0]:e.length?{type:t.SEQUENCE_EXP,expressions:e}:!1;this.throwError("Unclosed (")}gobbleArray(){return this.index++,{type:t.ARRAY_EXP,elements:this.gobbleArguments(t.CBRACK_CODE)}}},nxr=new Hae;Object.assign(lo,{hooks:nxr,plugins:new Qae(lo),COMPOUND:"Compound",SEQUENCE_EXP:"SequenceExpression",IDENTIFIER:"Identifier",MEMBER_EXP:"MemberExpression",LITERAL:"Literal",THIS_EXP:"ThisExpression",CALL_EXP:"CallExpression",UNARY_EXP:"UnaryExpression",BINARY_EXP:"BinaryExpression",ARRAY_EXP:"ArrayExpression",TAB_CODE:9,LF_CODE:10,CR_CODE:13,SPACE_CODE:32,PERIOD_CODE:46,COMMA_CODE:44,SQUOTE_CODE:39,DQUOTE_CODE:34,OPAREN_CODE:40,CPAREN_CODE:41,OBRACK_CODE:91,CBRACK_CODE:93,QUMARK_CODE:63,SEMCOL_CODE:59,COLON_CODE:58,unary_ops:{"-":1,"!":1,"~":1,"+":1},binary_ops:{"||":1,"??":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"});lo.max_unop_len=lo.getMaxKeyLen(lo.unary_ops);lo.max_binop_len=lo.getMaxKeyLen(lo.binary_ops);var Qf=t=>new lo(t).parse(),sxr=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(lo).filter(t=>!sxr.includes(t)&&Qf[t]===void 0).forEach(t=>{Qf[t]=lo[t]});Qf.Jsep=lo;var ixr="ConditionalExpression",axr={name:"ternary",init(t){t.hooks.add("after-expression",function(r){if(r.node&&this.code===t.QUMARK_CODE){this.index++;let n=r.node,s=this.gobbleExpression();if(s||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===t.COLON_CODE){this.index++;let i=this.gobbleExpression();if(i||this.throwError("Expected expression"),r.node={type:ixr,test:n,consequent:s,alternate:i},n.operator&&t.binary_ops[n.operator]<=.9){let a=n;for(;a.right.operator&&t.binary_ops[a.right.operator]<=.9;)a=a.right;r.node.test=a.right,a.right=r.node,r.node=n}}else this.throwError("Expected :")}})}};Qf.plugins.register(axr);var _at=47,oxr=92,cxr={name:"regex",init(t){t.hooks.add("gobble-token",function(r){if(this.code===_at){let n=++this.index,s=!1;for(;this.index<this.expr.length;){if(this.code===_at&&!s){let i=this.expr.slice(n,this.index),a="";for(;++this.index<this.expr.length;){let c=this.code;if(c>=97&&c<=122||c>=65&&c<=90||c>=48&&c<=57)a+=this.char;else break}let o;try{o=new RegExp(i,a)}catch(c){this.throwError(c.message)}return r.node={type:t.LITERAL,value:o,raw:this.expr.slice(n-1,this.index)},r.node=this.gobbleTokenProperty(r.node),r.node}this.code===t.OBRACK_CODE?s=!0:s&&this.code===t.CBRACK_CODE&&(s=!1),this.index+=this.code===oxr?2:1}this.throwError("Unclosed Regex")}})}},jae=43,uxr=45,oE={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[jae,uxr],assignmentPrecedence:.9,init(t){let e=[t.IDENTIFIER,t.MEMBER_EXP];oE.assignmentOperators.forEach(n=>t.addBinaryOp(n,oE.assignmentPrecedence,!0)),t.hooks.add("gobble-token",function(s){let i=this.code;oE.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(this.index+=2,s.node={type:"UpdateExpression",operator:i===jae?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},(!s.node.argument||!e.includes(s.node.argument.type))&&this.throwError(`Unexpected ${s.node.operator}`))}),t.hooks.add("after-token",function(s){if(s.node){let i=this.code;oE.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(e.includes(s.node.type)||this.throwError(`Unexpected ${s.node.operator}`),this.index+=2,s.node={type:"UpdateExpression",operator:i===jae?"++":"--",argument:s.node,prefix:!1})}}),t.hooks.add("after-expression",function(s){s.node&&r(s.node)});function r(n){oE.assignmentOperators.has(n.operator)?(n.type="AssignmentExpression",r(n.left),r(n.right)):n.operator||Object.values(n).forEach(s=>{s&&typeof s=="object"&&r(s)})}}};Qf.plugins.register(cxr,oE);Qf.addUnaryOp("typeof");Qf.addLiteral("null",null);Qf.addLiteral("undefined",void 0);var lxr=new Set(["constructor","__proto__","__defineGetter__","__defineSetter__"]),cn={evalAst(t,e){switch(t.type){case"BinaryExpression":case"LogicalExpression":return cn.evalBinaryExpression(t,e);case"Compound":return cn.evalCompound(t,e);case"ConditionalExpression":return cn.evalConditionalExpression(t,e);case"Identifier":return cn.evalIdentifier(t,e);case"Literal":return cn.evalLiteral(t,e);case"MemberExpression":return cn.evalMemberExpression(t,e);case"UnaryExpression":return cn.evalUnaryExpression(t,e);case"ArrayExpression":return cn.evalArrayExpression(t,e);case"CallExpression":return cn.evalCallExpression(t,e);case"AssignmentExpression":return cn.evalAssignmentExpression(t,e);default:throw SyntaxError("Unexpected expression",t)}},evalBinaryExpression(t,e){return{"||":(n,s)=>n||s(),"&&":(n,s)=>n&&s(),"|":(n,s)=>n|s(),"^":(n,s)=>n^s(),"&":(n,s)=>n&s(),"==":(n,s)=>n==s(),"!=":(n,s)=>n!=s(),"===":(n,s)=>n===s(),"!==":(n,s)=>n!==s(),"<":(n,s)=>n<s(),">":(n,s)=>n>s(),"<=":(n,s)=>n<=s(),">=":(n,s)=>n>=s(),"<<":(n,s)=>n<<s(),">>":(n,s)=>n>>s(),">>>":(n,s)=>n>>>s(),"+":(n,s)=>n+s(),"-":(n,s)=>n-s(),"*":(n,s)=>n*s(),"/":(n,s)=>n/s(),"%":(n,s)=>n%s()}[t.operator](cn.evalAst(t.left,e),()=>cn.evalAst(t.right,e))},evalCompound(t,e){let r;for(let n=0;n<t.body.length;n++){t.body[n].type==="Identifier"&&["var","let","const"].includes(t.body[n].name)&&t.body[n+1]&&t.body[n+1].type==="AssignmentExpression"&&(n+=1);let s=t.body[n];r=cn.evalAst(s,e)}return r},evalConditionalExpression(t,e){return cn.evalAst(t.test,e)?cn.evalAst(t.consequent,e):cn.evalAst(t.alternate,e)},evalIdentifier(t,e){if(Object.hasOwn(e,t.name))return e[t.name];throw ReferenceError(`${t.name} is not defined`)},evalLiteral(t){return t.value},evalMemberExpression(t,e){let r=String(t.computed?cn.evalAst(t.property):t.property.name),n=cn.evalAst(t.object,e);if(n==null)throw TypeError(`Cannot read properties of ${n} (reading '${r}')`);if(!Object.hasOwn(n,r)&&lxr.has(r))throw TypeError(`Cannot read properties of ${n} (reading '${r}')`);let s=n[r];return typeof s=="function"?s.bind(n):s},evalUnaryExpression(t,e){return{"-":n=>-cn.evalAst(n,e),"!":n=>!cn.evalAst(n,e),"~":n=>~cn.evalAst(n,e),"+":n=>+cn.evalAst(n,e),typeof:n=>typeof cn.evalAst(n,e)}[t.operator](t.argument)},evalArrayExpression(t,e){return t.elements.map(r=>cn.evalAst(r,e))},evalCallExpression(t,e){let r=t.arguments.map(s=>cn.evalAst(s,e));return cn.evalAst(t.callee,e)(...r)},evalAssignmentExpression(t,e){if(t.left.type!=="Identifier")throw SyntaxError("Invalid left-hand side in assignment");let r=t.left.name,n=cn.evalAst(t.right,e);return e[r]=n,e[r]}},Gae=class{constructor(e){this.code=e,this.ast=Qf(this.code)}runInNewContext(e){let r=Object.assign(Object.create(null),e);return cn.evalAst(this.ast,r)}};function X0(t,e){return t=t.slice(),t.push(e),t}function Kae(t,e){return e=e.slice(),e.unshift(t),e}var Vae=class extends Error{constructor(e){super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'),this.avoidNew=!0,this.value=e,this.name="NewError"}};function Ur(t,e,r,n,s){if(!(this instanceof Ur))try{return new Ur(t,e,r,n,s)}catch(a){if(!a.avoidNew)throw a;return a.value}typeof t=="string"&&(s=n,n=r,r=e,e=t,t=null);let i=t&&typeof t=="object";if(t=t||{},this.json=t.json||r,this.path=t.path||e,this.resultType=t.resultType||"value",this.flatten=t.flatten||!1,this.wrap=Object.hasOwn(t,"wrap")?t.wrap:!0,this.sandbox=t.sandbox||{},this.eval=t.eval===void 0?"safe":t.eval,this.ignoreEvalErrors=typeof t.ignoreEvalErrors>"u"?!1:t.ignoreEvalErrors,this.parent=t.parent||null,this.parentProperty=t.parentProperty||null,this.callback=t.callback||n||null,this.otherTypeCallback=t.otherTypeCallback||s||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},t.autostart!==!1){let a={path:i?t.path:e};i?"json"in t&&(a.json=t.json):a.json=r;let o=this.evaluate(a);if(!o||typeof o!="object")throw new Vae(o);return o}}Ur.prototype.evaluate=function(t,e,r,n){let s=this.parent,i=this.parentProperty,{flatten:a,wrap:o}=this;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,e=e||this.json,t=t||this.path,t&&typeof t=="object"&&!Array.isArray(t)){if(!t.path&&t.path!=="")throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!Object.hasOwn(t,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');({json:e}=t),a=Object.hasOwn(t,"flatten")?t.flatten:a,this.currResultType=Object.hasOwn(t,"resultType")?t.resultType:this.currResultType,this.currSandbox=Object.hasOwn(t,"sandbox")?t.sandbox:this.currSandbox,o=Object.hasOwn(t,"wrap")?t.wrap:o,this.currEval=Object.hasOwn(t,"eval")?t.eval:this.currEval,r=Object.hasOwn(t,"callback")?t.callback:r,this.currOtherTypeCallback=Object.hasOwn(t,"otherTypeCallback")?t.otherTypeCallback:this.currOtherTypeCallback,s=Object.hasOwn(t,"parent")?t.parent:s,i=Object.hasOwn(t,"parentProperty")?t.parentProperty:i,t=t.path}if(s=s||null,i=i||null,Array.isArray(t)&&(t=Ur.toPathString(t)),!t&&t!==""||!e)return;let c=Ur.toPathArray(t);c[0]==="$"&&c.length>1&&c.shift(),this._hasParentSelector=null;let u=this._trace(c,e,["$"],s,i,r).filter(function(l){return l&&!l.isParentSelector});return u.length?!o&&u.length===1&&!u[0].hasArrExpr?this._getPreferredOutput(u[0]):u.reduce((l,d)=>{let f=this._getPreferredOutput(d);return a&&Array.isArray(f)?l=l.concat(f):l.push(f),l},[]):o?[]:void 0};Ur.prototype._getPreferredOutput=function(t){let e=this.currResultType;switch(e){case"all":{let r=Array.isArray(t.path)?t.path:Ur.toPathArray(t.path);return t.pointer=Ur.toPointer(r),t.path=typeof t.path=="string"?t.path:Ur.toPathString(t.path),t}case"value":case"parent":case"parentProperty":return t[e];case"path":return Ur.toPathString(t[e]);case"pointer":return Ur.toPointer(t.path);default:throw new TypeError("Unknown result type")}};Ur.prototype._handleCallback=function(t,e,r){if(e){let n=this._getPreferredOutput(t);t.path=typeof t.path=="string"?t.path:Ur.toPathString(t.path),e(n,r,t)}};Ur.prototype._trace=function(t,e,r,n,s,i,a,o){let c;if(!t.length)return c={path:r,value:e,parent:n,parentProperty:s,hasArrExpr:a},this._handleCallback(c,i,"value"),c;let u=t[0],l=t.slice(1),d=[];function f(p){Array.isArray(p)?p.forEach(m=>{d.push(m)}):d.push(p)}if((typeof u!="string"||o)&&e&&Object.hasOwn(e,u))f(this._trace(l,e[u],X0(r,u),e,u,i,a));else if(u==="*")this._walk(e,p=>{f(this._trace(l,e[p],X0(r,p),e,p,i,!0,!0))});else if(u==="..")f(this._trace(l,e,r,n,s,i,a)),this._walk(e,p=>{typeof e[p]=="object"&&f(this._trace(t.slice(),e[p],X0(r,p),e,p,i,!0))});else{if(u==="^")return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:l,isParentSelector:!0};if(u==="~")return c={path:X0(r,u),value:s,parent:n,parentProperty:null},this._handleCallback(c,i,"property"),c;if(u==="$")f(this._trace(l,e,r,null,null,i,a));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(u))f(this._slice(u,l,e,r,n,s,i));else if(u.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");let p=u.replace(/^\?\((.*?)\)$/u,"$1"),m=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(p);m?this._walk(e,h=>{let A=[m[2]],g=m[1]?e[h][m[1]]:e[h];this._trace(A,g,r,n,s,i,!0).length>0&&f(this._trace(l,e[h],X0(r,h),e,h,i,!0))}):this._walk(e,h=>{this._eval(p,e[h],h,r,n,s)&&f(this._trace(l,e[h],X0(r,h),e,h,i,!0))})}else if(u[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");f(this._trace(Kae(this._eval(u,e,r.at(-1),r.slice(0,-1),n,s),l),e,r,n,s,i,a))}else if(u[0]==="@"){let p=!1,m=u.slice(1,-2);switch(m){case"scalar":(!e||!["object","function"].includes(typeof e))&&(p=!0);break;case"boolean":case"string":case"undefined":case"function":typeof e===m&&(p=!0);break;case"integer":Number.isFinite(e)&&!(e%1)&&(p=!0);break;case"number":Number.isFinite(e)&&(p=!0);break;case"nonFinite":typeof e=="number"&&!Number.isFinite(e)&&(p=!0);break;case"object":e&&typeof e===m&&(p=!0);break;case"array":Array.isArray(e)&&(p=!0);break;case"other":p=this.currOtherTypeCallback(e,r,n,s);break;case"null":e===null&&(p=!0);break;default:throw new TypeError("Unknown value type "+m)}if(p)return c={path:r,value:e,parent:n,parentProperty:s},this._handleCallback(c,i,"value"),c}else if(u[0]==="`"&&e&&Object.hasOwn(e,u.slice(1))){let p=u.slice(1);f(this._trace(l,e[p],X0(r,p),e,p,i,a,!0))}else if(u.includes(",")){let p=u.split(",");for(let m of p)f(this._trace(Kae(m,l),e,r,n,s,i,!0))}else!o&&e&&Object.hasOwn(e,u)&&f(this._trace(l,e[u],X0(r,u),e,u,i,a,!0))}if(this._hasParentSelector)for(let p=0;p<d.length;p++){let m=d[p];if(m&&m.isParentSelector){let h=this._trace(m.expr,e,m.path,n,s,i,a);if(Array.isArray(h)){d[p]=h[0];let A=h.length;for(let g=1;g<A;g++)p++,d.splice(p,0,h[g])}else d[p]=h}}return d};Ur.prototype._walk=function(t,e){if(Array.isArray(t)){let r=t.length;for(let n=0;n<r;n++)e(n)}else t&&typeof t=="object"&&Object.keys(t).forEach(r=>{e(r)})};Ur.prototype._slice=function(t,e,r,n,s,i,a){if(!Array.isArray(r))return;let o=r.length,c=t.split(":"),u=c[2]&&Number.parseInt(c[2])||1,l=c[0]&&Number.parseInt(c[0])||0,d=c[1]&&Number.parseInt(c[1])||o;l=l<0?Math.max(0,l+o):Math.min(o,l),d=d<0?Math.max(0,d+o):Math.min(o,d);let f=[];for(let p=l;p<d;p+=u)this._trace(Kae(p,e),r,n,s,i,a,!0).forEach(h=>{f.push(h)});return f};Ur.prototype._eval=function(t,e,r,n,s,i){this.currSandbox._$_parentProperty=i,this.currSandbox._$_parent=s,this.currSandbox._$_property=r,this.currSandbox._$_root=this.json,this.currSandbox._$_v=e;let a=t.includes("@path");a&&(this.currSandbox._$_path=Ur.toPathString(n.concat([r])));let o=this.currEval+"Script:"+t;if(!Ur.cache[o]){let c=t.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(a&&(c=c.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)Ur.cache[o]=new this.safeVm.Script(c);else if(this.currEval==="native")Ur.cache[o]=new this.vm.Script(c);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){let u=this.currEval;Ur.cache[o]=new u(c)}else if(typeof this.currEval=="function")Ur.cache[o]={runInNewContext:u=>this.currEval(c,u)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Ur.cache[o].runInNewContext(this.currSandbox)}catch(c){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+c.message+": "+t)}};Ur.cache={};Ur.toPathString=function(t){let e=t,r=e.length,n="$";for(let s=1;s<r;s++)/^(~|\^|@.*?\(\))$/u.test(e[s])||(n+=/^[0-9*]+$/u.test(e[s])?"["+e[s]+"]":"['"+e[s]+"']");return n};Ur.toPointer=function(t){let e=t,r=e.length,n="";for(let s=1;s<r;s++)/^(~|\^|@.*?\(\))$/u.test(e[s])||(n+="/"+e[s].toString().replaceAll("~","~0").replaceAll("/","~1"));return n};Ur.toPathArray=function(t){let{cache:e}=Ur;if(e[t])return e[t].concat();let r=[],s=t.replaceAll(/@(?:null|boolean|number|string|integer|undefined|nonFinite|scalar|array|object|function|other)\(\)/gu,";$&;").replaceAll(/[['](\??\(.*?\))[\]'](?!.\])/gu,function(i,a){return"[#"+(r.push(a)-1)+"]"}).replaceAll(/\[['"]([^'\]]*)['"]\]/gu,function(i,a){return"['"+a.replaceAll(".","%@%").replaceAll("~","%%@@%%")+"']"}).replaceAll("~",";~;").replaceAll(/['"]?\.['"]?(?![^[]*\])|\[['"]?/gu,";").replaceAll("%@%",".").replaceAll("%%@@%%","~").replaceAll(/(?:;)?(\^+)(?:;)?/gu,function(i,a){return";"+a.split("").join(";")+";"}).replaceAll(/;;;|;;/gu,";..;").replaceAll(/;$|'?\]|'$/gu,"").split(";").map(function(i){let a=i.match(/#(\d+)/u);return!a||!a[1]?i:r[a[1]]});return e[t]=s,e[t].concat()};Ur.prototype.safeVm={Script:Gae};Ur.prototype.vm=Sat.default;var vat=(t,e)=>(t=t||"",e=e||"",resolve(t,e)),Iat={query(t,e){return Ur.JSONPath({path:e,json:t})}},zae=!0,Cat=":eq|:lt|:gt|:first|:last|:not|:even|:odd|:has|:contains|:matches|:empty|^body$|^#",dxr="(url|src|href|-original|-src|-play|-url|style)$|^(data-|url-|src-)",fxr="^(ftp|magnet|thunder|ws):",Yae=class{constructor(e=""){this.MY_URL=e,this.pdfh_html="",this.pdfa_html="",this.pdfh_doc=null,this.pdfa_doc=null}test(e,r){return!!new RegExp(e,"mi").exec(r)}contains(e,r){return e.indexOf(r)!==-1}parseHikerToJq(e,r=!1){if(this.contains(e,"&&")){let n=e.split("&&"),s=[];for(let i=0;i<n.length;i++){let a=n[i].split(" "),o=a[a.length-1];this.test(Cat,o)||!r&&i>=n.length-1?s.push(n[i]):s.push(`${n[i]}:eq(0)`)}e=s.join(" ")}else{let n=e.split(" "),s=n[n.length-1];!this.test(Cat,s)&&r&&(e=`${e}:eq(0)`)}return e}getParseInfo(e){let r=[],n=0,s=e;if(this.contains(e,":eq")){s=e.split(":eq")[0];let i=e.split(":eq")[1];this.contains(s,"--")?(r=s.split("--").slice(1),s=s.split("--")[0]):this.contains(i,"--")&&(r=i.split("--").slice(1),i=i.split("--")[0]);try{n=parseInt(i.split("(")[1].split(")")[0])}catch{}}else this.contains(e,"--")&&(s=e.split("--")[0],r=e.split("--").slice(1));return{nparse_rule:s,nparse_index:n,excludes:r}}reorderAdjacentLtAndGt(e){let r=/:gt\((\d+)\):lt\((\d+)\)/,n;for(;(n=r.exec(e))!==null;){let s=`:lt(${n[2]}):gt(${n[1]})`;e=e.substring(0,n.index)+s+e.substring(n.index+n[0].length),r.lastIndex=n.index}return e}parseOneRule(e,r,n){let{nparse_rule:s,nparse_index:i,excludes:a}=this.getParseInfo(r);if(s=this.reorderAdjacentLtAndGt(s),n?n=n.find(s):n=e(s),this.contains(r,":eq")&&(n=n.eq(i)),a.length>0&&n){n=n.clone();for(let o of a)n.find(o).remove()}return n}parseText(e){return e=e.replace(/[\s]+/gm,`
`),e=e.replace(/\n+/g,`
`).replace(/^\s+/,""),e=e.replace(/\n/g," "),e}pdfa(e,r){if(!e||!r)return[];r=this.parseHikerToJq(r);let n=Me(e);zae&&this.pdfa_html!==e&&(this.pdfa_html=e,this.pdfa_doc=n);let s=r.split(" "),i=null;for(let o of s)if(i=this.parseOneRule(n,o,i),!i)return[];return(i?.toArray()??[]).map(o=>{let c=`${n(o)}`;return c||""})}pdfl(e,r,n,s,i){if(!e||!r)return[];r=this.parseHikerToJq(r,!1);let a=[],o=Me(e),c=r.split(" "),u=null;for(let l of c)if(u=this.parseOneRule(o,l,u),!u)return[];return u.each((l,d)=>{a.push(`${o(d)}`)}),a}pdfh(e,r,n=""){if(!e||!r)return"";let s=Me(e);if(typeof zae<"u"&&zae&&this.pdfa_html!==e&&(this.pdfa_html=e,this.pdfa_doc=s),r==="body&&Text"||r==="Text")return this.parseText(s.text());if(r==="body&&Html"||r==="Html")return s.html();let i;if(this.contains(r,"&&")){let c=r.split("&&");i=c.pop(),r=c.join("&&")}r=this.parseHikerToJq(r,!0);let a=r.split(" "),o=null;for(let c of a)if(o=this.parseOneRule(s,c,o),!o)return"";if(i)switch(i){case"Text":o=o?this.parseText(o.text()):"";break;case"Html":o=o?o.html():"";break;default:let c=o.clone(),u=i.split("||");for(let l of u){if(o=c?.attr(l)||"",this.contains(l.toLowerCase(),"style")&&this.contains(o,"url("))try{o=o.match(/url\((.*?)\)/)[1],o=o.replace(/^['"]|['"]$/g,"")}catch{}if(o&&n&&this.test(dxr,l)&&!this.test(fxr,o)&&(o=o.includes("http")?o.slice(o.indexOf("http")):vat(n,o)),o)break}}else o=`${o}`;return o}pd(e,r,n=""){return n||(n=this.MY_URL),this.pdfh(e,r,n)}pq(e){return Me(e)}pjfh(e,r,n=!1){if(!e||!r)return"";try{e=typeof e=="string"?JSON.parse(e):e}catch{return console.log("\u5B57\u7B26\u4E32\u8F6C JSON \u5931\u8D25"),""}r.startsWith("$.")||(r="$."+r);let s="",i=r.split("||");for(let a of i){let o=Iat.query(e,a);if(s=Array.isArray(o)?o[0]||"":o||"",n&&s&&(s=vat(this.MY_URL,s)),s)break}return s}pj(e,r){return this.pjfh(e,r,!0)}pjfa(e,r){if(!e||!r)return[];try{e=typeof e=="string"?JSON.parse(e):e}catch{return[]}r.startsWith("$.")||(r="$."+r);let n=Iat.query(e,r);return Array.isArray(n)&&Array.isArray(n[0])&&n.length===1?n[0]:n||[]}},Tat=Yae;async function pxr(t){try{return await Ae.request(typeof t=="string"?t:{url:t.url,method:t.method||"GET",headers:t.headers||{"User-Agent":sDe},data:t.data||"",responseType:t.responseType||""})}catch(e){return e.response}}async function wat(t){return(await he.get(t,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36"}})).data}var Jae="https://www.91panta.cn",Xae=t=>new Tat().pq(t),Rat=[{type_id:"39765285016165",type_name:"\u7535\u5F71"},{type_id:"39765284616164",type_name:"\u7535\u89C6\u5267"},{type_id:"39724839640293",type_name:"\u7EFC\u827A"},{type_id:"39724838540291",type_name:"\u52A8\u6F2B"},{type_id:"44732560408431",type_name:"\u77ED\u5267"},{type_id:"39956600861068",type_name:"\u7EAA\u5F55\u7247"}],mxr=Rat.map(t=>t.type_name.trim());async function hxr(t,e){return{class:Rat,filters:{}}}async function gxr(t,e){let r=t.body.id,s=t.body.page||1;s==0&&(s=1);let i=await wat(`${Jae}/?tagId=${r}&page=${s}`),a=Xae(i),o=[];a(".topicList .topicItem").each((d,f)=>{let p=a(f).find("h2 a:first")[0];if(!p||!p.children||!p.children[0]||!p.attribs)return;let m=p.children[0].data;if(!m)return;let h=a(f).find(".tm-m-photos-thumb li:first")[0]?.attribs["data-src"];o.push({vod_name:m.split(" ")[0],vod_id:p.attribs.href,vod_pic:h?`https://www.91panta.cn/${h}`:"https://www.91panta.cn/favicon.ico"})});let c=a(".topicPage .pg")[0],u=o.length,l=1;if(c){let d=a(c).find(".count")[0];if(d&&d.children&&d.children[0]){let p=d.children[0].data.match(/\d+/);p&&(u=p[0])}let f=a(c).find(".last")[0];if(f&&f.attribs&&f.attribs.title){let p=f.attribs.title.match(/\d+/);p&&(l=p[0])}}return{page:parseInt(s),pagecount:l?parseInt(l):1,limit:o.length,total:u?parseInt(u):o.length,list:o}}async function Axr(t,e){let r=await wat(`${Jae}/${t.body.id}`),n=Xae(r),s=n(".title")[0];if(!s||!s.children||!s.children[0])return{list:[]};let i={vod_name:s.children[0].data.trim(),vod_id:`/${t.body.id}`,vod_content:n("div.topicContent p:nth-child(1)").text().replace(/\s+/g,"")},a=n(".topicContent").html(),o=a.match(/<a\s+(?:[^>]*?\s+)?href=["'](https:\/\/(?:caiyun|yun)\.139\.com\/[^"']*)["'][^>]*>/gi);if(!o||o.length===0)if(o=a.match(/<span\s+style="color:\s*#0070C0;\s*">https:\/\/(?:caiyun|yun)\.139\.com\/[^<]*<\/span>/gi),o&&o.length>0){let c=o[0].match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^<]*/);o=c?c[0]:null}else{let c=a.match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^<\s]*/);o=c?c[0]:null}else{let c=o[0].match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^"']*/);o=c?c[0]:null}if(o){let c=await wr(o,t);c&&c.froms&&c.urls&&(i.vod_play_from=c.froms,i.vod_play_url=c.urls)}return{list:[i]}}async function yxr(t,e){let r=t.body.page||1,n=t.body.wd,s=(await pxr(`${Jae}/search?keyword=${encodeURIComponent(decodeURIComponent(n))}&page=${r}`)).data,i=Xae(s),a=[];return i(".topicList .topicItem").each((o,c)=>{let u=i(c).find(".tag")[0],l=u?i(u).html().trim():null;if(u&&mxr.includes(l)){let d=i(c).find(".title a:first")[0];if(!d||!d.attribs)return;let f=i(c).find(".tm-m-photos-thumb li:first")[0]?.attribs["data-src"],p=i(d).html().replace(/<[^>]*>/g,"").replace(/\s+/g,"");a.push({vod_name:p,vod_id:d.attribs.href,vod_remarks:"",vod_pic:f?`https://www.91panta.cn/${f}`:"https://www.91panta.cn/favicon.ico"})}}),{page:r,pagecount:1,list:a}}var Nat={meta:{key:"panta",name:"\u300C\u76D8\u300D\u76D8Ta",type:3},api:async t=>{t.post("/init",qr),t.post("/home",hxr),t.post("/category",gxr),t.post("/detail",Axr),t.post("/play",Nr),t.post("/search",yxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var xxr=["https://wogg.xxooo.cf","https://www.wogg.net"],Zae=async t=>(await t.db.getObjectDefault("/wanou",{}))?.urls||t.config.wanou?.urls||xxr,bxr=async(t,e)=>{await t.db.push("/wanou/urls",e)},Exr=async t=>{await t.db.delete("/wanou/urls")};async function eoe(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Zae(e.server)})}),t.put("/urls",async(e,r)=>{await bxr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Exr(e.server),r.send({code:0})})}var toe,P4=t=>{if(!toe){let e=Date.now();toe=new Promise(async r=>{let n=await Zae(t),s=await Xn(n);console.log("\u73A9\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return toe};async function N4(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function _xr(t,e){return await qr(t,e),{}}async function Sxr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"44",type_name:"\u81FB\u5F69"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"46",type_name:"\u7EAA\u5F55"},{type_id:"6",type_name:"\u77ED\u5267"},{type_id:"5",type_name:"\u97F3\u4E50"}],n=[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}],s=[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}],i=[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}],a=[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],o={};return o[1]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[2]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[44]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[46]=[{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[6]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7537\u9891",v:"\u7537\u9891"},{n:"\u5973\u9891",v:"\u5973\u9891"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u751C\u5BA0",v:"\u751C\u5BA0"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u7A7F\u8D8A",v:"\u7A7F\u8D8A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u4EB2\u60C5",v:"\u4EB2\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u840C\u5B9D",v:"\u840C\u5B9D"},{n:"\u91CD\u751F",v:"\u91CD\u751F"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u9006\u88AD",v:"\u9006\u88AD"},{n:"\u8650\u604B",v:"\u8650\u604B"},{n:"\u9274\u5B9D",v:"\u9274\u5B9D"},{n:"\u590D\u4EC7",v:"\u590D\u4EC7"},{n:"\u4FEE\u4ED9",v:"\u4FEE\u4ED9"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"}]},{key:"by",name:"",init:"time",value:s}],o[5]=[{key:"by",name:"",init:"time",value:s}],{class:r,filters:o}}function vxr(t,e){let r=String(e||"").trim();if(!r)return"";if(/^https?:\/\//i.test(r)){if(/^https?:\/\/[^/]*gimg\d*\.baidu\.com\/gimg\//i.test(r)){let n=r.lastIndexOf("src=");if(n!==-1&&r.slice(n+4).includes("data:image/"))return""}return r}return r.startsWith("/img.php?url=")?r.slice(13):r.startsWith("/db.php?url=")?new URL(r,`${String(t||"").replace(/\/+$/,"")}/`).toString():new URL(r.replace(/^\/+/,""),`${String(t||"").replace(/\/+$/,"")}/`).toString()}function O4(t,e){return vxr(t,e?.attribs?.["data-src"]||e?.attribs?.src||"")}function Ixr(t){let e=Array.isArray(t)?t:t.split("-");for(let r=1;r<e.length;r++)if(e[r]!="")return r;return-1}async function Cxr(t,e){let r=await P4(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 N4(`${r}/index.php/vodsearch/${o.join("-")}.html`),l=Me(u),d=l("div.module-items > div.module-search-item").map((f,p)=>{let m=l(p).find("div.video-info-header h3 a")[0];return{vod_id:m.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:m.attribs.title,vod_pic:O4(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("a.video-serial").text()}}).get();return{page:a,pagecount:d.length<10?a:a+1,list:d}}else{let o=[n,"","","","","","","",a,"","",""];i.area&&(o[1]=i.area),i.by&&(o[2]=i.by),i.class&&(o[3]=i.class),i.year&&(o[11]=i.year);let c=`${r}/index.php/vodshow/${o.join("-")}.html`,u=await N4(c),l=Me(u),d=l("div.module-items > div.module-item").map((f,p)=>{let m=l(p).find("div.video-name a")[0];return{vod_id:m.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:m.attribs.title,vod_pic:O4(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("div.module-item-text").text()}}).get();return{page:a,pagecount:d.length<70?a:a+1,list:d}}}async function Txr(t,e){let r=await P4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await N4(`${r}/index.php/voddetail/${i}.html`),o=Me(a),c=[],u=[],l="";o("div.video-info-items a[href*=/vodsearch/]").each((m,h)=>{let A=h.attribs.href.match(/vodsearch\/(.*).html/)[1].split("-"),g=o(h).text().trim(),b=Ixr(A);if(b===5){let y={id:"s-5-"+decodeURIComponent(A[5].toString()),name:g};c.push(`[a=cr:${JSON.stringify(y)}/]${g}[/a]`)}else if(b===1){let y={id:"s-1-"+decodeURIComponent(A[1].toString()),name:g};u.push(`[a=cr:${JSON.stringify(y)}/]${g}[/a]`)}else b===13&&(l=g)});let d={vod_name:o(".page-title")[0].children[0].data,vod_pic:O4(r,o(".mobile-play .lazyload")[0]||o(".module-item-pic img")[0]),vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||"",vod_year:l,vod_actor:u.join(", "),vod_director:c.join(", "),vod_content:o("div.video-info-content p[style*=none]")[0].children[0].data.trim()},f=o("div.module-row-info p").map((m,h)=>h.children[0].data).get(),p=await wr(f,t);p&&(d.vod_play_from=p.froms,d.vod_play_url=p.urls),s.push(d)}return{list:s}}async function wxr(t,e){let r=await P4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await N4(`${r}/index.php/vodsearch/-------------.html?wd=${s}`),o=Me(a),c=o("div.module-items > div.module-search-item").map((u,l)=>{let d=o(l).find("div.video-info-header h3 a")[0];return{vod_id:d.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:d.attribs.title,vod_pic:O4(r,o(l).find("div.module-item-pic img")[0]),vod_remarks:o(l).find("a.video-serial").text()}}).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}async function Rxr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u<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 Oat={meta:{key:"wanou",name:"\u300C\u76D8\u300D\u73A9\u5076",type:3},api:async t=>{t.post("/init",_xr),t.post("/home",Sxr),t.post("/category",Cxr),t.post("/detail",Txr),t.post("/play",Nr),t.post("/search",wxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr),t.get("/test",Rxr)},check:P4};var Nxr=["http://www.miqk.cc","https://mihdr.top","https://www.mihdr.top","https://zhizhen1.top"],roe=async t=>(await t.db.getObjectDefault("/zhizhen",{}))?.urls||t.config.zhizhen?.urls||Nxr,Oxr=async(t,e)=>{await t.db.push("/zhizhen/urls",e)},Pxr=async t=>{await t.db.delete("/zhizhen/urls")};async function noe(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await roe(e.server)})}),t.put("/urls",async(e,r)=>{await Oxr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Pxr(e.server),r.send({code:0})})}var soe,k4=t=>{if(!soe){let e=Date.now();soe=new Promise(async r=>{let n=await roe(t),s=await Xn(n);console.log("\u81F3\u81FB\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return soe};async function ioe(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function kxr(t,e){return{class:[{type_id:"26",type_name:"\u4E25\u9009"},{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"24",type_name:"\u8001\u5267"}],filters:{}}}async function Dxr(t,e){let r=await k4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await ioe(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Bxr(t,e){let r=await k4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await ioe(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function Lxr(t,e){let r=await k4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await ioe(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Pat={meta:{key:"zhizhen",name:"\u300C\u76D8\u300D\u81F3\u81FB",type:3},api:async t=>{t.post("/init",qr),t.post("/home",kxr),t.post("/category",Dxr),t.post("/detail",Bxr),t.post("/play",Nr),t.post("/search",Lxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:k4};var D4=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),kat=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),Dat=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),Lat="douerpan,zyfb123",Mxr={douerpan:"\u8C46\u513F\u76D8",zyfb123:"\u8C46\u513F123"},aoe=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgchannel",{});if(D4(n,e))return n[e];let s=t.config?.tgchannel||{};return D4(s,e)?s[e]:r},Bat=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},B4=t=>aoe(t,"url","https://t.me"),ooe=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},coe=t=>aoe(t,"channelUsername",Lat),uoe=t=>aoe(t,"homeChannelUsername",Lat),L4=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},M4=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(D4(e,"channelNameMap"))return Bat(e.channelNameMap);let r=t.config?.tgchannel||{};return D4(r,"channelNameMap")?Bat(r.channelNameMap):Mxr},cE=async(t,e,r)=>{await t.db.push(`/tgchannel/${e}`,r)},Wxr=async t=>{await t.db.delete("/tgchannel")};async function loe(t){t.get("/config",async(e,r)=>{let n=await B4(e.server),s=await ooe(e.server),i=await coe(e.server),a=await uoe(e.server),o=await L4(e.server),c=await M4(e.server),u=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:u,channelUsername:kat(i),homeChannelUsername:kat(a),pic:o,channelNameMap:c}})}),t.put("/config",async(e,r)=>{await cE(e.server,"url",e.body.url),await cE(e.server,"count",e.body.count),await cE(e.server,"channelUsername",Dat(e.body.channelUsername).join(",")),await cE(e.server,"homeChannelUsername",Dat(e.body.homeChannelUsername).join(",")),await cE(e.server,"pic",e.body.pic),await cE(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})}),t.delete("/config",async(e,r)=>{await Wxr(e.server),r.send({code:0})})}function $xr(t){let e=t.attr("style"),r=/background-image:url\('([^']+)'\)/.exec(e);if(r&&r.length>1)return r[1]}function $at(t){return t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/名称[:|:]/)?.[1]||t,t=t.split(`
`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(【《「『〔〖〈﹝[]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(【《「『〔〖〈﹝[]/.test(t)?(t=t.replace(/^[\(\[\{(【《「『〔〖〈﹝[][^\)\]\})】》」』〕〗〉﹞]]*[\)\]\})】》」』〕〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim()):t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五六七八九十百千万亿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五六七八九十百千万亿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|杜比)?\s*(é«˜ç çŽ‡|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(杜比视界|杜比音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|杜比|é«˜ç çŽ‡|ä¸­ç çŽ‡|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|è¶…é«˜ç çŽ‡|EDR|æ ‡ç |Vivid|三维菁彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国字幕|双语|简中|日语|æ— æŸ|特别版|软字幕|补链接|MAX|ä¸­ç |音效|é«˜ç |台配|国语|环绕声|蓝光原盘|臻享超高清|首播|ç‚¹æ˜ |Viu|10B|硬字幕)\s*/g,"").replace(/\s*内封[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大小\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim()}var Fxr={"User-Agent":"MoZhao"};function doe(t){return rf().some(e=>e.validator(t))}function Fat(t,e=()=>!0){let r=[];for(let n of t){let s=n.attribs?.href;s&&e(s)&&r.push(s)}return r}function bw(t){return Fat(t,doe)}function W4(t){return Fat(t,$4)}function Gf(t){return[...new Set((t||[]).filter(Boolean))]}function Uxr(t){return String(t||"").trim().replace(/&amp;/g,"&").replace(/[\)\]\}>)】》」』〕〗〉﹞]、。,,;ï¼›!?!?]+$/g,"")}function qxr(t){let e=String(t||"");return Gf([/https?:\/\/[^\s"'<>]+/gi,/magnet:\?[^\s"'<>]+/gi,/ed2k:\/\/\|file\|.+?\|\d+\|[a-f0-9]{32}\|\//gi,/ed2k:\/\/[^\s"'<>]+/gi].flatMap(n=>e.match(n)||[]).map(Uxr))}function jxr(t,e){let r=t(e).find(".tgme_widget_message_date").attr("href");if(qat(r))return r;let n=e.attribs?.["data-post"];return n?`https://t.me/${n}`:""}function foe(t){let e=[],r=qxr(t);for(let n of r)doe(n)&&e.push(n);return e}function Uat(t){let e=[],r=t.match(/https?:\/\/[^\s]+/gi);if(r)for(let n of r)$4(n)&&e.push(n);return e}var qat=t=>/t.me\/.*\/.*/.test(t),$4=t=>/https?:\/\/(?:telegra\.ph|graph\.org)\//i.test(String(t||"")),jat=t=>rf().find(e=>e.validator(t)),Hat=(t,e)=>!e||typeof e!="object"?t:e[t]||t,Qat=t=>String(t||"").split(",").map(e=>e.trim()).filter(Boolean);async function poe(t){let e=await Ae.get(t,{timeout:5e3,headers:Fxr});return Me(e.data)}async function Hxr(t){let e=await poe(t),r=e(".tl_article").text()||e("body").text()||"";return{links:Gf([...foe(r),...bw(e("a"))])}}async function Gat(t){let e=Gf((t||[]).filter($4));if(!e.length)return[];let r=await Promise.all(e.map(async n=>{try{return(await Hxr(n)).links}catch(s){return console.error("[tgchannel] parse telegra failed",n,s?.message||s),[]}}));return Gf(r.flat())}async function Qxr(t){let e=await poe(t),r=e(".tgme_widget_message"),n=[];for(let s of r){let i=s.attribs["data-post"],a=$xr(e(s).find(".tgme_widget_message_photo_wrap"));e("br").replaceWith(`
`);let o=e(s).find(".tgme_widget_message_text").text(),c=$at(o),u=o,l=Gf([...foe(o),...bw(e(s).find(".tgme_widget_message_text a")),...bw(e(s).find(".tgme_widget_message_inline_button"))]),d=Gf([...W4(e(s).find(".tgme_widget_message_text a")),...W4(e(s).find(".tgme_widget_message_inline_button")),...Uat(o)]),f=[...l],p=f.length?[...f]:d.length?[...d]:[];if(!p.length){let m=jxr(e,s);m&&p.push(m)}p.length&&n.push({id:p.join("|"),title:c,description:u,cover:a,messageId:Number(i.split("/")[1]),panLinks:f})}return n}async function Gxr(t){let e=await poe(t),r=e('meta[property="og:description"]').attr("content"),n=e('meta[property="og:image"]').attr("content"),s=$at(r),i=Gf([...foe(r||""),...bw(e(".tgme_widget_message_text a")),...bw(e(".tgme_widget_message_inline_button"))]),a=Gf([...Uat(r||""),...W4(e(".tgme_widget_message_text a")),...W4(e(".tgme_widget_message_inline_button"))]),o=i.length?[]:await Gat(a),c=Gf([...i,...o]);return{title:s,description:r,cover:n,links:c}}async function Kxr(t,e){return await qr(t,e),{}}async function Vxr(t){let e=await uoe(t.server),r=await M4(t.server);return{class:Qat(e).map(n=>({type_id:n,type_name:Hat(n,r)}))}}var Mat={},Wat={},moe={};async function Kat(t){let e=await B4(t.server),r=await L4(t.server),n=t.body.id,s=t.body.page;s||(s=1);try{let i=await Qxr(`${e}/s/${n}${s>1?`?before=${Wat[n]}`:""}`);Wat[n]=i[0].messageId,s===1&&(Mat[n]=i[i.length-1].messageId),i.reverse();let a=i.map(o=>{let c,u="";return o.panLinks.length&&o.panLinks.forEach(l=>{let d=jat(l);d&&(u+=u?`|${d.name}`:d.name,c||(c=d.pic))}),c||(c="https://telegram.org/img/apple-touch-icon.png"),{vod_name:o.title,vod_id:o.id,vod_pic:r&&o.cover||c,vod_remarks:u,rawData:o}});return a.forEach(o=>{o.vod_name&&o.vod_id&&(moe[o.vod_id]=o.vod_name)}),{page:s,pagecount:Math.ceil(Mat[n]/a.length),list:a}}catch(i){return console.error(i),{page:s,pagecount:1,list:[]}}}async function zxr(t,e){let r=await B4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=i.split("|"),o=moe[i]||"";if(a.length===1&&qat(a[0])){let l=await Gxr(i.replace("https://t.me",r));!o&&l.title&&(o=l.title),a=l.links}else!a.some(doe)&&a.some($4)&&(a=await Gat(a));let c=await wr(a,t),u={vod_id:i,vod_name:o};c&&(u.vod_play_from=c.froms,u.vod_play_url=c.urls),s.push(u)}return{list:s}}async function Yxr(t,e){let r=await ooe(t.server),n=await coe(t.server),s=await L4(t.server),i=await M4(t.server),a=t.body.wd,o=Number(r),c=Number.isFinite(o)?Math.floor(o):0,u=c>0,l=Qat(n);if(!l.length)return{page:1,pagecount:1,list:[]};let d=await Promise.all(l.map(p=>Kat({body:{id:`${p}?q=${encodeURIComponent(a)}`},server:t.server}))),f=[];return d.forEach((p,m)=>{let h=p.list.filter(g=>g.rawData.panLinks.length);(u?h.slice(0,c):h).forEach(g=>{let b="",y;g.rawData.panLinks.forEach(x=>{let v=jat(x);v&&(b+=b?`|${v.name}`:v.name),y||(y=v.pic)}),f.push({vod_id:g.vod_id,vod_name:g.vod_name,vod_pic:s&&g.vod_pic||y,vod_remarks:`${b}:${Hat(l[m],i)}`}),g.vod_name&&g.vod_id&&(moe[g.vod_id]=g.vod_name)})}),{page:1,pagecount:1,list:f}}var Vat={meta:{key:"tgchannel",name:"\u300C\u76D8\u300DTG\u641C",type:3},api:async t=>{t.post("/init",Kxr),t.post("/home",Vxr),t.post("/category",Kat),t.post("/detail",zxr),t.post("/play",Nr),t.post("/search",Yxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var F4=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),Jxr=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),Xxr=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),Yat=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgsou",{});if(F4(n,e))return n[e];let s=t.config?.tgsou||{};return F4(s,e)?s[e]:r},zat=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},hoe=t=>Yat(t,"url","https://tgsou.252035.xyz"),goe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},Aoe=t=>Yat(t,"channelUsername",""),yoe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},xoe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{}),r={};if(F4(e,"channelNameMap"))r=zat(e.channelNameMap);else{let n=t.config?.tgsou||{};F4(n,"channelNameMap")&&(r=zat(n.channelNameMap))}return r},Ew=async(t,e,r)=>{await t.db.push(`/tgsou/${e}`,r)};async function boe(t){t.get("/config",async(e,r)=>{let n=await hoe(e.server),s=await goe(e.server),i=await Aoe(e.server),a=await yoe(e.server),o=await xoe(e.server),c=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:c,channelUsername:Jxr(i),pic:a,channelNameMap:o}})}),t.put("/config",async(e,r)=>{await Ew(e.server,"url",e.body.url),await Ew(e.server,"count",e.body.count),await Ew(e.server,"channelUsername",Xxr(e.body.channelUsername).join(",")),await Ew(e.server,"pic",e.body.pic),await Ew(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})})}var Jat={};async function Zxr(t,e){return await qr(t,e),{}}async function ebr(t,e){return{class:[]}}var tbr=(t,e)=>!e||typeof e!="object"?t:e[t]||t;function rbr(t){return t&&(t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/名称[:|:]/)?.[1]||t,t=t.split(`
`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(【《「『〔〖〈﹝[]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(【《「『〔〖〈﹝[]/.test(t)?(t=t.replace(/^[\(\[\{(【《「『〔〖〈﹝[][^\)\]\})】》」』〕〗〉﹞]]*[\)\]\})】》」』〕〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim()):t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五六七八九十百千万亿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五六七八九十百千万亿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|杜比)?\s*(é«˜ç çŽ‡|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(杜比视界|杜比音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|杜比|é«˜ç çŽ‡|ä¸­ç çŽ‡|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|è¶…é«˜ç çŽ‡|EDR|æ ‡ç |Vivid|三维菁彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国字幕|双语|简中|日语|æ— æŸ|特别版|软字幕|补链接|MAX|ä¸­ç |音效|é«˜ç |台配|国语|环绕声|蓝光原盘|臻享超高清|首播|ç‚¹æ˜ |Viu|10B|硬字幕)\s*/g,"").replace(/\s*内封[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大小\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim())}async function nbr(t,e){return{page:1,pagecount:1,list:[]}}async function sbr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.includes("|")?s.split("|"):[s],a=await wr(i,t),o={};o.vod_name=Jat[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls),n.push(o)}return{list:n}}async function ibr(t,e){let r=await hoe(t.server),n=await goe(t.server),s=await Aoe(t.server),i=await yoe(t.server),a=await xoe(t.server),o=t.body.wd,c=Number(n),u=Number.isFinite(c)?Math.floor(c):0,l=u>0,d=new URL(r);d.searchParams.set("pic",String(i)),l&&d.searchParams.set("count",String(u)),d.searchParams.set("channelUsername",s),d.searchParams.set("keyword",o||"");let f=await Ae.get(d.toString()),p=new Map;for(let h of f.data.results){let[A,g]=h.split("$$$");if(!g)continue;let b=g.split("##");for(let y=0;y<b.length&&(!l||y<=u);y++){let[x,v]=b[y].split("$$"),[I,R]=x.split("@"),w=rf().find(N=>N.validator(I));if(w){let N=rbr(v)||o,P=!!R,B=P?/^https?:\/\//i.test(R)?R:`${r}/down?id=${R}&channelUsername=${A}`:w.pic,M=P?B:I;p.has(M)||p.set(M,{links:[],panInfos:[],pic:B,group:A,title:N});let D=p.get(M),L=I?.replace(/\s+/g,"");D.links.includes(L)||(D.links.push(L),D.panInfos.push(w))}}}let m=[];for(let[h,A]of p.entries()){let g=[...new Set(A.panInfos.map(b=>b.name))].join("/");m.push({vod_id:A.links.join("|"),vod_name:A.title,vod_pic:A.pic,vod_remarks:`${g}:${tbr(A.group,a)}`}),A.title&&A.links.length&&(Jat[A.links.join("|")]=A.title)}return{page:1,pagecount:1,list:m}}var Xat={meta:{key:"tgsou",name:"\u300C\u76D8\u300DTG\u641C\xB2",type:3},api:async t=>{t.post("/init",Zxr),t.post("/home",ebr),t.post("/category",nbr),t.post("/detail",sbr),t.post("/play",Nr),t.post("/search",ibr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var Zat=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),abr="http://127.0.0.1:8080",tot=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgfilebot",{});if(Zat(n,e))return n[e];let s=t.config?.tgfilebot||{};return Zat(s,e)?s[e]:r},Eoe=t=>tot(t,"url",abr),_oe=t=>tot(t,"password",""),eot=async(t,e,r)=>{await t.db.push(`/tgfilebot/${e}`,r)},obr=async t=>{await t.db.delete("/tgfilebot")};async function Soe(t){t.get("/config",async(e,r)=>{let n=await Eoe(e.server),s=await _oe(e.server);r.send({code:0,data:{url:n,password:s}})}),t.put("/config",async(e,r)=>{await eot(e.server,"url",e.body.url||""),await eot(e.server,"password",e.body.password||""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await obr(e.server),r.send({code:0})})}var cbr="http://127.0.0.1:8080",not="",_w=20,ubr=30;async function lbr(t,e){return{}}function dbr(t){for(t=String(t||"").trim();t.endsWith("/");)t=t.slice(0,-1);return t}function ns(t){return String(t||"").replace(/\s+/g," ").trim()}function sot(t){return ns(t).replace(/[$#]/g," ")}function voe(t){return ns(t).replace(/^>+\s*/,"").replace(/^\*\*(.*?)\*\*$/,"$1").replace(/^__(.*?)__$/,"$1").replace(/^`(.*?)`$/,"$1").replace(/^\[(.*?)\]\([^)]*\)$/,"$1").replace(/^[-•]\s*/,"").replace(/^\*\s+/,"").trim()}function iot(t){let e=String(t||"").replace(/\r\n/g,`
`).split(`
`);for(let r of e){let n=ns(r);if(n&&!/^(主演|类型|制片国家|语言|ä¸Šæ˜ æ—¥æœŸ|片长|又名|导演|编剧)\s*[::]/.test(voe(n)))return n}return""}function aot(t){return String(t||"").replace(/[0-ï¼™]/g,e=>String(e.charCodeAt(0)-65296))}function fbr(t){let e=String(t||"").replace(/两/g,"\u4E8C");if(!e)return 0;if(/^\d+$/.test(e))return Number(e);let r={\u96F6:0,"\u3007":0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},n={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4},s=0,i=0,a=0;for(let o of e){if(r[o]!==void 0){a=r[o];continue}let c=n[o];if(!c)return 0;c===1e4?(i=(i+a)*c,s+=i,i=0):i+=(a||1)*c,a=0}return s+i+a}function j4(t){let e=ns(t).replace(/\.[a-z0-9]{2,5}$/i,""),r=e.match(/(?:^|[^0-90-ï¼™])(?:第\s*)?([0-90-ï¼™]{1,4})\s*(?:集|話|话|回|期)(?:\D|$)/);return r?"\u7B2C"+aot(r[1]).replace(/^0+/,"")+"\u96C6":(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?"\u7B2C"+r[1]+"\u96C6":"")}function rot(t){let e=aot(ns(t)),r=e.match(/第\s*([0-9]{1,4}|[零〇一二三四五六七八九十百千万两]{1,8})\s*(?:集|話|话|回|期)/);return r?fbr(r[1].replace(/^0+/,"")):(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?Number(r[1]):0)}function oot(t,e){let r=voe(iot(t));if(!r)return{name:"",remark:""};let n=r.match(/^[【\[]\s*([^】\]]+?)\s*[】\]]/);if(n)return{name:ns(n[1]),remark:j4(e)};let s=r.startsWith("#")?r.replace(/^#+\s*/,"").trim():r;if(!s)return{name:"",remark:""};if(!r.startsWith("#"))return{name:ns(s),remark:j4(e)};let i=s.match(/^(.*?)\s*(第\s*[0-90-9零〇一二三四五六七八九十百千万两]+\s*(?:集|話|话|回|期))(?:\s|$)/);return i?{name:ns(i[1]),remark:ns(i[2]).replace(/\s+/g,"")}:{name:ns(s),remark:j4(e)}}function qg(t){if(!t)return[];if(Array.isArray(t))return t;if(typeof t[Symbol.iterator]=="function"&&typeof t!="string")return[...t].filter(e=>e!=null);if(typeof t.length=="number"&&typeof t!="string"){let e=[];for(let r=0;r<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 Ioe(t){return encodeURIComponent(JSON.stringify(t||{}))}function jg(t){return t?JSON.parse(decodeURIComponent(String(t))):{}}function H4(t){if(t=Number(t||0),!t||t<0)return"";let e=["B","KB","MB","GB","TB"],r=t,n=0;for(;r>=1024&&n<e.length-1;)r/=1024,n++;let s=n===0||r>=100?0:r>=10?1:2;return`${r.toFixed(s)} ${e[n]}`}function pbr(t){if(t=Number(t||0),!t)return"";let e=new Date(t*1e3),r=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),i=String(e.getMinutes()).padStart(2,"0");return`${r}-${n} ${s}:${i}`}function U4(t,e){let r=0;for(let n of e)t.indexOf(n)>=0&&r++;return r}function cot(t){let e=String(t&&t.text||""),r=String(t&&t.name||""),n=(e+`
`+r).toLowerCase();if(!n.trim())return!1;let i=U4(n,["@duguan","\u8D4C\u9986","\u6D3B\u52A8\u9891\u9053","\u9996\u5B58","\u6D41\u6C34","\u6CE8\u518C\u9001","\u65B0\u7528\u6237\u6CE8\u518C","\u5173\u95EDvpn","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u9001\u5F69\u91D1","\u5F69\u91D1","\u6295\u6CE8","\u5145\u503C","\u63D0\u6B3E","\u63D0\u73B0","\u4E0A\u5206","\u4E0B\u5206","\u8FD4\u6C34","\u4F63\u91D1","\u76D8\u53E3","\u9A8C\u8D44","\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D"]),a=U4(n,["\u6CE8\u518C","\u9996\u5B58","\u9996\u5145","\u5145\u503C","\u5B58\u6B3E","\u6D41\u6C34","\u8FD4\u6C34","\u4E0B\u6CE8","\u6295\u6CE8","\u4E0A\u5206","\u4E0B\u5206","\u5F69\u91D1","\u9001\u5F69\u91D1","\u4F63\u91D1","\u6551\u63F4\u91D1","\u63D0\u6B3E","\u63D0\u73B0","\u51FA\u6B3E","\u9886\u53D6"]),o=U4(n,["\u6D3B\u52A8\u9891\u9053","\u5E73\u53F0","\u4FE1\u8A89\u5E73\u53F0","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u89C6\u8BAF","\u771F\u4EBA","\u76D8\u53E3","\u72D7\u5E84","pg\u96C6\u56E2","pg\u5A31\u4E50\u57CE","pg\u76F4\u8425","\u6C47\u65FA","\u8C6A\u535A\u5A31\u4E50","\u9A8C\u8D44","vpn","\u6D4F\u89C8\u5668\u75284g\u7F51\u7EDC"]),c=U4(n,["\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D","\u603B\u7FA4","\u5BA2\u670D","\u9891\u9053","bot","http://","https://"]),u=(n.match(/@[a-z0-9_]{4,}/g)||[]).length,l=(n.match(/[a-z0-9][a-z0-9-]+\.(?:com|net|cc|top|vip|app)\b/g)||[]).length,d=(n.match(/注册/g)||[]).length>=3;return i>=2||a>0&&o>0||a>=2&&(c>0||u>=2||l>0)||o>=2&&(c>0||u>=2||l>0)||d}async function mbr(t){let e=process.env.TGFILEBOT_URL||await Eoe(t),r=process.env.TGFILEBOT_PASSWORD||process.env.TGFILEBOT_KEY||await _oe(t);return{url:dbr(e)||cbr,password:String(r||"").trim()}}async function uot(t,e,r={}){let n=await mbr(t),s=new URL(e,n.url+"/"),i={...r};n.password&&(i.key=n.password);for(let[a,o]of Object.entries(i))o==null||o===""||s.searchParams.set(a,String(o));return s.toString()}async function G4(t,e,r={},n=3e4){let s=await uot(t,e,r),i=await Ae.get(s,{timeout:n,validateStatus:()=>!0});if(i.status<200||i.status>=300)throw new Error(`TGFileBot ${e} HTTP ${i.status}`);return typeof i.data=="string"?JSON.parse(i.data):i.data||{}}function hbr(t){let e=ns(t);return e?e.startsWith("#")?[e]:[e,"#"+e]:[]}function q4(t){return voe(t).replace(/^#+\s*/,"").replace(/[\s._\-::,,.。!!??、/\\|()[\]【】()《》<>〈〉"'“”‘’·]/g,"").toLowerCase()}function gbr(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Abr(t,e){let r=ns(e).replace(/^#+\s*/,"");return r?new RegExp("(^|\\s)#"+gbr(r)+"(?=\\s|$|#)").test(String(t||"")):!1}function Q4(t){try{return jg(t&&t.vod_id)}catch{return{}}}function ybr(t,e){let r=Q4(t),n=q4(ns(e).replace(/^#+\s*/,""));if(!n)return 0;let s=q4(r.name||t&&t.vod_name||""),i=q4(iot(r.text||"")),a=q4(r.text||"");return s===n?100:i===n?98:Abr(r.text||"",e)?95:s.startsWith(n)?80:i.startsWith(n)?75:s.indexOf(n)>=0?60:i.indexOf(n)>=0?50:a.indexOf(n)>=0?10:0}function xbr(t,e){return t.map((r,n)=>{let s=Q4(r);return{video:r,index:n,score:ybr(r,e),date:Number(s.date||0)}}).sort((r,n)=>n.score!==r.score?n.score-r.score:n.date!==r.date?n.date-r.date:r.index-n.index).map(r=>r.video)}function bbr(t,e){let r=new Set(t.map(n=>{let s=Q4(n);return`${s.cid||""}:${s.mid||""}`}));for(let n of e){let s=Q4(n),i=`${s.cid||""}:${s.mid||""}`;i!==":"&&r.has(i)||(i!==":"&&r.add(i),t.push(n))}return t}function Ebr(t,e=""){let r=oot(t?.text||t?.name,t?.name),n=r.name||ns(t?.name)||`Telegram ${t?.mid||""}`.trim(),s=r.remark||ns(t?.remark),i={cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:n,remark:s,text:t?.text||"",size:t?.size||0,date:t?.date||0,channel:e||""};return{vod_id:Ioe(i),vod_name:n,type_name:e||"",vod_pic:t?.pic||t?.cover||t?.thumb||not,vod_remarks:i.remark||"",topRightRemarks:H4(t?.size)||""}}function lot(t){let e=[];for(let r of qg(t)){let n=r&&r.channel?r.channel:"",s=qg(r&&r.item);for(let i of s)!i||cot(i)||e.push(Ebr(i,n))}return e.sort((r,n)=>{try{return Number(jg(n.vod_id).date||0)-Number(jg(r.vod_id).date||0)}catch{return 0}}),e}function _br(t){if(!t||!t.cid)return!1;if(t.reply_mid)return!0;let e=String(t.text||"");return e.trim()?/(剧集选择|评论区|评论|留言|回复|comment=|t\.me\/[a-z0-9_]+\/\d+\?comment=|t\.me\/c\/\d+\/\d+\?comment=)/i.test(e):!1}function dot(t,e){return`${sot(t)}$${Ioe(Sbr(e))}`}function Sbr(t){return{cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:t?.name||"",remark:t?.remark||"",size:t?.size||0,date:t?.date||0,channel:t?.channel||""}}function vbr(t){let e=String(t||""),r=e.indexOf("$");return r<0?{title:e,token:""}:{title:e.slice(0,r),token:e.slice(r+1)}}function Ibr(t){let e=vbr(t);try{let r=jg(e.token),n=rot(r.remark||"");if(n>0)return n}catch{}return rot(e.title)}function Cbr(t){return t.map((e,r)=>({item:e,index:r,episode:Ibr(e)})).sort((e,r)=>{let n=e.episode>0,s=r.episode>0;return n&&s&&e.episode!==r.episode?e.episode-r.episode:n!==s?n?-1:1:e.index-r.index}).map(e=>e.item)}function fot(t,e){let r=sot(t),n=H4(e);return!n||r.indexOf(n)>=0?r:`${r} ${n}`}function Tbr(t){return t&&t.items?qg(t.items):t&&t.item?[t]:qg(t)}function wbr(t,e,r){let n=new Set;for(let s of t){let i=String(s).split("$").slice(1).join("$");try{let a=jg(i);n.add(`${a.cid||""}:${a.mid||""}`)}catch{}}for(let s of qg(r)){let i=qg(s&&s.item);for(let a of i){if(!a||!a.cid||!a.mid||cot(a))continue;let o=`${a.cid}:${a.mid}`;if(n.has(o))continue;let c=oot(a.text||e.text||a.name,a.name),u=c.name||e.name,l=c.remark||j4(a.name)||"",d={...e,cid:a.cid,mid:a.mid,reply_mid:a.reply_mid||0,name:u,remark:l,size:a.size||0,date:a.date||e.date||0,text:a.text||e.text||""},f=l||ns(a.name)||e.remark||e.name;n.add(o),t.push(dot(fot(f,a.size),d))}}return t}async function Rbr(t,e){try{let r=await G4(t.server,"/channels",{},12e3);return{class:qg(r.channels).map(s=>{let i=ns(s&&s.id);return i?{type_id:i,type_name:ns(s.name)||i}:null}).filter(Boolean)}}catch(r){return console.error("[tgfilebot] channels failed",r?.message||r),{class:[]}}}async function Nbr(t,e){let r=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1),n=ns(t.body?.id||"all")||"all",s=await G4(t.server,"/latest",{channel:n,page:r,limit:_w}),i=lot(s.items);return{page:r,pagecount:s.more?r+1:r,limit:_w,total:s.total||i.length,list:i}}async function Obr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r.filter(Boolean)){let i=jg(s),a=Ioe(i),o=ns(i.name)||`Telegram ${i.mid||""}`.trim(),c=[dot(fot(i.remark||o,i.size),i)];try{let l=i.reply_mid||i.mid;if(i.cid&&l&&_br(i)){let d=await G4(t.server,"/replies",{cid:i.cid,mid:l,limit:ubr},2e4);wbr(c,i,Tbr(d))}}catch(l){console.error("[tgfilebot] replies skipped",l?.message||l)}let u=[i.remark?`Remark: ${i.remark}`:"",i.channel?`Channel: ${i.channel}`:"",i.cid?`CID: ${i.cid}`:"",i.mid?`MID: ${i.mid}`:"",i.size?`Size: ${H4(i.size)}`:"",i.date?`Date: ${pbr(i.date)}`:"",ns(i.text||"")].filter(Boolean).join(`
`);n.push({vod_id:a,vod_name:o,type_name:i.channel||"",vod_pic:i.pic||not,vod_remarks:i.remark||"",topRightRemarks:H4(i.size)||"",vod_content:u,vod_play_from:"TGFileBot",vod_play_url:Cbr(c).join("#")})}return{list:n}}async function Pbr(t,e){let r=jg(t.body?.id);return!r.cid||!r.mid?{parse:0,url:""}:{parse:0,url:await uot(t.server,"/stream",{cid:r.cid,mid:r.mid,cate:"user"})}}async function kbr(t,e){let r=ns(t.body?.wd||""),n=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1);if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of hbr(r))try{let a=await G4(t.server,"/search",{keywords:i,page:n,limit:_w},2e4);s=bbr(s,lot(a.items))}catch(a){console.error("[tgfilebot] search variant failed",i,a?.message||a)}return s=xbr(s,r),{page:n,pagecount:s.length>=_w?n+1:n,limit:_w,total:s.length,list:s}}var pot={meta:{key:"tgfilebot",name:"\u300C\u76F4\u300DTGFileBot",type:3},api:async t=>{t.post("/init",lbr),t.post("/home",Rbr),t.post("/category",Nbr),t.post("/detail",Obr),t.post("/play",Pbr),t.post("/search",kbr)}};var hot=Re(vv(),1),Coe=Re(Jn(),1),Hg="https://frodo.douban.com",ci={},mot=t=>`Rexxar-Core/0.1.3 api-client/1 com.douban.frodo/7.9.0(216) Android/28 product/Xiaomi11 rom/android network/wifi udid/${t} platform/mobile com.douban.frodo/7.9.0(216) Rexxar/1.2.151 platform/mobile 1.2.151`;async function got(t){if(ci.id&&ci.ua)return ci;let e=t.server.prefix+"/device";return ci=await t.server.db.getObjectDefault(e,{}),ci.id?ci.ua||(ci.ua=mot(ci.id),await t.server.db.push(e,ci)):(ci.id=Th(40).toLowerCase(),ci.ua=mot(ci.id),await t.server.db.push(e,ci)),ci}function Qg(t){t+=`&udid=${ci.id}&uuid=${ci.id}&&rom=android&apikey=0dad551ec0f84ed02907ff5c42e8ec70&s=rexxar_new&channel=Yingyongbao_Market&timezone=Asia/Shanghai&device_id=${ci.id}&os_rom=android&apple=c52fbb99b908be4d026954cc4374f16d&mooncake=0f607264fc6318a92b9e13c65db7cd3c&sugar=0`;let e=new URL(t),r=(0,hot.default)().unix().toString(),n=Coe.default.HmacSHA1("GET&"+encodeURIComponent(e.pathname)+"&"+r,"bf7dddc7c9cfe6f7"),s=Coe.default.enc.Base64.stringify(n);return t+"&_sig="+encodeURIComponent(s)+"&_ts="+r}async function Gg(t,e){return(await he.get(t,{headers:{"User-Agent":e||ci.ua}})).data}async function Dbr(t,e){return await got(t),{}}async function Bbr(t,e){let r=[{type_id:"t1",type_name:"\u70ED\u64AD"},{type_id:"t2",type_name:"\u7247\u5E93"},{type_id:"t250",type_name:"Top250"},{type_id:"t3",type_name:"\u699C\u5355",ratio:1},{type_id:"t4",type_name:"\u7247\u5355",ratio:1}],n={};return n.t1=[{key:"u",name:"",init:"movie/hot_gaia",value:[{n:"\u7535\u5F71",v:"movie/hot_gaia"},{n:"\u7535\u89C6\u5267",v:"subject_collection/tv_hot/items"},{n:"\u56FD\u4EA7\u5267",v:"subject_collection/tv_domestic/items"},{n:"\u7F8E\u5267",v:"subject_collection/tv_american/items"},{n:"\u65E5\u5267",v:"subject_collection/tv_japanese/items"},{n:"\u97E9\u5267",v:"subject_collection/tv_korean/items"},{n:"\u52A8\u6F2B",v:"subject_collection/tv_animation/items"},{n:"\u7EFC\u827A",v:"subject_collection/show_hot/items"}]}],n.t4=[{key:"type",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7535\u5F71",v:"movie"},{n:"\u7535\u89C6\u5267",v:"tv"}]},{key:"cate",name:"",init:"all",value:[{n:"\u5168\u90E8",v:"all"},{n:"\u8C46\u74E3\u7247\u5355",v:"official"},{n:"\u7CBE\u9009",v:"selected"},{n:"\u7ECF\u5178",v:"classical"},{n:"\u83B7\u5956",v:"prize"},{n:"\u9AD8\u5206",v:"high_score"},{n:"\u699C\u5355",v:"movie_list"},{n:"\u51B7\u95E8\u4F73\u7247",v:"dark_horse"},{n:"\u4E3B\u9898",v:"topic"},{n:"\u5BFC\u6F14",v:"director"},{n:"\u6F14\u5458",v:"actor"},{n:"\u7CFB\u5217",v:"series"}]}],n.t2=[{key:"form",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7535\u5F71",v:"\u7535\u5F71"},{n:"\u7535\u89C6\u5267",v:"\u7535\u89C6\u5267"},{n:"\u52A8\u6F2B",v:"\u52A8\u753B"},{n:"\u7EFC\u827A",v:"\u7EFC\u827A"},{n:"\u7EAA\u5F55\u7247",v:"\u7EAA\u5F55\u7247"},{n:"\u77ED\u7247",v:"\u77ED\u7247"}]},{key:"genre",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u540C\u6027",v:"\u540C\u6027"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u707E\u96BE",v:"\u707E\u96BE"}]},{key:"region",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u6FB3\u5927\u5229\u4E9A",v:"\u6FB3\u5927\u5229\u4E9A"},{n:"\u4FC4\u7F57\u65AF",v:"\u4FC4\u7F57\u65AF"},{n:"\u745E\u5178",v:"\u745E\u5178"},{n:"\u4E39\u9EA6",v:"\u4E39\u9EA6"},{n:"\u5DF4\u897F",v:"\u5DF4\u897F"},{n:"\u58A8\u897F\u54E5",v:"\u58A8\u897F\u54E5"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2010\u5E74\u4EE3",v:"2010\u5E74\u4EE3"},{n:"2000\u5E74\u4EE3",v:"2000\u5E74\u4EE3"},{n:"90\u5E74\u4EE3",v:"90\u5E74\u4EE3"},{n:"80\u5E74\u4EE3",v:"80\u5E74\u4EE3"},{n:"70\u5E74\u4EE3",v:"70\u5E74\u4EE3"},{n:"60\u5E74\u4EE3",v:"60\u5E74\u4EE3"},{n:"\u66F4\u65E9",v:"\u66F4\u65E9"}]},{key:"sort",name:"",init:"U",value:[{n:"\u70ED\u5EA6",v:"U"},{n:"\u8BC4\u5206",v:"S"},{n:"\u65F6\u95F4",v:"R"}]}],{class:r,filters:n}}async function Lbr(t,e){await got(t);let r=t.body.id,n=t.body.page,s=t.body.filters,i=n||1;if(i==0&&(i=1),r=="t1"){let a=Qg(`${Hg}/api/v2/${s.u||"movie/hot_gaia"}?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t250"){let a=Qg(`${Hg}/api/v2/subject_collection/movie_top250/items?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t2"){let a=s.form||"",o=s.genre||"",c=s.region||"",u=s.year||"",l=s.sort||"U",d=a,f=o,p="movie";d==="\u52A8\u753B"&&(d="\u7535\u89C6\u5267",f||(f="\u52A8\u753B")),(d==="\u7535\u89C6\u5267"||d==="\u7EFC\u827A")&&(p="tv");let m={};f&&(m.\u7C7B\u578B=f),d&&(m.\u5F62\u5F0F=d),c&&(m.\u5730\u533A=c);let h=[];a&&h.push(a),o&&h.push(o),c&&h.push(c),u&&h.push(u);let A=new URLSearchParams({refresh:"0",start:((i-1)*30).toString(),count:"30",selected_categories:JSON.stringify(m),uncollect:"false",score_range:"0,10"});l&&A.append("sort",l),h.length>0&&A.append("tags",h.join(","));let g=`https://m.douban.com/rexxar/api/v2/${p}/recommend?${A.toString()}`,y=(await he.get(g,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://m.douban.com/"}})).data,x=y&&y.items?y.items:[],v=[];for(let I of x)if(I&&(I.type==="movie"||I.type==="tv")){let R="";if(I.rating&&typeof I.rating.value<"u"){let w=I.rating.value;R=typeof w=="number"?w.toFixed(1):w.toString()}v.push({vod_id:I.id||"",vod_name:I.title||"",vod_pic:I.pic&&(I.pic.normal||I.pic.large)||"",vod_remarks:R?"\u8BC4\u5206:"+R:""})}return{page:parseInt(i),pagecount:i<10?i+1:i,list:v}}else if(r=="t3"){let a=Qg(`${Hg}/api/v2/movie/category_ranks?count=30&category=recent_hot`),o=await Gg(a),c=[];for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});a=Qg(`${Hg}/api/v2/tv/category_ranks?count=30&category=recent_hot`),o=await Gg(a);for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:1,pagecount:1,list:c}}else if(r=="t4"){let a=Qg(`${Hg}/api/v2/skynet/new_playlists?subject_type=${s.type||""}&category=${s.cate||"all"}&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.data[0].items)c.push({vod_id:u.owner?"dl_"+u.id:"cr_"+u.id,vod_name:u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("cr_")){let a=Qg(`${Hg}/api/v2/subject_collection/${r.substring(3)}/items?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await Gg(a),c=[];for(let u of o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("dl_")){let a=Qg(`${Hg}/api/v2/doulist/${r.substring(3)}/posts?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await Gg(a),c=[];for(let u of o.items){let l=u.content.subject;if(!l)continue;let d=(l.rating&&l.rating.value||"").toString();c.push({vod_id:l.id,vod_name:l.title,vod_pic:l.pic.normal||l.pic.large,vod_remarks:d.length>0?"\u8BC4\u5206:"+d:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}}async function Mbr(t,e){return{}}async function Wbr(t,e){return{}}async function $br(t,e){return{}}async function Fbr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u<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 Aot={meta:{key:"douban",name:"\u300C\u8350\u300D\u8C46\u74E3",type:3,indexs:1},api:async t=>{t.post("/init",Dbr),t.post("/home",Bbr),t.post("/category",Lbr),t.post("/detail",Mbr),t.post("/play",Wbr),t.post("/search",$br),t.get("/test",Fbr)}};function Ubr(t){let e=String(t||"").split("#")[0]||"",r=e.indexOf("$");return r>0?e.slice(0,r).trim():""}async function qbr(t,e){return{}}async function jbr(t,e){return"true"}async function Hbr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i={vod_id:s,vod_content:"",vod_name:s,vod_pic:"https://pic.rmb.bdstatic.com/bjh/1d0b02d0f57f0a42201f92caba5107ed.jpeg"},a=await wr(s,t);if(a){i.vod_play_from=a.froms,i.vod_play_url=a.urls;let o=Ubr(i.vod_play_url);o&&(i.vod_name=o)}n.push(i)}return{list:n}}async function Qbr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/support`).payload({clip:"https://xx.xx/1.m3u8"});return s.support=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/detail`).payload({id:"https://xx.xx/1.m3u8"}),s.detail=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/play`).payload({flag:"xx",id:"https://xx.xx/1.m3u8"}),s.play=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var yot={meta:{key:"push",name:"\u63A8\u9001",type:4},api:async t=>{t.post("/init",qbr),t.post("/support",jbr),t.post("/detail",Hbr),t.post("/play",Nr),t.get("/test",Qbr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var V4=async(t,e,r)=>(await t.db.getObjectDefault("/pansou",{}))?.[e]||t.config.pansou?.[e]||r,Toe=async t=>V4(t,"url","https://pan.199333.xyz"),woe=async t=>{let e=await V4(t,"channels","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Roe=async t=>{let e=await V4(t,"plugins","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Noe=async t=>{let e=await V4(t,"cloudTypes","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},K4=async(t,e,r)=>{await t.db.push(`/pansou/${e}`,r)},Gbr=async t=>{await t.db.delete("/pansou")};async function Ooe(t){t.get("/config",async(e,r)=>{let n=await Toe(e.server),s=await woe(e.server),i=await Roe(e.server),a=await Noe(e.server);r.send({code:0,data:{url:n,channels:s,plugins:i,cloudTypes:a}})}),t.put("/config",async(e,r)=>{await K4(e.server,"url",e.body.url||""),await K4(e.server,"channels",Array.isArray(e.body.channels)?e.body.channels.join(","):""),await K4(e.server,"plugins",Array.isArray(e.body.plugins)?e.body.plugins.join(","):""),await K4(e.server,"cloudTypes",Array.isArray(e.body.cloudTypes)?e.body.cloudTypes.join(","):""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await Gbr(e.server),r.send({code:0})})}var bot={},Poe="pansou_group@@@",Kbr=5*60*1e3,Vbr=30,uE=new Map,zbr={ali:"aliyun",aliyun:"aliyun",alipan:"aliyun",a189:"tianyi",189:"tianyi",tianyi:"tianyi",yidong:"mobile",mobile:"mobile",a139:"mobile",cmcc:"mobile",123:"123",pan123:"123","123pan":"123",a115:"115",pan115:"115",thunder:"xunlei"},Ybr={aliyun:"ali",mobile:"yidong",123:"123",115:"115"};function Kg(t){let e=String(t||"").trim().toLowerCase();return zbr[e]||e}function xot(t){return[...new Set((t||[]).map(Kg).filter(Boolean))]}function Jbr(t,e,r=""){let n=[t,e,r].map(s=>encodeURIComponent(s||""));return`${Poe}${n.join("@@@")}`}function Eot(t,e=!1){let r=String(t||"").trim();if(!r)return null;if(r.startsWith(Poe)){let n=r.slice(Poe.length).split("@@@");return n.length<2?null:{cloudType:decodeURIComponent(n[0]||""),keyword:decodeURIComponent(n[1]||""),searchToken:decodeURIComponent(n[2]||"")}}if(e&&r.includes("|")){let n=r.indexOf("|");return{cloudType:r.slice(0,n),keyword:r.slice(n+1),searchToken:""}}return null}function _ot(t){let e=Kg(t),r=Ybr[e]||e;return rf().find(n=>n.key===r||Kg(n.key)===e)}function Sot(t){return String(t?.url||t?.URL||"").replace(/\s+/g,"")}function vot(t,e=null){let r=Kg(t),n=e||_ot(r);return{key:r,name:n?.name||r,pic:n?.pic||""}}async function koe(t){return{apiUrl:await Toe(t),channels:await woe(t),plugins:await Roe(t),cloudTypes:await Noe(t)}}function Xbr(t,e,r=""){let n={kw:t};return e.channels.length>0&&(n.channels=e.channels),e.plugins.length>0&&(n.plugins=e.plugins),r?n.cloud_types=xot([r]):e.cloudTypes.length>0&&(n.cloud_types=xot(e.cloudTypes)),n}function Zbr(){return`${Date.now().toString(36)}${Math.random().toString(36).slice(2,10)}`}function eEr(t){let e=uE.get(t);return e?e.expiresAt<=Date.now()?(uE.delete(t),null):e.mergedByType:null}function tEr(t){if(!t||typeof t!="object")return"";let e=Zbr();for(uE.set(e,{mergedByType:t,expiresAt:Date.now()+Kbr});uE.size>Vbr;){let r=uE.keys().next().value;uE.delete(r)}return e}function rEr(t){return t?t.startsWith("tg:")?t.substring(3):t.startsWith("plugin:")?t.substring(7):t:null}function nEr(t){return t?t.replace(/^(名称[::])/,"").replace(/\s+/g," ").trim():""}function sEr(t,e,r=""){let n=Kg(r),s=new Map;for(let[a,o]of Object.entries(t))if(!(n&&Kg(a)!==n)&&Array.isArray(o))for(let c of o){let u=Sot(c);if(!u)continue;let l=rf().find(A=>A.validator(u));if(!l)continue;let d=vot(a,l),f=c.images&&Array.isArray(c.images)&&c.images.length>0,p=f?c.images[0]:d.pic,m=f?p:u;s.has(m)||s.set(m,{links:[],panInfos:[],sources:[],pic:p,title:nEr(c.note||e)});let h=s.get(m);if(!h.links.includes(u)&&(h.links.push(u),h.panInfos.push(d),c.source)){let A=rEr(c.source);A&&!h.sources.includes(A)&&h.sources.push(A)}}let i=[];for(let[,a]of s.entries()){let o=[...new Set(a.panInfos.map(u=>u.name))].join("/"),c=a.sources.length>0?`:${a.sources[0]}`:"";i.push({vod_id:a.links.join("|"),vod_name:a.title,vod_pic:a.pic,vod_remarks:`${o}${c}`})}return i}function iEr(t,e,r=""){let n=new Map;for(let[s,i]of Object.entries(t||{})){if(!Array.isArray(i))continue;let a=String(s||"").trim(),o=Kg(a);if(!o)continue;let c=_ot(o),u=vot(o,c);for(let l of i){let d=Sot(l);d&&(n.has(o)||n.set(o,{cloudType:o,requestCloudType:a||o,name:u.name,pic:u.pic,links:new Set}),n.get(o).links.add(d))}}return[...n.values()].map(s=>{let i=Jbr(s.requestCloudType,e,r);return{vod_id:i,vod_name:s.name||s.cloudType,vod_pic:s.pic||"",vod_remarks:`${s.links.size}\u6761\u7ED3\u679C`,vod_tag:"folder",type_id:"pan_category",type_name:"\u7F51\u76D8\u5206\u7C7B",panType:s.cloudType,cate:{id:i,name:s.name||s.cloudType}}})}async function Iot(t,e,r="",n=null){n=n||await koe(t);let s=Xbr(e,n,r);return Ae.post(`${n.apiUrl}/api/search`,s)}function aEr(t){t.forEach(e=>{e.vod_name&&e.vod_id&&(bot[e.vod_id]=e.vod_name)})}async function oEr(t,e){return await qr(t,e),{}}async function cEr(t,e){return{class:[]}}async function uEr(t,e){let r=Eot(t.body?.id||t.body?.type_id||t.body?.categoryId,!0);return r?.cloudType&&r?.keyword?dEr(t,r.keyword,r.cloudType,r.searchToken):{page:1,pagecount:1,list:[]}}async function lEr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){if(Eot(s))continue;let i=s.includes("|")?s.split("|"):[s],a=await wr(i,t),o={};o.vod_name=bot[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls),n.push(o)}return{list:n}}async function dEr(t,e,r,n=""){try{let s=String(e||"").trim(),i=parseInt(t.body?.page||"1",10)||1;if(!s)return{page:i,pagecount:1,list:[]};if(i>1)return{page:i,pagecount:1,list:[]};let a=await koe(t.server),o=n?eEr(n):null;if(o||(o=(await Iot(t.server,s,r,a)).data?.data?.merged_by_type),o){let c=sEr(o,s,r);return aEr(c),{page:1,pagecount:1,list:c}}}catch(s){console.error("PanSou category search error:",s)}return{page:1,pagecount:1,list:[]}}async function fEr(t,e){try{let r=String(t.body.wd||"").trim(),n=parseInt(t.body?.page||"1",10)||1;if(!r)return{page:n,pagecount:1,list:[]};if(n>1)return{page:n,pagecount:1,list:[]};let s=await koe(t.server),i=await Iot(t.server,r,"",s);if(i.data&&i.data.data&&i.data.data.merged_by_type){let a=i.data.data.merged_by_type,o=tEr(a);return{page:1,pagecount:1,list:iEr(a,r,o)}}return{page:1,pagecount:1,list:[]}}catch(r){return console.error("PanSou search error:",r),{page:1,pagecount:1,list:[]}}}var Cot={meta:{key:"pansou",name:"\u300C\u76D8\u300DPanSou",type:3},api:async t=>{t.post("/init",oEr),t.post("/home",cEr),t.post("/category",uEr),t.post("/detail",lEr),t.post("/play",Nr),t.post("/search",fEr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var lE=async t=>{let e=await t.db.getObjectDefault("/live2vod",{});return{sources:e?.sources||t.config.live2vod?.sources||[],showMode:e?.showMode||t.config.live2vod?.showMode||"groups",def_pic:e?.def_pic||t.config.live2vod?.def_pic||"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg"}},Doe=async(t,e)=>{await t.db.push("/live2vod",e)},pEr=async t=>{await t.db.delete("/live2vod")};async function Boe(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await lE(e.server)})}),t.put("/config",async(e,r)=>{await Doe(e.server,e.body),r.send({code:0})}),t.delete("/config",async(e,r)=>{await pEr(e.server),r.send({code:0})}),t.get("/sources",async(e,r)=>{let n=await lE(e.server);r.send({code:0,data:n.sources||[]})}),t.post("/sources",async(e,r)=>{let{name:n,url:s,img:i}=e.body;if(!n||!s){r.code(400).send({code:1,msg:"\u540D\u79F0\u548CURL\u4E0D\u80FD\u4E3A\u7A7A"});return}let a=await lE(e.server);a.sources=a.sources||[],a.sources.push({name:n,url:s,img:i||""}),await Doe(e.server,a),r.send({code:0})}),t.delete("/sources/:index",async(e,r)=>{let n=parseInt(e.params.index),s=await lE(e.server);s.sources&&n>=0&&n<s.sources.length?(s.sources.splice(n,1),await Doe(e.server,s),r.send({code:0})):r.code(404).send({code:1,msg:"\u7D22\u5F15\u65E0\u6548"})})}var Mo={sources:[],def_pic:"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg"},Sw={},z4={};async function mEr(t){return(await he(t,{method:"get",headers:{"User-Agent":"okhttp/3.14.9"},timeout:1e4})).data}function hEr(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 gEr(t){let e=t.split(`
`),r={},n=[],s="";return e.forEach(i=>{if(i=i.trim(),!!i){if(/,#/.test(i))s=i.split(",")[0].trim(),r[s]||(r[s]=[],n.push(s));else if(i.includes(",")&&s){let a=i.split(",");a.length>=2&&a[1].trim().startsWith("http")&&r[s].push({name:a[0].trim(),url:a[1].trim(),logo:""})}}}),{groups:r,groupNames:n}}async function Y4(t){if(Sw[t])return Sw[t];let e=await mEr(t),r;/#EXTM3U/.test(e)?r=hEr(e):r=gEr(e);for(let n of Object.keys(r.groups)){let s=r.groups[n],i=new Map;s.forEach(a=>{i.has(a.name)?(i.get(a.name).urls.push(a.url),!i.get(a.name).logo&&a.logo&&(i.get(a.name).logo=a.logo)):i.set(a.name,{...a,urls:[a.url]})}),r.groups[n]=Array.from(i.values())}return Sw[t]=r,r}async function AEr(t,e){let r=await lE(t.server);Mo.sources=r.sources||[],Mo.def_pic=r.def_pic||Mo.def_pic,Object.keys(Sw).forEach(s=>delete Sw[s]),z4={};let n=Mo.sources.map(async s=>{try{let i=await Y4(s.url),a=[{n:"\u5168\u90E8",v:""}];i.groupNames.forEach(o=>{a.push({n:o,v:o})}),z4[s.url]=[{key:"group",name:"",init:"",value:a}]}catch(i){console.error(`\u9884\u52A0\u8F7D\u76F4\u64AD\u6E90 ${s.name} \u5931\u8D25: ${i.message}`),z4[s.url]=[]}});return await Promise.all(n),{}}async function yEr(t,e){return{class:Mo.sources.map(n=>({type_id:n.url,type_name:n.name})),filters:z4}}async function xEr(t,e){let r=t.body.id,n=t.body.page||1,i=(t.body.filters||{}).group||"";if(n>1)return{page:n,pagecount:1,list:[]};let o=Mo.sources.find(c=>c.url===r)?.img||"";try{let c=await Y4(r),u=[],l=i?[i]:c.groupNames;for(let d of l){let f=c.groups[d];f&&f.forEach(p=>{u.push({vod_id:r+"$"+d+"$"+p.name,vod_name:p.name,vod_pic:p.logo||o||Mo.def_pic,vod_remarks:d})})}return{page:1,pagecount:1,total:u.length,list:u}}catch(c){return console.error(`\u83B7\u53D6\u5206\u7C7B\u9875\u5931\u8D25: ${c.message}`),{page:1,pagecount:1,list:[]}}}async function bEr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.split("$"),a=i[0],o=i[1],c=i.slice(2).join("$"),u=Mo.sources.find(f=>f.url===a),l=u?.img||"",d=u?.name||"\u76F4\u64AD\u6E90";try{let m=(await Y4(a)).groups[o]?.find(g=>g.name===c);if(!m){n.push({vod_id:s,vod_name:c,vod_pic:l||Mo.def_pic,vod_content:"\u672A\u627E\u5230\u9891\u9053",vod_play_from:d,vod_play_url:""});continue}let A=(m.urls||[m.url]).map((g,b)=>`\u7EBF\u8DEF${b+1}$${g}`);n.push({vod_id:s,vod_name:c,type_name:o,vod_pic:m.logo||l||Mo.def_pic,vod_content:`\u9891\u9053: ${c}
\u5206\u7EC4: ${o}
\u6765\u6E90: ${d}`,vod_play_from:d,vod_play_url:A.join("#"),vod_remarks:o})}catch(f){console.error(`\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25: ${f.message}`),n.push({vod_id:s,vod_name:c,vod_pic:l||Mo.def_pic,vod_content:`\u83B7\u53D6\u5931\u8D25: ${f.message}`,vod_play_from:d,vod_play_url:""})}}return{list:n}}async function EEr(t,e){return{parse:0,url:t.body.id}}async function _Er(t,e){let r=t.body.wd,n=[];for(let s of Mo.sources)try{let i=await Y4(s.url),a=s.img||"",o=new RegExp(r,"i");for(let c of i.groupNames){let u=i.groups[c];u&&u.forEach(l=>{o.test(l.name)&&n.push({vod_id:s.url+"$"+c+"$"+l.name,vod_name:l.name,vod_pic:l.logo||a||Mo.def_pic,vod_remarks:`${s.name} \xB7 ${c}`})})}}catch(i){console.error(`\u641C\u7D22\u6E90 ${s.name} \u5931\u8D25: ${i.message}`)}return{page:1,pagecount:1,total:n.length,list:n}}async function SEr(t,e){try{let r=function(a){a.statusCode&&a.statusCode===500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);return s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class&&s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filters:{}}),s.category=i.json(),r(i.json()),s.category.list&&s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()))),i=await t.server.inject().post(`${n}/search`).payload({wd:"CCTV",page:1}),s.search=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Tot={meta:{key:"live2vod",name:"\u300C\u76F4\u300D\u76F4\u64AD",type:3},api:async t=>{t.post("/init",AEr),t.post("/home",yEr),t.post("/category",xEr),t.post("/detail",bEr),t.post("/play",EEr),t.post("/search",_Er),t.get("/test",SEr)}};var Loe=Re(Jn(),1);var Rot=process.env.JINPAI_HOST||"https://m.jiabaide.cn",J4="Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36",vEr=process.env.JINPAI_APP_KEY||"cb808529bae6b6be45ecfab29a4889bc",IEr={"User-Agent":J4,Referer:`${Rot}/`},CEr={typeList:["type",""],plotList:["class",""],districtList:["area",""],languageList:["lang",""],yearList:["year",""],serialList:["by",""]},TEr=[{n:"\u65F6\u95F4",v:"2"},{n:"\u4EBA\u6C14",v:"3"},{n:"\u8BC4\u5206",v:"4"}];function At(t){return String(t??"").trim()}function wEr(t){return At(t).replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim()}function Not(t={}){return Object.entries(t).filter(([,e])=>e!=null&&e!=="").map(([e,r])=>`${e}=${r}`).join("&")}function REr(t={}){let e=String(Date.now()),r={...t,key:vEr,t:e},n=Loe.default.SHA1(Loe.default.MD5(Not(r)).toString()).toString();return{...IEr,t:e,sign:n}}async function dE(t,e={}){let r=Not(e),n=`${Rot}${t}${r?`?${r}`:""}`,s=await he.get(n,{headers:REr(e),timeout:2e4,validateStatus:()=>!0});if(s.status<200||s.status>=400)throw new Error(`HTTP ${s.status} @ ${n}`);let i=typeof s.data=="string"?JSON.parse(s.data||"{}"):s.data||{};if(Number(i.code)&&Number(i.code)!==200)throw new Error(i.msg||`API code=${i.code}`);return i}function Oot(t={}){let e=At(t.vodPubdate||""),r=e?e.split("-")[0]:"";return{vod_id:At(t.vodId),vod_name:At(t.vodName),vod_pic:At(t.vodPic),vod_remarks:[At(t.vodRemarks),At(t.vodDoubanScore)].filter(Boolean).join("_"),vod_year:r,type_id:At(t.typeId),type_name:At(t.typeName)}}function NEr({vodId:t="",nid:e="",episodeName:r="",sourceName:n="",title:s=""}={}){return encodeURIComponent(JSON.stringify({vodId:At(t),nid:At(e),episodeName:At(r),sourceName:At(n),title:At(s)}))}function OEr(t=""){let e=At(t);if(!e)return null;let r=[e];try{let s=decodeURIComponent(e);s&&s!==e&&r.unshift(s)}catch{}for(let s of r)try{let i=JSON.parse(s);if(i&&typeof i=="object")return{vodId:At(i.vodId),nid:At(i.nid),episodeName:At(i.episodeName),sourceName:At(i.sourceName),title:At(i.title)}}catch{}let n=e.match(/^(.*?)@(.*)$/);return n?{vodId:At(n[1]),nid:At(n[2]),episodeName:"",sourceName:"\u91D1\u724C\u7EBF\u8DEF",title:""}:null}function PEr(...t){for(let e of t){if(Number.isFinite(e)&&e>0)return e;let r=At(e);if(!r)continue;let n=Number(r);if(Number.isFinite(n)&&n>0)return n;let s=r.match(/^(?:第\s*)?(\d+)\s*(?:集|话|期)?(?:[\s.、:_-].*)?$/);if(s){let i=Number(s[1]);if(Number.isFinite(i)&&i>0)return i}}return null}function kEr(t="",e=null){let r=At(t),n=r.match(/^(?:第\s*(\d+)\s*(?:集|话|期)\s*|(\d+)\s*[.、:_-]\s*)(.*)$/),s=n?Number(n[1]||n[2]):null,i=Number.isFinite(e)&&e>0?e:s,a=n?At(n[3]):r;return i?a?`\u7B2C${i}\u96C6 ${a}`:`\u7B2C${i}\u96C6`:a||"\u6B63\u7247"}function Pot(t,e,r){return{page:t,pagecount:t+(r.length>=e?1:0),limit:e,total:(t-1)*e+r.length+(r.length>=e?1:0),list:r}}function DEr(t=""){let e=At(t);return!e||/^\d{3,4}\s*p?$/i.test(e)?!1:/[a-z\u4e00-\u9fa5]/i.test(e)}function BEr(t=""){let e=At(t).match(/(\d{3,4})\s*p?/i);if(!e)return"";let r=Number.parseInt(e[1],10);return Number.isFinite(r)?r>=4320?"8K":r>=2160?"4K":r>=1080?"\u8D85\u6E05":r>=720?"\u9AD8\u6E05":r>=480?"\u6807\u6E05":r>=360?"\u6D41\u7545":"":""}function LEr(t={}){let e=[t.name,t.title,t.resolution].map(At).filter(Boolean),r=e.find(DEr);if(r)return r;let n=e.find(s=>/^\d{3,4}\s*p?$/i.test(s));return BEr(n)||n||"\u64AD\u653E"}function wot(t={}){let e=At(t.url||t.playUrl||t.m3u8);if(!e)return null;let r=[t.name,t.resolution,t.title].map(At).filter(Boolean).join(" "),n=LEr(t);return{name:n,qualityLabel:r,url:e,headers:{"User-Agent":J4},priority:kot({...t,name:n,qualityLabel:r})||1}}function kot(t={}){let e=At(`${t.qualityLabel||""} ${t.name||""}`).toLowerCase();if(!e)return 0;if(/(?:原画|原盤|原盘)/i.test(e))return 1e4;if(/(?:8k|4320)/i.test(e))return 4320;if(/(?:4k|2160)/i.test(e))return 2160;let r=e.match(/(\d{3,4})\s*p?/i);if(r){let n=Number.parseInt(r[1],10);if(Number.isFinite(n))return n}return/(?:蓝光|藍光|超清)/i.test(e)?1080:/(?:高清)/i.test(e)?720:/(?:æ ‡æ¸…|標清)/i.test(e)?480:/(?:流畅|流暢)/i.test(e)?360:0}function MEr(t=[]){return t.map((e,r)=>({item:e,index:r,score:kot(e)})).sort((e,r)=>r.score-e.score||e.index-r.index).map(({item:e})=>e)}async function WEr(){let t=[],e={},r=await dE("/api/mw-movie/anonymous/get/filer/type"),n=Array.isArray(r.data)?r.data:[];for(let a of n){let o=At(a.typeId),c=At(a.typeName);!o||!c||t.push({type_id:o,type_name:c})}let i=(await dE("/api/mw-movie/anonymous/v1/get/filer/list")).data||{};for(let a of t){let o=a.type_id;e[o]=[];for(let[c,[u,l]]of Object.entries(CEr)){let d=c==="serialList"?[...TEr]:[{n:"\u5168\u90E8",v:""}];if(c!=="serialList"){let f=i?.[o]?.[c]||[];for(let p of f){let m=At(p.itemText);m&&d.push({n:m,v:c==="typeList"?At(p.itemValue):m})}}d.length>1&&e[o].push({key:u,name:l,init:c==="serialList"?"2":"",value:d})}}return{classes:t,filters:e}}async function $Er(t,e){return{}}async function FEr(t,e){try{let{classes:r,filters:n}=await WEr();return{class:r,filters:n}}catch(r){return console.error("jinpai home failed:",r.message),{class:[],filters:{}}}}async function UEr(t,e){let r=At(t.body?.id||"1"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{},i=30;try{let a={area:s.area||"",lang:s.lang||"",pageNum:String(n),pageSize:String(i),sort:s.by||"2",sortBy:"1",type:s.type||"",type1:r,v_class:s.class||"",year:s.year||""},c=((await dE("/api/mw-movie/anonymous/video/list",a))?.data?.list||[]).map(Oot).filter(u=>u.vod_id&&u.vod_name);return Pot(n,i,c)}catch(a){return console.error("jinpai category failed:",a.message),{page:n,pagecount:n,limit:i,total:0,list:[]}}}async function qEr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=At(s);if(i)try{let o=(await dE("/api/mw-movie/anonymous/video/detail",{id:i})).data||{};if(!Object.keys(o).length)continue;let c=At(o.vodId||i),u=At(o.sourceName||"\u91D1\u724C\u7EBF\u8DEF"),d=(Array.isArray(o.episodeList)?o.episodeList:[]).map((f,p)=>{let m=At(f.nid||f.episodeId||f.id);if(!m)return"";let h=PEr(f.episodeNumber,f.name,p+1),A=kEr(f.name||`\u7B2C${h||p+1}\u96C6`,h),g=NEr({vodId:c,nid:m,episodeName:A,sourceName:u,title:o.vodName});return`${A}$${g}`}).filter(Boolean);n.push({vod_id:c,vod_name:At(o.vodName),vod_pic:At(o.vodPic),type_name:At(o.vodClass||o.typeName),vod_remarks:At(o.vodRemarks),vod_year:At(o.vodYear||At(o.vodPubdate).slice(0,4)),vod_area:At(o.vodArea),vod_lang:At(o.vodLang),vod_director:At(o.vodDirector),vod_actor:At(o.vodActor),vod_content:wEr(o.vodContent||o.content||""),vod_play_from:d.length?u:"",vod_play_url:d.join("#")})}catch(a){console.error("jinpai detail failed:",i,a.message)}}return{list:n}}async function jEr(t,e){let r=At(t.body?.id),n=OEr(r);if(!n?.vodId||!n?.nid)return{parse:0,url:"",header:{}};try{let s={clientType:"3",id:n.vodId,nid:n.nid},a=(await dE("/api/mw-movie/anonymous/v2/video/episode/url",s))?.data||{},o=Array.isArray(a.list)?a.list:[],c=MEr(o.map(wot).filter(Boolean)),u={"User-Agent":J4};if(!c.length){let l=wot(a);l&&c.push(l)}return c.length?{parse:0,url:c[0].url,data:c[0].url,urls:c,header:u}:{parse:0,url:"",data:"",urls:[],header:u}}catch(s){return console.error("jinpai play failed:",s.message),{parse:0,url:"",header:{"User-Agent":J4}}}}async function HEr(t,e){let r=At(t.body?.wd),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=30;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i={keyword:r,pageNum:String(n),pageSize:String(s)},o=((await dE("/api/mw-movie/anonymous/video/searchByWordPageable",i))?.data?.list||[]).map(Oot).filter(c=>c.vod_id&&c.vod_name);return Pot(n,s,o)}catch(i){return console.error("jinpai search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}var Dot={meta:{key:"jinpai",name:"\u300C\u76F4\u300D\u91D1\u724C",type:3},api:async t=>{t.post("/init",$Er),t.post("/home",FEr),t.post("/category",UEr),t.post("/detail",qEr),t.post("/play",jEr),t.post("/search",HEr)}};var Z0={host:"https://api.ztcgi.com",headers:{"User-Agent":"Mozilla/5.0 (Linux; Android 9; V2196A Build/PQ3A.190705.08211809; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/91.0.4472.114 Mobile Safari/537.36;webank/h5face;webank/1.0;netType:NETWORK_WIFI;appVersion:416;packageName:com.jp3.xg3",Referer:"https://api.ztcgi.com",Accept:"application/json"},imgHost:"https://img.ztfgh.com"};function QEr(){return[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"}]}function Moe(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:`${Z0.imgHost}${e.startsWith("/")?e:`/${e}`}`:""}async function GEr(t,e){return{}}async function KEr(t,e){return{class:QEr()}}async function VEr(t,e){let r=t.body.id,s=t.body.page||1;s==0&&(s=1);try{let i=`${Z0.host}/api/crumb/list?fcate_pid=${r}&category_id=&area=&year=&type=&sort=&page=${s}`,o=(await he.get(i,{headers:Z0.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(A=>({vod_id:String(A.id),vod_name:A.title||"",vod_pic:Moe(A.path||""),vod_remarks:A.mask||""})).filter(A=>A.vod_id&&A.vod_name),l=parseInt(s,10)||1,d=u.length>0,f=d?l+1:l,p=Number(o?.per_page||0)||u.length||20,m=Number(o?.total||0),h=(l-1)*p+u.length+(d?1:0);return{page:l,pagecount:f,limit:p,total:m>0?m:h,list:u}}catch{return{list:[],page:parseInt(s,10)||1,pagecount:1,limit:20,total:0}}}async function zEr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r)try{let i=`${Z0.host}/api/video/detailv2?id=${s}`,o=(await he.get(i,{headers:Z0.headers})).data.data,c={vod_id:String(o.id||s),vod_name:o.title||"",vod_pic:Moe(o.thumbnail||o.path||o.tvimg||""),type_name:(o.types||[]).map(f=>f.name).join("/")||"",vod_year:o.year||"",vod_area:o.area||"",vod_remarks:o.mask||"",vod_actor:(o.actors||[]).map(f=>f.name).join("/")||"",vod_director:(o.directors||[]).map(f=>f.name).join("/")||"",vod_content:o.description||"",vod_play_from:"",vod_play_url:""},u=Array.isArray(o.source_list_source)?o.source_list_source:[],l=[],d=[];u.forEach((f,p)=>{let m=f.name||f.source_name||`\u7EBF\u8DEF${p+1}`;if(m==="\u5E38\u89C4\u7EBF\u8DEF")return;let h=Array.isArray(f.source_list)?f.source_list:[],A=[];h.forEach((g,b)=>{let y=g.source_name||g.name||`\u7B2C${b+1}\u96C6`,x=g.url||g.play_url||"";x&&A.push(`${y}$${x}`)}),A.length>0&&(l.push(m),d.push(A.join("#")))}),c.vod_play_from=l.join("$$$"),c.vod_play_url=d.join("$$$"),n.push(c)}catch{}return{list:n}}async function YEr(t,e){let r=t.body.id,n=r.startsWith("//")?`https:${r}`:r;return n.includes(".m3u8")||n.includes(".mp4")?{parse:0,url:n,header:Z0.headers}:{parse:1,url:n}}async function JEr(t,e){let r=t.body.page,n=t.body.wd,s=r||1;s==0&&(s=1);try{let i=`${Z0.host}/api/v2/search/videoV2?key=${encodeURIComponent(n)}&category_id=88&page=${s}&pageSize=20`,o=(await he.get(i,{headers:Z0.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(d=>({vod_id:String(d.id),vod_name:d.title||"",vod_pic:Moe(d.thumbnail||d.path||""),vod_remarks:d.mask||""})).filter(d=>d.vod_id&&d.vod_name),l=o.total||0;return{page:parseInt(s),pagecount:u.length>0?parseInt(s)+1:parseInt(s),total:l,list:u}}catch{return{list:[],page:parseInt(s),pagecount:1}}}async function XEr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home.class.length>0&&(s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1}),n.category=s.json(),n.category.list.length>0&&(s=await t.server.inject().post(`${r}/detail`).payload({id:n.category.list[0].vod_id}),n.detail=s.json(),n.detail.list&&n.detail.list.length>0))){n.play=[];for(let i of n.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c<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 Bot={meta:{key:"jianpian",name:"\u300C\u76F4\u300D\u8350\u7247",type:3},api:async t=>{t.post("/init",GEr),t.post("/home",KEr),t.post("/category",VEr),t.post("/detail",zEr),t.post("/play",YEr),t.post("/search",JEr),t.get("/test",XEr)}};var fE=Re(require("node:crypto"),1);var Lot={host:"https://api.w32z7vtd.com",headers:{"Cache-Control":"no-cache",Version:"2406025",PackageName:"com.uf076bf0c246.qe439f0d5e.m8aaf56b725a.ifeb647346f",Ver:"1.9.2",Referer:"https://api.w32z7vtd.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"okhttp/3.12.0"}},Woe={"User-Agent":"Lavf/57.83.100"},ZEr=`-----BEGIN PRIVATE KEY-----
MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1
ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU
1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcK
ZT3wj/cCI1vsCm3gj2R5SqkA9Y0CAwEAAQKBgAJH+4CxV0/zBVcLiBCHvSANm0l7
HetybTh/j2p0Y1sTXro4ALwAaCTUeqdBjWiLSo9lNwDHFyq8zX90+gNxa7c5EqcW
V9FmlVXr8VhfBzcZo1nXeNdXFT7tQ2yah/odtdcx+vRMSGJd1t/5k5bDd9wAvYdI
DblMAg+wiKKZ5KcdAkEA1cCakEN4NexkF5tHPRrR6XOY/XHfkqXxEhMqmNbB9U34
saTJnLWIHC8IXys6Qmzz30TtzCjuOqKRRy+FMM4TdwJBAJQZFPjsGC+RqcG5UvVM
iMPhnwe/bXEehShK86yJK/g/UiKrO87h3aEu5gcJqBygTq3BBBoH2md3pr/W+hUM
WBsCQQChfhTIrdDinKi6lRxrdBnn0Ohjg2cwuqK5zzU9p/N+S9x7Ck8wUI53DKm8
jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZ
K7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1b
L3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+L1rG8oa
t5lYKfpe8k83ZA==
-----END PRIVATE KEY-----`,Mot="Qmxi5ciWXbQzkr7o+SUNiUuQxQEf8/AVyUWY4T/BGhcXBIUz4nOyHBGf9A4KbM0iKF3yp9M7WAY0rrs5PzdTAOB45plcS2zZ0wUibcXuGJ29VVGRWKGwE9zu2vLwhfgjTaaDpXo4rby+7GxXTktzJmxvneOUdYeHi+PZsThlvPI=",$oe="1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79",Iw={INDEX_LIST:"/App/IndexList/indexList",PLAY_INFO:"/App/IndexPlay/playInfo",VURL_SHOW:"/App/Resource/Vurl/show",VURL_DETAIL:"/App/Resource/VurlDetail/showOne",FIND_MORE:"/App/Index/findMoreVod"},e1r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"64",type_name:"\u77ED\u5267"}],t1r={1:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],2:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],3:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],4:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],64:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}]},vw=new Map,r1r={category:3e5,detail:3e5,play:3e5,search:6e4};function n1r(t){return fE.default.createHash("md5").update(t).digest("hex")}function s1r(t){let e=Buffer.from("mvXBSW7ekreItNsT","utf8"),r=Buffer.from("2U3IrJL8szAKp0Fj","utf8"),n=fE.default.createCipheriv("aes-128-cbc",e,r),s=n.update(t,"utf8","hex");return s+=n.final("hex"),s.toUpperCase()}function i1r(t,e,r){let n=Buffer.from(e,"utf8"),s=Buffer.from(r,"utf8"),i=fE.default.createDecipheriv("aes-128-cbc",n,s),a=i.update(t,"hex","utf8");return a+=i.final("utf8"),a}function a1r(t){let e=Buffer.from(t,"base64"),r=256,n=[];for(let s=0;s<e.length;s+=r){let i=e.slice(s,s+r),a=fE.default.privateDecrypt({key:ZEr,padding:fE.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 o1r(t,e){let r=`token_id=,token=${$oe},phone_type=1,request_key=${t},app_id=1,time=${e},keys=${Mot}*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br`;return n1r(r)}function c1r(t){let e=vw.get(t);return e?Date.now()>e.expire?(vw.delete(t),null):e.data:null}function u1r(t,e,r){vw.set(t,{data:e,expire:Date.now()+(r1r[r]||6e4)}),vw.size>200&&vw.clear()}async function Cw(t,e,r="category"){let n=`${e}|${JSON.stringify(t)}`;if(r!=="none"){let p=c1r(n);if(p)return p}let s=Math.floor(Date.now()/1e3).toString(),i=s1r(JSON.stringify(t)),a=o1r(i,s),o=new URLSearchParams({token:$oe,token_id:"",phone_type:"1",time:s,phone_model:"xiaomi-22021211rc",keys:Mot,request_key:i,signature:a,app_id:"1",ad_version:"1"}).toString(),c=await he.post(`${Lot.host}${e}`,o,{headers:Lot.headers});if(c.status!==200||!c.data?.data?.keys||!c.data?.data?.response_key)return null;let u=a1r(c.data.data.keys);if(!u)return null;let l=JSON.parse(u),d=i1r(c.data.data.response_key,l.key,l.iv);if(!d)return null;let f=JSON.parse(d);return r!=="none"&&f&&u1r(n,f,r),f}function Wot(t){return{vod_id:`${t.vod_id}/${t.vod_continu||0}`,vod_name:t.vod_name,vod_pic:t.vod_pic,vod_remarks:(t.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${t.vod_continu}\u96C6`}}function l1r(t){let e=String(t||"").trim();if(!e)return"";let r=e.split("/")[0];return/^\d+$/.test(r)?r:e.match(/(\d+)/)?.[1]||e}function X4(t){let e=String(t||"").toLowerCase().replace("p","");return e==="8k"?100:e==="4k"||e==="2160"?90:e==="1440"?80:e==="1080"?70:e==="720"?60:e==="\u8D85\u6E05"?50:e==="\u9AD8\u6E05"?40:e==="\u6807\u6E05"?30:10}async function d1r(t,e){return{}}async function f1r(t,e){return{class:e1r,filters:t1r}}async function p1r(t,e){let r=t.body.id,n=String(t.body.page||1),s=t.body.filters||{};if(!r)return{page:1,pagecount:0,list:[]};let i=await Cw({area:s.area||"0",year:s.year||"0",pageSize:"20",sort:s.sort||"d_id",page:n,tid:String(r)},Iw.INDEX_LIST,"category"),a=Array.isArray(i?.list)?i.list.map(u=>Wot(u)):[],o=parseInt(n,10)||1,c=parseInt(i?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function m1r(t,e){let r=String(t.body.wd||"").trim(),n=String(t.body.page||1);if(!r)return{page:1,pagecount:0,list:[]};let s=await Cw({keywords:r,order_val:"1",page:n},Iw.FIND_MORE,"search"),a=(Array.isArray(s?.list)?s.list:[]).filter(u=>String(u?.vod_name||"").toLowerCase().includes(r.toLowerCase())).map(u=>Wot(u)),o=parseInt(n,10)||1,c=parseInt(s?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function h1r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=String(s||""),a=l1r(i);if(!a)continue;let[o,c]=await Promise.all([Cw({token_id:"1649412",vod_id:a,mobile_time:Math.floor(Date.now()/1e3).toString(),tokename:$oe},Iw.PLAY_INFO,"detail"),Cw({vurl_cloud_id:"2",vod_d_id:a},Iw.VURL_SHOW,"detail")]),u=o?.vodInfo;if(!u)continue;let l=[],d=Array.isArray(c?.list)?c.list:[];d.forEach((f,p)=>{let m=f?.play;if(!m||typeof m!="object")return;let h=[],A=[];if(Object.entries(m).forEach(([y,x])=>{x?.param&&(h.push(String(x.param)),A.push(String(y)))}),!h.length)return;A.sort((y,x)=>X4(x)-X4(y));let g=d.length===1?String(u.vod_name||"\u6B63\u7247"):String(f?.name||p+1),b=`${h[0]}||${A.join("@")}`;l.push(`${g}$${b}`)}),n.push({vod_id:i,vod_name:u.vod_name||"",vod_pic:u.vod_pic||"",vod_year:u.vod_year||"",vod_area:u.vod_area||"",vod_remarks:u.vod_remarks||(Number(u.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${u.vod_continu}\u96C6`),vod_actor:u.vod_actor||"",vod_director:u.vod_director||"",vod_content:String(u.vod_use_content||u.vod_content||"").trim(),vod_play_from:l.length>0?"\u74DC\u5B50\u4E13\u7EBF":"",vod_play_url:l.length>0?l.join("#"):""})}return{list:n}}async function g1r(t,e){let r=String(t.body.id||"").trim();if(!r)return{parse:0,url:"",header:Woe};let n=r.split("||");if(n.length<2)return{parse:0,url:r,header:Woe};let s={};n[0].split("&").forEach(c=>{let[u,l]=c.split("=");u&&(s[u]=l||"")});let i=n[1].split("@").filter(Boolean);i.length>0&&(i.sort((c,u)=>X4(u)-X4(c)),s.resolution=i[0]);let a=await Cw(s,Iw.VURL_DETAIL,"play");return{parse:0,url:String(a?.url||"").trim(),header:Woe}}var $ot={meta:{key:"guazi",name:"\u300C\u76F4\u300D\u74DC\u5B50",type:3},api:async t=>{t.post("/init",d1r),t.post("/home",f1r),t.post("/category",p1r),t.post("/detail",h1r),t.post("/play",g1r),t.post("/search",m1r)}};var Kf=String(process.env.PPNIX_HOST||"https://www.ppnix.com").trim(),A1r=String(process.env.PPNIX_LANG_PATH||"/cn").trim(),Uot=String(process.env.PPNIX_UA||"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36").trim(),qot=24,y1r=10*60*1e3,x1r=[{type_id:"movie",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u7535\u89C6\u5267"}],b1r={time:"newstime",hits:"onclick",score:"rating",newstime:"newstime",onclick:"onclick",rating:"rating"},Ql={expiresAt:0,filters:{},filterDef:{movie:{class:"",area:"",year:"",by:"newstime"},tv:{class:"",area:"",year:"",by:"newstime"}}};function gn(t){return t==null?"":String(t).trim()}function E1r(t=""){let e=gn(t);return e?e.startsWith("/")?e.replace(/\/+$/,""):`/${e.replace(/\/+$/,"")}`:"/cn"}var zg=E1r(A1r);function jot(t=""){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?`${Kf}${e}`:`${Kf}/${e}`:`${Kf}${zg}/`}function Vg(t){return gn(t).replace(/<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 Hot(t){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${Kf}${e}`:`${Kf}/${e}`:""}function _1r(t){let e=[],r=new Set;for(let n of Array.isArray(t)?t:[]){let s=gn(n?.vod_id||n?.vod_name);!s||r.has(s)||(r.add(s),e.push(n))}return e}function Qot(t){let e=gn(t);return e?/^https?:\/\//i.test(e)||e.startsWith("/")?e:e.startsWith("movie/")||e.startsWith("tv/")?`${zg}/${e}`:`${zg}/${e.replace(/^\/+/,"")}`:""}async function Tw(t,e={}){let r=jot(t),n={"User-Agent":Uot,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",Referer:e.referer||`${Kf}${zg}/`,...e.headers||{}},s=await he({url:r,method:e.method||"GET",headers:n,data:e.body,timeout:e.timeout||2e4,responseType:"text",validateStatus:()=>!0,maxRedirects:5}),i=Number(s.status||0),a=typeof s.data=="string"?s.data:String(s.data||"");if(i!==200)throw new Error(`HTTP ${i||"unknown"} @ ${r}`);return a}function Got(t,e,r=""){let n=[];return t(e).each((s,i)=>{let a=t(i),o=a.find("a.thumbnail, h2 a, a").first(),c=gn(o.attr("href")||a.find("h2 a").attr("href")||""),u=Qot(c),l=Vg(a.find("img.thumb").attr("alt")||a.find("h2 a").text()||o.text()),d=Hot(a.find("img.thumb").attr("src")||a.find("img.thumb").attr("data-src")||""),f=Vg(a.find("footer .rate").text()||a.find("footer").text());!u||!l||n.push({vod_id:u,vod_name:l,vod_pic:d,vod_remarks:f,type_id:r,type_name:r==="movie"?"\u7535\u5F71":r==="tv"?"\u7535\u89C6\u5267":""})}),_1r(n)}function S1r(t=""){let e=(t.match(/infoid\s*=\s*(\d+)/)||[])[1]||"",r=t.match(/m3u8\s*=\s*\[(.*?)\]/s);if(!r)return{infoId:e,items:[]};let n=[],s=/'([^']*)'|"([^"]*)"/g,i;for(;(i=s.exec(r[1]))!==null;){let a=gn(i[1]||i[2]||"");a&&n.push(a)}return{infoId:e,items:[...new Set(n)]}}function v1r(t){let e=gn(t.infoId||""),r=encodeURIComponent(gn(t.param||"")),n=encodeURIComponent(gn(t.referer||"")),s=encodeURIComponent(gn(t.episodeName||""));return`${e}|${r}|${n}|${s}`}function I1r(t){try{let e=String(t||"").split("|");return{infoId:gn(e[0]||""),param:decodeURIComponent(e[1]||""),referer:decodeURIComponent(e[2]||""),episodeName:decodeURIComponent(e[3]||"")}}catch{return{}}}function C1r(t={}){let e=t&&typeof t=="object"?t:{};return{class:gn(e.class||e.type||e.cate||""),area:gn(e.area||""),year:gn(e.year||""),by:gn(e.by||e.sort||"newstime")||"newstime"}}function Uoe(t,e=1,r={}){let n=C1r(r),s=n.class,i=n.area,a=n.year,o=b1r[n.by]||"newstime",c=Number(e)<=1?"":`${Number(e)-1}`;return`${zg}/${t}/${s}-${i}-${a}-${c}-${o}.html`}function T1r(t=[]){return[...new Set((t||[]).map(e=>gn(e)).filter(Boolean))]}function Foe(t,e,r=""){let n=[];return t(e).find("a").each((s,i)=>{let a=gn(t(i).text());!a||a===r||n.push(a)}),T1r(n)}function Fot(t){let e=[],r=t(".lists-content.filter dl");if(!r.length)return e;let n=Foe(t,r.eq(0),"\u5168\u90E8");n.length&&e.push({key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...n.map(a=>({n:a,v:a}))]});let s=Foe(t,r.eq(1),"\u5168\u90E8");s.length&&e.push({key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...s.map(a=>({n:a,v:a}))]});let i=Foe(t,r.eq(2),"\u5168\u90E8");return i.length&&e.push({key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...i.map(a=>({n:a,v:a}))]}),e.push({key:"by",name:"",init:"newstime",value:[{n:"\u65F6\u95F4",v:"newstime"},{n:"\u4EBA\u6C14",v:"onclick"},{n:"\u8BC4\u5206",v:"rating"}]}),e}async function w1r(t=!1){if(!t&&Ql.expiresAt>Date.now()&&Object.keys(Ql.filters).length>0)return{filters:Ql.filters,filter_def:Ql.filterDef};try{let[e,r]=await Promise.all([Tw(Uoe("movie",1,{})),Tw(Uoe("tv",1,{}))]);Ql.filters={movie:Fot(Me(e)),tv:Fot(Me(r))},Ql.expiresAt=Date.now()+y1r}catch{if(!Object.keys(Ql.filters).length){let e=[{key:"by",name:"",init:"newstime",value:[{n:"\u6309\u65F6\u95F4",v:"newstime"},{n:"\u6309\u4EBA\u6C14",v:"onclick"},{n:"\u6309\u8BC4\u5206",v:"rating"}]}];Ql.filters={movie:e,tv:e}}}return{filters:Ql.filters,filter_def:Ql.filterDef}}async function R1r(t,e){return{}}async function N1r(t,e){let{filters:r}=await w1r();return{class:x1r,filters:r}}async function O1r(t,e){try{let r=gn(t.body?.id||"movie"),n=Math.max(1,Number(t.body?.page||1)||1),s=t.body?.filters||{},i=await Tw(Uoe(r,n,s)),a=Me(i),o=Got(a,".lists-content > ul > li, .lists .lists-content ul li",r).filter(d=>d.vod_id.includes(`/${r}/`)),c=n,l=[...(a(".pagination, .pages, .pagenavi").html()||"").matchAll(/---(\d+)-\.html/g)].map(d=>Number(d[1])+1);return l.length?c=Math.max(n,...l):o.length>=qot&&(c=n+1),{page:n,pagecount:c,list:o}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}async function P1r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)try{let i=Qot(s);if(!i)continue;let a=await Tw(i),o=Me(a),c=Vg(o("h1.product-title").text()),u=Vg(o("title").text()).replace(/\s*\([^)]*\).*/,""),l=c.replace(/\s*\([^)]*\)\s*$/,"").trim()||u,d=Hot(o("header.product-header img.thumb").attr("src")||""),f=Vg(o(".product-excerpt").filter((v,I)=>o(I).text().includes("\u7B80\u4ECB\uFF1A")).text()).replace(/^简介:/,"").trim(),p=Vg(o(".product-excerpt").filter((v,I)=>o(I).text().includes("\u5BFC\u6F14\uFF1A")).find("span").text()),m=Vg(o(".product-excerpt").filter((v,I)=>o(I).text().includes("\u4E3B\u6F14\uFF1A")).find("span").text()).replace(/\s*\/\s*/g,","),h=(c.match(/\((\d{4})\)/)||[])[1]||"",A=i.includes("/movie/")?"\u7535\u5F71":i.includes("/tv/")?"\u7535\u89C6\u5267":"",{infoId:g,items:b}=S1r(a),y=(i.match(/(\d+)\.html/)||[])[1]||"",x=b.map((v,I)=>{let R=b.length>1?`\u7B2C${I+1}\u96C6`:gn(v)||"\u6B63\u7247",w=v1r({infoId:g||y,param:v,referer:jot(i),episodeName:R});return`${R}$${w}`});n.push({vod_id:i,vod_name:l,vod_pic:d,type_name:A,vod_year:h,vod_director:p,vod_actor:m,vod_content:f,vod_play_from:x.length?"PPnix":"",vod_play_url:x.join("#")})}catch{continue}return{list:n}}async function k1r(t,e){try{let r=I1r(t.body?.id||""),n=gn(r.infoId),s=gn(r.param);if(!n||!s)return{parse:0,url:gn(t.body?.id||"")};let i=gn(r.referer||`${Kf}${zg}/`);return{parse:0,url:`${Kf}/info/m3u8/${n}/${encodeURIComponent(s)}.m3u8`,header:{Referer:i,Origin:Kf,"User-Agent":Uot}}}catch{return{parse:1,url:gn(t.body?.id||""),header:{}}}}async function D1r(t,e){try{let r=gn(t.body?.wd||""),n=Math.max(1,Number(t.body?.page||1)||1);if(!r)return{page:1,pagecount:1,list:[]};let s=encodeURIComponent(r),i=n<=1?"":`-page-${n}`,a=await Tw(`${zg}/search/${s}--.html${i}`),o=Me(a),c=Got(o,".lists-content > ul > li, .lists .lists-content ul li").filter(u=>/\/(movie|tv)\/\d+\.html/.test(u.vod_id));return{page:n,pagecount:c.length>=qot?n+1:n,list:c}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}var Kot={meta:{key:"ppnix",name:"\u300C\u76F4\u300DPPnix",type:3},api:async t=>{t.post("/init",R1r),t.post("/home",N1r),t.post("/category",O1r),t.post("/detail",P1r),t.post("/play",k1r),t.post("/search",D1r)}};var qn={key:"anime1",name:"Anime1\u52D5\u756B",host:"https://anime1.me",listUrl:"https://d1zquzjgwo9yb.cloudfront.net/",playApi:"https://v.anime1.me/api",pic:"https://sta.anicdn.com/playerImg/8.jpg",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",timeout:15e3},ww=48,B1r=5*60*1e3,L1r=60,Vot=(()=>{let t=Math.max(new Date().getFullYear(),2025),e=[];for(let r=t;r>=2018;r-=1)e.push({type_id:String(r),type_name:String(r)});return[{type_id:"\u9023\u8F09\u4E2D",type_name:"\u9023\u8F09\u4E2D"},...e,{type_id:"2017",type_name:"\u66F4\u65E9"}]})(),eM={expireAt:0,list:[]},Z4=null;function Yg(t){return Me(`<div>${String(t||"")}</div>`).text().replace(/\s+/g," ").trim()}function Hoe(t=qn.host){return{"User-Agent":qn.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}function Rw(t,e=qn.host){let r=String(t||"").trim();if(!r)return"";try{return new URL(r,e).href}catch{return""}}function Qoe(t){let e=String(t||"").trim();if(!e)return"";try{let n=new URL(e,qn.host).searchParams.get("cat");if(n)return n}catch{}return e.replace(/^\/?\?cat=/,"")}function M1r(t){let e=String(t||"").trim();if(/^https?:\/\//i.test(e))return e;if(e.startsWith("/"))return Rw(e);let r=Qoe(e);return r?`${qn.host}/?cat=${encodeURIComponent(r)}`:qn.host}function W1r(t){let e=String(t||"").trim();return e?e.startsWith("//")?`https:${e}`:Rw(e,qn.host):""}function $1r(t){if(!Array.isArray(t))return null;let e=String(t[0]??"").trim(),r=Yg(t[1]);return!e||!r?null:{id:e,vod_id:e,vod_name:r,vod_pic:qn.pic,vod_remarks:Yg(t[2]),vod_year:String(t[3]??"").trim(),type_name:Yg(t[4]),vod_actor:Yg(t[5])}}async function joe(t,e={}){let r=Rw(t,e.base||qn.host),n=await he({url:r,method:"get",timeout:e.timeout||qn.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...Hoe(e.referer||qn.host),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function F1r(){let t=await he({url:`${qn.listUrl}?_=${Date.now()}`,method:"get",timeout:qn.timeout,responseType:"text",transformResponse:[n=>n],validateStatus:()=>!0,headers:Hoe(qn.host)});if(t.status<200||t.status>=300)throw new Error(`HTTP ${t.status}`);let e=JSON.parse(String(t.data||"{}")),r=Object.values(e).map($1r).filter(Boolean);return eM={expireAt:Date.now()+B1r,list:r},r}async function tM(){return eM.expireAt>Date.now()&&eM.list.length>0?eM.list:(Z4||(Z4=F1r().finally(()=>{Z4=null})),Z4)}function zot(t,e){let r=String(e||"\u9023\u8F09\u4E2D").trim();return r==="\u9023\u8F09\u4E2D"?t.filter(n=>n.vod_remarks.includes("\u9023\u8F09\u4E2D")):r==="2017"?t.filter(n=>{let s=Number.parseInt(n.vod_year,10);return Number.isFinite(s)&&s<=2017}):t.filter(n=>n.vod_year===r)}function Yot(t,e,r=ww){let n=Math.max(1,Number.parseInt(e,10)||1),s=t.length,i=Math.max(1,Math.ceil(s/r));return{list:t.slice((n-1)*r,n*r),page:n,pagecount:i,limit:r,total:s}}function U1r(t,e){let r=Qoe(e);return t.find(n=>n.id===r||n.vod_id===r)}function q1r(t){return Yg(t).replace(/[$#]/g," ").trim()}function j1r(t,e){let r=Yg(t),n=r.match(/\[(.*)\]/);return q1r(n?.[1]||r||`\u7B2C${e+1}\u96C6`)}function H1r(t){return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}function Q1r(t){try{let e=JSON.parse(Buffer.from(String(t||""),"base64").toString("utf8"));return e&&typeof e=="object"?e:{}}catch{return{}}}function G1r(t,e,r){let n=Me(t||"");n(".site-main article").each((s,i)=>{let a=String(n(i).find("[data-apireq]").first().attr("data-apireq")||"").trim();if(!a||r.has(a))return;let o=n(i).find(".entry-title").first().text();r.add(a),e.push({name:j1r(o,e.length),apiReq:a})})}async function K1r(t,e){let r=[],n=new Set,s=new Set,i=t,a=e;for(let o=0;o<L1r&&i;o+=1){n.add(a),G1r(i,r,s);let c=Me(i||"");if(o===0&&r.length===0){let l=Rw(c(".cat-links a").first().attr("href"),a);if(l&&!n.has(l)){a=l,i=await joe(a,{referer:e});continue}}let u=Rw(c(".nav-previous a").first().attr("href"),a);if(!u||n.has(u))break;a=u,i=await joe(a,{referer:e})}return r.reverse()}function V1r(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 qoe(t,e=qn.host){let r={"User-Agent":qn.ua,Referer:e||qn.host};return t&&(r.Cookie=t),r}async function z1r(t,e){let r=await he({url:qn.playApi,method:"post",data:`d=${t}`,timeout:qn.timeout,responseType:"text",transformResponse:[i=>i],validateStatus:()=>!0,headers:{...Hoe(qn.host),"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);let n=JSON.parse(String(r.data||"{}")),s=W1r(n?.s?.[0]?.src);if(!s)throw new Error("empty play url");return{url:s,cookie:V1r(r.headers?.["set-cookie"])}}async function Y1r(t,e){return{}}async function J1r(t,e){try{let r=zot(await tM(),"\u9023\u8F09\u4E2D").slice(0,ww);return{class:Vot,filters:{},list:r}}catch(r){return console.error("anime1 home failed:",r.message),{class:Vot,filters:{},list:[]}}}async function X1r(t,e){let r=t.body?.id||t.body?.tid||"\u9023\u8F09\u4E2D",n=t.body?.page||1;try{return Yot(zot(await tM(),r),n)}catch(s){return console.error("anime1 category failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:ww,total:0}}}async function Z1r(t,e){let r=String(t.body?.wd||"").trim(),n=t.body?.page||1;if(!r)return{list:[],page:1,pagecount:1,limit:ww,total:0};try{let s=r.toLowerCase(),i=(await tM()).filter(a=>a.vod_name.toLowerCase().includes(s));return Yot(i,n)}catch(s){return console.error("anime1 search failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:ww,total:0}}}async function e_r(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(a=>String(a||"").trim()).filter(Boolean),s=[],i=await tM().catch(()=>[]);for(let a of n){let o=Qoe(a),c=M1r(a);try{let u=await joe(c),l=Me(u||""),d=U1r(i,a),f=Yg(l(".page-title, h1").first().text()),m=(await K1r(u,c)).map(h=>`${h.name}$${H1r({apiReq:h.apiReq,referer:c})}`).join("#");s.push({vod_id:o||a,vod_name:d?.vod_name||f||o||a,vod_pic:d?.vod_pic||qn.pic,vod_remarks:d?.vod_remarks||"",vod_year:d?.vod_year||"",type_name:d?.type_name||"",vod_actor:d?.vod_actor||"",vod_content:d?.vod_remarks||"",vod_play_from:"Anime1",vod_play_url:m})}catch(u){console.error("anime1 detail failed:",a,u.message)}}return{list:s}}async function t_r(t,e){let r=String(t.body?.id||"").trim(),n=Q1r(r),s=String(n.apiReq||r).trim(),i=n.referer||qn.host;if(!s)return{parse:0,jx:0,url:"",header:qoe("",i)};try{let a=await z1r(s,i);return{parse:0,jx:0,url:a.url,playId:a.url,header:qoe(a.cookie,qn.host)}}catch(a){return console.error("anime1 play failed:",a.message),{parse:0,jx:0,url:"",header:qoe("",i)}}}var Jot={meta:{key:qn.key,name:"\u300C\u76F4\u300DAnime1",type:3},api:async t=>{t.post("/init",Y1r),t.post("/home",J1r),t.post("/category",X1r),t.post("/detail",e_r),t.post("/play",t_r),t.post("/search",Z1r)}};var Jg="https://gimy01.tv",ect="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",r_r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"34",type_name:"\u77ED\u5267"},{type_id:"13",type_name:"\u9646\u5267"}],Xot={\u5287:"\u5267",\u96FB:"\u7535",\u8996:"\u89C6",\u7DDA:"\u7EBF",\u570B:"\u56FD",\u7522:"\u4EA7",\u7D9C:"\u7EFC",\u85DD:"\u827A",\u52D5:"\u52A8",\u756B:"\u753B",\u985E:"\u7C7B",\u5225:"\u522B",\u72C0:"\u72B6",\u614B:"\u6001",\u5C0E:"\u5BFC",\u984C:"\u9898",\u6B61:"\u6B22",\u6A02:"\u4E50",\u611B:"\u7231",\u5F8C:"\u540E",\u9580:"\u95E8",\u9F8D:"\u9F99",\u99AC:"\u9A6C",\u98A8:"\u98CE",\u96F2:"\u4E91",\u8207:"\u4E0E",\u842C:"\u4E07",\u7121:"\u65E0",\u7DDA\u4E0A\u770B:"\u7EBF\u4E0A\u770B",\u9023\u7E8C\u5287:"\u8FDE\u7EED\u5267",\u96FB\u8996\u5287:"\u7535\u89C6\u5267",\u96FB\u5F71:"\u7535\u5F71",\u52D5\u6F2B:"\u52A8\u6F2B",\u7D9C\u85DD:"\u7EFC\u827A"};function Xg(t){return String(t||"").replace(/\/+$/,"")}function tct(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/&amp;/gi,"&").replace(/&quot;/gi,'"').replace(/&#39;/g,"'").replace(/\s+/g," ").trim()}function $o(t){let e=tct(t);return Object.keys(Xot).forEach(r=>{e=e.replace(new RegExp(r,"g"),Xot[r])}),e}function n_r(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Zg(t){let e=String(t||"").trim().replace(/^["']|["']$/g,"");return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?"https:"+e:e.startsWith("/")?Xg(Jg)+e:Xg(Jg)+"/"+e.replace(/^\.\//,""):""}function rM(t){return{"User-Agent":ect,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t||Xg(Jg)+"/"}}function s_r(t){let e=String(t||""),r=e.trim();if(!r.startsWith('"')||!r.endsWith('"'))return e;try{let n=JSON.parse(r);if(typeof n=="string"&&/(?:<!doctype\s+html|<html[\s>])/i.test(n))return n}catch{}return e}function i_r(t){return new Promise(e=>setTimeout(e,t))}function a_r(t){let e=String(t?.code||"").toUpperCase(),r=String(t?.message||"");return["ECONNRESET","ETIMEDOUT","ECONNABORTED","EAI_AGAIN"].includes(e)||/socket disconnected|TLS connection|timeout/i.test(r)}async function Nw(t,e={}){let r=Number.isInteger(e.retries)?e.retries:2,n;for(let s=0;s<=r;s+=1)try{let i=await he(t,{method:e.method||"get",headers:{...rM(e.referer),...e.headers||{}},data:e.data,timeout:e.timeout||2e4,responseType:"text",transformResponse:[a=>a]});return s_r(i.data)}catch(i){if(n=i,s>=r||!a_r(i))throw i;await i_r(300*(s+1))}throw n}function o_r(t){let e=String(t||""),r=[/var\s+player_data\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i,/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i,/player_data\s*=\s*(\{[\s\S]*?\})\s*;/i];for(let n of r){let s=e.match(n);if(s)try{return JSON.parse(s[1])}catch{}}return null}function c_r(t){let e=String(t?.url||"").trim(),r=String(t?.encrypt||"").trim();if(!e)return"";if(r==="1")try{return decodeURIComponent(e)}catch{return e}if(r==="2")try{return decodeURIComponent(Buffer.from(e,"base64").toString("utf8"))}catch{try{return Buffer.from(e,"base64").toString("utf8")}catch{return e}}return e}function rct(t){let e=String(t||"").trim();if(!e)return null;try{return JSON.parse(e)}catch{let n=e.match(/\{[\s\S]*\}/);if(!n)return null;try{return JSON.parse(n[0])}catch{}}return null}function nct(t){return/^https?:\/\//i.test(t)&&/(?:\.m3u8|\.mp4|\.flv|\.m4v|\.m4s)(?:[?#]|$)/i.test(t)}function sct(t){let e=String(t||"").trim();if(!e)return"";if(nct(e))return e;let r=rct(e);if(r&&typeof r=="object"){let s=sct(r.url||r.video||r.playurl);if(s)return s}let n=e.match(/https?:\/\/[^"'<>\s]+(?:\.m3u8|\.mp4|\.flv|\.m4v)(?:[^"'<>\s]*)?/i);return n?n[0]:""}function ict(t,e){let r=String(t||""),n=String(e||"");if(/^JDQM-/i.test(r)||/^JDQM$/i.test(n))return"JDQM";if(/^JDHG-/i.test(r)||/^JDHG$/i.test(n))return"JDHG";if(/^JD-/i.test(r)||/^(?:JD4K|JD2K)$/i.test(n)&&/^JD/i.test(r))return"JD2K";if(/^JK2-/i.test(r)||/^JK2$/i.test(n))return"JK2";if(/^NSYS-/i.test(r)||/^NSYS$/i.test(n))return"NSYS";if(/^NBY-/i.test(r)||/^NBY$/i.test(n))return"NBY";if(/^JinLiDj-/i.test(r)||/^djplayer$/i.test(n))return"djplayer";if(/^(?:znjson|znkan)-/i.test(r)||/^znjson$/i.test(n))return"znjson";let s=r.match(/^(JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)-/i);return s?s[1].toUpperCase():/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(n)?n.toUpperCase():/(?:iqiyi\.com|bilibili\.com|v\.qq\.com|sohu\.com|pptv\.com|letv\.com|xigua\.com|mgtv\.com)/i.test(r)?"etcjc":/v\.youku\.com/i.test(r)?"kmjc":"normal"}function u_r(t,e){let r=ict(t,e);return/^(?:JD4K|JD2K|JDQM|JDHG)$/i.test(r)?"d":/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(r)?"j":r==="normal"?"o":"v"}function l_r(t,e,r,n){let s="https://player.gimy.bot/"+u_r(t,e)+"/",i=ict(t,e),a=n||r,o=s+"?url="+encodeURIComponent(t);return o+="&jctype="+encodeURIComponent(i),a&&(o+="&next="+encodeURIComponent("//"+a.replace(/^https?:\/\//i,""))),{parseBase:s,referer:o}}function Zot(t,e=Xg(Jg)){return{"User-Agent":ect,Referer:t||Xg(Jg)+"/",Origin:e}}function d_r(t){return{vod_id:t.vod_id||"",vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||""}}function act(t,e){let r=[],n={};return(e&&e.length?e:t.root()).find("a[href*='/vod/'], a[href*='/detail/']").each((i,a)=>{let o=t(a),c=o.attr("href")||"",u=Zg(c);if(!/(?:\/detail\/|\/vod\/)\d+\.html/i.test(u)||n[u])return;let l=$o(o.attr("title")||o.find("img").attr("alt")||o.find(".title, .video-text, .module-poster-item-title, h3, h4, h5").first().text()||o.text());if(!l)return;let d=o.closest(".module-item, li, .public-list-box, .video-item, .item, .module-poster-item, .myui-vodlist__box"),f=Zg(o.attr("data-original")||o.attr("data-src")||o.attr("data-bg")||o.find("img").attr("data-original")||o.find("img").attr("data-src")||o.find("img").attr("src")||d.find("a.video-pic").first().attr("data-original")||d.find("a.video-pic").first().attr("data-src")||d.find("img").first().attr("data-original")||d.find("img").first().attr("data-src")||d.find("img").first().attr("src")||""),p=d.html()||o.parent().html()||"",m=String(p).match(/(?:更新至第?\d+集|更新第?\d+集|\(?\d+全\)?|全\d+集|已完結|已完结|HD中字|HD|TC|HC|搶先版|抢先版)/i);n[u]=!0,r.push(d_r({vod_id:u,vod_name:l,vod_pic:f,vod_remarks:m?$o(m[0]):""}))}),r}function Wo(t,e){let r=new RegExp("<span[^>]*>\\s*"+n_r(e)+"\\s*[\uFF1A:]\\s*<\\/span>([\\s\\S]*?)<\\/(?:li|div)>","i"),n=String(t||"").match(r);return n?$o(n[1]):""}function f_r(t){let e=[],r=[],n=new Set,s=(c,u)=>($o(c)||u||"\u6B63\u7247").replace(/[$#]/g," ").trim(),i=c=>{let u=[],l=new Set;return c.find("a[href*='/play/'], a[href*='/eps/']").each((d,f)=>{let p=t(f),m=p.attr("href")||"",h=Zg(m);if(!h||l.has(h))return;l.add(h);let A=s(p.attr("title")||p.text(),"\u7B2C"+(u.length+1)+"\u96C6");u.push(A+"$"+h)}),u},a=(c,u,l)=>{if(!u.length)return;let d=$o(c)||"\u9ED8\u8BA4\u7EBF\u8DEF",f=String(l||d||r.length);n.has(f)||(n.add(f),r.push({from:d,urls:u.join("#")}))},o=new Map;return t(".source[data-route-switch], [data-line-name][data-route-switch]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-switch")||"").trim(),f=l.clone();f.children().remove();let p=$o(l.attr("data-line-name")||f.text()||l.text());d&&p&&o.set(d,p)}),t(".episodes-route[data-route-sid], .eps[data-route-sid]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-sid")||"").trim();a(o.get(d)||"\u7EBF\u8DEF"+(d||r.length+1),i(l),"route:"+(d||r.length+1))}),t("#playTab a[href^='#con_playlist_']").each((c,u)=>{let l=t(u),d=String(l.attr("href")||"").replace(/^#/,""),f=$o(l.text())||d;d&&e.push({tabId:d,name:f})}),t("ul[id^='con_playlist_']").each((c,u)=>{let l=t(u),d=l.attr("id")||"",f=$o(l.prevAll("li").first().text())||d;d&&!e.some(p=>p.tabId===d)&&e.push({tabId:d,name:f})}),e.forEach(c=>{a(c.name,i(t("#"+c.tabId)),"tab:"+c.tabId)}),r.length||a("Gimy",i(t.root()),"fallback:gimy"),{playFrom:r.map(c=>c.from).join("$$$"),playUrl:r.map(c=>c.urls).join("$$$")}}async function p_r(t,e){return{}}async function m_r(t,e){return{class:r_r}}async function h_r(t,e){let r=String(t.body?.id||"2"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Nw(Xg(Jg)+"/type/"+r+(n>1?"-"+n:"")+".html"),i=Me(s),a=act(i);return{page:n,pagecount:a.length>0?n+1:n,list:a}}async function g_r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=/^https?:\/\//i.test(i)?i:Zg(i),o=await Nw(a),c=Me(o),u=f_r(c),l=c("h1.text-overflow, h1").first().text()||c("title").text(),d=Wo(o,"\u985E\u5225")||Wo(o,"\u7C7B\u522B"),f=d.match(/\b(?:19|20)\d{2}\b/)?.[0]||"";n.push({vod_id:a,vod_name:$o(l.replace(/(?:線上看|线上看)[\s\S]*$/i,"")),vod_pic:Zg(c("meta[property='og:image']").attr("content")||(c(".details-pic .video-pic").attr("style")||"").match(/url\(([^)]+)\)/)?.[1]||c("img").first().attr("src")||""),vod_content:$o(c(".switch-box .text, .details-content .text, .details-content, .detail-sketch").first().text()||c("meta[name='description']").attr("content")||""),vod_remarks:Wo(o,"\u72C0\u614B")||Wo(o,"\u72B6\u6001"),type_name:$o(d.replace(/\s*[·.]\s*(?:19|20)\d{2}\b.*$/,"")),vod_year:Wo(o,"\u5E74\u4EE3")||Wo(o,"\u5E74\u4EFD")||f,vod_area:Wo(o,"\u570B\u5BB6/\u5730\u5340")||Wo(o,"\u56FD\u5BB6/\u5730\u533A")||Wo(o,"\u5730\u5340")||Wo(o,"\u5730\u533A"),vod_actor:Wo(o,"\u4E3B\u6F14")||$o(c("li:contains('\u4E3B\u6F14') a, .detail__meta div:contains('\u4E3B\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_director:Wo(o,"\u5C0E\u6F14")||Wo(o,"\u5BFC\u6F14")||$o(c("li:contains('\u5C0E\u6F14') a, li:contains('\u5BFC\u6F14') a, .detail__meta div:contains('\u5C0E\u6F14') a, .detail__meta div:contains('\u5BFC\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_play_from:u.playFrom,vod_play_url:u.playUrl})}return{list:n}}async function A_r(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,url:""};let n=/^https?:\/\//i.test(r)?r:Zg(r);try{let s=await Nw(n,{referer:n}),i=o_r(s),a=c_r(i),o=String(i?.from||t.body?.flag||"").trim();if(!a)return{parse:1,url:n,header:rM(n)};if(nct(a))return{parse:0,url:a,header:Zot(n)};let c=i?.link_next?Zg(i.link_next):"",u=l_r(a,o,n,c),l=await Nw(u.parseBase+"parse.php?url="+encodeURIComponent(a)+"&_t="+Date.now(),{referer:u.referer,headers:{Accept:"application/json, text/plain, */*"}}),d=rct(l),f=sct(d?.url||d?.video||d?.playurl);return f?{parse:0,url:f,header:Zot(u.referer,"https://player.gimy.bot")}:{parse:1,url:a,header:rM(n)}}catch(s){return console.error("gimy play failed:",s.message),{parse:1,url:n,header:rM(n)}}}async function y_r(t,e){let r=tct(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s=Xg(Jg)+"/search/-------------.html?wd="+encodeURIComponent(r)+"&page="+n,i=await Nw(s),a=Me(i),o=act(a,a(".box-main-content").first());return{page:n,pagecount:o.length>0?n+1:n,list:o}}var oct={meta:{key:"gimy",name:"\u300C\u76F4\u300D\u5267\u8FF7",type:3},api:async t=>{t.post("/init",p_r),t.post("/home",m_r),t.post("/category",h_r),t.post("/detail",g_r),t.post("/play",A_r),t.post("/search",y_r)}};var Goe="https://hanxiaoquan.hanju.workers.dev",x_r="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",b_r=[{type_id:"0",type_name:"\u97E9\u5267"},{type_id:"1",type_name:"\u97E9\u5F71"},{type_id:"2",type_name:"\u65E5\u97E9\u7EFC"},{type_id:"3",type_name:"\u65E5\u97E9\u6F2B"},{type_id:"100",type_name:"\u70ED\u95E8"}];function Koe(t){return String(t||"").replace(/\/+$/,"")}function Gl(t){return String(t||"").replace(/\s+/g," ").trim()}function E_r(t){let e=String(t||"").trim();return e?e.startsWith("//")?"https:"+e:/^https?:\/\//i.test(e)?e:Koe(Goe)+(e.startsWith("/")?e:"/"+e):""}function cct(){let t=Koe(Goe);return{"User-Agent":x_r,Accept:"application/json, text/plain, */*","Content-Type":"application/json",Origin:t,Referer:t+"/"}}async function Voe(t,e,r=3e4){let n=await he(Koe(Goe)+t,{method:"post",headers:cct(),data:e||{},timeout:r,responseType:"json"});return typeof n.data=="string"?JSON.parse(n.data):n.data||{}}function zoe(t){return{vod_id:String(t?.vod_id||""),vod_name:Gl(t?.vod_name),vod_pic:E_r(t?.vod_pic),vod_remarks:Gl(t?.vod_remarks||t?.vod_class),vod_year:Gl(t?.vod_year),vod_director:Gl(t?.vod_director),vod_actor:Gl(t?.vod_actor),vod_content:Gl(t?.vod_content)}}function pE(t){return String(t||"").toLowerCase().replace(/\s+/g,"").replace(/[·•・\-—_::,,.。'"“”‘’!?!?()()\[\]【】]/g,"")}function __r(t,e){let r=pE(e),n=pE(t?.vod_name),s=pE(t?.vod_remarks),i=pE(t?.vod_actor),a=pE(t?.vod_director),o=pE(t?.vod_content);return r?n===r?1e4:n.startsWith(r)?8e3-n.length:n.includes(r)?6e3-n.indexOf(r):s.includes(r)?2500-s.indexOf(r):i.includes(r)?1800-i.indexOf(r):a.includes(r)?1500-a.indexOf(r):o.includes(r)?500-o.indexOf(r):0:0}function S_r(t,e,r){let n=[],s=Array.isArray(t)?t:[];for(let i of s){let a=zoe(i);if(!a.vod_id||!a.vod_name||r[a.vod_id])continue;let o=__r(a,e);o<=0||(r[a.vod_id]=!0,a._searchScore=o,n.push(a))}return n}function v_r(t){let e=zoe(t);e.type_name=Gl(t?.vod_class),e.vod_area=Gl(t?.vod_area)||"\u97E9\u56FD";let n=(Array.isArray(t?.vod_play_url)?t.vod_play_url:[]).map((s,i)=>{let a=Gl(s?.t||s?.name)||"\u7B2C"+(i+1)+"\u96C6",o=String(s?.u||s?.url||"").trim();return o?a+"$"+o:""}).filter(Boolean).join("#");return e.vod_play_from=n?"\u9ED8\u8BA4\u7EBF\u8DEF":"",e.vod_play_url=n,e}function I_r(t,e,r){let n=Number(t?.pagecount||t?.pageCount||t?.totalPage||0);return Number.isFinite(n)&&n>0?n:r.length>0?e+1:e}async function C_r(t,e){return{}}async function T_r(t,e){return{class:b_r}}async function w_r(t,e){let r=String(t.body?.id||"0"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Voe("/api/list",{c_id:r,page:String(n)}),i=(Array.isArray(s?.data)?s.data:[]).map(zoe).filter(a=>a.vod_id&&a.vod_name);return{page:n,pagecount:I_r(s,n,i),total:s?.total||i.length,list:i}}async function R_r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=await Voe("/api/detail",{b_id:i});a?.data&&n.push(v_r(a.data))}return{list:n}}async function N_r(t,e){let r=String(t.body?.id||"").trim();return r?{parse:0,url:r,header:cct()}:{parse:1,url:""}}async function O_r(t,e){let r=Gl(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s={},i=[],a=n===1?5:n;for(let o=n;o<=a;o++){let c=await Voe("/api/search",{keyword:r,page:String(o)},6e4),u=S_r(c?.data,r,s);if(i.push(...u),!Array.isArray(c?.data)||c.data.length<20||n>1)break}return i.sort((o,c)=>{let u=Number(c._searchScore||0)-Number(o._searchScore||0);return u!==0?u:o.vod_name.localeCompare(c.vod_name,"zh-CN")}),i.forEach(o=>{delete o._searchScore}),{page:n,pagecount:i.length>0?n+1:n,list:i}}var uct={meta:{key:"hanxiaoquan",name:"\u300C\u76F4\u300D\u97E9\u5C0F\u5708",type:3},api:async t=>{t.post("/init",C_r),t.post("/home",T_r),t.post("/category",w_r),t.post("/detail",R_r),t.post("/play",N_r),t.post("/search",O_r)}};var Joe=Re(require("node:vm"),1),fo=Re(Jn(),1);var xa={key:"wbbb",name:"\u6B6A\u6BD4\u5DF4\u535C",host:"https://wbbb1.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36",timeout:2e4},lct=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"}],P_r=/^(?:lzm3u8|bfzym3u8)$/i;function dct(t){return String(t||"").replace(/\/+$/,"")}function Ms(t,e,r=1,n=""){let s=String(t||"").match(e);return s&&s[r]||n}function ws(t=""){return String(t).replace(/<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 Yoe(t=""){return ws(t).replace(/\s*\/\s*/g,"/").replace(/^\/+|\/+$/g,"").trim()}function fct(t=""){return String(t).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function po(t=""){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?dct(xa.host)+e:dct(xa.host)+"/"+e.replace(/^\.\//,""):""}function k_r(t=""){let e=String(t||"").trim();if(!e)return"";if(e.startsWith("//"))return e;if(/^https?:\/\//i.test(e))try{let r=new URL(e);return`//${r.host}${r.pathname}${r.search}${r.hash}`}catch{}if(e.startsWith("/"))try{return`//${new URL(xa.host).host}${e}`}catch{}return e}function D_r(t){return(Array.isArray(t)?t:[]).map(e=>String(e||"").split(";")[0].trim()).filter(Boolean).join("; ")}function gct(t=`${xa.host}/`){return{"User-Agent":xa.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}async function hE(t,e={}){let r=/^https?:\/\//i.test(t)?t:po(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||xa.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...gct(e.referer),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function B_r(t,e={}){let r=await he({url:t,method:e.method||"get",data:e.data,timeout:e.timeout||xa.timeout,validateStatus:()=>!0,headers:e.headers||{}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);return typeof r.data=="string"?JSON.parse(r.data):r.data}function Xoe(t=""){let e=ws(String(t||"")).replace(/\s+/g,"").trim();return!e||/^(?:排序|选择播放源|切换播放源|更多|展开|收起)$/i.test(e)}function L_r(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.match(/\/detail\/(\d+)\.html/i)||e.match(/^(\d+)$/);return r?r[1]:e}function M_r(t=""){if(t&&typeof t=="object"&&!Array.isArray(t)){let i=po(t.playUrl||t.playId||t.url||t.id||""),a=ws(t.name||"").trim();return!i||!a?null:{name:a,id:i,playId:i,playUrl:i,url:i}}let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("$");if(r<0)return null;let n=e.slice(0,r).trim(),s=po(e.slice(r+1).trim());return!n||!s?null:{name:n,id:s,playId:s,playUrl:s,url:s}}function pct(t,e,r=0){if(Xoe(t))return null;let n=ws(String(t||"")).replace(/\s+/g," ").trim()||`\u7EBF\u8DEF${r+1}`,s=new Set,i=[];for(let a of Array.isArray(e)?e:[]){let o=M_r(a);!o||s.has(o.playId)||(s.add(o.playId),i.push(o))}return i.length?{name:n,url:i.map(a=>`${a.name}$${a.playUrl}`).join("#"),episodes:i}:null}function W_r(t){let e=Ms(t,/href=["']\/detail\/(\d+)\.html["']/i,1,""),r=ws(Ms(t,/<div class=["']module-(?:poster-item-title|card-item-title)["']>([\s\S]*?)<\/div>/i,1,""))||Ms(t,/alt=["']([^"']+)["']/i,1,""),n=po(Ms(t,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),s=ws(Ms(t,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""));return{vod_id:e,vod_name:r,vod_pic:n,vod_remarks:s}}function ece(t){let e=String(t||""),r=[],n=/<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:ws(s[2]),vod_pic:po(Ms(a,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),vod_remarks:ws(Ms(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=W_r(s[1]);a.vod_id&&a.vod_name&&r.push(a)}return r}function $_r(t){let e=[],r=/<div[^>]*class=["'][^"'>]*\bmodule-tab-item\b[^"'>]*["'][^>]*>([\s\S]*?)<\/div>/gi,n;for(;(n=r.exec(t))!==null;){let s=n[0],i=Ms(s,/data-dropdown-value\s*=\s*['"]([^'"]+)['"]/i,1,"").trim();if(i){Xoe(i)||e.push(i);continue}let a=ws(n[1]||"").trim();a&&!Xoe(a)&&e.push(a)}return e}function F_r(t){let e=[],r=/<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=po(c[1]),l=ws(c[2]).trim();!u||!l||a.push(`${l}$${u}`)}a.length&&e.push(a)}if(e.length)return e;let s=[...t.matchAll(/<a[^>]+href=["']([^"']*\/(?:vplay|play)\/[^"'#]+)["'][^>]*>([\s\S]*?)<\/a>/gi)];return s.length?[s.map(i=>`${ws(i[2]).trim()||"\u64AD\u653E"}$${po(i[1])}`)]:e}function U_r(t="",e=""){let r=ws(Ms(t,/<a[^>]+module-play-list-link[^"']*active[^"']*[^>]*>([\s\S]*?)<\/a>/i,1,"")),n=ws(Ms(t,/(?:正在播放|当前播放)[^::]*[::]\s*([\s\S]*?)(?:<|$)/i,1,"")),s=r||n;return e&&s&&(s=s.replace(new RegExp(`^${fct(e)}\\s*`),"").trim(),s=s.replace(new RegExp(`^\u300A?${fct(e)}\u300B?\\s*`),"").trim()),s.trim()}function q_r(t="",e={}){let r=String(e?.vod_data?.vod_name||"").trim(),n=U_r(t,r);return`\u5728\u7EBF\u64AD\u653E${r}${n?` ${n}`:""}`.trim()||r||"\u5728\u7EBF\u64AD\u653E"}function j_r(t){let e=[/var\s+player_aaaa\s*=\s*(\{.*?\})<\/script>/s,/var\s+player_.*?=\s*(\{.*?\})<\/script>/s,/player_aaaa\s*=\s*(\{.*?\})\s*;/s,/player_data\s*=\s*(\{.*?\})\s*;/s];for(let r of e){let n=String(t||"").match(r);if(n)try{return JSON.parse(n[1])}catch{}}return null}function H_r(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(n==="1")try{r=unescape(r)}catch{}else if(n==="2"){try{r=Buffer.from(r,"base64").toString("utf8")}catch{}try{r=unescape(r)}catch{}}return po(r)}function Zoe(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(!r)return!1;if(/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:[?#]|$)/i.test(r)||/^(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)$/i.test(n)&&/^https?:\/\//i.test(r)||P_r.test(n))return!0;try{let s=new URL(r);return/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:$|\?)/i.test(s.pathname+s.search)}catch{return!1}}function mct(t=""){let e=String(t||"").trim();if(/^[A-Za-z0-9+/]+={0,2}$/.test(e)&&e.length%4===0)try{return fo.default.enc.Base64.parse(e)}catch{}return fo.default.enc.Utf8.parse(e)}function Q_r(t){let e=()=>{},r=function(){return{on:e,hide:e,show:e,html:e,text:e,click:e,append:e,remove:e,css:e,attr:e,addClass:e,removeClass:e,find:()=>({}),val:()=>"",ready:e,length:0}};r.post=e,r.ajax=e,r.get=e,r.fn={};let n=new URL(t),s={console,CryptoJS:fo.default,URL,URLSearchParams,Buffer,atob:i=>Buffer.from(i,"base64").toString("binary"),btoa:i=>Buffer.from(i,"binary").toString("base64"),setTimeout:e,setInterval:()=>0,clearTimeout:e,clearInterval:e,fetch:async()=>({ok:!0,status:200,headers:new Map,text:async()=>"",json:async()=>({})}),localStorage:{getItem:()=>null,setItem:e,removeItem:e},sessionStorage:{getItem:()=>null,setItem:e,removeItem:e},navigator:{userAgent:xa.ua,clipboard:{writeText:async()=>{}}},document:{title:"wbbb-parser",body:{},addEventListener:e,querySelector:()=>null,createElement:()=>({style:{},click:e}),getElementById:()=>({style:{},addEventListener:e,play:async()=>{},pause:e})},location:{origin:n.origin,pathname:n.pathname,search:n.search,href:n.toString(),host:n.host},window:null,top:null,parent:null,self:null,$:r,jQuery:r,Artplayer(){return{on:e,once:e,emit:e,destroy:e,template:{},plugins:{},setting:{show:e},controls:{add:e},layers:{add:e},events:{proxy:e},notice:{show:e},storage:{get:()=>null,set:e}}},animation:{}};return s.window=s,s.top=s,s.parent=s,s.self=s,s}async function G_r(t,e){let r=Ms(e,/<script[^>]+src=["']([^"']*setting\.js[^"']*)["']/i,1,"");if(!r)throw new Error("setting.js missing");let n=new URL(r,t).toString(),i=`${await hE(n,{referer:t})}
;globalThis.__wbbbResolveRuntime={ urlValueurl, keyValue, vkeyValue, ckeyValue, nextParam, titleParam };`,a=Q_r(t);Joe.default.createContext(a),Joe.default.runInContext(i,a,{timeout:5e3});let o={...a.__wbbbResolveRuntime||{},decrypt:typeof a.decrypt=="function"?a.decrypt.bind(a):null,deplay:typeof a.deplay=="function"?a.deplay.bind(a):null};if(!o.urlValueurl||!o.keyValue||!o.vkeyValue||!o.ckeyValue)throw new Error("setting runtime params missing");return o}async function K_r(t,e,r){let n=k_r(e),s=String(r||"").trim(),i=`https://xn--qvr2v.850088.xyz/player/?url=${encodeURIComponent(t)}${n?`&next=${encodeURIComponent(n)}`:""}${s?`&title=${encodeURIComponent(s)}`:""}`,a=await he.get(i,{timeout:xa.timeout,responseType:"text",transformResponse:[A=>A],validateStatus:()=>!0,headers:gct(`${xa.host}/`)});if(a.status<200||a.status>=300)throw new Error(`HTTP ${a.status}`);let o=String(a.data||""),c=D_r(a.headers?.["set-cookie"]),u=await G_r(i,o),l=u.urlValueurl||`${String(t||"").trim()}${n?`&next=${n}`:""}`,d="https://xn--qvr2v.850088.xyz/player/api.php",f=new URLSearchParams({url:l,key:u.keyValue,vkey:u.vkeyValue,ckey:u.ckeyValue}).toString(),p=await B_r(d,{method:"post",data:f,headers:{"User-Agent":xa.ua,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Referer:i,Origin:"https://xn--qvr2v.850088.xyz",...c?{Cookie:c}:{}}});if(!p||Number(p.code)!==200||!p.url)throw new Error(p?.msg||"parse api failed");let m=String(p.url||"").trim(),h="";if(m&&u&&typeof u.decrypt=="function")try{h=(u.decrypt(m)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}if(!h&&m&&u&&typeof u.deplay=="function")try{let A=String(u.deplay(p.aes_key||"")||"").trim(),g=String(u.deplay(p.aes_iv||"")||"").trim();if(A&&g){h=(fo.default.AES.decrypt(m,fo.default.enc.Utf8.parse(A),{iv:fo.default.enc.Utf8.parse(g),mode:fo.default.mode.CBC,padding:fo.default.pad.Pkcs7}).toString(fo.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}}catch{}if(!h){let A=mct(p.aes_key||""),g=mct(p.aes_iv||"");if(m&&A&&g)try{h=(fo.default.AES.decrypt(m,A,{iv:g,mode:fo.default.mode.CBC,padding:fo.default.pad.Pkcs7}).toString(fo.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}}if(!h&&/^https?:\/\//i.test(m)&&(h=m),!h)try{h=decodeURIComponent(m)}catch{h=m}return h=po(h),Zoe(h,p.type||"")||(h=i),{url:h,type:p.type||"",parsePageUrl:i}}function mE(t={}){return{"User-Agent":xa.ua,Referer:`${xa.host}/`,Origin:xa.host,...t}}function hct(t,e={}){return{parse:1,jx:1,url:t,playId:t,urls:[{name:"\u55C5\u63A2\u7EBF\u8DEF",url:t,playId:t}],header:mE(e)}}async function V_r(t,e){return{}}async function z_r(t,e){try{let r=await hE("/");return{class:lct,filters:{},list:ece(r).slice(0,40)}}catch(r){return console.error("wbbb home failed:",r.message),{class:lct,filters:{},list:[]}}}async function Y_r(t,e){let r=String(t.body?.id||"1"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);try{let s=n>1?`/show/${r}--------${n}---.html`:`/show/${r}-----------.html`,i=await hE(s),a=ece(i),o=i.includes('title="\u4E0B\u4E00\u9875"')||i.includes("title='\u4E0B\u4E00\u9875'");return{page:n,pagecount:o?n+1:n,limit:20,total:(n-1)*20+a.length+(o?1:0),list:a}}catch(s){return console.error("wbbb category failed:",s.message),{page:n,pagecount:n,limit:20,total:0,list:[]}}}async function J_r(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n)try{let a=L_r(i),o=/^https?:\/\//i.test(a)?a:`/detail/${a}.html`,c=await hE(o),u=[...c.matchAll(/<div class=["']module-info-tag-link["']>([\s\S]*?)<\/div>/gi)].map(h=>h[1]),l=$_r(c),d=F_r(c),f=[];if(d.forEach((h,A)=>{let g=pct(l[A]||`\u7EBF\u8DEF${A+1}`,h,A);g&&f.push(g)}),f.length===0){let h=new Set,A=[...c.matchAll(/<a[^>]+href=["']([^"']*\/(?:vplay|play)\/[^"']+\.html)["'][^>]*>([\s\S]*?)<\/a>/gi)].map((b,y)=>{let x=po(b[1]),v=ws(b[2]).trim()||`\u7B2C${y+1}\u96C6`;return!x||h.has(x)?"":(h.add(x),`${v}$${x}`)}).filter(Boolean),g=pct(l[0]||"\u64AD\u653E\u7EBF\u8DEF",A,0);g&&(f=[g])}let p=f.map(h=>h.name),m=f.map(h=>h.url);s.push({vod_id:a,vod_name:ws(Ms(c,/<h1[^>]*>([\s\S]*?)<\/h1>/i,1,"")),vod_pic:po(Ms(c,/<div class=["']module-item-pic["']>[\s\S]*?<img[^>]+data-original=["']([^"']+)["']/i,1,""))||po(Ms(c,/<div class=["']module-item-pic["']>[\s\S]*?<img[^>]+(?:data-src|src)=["']([^"']+)["']/i,1,"")),type_name:Yoe(u[2]||""),vod_year:ws(u[0]||""),vod_area:ws(u[1]||""),vod_remarks:ws(Ms(c,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""))||ws(Ms(c,/\u66f4\u65b0\u81f3[^<\s]+/,0,"")),vod_actor:Yoe(Ms(c,/\u4e3b\u6f14:[\s\S]*?<div[^>]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_director:Yoe(Ms(c,/\u5bfc\u6f14:[\s\S]*?<div[^>]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_content:ws(Ms(c,/<div class=["']module-info-introduction-content[^"']*["'][^>]*>([\s\S]*?)<\/div>/i,1,"")),vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}catch(a){console.error("wbbb detail failed:",i,a.message)}return{list:s}}async function X_r(t,e){let r=String(t.body?.wd||"").trim(),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,total:0,list:[]};try{let s=`/search/-------------.html?wd=${encodeURIComponent(r)}${n>1?`&page=${n}`:""}`,i=await hE(s),a=ece(i);return{page:n,pagecount:a.length>=20?n+1:n,total:a.length,list:a}}catch(s){return console.error("wbbb search failed:",s.message),{page:n,pagecount:n,total:0,list:[]}}}async function Z_r(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,jx:1,url:"",playId:""};let n=/^https?:\/\//i.test(r)?r:po(r);try{let s=await hE(n,{referer:n}),i=j_r(s);if(!i)return{parse:0,jx:0,url:n,playId:n,header:mE()};let a=String(i.from||t.body?.flag||"").trim(),o=H_r(i.url,i.encrypt);if(Zoe(o,a))return{parse:0,jx:0,url:o,playId:o,header:mE({Referer:n})};let c=String(i.parse||i.jx||"").trim();if(c){let u=/^https?:\/\//i.test(c)?`${c}${encodeURIComponent(o)}`:po(`${c}${encodeURIComponent(o)}`);return{parse:0,jx:0,url:u,playId:u,header:mE({Referer:n})}}try{let u=await K_r(String(i.url||""),n,q_r(s,i));if(u?.url){let l=mE({Referer:u.parsePageUrl||n});return Zoe(u.url,u.type||"")?{parse:0,jx:0,url:u.url,playId:u.url,header:l}:hct(u.url,l)}}catch(u){console.warn("wbbb resolve failed:",u.message)}return hct(o||n,{Referer:n})}catch(s){return console.error("wbbb play failed:",s.message),{parse:1,jx:1,url:n,playId:n,header:mE({Referer:n})}}}var Act={meta:{key:xa.key,name:"\u300C\u76F4\u300D\u6B6A\u6BD4",type:3},api:async t=>{t.post("/init",V_r),t.post("/home",z_r),t.post("/category",Y_r),t.post("/detail",J_r),t.post("/play",Z_r),t.post("/search",X_r)}};var Pw={key:"girigiri",name:"girigiri\u7231\u52A8\u6F2B",host:"https://ani.girigirilove.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",timeout:15e3},ba=Pw.host,tce=Pw.ua,Ow=48;function Ru(t){return String(t||"").replace(/<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 Kl(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?ba+e:ba+"/"+e:""}function yct(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function eSr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function tSr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function rSr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}async function sM(t,e={}){let r=/^https?:\/\//i.test(t)?t:Kl(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||Pw.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":tce,Referer:e.referer||ba+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function nSr(t,e={}){let r=/^https?:\/\//i.test(t)?t:Kl(t),n=await he.get(r,{timeout:e.timeout||Pw.timeout,validateStatus:()=>!0,headers:{"User-Agent":tce,Referer:e.referer||ba+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function _ct(t){let e=[],r=t.match(/<div class="public-list-box public-pic-b">[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="public-list-exp"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||"",a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/<span class="public-list-prb[^>]*>([\s\S]*?)<\/span>/)||[])[1]||"";!s||!i||e.push({vod_id:s,vod_name:Ru(i),vod_pic:Kl(a),vod_remarks:Ru(o)})}return e}function sSr(t){let e=[],r=/<div class="slide-time-bj swiper-slide"><a href="([^"]+)">[\s\S]*?data-background="([^"]+)"[\s\S]*?<span>([^<]+)<\/span>[\s\S]*?<h3 class="slide-info-title hide">([^<]+)<\/h3>[\s\S]*?<div class="slide-info hide2">([\s\S]*?)<\/div>/g,n;for(;(n=r.exec(t))!==null;)e.push({vod_id:n[1],vod_name:Ru(n[4]),vod_pic:Kl(n[2]),vod_remarks:Ru(n[3]),vod_content:Ru(n[5])});return e}function nM(t,e){let r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),n=t.match(new RegExp(`<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?_ct(n[1]):[]}var xct=[{type_id:"2",type_name:"\u65E5\u756A"},{type_id:"3",type_name:"\u7F8E\u756A"},{type_id:"21",type_name:"\u5287\u5834\u7248"},{type_id:"20",type_name:"\u771F\u4EBA\u756A\u5287"},{type_id:"24",type_name:"BD\u526F\u97F3\u8ECC"},{type_id:"26",type_name:"\u6F14\u5531\u6703&\u5468\u908A\u6D3B\u52D5&\u5176\u4ED6"}],mo={n:"\u5168\u90E8",v:""},gE={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},AE={key:"month",name:"",init:"",value:[mo,{n:"\u4E00\u6708",v:"\u4E00\u6708"},{n:"\u56DB\u6708",v:"\u56DB\u6708"},{n:"\u4E03\u6708",v:"\u4E03\u6708"},{n:"\u5341\u6708",v:"\u5341\u6708"}]},yE={key:"year",name:"",init:"",value:(()=>{let t=[mo];for(let e=2026;e>=2001;e--)t.push({n:String(e),v:String(e)});return t.push({n:"2000\u81F390\u5E74\u4EE3",v:"2000\u81F390\u5E74\u4EE3"}),t})()},bct={2:[{key:"class",name:"",init:"",value:[mo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C"].map(t=>({n:t,v:t}))]},AE,yE,{key:"lang",name:"",init:"",value:[mo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"}]},{key:"version",name:"",init:"",value:[mo,{n:"TV\u756A",v:"TV\u756A"},{n:"\u6CE1\u9762\u756A",v:"\u6CE1\u9762\u756A"},{n:"OVA",v:"OVA"}]},{key:"state",name:"",init:"",value:[mo,{n:"\u5C0F\u8BF4\u6539",v:"\u5C0F\u8BF4\u6539"},{n:"\u6F2B\u753B\u6539",v:"\u6F2B\u753B\u6539"},{n:"\u6E38\u620F\u6539",v:"\u6E38\u620F\u6539"},{n:"\u539F\u521B",v:"\u539F\u521B"}]},gE],3:[{key:"class",name:"",init:"",value:[mo,...["\u641E\u7B11","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8"].map(t=>({n:t,v:t}))]},AE,yE,{key:"lang",name:"",init:"",value:[mo,{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},gE],21:[{key:"class",name:"",init:"",value:[mo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u803D\u7F8E","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},AE,yE,{key:"lang",name:"",init:"",value:[mo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u4E2D\u6587",v:"\u4E2D\u6587"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},gE],20:[{key:"class",name:"",init:"",value:[mo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C","\u7EAA\u5F55\u7247"].map(t=>({n:t,v:t}))]},AE,yE,{key:"lang",name:"",init:"",value:[mo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u6CF0\u8BED",v:"\u6CF0\u8BED"}]},gE],24:[{key:"class",name:"",init:"",value:[mo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},AE,yE,gE],26:[{key:"class",name:"",init:"",value:[mo,{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u5468\u8FB9\u6D3B\u52A8",v:"\u5468\u8FB9\u6D3B\u52A8"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},AE,yE,gE]};function iSr(t,e,r={}){let n=t||"2",s=m=>encodeURIComponent(m||""),i=r.by||"",a=r.class||"",o=r.month||"",c=r.year||"",u=r.version||"",l=r.state||"",d=r.lang||"",f=e>1?String(e):"",p=`/show/${n}-${s(o)}-${s(i)}-${s(a)}-${s(d)}----${f}-${s(l)}--${s(c)}/`;return u&&(p+=`version/${s(u)}/`),ba+p}function Ect(t,e={}){return{"User-Agent":tce,Referer:t||ba+"/",Origin:ba,...e}}async function aSr(t,e){return{}}async function oSr(t,e){try{let r=await sM(ba+"/"),n=tSr([...sSr(r),...nM(r,"\u6700\u8FD1\u5927\u5BB6\u5728\u770B"),...nM(r,"\u6216\u8BB8\u4F60\u611F\u5174\u8DA3\uFF1F"),...nM(r,"\u65E5\u756A"),...nM(r,"\u5267\u573A\u7248")]).slice(0,40);return{class:xct,filters:bct,list:n}}catch(r){return console.error("girigiri home failed:",r.message),{class:xct,filters:bct,list:[]}}}async function cSr(t,e){let r=String(t.body?.id||t.body?.tid||"2"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=iSr(r,n,s);try{let a=await sM(i),o=_ct(a);if(!o.length)return{list:[],page:n,pagecount:n,limit:Ow,total:0};let u=[`--------${n+1}---/`,`-${n+1}---/`].some(l=>a.includes(l));return{list:o,page:n,pagecount:u?n+1:n,limit:Ow,total:n*Ow+(u?Ow:o.length)}}catch(a){return console.error("girigiri category failed:",a.message),{list:[],page:n,pagecount:n,limit:Ow,total:0}}}async function uSr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=`${ba}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`;return{list:((await nSr(n,{headers:{"X-Requested-With":"XMLHttpRequest",Referer:`${ba}/search/-------------/`}}))?.list||[]).map(i=>({vod_id:`/GV${i.id}/`,vod_name:i.name||"",vod_pic:Kl(i.pic||""),vod_remarks:""}))}}catch(n){return console.error("girigiri search failed:",n.message),{list:[]}}}async function lSr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=Kl(i);if(a)try{let o=await sM(a),c=Ru((o.match(/<title>(.*?)<\//i)||[])[1]||"").replace(/_.*$/,""),u=Kl((o.match(/<img[^>]+data-src="([^"]+\.webp)"/)||[])[1]||""),l=Ru((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/)||[])[1]||""),d=Ru((o.match(/<p>([^<]*?(?:更新|點|支持杜比)[^<]*?)<\/p>/)||[])[1]||""),f=(o.match(/20\d{2}/)||[])[0]||"",p=[],m=/<a class="swiper-slide"[^>]*>[\s\S]*?&nbsp;([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,h;for(;(h=m.exec(o))!==null;)p.push({name:Ru(h[1]),count:Number(h[2]||0)});let A=o.match(/<div class="anthology wow[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),g=A?A[0]:"",b=[],y=/<div class="anthology-list-box[^>]*>([\s\S]*?)<\/div><\/div>/g,x;for(;(x=y.exec(g))!==null;){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(x[1]))!==null;){let P=Ru(N[2]),B=N[1];B.includes("/play")&&R.push({name:P,playId:yct({playUrl:B,epName:P,vodName:c,referer:i})})}R.length&&b.push(R)}if(!b.length){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(g||o))!==null;){let P=N[1];if(!P.includes("/play"))continue;let B=Ru(N[2]);R.push({name:B,playId:yct({playUrl:P,epName:B,vodName:c,referer:i})})}R.length&&b.push(R)}let v=[],I=[];for(let R=0;R<b.length;R+=1){let w=p[R]?.name||`\u7EBF\u8DEF${R+1}`,N=b[R].map(P=>`${P.name}$${P.playId}`);v.push(w),I.push(N.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:d,vod_content:l,vod_director:"",vod_actor:"",vod_year:f,vod_play_from:v.join("$$$"),vod_play_url:I.join("$$$")})}catch(o){console.error("girigiri detail failed:",i,o.message)}}return{list:s}}async function dSr(t,e){let r=String(t.body?.id||"").trim(),n=eSr(r),s=n.playUrl||r||"",i=Kl(n.referer||"/"),a=Kl(s);try{let c=(await sM(a,{referer:i||ba+"/",headers:{Origin:ba,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=u.url||"";u.encrypt===2?l=rSr(l):u.encrypt===1&&(l=decodeURIComponent(l));let d=l;/^https?:\/\//i.test(d)||(d=Kl(d));let f=new URL(d).origin,p=f===ba?i||ba+"/":f+"/";return{parse:0,url:d,header:Ect(p)}}catch(o){return console.error("girigiri play failed:",o.message),{parse:0,url:a,header:Ect(ba+"/")}}}var Sct={meta:{key:Pw.key,name:"\u300C\u76F4\u300D\u7231\u52A8\u6F2B",type:3},api:async t=>{t.post("/init",aSr),t.post("/home",oSr),t.post("/category",cSr),t.post("/detail",lSr),t.post("/play",dSr),t.post("/search",uSr)}};var em=Re(Jn(),1),Vf="https://www.cycani.org",Ict="https://player.cycanime.com",Cct="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",fSr="YLwJVbXw77pk2eOrAnFdBo2c3mWkLtodMni2wk81GCnP94ZltW",kw=48,eA=[{type_id:"20",type_name:"TV\u756A\u7EC4"},{type_id:"21",type_name:"\u5267\u573A\u756A\u7EC4"}],pSr={\u7C7B\u578B:"class",\u5E74\u4EFD:"year",\u5B57\u6BCD:"letter"},mSr={class:"\u7C7B\u578B",year:"\u5E74\u4EFD",letter:"\u5B57\u6BCD",by:"\u6392\u5E8F"},hSr={key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},rce=new Map;function zi(t){return String(t||"").replace(/&nbsp;/gi," ").replace(/<br\s*\/?>/gi," ").replace(/<[^>]+>/g," ").replace(/\s+/g," ").trim()}function Tct(t){let e=Number.parseInt(t,10);return Number.isFinite(e)&&e>0?e:1}function Dw(t,e=Vf){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:r.startsWith("//")?`https:${r}`:new URL(r,e).toString():""}function wct(t=`${Vf}/`,e="text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8"){return{"User-Agent":Cct,Accept:e,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t}}async function tA(t,e=`${Vf}/`,r){let n=Dw(t),s=await he.get(n,{headers:wct(e,r),timeout:15e3,maxContentLength:3*1024*1024});return typeof s.data=="string"?s.data:String(s.data||"")}async function gSr(t,e=`${Vf}/`){let r=Dw(t),n=await he.get(r,{headers:{...wct(e,"application/json,text/javascript,*/*;q=0.01"),"X-Requested-With":"XMLHttpRequest"},timeout:15e3,maxContentLength:1024*1024});if(typeof n.data=="string")try{return JSON.parse(n.data)}catch{return null}return n.data||null}function iM(t){return encodeURIComponent(String(t||"").trim())}function Rct(t,e=1,r={}){let n=String(t||eA[0].type_id).trim()||eA[0].type_id,s=[],i=String(r.by||r.sort||"").trim(),a=String(r.class||"").trim(),o=String(r.letter||"").trim(),c=String(r.year||"").trim();return i&&s.push("by",iM(i)),a&&s.push("class",iM(a)),o&&s.push("letter",iM(o)),c&&s.push("year",iM(c)),e>1&&s.push("page",String(e)),`/show/${n}${s.length?`/${s.join("/")}`:""}.html`}function Nct(t){return(String(t||"").match(/\/bangumi\/(\d+)\.html/i)||[])[1]||""}function ASr(t){let e=String(t||"").match(/\/watch\/(\d+)\/(\d+)\/(\d+)\.html/i);return e?`${e[1]}/${e[2]}/${e[3]}`:""}function ySr(t){try{let e=JSON.parse(String(t||""));if(e&&e.id)return String(e.id)}catch{}return String(t||"").match(/\d+/)?.[0]||String(t||"").trim()}function vct(t,e){let r=t(e),n=r.find('a[href*="/bangumi/"]').first(),s=n.attr("href")||"",i=Nct(s);if(!i)return null;let a=r.find("img").first(),o=zi(n.attr("title")||a.attr("alt")||n.text());if(!o)return null;let c=a.attr("data-src")||a.attr("data-original")||a.attr("src")||"",u=zi(r.find(".public-list-subtitle,.public-list-prb,.slide-info-remarks").first().text());return{vod_id:i,vod_name:o,vod_pic:Dw(c),vod_remarks:u}}function nce(t){let e=Me(t||""),r=[],n=new Set;return e(".public-list-box,.swiper-slide").each((s,i)=>{let a=vct(e,i);!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r.length===0&&e('a[href*="/bangumi/"]').each((s,i)=>{let a=vct(e,e(i).closest("li,div").first());!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r}function Oct(t){let e=Me(t||""),r=[],n=new Set;return e(".ec-casc-list .nav-swiper").each((s,i)=>{let a=e(i),o=zi(a.find(".filter-text span").first().text()),c=a.find(".vod-ajax-select[data-type]").first().attr("data-type")||pSr[o]||"";if(!c||c==="channel"||c==="type"||n.has(c))return;let u=[];a.find(".vod-ajax-select").each((l,d)=>{let f=e(d),p=zi(f.find("a").first().text()||f.text()),m=String(f.attr("data-val")||"").trim();!p||p==="\u5206\u7C7B\u8D44\u6E90\u4E0D\u4EE3\u8868\u5168\u90E8\u8D44\u6E90"||!m&&p!=="\u5168\u90E8"||u.some(h=>h.v===m)||u.push({n:p,v:m})}),u.length>0&&(n.add(c),r.push({key:c,name:mSr[c]||o||c,init:"",value:u}))}),r.push(hSr),r}async function xSr(t){let e=String(t||eA[0].type_id);if(rce.has(e))return rce.get(e);let r=await tA(Rct(e,1),`${Vf}/`),n=Oct(r);return rce.set(e,n),n}function bSr(t,e,r){let s=zi(Me(t||"")(".page-tip").first().text()).match(/当前\s*(\d+)\s*\/\s*(\d+)\s*页/);return s?Number.parseInt(s[2],10)||e:r>=kw?e+1:e}async function ESr(){let t={};await Promise.all(eA.map(async r=>{t[r.type_id]=await xSr(r.type_id).catch(()=>[])}));let e=await tA("/");return{class:eA,filters:t,list:nce(e).slice(0,kw)}}async function _Sr(t){let e=t.body||{},r=String(e.id||eA[0].type_id).trim()||eA[0].type_id,n=Tct(e.page),s=e.filters||e.extend||e.ext||{},i=Rct(r,n,s),a=await tA(i,`${Vf}/show/${r}.html`),o=nce(a),c=bSr(a,n,o.length);return{page:n,pagecount:c,limit:kw,total:c*kw,list:o,filter:Oct(a)}}function SSr(t,e){let r=Me(t||""),n=e||Nct(r('link[rel="canonical"]').attr("href")||""),s=zi(r(".slide-info-title").first().text())||zi(r("h1,h2,h3").first().text())||zi(r("title").text().replace(/[_-].*$/,"")),i=Dw(r(".detail-pic img,.player-vod-no1 img").map((p,m)=>r(m).attr("data-src")||r(m).attr("data-original")||r(m).attr("src")).get().find(p=>p&&!String(p).startsWith("data:image"))),a=zi(r(".slide-info-remarks").first().text()),o=zi(r("#height_limit,.small-text,.vod-content,.text").first().text()),c=r(".partition").filter((p,m)=>/演员/.test(r(m).text())).find("a").map((p,m)=>zi(r(m).text())).get().filter(Boolean).join(","),u=r(".partition").filter((p,m)=>/导演/.test(r(m).text())).find("a").map((p,m)=>zi(r(m).text())).get().filter(Boolean).join(","),l=r(".partition").filter((p,m)=>/类型/.test(r(m).text())).find("a").map((p,m)=>zi(r(m).text())).get().filter(Boolean).join(","),d=[],f=[];return r(".anthology-list-box").each((p,m)=>{let h=zi(r(".anthology-tab a").eq(p).clone().children().remove().end().text())||`CYC_${p+1}`,A=[];r(m).find('a[href*="/watch/"]').each((g,b)=>{let y=ASr(r(b).attr("href"));if(!y)return;let x=zi(r(b).text())||`\u7B2C${A.length+1}\u96C6`;A.push(`${x}$${y}`)}),A.length>0&&(d.push(h),f.push(A.join("#")))}),{vod_id:n,vod_name:s,vod_pic:i,vod_remarks:a,type_name:l,vod_actor:c,vod_director:u,vod_content:o,vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")}}async function vSr(t){let e=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],r=[];for(let n of e.filter(Boolean)){let s=ySr(n);if(!s)continue;let i=await tA(`/bangumi/${s}.html`,`${Vf}/`);r.push(SSr(i,s))}return{list:r}}function ISr(t){let e=String(t?.encrypt||""),r=String(t?.url||"");return e==="1"?decodeURIComponent(r):e==="2"?decodeURIComponent(Buffer.from(r,"base64").toString("utf8")):r}function CSr(t){let e=String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i)||String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i);return e?JSON.parse(e[1]):null}function TSr(t){let e={},r=String(t||"");for(let n of["url","vkey","next","title","poster"]){let s=r.match(new RegExp(`["']${n}["']\\s*:\\s*["']([^"']*)["']`));s&&(e[n]=s[1])}return e}function wSr(t){let e=Me(t||""),r=String(e('meta[name="viewport"]').attr("id")||"").replace(/^now_/,""),n=String(e('meta[charset="UTF-8"]').attr("id")||e("meta[charset]").attr("id")||"").replace(/^now_/,"");return!r||!n||r.length!==n.length?"":n.split("").map((s,i)=>({id:Number(s),text:r[i]||""})).sort((s,i)=>s.id-i.id).map(s=>s.text).join("")}function RSr(t,e){let r=wSr(e);if(!r)return"";let n=em.default.MD5(r+fSr).toString(),s=em.default.enc.Utf8.parse(n.substring(16)),i=em.default.enc.Utf8.parse(n.substring(0,16));return em.default.AES.decrypt(t,s,{iv:i,mode:em.default.mode.CBC,padding:em.default.pad.Pkcs7}).toString(em.default.enc.Utf8)}async function NSr(t,e){if(/^https?:\/\//i.test(t))return t;let r=`${Ict}/?url=${encodeURIComponent(t)}`,n=await tA(r,`${Vf}${e}`),s=TSr(n);return RSr(s.url||"",n)||""}async function OSr(t){let e=String(t.body?.id||"").trim(),r=e.match(/(\d+)\/(\d+)\/(\d+)/)||e.match(/watch\/(\d+)\/(\d+)\/(\d+)/);if(!r)return{parse:0,url:"",header:{}};let n=`/watch/${r[1]}/${r[2]}/${r[3]}.html`,s=await tA(n,`${Vf}/bangumi/${r[1]}.html`),i=CSr(s);if(!i)return{parse:0,url:"",header:{}};let a=ISr(i);return{parse:0,jx:0,url:await NSr(a,n),header:{"User-Agent":Cct,Referer:`${Ict}/`}}}async function PSr(t){let e=String(t.body?.wd||"").trim(),r=Tct(t.body?.page);if(!e)return{page:r,pagecount:1,limit:20,total:0,list:[]};let n=await gSr(`/index.php/ajax/suggest?mid=1&limit=20&page=${r}&wd=${encodeURIComponent(e)}`),i=(Array.isArray(n?.list)?n.list:[]).map(a=>({vod_id:String(a.id||""),vod_name:zi(a.name),vod_pic:Dw(a.pic||""),vod_remarks:""})).filter(a=>a.vod_id&&a.vod_name);return{page:Number(n?.page||r),pagecount:Number(n?.pagecount||r),limit:Number(n?.limit||20),total:Number(n?.total||i.length),list:i}}async function kSr(t,e){return{}}async function DSr(){let t=await tA("/");return{list:nce(t).slice(0,kw)}}var Pct={meta:{key:"ciyuancheng",name:"\u300C\u76F4\u300D\u6B21\u5143\u57CE",type:3},api:async t=>{t.post("/init",kSr),t.post("/home",ESr),t.post("/homeVod",DSr),t.post("/category",_Sr),t.post("/detail",vSr),t.post("/play",OSr),t.post("/search",PSr)}};var xE={key:"xifan",name:"\u7A00\u996D\u52A8\u6F2B",host:"https://anime.xifanacg.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},Si=xE.host,Lw=xE.ua,kct=40;function Ea(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/&amp;/gi,"&").replace(/&#39;/g,"'").replace(/&quot;/g,'"').replace(/\s+/g," ").trim()}function BSr(t){return Ea(t).replace(/\s*[_-]\s*(?:连载新番|完结旧番|剧场版|美漫).*$/i,"").replace(/\s*-\s*稀饭动漫.*$/i,"").replace(/\s*-\s*免费高清动漫分享.*$/i,"").trim()}function Oc(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Si+e:Si+"/"+e:""}function Dct(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function LSr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function MSr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function WSr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}function $Sr(t){try{let e=new URL(t);return e.hostname.endsWith("pan.wo.cn")||e.hostname.endsWith("moedot.net")}catch{return!1}}function FSr(t,e){let r={"User-Agent":Lw};if($Sr(t))return r;let n=new URL(t).origin;return r.Referer=n===Si?e||Si+"/":n+"/",r.Origin=Si,r}async function sce(t,e={}){let r=/^https?:\/\//i.test(t)?t:Oc(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||xE.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":Lw,Referer:e.referer||Si+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function USr(t,e,r={}){let n=/^https?:\/\//i.test(t)?t:Oc(t),s=await he({url:n,method:"post",data:e,timeout:r.timeout||xE.timeout,validateStatus:()=>!0,headers:{"User-Agent":Lw,Referer:r.referer||Si+"/","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...r.headers||{}}});if(s.status<200||s.status>=300)throw new Error(`HTTP ${s.status}`);return s.data}async function qSr(t,e={}){let r=/^https?:\/\//i.test(t)?t:Oc(t),n=await he.get(r,{timeout:e.timeout||xE.timeout,validateStatus:()=>!0,headers:{"User-Agent":Lw,Referer:e.referer||Si+"/","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function jSr(t){let e=[],r=String(t||"").match(/<div class="public-list-box[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="(?:public-list-exp|time-title)[^"]*"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||Ea((n.match(/class="time-title[^"]*"[^>]*>([\s\S]*?)<\/a>/)||[])[1]||""),a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/<span class="public-list-prb[^>]*>([\s\S]*?)<\/span>/)||[])[1]||"";!s||!i||e.push({vod_id:s,vod_name:Ea(i),vod_pic:Oc(a),vod_remarks:Ea(o)})}return e}function HSr(t){let e=[],r=/<div class="swiper-slide">[\s\S]*?<div class="swiper-lazy[^"]*" data-background="([^"]+)"[\s\S]*?<a class="lank" href="([^"]+)"[\s\S]*?<h3 class="slide-info-title hide">([\s\S]*?)<\/h3>[\s\S]*?<li>([^<]*)<\/li>/g,n;for(;(n=r.exec(String(t||"")))!==null;)e.push({vod_id:n[2],vod_name:Ea(n[3]),vod_pic:Oc(n[1]),vod_remarks:Ea(n[4])});return e}var Bct=[{type_id:"1",type_name:"\u8FDE\u8F7D\u65B0\u756A"},{type_id:"2",type_name:"\u5B8C\u7ED3\u65E7\u756A"},{type_id:"3",type_name:"\u5267\u573A\u7248"},{type_id:"21",type_name:"\u7F8E\u6F2B"}],Bw={n:"\u5168\u90E8",v:""},aM={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},Lct={key:"year",name:"",init:"",value:(()=>{let t=[Bw];for(let e=2026;e>=2005;e--)t.push({n:String(e),v:String(e)});return t})()},Mct={key:"class",name:"",init:"",value:[Bw,...["\u641E\u7B11","\u539F\u521B","\u8F7B\u5C0F\u8BF4\u6539","\u604B\u7231","\u767E\u5408","\u6F2B\u6539","\u6821\u56ED","\u6218\u6597","\u6CBB\u6108","\u5947\u5E7B","\u65E5\u5E38","\u9752\u6625","\u4E59\u5973\u5411","\u60AC\u7591","\u540E\u5BAB","\u79D1\u5E7B","\u5192\u9669","\u70ED\u8840","\u5F02\u4E16\u754C","\u6E38\u620F\u6539","\u97F3\u4E50","\u5076\u50CF","\u7F8E\u98DF","\u803D\u7F8E"].map(t=>({n:t,v:t}))]},Wct={1:[Mct,{key:"area",name:"",init:"",value:[Bw,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},Lct,aM],2:[Mct,Lct,aM],3:[{key:"area",name:"",init:"",value:[Bw,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},{key:"year",name:"",init:"",value:(()=>{let t=[Bw];for(let e=2026;e>=2004;e--)t.push({n:String(e),v:String(e)});return t})()},aM],21:[aM]};async function QSr(t,e){return{}}async function GSr(t,e){try{let r=await sce(Si+"/"),n=MSr([...HSr(r),...jSr(r)]).slice(0,40);return{class:Bct,filters:Wct,list:n}}catch(r){return console.error("xifan home failed:",r.message),{class:Bct,filters:Wct,list:[]}}}async function KSr(t,e){let r=String(t.body?.id||t.body?.tid||"1"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=new URLSearchParams;i.set("type",r),i.set("page",String(n)),i.set("by",String(s.by||"time")),s.class&&i.set("class",String(s.class)),s.area&&i.set("area",String(s.area)),s.year&&i.set("year",String(s.year));try{let a=await USr(`${Si}/index.php/ds_api/vod`,i.toString(),{referer:`${Si}/type/${r}.html`}),o=typeof a=="string"?JSON.parse(a):a||{},c=(o.list||[]).map(u=>({vod_id:u.url||`/bangumi/${u.vod_id}.html`,vod_name:u.vod_name||"",vod_pic:Oc(String(u.vod_pic||"").replace(/\\\//g,"/")),vod_remarks:u.vod_remarks||""})).filter(u=>u.vod_id&&u.vod_name);return{list:c,page:Number(o.page||n),pagecount:Number(o.pagecount||n),limit:Number(o.limit||kct),total:Number(o.total||c.length)}}catch(a){return console.error("xifan category failed:",a.message),{list:[],page:n,pagecount:n,limit:kct,total:0}}}async function VSr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{return{list:((await qSr(`${Si}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`,{referer:`${Si}/search/wd/${encodeURIComponent(r)}.html`}))?.list||[]).map(s=>({vod_id:`/bangumi/${s.id}.html`,vod_name:s.name||"",vod_pic:Oc(s.pic||""),vod_remarks:""}))}}catch(n){return console.error("xifan search failed:",n.message),{list:[]}}}async function zSr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=Oc(i);if(a)try{let o=await sce(a),c=BSr((o.match(/<h3[^>]*>([\s\S]*?)<\/h3>/i)||[])[1]||(o.match(/<title>(.*?)<\/title>/i)||[])[1]||""),u=Oc((o.match(/<div class="detail-pic">[\s\S]*?<img[^>]+(?:data-src|src)="([^"]+)"/i)||[])[1]||""),l=Ea((o.match(/<span class="slide-info-remarks cor5">([\s\S]*?)<\/span>/i)||[])[1]||""),d=Ea((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/year\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),f=Ea((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/area\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),p=Ea((o.match(/导演\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),m=Ea((o.match(/演员\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),h=Ea((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/i)||[])[1]||""),A=[],g=/<a class="swiper-slide">[\s\S]*?&nbsp;([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,b;for(;(b=g.exec(o))!==null;)A.push({name:Ea(b[1]),count:Number(b[2]||0)});let y=o.match(/<div class="anthology-list[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),x=y?y[0]:o,v=[],I=/<div class="anthology-list-box[^>]*>[\s\S]*?<ul class="anthology-list-play size">([\s\S]*?)<\/ul>[\s\S]*?<\/div>\s*<\/div>/g,R;for(;(R=I.exec(x))!==null;){let P=[],B=/<a class="[^"]*" href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=B.exec(R[1]))!==null;){let D=M[1];D.includes("/watch/")&&P.push({name:Ea(M[2]),playId:Dct({playUrl:D,vodName:c,referer:i})})}P.length&&v.push(P)}if(!v.length){let P=[],B=/href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=B.exec(o))!==null;){let D=M[1];D.includes("/watch/")&&P.push({name:Ea(M[2]),playId:Dct({playUrl:D,vodName:c,referer:i})})}P.length&&v.push(P)}let w=[],N=[];for(let P=0;P<v.length;P+=1){let B=A[P]?.name||`\u7EBF\u8DEF${P+1}`,M=v[P].map(D=>`${D.name}$${D.playId}`);w.push(B),N.push(M.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:l,vod_content:h,vod_director:p,vod_actor:m,vod_year:d,vod_area:f,vod_play_from:w.join("$$$"),vod_play_url:N.join("$$$")})}catch(o){console.error("xifan detail failed:",i,o.message)}}return{list:s}}async function YSr(t,e){let r=String(t.body?.id||"").trim(),n=LSr(r),s=n.playUrl||r||"",i=Oc(n.referer||"/"),a=Oc(s);try{let c=(await sce(a,{referer:i||Si+"/",headers:{Origin:Si}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=String(u.url||"").replace(/\\\//g,"/");Number(u.encrypt)===2?l=WSr(l):Number(u.encrypt)===1&&(l=decodeURIComponent(l));let d=l;return/^https?:\/\//i.test(d)||(d=Oc(d)),{parse:0,url:d,header:FSr(d,i)}}catch(o){return console.error("xifan play failed:",o.message),{parse:0,url:a,header:{"User-Agent":Lw,Referer:Si+"/",Origin:Si}}}}var $ct={meta:{key:xE.key,name:"\u300C\u76F4\u300D\u7A00\u996D",type:3},api:async t=>{t.post("/init",QSr),t.post("/home",GSr),t.post("/category",KSr),t.post("/detail",zSr),t.post("/play",YSr),t.post("/search",VSr)}};var _a={key:"xifannext",name:"\u7A00\u996D\u52A8\u6F2B Next",host:"https://next.xifanacg.com",supabase:"https://rzmsnqblptbceicadbyd.supabase.co",anonKey:"sb_publishable_aCb7uwyLN6H-sMjze4dRGA_2MDuROLF",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},Vl=_a.host,tm=24,$w={n:"\u5168\u90E8",v:""},Fct=[{type_id:"all",type_name:"\u5168\u90E8\u756A\u5267"},{type_id:"recent",type_name:"\u6700\u8FD1\u66F4\u65B0"},{type_id:"ranking",type_name:"\u6392\u884C\u699C"},{type_id:"schedule",type_name:"\u5468\u8868"}],JSr={key:"format",name:"",init:"",value:[$w,{n:"TV \u52A8\u753B",v:"tv"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"OVA",v:"ova"},{n:"OAD",v:"oad"},{n:"Web \u52A8\u753B",v:"web"},{n:"\u5176\u4ED6",v:"other"}]},XSr={key:"finished",name:"",init:"",value:[$w,{n:"\u8FDE\u8F7D\u4E2D",v:"0"},{n:"\u5B8C\u7ED3",v:"1"}]},ZSr={key:"year",name:"",init:"",value:(()=>{let t=[$w];for(let e=2026;e>=2007;e-=1)t.push({n:String(e),v:String(e)});return t.push({n:"\u66F4\u65E9",v:"older"}),t})()},evr={key:"tag",name:"",init:"",value:[$w,...["\u6F2B\u753B\u6539","\u5C0F\u8BF4\u6539","\u5947\u5E7B","\u6218\u6597","\u539F\u521B","\u604B\u7231","\u6821\u56ED","\u65E5\u5E38","\u767E\u5408","\u540E\u5BAB","\u79D1\u5E7B","\u6E38\u620F\u6539","\u60AC\u7591","\u5192\u9669","\u7A7F\u8D8A","\u97F3\u4E50","\u8FD0\u52A8","\u673A\u6218","\u559C\u5267","\u5C11\u5E74\u5411","\u63A8\u7406","\u5C11\u5973\u5411","\u804C\u573A","\u7F8E\u98DF","\u9752\u5E74\u5411"].map(t=>({n:t,v:t}))]},tvr={key:"sort",name:"",init:"title",value:[{n:"\u6807\u9898",v:"title"},{n:"\u70ED\u5EA6",v:"view_count"},{n:"\u8BC4\u5206",v:"bangumi_score"},{n:"\u6700\u65B0",v:"release_date"}]},rvr={key:"days",name:"",init:"7",value:[{n:"7 \u5929",v:"7"},{n:"14 \u5929",v:"14"}]},nvr={key:"kind",name:"",init:"trending_week",value:[{n:"\u70ED\u5EA6",v:"trending_week"},{n:"\u8BC4\u5206",v:"rating"},{n:"\u98D9\u5347",v:"rising"},{n:"\u5B9D\u85CF",v:"hidden_gem"},{n:"\u5F39\u5E55",v:"danmaku_heat"}]},svr={key:"section",name:"",init:"all",value:[{n:"\u603B\u699C",v:"all"},{n:"\u65B0\u756A",v:"ongoing"},{n:"\u5B8C\u7ED3",v:"finished"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"\u7F8E\u6F2B",v:"western"}]},ivr={key:"weekday",name:"",init:"",value:[$w,{n:"\u5468\u4E00",v:"0"},{n:"\u5468\u4E8C",v:"1"},{n:"\u5468\u4E09",v:"2"},{n:"\u5468\u56DB",v:"3"},{n:"\u5468\u4E94",v:"4"},{n:"\u5468\u516D",v:"5"},{n:"\u5468\u65E5",v:"6"}]},Uct={all:[JSr,XSr,ZSr,evr,tvr],recent:[rvr],ranking:[nvr,svr],schedule:[ivr]};function zf(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/&amp;/gi,"&").replace(/&#39;/g,"'").replace(/&quot;/g,'"').replace(/\s+/g," ").trim()}function jct(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Vl+e:`${Vl}/${e}`:""}function Hct(t){let e=jct(t);if(!e)return"";try{let r=new URL(e);if(r.hostname==="next.xifanacg.com"&&r.pathname==="/_next/image")return decodeURIComponent(r.searchParams.get("url")||e)}catch{}return e}function avr(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function ovr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function Qct(t){return zf(t).replace(/[$#]/g," ").trim()}function Gct(t){let e=String(t||"").trim();return e&&e.match(/(?:\/anime\/|^)(\d+)/)?.[1]||""}function Nu(...t){return t.find(e=>e!=null&&e!=="")}function cvr(t={}){return{...t.extend||{},...t.filter||{},...t.filters||{}}}function uvr(t={}){let e=Number(Nu(t.current_episodes,t.currentEpisodes,0)),r=Number(Nu(t.total_episodes,t.totalEpisodes,0));if(r>0&&e>0&&e<r)return`\u66F4\u65B0\u81F3 ${e} / ${r}`;if(r>0)return`\u5168 ${r} \u96C6`;let n=Nu(t.release_year,t.releaseYear,t.datePublished);if(n)return String(n);let s=Nu(t.bangumi_score,t.bangumiScore);return s!==void 0?String(s):""}function Mw(t={}){let e=Gct(Nu(t.id,t.url,t["@id"]));return{vod_id:e?`/anime/${e}`:"",vod_name:zf(t.title||t.name||""),vod_pic:Hct(Nu(t.cover_url,t.coverUrl,t.image,t.pic,"")),vod_remarks:uvr(t)}}function lvr(t,e){let r=String(e||"").trim();return r?{sortBy:r,sortOrder:r==="title"?"asc":"desc"}:t==="recent"?{sortBy:"release_date",sortOrder:"desc"}:t==="ranking"?{sortBy:"bangumi_score",sortOrder:"desc"}:{sortBy:"title",sortOrder:"asc"}}function ace(t={}){return String(t.year||"").trim()==="older"||String(t.older||"").trim()==="1"}function oce({tid:t="all",page:e=1,extend:r={},searchTerm:n=""}={}){let{sortBy:s,sortOrder:i}=lvr(t,Nu(r.sort,r.by)),a=Number.parseInt(String(r.year||""),10),o=String(r.finished??"").trim();return{search_term:n||null,page_number:e,items_per_page:tm,sort_by:s,sort_order:i,filter_type_id:null,filter_meta_tags:r.tag?[String(r.tag)]:null,filter_is_finished:o===""?null:o==="1",filter_format:r.format||null,filter_release_year:!ace(r)&&Number.isFinite(a)?a:null,filter_only_published:!0}}function dvr(t,e={}){let r=new URLSearchParams;t>1&&r.set("page",String(t)),e.format&&r.set("format",String(e.format)),String(e.finished??"").trim()&&r.set("finished",String(e.finished)),ace(e)?r.set("older","1"):e.year&&r.set("year",String(e.year)),e.tag&&r.set("tag",String(e.tag));let n=String(Nu(e.sort,e.by,"")).trim();n&&n!=="title"&&r.set("sort",n);let s=r.toString();return`/browse${s?`?${s}`:""}`}function ice(t){let e={"User-Agent":_a.ua};try{let r=new URL(t).hostname;if(r.endsWith("pan.wo.cn")||r.endsWith("moedot.net"))return e}catch{return e}return e.Referer=`${Vl}/`,e.Origin=Vl,e}async function Fw(t,e={}){let r=/^https?:\/\//i.test(t)?t:jct(t),n=await he({url:r,method:"get",timeout:e.timeout||_a.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":_a.ua,Referer:e.referer||`${Vl}/`,"Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function Ww(t,e){let r=await he({url:`${_a.supabase}/rest/v1/rpc/${t}`,method:"post",data:e,timeout:_a.timeout,validateStatus:()=>!0,headers:{apikey:_a.anonKey,Authorization:`Bearer ${_a.anonKey}`,"Content-Type":"application/json",Origin:Vl,Referer:`${Vl}/`,"User-Agent":_a.ua,"X-Client-Info":"supabase-js-web/2.49.1"}});if(r.status<200||r.status>=300)throw new Error(`RPC ${t} HTTP ${r.status}`);return r.data}async function fvr(t,e){let r=await he({url:`${_a.supabase}/functions/v1/${t}`,method:"post",data:e,timeout:_a.timeout,validateStatus:()=>!0,headers:{apikey:_a.anonKey,Authorization:`Bearer ${_a.anonKey}`,"Content-Type":"application/json",Origin:Vl,Referer:`${Vl}/`,"User-Agent":_a.ua}});if(r.status<200||r.status>=300)throw new Error(`Function ${t} HTTP ${r.status}`);return r.data}function Kct(t){let e=Me(t||""),r=[];return e('script[type="application/ld+json"]').each((n,s)=>{try{let i=JSON.parse(e(s).text()||"{}");Array.isArray(i?.["@graph"])?r.push(...i["@graph"]):r.push(i)}catch{}}),r}function pvr(t,e){return Kct(t).find(r=>{let n=r?.["@type"],s=String(r?.url||r?.["@id"]||"");return(n==="TVSeries"||n==="Movie")&&s.includes(`/anime/${e}`)})||{}}function qct(t,e){let r="";return t("dt").each((n,s)=>{if(zf(t(s).text())===e)return r=zf(t(s).next("dd").text()),!1}),r}function mvr(t,e){let r=0;for(let n=e-1;n>=0&&t[n]==="\\";n-=1)r+=1;return r}function hvr(t){return JSON.parse(String(t||"").replace(/\\"/g,'"').replace(/\\\\/g,"\\"))}function cM(t,e){let r=String(t||""),n=`\\"${e}\\":`,s=`"${e}":`,i=r.indexOf(n),a=!0;if(i<0&&(i=r.indexOf(s),a=!1),i<0)return[];let o=r.indexOf("[",i);if(o<0)return[];let c=0,u=!1,l=!1;for(let d=o;d<r.length;d+=1){let f=r[d];if(a&&f==='"'&&mvr(r,d)%4===1){u=!u;continue}if(!a){if(l){l=!1;continue}if(f==="\\"&&u){l=!0;continue}if(f==='"'){u=!u;continue}}if(!u){if(f==="[")c+=1;else if(f==="]"&&(c-=1,c===0)){let p=r.slice(o,d+1);try{return a?hvr(p):JSON.parse(p)}catch{return[]}}}}return[]}function gvr(t){let e=Kct(t).find(n=>n?.["@type"]==="ItemList")||{};return(Array.isArray(e.itemListElement)?e.itemListElement:[]).map(n=>Mw(n?.item||n)).filter(n=>n.vod_id&&n.vod_name)}function Avr(t,e){let r=String(t||"").match(/当前已选[\s\S]{0,120}?共[\s\S]{0,40}?(\d+)[\s\S]{0,40}?部/);return r?Number(r[1]):e}function yvr(t,e){let r=e;for(let n of String(t||"").matchAll(/[?&]page=(\d+)/g))r=Math.max(r,Number(n[1]));return Math.max(1,r)}function xvr(t,e){let r=Me(t||""),n=[];return r(`a[href*="/anime/${e}/play/"]`).each((s,i)=>{let o=(r(i).attr("href")||"").match(/\/play\/(\d+)(?:\?source=([^&#]+))?/);if(!o)return;let c=Number(o[1]),u=Qct(r(i).text())||`\u7B2C ${n.length+1} \u96C6`;!c||n.some(l=>l.id===c)||n.push({id:c,title:u,episode_number:n.length+1})}),n.length?[{code:"xfxf1",name:"\u7A00\u996D\u65B0\u756A\u4E3B\u7EBF-1",episodes:n}]:[]}function bvr(t,e){let r=Number(t?.episode_number||e+1),n=Number.isInteger(r)?String(r).padStart(2,"0"):String(e+1).padStart(2,"0"),s=Qct(t?.title||"");return s?`\u7B2C ${n} \u96C6 ${s}`:`\u7B2C ${n} \u96C6`}function Evr(t,e,r,n){let s=[],i=[];for(let a of t||[]){let c=(Array.isArray(a?.episodes)?a.episodes:[]).map((u,l)=>{let d=Number(u?.id||0);if(!d)return"";let f=avr({animeId:Number(e),episodeId:d,sourceCode:a.code||"",sourceName:a.name||"",vodName:r,referer:n});return`${bvr(u,l)}$${f}`}).filter(Boolean);c.length&&(s.push(zf(a.name||a.code||`\u7EBF\u8DEF${s.length+1}`)),i.push(c.join("#")))}return{vod_play_from:s.join("$$$"),vod_play_url:i.join("$$$")}}async function _vr(t,e){return{}}async function Svr(t,e){try{let r=await Ww("search_animes",oce({tid:"recent",page:1,extend:{by:"release_date"}}));return{class:Fct,filters:Uct,list:(Array.isArray(r)?r:[]).map(Mw).filter(n=>n.vod_id&&n.vod_name)}}catch(r){return console.error("xifannext home failed:",r.message),{class:Fct,filters:Uct,list:[]}}}function oM(t){return(Array.isArray(t)?t:[]).map(Mw).filter(e=>e.vod_id&&e.vod_name)}function vvr(t){let e=new Set;return t.filter(r=>!r.vod_id||e.has(r.vod_id)?!1:(e.add(r.vod_id),!0))}function Vct(t,e){let r=oM(t);return{list:e>1?[]:r,page:e,pagecount:1,limit:tm,total:r.length}}async function Ivr(t,e){if(ace(e)){let a=await Fw(dvr(t,e)),o=gvr(a),c=Avr(a,o.length),u=yvr(a,Math.ceil(c/tm)||t);return{list:o,page:t,pagecount:u,limit:tm,total:c}}let r=await Ww("search_animes",oce({tid:"all",page:t,extend:e})),n=Array.isArray(r)?r:[],s=oM(n),i=Number(n[0]?.total_count||s.length);return{list:s,page:t,pagecount:Math.max(1,Math.ceil(i/tm)),limit:tm,total:i}}async function Cvr(t,e){let r=await Fw("/recent"),n=Number(Nu(e.days,7)),s=cM(r,"windows"),i=s.find(a=>Number(a?.days)===n)||s[0]||{};return Vct(i.items||[],t)}async function Tvr(t,e){let r=String(Nu(e.kind,"trending_week")).trim()||"trending_week",n=String(Nu(e.section,"all")).trim()||"all",s=await Fw(`/rankings?kind=${encodeURIComponent(r)}`),i=cM(s,"sections"),a=i.find(o=>String(o?.key||"")===n)||i[0]||{};return Vct(a.items||[],t)}async function wvr(t,e){let r=await Fw("/schedule"),n=String(e.weekday??"").trim(),s=cM(r,"schedule"),i=n===""?vvr(s.flatMap(a=>oM(a?.animes||[]))):oM((s.find(a=>String(a?.weekday)===n)||{}).animes||[]);return{list:t>1?[]:i,page:t,pagecount:1,limit:tm,total:i.length}}async function Rvr(t,e){let r=String(t.body?.id||t.body?.tid||"all"),n=Math.max(1,Number(t.body?.page||t.body?.pg||1)),s=cvr(t.body||{});try{return r==="recent"?await Cvr(n,s):r==="ranking"?await Tvr(n,s):r==="schedule"?await wvr(n,s):await Ivr(n,s)}catch(i){return console.error("xifannext category failed:",i.message),{list:[],page:n,pagecount:n,limit:tm,total:0}}}async function Nvr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=await Ww("suggest_animes",{q:r,lim:20}),s=(Array.isArray(n)?n:[]).map(Mw).filter(i=>i.vod_id&&i.vod_name);if(!s.length){let i=await Ww("search_animes",oce({page:1,searchTerm:r}));s=(Array.isArray(i)?i:[]).map(Mw).filter(a=>a.vod_id&&a.vod_name)}return{list:s}}catch(n){return console.error("xifannext search failed:",n.message),{list:[]}}}async function Ovr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(Gct).filter(Boolean),s=[];for(let i of n){let a=`/anime/${i}`;try{let o=await Fw(a),c=Me(o),u=pvr(o,i),l=zf(u.name||c("h1").first().text()),d=cM(o,"sources"),f=d.length?d:xvr(o,i),p=Evr(f,i,l,a);s.push({vod_id:a,vod_name:l,vod_pic:Hct(u.image||c("img[alt]").first().attr("src")||""),vod_remarks:u.numberOfEpisodes?`\u5168 ${u.numberOfEpisodes} \u96C6`:"",vod_content:zf(u.description||""),vod_director:qct(c,"\u5BFC\u6F14"),vod_actor:qct(c,"\u58F0\u4F18"),vod_year:String(u.datePublished||"").slice(0,4),vod_area:zf(u.countryOfOrigin||""),vod_class:Array.isArray(u.genre)?u.genre.join(","):zf(u.genre||""),...p})}catch(o){console.error("xifannext detail failed:",i,o.message)}}return{list:s}}async function Pvr(t,e){let r=String(t.body?.id||"").trim(),n=ovr(r),s=Number(n.episodeId||(r.match(/\/play\/(\d+)/)||[])[1]||0),i=String(n.sourceCode||(()=>{try{return new URL(r,Vl).searchParams.get("source")||""}catch{return""}})()).trim();if(!s)return{parse:0,url:r,header:ice(r)};try{let a=await Ww("get_play_url",{p_episode_id:s}),o=Array.isArray(a?.urls)?a.urls:[],c=o.find(l=>String(l.source_code||"")===i)||o[0]||{},u=String(c.url||"").trim();if(!u){let l=await fvr("issue-hls-playback",{episode_id:s});u=String(l?.url||"").trim()}if(!u)throw new Error("play url not found");return{parse:0,url:u,header:ice(u)}}catch(a){return console.error("xifannext play failed:",s,a.message),{parse:0,url:r,header:ice(r)}}}var zct={meta:{key:_a.key,name:"\u300C\u76F4\u300D\u7A00\u996D\xB2",type:3},api:async t=>{t.post("/init",_vr),t.post("/home",Svr),t.post("/category",Rvr),t.post("/detail",Ovr),t.post("/play",Pvr),t.post("/search",Nvr)}};var EE="https://4kzn.com",kvr={"User-Agent":Gr,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`${EE}/`},cce={key:"by",name:"",init:"date",value:[{n:"\u53D1\u5E03",v:"date"},{n:"\u66F4\u65B0",v:"modified"},{n:"\u6D4F\u89C8",v:"views"},{n:"\u70B9\u8D5E",v:"like"}]},Yct=[{type_id:"books/zuixin",type_name:"\u5F71\u89C6"},{type_id:"books/top250",type_name:"TOP250"},{type_id:"books/juji",type_name:"\u5267\u96C6"},{type_id:"books/dianying",type_name:"\u7535\u5F71"},{type_id:"books/xiliehj",type_name:"\u7CFB\u5217\u5408\u96C6"},{type_id:"books/manwei",type_name:"\u6F2B\u5A01\u7535\u5F71\u7CFB\u5217\u5408\u96C6"},{type_id:"books/mztkn",type_name:"\u540D\u4FA6\u63A2\u67EF\u5357\u5267\u573A\u7248\u5408\u96C6"},{type_id:"books/hanniba",type_name:"\u6C49\u5C3C\u62D4\u5408\u96C6"}],uM={};for(let t of Yct)uM[t.type_id]=[cce];uM["books/juji"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"juq"},{n:"\u60CA\u609A",v:"jings"},{n:"\u72AF\u7F6A",v:"fanzuii"},{n:"\u52A8\u4F5C",v:"jjdongzuo"},{n:"\u5386\u53F2",v:"jjlishi"},{n:"\u6218\u4E89",v:"jjzhanzheng"},{n:"\u5192\u9669",v:"jjmaoxian"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u6700\u65B0",v:"zuixin-juji"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u52A8\u753B",v:"\u52A8\u753B"}]},cce];uM["books/dianying"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"xiju"},{n:"\u7231\u60C5",v:"aiqing"},{n:"\u5267\u60C5",v:"juqing"},{n:"\u60AC\u7591",v:"xuanyi"},{n:"\u4F20\u8BB0",v:"zhuanji"},{n:"\u52A8\u4F5C",v:"dongzuo"},{n:"\u79D1\u5E7B",v:"kehuan"},{n:"\u72AF\u7F6A",v:"fanzui"},{n:"\u5947\u5E7B",v:"qihuan"},{n:"\u5192\u9669",v:"maoxian"},{n:"\u5BB6\u5EAD",v:"jiating"},{n:"\u8FD0\u52A8",v:"yundong"},{n:"\u6B4C\u821E",v:"gewu"},{n:"\u6218\u4E89",v:"zhanzheng"},{n:"\u60CA\u609A",v:"jingsong"},{n:"\u897F\u90E8",v:"xibu"},{n:"\u52A8\u753B",v:"donghua"},{n:"\u707E\u96BE",v:"zainan"},{n:"\u6050\u6016",v:"kongbu"},{n:"\u5386\u53F2",v:"lishi"},{n:"\u97F3\u4E50",v:"yinyue"},{n:"\u540C\u6027",v:"tongxing"},{n:"\u7EAA\u5F55\u7247",v:"jilupian"},{n:"\u53E4\u88C5",v:"guzhuang"},{n:"\u513F\u7AE5",v:"ertong"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"}]},cce];async function uce(t){return(await he.get(t,{headers:kvr})).data}function rA(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${EE}${e}`:`${EE}/${e.replace(/^\/+/,"")}`:""}function bE(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/&nbsp;/gi," ").replace(/\s+/g," ").trim()}function Jct(t){let e=Me(t),r=[],n=new Set;return e("article.posts-item").each((s,i)=>{let a=e(i).find('a.item-image, h3.item-title a, a[target="_blank"]').first(),o=rA(a.attr("href")||""),c=bE(e(i).find(".item-title a").first().text()||a.text()||e(i).attr("data-title")||"");if(!o||!c||n.has(o))return;n.add(o);let u=rA(e(i).find("img").first().attr("data-src")||e(i).find("img").first().attr("src")||""),l=bE(e(i).find(".line1.text-muted.text-xs, .book-info, .item-desc, .sub-title").first().text());r.push({vod_id:o,vod_name:c,vod_pic:u,vod_remarks:l})}),r}function Dvr(t){let e=t.match(/\/books\/[^"']+\/page\/(\d+)/g),r=e?e.map(i=>Number((i.match(/(\d+)$/)||[0,1])[1]||1)):[],n=r.length?Math.max(...r):1,s=/class="next-page[^>]*>\s*<a[^>]*href="[^"]+\/page\/\d+"/i.test(t);return{pagecount:Math.max(n,s?n+1:1)}}async function Bvr(t,e){return{class:Yct,filters:uM}}async function Lvr(t,e){try{let r=String(t.body.id||"books/zuixin").replace(/^\/+/,""),n=t.body.page,s=t.body.filters||{},i=parseInt(n,10);(!i||i<1)&&(i=1);let a=r;s.class&&(a=`books/${encodeURIComponent(s.class)}`);let o=i>1?`${EE}/${a}/page/${i}`:`${EE}/${a}`;s.by&&(o+=`?orderby=${s.by}`);let c=await uce(o),u=Jct(c),{pagecount:l}=Dvr(c);return{page:i,pagecount:l,limit:72,total:l*Math.max(u.length,1),list:u}}catch(r){return console.error("[4kzn][category]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}async function Mvr(t,e){try{let r=String(t.body.id||"").trim();if(!r)return{list:[]};let n=/^https?:\/\//i.test(r)?r:rA(r),s=await uce(n),i=Me(s),a=bE(i("h1, h2, .book-title").first().text())||bE(i("meta[property='og:title']").attr("content")||""),o=rA(i('.book-cover img, meta[property="og:image"]').first().attr("data-src")||i('.book-cover img, meta[property="og:image"]').first().attr("content")||i(".book-cover img").first().attr("src")||""),c=bE(i("meta[name='description']").attr("content")||i(".panel-body.single").text()),u=[],l=new Set,d=[".site-go a[target='_blank']","a[target='_blank'][href*='pan.quark.cn']","a[href*='quark.cn']","a[href*='uc.cn']","a[href*='aliyundrive.com']","a[href*='115.com']"].join(", ");if(i(d).each((p,m)=>{let h=rA(i(m).attr("href")||"");!h||l.has(h)||(l.add(h),u.push(h))}),!u.length){let p=i("a.external[href*='pan.quark.cn'], a[href*='pan.quark.cn'], a[href*='quark.cn']").first(),m=rA(p.attr("href")||"");m&&u.push(m)}let f={vod_id:n,vod_name:a,vod_pic:o,vod_content:c};if(u.length){let p=await wr(u,t);p?.froms&&p?.urls&&(f.vod_play_from=p.froms,f.vod_play_url=p.urls)}return{list:[f]}}catch(r){return console.error("[4kzn][detail]",r.message),{list:[]}}}async function Wvr(t,e){try{let r=t.body.wd,n=t.body.page,s=parseInt(n,10);if((!s||s<1)&&(s=1),!r)return{page:s,pagecount:0,limit:72,total:0,list:[]};let i=`${EE}/?s=${encodeURIComponent(r)}`,a=await uce(i),o=Jct(a);if(!o.length){let c=Me(a);o=[],c("a[href*='/book/'], a[href*='/sites/']").each((u,l)=>{let d=c(l),f=rA(d.attr("href")||""),p=bE(d.text());!f||!p||p.includes(r)&&o.push({vod_id:f,vod_name:p,vod_pic:"",vod_remarks:""})})}return{page:s,pagecount:1,limit:72,total:o.length,list:o}}catch(r){return console.error("[4kzn][search]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}var Xct={meta:{key:"4kzn",name:"\u300C\u76D8\u300D\u6307\u5357",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Bvr),t.post("/category",Lvr),t.post("/detail",Mvr),t.post("/play",Nr),t.post("/search",Wvr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var Uw="https://kafeizhibo.com",$vr=`${Uw}/api/v1`,iut="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",Fvr={"User-Agent":iut,Accept:"application/json, text/plain, */*",Referer:`${Uw}/pc/replay`},lce="live:",lM="schedule:",Uvr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,Zct=[{type_id:"schedule",type_name:"\u8D5B\u7A0B"},{type_id:"live",type_name:"\u76F4\u64AD"},{type_id:"replay",type_name:"\u5F55\u64AD"}],qvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],jvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"NBA",v:"nba"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"}],Hvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],eut={live:[{key:"type",name:"",init:"all",value:qvr}],replay:[{key:"type",name:"",init:"all",value:jvr}],schedule:[{key:"type",name:"",init:"all",value:Hvr}]},aut=new Map;function xt(t){return String(t??"").trim()}function tut(t){return t!=null&&xt(t)!==""}function _E(t=""){let e=xt(t);if(!e)return"";if(/^https?:\/\//i.test(e))return e;if(e.startsWith("//"))return`https:${e}`;try{return new URL(e,Uw).toString()}catch{return e}}function out(t=""){let e=xt(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?_E(e):/^[\w.-]+\.[a-z]{2,}(?:[/:?#]|$)/i.test(e)?`https://${e}`:e:""}function Qvr(t=""){return/^https?:\/\//i.test(xt(t))}function Gvr(t=""){return Uvr.test(xt(t))}function dM(t={}){let e=_E(t.cover_image);return e&&!e.includes("default_cover")?e:_E(t.home_team_logo)||_E(t.away_team_logo)||e}function dce(t={}){return _E(t.screenshot)||dM(t.match_info||t)||_E(t.avatar)||dM(t)}function zl(t={}){return!tut(t.home_score)||!tut(t.away_score)?"":`${xt(t.home_score)} - ${xt(t.away_score)}`}function rm(t={}){let e=xt(t.home_team),r=xt(t.away_team),n=xt(t.league_name),s=xt(t.match_name||t.title||t.name||(t.match_id??t.id)),i=e&&r?`${e} vs ${r}`:e||r||s||"\u8D5B\u4E8B\u5F55\u50CF";return n?`${i} (${n})`:i}function fce(t=""){let e=xt(t).toLowerCase();return{live:"\u76F4\u64AD\u4E2D",online:"\u5728\u7EBF",finished:"\u5DF2\u7ED3\u675F",upcoming:"\u672A\u5F00\u59CB"}[e]||xt(t)}function Kvr(t=""){let e=xt(t),r=e.match(/^(\d{4})-(\d{2})-(\d{2})\s+(\d{2}:\d{2})/);return r?{time:r[4],date:`${r[2]}-${r[3]}`}:{time:e,date:""}}function SE(t={}){let e=t.data??t;return Array.isArray(e)?e:Array.isArray(e?.list)?e.list:Array.isArray(e?.records)?e.records:Array.isArray(e?.items)?e.items:[]}function rut(t={}){let e=t.data??t,r=[e?.total,e?.count,t?.total,t?.count];for(let n of r){let s=Number.parseInt(n,10);if(Number.isFinite(s)&&s>=0)return s}return null}function nut(t,e,r,n=null){let s=Number.isFinite(n)?n:null;return{page:t,pagecount:s===null?t+(r.length>=e?1:0):Math.max(t,Math.ceil(s/e)),limit:e,total:s===null?(t-1)*e+r.length+(r.length>=e?1:0):s,list:r}}async function qw(t,e={}){let r=t.startsWith("http")?t:`${$vr}${t}`,n=await he.get(r,{params:e,headers:Fvr,timeout:15e3,validateStatus:()=>!0});if(n.status<200||n.status>=400)throw new Error(`HTTP ${n.status} @ ${r}`);let s=typeof n.data=="string"?JSON.parse(n.data||"{}"):n.data||{},i=Number(s?.code);if(Number.isFinite(i)&&i!==0&&i!==200)throw new Error(s?.message||s?.msg||`API code=${s.code}`);return s}async function cut(t=1,e=30,{league:r="",type:n=""}={}){let s={page:t,size:e};return r?s.league=r:n&&n!=="all"&&n!=="nba"&&(s.type=n),qw("/recordings",s)}async function uut(t="all"){return qw("/archor",{type:t||"all",_t:Date.now()})}async function Vvr(t){return qw(`/room/${encodeURIComponent(t)}`)}async function lut(t="hot",e=1,r=30){return qw("/schedule",{type:t||"hot",page:e,size:r,platform:"pc",_t:Date.now()})}function dut(t={}){let e=xt(t.match_id??t.id),r=xt(t.recording_count),n=[zl(t),xt(t.start_time),r?`${r}\u4E2A\u5F55\u50CF`:""].filter(Boolean);return{vod_id:e,vod_name:rm(t),vod_pic:dM(t),vod_remarks:n.join(" | "),type_name:xt(t.league_name)}}function fut(t={}){let e=t.match_info||t,r=xt(t.room_id||t.archor?.room_id||t.match_id),n=fce(t.status||e.status),s=xt(t.heat),i=[n,zl(t)||zl(e),s?`\u70ED\u5EA6 ${s}`:""].filter(Boolean);return{vod_id:r?`${lce}${r}`:"",vod_name:xt(t.title)||rm(e),vod_pic:dce(t),vod_remarks:i.join(" | "),type_name:xt(t.league_name||e.league_name)}}function put(t={}){if(t.archor?.room_id)return xt(t.archor.room_id);let r=(Array.isArray(t.archors)?t.archors:[]).find(n=>n?.room_id);return xt(r?.room_id||t.room_id)}function mut(t={}){let e=put(t),r=xt(t.match_id??t.id),n=e&&r?`${lM}${r}:${e}`:"",s=Kvr(t.start_time),i=[s.time||fce(t.status),s.date,zl(t),t.is_hot?"\u70ED\u95E8":""].filter(Boolean);return n&&aut.set(n,t),{vod_id:n,vod_name:xt(t.title)||rm(t),vod_pic:dce(t),vod_remarks:i.join(" | "),type_name:xt(t.league_name)}}function hut(t,e){return(xt(t)||e).replace(/[$#]/g," ").replace(/\s+/g," ").trim()||e}function sut(t=[],e="\u64AD\u653E"){return t.map((r,n)=>{let s=out(r.video_url||r.stream_url||r.url||r.play_url);return s?`${hut(r.title||r.name,`${e}${n+1}`)}$${encodeURIComponent(s)}`:""}).filter(Boolean).join("#")}function zvr(t=""){let e=xt(t);if(!e)return"";try{return decodeURIComponent(e)}catch{return e}}function Yvr(t=""){let e=xt(t);return e==="live"?"all":e.startsWith("live_")?e.slice(5)||"all":null}function Jvr(t={}){let e=t.room_info||{},r=t.archor||{},n=t.teams||{};return{match_id:e.match_id||t.match_id,room_id:e.room_id||r.room_id,title:e.title||r.name,league_name:e.league||e.league_name,home_team:n.home?.name||e.home_team,away_team:n.away?.name||e.away_team,home_team_logo:n.home?.logo,away_team_logo:n.away?.logo,home_score:e.home_score??t.home_score,away_score:e.away_score??t.away_score,status:t.status||e.status||r.status,screenshot:r.screenshot,screenshot_updated_at:r.screenshot_updated_at,avatar:r.avatar||e.avatar,heat:r.heat,notice:e.notice||e.notice_h5}}function Xvr(t={}){return{match_id:t.match_id||t.id,room_id:put(t),title:xt(t.title)||rm(t),league_name:t.league_name,home_team:t.home_team||t.homeTeam?.name,away_team:t.away_team||t.awayTeam?.name,home_team_logo:t.home_team_logo||t.homeTeam?.logo,away_team_logo:t.away_team_logo||t.awayTeam?.logo,home_score:t.home_score,away_score:t.away_score,status:t.status,screenshot:t.screenshot,avatar:t.archor?.avatar,heat:t.archor?.heat,start_time:t.start_time,notice:t.is_hot?"\u70ED\u95E8\u8D5B\u7A0B":""}}function Zvr(t={}){let e=[],r=new Set,n=(s={},i="\u7EBF\u8DEF")=>{let a=out(s.stream_url||s.url||s.play_url);!a||r.has(a)||(r.add(a),e.push({name:hut(s.name||s.title,`${i}${e.length+1}`),url:a}))};return n(t,"\u7EBF\u8DEF"),n(t.archor,"\u4E3B\u64AD"),(Array.isArray(t.archors)?t.archors:[]).forEach(s=>n(s,"\u4E3B\u64AD")),(Array.isArray(t.signals)?t.signals:[]).forEach(s=>n(s,"\u7EBF\u8DEF")),[t.external_signals_pc,t.external_signals,t.external_signals_h5,t.room_info?.external_signals_pc,t.room_info?.external_signals,t.room_info?.external_signals_h5].forEach(s=>{(Array.isArray(s)?s:[]).forEach(i=>n(i,"\u5916\u90E8"))}),e}async function eIr(t,e){return{}}async function tIr(t,e){try{let r=await lut("all",1,30),n=SE(r).map(mut).filter(s=>s.vod_id&&s.vod_name);return{class:Zct,filters:eut,list:n}}catch(r){return console.error("kafei home failed:",r.message),{class:Zct,filters:eut,list:[]}}}async function rIr(t,e){let r=xt(t.body?.id||"all"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{};if(r==="schedule"){let u=xt(s.type||"all"),l=30;try{let d=await lut(u,n,l),f=SE(d).map(mut).filter(p=>p.vod_id&&p.vod_name);return nut(n,l,f,rut(d))}catch(d){return console.error("kafei schedule category failed:",u,d.message),{page:n,pagecount:n,limit:l,total:0,list:[]}}}let i=Yvr(r);if(i!==null){let u=xt(s.type||i||"all");if(n>1)return{page:n,pagecount:1,limit:100,total:0,list:[]};try{let l=await uut(u),d=SE(l).map(fut).filter(f=>f.vod_id&&f.vod_name);return{page:1,pagecount:1,limit:d.length||100,total:d.length,list:d}}catch(l){return console.error("kafei live category failed:",r,l.message),{page:1,pagecount:1,limit:100,total:0,list:[]}}}let a=r==="replay"?xt(s.type||"all"):r,o=a.toLowerCase(),c=o==="nba"?20:30;try{let u=await cut(n,c,{league:o==="nba"?"NBA":"",type:o==="all"?"":a}),l=SE(u).map(dut).filter(d=>d.vod_id&&d.vod_name);return nut(n,c,l,rut(u))}catch(u){return console.error("kafei category failed:",r,u.message),{page:n,pagecount:n,limit:c,total:0,list:[]}}}async function nIr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=xt(s);if(i)try{if(i.startsWith(lce)||i.startsWith(lM)){let h=i.startsWith(lM),A=h?i.slice(lM.length).split(":").pop():i.slice(lce.length),g=h?aut.get(i):null,b=g?null:await Vvr(A),y=g||b?.data||{},x=g?Xvr(y):Jvr(y),I=Zvr(y).map(R=>`${R.name}$${encodeURIComponent(R.url)}`).join("#");n.push({vod_id:i,vod_name:xt(x.title)||rm(x),vod_pic:dce(x),type_name:xt(x.league_name),vod_remarks:[fce(x.status),zl(x)].filter(Boolean).join(" | "),vod_content:[xt(x.league_name),xt(x.title)||rm(x),zl(x)?`\u6BD4\u5206 ${zl(x)}`:"",xt(x.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${xt(x.start_time)}`:"",xt(x.notice)].filter(Boolean).join("\uFF0C"),vod_play_from:I?"\u76F4\u64AD":"",vod_play_url:I});continue}let o=(await qw(`/match/${encodeURIComponent(i)}/recordings`)).data||{},c=o.match||o,u=Array.isArray(o.replays)?o.replays:[],l=Array.isArray(o.highlights)?o.highlights:[],d=[],f=[],p=sut(u,"\u5F55\u50CF");p&&(d.push("\u5F55\u50CF"),f.push(p));let m=sut(l,"\u96C6\u9526");m&&(d.push("\u96C6\u9526"),f.push(m)),n.push({vod_id:i,vod_name:rm(c),vod_pic:dM(c),type_name:xt(c.league_name),vod_remarks:zl(c),vod_content:[xt(c.league_name),xt(c.match_round),rm(c),zl(c)?`\u6BD4\u5206 ${zl(c)}`:"",xt(c.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${xt(c.start_time)}`:""].filter(Boolean).join("\uFF0C"),vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")})}catch(a){console.error("kafei detail failed:",i,a.message)}}return{list:n}}async function sIr(t,e){let r=zvr(t.body?.id);return r?{parse:Qvr(r)&&!Gvr(r)?1:0,url:r,header:{"User-Agent":iut,Referer:Uw,Origin:Uw}}:{parse:0,url:"",header:{}}}async function iIr(t,e){let r=xt(t.body?.wd||t.body?.keyword).toLowerCase(),n=100;if(!r)return{page:1,pagecount:1,limit:n,total:0,list:[]};try{let[s,i]=await Promise.allSettled([uut("all"),cut(1,n)]),a=s.status==="fulfilled"?SE(s.value):[],o=i.status==="fulfilled"?SE(i.value):[],c=a.filter(d=>{let f=d.match_info||d;return[d.title,d.name,d.home_team,d.away_team,d.league_name,f.home_team,f.away_team,f.league_name].map(xt).join(" ").toLowerCase().includes(r)}).map(fut),u=o.filter(d=>[d.home_team,d.away_team,d.league_name,d.match_name,d.title].map(xt).join(" ").toLowerCase().includes(r)).map(dut),l=[...c,...u].filter(d=>d.vod_id&&d.vod_name);return{page:1,pagecount:1,limit:n,total:l.length,list:l}}catch(s){return console.error("kafei search failed:",s.message),{page:1,pagecount:1,limit:n,total:0,list:[]}}}var gut={meta:{key:"kafei",name:"\u300C\u76F4\u300D\u5496\u5561",type:3},api:async t=>{t.post("/init",eIr),t.post("/home",tIr),t.post("/category",rIr),t.post("/detail",nIr),t.post("/play",sIr),t.post("/search",iIr)}};var yut=require("crypto");var pce="/embySpider",Yl={clientName:"SenPlayer",clientVersion:"6.0.5",deviceName:"iPhone",language:"zh-cn",userAgent:"SenPlayer/6.0.5"};function aIr(){return(0,yut.randomUUID)().toUpperCase()}function xut(t,e=!1){return Fo(t)||(e?aIr():"")}function vE({token:t="",contentType:e=!1,deviceId:r="",userId:n=""}={}){let s=xut(r),i=Fo(t),a=Fo(n),o={"X-Emby-Authorization":[`MediaBrowser Token="${i}"`,`UserId="${a}"`,`Client="${Yl.clientName}"`,`Device="${Yl.deviceName}"`,`DeviceId="${s}"`,`Version="${Yl.clientVersion}"`].join(", "),"X-Emby-Client":Yl.clientName,"X-Emby-Device-Name":Yl.deviceName,"X-Emby-Device-Id":s,"X-Emby-Client-Version":Yl.clientVersion,"X-Emby-Language":Yl.language,"User-Agent":Yl.userAgent};return e&&(o["Content-Type"]="application/json"),i&&(o["X-Emby-Token"]=i),o}function but(t){return String(t||"").trim().replace(/\/+$/,"")}function Fo(t){return String(t||"").trim()}function oIr(t){return String(t||"").trim()}function Eut(t){return Fo(t).toLowerCase().replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,40)}function cIr(t,e){let n=`${t?.name||""}-${t?.host||""}-${t?.username||""}`.toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,28),s=n||wQ().slice(0,8);for(;e.has(s);)s=`${(n||"emby").slice(0,24)}-${wQ().slice(0,4)}`;return e.add(s),s}function uIr(t,e,r={}){let n=but(t?.host),s=Fo(t?.username),i=Fo(t?.name),a=Eut(t?.id),o=a&&!e.has(a)?a:cIr({name:i,host:n,username:s},e);return e.add(o),{id:o,name:i,host:n,username:s,password:String(t?.password||""),deviceId:xut(t?.deviceId,r.ensureDeviceId),logo:oIr(t?.logo),libraries:mce(t?.libraries),libraryStats:_ut(t?.libraryStats)}}function _ut(t={}){return{movieCount:Math.max(0,Number(t?.movieCount||0)||0),seriesCount:Math.max(0,Number(t?.seriesCount||0)||0)}}function mce(t=[]){return Array.isArray(t)?t.map(e=>({id:Fo(e?.id||e?.Id),name:Fo(e?.name||e?.Name),collectionType:Fo(e?.collectionType||e?.CollectionType)})).filter(e=>e.id).map(e=>({...e,name:e.name||e.id})):[]}function lIr(t=[]){return mce(t.map(e=>({id:e?.Id,name:e?.Name,collectionType:e?.CollectionType})))}function fM(t={},e={}){let r=new Set;return{servers:(Array.isArray(t?.servers)?t.servers:[]).filter(i=>i&&typeof i=="object").filter(i=>Fo(i?.id)||Fo(i?.name)||but(i?.host)||Fo(i?.username)||String(i?.password||"")).map(i=>uIr(i,r,e)).filter(i=>i.host||i.username)}}function dIr(t){return{servers:t.servers}}var hce=async t=>{let e=await t.db.getObjectDefault(pce,{});return fM(e)},jw=async t=>(await hce(t)).servers,IE=async(t,e="")=>{let r=await hce(t),n=Eut(e);return n&&r.servers.find(s=>s.id===n)||null},fIr=async(t,e)=>{let r=fM(e,{ensureDeviceId:!0});return await t.db.push(pce,dIr(r)),r},pIr=async t=>{await t.db.delete(pce)};async function mIr(t){let{host:e,username:r,password:n,deviceId:s}=t,i=`${e}/emby/Users/authenticatebyname`,o=(await he.post(i,{Username:r,Pw:n||"",Password:n||""},{headers:vE({contentType:!0,deviceId:s}),timeout:1e4})).data;if(!o?.AccessToken||!o?.User?.Id)throw new Error("\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");return o}function hIr(t="",e="",r=""){return vE({token:t,contentType:!0,deviceId:e,userId:r})}async function pM(t,e="",r="",n=""){return(await he.get(t,{headers:e?hIr(e,r,n):vE({deviceId:r}),timeout:1e4})).data}async function gIr(t,e="",r=""){try{return await pM(`${t.host}/emby/System/Info/Public`,e,t.deviceId,r)}catch{try{return await pM(`${t.host}/emby/System/Info`,e,t.deviceId,r)}catch{return{}}}}async function AIr(t,e,r){try{let n=await pM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Views`,r,t.deviceId,e);return Array.isArray(n?.Items)?n.Items:[]}catch{return[]}}async function Aut(t,e,r,n,s){let i=new URLSearchParams({ParentId:String(n||""),Recursive:"true",IncludeItemTypes:s,StartIndex:"0",Limit:"1"});try{let a=await pM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Items?${i.toString()}`,r,t.deviceId,e);return Math.max(0,Number(a?.TotalRecordCount||0)||0)}catch{return 0}}async function yIr(t,e,r,n=[]){let s={movieCount:0,seriesCount:0},i=[];for(let a of n){let o=String(a?.Id||"");if(!o)continue;let c=String(a?.CollectionType||"").toLowerCase();(!c||c==="movies")&&i.push(Aut(t,e,r,o,"Movie").then(u=>{s.movieCount+=u})),(!c||c==="tvshows")&&i.push(Aut(t,e,r,o,"Series").then(u=>{s.seriesCount+=u}))}return await Promise.allSettled(i),s}async function xIr(t){let e=await mIr(t),r=e.AccessToken,n=e.User.Id,[s,i]=await Promise.all([gIr(t,r,n),AIr(t,n,r)]),a=await yIr(t,n,r,i);return{serverName:Fo(s?.ServerName),libraries:lIr(i),libraryStats:a}}function bIr(t,e={}){return{...t,name:t.name||e.serverName||"Emby",libraries:mce(e.libraries||t.libraries),libraryStats:_ut(e.libraryStats||t.libraryStats)}}function EIr(t){return t?.response?.status===401?"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF":`\u8FDE\u63A5\u5931\u8D25: ${t.message}`}async function gce(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await hce(e.server)})}),t.post("/verify",async(e,r)=>{let s=fM({servers:[e.body||{}]},{ensureDeviceId:!0}).servers[0];if(!s||!s.host||!s.username){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let i=await xIr(s);r.send({code:0,data:bIr(s,i)})}catch(i){r.send({code:-1,message:EIr(i)})}}),t.put("/setting",async(e,r)=>{let n=fM(e.body||{},{ensureDeviceId:!0});for(let i of n.servers)if(!i.host||!i.username){r.send({code:-1,message:`${i.name||"Emby"} \u7684\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A`});return}let s=await fIr(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await pIr(e.server),r.send({code:0})})}var bce="::",Tut=["PrimaryImageAspectRatio","BasicSyncInfo","ProductionYear","RecursiveItemCount","ChildCount"].join(","),Ace=new Map;function _Ir(){return{baseUrl:"",username:"",password:"",deviceId:"",accessToken:"",userId:""}}function SIr(t){let e=t||"default";return Ace.has(e)||Ace.set(e,_Ir()),Ace.get(e)}async function vIr(t,e=""){let r=await IE(t,e),n=String(r?.host||"").replace(/\/$/,""),s=r?.username||"",i=r?.password||"",a=r?.deviceId||"",o=SIr(r?.id||e);if(!n||!s)throw new Error("\u8BF7\u5728\u7BA1\u7406\u9875\u9762\u914D\u7F6E Emby \u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D");return o.baseUrl===n&&o.username===s&&o.password===i&&o.deviceId===a||(o.baseUrl=n,o.username=s,o.password=i,o.deviceId=a,o.accessToken="",o.userId=""),o}async function _ce(t){let e=`${t.baseUrl}/emby/Users/authenticatebyname`,n=(await he.post(e,{Username:t.username,Pw:t.password||"",Password:t.password||""},{headers:vE({contentType:!0,deviceId:t.deviceId}),timeout:15e3})).data;if(!n||!n.AccessToken||!n.User?.Id)throw new Error("Emby\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");t.accessToken=n.AccessToken,t.userId=n.User.Id}async function nm(t,e=""){let r=await vIr(t,e);return(!r.accessToken||!r.userId)&&await _ce(r),r}function mM(t){return vE({token:t.accessToken,deviceId:t.deviceId,userId:t.userId})}function CE(t,e){let r=String(t||""),n=String(e||"");return!r||!n?"":`${encodeURIComponent(r)}${bce}${n}`}function wut(t){let e=String(t||""),r=e.indexOf(bce);if(r<0)return{serverId:"",itemId:""};let n=e.slice(0,r);return{serverId:decodeURIComponent(n),itemId:e.slice(r+bce.length)}}function IIr(t){return String(t.body?.id||"").trim()}function Sut(t){return String(t||"").split(",")[0].trim()}function CIr(t){let r=Sut(t?.headers?.["x-forwarded-proto"])||t?.protocol||"http",s=Sut(t?.headers?.["x-forwarded-host"])||t?.headers?.host||"";return s?`${r}://${s}`:""}function TIr(t=""){let e=String(t||"").toLowerCase();return e==="movies"?"Movie":e==="tvshows"?"Series":"Movie,Series"}function yce(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.floor(e):0}function wIr(t={}){return String(t?.Type||"").toLowerCase()!=="series"?0:yce(t.RecursiveItemCount)||yce(t.EpisodeCount)||yce(t.ChildCount)}function RIr(t=[]){let e=[],r=t.reduce((n,s)=>Math.max(n,s.list.length),0);for(let n=0;n<r;n++)for(let s of t)s.list[n]&&e.push(s.list[n]);return e}async function Rut(t,e){let r=await nm(t,e),n=await nA(`/emby/Users/${r.userId}/Views`,t,e);return Array.isArray(n?.Items)?n.Items:[]}function Ece(t=[]){let e=[];for(let r of t){let n=String(r?.Id||r?.id||"");n&&e.push({n:r.Name||r.name||n,v:n})}return e.length===0?[]:[{key:"library",name:"",init:e[0].v,value:e}]}function xce(t=[]){return(Array.isArray(t)?t:[]).map(e=>{let r=String(e?.id||e?.Id||"").trim();return r?{type_id:r,type_name:String(e?.name||e?.Name||r).trim()||r}:null}).filter(Boolean)}async function nA(t,e,r="",n={}){let s=await nm(e,r),i=`${s.baseUrl}${t}`;try{return(await he({method:n.method||"GET",url:i,headers:mM(s),data:n.data,timeout:15e3})).data}catch(a){if(a?.response?.status===401)return s.accessToken="",await _ce(s),(await he({method:n.method||"GET",url:i,headers:mM(s),data:n.data,timeout:15e3})).data;throw a}}function NIr(t=""){let e=String(t||"").trim();return/^[A-Za-z]+$/.test(e)?e:"Primary"}function OIr(t,e=300){let r=parseInt(t||e,10);return!Number.isFinite(r)||r<=0?e:Math.min(r,1200)}function Nut(t,e="",r=null){if(t.ImageTags?.Primary){let s=`/spider/emby/3/image?${new URLSearchParams({serverId:e,itemId:String(t.Id||""),maxHeight:"300",tag:String(t.ImageTags.Primary)}).toString()}`,i=CIr(r);return i?`${i}${s}`:s}return""}function Out(t,e="",r=null){let n=wIr(t);return{vod_id:CE(e,t.Id),vod_name:t.Name||"",vod_pic:Nut(t,e,r),vod_remarks:n>0?String(n):"",vod_year:t.ProductionYear?String(t.ProductionYear):""}}async function vut(t,e){return{}}async function PIr(t,e){let r=t.query||{},n=String(r.serverId||"").trim(),s=String(r.itemId||"").trim();if(!n||!s)return e.code(404),"";try{let i=await nm(t.server,n),a=NIr(r.type||"Primary"),o=new URLSearchParams({maxHeight:String(OIr(r.maxHeight,300))}),c=String(r.tag||"").trim();c&&o.set("tag",c);let u=`${i.baseUrl}/emby/Items/${encodeURIComponent(s)}/Images/${a}?${o.toString()}`,l;try{l=await he.get(u,{responseType:"stream",headers:mM(i),timeout:15e3})}catch(d){if(d?.response?.status!==401)throw d;i.accessToken="",await _ce(i),l=await he.get(u,{responseType:"stream",headers:mM(i),timeout:15e3})}return e.header("Content-Type",l.headers?.["content-type"]||"image/jpeg"),e.header("Cache-Control","private, max-age=86400"),l.headers?.["content-length"]&&e.header("Content-Length",l.headers["content-length"]),e.send(l.data)}catch(i){return console.error("emby image failed:",i.message),e.code(i?.response?.status===404?404:502),""}}async function kIr(t,e){try{let n=(await jw(t.server)).filter(a=>a?.host&&a?.username);if(n.length===0)return{class:[],filters:{}};let s=n.map((a,o)=>({type_id:a.id,type_name:a.name||`Emby ${o+1}`})),i={};for(let a of n){let o=a.id;i[o]=Ece(a.libraries)}return{class:s,filters:i}}catch(r){return console.error("emby home failed:",r.message),{class:[],filters:{}}}}async function DIr(t,e){let r=String(t.params?.serverId||"").trim();if(!r)return{class:[],filters:{}};try{let n=await IE(t.server,r),s=xce(n?.libraries);if(s.length===0){let i=await Rut(t.server,r);s=xce(i)}return{class:s,filters:{}}}catch(n){console.error("emby server home failed:",n.message);let s=await IE(t.server,r).catch(()=>null);return{class:xce(s?.libraries),filters:{}}}}async function Put(t,e,r="",n={}){let s=t.body?.filters||{},i=Math.max(1,parseInt(t.body?.page||1,10)),a=20,o=(i-1)*a;if(!e)return{page:i,pagecount:i,limit:a,total:0,list:[],filters:n.filterKey?{}:void 0};try{let c=await nm(t.server,e),u=await Rut(t.server,e),l=Ece(u),d=String(r||"").trim();!d&&n.useFilterLibrary!==!1&&(d=String(s.library||"").trim()),d||(d=String(u[0]?.Id||"").trim());let f="Movie,Series";if(d){let y=await nA(`/emby/Users/${c.userId}/Items/${d}`,t.server,e);f=TIr(y?.CollectionType)}let p=new URLSearchParams({StartIndex:String(o),Limit:String(a),Recursive:"true",Fields:Tut,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:f,SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"});d&&p.set("ParentId",d);let m=await nA(`/emby/Users/${c.userId}/Items?${p.toString()}`,t.server,e),h=m?.Items||[],A=m?.TotalRecordCount||h.length,g=h.map(y=>Out(y,e,t)),b={page:i,pagecount:Math.max(i,Math.ceil(A/a)),limit:a,total:A,list:g};return n.filterKey&&(b.filters={[n.filterKey]:l}),b}catch(c){console.error("emby category failed:",c.message);let u=await IE(t.server,e).catch(()=>null),l={page:i,pagecount:i,limit:a,total:0,list:[]};return n.filterKey&&(l.filters={[n.filterKey]:Ece(u?.libraries)}),l}}async function BIr(t,e){let r=IIr(t);return Put(t,r,"",{filterKey:r,useFilterLibrary:!0})}async function LIr(t,e){let r=String(t.params?.serverId||"").trim(),n=String(t.body?.id||"").trim();return Put(t,r,n,{useFilterLibrary:!1})}async function Iut(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)if(s)try{let{serverId:i,itemId:a}=wut(s);if(!i||!a)continue;let o=await nm(t.server,i),c=await nA(`/emby/Users/${o.userId}/Items/${a}`,t.server,i);if(!c)continue;let u={vod_id:CE(i,c.Id),vod_name:c.Name||"",vod_pic:Nut(c,i,t),vod_remarks:c.ProductionYear?String(c.ProductionYear):"",vod_year:c.ProductionYear?String(c.ProductionYear):"",vod_content:c.Overview||"",vod_director:(c.People||[]).filter(l=>l.Type==="Director").map(l=>l.Name).join(","),vod_actor:(c.People||[]).filter(l=>l.Type==="Actor").map(l=>l.Name).join(","),vod_play_from:"",vod_play_url:""};if(c.Type==="Movie")u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${CE(i,c.Id)}`;else if(c.Type==="Series"){let d=(await nA(`/emby/Shows/${c.Id}/Episodes?userId=${o.userId}&Fields=BasicSyncInfo`,t.server,i))?.Items||[];if(d.length>0){let f={};for(let h of d){let A=h.SeasonName||`\u7B2C${h.ParentIndexNumber||1}\u5B63`;f[A]||(f[A]=[]);let g=h.Name===`\u7B2C ${h.IndexNumber} \u96C6`?h.Name:`${h.IndexNumber}.${h.Name}`;f[A].push(`${g}$${CE(i,h.Id)}`)}let p=[],m=[];for(let[h,A]of Object.entries(f))p.push(h),m.push(A.join("#"));u.vod_play_from=p.join("$$$"),u.vod_play_url=m.join("$$$")}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${CE(i,c.Id)}`}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${CE(i,c.Id)}`;n.push(u)}catch(i){console.error("emby detail failed:",s,i.message)}return{list:n}}async function MIr(t,e,r){let n=await nm(t,e),s=encodeURIComponent(r),i=await nA(`/emby/Users/${n.userId}/Items/${s}?Fields=Path`,t,e),o=(Array.isArray(i?.MediaSources)?i.MediaSources:[]).find(c=>String(c?.Id||"").trim())||null;return String(o?.Id||"").trim()}async function Cut(t,e){let{serverId:r,itemId:n}=wut(t.body?.id||"");if(!r||!n)return{parse:0,url:"",header:{}};try{let s=await nm(t.server,r),i=encodeURIComponent(n),a=new URLSearchParams({static:"true",api_key:s.accessToken}),o=await MIr(t.server,r,n).catch(()=>"");return o&&a.set("MediaSourceId",o),{parse:0,url:`${s.baseUrl}/emby/Videos/${i}/stream.mkv?${a.toString()}`,header:{"User-Agent":Yl.userAgent}}}catch(s){return console.error("emby play failed:",s.message),{parse:0,url:"",header:{}}}}async function kut(t,e=[]){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10)),s=20;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};if(e.length===0)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i=(n-1)*s,a=n*s,o=await Promise.allSettled(e.map(async d=>{let f=d.id,p=await nm(t.server,f),m=new URLSearchParams({SearchTerm:r,StartIndex:"0",Limit:String(a),Recursive:"true",Fields:Tut,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:"Movie,Series",SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"}),h=await nA(`/emby/Users/${p.userId}/Items?${m.toString()}`,t.server,f),A=h?.Items||[];return{total:Math.max(0,Number(h?.TotalRecordCount||A.length)||0),list:A.map(g=>Out(g,f,t))}})),c=[],u=0;for(let d of o){if(d.status!=="fulfilled"){console.error("emby search server failed:",d.reason?.message||d.reason);continue}u+=d.value.total,c.push(d.value)}let l=RIr(c);return{page:n,pagecount:Math.max(n,Math.ceil(u/s)),limit:s,total:u,list:l.slice(i,a)}}catch(i){return console.error("emby search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}async function WIr(t,e){let r=await jw(t.server);return kut(t,r.filter(n=>n?.host&&n?.username))}async function $Ir(t,e){let r=String(t.params?.serverId||"").trim(),n=await IE(t.server,r).catch(()=>null);return kut(t,n?.host&&n?.username?[n]:[])}var Dut={meta:{key:"emby",name:"Emby",type:3,hidden:!0},api:async t=>{t.post("/init",vut),t.get("/image",PIr),t.post("/home",kIr),t.post("/category",BIr),t.post("/detail",Iut),t.post("/play",Cut),t.post("/search",WIr),t.post("/server/:serverId/init",vut),t.post("/server/:serverId/home",DIr),t.post("/server/:serverId/category",LIr),t.post("/server/:serverId/detail",Iut),t.post("/server/:serverId/play",Cut),t.post("/server/:serverId/search",$Ir)}};var Sce="/alistVideo",Lut={servers:[{id:"alist_default",name:"\u4EBF\u82EF\u6B63\u7ECF\u7684Alist\u5E93",server:"https://pan.lm379.cn"}]};function FIr(t,e="server"){return`alist_${String(t||e).trim().toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||e}`}function vce(t={}){return{id:t.id||"",name:String(t.name||"").trim(),server:String(t.server||"").trim().replace(/\/+$/,""),username:String(t.username||"").trim(),password:String(t.password||""),token:String(t.token||"").trim(),otpCode:String(t.otpCode||t.otp_code||"").trim()}}function Ice(t={}){let e=Array.isArray(t?.servers)?t.servers:[],r=new Set;return{servers:e.map((n,s)=>{let i={...vce(n),otpCode:""};if(!i.server)return null;i.id||(i.id=FIr(i.server||i.name,`server_${s+1}`));let a=i.id,o=a,c=2;for(;r.has(o);)o=`${a}_${c}`,c+=1;return r.add(o),i.id=o,i}).filter(Boolean)}}function UIr(t={}){return`catpaw_${String(t.id||t.server||t.name||"default").trim().replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,96)||"alist"}`}function TE(t={},e=""){let r=String(e||t.token||"").trim(),n={"Content-Type":"application/json","Client-Id":UIr(t)};return r&&(n.Authorization=r),n}function Cce(t,e={}){return t?.status===401||t?.status===403||e?.code===401||e?.code===403}async function hM(t={},e={}){let r=vce(t);if(r.token)return r.token;if(!r.server||!r.username)return"";let n={username:r.username,password:r.password};r.otpCode&&(n.otp_code=r.otpCode);let i=(await he.post(r.server+"/api/auth/login",n,{headers:TE(r),timeout:e.timeout||1e4})).data||{};if(i.code!==200||!i.data?.token)throw new Error(i.message||"Alist \u767B\u5F55\u5931\u8D25");return i.data.token}async function But(t,e=""){let r=await he.post(t.server+"/api/fs/list",{path:"/",page:1,per_page:1},{headers:TE(t,e),timeout:1e4});return{resp:r,json:r.data||{}}}var Mut=async t=>{let e=await t.db.getObjectDefault(Sce,Lut);return Ice(e)},qIr=async(t,e)=>{let r=Ice(e);return await t.db.push(Sce,r),r},jIr=async t=>{await t.db.delete(Sce)},Hw=async t=>(await Mut(t)).servers;async function Tce(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await Mut(e.server)})}),t.put("/setting",async(e,r)=>{let n=Ice(e.body||{});if(n.servers.some(i=>!i.server)){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}let s=await qIr(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await jIr(e.server),r.send({code:0,data:Lut})}),t.post("/verify",async(e,r)=>{let n=vce(e.body||{});if(!n.server){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let s=await hM(n),{resp:i,json:a}=await But(n,s);if(Cce(i,a)&&n.username&&(s=await hM({...n,token:""}),{resp:i,json:a}=await But(n,s)),a.code!==200){r.send({code:-1,message:a.message||"\u8FDE\u63A5\u5931\u8D25"});return}r.send({code:0,data:{...n,token:s||n.token,otpCode:""}})}catch(s){r.send({code:-1,message:`\u8FDE\u63A5\u5931\u8D25: ${s.message}`})}})}var HIr=new Set([".mp4",".mkv",".avi",".wmv",".flv",".mov",".webm",".ts",".m4v",".rmvb",".rm",".3gp",".mpg",".mpeg",".vob",".iso"]),QIr=new Set([".srt",".ass",".ssa",".sub",".scc",".stl",".ttml",".vtt"]),jut="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Hut="https://img.icons8.com/color/48/video.png",GIr=new Set(["AliyundriveOpen","AliyunShare","BaiduNetdisk","BaiduShare2","Quark","QuarkShare","UC","UCShare","UCTV","115 Cloud","115 Share"]),Qut="Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Ou={},wE={},wce="alist:";function yM(t){let e=t.lastIndexOf(".");return e<0?!1:HIr.has(t.slice(e).toLowerCase())}function Gut(t){let e=t.lastIndexOf(".");return e<0?!1:QIr.has(t.slice(e).toLowerCase())}function Rce(t){return!t||t<=0?"":t>1024**4?(t/1024**4).toFixed(2)+"TB":t>1024**3?(t/1024**3).toFixed(2)+"GB":t>1024**2?(t/1024**2).toFixed(2)+"MB":(t/1024).toFixed(2)+"KB"}function sm(t,e,r=""){let n=String(r||"").trim();return n?wce+Buffer.from(JSON.stringify({serverId:n,name:t,path:e||"/"}),"utf8").toString("base64url"):`${t}||${e}`}function xM(t){let e=String(t||"");if(e.startsWith(wce))try{let n=JSON.parse(Buffer.from(e.slice(wce.length),"base64url").toString("utf8"));return{serverId:String(n?.serverId||""),name:String(n?.name||""),path:String(n?.path||"/")}}catch{return{serverId:"",name:"",path:"/"}}let r=e.indexOf("||");return r<0?{serverId:"",name:e,path:"/"}:{serverId:"",name:e.slice(0,r),path:e.slice(r+2)||"/"}}function KIr(t,e=""){let r=String(e||"").trim();if(r&&Ou[r])return Ou[r];let n=String(t||"").trim();return n&&Ou[n]?Ou[n]:Object.values(Ou).find(s=>r&&s?.id===r||n&&s?.name===n)}function Kut(t){return String(t||"").split(",")[0].trim()}function Wut(t){return Kut(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function VIr(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=Wut(t?.headers?.["x-forwarded-host"])||Wut(t?.headers?.host);if(!n)return e;let s=Kut(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function zIr(t,e,r=""){return Buffer.from(JSON.stringify({serverId:r,name:t,path:e}),"utf8").toString("base64url")}function YIr(t){let e=JSON.parse(Buffer.from(String(t||""),"base64url").toString("utf8"));return{serverId:String(e?.serverId||""),name:String(e?.name||""),path:String(e?.path||"/")}}function JIr(t){return String(t||"").toLowerCase().includes("115")}function XIr(t){let e=String(t?.provider||""),r=String(t?.raw_url||"");return GIr.has(e)||JIr(e)||r.includes("115cdn.net")}function ZIr(t){return String(t||"/").replace(/^\/?/,"/").split("/").map((r,n)=>n===0?"":encodeURIComponent(r)).join("/")}function eCr(t,e,r){let n=new URL("/d"+ZIr(e),t.server);return r&&n.searchParams.set("sign",r),n.toString()}function $ut(t,e,r,n=""){let s=r.split("/").filter(Boolean).pop()||"video.bin",i=String(t?.server?.prefix||"").replace(/\/$/,"");return`${VIr(t)}${i}/proxy/${zIr(e,r,n)}/${encodeURIComponent(s)}`}function tCr(t){let e={};for(let r of["range","if-range","if-none-match","if-modified-since"])t.headers?.[r]&&(e[r]=t.headers[r]);return e}function rCr(t,e,r){return{...tCr(r),...TE(t,e),"User-Agent":Qut,Referer:"https://www.alipan.com/"}}function nCr(){return{"User-Agent":Qut,Referer:"https://www.alipan.com/"}}function Vut(t){return t.id||t.server||t.name}async function gM(t,e=!1){let r=Vut(t);if(!e){if(wE[r])return wE[r];if(t.token)return t.token}let n=await hM({...t,token:e?"":t.token});return n&&(wE[r]=n),n}async function bM(t,e,r={},n=!0){let s=await gM(t),i=TE(t,s),a=await he.post(t.server+e,r,{headers:i,timeout:15e3}).catch(c=>c.response||{status:500,data:{}}),o=a.data||{};if(n&&Cce(a,o)&&t.username){let c=Vut(t);delete wE[c];let u=await gM(t,!0),d=(await he.post(t.server+e,r,{headers:TE(t,u),timeout:15e3}).catch(f=>f.response||{status:500,data:{}})).data||{};if(d.code!==200)throw new Error(d.message||"Alist API error");return d.data}if(o.code!==200)throw new Error(o.message||"Alist API error");return o.data}async function zut(t,e,r=1){return bM(t,"/api/fs/list",{path:e,page:r,per_page:0,refresh:!1})}async function AM(t,e){return bM(t,"/api/fs/get",{path:e})}async function sCr(t,e,r,n={}){return he.request({url:t,method:r,headers:e,responseType:r==="HEAD"?"text":"stream",timeout:3e4,maxRedirects:n.maxRedirects??5,validateStatus:()=>!0})}async function Yut(t,e,r,n,s){let i=eCr(t,e,r),a=await sCr(i,rCr(t,n,s),"GET",{maxRedirects:0});a.data?.destroy&&a.data.destroy();let o=a.headers?.location;return a.status>=300&&a.status<400&&o?new URL(o,i).toString():""}async function iCr(t,e){await Qw(t.server);let r;try{r=YIr(t.params?.id)}catch{return e.code(400),"bad proxy id"}let n=await EM(t.server,r);if(!n)return e.code(404),"drive not found";try{let s=await AM(n,r.path);if(!s?.raw_url)return e.code(404),"raw_url empty";if(s.sign){let i=await gM(n),a=await Yut(n,r.path,s.sign,i,t);if(a)return e.redirect(302,a),""}return s.raw_url?(e.redirect(302,s.raw_url),""):(e.code(502),"proxy failed")}catch(s){return console.error("[alist-video] proxy failed:",s.message),e.code(502),s.message}}async function aCr(t,e,r="/"){return bM(t,"/api/fs/search",{parent:r,keywords:e,scope:0,page:1,per_page:100})}function oCr(t){let e=t.replace(/^\//,"").split("/");return e.length>1?"/"+e.slice(1).join("/"):"/"}function cCr(t={},e="Alist"){let r=String(t.name||"").trim();if(r)return r;try{return new URL(t.server).hostname||e}catch{return e}}function Jut(t={}){let e=String(t.server||"").replace(/\/$/,"");if(!e)return null;let r=cCr({...t,server:e});return{id:String(t.id||"").trim(),name:r,server:e,username:t.username||"",password:t.password||"",token:t.token||"",otpCode:t.otpCode||""}}function Xut(t){if(!t)return null;let e=t.id||t.name;return e?(Ou[e]=t,t):null}async function Nce(t){let e=await Hw(t);for(let r of Object.keys(Ou))delete Ou[r];for(let r of Object.keys(wE))delete wE[r];for(let r of e)Xut(Jut(r));return e}async function Qw(t){Object.keys(Ou).length===0&&await Nce(t)}async function Gw(t,e){let r=String(e||"").trim();if(!r)return null;let n=await Hw(t),s=Jut(n.find(i=>i?.id===r));return Xut(s)}async function EM(t,e={}){let r=KIr(e.name,e.serverId);return r||(e.serverId?Gw(t,e.serverId):null)}async function uCr(t,e){return await Nce(t.server),{}}async function lCr(t,e){if((await Nce(t.server)).length===0)return{class:[],filters:{}};let n=[];for(let s of Object.values(Ou))n.push({type_id:sm(s.name,"/",s.id),type_name:s.name});return{class:n,filters:{}}}async function dCr(t,e){let r=await Gw(t.server,t.params?.serverId);return r?{class:[{type_id:sm(r.name,"/",r.id),type_name:r.name}],filters:{}}:{class:[],filters:{}}}async function Zut(t,e){await Qw(t.server);let r=t.body.id,n=Math.max(1,parseInt(t.body.page||1,10)),{serverId:s,name:i,path:a}=xM(r),o=await EM(t.server,{name:i,serverId:s});if(!o)return{page:n,pagecount:n,list:[]};let c=o.id||s;try{let u=await zut(o,a,n),l=u.content||[],d=[];for(let h of l){let A=a.replace(/\/?$/,"/")+h.name;if(h.is_dir){let g=sm(o.name,A,c);d.push({vod_id:g,vod_name:h.name,vod_pic:h.thumb||jut,vod_remarks:"",vod_tag:"folder",cate:{id:g,name:h.name}})}else yM(h.name)&&d.push({vod_id:sm(o.name,A,c),vod_name:h.name,vod_pic:h.thumb||Hut,vod_remarks:Rce(h.size),vod_tag:"file"})}let f=u.total||d.length,p=u.per_page||f,m=p>0?Math.ceil(f/p):1;return{page:n,pagecount:m,list:d}}catch(u){return console.error("[alist-video] category failed:",u.message),{page:n,pagecount:n,list:[]}}}async function fCr(t,e){let r=String(t.params?.serverId||"").trim(),n=await Gw(t.server,r);if(!n){let a=Math.max(1,parseInt(t.body?.page||1,10));return{page:a,pagecount:a,list:[]}}let s=String(t.body?.id||"").trim(),i=s?xM(s):{path:"/"};return t.body={...t.body||{},id:sm(n.name,i.path||"/",n.id)},Zut(t,e)}async function Fut(t,e,r=3,n=0){if(n>=r)return[];try{let i=(await bM(t,"/api/fs/list",{path:e,page:1,per_page:500,refresh:!1})).content||[],a=[],o=[],c=[];for(let u of i){let l=e.replace(/\/?$/,"/")+u.name;u.is_dir?c.push({name:u.name,path:l}):yM(u.name)?a.push({name:u.name,path:l,size:u.size}):Gut(u.name)&&o.push({name:u.name,path:l})}return{videos:a,subtitles:o,subfolders:c}}catch{return{videos:[],subtitles:[],subfolders:[]}}}async function Uut(t,e){await Qw(t.server);let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){if(!s)continue;let{serverId:i,name:a,path:o}=xM(s),c=await EM(t.server,{name:a,serverId:i});if(!c)continue;let u=c.id||i;try{let l=await AM(c,o),d=l.is_dir;if(!d&&yM(l.name)){n.push({vod_id:s,vod_name:l.name,vod_pic:l.thumb||"",vod_content:`\u5927\u5C0F: ${Rce(l.size)}`,vod_play_from:"Alist",vod_play_url:`${l.name}$${s}`});continue}if(d){let f=await Fut(c,o),p=[],m=[];f.videos.length>0&&(p.push("\u5F53\u524D\u76EE\u5F55"),m.push(f.videos.map(h=>`${h.name}$${sm(c.name,h.path,u)}`).join("#")));for(let h of f.subfolders){let A=await Fut(c,h.path);A.videos.length>0&&(p.push(h.name),m.push(A.videos.map(g=>`${g.name}$${sm(c.name,g.path,u)}`).join("#")))}p.length===0?n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:"\u8BE5\u76EE\u5F55\u4E0B\u6CA1\u6709\u89C6\u9891\u6587\u4EF6",vod_play_from:"",vod_play_url:""}):n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:`\u5171 ${p.reduce((h,A,g)=>h+m[g].split("#").length,0)} \u4E2A\u89C6\u9891`,vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}}catch(l){console.error("[alist-video] detail failed:",s,l.message)}}return{list:n}}async function qut(t,e){await Qw(t.server);let r=t.body?.id||"",{serverId:n,name:s,path:i}=xM(r),a=await EM(t.server,{name:s,serverId:n});if(!a)return{parse:0,url:"",header:{}};let o=a.id||n;try{let c=await AM(a,i),u=c.raw_url;if(!u)return{parse:0,url:"",header:{}};let l={parse:0,url:u,header:{}};if(c.provider==="AliyundriveOpen"||c.provider==="AliyundriveShare2Open")l.header={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Referer:"https://www.alipan.com/"};else if(XIr(c))if(l.header=nCr(),c.sign){let m=await gM(a),h=await Yut(a,i,c.sign,m,t);h?l.url=h:l.url=$ut(t,a.name,i,o)}else l.url=$ut(t,a.name,i,o);let d=i.substring(0,i.lastIndexOf("/")+1),f=i.substring(i.lastIndexOf("/")+1),p=f.substring(0,f.lastIndexOf("."));try{let h=((await zut(a,d)).content||[]).filter(A=>Gut(A.name)&&A.name.includes(p)).slice(0,3);if(h.length>0){let A=[];for(let g of h)try{let b=await AM(a,d+g.name);b.raw_url&&A.push(b.raw_url)}catch{}A.length>0&&(l.subt=A[0])}}catch{}return l}catch(c){return console.error("[alist-video] play failed:",c.message),{parse:0,url:"",header:{}}}}async function elt(t,e){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10));if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of e)try{let o=(await aCr(i,r)).content||[];for(let c of o)if(c.is_dir||yM(c.name)){let l=oCr(String(c.parent||"/")).replace(/\/?$/,"/")+c.name,d=sm(i.name,l,i.id);s.push({vod_id:d,vod_name:c.name,vod_pic:c.thumb||(c.is_dir?jut:Hut),vod_remarks:c.is_dir?"":Rce(c.size),...c.is_dir?{cate:{id:d,name:c.name}}:{}})}}catch{}return{page:n,pagecount:n,list:s}}async function pCr(t,e){return await Qw(t.server),elt(t,Object.values(Ou))}async function mCr(t,e){return await Gw(t.server,t.params?.serverId),{}}async function hCr(t,e){let r=await Gw(t.server,t.params?.serverId);return elt(t,r?[r]:[])}var tlt={meta:{key:"alist-video",name:"Alist",type:3,hidden:!0},api:async t=>{t.post("/init",uCr),t.post("/home",lCr),t.post("/category",Zut),t.post("/detail",Uut),t.post("/search",pCr),t.post("/play",qut),t.get("/proxy/:id/:file",iCr),t.post("/server/:serverId/init",mCr),t.post("/server/:serverId/home",dCr),t.post("/server/:serverId/category",fCr),t.post("/server/:serverId/detail",Uut),t.post("/server/:serverId/search",hCr),t.post("/server/:serverId/play",qut)}};var Kw=async t=>(await t.db.getObjectDefault("/sites",{}))?.list||t.config.sites.list,gCr=async(t,e)=>{await t.db.push("/sites/list",e)},ACr=async t=>{await t.db.delete("/sites/list")};async function Oce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Kw(e.server)})}),t.put("/list",async(e,r)=>{await gCr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await ACr(e.server),r.send({code:0})})}var rlt="\u5185\u7F6E\u5F39\u5E55",yCr=9321;function ilt(t){return String(t||"").split(",")[0].trim()}function nlt(t){return ilt(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function slt(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function xCr(t,e=null){let r=String(t?.address?.()?.url||"").trim(),s=nlt(e?.headers?.["x-forwarded-host"])||nlt(e?.headers?.host),i=ilt(e?.headers?.["x-forwarded-proto"]),a=r.startsWith("https://")?"https":"http",o=i||String(e?.protocol||"").trim()||a;if(s&&!slt(s))return`${o}://${s}`;let c=String(k0()||"").trim(),u=Number.parseInt(String(t?.address?.()?.port||""),10);return c&&!slt(c)?Number.isFinite(u)&&u>0?`${o}://${c}:${u}`:`${o}://${c}`:r}function alt(t,e,r=null){if(!e||typeof e!="object"||!Array.isArray(e.urls))return e;let n=xCr(t,r),s=sae(n,yCr),i=e.urls.map(a=>{if(!a||typeof a!="object")return a;let o=String(a.name||"").trim();return a.builtin===!0||o===rlt?{...a,builtin:!0,name:o||rlt,address:s}:a});return{...e,urls:i}}var _M=async(t,e=null)=>{let n=await t.db.getObjectDefault("/danmu")||t.config.danmu;return alt(t,n,e)},bCr=async(t,e,r=null)=>{await t.db.push("/danmu",alt(t,e,r))},ECr=async t=>{await t.db.delete("/danmu")},_Cr=3,Pce=(t,e=_Cr)=>{messageToDart({action:"toast",opt:{message:t,duration:e}})},SCr=t=>{try{let e=new URL(t);return e.searchParams.set("format","json"),e.toString()}catch{return null}},vCr=t=>Array.isArray(t?.comments)?t.comments.length:Array.isArray(t)?t.length:0;async function kce(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await _M(e.server,e)})}),t.put("/setting",async(e,r)=>{await bCr(e.server,e.body,e),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await ECr(e.server),r.send({code:0})}),t.post("/push",async(e,r)=>{let n=e.body||{},s=n.url,i=n.sourceName||"\u5F39\u5E55\u6E90",a=n.previewUrl||SCr(s);if(!s){r.code(400).send({code:1,message:"Missing push url"});return}a&&(async()=>{try{let o=await Ae.get(a,{timeout:1e4}),c=vCr(o.data);c>0?Pce(`\u901A\u8FC7 ${i} - \u89E3\u6790\u5230 ${c} \u6761\u5F39\u5E55`):Pce("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}catch(o){console.error("Manual danmu preview failed:",o),Pce("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}})(),messageToDart({action:"danmuPush",opt:{url:s}}),r.send({code:0})}),t.get("/fe",(e,r)=>{r.type("text/html").send(`
<!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 Plt=Re(Jn(),1),klt=Re(vv(),1),nue=Re(rI(),1);var Dce=["\u7F8E\u5267","\u97E9\u5267","\u65E5\u5267","\u53F0\u5267","\u6E2F\u5267","\u6E2F\u53F0\u5267","\u56FD\u4EA7\u5267","\u5927\u9646\u5267","\u5185\u5730\u5267","\u6CF0\u5267","\u82F1\u5267","\u7F8E\u5267\u7248","\u82F1\u5267\u7248","\u65E5\u5267\u7248","\u97E9\u5267\u7248","\u53F0\u5267\u7248","\u6E2F\u5267\u7248","\u6CF0\u5267\u7248","\u5F71\u540E","\u5F71\u5E1D","\u56FD\u5267","\u5FAE\u77ED\u5267","\u77ED\u5267","\u7535\u5F71","\u5267\u96C6","\u7EFC\u827A","\u72AF\u7F6A","\u52A8\u6F2B","\u52A8\u753B","\u7EAA\u5F55\u7247","\u77ED\u7247","\u8FDE\u7EED\u5267","\u7CFB\u5217\u5267","\u7F51\u7EDC\u5267","\u7535\u89C6\u5267"],ICr=["\u5F71\u7247","\u7247\u5B50","\u7247\u82B1","\u7247\u6BB5","\u9884\u544A","\u9884\u544A\u7247","\u82B1\u7D6E","\u5E55\u540E","\u8BBF\u8C08","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","TV\u7248","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u56FD\u8BED\u7248","\u666E\u901A\u8BDD\u7248","\u7CA4\u8BED\u7248","\u95FD\u5357\u8BED\u7248","\u5BA2\u5BB6\u8BED\u7248","\u5434\u8BED\u7248","\u5DDD\u8BED\u7248","\u6E58\u8BED\u7248","\u8D63\u8BED\u7248","\u7CA4\u8BED\u914D\u97F3\u7248","\u56FD\u8BED\u914D\u97F3\u7248","\u666E\u901A\u8BDD\u914D\u97F3\u7248","\u65B9\u8A00\u7248","\u539F\u7248\u914D\u97F3","\u539F\u97F3\u7248","\u53F0\u8BED\u7248","\u7CA4\u8BED\u4E2D\u5B57\u7248","\u56FD\u8BED\u4E2D\u5B57\u7248","\u666E\u901A\u8BDD\u4E2D\u5B57\u7248","\u7CA4\u8BED\u539F\u58F0\u7248","\u56FD\u8BED\u539F\u58F0\u7248","\u666E\u901A\u8BDD\u539F\u58F0\u7248","\u7CA4\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u56FD\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u666E\u901A\u8BDD\u5185\u5D4C\u5B57\u5E55\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u91CD\u5236\u7248","\u4FEE\u590D\u7248","\u52A0\u957F\u7248","\u672A\u5220\u51CF\u7248","\u5B8C\u6574\u7248","\u5BFC\u6F14\u526A\u8F91\u7248","\u7EC8\u6781\u7248","\u7279\u522B\u7248","\u9650\u5B9A\u7248","\u6536\u85CF\u7248","\u8C6A\u534E\u7248","\u5178\u85CF\u7248","\u9AD8\u6E05\u7248","\u8D85\u6E05\u7248","\u6807\u6E05\u7248","HD\u7248","UHD\u7248","4K\u7248","\u84DD\u5149\u7248","DVD\u7248","BD\u7248","WEB\u7248","TVrip","BDrip","DVDrip","HDrip","WEB-DL","HDTV","DVDRip","BRRip","HDRip","BluRay","TS","TC","CAM","\u62A2\u5148\u7248","\u67AA\u7248","\u5077\u62CD\u7248","\u6CC4\u9732\u7248","\u62A2\u5148\u770B","\u6B63\u7247","\u6B63\u7247\u7247\u6BB5","\u6B63\u7247\u7CBE\u534E","\u82B1\u7D6E\u96C6\u9526","\u5E55\u540E\u82B1\u7D6E","\u5236\u4F5C\u7279\u8F91","\u8BBF\u8C08\u5F55","\u9996\u6620\u793C","\u7EA2\u6BEF\u79C0","\u8DEF\u6F14","\u53D1\u5E03\u4F1A","\u9884\u544A\u7247\u5408\u96C6","\u9884\u544A\u7247\u82B1\u7D6E","\u7247\u82B1\u9884\u544A","\u7CBE\u5F69\u7247\u6BB5","\u7CBE\u5F69\u96C6\u9526","\u7CBE\u9009\u7247\u6BB5","\u9AD8\u80FD\u7247\u6BB5","\u9AD8\u5149\u65F6\u523B","\u526A\u8F91\u7248","\u6DF7\u526A","MV","\u4E3B\u9898\u66F2","\u63D2\u66F2","\u7247\u5C3E\u66F2","\u914D\u4E50","\u539F\u58F0","OST","\u539F\u58F0\u5E26","\u539F\u58F0\u5927\u789F","\u97F3\u4E50\u96C6","\u97F3\u4E50\u4F1A","\u6F14\u5531","Live","Live\u7248","\u73B0\u573A\u7248","\u73B0\u573A\u5F55\u5236","\u821E\u53F0\u7248","\u821E\u53F0\u5267","\u8BDD\u5267","\u6B4C\u5267","\u821E\u5267","\u620F\u66F2","\u4EAC\u5267","\u8D8A\u5267","\u7CA4\u5267","\u8BC4\u5267","\u9EC4\u6885\u620F","\u4E8C\u4EBA\u8F6C","\u76F8\u58F0","\u5C0F\u54C1","\u7EFC\u827A\u79C0","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0","\u8BBF\u8C08\u8282\u76EE","\u7EAA\u5F55\u7247\u7CFB\u5217","\u4E13\u9898\u7247","\u79D1\u6559\u7247","\u52A8\u753B\u7247","\u52A8\u6F2B\u7247","\u52A8\u753B\u77ED\u7247","\u52A8\u753B\u7535\u5F71","\u52A8\u753B\u7CFB\u5217","\u52A8\u753B\u5267\u96C6","\u52A8\u753B\u8FDE\u7EED\u5267","\u52A8\u753BOVA","\u52A8\u753BOAD","\u52A8\u753BSP","\u52A8\u753B\u7279\u5178","\u52A8\u753B\u5408\u96C6","\u52A8\u753B\u7CBE\u9009","\u7535\u5F71\u5408\u96C6","\u5F71\u7247\u5408\u96C6","\u7CFB\u5217\u5408\u96C6","\u5408\u96C6\u7248","\u5957\u88C5\u7248","\u5957\u88C5\u5408\u96C6","\u5168\u96C6","\u5168\u7CFB\u5217","\u5168\u5B63","\u7B2C\u4E00\u5B63","\u7B2C\u4E8C\u5B63","\u7B2C\u4E09\u5B63","\u7B2C\u56DB\u5B63","\u7B2C\u4E94\u5B63","\u7B2C\u516D\u5B63","\u7B2C\u4E03\u5B63","\u7B2C\u516B\u5B63","\u7B2C\u4E5D\u5B63","\u7B2C\u5341\u5B63","\u66F4\u65B0\u4E2D","\u5B8C\u7ED3","\u5B8C\u7ED3\u7BC7","\u5B8C\u7ED3\u5B63","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u7EC8\u7BC7","\u5927\u7ED3\u5C40","\u5927\u7D50\u5C40","\u7279\u522B\u7BC7\u5B8C\u7ED3","\u756A\u5916\u5B8C\u7ED3","OVA\u5B8C\u7ED3","OAD\u5B8C\u7ED3","SP\u5B8C\u7ED3","\u5168\u5267\u7EC8","\u5B8C\u7ED3\u6492\u82B1","\u5B8C\u7ED3\u7EAA\u5FF5","\u5B8C\u7ED3\u7279\u8F91","\u5B8C\u7ED3\u8BBF\u8C08","\u5B8C\u7ED3\u82B1\u7D6E","\u5B8C\u7ED3\u5408\u96C6","\u5B8C\u7ED3\u7BC7\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6","\u5B8C\u7ED3\u7279\u8F91\u5408\u96C6","\u5B8C\u7ED3\u8BBF\u8C08\u5408\u96C6","\u5B8C\u7ED3\u82B1\u7D6E\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91\u8BBF\u8C08\u82B1\u7D6E","BD","BDRIP","WEB-DL","HDRip","DVDRip","BDRip","BRRip","Rip","BluRay","IMAX","CAM","HD","HDR","UHD","4K","1080p","720p","2160p","480p","120fps","60fps","x264","x265","H264","HEVC","AAC","dts","ddp","truehd","10bit","8bit","5.1","7.1","\u56FD\u8BED","\u7CA4\u8BED","\u82F1\u8BED","\u65E5\u8BED","\u97E9\u8BED","\u6CF0\u8BED","\u6CD5\u8BED","\u5FB7\u8BED","\u897F\u73ED\u7259\u8BED","\u4FC4\u8BED","\u8461\u8404\u7259\u8BED","\u610F\u5927\u5229\u8BED","\u81FB\u5F69","\u4E2D\u5B57","\u7B80\u4E2D","\u7E41\u4E2D","\u7B80\u7E41\u4E2D\u5B57","\u4E2D\u82F1\u53CC\u5B57","\u5185\u5D4C","\u5185\u5C01","\u675C\u6BD4\u5168\u666F\u58F0","\u675C\u6BD4\u97F3\u6548","\u65E0\u6C34\u5370","\u5B8C\u6574\u7248","\u539F\u58F0\u7248","\u89E3\u8BF4\u7248","\u9884\u544A\u7247","\u672A\u5220\u51CF\u7248","\u52A0\u957F\u7248","\u84DD\u5149","\u62A2\u5148\u7248","TC\u7248","\u62A2\u5148","TC","\u4E24\u5B63\u5168","\u5168\u5B63","\u5168\u96C6","DV","\u538B\u5236","HQ","\u5E27","\u7535\u5F71\u7248","\u8C46\u74E3","\u66F4\u65B0","\u66F4\u65B0\u5230","\u63A8\u8350","\u52A8\u4F5C","\u5192\u9669","\u7231\u60C5","\u79D1\u5E7B","\u60AC\u7591","\u60CA\u609A","\u6050\u6016","\u559C\u5267","\u60B2\u5267","\u5267\u60C5","\u5947\u5E7B","\u72AF\u7F6A","\u6218\u4E89","\u5386\u53F2","\u4F20\u8BB0","\u97F3\u4E50","\u6B4C\u821E","\u5BB6\u5EAD","\u513F\u7AE5","\u4F53\u80B2","\u707E\u96BE","\u4F26\u7406","\u77ED\u7247","\u5FAE\u7535\u5F71","\u9AD8\u6E05","\u8D85\u6E05","\u6807\u6E05","\u62A2\u9C9C\u770B","\u9996\u64AD","\u72EC\u64AD","\u70ED\u64AD","\u8FDE\u8F7D\u4E2D","\u6700\u65B0","\u7ECF\u5178","\u70ED\u95E8","\u83B7\u5956","\u53E3\u7891","\u597D\u8BC4","\u9AD8\u5206","\u8C46\u74E3\u9AD8\u5206","IMDb\u9AD8\u5206","\u672A\u5206\u7EA7","\u9650\u5236\u7EA7","\u5BFC\u6F14\u526A\u8F91","\u52A0\u957F","\u7279\u522B\u52A0\u957F","\u7EC8\u6781\u526A\u8F91","\u6536\u85CF","\u8C6A\u534E","\u7EAA\u5FF5","\u9650\u5B9A","\u91CD\u6620","\u4FEE\u590D","\u6570\u7801\u4FEE\u590D","\u91CD\u5236","\u84DD\u5149\u4FEE\u590D","\u91CD\u5236\u9AD8\u6E05","\u9AD8\u6E05\u91CD\u5236","\u91CD\u7F16","\u91CD\u526A","\u914D\u97F3","\u8BD1\u5236","\u539F\u58F0","\u53CC\u8BED","\u591A\u8BED","\u591A\u58F0\u9053","\u73AF\u7ED5\u58F0","\u5168\u666F\u58F0","3D","VR","\u5168\u666F","360\u5EA6","8K","\u539F\u753B","\u65E0\u635F","\u6709\u635F","\u538B\u7F29","\u672A\u538B\u7F29","\u9AD8\u7801\u7387","\u4F4E\u7801\u7387","\u91CD\u7F16\u7801","\u591A\u5B57\u5E55","\u591A\u97F3\u8F68","\u53CC\u97F3\u8F68","\u591A\u7248\u672C","\u5408\u96C6","\u5957\u88C5","\u7CFB\u5217","\u5B8C\u7ED3\u7248","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u5927\u7ED3\u5C40","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u539F\u521B","\u884D\u751F","\u756A\u5916","\u7EED\u96C6","\u524D\u4F20","\u540E\u4F20","\u91CD\u542F","\u7FFB\u62CD","\u91CD\u62CD","\u81F4\u656C","\u7EAA\u5FF5","\u732E\u793C","\u8D3A\u5C81","\u6691\u671F\u6863","\u56FD\u5E86\u6863","\u8D3A\u5C81\u6863","\u6625\u8282\u6863","\u60C5\u4EBA\u8282\u6863","\u4E2D\u79CB\u6863","\u6863\u671F","\u4E0A\u6620","\u5B9A\u6863","\u9996\u6620","\u516C\u6620","\u4E0A\u6620\u65F6\u95F4","\u4E0A\u6620\u65E5\u671F","\u7968\u623F","\u7968\u623F\u51A0\u519B","\u7968\u623F\u699C","\u53E3\u7891\u699C","\u8BC4\u5206\u699C","\u6392\u884C\u699C","\u699C\u5355","\u699C\u5355\u7B2C\u4E00","\u70ED\u95E8\u699C","\u70ED\u641C","\u70ED\u8BAE","\u8BDD\u9898","\u70ED\u8BAE\u8BDD\u9898","\u70ED\u95E8\u8BDD\u9898","\u8BA8\u8BBA\u5EA6","\u5173\u6CE8\u5EA6","\u70ED\u5EA6","\u70ED\u5EA6\u699C","\u70ED\u95E8\u63A8\u8350","\u7CBE\u9009","\u529B\u8350","\u5F3A\u70C8\u63A8\u8350","\u5FC5\u770B","\u4E0D\u53EF\u9519\u8FC7","\u7ECF\u5178\u4E4B\u4F5C","\u795E\u4F5C","\u4F73\u4F5C","\u9AD8\u5206\u4F73\u4F5C","\u9AD8\u5206\u795E\u4F5C","\u70C2\u7247","\u5DEE\u8BC4","\u4F4E\u5206","\u53E3\u7891\u7206\u68DA","\u53E3\u7891\u6251\u8857","\u53E3\u7891\u4E24\u6781","\u53E3\u7891\u5206\u5316","\u4E89\u8BAE","\u70ED\u8BAE\u4E0D\u65AD","\u5907\u53D7\u5173\u6CE8","\u4E07\u4F17\u671F\u5F85","\u671F\u5F85\u5DF2\u4E45","\u4E07\u4F17\u77A9\u76EE","\u5E74\u5EA6\u6700\u4F73","\u5E74\u5EA6\u6700\u5DEE","\u5E74\u5EA6\u4E4B\u4F5C","\u5E74\u5EA6\u9ED1\u9A6C","\u5E74\u5EA6\u60CA\u559C","\u5E74\u5EA6\u5931\u671B","\u538B\u8F74\u4E4B\u4F5C","\u6536\u5B98\u4E4B\u4F5C","\u6536\u5B98","\u6536\u5B98\u5B63","\u6536\u5B98\u6218","\u5927\u7ED3\u5C40\u524D\u7BC7","\u5927\u7ED3\u5C40\u540E\u7BC7","\u6700\u7EC8\u56DE","\u6700\u7EC8\u8BDD","\u6700\u7EC8\u7AE0\u524D\u7BC7","\u6700\u7EC8\u7AE0\u540E\u7BC7"],CCr=[...Dce,...ICr],olt=new RegExp(CCr.join("|"),"ig"),TCr=new RegExp(Dce.join("|"),"ig");function sA(t){if(!t||!t.trim())return"";let e=t.trim();e=e.replace(/丨/g,""),e=e.replace(/-/g," "),e=e.replace(TCr,""),e=e.replace(/\s+/g," ").trim();let r=e.match(/^[\u4e00-\u9fa5]+\d+(?=:|\s|$)/);if(r)return r[0];let n=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa50-9]+\s*(?=\(\d{4}\))/);if(n)return n[0];let s=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa5 ,.,。、]+\s*(?=\(|【|\s+\d{4})/),i=s?s[0].trim():"",a=!1,o=e.match(/《(.+?)》/);if(o)e=o[1],a=!0;else{let l=new RegExp(`\u3010((?!${Dce.join("|")})[\u4E00-\u9FA5]{2,}[^/]+?)\u3011`,"i"),d=e.match(l);d&&(e=d[1],a=!0)}!a&&i&&(e=i);let c=[[/.*-/g,""],[/\b\d{4}\b/g,""],[/(?<!^)\[.*?\]|\{.*?\}|(.*?)|「.*?」/g," "],[/\b\d+(\.\d+)?[GMK]B?\b/gi,""],[olt,""],[/豆瓣\d+(\.\d+)?/g,""],[/\b\d+(?=fps|帧)/g,""],[/\b[a-zA-Z]\b/g,""],[/(?<![\u4e00-\u9fa5])\b\d+\b(?![\u4e00-\u9fa5])/g,""],[/[^a-zA-Z0-9\u4e00-\u9fa5 ]/g,""],[/\s+/g," "]];for(let l of c)e=e.replace(l[0],l[1]);e=e.trim(),e.includes(" ")&&(e=e.substring(0,e.indexOf(" "))),!a&&i&&(e=e.replace(/\s/g,""));let u=t.match(/([\u4e00-\u9fa5]{2,})\s*$/);if(u){let l=u[1];(e.length<2||/\d+集/.test(e))&&(e=l)}if(!e){let l=t.match(/\[(.*?)\]/);l&&(e=l[1].trim(),e=e.replace(olt,"").replace(/\d+/g,"").replace(/\s+/g," ").trim())}return e.trim()}function Bce(t){if(!t)return"";let e=t.match(/(?:^|[^a-zA-Z0-9])(S|Season)\s*(\d+)/i);if(e&&(e[1].toLowerCase()==="s"||e[1].toLowerCase()==="season"))return e[2].padStart(2,"0");let r=t.match(/第\s*([一二三四五六七八九十百千万亿\d]+)\s*å­£/);return r?Yf(r[1]).padStart(2,"0"):""}var clt={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},ult={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4,\u4EBF:1e8};function llt(t){if(!t)return-1;let e=0,r=0,n=0,s=!1;for(let i=0;i<t.length;i++){let a=t[i];if(clt.hasOwnProperty(a))n=clt[a];else if(ult.hasOwnProperty(a)){let o=ult[a];o===10?(n===0&&(n=1),r+=n*o,n=0):o===1e4||o===1e8?(r+=n,e+=r*o,r=0,n=0,s=!0):(r+=(n||1)*o,n=0)}else return-1}return s||(e+=r),e+=n,t.startsWith("\u5341")&&e<20&&(e=10+e%10),e}function Yf(t){return t&&t.replace(/([零一二三四五六七八九十百千万亿]+)|(\d+)/g,(e,r,n)=>{if(r){let s=llt(r);return s!==-1?String(s):e}else if(n)return String(parseInt(n,10));return e})}function wCr(t){let e=t;return e=e.replace(/[(()[\]【】{}]\s*([上中下])\s*[)()[\]【】{}]/g,"$1"),e=e.replace(/(\[|\{|\(|【).*?(\]|\}|)|】)/g," "),e=e.replace(/\d+\s*(fps|帧|frames?|hz|赫兹)/gi," "),e=e.replace(/\b(\d+(p|k|i)|4k|8k|uhd|hd|fhd|qhd|2160p|1440p|1080p|720p|480p|360p)\b/gi," "),e=e.replace(/\b(19|20)\d{2}\b/g," "),e=e.replace(/\b(?:dts|ddp|aac|ac3|eac3|truehd|atmos)\d+(?:\.\d+)?\b|\b\d+\.\d+\b/gi," "),e=e.replace(/\b(8bit|10bit|12bit)\b/gi," "),e=e.replace(/\b(hdr|hdr10|hdr10\+|dolby vision|dv|hlg)\b/gi," "),e=e.replace(/\b(x264|x265|h\.264|h\.265|h264|h265|hevc|mpeg4|av1|vp9)\b/gi," "),e=e.replace(/\b(web-dl|bluray|bdrip|hdrip|dvdrip|brrip|hdtv|dvdr|cam|ts|tc|r5|scr)\b/gi," "),e=e.replace(/\b(hq|sd|hd|fhd|uhd|imax|superbit|remux|extended|uncut|directors cut|dc|special edition|se)\b/gi," "),e=e.replace(/\b(é«˜ç |é«˜ç çŽ‡|é«˜ç ç‰ˆ|超清|高清|æ ‡æ¸…|æ— æ°´å°|完整版|æœªåˆ å‡|åŠ é•¿ç‰ˆ|导演剪辑版|特效字幕|内嵌字幕|双语字幕|中文字幕|英文字幕|繁体字幕|简体字幕|多音轨|杜比音效|全景声|hdr)\b/gi," "),e=e.replace(/[\-\_.,()]+/g," "),e.replace(/\s+/g," ").trim()}function RCr(t){let e=t.replace(/(\[|\{|\(|【).*?(\]|\}|)|】)/g," ");if(/s\d+e\d+/i.test(e))return"-1";let r=e.match(/[\u4e00-\u9fa5\-\_\.\s]+(0*\d{1,8})(?:[\-\_\.\s]|$)/);if(r){let n=r[1],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return Yf(n)}if(r=e.trim().match(/^0*\d{1,8}$/),r){let n=r[0],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return Yf(n)}return"-1"}function NCr(t){let e="\u671F|\u5B63",r="\u4E0A\u4E2D\u4E0B",n="\u96C6\u8A71\u8BDD",s=new RegExp(`(\u7B2C?)(0*(d{1,8}|[\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+))((?:${e})[${r}]?[\uFF08(]?[${r}]?[)\uFF09]?)`),i=t.match(s);if(i){let o=i[1],c=i[2],u=i[4].replace(/[(())]/g,"");return c=Yf(c),o+c+u}let a=Array.from(t.matchAll(/(?:s\d+.*?e|e)(\d{1,8})(?!\d)/gi));if(a.length>0)return Yf(a[a.length-1][1]);if(s=new RegExp(`\u7B2C([\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+)[${n}]`),i=t.match(s),i){let o=llt(i[1]);return o>0?String(o):"-1"}return s=new RegExp(`\u7B2C(d{1,8})[${n}]`),i=t.match(s),i||(i=t.match(/ep(\d{1,8})/i),i)||(s=new RegExp(`(d{1,8})[${n}]`),i=t.match(s),i)?Yf(i[1]):"-1"}function OCr(t){let e="a-zA-Z\xC0-\u017F",r=new RegExp(`(?<![${e}d])0*(\\d{1,8})(?![${e}d])`,"gu"),n=t.match(r);if(n)for(let s of n){let i=parseInt(s,10);if(!(i>=1900&&i<=2100))return Yf(s)}return"-1"}function Vw(t){if(!t)return"-1";let e=t,r=e.lastIndexOf(".");r>0&&(e=e.substring(0,r));let n=wCr(e),s=NCr(n);if(s!=="-1")return s;let i=RCr(e);return i!=="-1"?i:OCr(n)}var Lce=async t=>(await t.db.getObjectDefault("/t4",{}))?.list||t.config.t4?.list||[],PCr=async(t,e)=>{await t.db.push("/t4/list",e)},kCr=async t=>{await t.db.delete("/t4/list")};async function Mce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Lce(e.server)})}),t.put("/list",async(e,r)=>{await PCr(e.server,e.body),r.send({code:0})}),t.delete("/list",async(e,r)=>{await kCr(e.server),r.send({code:0})})}function Wce(t,e){let r=Ae.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{filter:!0}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){try{let{data:l}=await r.get("",{params:{play:u.body.id,flag:u.body.flag}});return!l.url&&!l.urls&&u.body.id.startsWith("http")?{url:u.body.id}:l}catch(l){console.warn(l)}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,t4:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var DCr=["/api.php/provide/vod/","/api.php/provide/vod","/api.php/app/","/api.php/app"],SM="\u300C\u91C7\u300D",BCr=[{name:`${SM}\u7535\u5F71\u5929\u5802`,address:"http://dyttzyw.com/api.php/provide/vod/"}];function Fce(t,e="https"){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:`${e}://${r}`:""}function Uce(t){try{return new URL(t)}catch{return null}}function LCr(t=""){let e=String(t||"").toLowerCase();return e==="localhost"||e.includes(".")||e.includes(":")||/^\d{1,3}(?:\.\d{1,3}){3}$/.test(e)}function MCr(t){for(let e of["ac","wd","t","pg","ids","quick"])t.searchParams.delete(e);return t.hash="",t}function flt(t){let e=String(t||"").trim(),r=/^https?:\/\//i.test(e),n=Uce(Fce(e));return!n||!["http:","https:"].includes(n.protocol)||!r&&!LCr(n.hostname)?"":(MCr(n),n.toString())}function WCr(t={},e=""){let r=String(t.name||t.title||e||"").trim();return r||Uce(Fce(t.address||t.api||t.url||""))?.hostname||"CMS"}function $Cr(t){let e=String(t||"").trim();return e?e.startsWith(SM)?e:`${SM}${e}`:`${SM}CMS`}function qce(t,e=""){if(!t||typeof t!="object")return null;let r=String(t.address||t.api||t.url||"").trim(),n=flt(r);return n?{name:$Cr(WCr({...t,address:n},e)),address:n}:null}function plt(t){if(typeof t=="string")try{return plt(JSON.parse(t))}catch{return[]}return Array.isArray(t)?t:!t||typeof t!="object"?[]:Array.isArray(t.sites)?t.sites:Array.isArray(t.list)?t.list:t.api_site&&typeof t.api_site=="object"?Object.entries(t.api_site).map(([e,r])=>({...r,key:e})):[]}function FCr(t){let e=new Set;return plt(t).map(r=>qce(r,r?.key)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}function UCr(t){let e=String(t||"").trim(),r=[],n=s=>{let i=flt(s);i&&!r.includes(i)&&r.push(i)};for(let s of["https","http"]){let i=Uce(Fce(e,s));if(!i)continue;if(n(i.toString()),!i.pathname||i.pathname==="/")for(let o of DCr)n(`${i.origin}${o}`)}return r}async function dlt(t,e=void 0){let r=await he.get(t,{params:e,timeout:1e4,validateStatus:n=>n>=200&&n<400});if(typeof r.data=="string")try{return JSON.parse(r.data)}catch{return r.data}return r.data}function qCr(t){return!!t&&typeof t=="object"&&Array.isArray(t.class)}async function jCr(t,e=""){let r=String(t||"").trim();if(!r)throw new Error("\u8BF7\u8F93\u5165 CMS \u5730\u5740");let n=UCr(r);for(let s of n)try{let i=await dlt(s),a=FCr(i);if(a.length>0)return{type:"config",sources:a}}catch{}for(let s of n)try{let i=await dlt(s,{ac:"class"});if(qCr(i))return{type:"cms",sources:[qce({name:e,address:s})].filter(Boolean)}}catch{}throw new Error("\u672A\u8BC6\u522B\u5230\u53EF\u7528\u7684 CMS \u6E90")}function $ce(t=[]){let e=new Set;return(Array.isArray(t)?t:[]).map(r=>qce(r)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}var jce=async t=>{let e=await t.db.getObjectDefault("/cms",{});if(e&&Object.prototype.hasOwnProperty.call(e,"list"))return $ce(e.list);let r=Array.isArray(t.config.cms?.list)?t.config.cms.list:[];return $ce(r.length>0?r:BCr)},HCr=async(t,e)=>{await t.db.push("/cms/list",$ce(e))},QCr=async t=>{await t.db.delete("/cms/list")};async function Hce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await jce(e.server)})}),t.put("/list",async(e,r)=>{await HCr(e.server,e.body),r.send({code:0})}),t.post("/resolve",async(e,r)=>{try{r.send({code:0,data:await jCr(e.body?.url,e.body?.name)})}catch(n){r.send({code:-1,message:n.message||"CMS \u89E3\u6790\u5931\u8D25"})}}),t.delete("/list",async(e,r)=>{await QCr(e.server),r.send({code:0})})}var GCr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,Qce="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0 Safari/537.36";function KCr(t=""){return/^https?:\/\//i.test(String(t||"").trim())}function VCr(t=""){return GCr.test(String(t||"").trim())}function zCr(t="",e=""){try{return new URL(String(t||"").trim(),e).toString()}catch{return String(t||"").trim()}}function YCr(t=""){let e=[/["']([^"']+\.m3u8(?:\?[^"']*)?)["']/i,/(https?:\/\/[^\s"'<>]+\.m3u8(?:\?[^\s"'<>]*)?)/i];for(let r of e){let n=r.exec(String(t||""));if(n?.[1])return n[1].replace(/\\\//g,"/")}return""}function Gce(t,e){let r=he.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{ac:"class"}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){let l=String(u.body.id||"").trim();if(!l)return{url:""};if(!KCr(l)||VCr(l))return{parse:0,url:l};try{let{data:d}=await he.get(l,{timeout:1e4,headers:{"User-Agent":Qce,Referer:l}}),f=YCr(d);if(f)return{parse:0,url:zCr(f,l),header:{Referer:l,"User-Agent":Qce}}}catch(d){console.warn(d)}return{parse:1,url:l,header:{Referer:l,"User-Agent":Qce}}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,cms:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var iA={HOME:0,CATEGORY:0,SEARCH:0,DETAIL:12e4,PLAY:3e4,SPIDERS:0},Kce=class{constructor(e=800){this.max=Math.max(100,Number(e)||800),this.data=new Map,this.pending=new Map}get(e){if(!this.data.has(e))return;let r=this.data.get(e);if(r.expireAt>0&&r.expireAt<=Date.now()){this.data.delete(e);return}return this.data.delete(e),this.data.set(e,r),r.value}set(e,r,n=0){let s=n>0?Date.now()+n:0;return this.data.has(e)&&this.data.delete(e),this.data.set(e,{value:r,expireAt:s}),this.compact(),r}delete(e){this.pending.delete(e),this.data.delete(e)}clear(){this.pending.clear(),this.data.clear()}compact(){for(;this.data.size>this.max;){let e=this.data.keys().next().value;this.data.delete(e)}}async wrap(e,r,n){let s=this.get(e);if(s!==void 0)return s;if(this.pending.has(e))return this.pending.get(e);let i=(async()=>{try{let a=await n();return a!==void 0&&this.set(e,a,r),a}finally{this.pending.delete(e)}})();return this.pending.set(e,i),i}};function vM(t={}){return new Kce(t.max||800)}async function Jf(t,e,r,n){return!t||typeof t.wrap!="function"||Number(r)<=0?n():t.wrap(e,r,n)}function im(t=[]){return t.map(e=>String(e)).join(":")}function JCr(t){let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{apiBase:e,spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2])}:null}function Vce(t){return String(t||"").split(",")[0].trim()}function IM(t=null){let r=Vce(t?.headers?.["x-forwarded-host"])||Vce(t?.headers?.host);if(!r)return{headers:void 0,cacheVary:"-"};let s=Vce(t?.headers?.["x-forwarded-proto"])||String(t?.protocol||"http").trim()||"http";return{headers:{host:r,"x-forwarded-host":r,"x-forwarded-proto":s},cacheVary:`${s}://${r}`}}function XCr(t=[],e=[]){let r={};if(t.forEach(i=>{r[i.key]=i}),!Array.isArray(e)||!e.length)return t;let n={},s=[];return e.forEach(i=>{n[i.key]=!0;let a=r[i.key];if(!a||!i.enable)return;let o=typeof i.name=="string"?i.name.trim():"";s.push({...a,name:o||a.name})}),t.forEach(i=>{n[i.key]||s.push(i)}),s}async function Jl(t){let e=t.embyContext?.cache;return Jf(e,"emby:enabled-video-spiders:v2",iA.SPIDERS,async()=>{let r=await t.inject({method:"GET",url:"/full-config"});if(r.statusCode>=400)return[];let n=r.json(),s=Array.isArray(n?.video?.sites)?n.video.sites:[],i=await Kw(t).catch(()=>[]),a=XCr(s,i),o={},c=[];return a.forEach(u=>{let l=JCr(u.api);if(!l||l.spiderType!==3)return;let d=`${u.key}:${l.apiBase}`;o[d]||(o[d]=!0,c.push({siteKey:u.key,siteName:u.name||l.spiderKey,spiderKey:l.spiderKey,spiderType:l.spiderType,apiBase:l.apiBase,api:u.api}))}),c})}function aA(t=[],e,r=null,n=""){let s=r===null?null:Number(r),i=String(n||"").trim();return t.find(a=>a.spiderKey!==e?!1:s===null?!0:i&&a.apiBase!==i?!1:Number(a.spiderType)===s)||null}async function oA(t,e,r,n,s={},i={}){let a=i?.headers&&typeof i.headers=="object"?i.headers:void 0,o=String(i?.apiBase||"").trim()||`/spider/${encodeURIComponent(e)}/${r}`,c=await t.inject({method:"POST",url:`${o.replace(/\/+$/,"")}/${n}`,payload:s,headers:a});if(c.statusCode>=400)throw new Error(`Spider call failed: ${e}/${r}/${n} ${c.statusCode}`);let u=t.embyContext?.config?.requestLog;try{let l=c.json();if(u&&(n==="detail"||n==="play")){if(n==="detail"){let d=Array.isArray(l?.list)&&l.list.length>0?l.list[0]:null,f=String(d?.vod_play_from||""),p=String(d?.vod_play_url||""),m=f?f.split("$$$").filter(Boolean).length:0,h=p?p.split("$$$").map(A=>String(A||"").split("#").filter(Boolean).length):[];console.log("[Emby Spider] detail:",JSON.stringify({spiderKey:e,spiderType:r,request:{id:String(s?.id||"")},response:{listCount:Array.isArray(l?.list)?l.list.length:0,vodId:String(d?.vod_id||""),vodName:String(d?.vod_name||""),vodRemarks:String(d?.vod_remarks||""),lineCount:m,episodeCountPerLine:h.slice(0,10)}}))}else if(n==="play"){let d=l?.header&&typeof l.header=="object"?Object.keys(l.header):[];console.log("[Emby Spider] play:",JSON.stringify({spiderKey:e,spiderType:r,request:{flag:String(s?.flag||""),idPreview:String(s?.id||"").slice(0,80)},response:{parse:Number(l?.parse||0),hasUrl:!!l?.url,urlPreview:String(l?.url||"").slice(0,120),headerKeys:d}}))}}return l}catch{return{}}}async function zw(t,e,r=null){let n=t.embyContext?.cache,s=IM(r),i=im(["emby","home",e.spiderKey,e.spiderType,e.apiBase||"",s.cacheVary]);return Jf(n,i,iA.HOME,()=>oA(t,e.spiderKey,e.spiderType,"home",{},{headers:s.headers,apiBase:e.apiBase}))}async function RE(t,e,r,n=1,s={},i=null){let a=t.embyContext?.cache,o=IM(i),c=im(["emby","category",e.spiderKey,e.spiderType,e.apiBase||"",r,n,JSON.stringify(s||{}),o.cacheVary]);return Jf(a,c,iA.CATEGORY,()=>oA(t,e.spiderKey,e.spiderType,"category",{id:r,page:n,filter:!0,filters:s||{}},{headers:o.headers,apiBase:e.apiBase}))}async function Pc(t,e,r,n=null){let s=t.embyContext?.cache,i=IM(n),a=im(["emby","detail",e.spiderKey,e.spiderType,e.apiBase||"",r,i.cacheVary]);return Jf(s,a,iA.DETAIL,()=>oA(t,e.spiderKey,e.spiderType,"detail",{id:r},{headers:i.headers,apiBase:e.apiBase}))}async function mlt(t,e,r,n=1){let s=t.embyContext?.cache,i=im(["emby","search",e.spiderKey,e.spiderType,e.apiBase||"",r,n]);return Jf(s,i,iA.SEARCH,()=>oA(t,e.spiderKey,e.spiderType,"search",{wd:r,page:n},{apiBase:e.apiBase}))}async function am(t,e,r,n,s=null){let i=t.embyContext?.cache,a=IM(s),o=im(["emby","play",e.spiderKey,e.spiderType,e.apiBase||"",r,n,a.cacheVary]);return Jf(i,o,iA.PLAY,()=>oA(t,e.spiderKey,e.spiderType,"play",{flag:r,id:n},{headers:a.headers,apiBase:e.apiBase}))}function kc(t){return!t||!Array.isArray(t.list)||!t.list.length?null:t.list[0]}function Xl(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}var zce=Re(require("node:fs"),1),Yw=Re(require("node:path"),1),ZCr=()=>{try{return`const appConfig = {\r
_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""}},hlt=t=>{let e=String(t||"").trim();return e.toLowerCase().endsWith(".js")?e.slice(0,-3):e},glt=(t,e={})=>{let r=Object.entries(e).filter(([,n])=>n!=null&&n!=="").map(([n,s])=>`${encodeURIComponent(n)}=${encodeURIComponent(String(s))}`).join("&");return r?`${t}${t.includes("?")?"&":"?"}${r}`:t},Alt=(t,e,r={})=>glt(`${t}/api/${encodeURIComponent(e)}`,{filter:!0,...r}),ylt=(t,e,r={})=>glt(`${t}/uz.js`,{...r,key:e}),eTr=()=>{let t=[Yw.default.resolve(process.cwd(),"src/assets/uz.js"),Yw.default.resolve(process.cwd(),"nodejs/src/assets/uz.js"),Yw.default.resolve(process.cwd(),"dist/assets/uz.js"),Yw.default.resolve(process.cwd(),"nodejs/dist/assets/uz.js")],e=t.find(r=>zce.default.existsSync(r));if(!e)throw new Error(`uz.js asset not found: ${t.join(", ")}`);return e},xlt=()=>ZCr()||zce.default.readFileSync(eTr(),"utf8"),blt=t=>({vod:t.map(e=>({key:e.module,name:e.name,api:e.scriptUrl,webSite:e.t4ApiUrl,version:1,type:101}))});var tTr=new Set(["0","false","no","off"]),CM=()=>({username:process.env.CATPAW_DIST_AUTH_USER||"CatPawPlay",password:process.env.CATPAW_DIST_AUTH_PASS||"CatPawPlay"}),TM=()=>{let t=String(process.env.CATPAW_DIST_AUTH||"").trim().toLowerCase();return!tTr.has(t)},Jw=(t,e={})=>{let r=e.includePrefix!==!1,s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),a=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim()||(t.socket?.encrypted?"https":"http"),o=r?String(t.server?.prefix||"").replace(/\/$/,""):"";if(s)return`${a}://${s}${o}`;let c=t.server?.address?.();return c?.url?`${String(c.url).replace(/\/$/,"")}${o}`:c?.port?`http://127.0.0.1:${c.port}${o}`:o||""},Xw=(t,e,r=null)=>{if(!t)return e;let n=new URL(e,t);return(r?.username||r?.password)&&(n.username=r.username||"",n.password=r.password||""),n.toString()};var OE="/spider",rTr=new Set([".cjs",".mjs",".js"]),Dlt=/^[a-z0-9_-]{2,32}$/,Blt=new Set(["http:","https:"]),r2="nodejs_",Llt="__catpawProfile",nTr=new Set([Llt,"server","embyPlayback"]),sTr=[{url:"/index.js",fileName:"index.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.js.md5",fileName:"index.js.md5",md5Source:"index.js",contentType:"text/plain; charset=utf-8"},{url:"/index.config.js",fileName:"index.config.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.config.js.md5",fileName:"index.config.js.md5",md5Source:"index.config.js",contentType:"text/plain; charset=utf-8"}],Zw={key:"",expireAt:0,spiders:[]},om={key:"",promise:null},Elt=new Map,iTr=t=>({...t.query&&typeof t.query=="object"?t.query:{},...t.body&&typeof t.body=="object"?t.body:{}}),Yce=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},aTr=(t,e={})=>{if(t==null||t==="")return e;if(typeof t=="object")return t;try{let r=Buffer.from(String(t),"base64").toString("utf8");return JSON.parse(r)}catch{try{return JSON.parse(String(t))}catch{return e}}},oTr=t=>{let e={},n=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),i=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim();return n&&(e.host=n,e["x-forwarded-host"]=n),i&&(e["x-forwarded-proto"]=i),Object.keys(e).length>0?e:void 0},cTr=t=>{let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2]),apiBase:e}:null},uTr=t=>{let e=String(t||"").trim();return e.toLowerCase().startsWith(r2)?e.slice(r2.length):e},Mlt=(t,e,r)=>{!r||Number(r.spiderType)!==3||e.map(n=>String(n||"").trim()).filter(Boolean).forEach(n=>{t.set(n.toLowerCase(),r)})},lTr=t=>{let e=new Map;return t.forEach(r=>{let n=String(r?.meta?.key||"").trim(),s=Number(r?.meta?.type||0);if(!n||s!==3||r?.meta?.hidden)return;let i={spiderKey:n,spiderType:s,apiBase:`${OE}/${encodeURIComponent(n)}/${s}`};Mlt(e,[n,`${r2}${n}`],i)}),e},_lt=(t,e)=>{let r=String(e||"").trim();if(!r)return null;let n=r.toLowerCase(),s=n.startsWith(r2)?n.slice(r2.length):n;return t.get(n)||t.get(s)||null},dTr=t=>{let[e,r]=String(t||"").split(/\s+/,2);if(e?.toLowerCase()!=="basic"||!r)return null;let n="";try{n=Buffer.from(r,"base64").toString("utf8")}catch{return null}let s=n.indexOf(":");return s<0?null:{username:n.slice(0,s),password:n.slice(s+1)}},fTr=(t,e)=>{let r=dTr(t.headers?.authorization),n=CM();return r?.username===n.username&&r?.password===n.password?!0:(e.code(401).header("WWW-Authenticate",'Basic realm="CatPaw dist"').send("Authentication required"),!1)},pTr=t=>Ws.default.resolve(process.cwd(),"dist",t),Wlt=t=>Object.prototype.toString.call(t)==="[object Object]",tue=(t,e={})=>{try{return JSON.parse(JSON.stringify(t??e))}catch{return e}},mTr=t=>JSON.stringify(t,null,2).replace(/^(\s*)"([A-Za-z_$][\w$]*)":/gm,"$1$2:"),hTr=async t=>{try{let e=await t.getData("/");return Wlt(e)?e:{}}catch{return{}}},gTr=t=>{let e={};return Object.entries(Wlt(t)?t:{}).forEach(([r,n])=>{nTr.has(r)||(e[r]=tue(n,n))}),e},ATr=async({db:t,config:e})=>{let r=await hTr(t),n=gTr(r),s={...tue(e,{}),...tue(n,{})};return delete s.server,Object.keys(n).length>0&&(s[Llt]=n),["var index_config = {"," server: {}, //\u8FD9\u91CC\u4E0D\u8981\u52A8\uFF0C\u52A0\u7A7A\u683C\u90FD\u4E0D\u884C\uFF0C\u540E\u53F0\u81EA\u52A8\u751F\u6210",mTr(s).replace(/^\{\n?/,"").replace(/\n?\}$/,""),"};",'if (typeof module !== "undefined" && module.exports) module.exports = index_config;',""].join(`
`)},yTr=async(t,e,r)=>(t.md5Source||t.fileName)!=="index.config.js"?e:Buffer.from(await ATr(r),"utf8"),xTr=async(t,e,r,n)=>{if(fTr(e,r))try{let s=t.md5Source||t.fileName,i=await NE.default.readFile(pTr(s)),a=await yTr(t,i,n),o=t.md5Source?(0,OM.createHash)("md5").update(a).digest("hex"):a;r.header("Content-Type",t.contentType).send(o)}catch(s){if(s?.code==="ENOENT"){r.code(404).send({error:`dist artifact not found: ${t.fileName}`,hint:"\u8BF7\u5148\u5728 nodejs \u76EE\u5F55\u8FD0\u884C npm run build \u6216 npm run build:dbg"});return}throw s}},Jce=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},Xce=(t,e=0)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?r:e},bTr=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return Blt.has(r.protocol)?(r.hash="",r.href):""}catch{return""}},Slt=t=>{let r=(Array.isArray(t)?t:typeof t=="string"?t.split(/[\r\n,;]/):[]).map(n=>bTr(n)).filter(Boolean);return[...new Set(r)]},Zce=(t,e,r)=>{if(!Number.isFinite(e)||e<=0)return t;let n;return Promise.race([t,new Promise((s,i)=>{n=setTimeout(()=>i(new Error(r)),e)})]).finally(()=>clearTimeout(n))},ETr=async t=>{try{let e=await NE.default.stat(t);return`${e.mtimeMs}-${e.size}`}catch{return"0"}},$lt=(t={})=>{let e=t.customSpiders||{},r=process.env.NODE_PATH||"/data",n=typeof e.dir=="string"?e.dir.trim():"",s=Slt(process.env.CATPAW_CUSTOM_SPIDER_URLS),i=Slt(e.urls),a=s.length>0?s:i,o=process.env.CATPAW_CUSTOM_SPIDER_DIR||n||Ws.default.join(r,"custom-spiders");return{enabled:Jce(process.env.CATPAW_CUSTOM_SPIDER_ENABLED,e.enabled??!0),strict:Jce(process.env.CATPAW_CUSTOM_SPIDER_STRICT,e.strict??!1),allowOverride:Jce(process.env.CATPAW_CUSTOM_SPIDER_ALLOW_OVERRIDE,e.allowOverride??!1),cacheTtlMs:Math.max(0,Xce(process.env.CATPAW_CUSTOM_SPIDER_CACHE_TTL_MS,e.cacheTtlMs??5e3)),factoryTimeoutMs:Math.max(0,Xce(process.env.CATPAW_CUSTOM_SPIDER_FACTORY_TIMEOUT_MS,e.factoryTimeoutMs??1e4)),urlTimeoutMs:Math.max(1e3,Xce(process.env.CATPAW_CUSTOM_SPIDER_URL_TIMEOUT_MS,e.urlTimeoutMs??1e4)),dir:Ws.default.resolve(o),urls:a}},vlt=(t,e)=>{let n=`[custom-spider:${Ws.default.basename(e)}]`,s=Object.freeze({info:(...i)=>console.log(n,...i),warn:(...i)=>console.warn(n,...i),error:(...i)=>console.error(n,...i),debug:(...i)=>console.debug(n,...i)});return Object.freeze({http:Object.freeze({axios:Ae,req:he,create:(i={})=>Ae.create(i)}),cheerio:Object.freeze({load:Me}),utils:Object.freeze({extractTitle:sA,findEpisodeNumber:Vw,firstSuccessfulUrl:Xn}),logger:s,app:Object.freeze({spiderPrefix:OE,nodePath:process.env.NODE_PATH||"."})})},_Tr=async t=>{try{return(await NE.default.readdir(t,{withFileTypes:!0})).filter(r=>r.isFile()).map(r=>Ws.default.join(t,r.name)).filter(r=>rTr.has(Ws.default.extname(r).toLowerCase())).sort((r,n)=>r.localeCompare(n))}catch(e){if(e?.code==="ENOENT")return[];throw e}},RM=t=>{if(typeof t=="string")return t;if(Buffer.isBuffer(t))return t.toString("utf8");if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}},NM=new Map,sue=t=>String(t||"").trim(),STr=t=>{let e=RM(t);if(!e)return"";let r=e.split(/\r?\n/,80);for(let n of r){let s=String(n||"").trim();if(!s)continue;let i=s.match(/^(?:\/\/+|\/\*+|\*+)?\s*@name(?:\s*[::])?\s+(.+?)\s*$/i);if(!i?.[1])continue;let a=i[1].replace(/\*\/\s*$/,"").trim();if(a)return a}return""},Flt=(t,e)=>{let r=sue(t);if(!r)return"";let n=STr(e);return n?(NM.set(r,n),n):(NM.delete(r),"")},Ult=t=>{let e=sue(t);return e?String(NM.get(e)||"").trim():""},Ilt={axios:Ae,cheerio:_v,"crypto-js":Plt.default,dayjs:klt.default,qs:nue.default},vTr=(t,e)=>{let r=n=>n==="omnibox_sdk"?{request:async(s,i={})=>{let a=String(i.method||"GET").toUpperCase(),o=i.headers||{},c=i.body;c&&typeof c=="object"&&!Buffer.isBuffer(c)&&String(o["Content-Type"]||o["content-type"]||"").toLowerCase().includes("application/json")&&(c=JSON.stringify(c));let u=await Ae.request({url:s,method:a,headers:o,data:c,timeout:i.timeout,validateStatus:()=>!0});return{statusCode:u.status,body:RM(u.data)}},log:(s,...i)=>{let a=i.map(o=>typeof o=="string"?o:RM(o)).join(" ");return s==="error"?console.error(a):s==="warn"||s==="warning"?console.warn(a):console.log(a)},getSourceId:async()=>"builtin",processScraping:async(s,i,a,o=[])=>{let c=String(s||"");return Elt.set(c,{scrapeData:null,scrapeType:"",videoMappings:[]}),{ok:!1,unsupported:!0,count:Array.isArray(o)?o.length:0}},getScrapeMetadata:async s=>{let i=String(s||"");return Elt.get(i)||null}}:n==="spider_runner"?{run:()=>{}}:Ilt[n]?Ilt[n]:t(n);return r.resolve=t.resolve?.bind(t),r.main={filename:e},r},qlt=(t,e)=>{let r=String(t?.message||""),n=r.includes("require is not defined")||r.includes("module is not defined")||r.includes("exports is not defined"),s=/(?:^|\W)module\.exports(?:\W|$)|(?:^|\W)exports\.[A-Za-z_$][\w$]*|(?:^|\W)require\s*\(/m.test(e);return n||s},jlt=(t,e,r="")=>{let n={exports:{}},s=r||(0,rue.pathToFileURL)(Ws.default.resolve(process.cwd(),".custom-spider-runtime.cjs")).href,i=(0,Olt.createRequire)(s),a=vTr(i,e);return new Function("require","module","exports","__filename","__dirname",t)(a,n,n.exports,e,Ws.default.dirname(e)),{default:n.exports}},ITr=async(t,e)=>{let r=await Ae.get(t,{responseType:"text",timeout:e,transformResponse:[a=>a],validateStatus:()=>!0});if(r.status>=400)throw new Error(`[custom-spider] \u8FDC\u7A0B\u63D2\u4EF6\u62C9\u53D6\u5931\u8D25(${r.status}): ${t}`);let n=RM(r.data);Flt(t,n);let s=(0,OM.createHash)("sha1").update(n).digest("hex").slice(0,12),i=`data:text/javascript;charset=utf-8,${encodeURIComponent(n)}`;try{return await import(`${i}#${s}`)}catch(a){if(!qlt(a,n))throw a;let o;try{let c=new URL(t),u=Ws.default.basename(c.pathname)||`remote-${s}.js`;o=Ws.default.resolve(process.cwd(),".remote-custom-spiders",u)}catch{o=Ws.default.resolve(process.cwd(),".remote-custom-spiders",`remote-${s}.js`)}return jlt(n,o)}},CTr=async t=>{let e=sue(t),r="",n=!1;try{r=await NE.default.readFile(t,"utf8"),n=!0,Flt(e,r)}catch{NM.delete(e)}let s=(0,rue.pathToFileURL)(t);s.searchParams.set("v",await ETr(t));try{return await import(s.href)}catch(i){if(Ws.default.extname(t).toLowerCase()!==".js")throw i;let o=n?r:await NE.default.readFile(t,"utf8");if(!qlt(i,o))throw i;return jlt(o,t,s.href)}},Clt=t=>!!t&&typeof t=="object"&&typeof t.api=="function",Tlt=t=>!t||typeof t!="object"||typeof t.api=="function"?!1:["home","category","detail","search","play"].some(r=>typeof t[r]=="function"),TTr=t=>{let e=String(t||"");if(!e.includes("%"))return e;try{return decodeURIComponent(e)}catch{return e}},PM=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);if(Blt.has(r.protocol)){let n=Ws.default.parse(Ws.default.basename(r.pathname||"")).name;return TTr(n)}}catch{}return Ws.default.parse(e).name},wTr=t=>{let e=PM(t),r=String(e).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");return Dlt.test(r)?r:`omni_${(0,OM.createHash)("sha1").update(t).digest("hex").slice(0,10)}`},RTr=t=>{if(!t||typeof t!="object"||t.vod_play_from&&t.vod_play_url)return t;let e=Array.isArray(t.vod_play_sources)?t.vod_play_sources:[];if(e.length===0)return t;let r=[],n=[];return e.forEach((s,i)=>{let a=String(s?.name||`\u7EBF\u8DEF${i+1}`).trim()||`\u7EBF\u8DEF${i+1}`,c=(Array.isArray(s?.episodes)?s.episodes:[]).map((u,l)=>{let d=String(u?.name||`\u64AD\u653E${l+1}`).trim()||`\u64AD\u653E${l+1}`,f=String(u?.playId||u?.url||u?.id||"").trim();return f?`${d}$${f}`:""}).filter(Boolean);c.length>0&&(r.push(a),n.push(c.join("#")))}),r.length===0||n.length===0?t:{...t,vod_play_from:r.join("$$$"),vod_play_url:n.join("$$$")}},wM=t=>t&&typeof t=="object"?t:{list:[]},wlt=t=>{let e=wM(t),r=Array.isArray(e.list)?e.list:[];return{...e,list:r.map(n=>RTr(n))}},NTr=(t,e="")=>{if(t&&typeof t=="object"){let r=String(t.url||"").trim();if(r)return{...t,parse:t.parse??0,url:r,header:t.header||{}};let n=Array.isArray(t.urls)?t.urls:[];if(n.length>0){let s=n[0]||{},i=String(s.url||s.playId||s.id||"").trim();if(i)return{parse:t.parse??0,url:i,header:t.header||{}}}if(t.parse!==void 0)return{parse:t.parse??0,url:"",header:t.header||{}}}return typeof t=="string"&&t.trim()?{parse:0,url:t.trim()}:{parse:1,url:String(e||"")}},OTr=(t,e)=>{let r=t.meta||t.META||{},n=Number(r.type),s=Number.isInteger(n)&&n>=0&&n<50?n:3,i=String(r.key||"").trim()||wTr(e),a=Ult(e),o=String(r.name||"").trim()||a||PM(e)||i,c=async(u,l)=>{if(typeof u!="function")return{};let d=await u(l||{});return d===void 0?{}:d};return{meta:{key:i,name:o,type:s},api:async u=>{u.post("/init",async()=>({})),u.post("/home",async l=>{let d=await c(t.home,{filter:l.body?.filter??!1});return wM(d)}),u.post("/category",async l=>{let d=l.body||{},f=await c(t.category,{categoryId:d.id,id:d.id,page:d.page??1,filters:d.filters||{},filter:d.filter??!1});return wM(f)}),u.post("/detail",async l=>{let d=l.body?.id;if(Array.isArray(d)){let p=[];for(let m of d){let h=await c(t.detail,{videoId:m,id:m}),A=wlt(h);Array.isArray(A.list)&&p.push(...A.list)}return{list:p}}let f=await c(t.detail,{videoId:d,id:d});return wlt(f)}),u.post("/search",async l=>{let d=l.body?.wd??"",f=await c(t.search,{keyword:d,wd:d,page:l.body?.page??1,quick:l.body?.quick??!1});return wM(f)}),u.post("/play",async l=>{let d=l.body?.id??"",f=await c(t.play,{playId:d,id:d,flag:l.body?.flag??""});return NTr(f,d)})}}},PTr=(t,e)=>{let r=typeof t?.createSpider=="function"&&t.createSpider||typeof t?.default?.createSpider=="function"&&t.default.createSpider;if(r)return{mode:"factory",value:r};let n=Clt(t?.default)&&t.default||Clt(t)&&t;if(n)return{mode:"spider",value:n};let s=Tlt(t?.default)&&t.default||Tlt(t)&&t;if(s)return{mode:"omnibox-object",value:s};let i=typeof t?.default=="function"&&t.default||typeof t=="function"&&t;if(i)return{mode:"callable",value:i};throw new Error(`${e} \u7F3A\u5C11 createSpider(ctx) / spider \u5BF9\u8C61 / omnibox \u5BF9\u8C61 / legacy register \u5BFC\u51FA`)},kTr=t=>{let e=String(t?.message||"");return e?e.includes("spider \u5FC5\u987B\u662F\u5BF9\u8C61")||e.includes("spider.api \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("spider.check \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("is not a function")||e.includes("Cannot read properties of undefined")||e.includes("Cannot set properties of undefined"):!1},DTr=(t,e)=>{let r=String(t?.meta?.key||"").trim(),n=String(t?.meta?.api||"").trim(),s=PM(e),i=[];r&&i.push(r);let a=n.match(/\/([a-zA-Z0-9_-]+)$/);a?.[1]&&i.push(a[1]),s&&i.push(s);for(let o of i){let c=String(o).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");if(Dlt.test(c))return{key:c,from:o}}return null},BTr=t=>{if(!t||typeof t!="object"||Object.keys(t).length===0)return"";try{return Buffer.from(JSON.stringify(t),"utf8").toString("base64")}catch{return""}},e2=async(t,e,r)=>{let n,a=await t({query:r,server:e},{send(o){return n=o,o}});return a===void 0?n:a},LTr=async(t,e)=>{let r=[],n={get(l,d){r.push({method:"get",routePath:l,handler:d})},post(l,d){r.push({method:"post",routePath:l,handler:d})},put(l,d){r.push({method:"put",routePath:l,handler:d})},delete(l,d){r.push({method:"delete",routePath:l,handler:d})}},s={sites:[]};await Promise.resolve(t(n,s));let i=Array.isArray(s.sites)?s.sites:[];if(i.length===0)throw new Error(`${e} legacy register \u672A\u901A\u8FC7 opt.sites \u66B4\u9732 meta`);i.length>1&&console.warn(`[custom-spider] legacy register \u4EC5\u517C\u5BB9\u9996\u4E2A site: ${Ws.default.basename(e)}`);let a=i[0]||{},o=String(a.api||"").trim(),c=o?r.find(l=>l.routePath===o):null;if(o&&!c){let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register meta.api(${o}) \u672A\u5339\u914D\u5DF2\u6CE8\u518C\u8DEF\u7531: ${l||"(none)"}`)}let u=c;if(!u)if(r.length===1)u=r[0];else{let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register \u8DEF\u7531\u4E0D\u660E\u786E\uFF0C\u8BF7\u63D0\u4F9B\u53EF\u5339\u914D\u7684 meta.api\uFF0C\u5F53\u524D\u8DEF\u7531: ${l||"(none)"}`)}if(!u||typeof u.handler!="function")throw new Error(`${e} legacy register \u672A\u6CE8\u518C\u6709\u6548\u8DEF\u7531`);return{meta:{key:a.key,name:a.name,type:a.type},api:async l=>{l.post("/init",async()=>({})),l.post("/home",async d=>e2(u.handler,d.server,{filter:d.body?.filter??!1})),l.post("/category",async d=>{let f=d.body||{},p={ac:"detail",t:f.id,pg:f.page??1,filter:f.filter??!1},m=BTr(f.filters);return m&&(p.ext=m),e2(u.handler,d.server,p)}),l.post("/detail",async d=>{let f=d.body?.id,p=Array.isArray(f)?f.join(","):f;return e2(u.handler,d.server,{ac:"detail",ids:p})}),l.post("/search",async d=>e2(u.handler,d.server,{wd:d.body?.wd??"",pg:d.body?.page??1,quick:d.body?.quick??!1})),l.post("/play",async d=>e2(u.handler,d.server,{play:d.body?.id??"",flag:d.body?.flag??"",parser:d.body?.parser??""}))}}},t2=(t,e)=>{if(!t||typeof t!="object")throw new Error(`${e} spider \u5FC5\u987B\u662F\u5BF9\u8C61`);if(typeof t.api!="function")throw new Error(`${e} spider.api \u5FC5\u987B\u662F\u51FD\u6570`);if(t.check&&typeof t.check!="function")throw new Error(`${e} spider.check \u5FC5\u987B\u662F\u51FD\u6570`);let r=DTr(t,e);if(!r)throw new Error(`${e} meta.key \u4E0D\u5408\u6CD5`);let n=r.key,s=Ult(e),i=String(t.meta?.name||"").trim()||s||PM(e)||n,a=Number(t.meta?.type);if(!i)throw new Error(`${e} meta.name \u4E0D\u80FD\u4E3A\u7A7A`);if(!Number.isInteger(a)||a<0||a>=50)throw new Error(`${e} meta.type \u5FC5\u987B\u662F 0-49 \u7684\u6574\u6570`);let o=String(t.meta?.key||"").trim();return o&&o!==n&&console.log(`[custom-spider] key \u517C\u5BB9\u4FEE\u6B63: ${o} -> ${n}`),{...t,meta:{...t.meta,key:n,name:i,type:a,custom:!0}}},MTr=(t,e=!1)=>{let r=[],n=new Map;return t.forEach(s=>{let i=`${s.meta.key}:${s.meta.type}`;if(!n.has(i)){n.set(i,r.length),r.push(s);return}if(e&&s.meta?.custom){console.warn(`[custom-spider] override: ${i}`),r[n.get(i)]=s;return}console.warn(`[custom-spider] duplicate ignored: ${i}`)}),r},WTr=async t=>{let e=$lt(t.config);if(!e.enabled)return[];let r=`${e.dir}|${e.urls.join(",")}|${e.urlTimeoutMs}|${e.strict}|${e.cacheTtlMs}|${e.factoryTimeoutMs}`,n=Date.now();if(e.cacheTtlMs>0&&Zw.key===r&&Zw.expireAt>n)return Zw.spiders;if(om.promise&&om.key===r)return om.promise;om.key=r,om.promise=(async()=>{let s=await _Tr(e.dir),i=e.urls;if(s.length===0&&i.length===0)return Zw={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:[]},[];s.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${s.length} \u4E2A\u672C\u5730\u63D2\u4EF6: ${s.map(l=>Ws.default.basename(l)).join(", ")}`),i.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${i.length} \u4E2A\u8FDC\u7A0B\u63D2\u4EF6: ${i.join(", ")}`);let a=[...s.map(l=>({id:l,display:Ws.default.basename(l),load:()=>CTr(l)})),...i.map(l=>({id:l,display:l,load:()=>ITr(l,e.urlTimeoutMs)}))],o=await Promise.allSettled(a.map(async l=>{let d=await l.load(),f=PTr(d,l.id);if(f.mode==="spider")return console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy spider export)`),t2(f.value,l.id);if(f.mode==="omnibox-object"){console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (omnibox object export)`);let h=OTr(f.value,l.id);return t2(h,l.id)}if(f.mode==="callable"){let h=vlt(t,l.id);try{let A=await Zce(Promise.resolve(f.value(h)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return t2(A,l.id)}catch(A){if(!kTr(A))throw A;console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy register export)`);let g=await Zce(LTr(f.value,l.id),e.factoryTimeoutMs,`[custom-spider] legacy register \u9002\u914D\u8D85\u65F6: ${l.id}`);return t2(g,l.id)}}let p=vlt(t,l.id),m=await Zce(Promise.resolve(f.value(p)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return t2(m,l.id)})),c=[],u=[];if(o.forEach((l,d)=>{l.status==="fulfilled"?c.push(l.value):(u.push(a[d].display),console.error(`[custom-spider] \u52A0\u8F7D\u5931\u8D25: ${a[d].display}`,l.reason))}),e.strict&&u.length>0)throw new Error(`[custom-spider] strict \u6A21\u5F0F: ${u.length} \u4E2A\u63D2\u4EF6\u52A0\u8F7D\u5931\u8D25`);return c.length>0&&console.log(`[custom-spider] \u6210\u529F\u52A0\u8F7D ${c.length} \u4E2A\u63D2\u4EF6`),Zw={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:c},c})();try{return await om.promise}finally{om.key===r&&(om={key:"",promise:null})}},Rlt=async t=>{let e=[gut,Tot,yot],r=[Aot,Bit,Oat,Lit,Mit,Wit,Pat,x5e,$it,Fit,bat,Eat,Xct,Nat,Vat,Xat,Cot,gat,jit,Qit,zit,Jit,xat,eat,rat,tlt,Dut,oct,Act,$ot,Dot,Bot,$ct,zct,Kot,uct,Sct,Pct,Jot,pot];(await Lce(t)).forEach(o=>{r.push(Wce(o.name,o.address))}),(await jce(t)).forEach(o=>{r.push(Gce(o.name,o.address))});let i=await WTr(t);r.push(...i),r.push(...e);let{allowOverride:a}=$lt(t.config);return MTr(r,a)},Nlt=(t,e,r)=>{r<10?t.video.sites.push(e):r>=10&&r<20?t.read.sites.push(e):r>=20&&r<30?t.comic.sites.push(e):r>=30&&r<40?t.music.sites.push(e):r>=40&&r<50&&t.pan.sites.push(e)},$Tr=async(t,e)=>{(await jw(e).catch(()=>[])).filter(n=>n?.id&&n?.host&&n?.username).forEach(n=>{t.video.sites.push({key:`nodejs_emby_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Emby"}`,type:3,api:`${OE}/emby/3/server/${encodeURIComponent(n.id)}`})})},FTr=async(t,e)=>{(await Hw(e).catch(()=>[])).filter(n=>n?.id&&n?.server).forEach(n=>{t.video.sites.push({key:`nodejs_alist_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Alist"}`,type:3,api:`${OE}/alist-video/3/server/${encodeURIComponent(n.id)}`})})},eue={};async function iue(t,{db:e,config:r}){t.hasContentTypeParser("application/x-www-form-urlencoded")||t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(p,m,h)=>{h(null,nue.default.parse(String(m||"")))});let n=await Rlt({db:e,config:r}),s=lTr(n),i=new Map(s),a=async()=>null;n.forEach(p=>{let m=OE+"/"+p.meta.key+"/"+p.meta.type;t.register(p.api,{prefix:m});try{let h=p.check?.(t);h&&typeof h.then=="function"&&h.catch(A=>console.error(`[spider-check] ${p.meta.key} failed:`,A))}catch(h){console.error(`[spider-check] ${p.meta.key} failed:`,h)}console.log("Register spider: "+m)});let o=(p,m,h,A={})=>oA(t,m.spiderKey,m.spiderType,h,A,{apiBase:m.apiBase,headers:oTr(p)}),c=async(p,m)=>{let h=hlt(m),A=_lt(i,h);return A||(await a(p),A=_lt(i,h)),{module:h,spider:A}},u=p=>{let m=p.query?.token;return m==null||m===""?{}:{token:m}},l=async(p,m)=>{m.type("application/javascript; charset=utf-8").send(xlt())},d=async(p,m)=>{let{module:h,spider:A}=await c(p,p.params?.module);if(!A){m.code(404).send({error:"module not found"});return}return l(p,m)},f=async(p,m)=>{let{spider:h}=await c(p,p.params?.module);if(!h){m.code(404).send({error:"module not found"});return}let A=iTr(p);try{if(A.refresh!==void 0){m.send(await o(p,h,"init",{ext:A.extend||A.ext||"",extend:A.extend}));return}if(A.play!==void 0){m.send(await o(p,h,"play",{id:A.play,flag:A.flag,extend:A.extend}));return}if(A.ac==="action"&&A.action!==void 0){m.send(await o(p,h,"action",{action:A.action,value:A.value,extend:A.extend}));return}if(A.ac==="detail"&&A.ids!==void 0){m.send(await o(p,h,"detail",{id:A.ids,extend:A.extend}));return}if(A.t!==void 0){m.send(await o(p,h,"category",{id:A.t,page:A.pg||A.page||1,filter:Yce(A.filter,!0),filters:aTr(A.ext||A.f,{}),extend:A.extend}));return}if(A.wd!==void 0){m.send(await o(p,h,"search",{wd:A.wd,page:A.pg||A.page||1,quick:Yce(A.quick,!1),extend:A.extend}));return}m.send(await o(p,h,"home",{filter:Yce(A.filter,!0),extend:A.extend}))}catch(g){p.log?.error?.(g);let b=g?.message||"internal error",y=Number(b.match(/\s(\d{3})$/)?.[1]||500);m.code(y>=400&&y<600?y:500).send({error:b})}};t.get("/uz.js",l),t.get("/api/uz/:module",d),t.route({method:["GET","POST"],url:"/api/:module",handler:f}),t.route({method:["GET","POST"],url:"/api/:version/:kind/:module",handler:f}),TM()&&sTr.forEach(p=>{t.get(p.url,async(m,h)=>xTr(p,m,h,{db:e,config:r}))}),t.register(async p=>{p.get("/check",async function(x,v){v.send({run:!p.stop})});let m=async()=>{let x={video:{sites:[]},read:{sites:[]},comic:{sites:[]},music:{sites:[]},pan:{sites:[]},color:p.config.color||[]},v=await Rlt({db:e,config:r}),I=!1,R=!1,w=[];for(let N of v){let P=Object.assign({},N.meta);if(P.hidden){P.key==="emby"?I=!0:P.key==="alist-video"&&(R=!0);continue}P.api=OE+"/"+P.key+"/"+P.type,P.key="nodejs_"+P.key;let B=N.meta.type;if(P.cms){w.push({meta:P,stype:B});continue}Nlt(x,P,B)}return I&&await $Tr(x,{db:e,config:r}),R&&await FTr(x,{db:e,config:r}),w.forEach(({meta:N,stype:P})=>Nlt(x,N,P)),x},h=async(x,v)=>{let I=await Kw(x.server),R=v.video.sites,w={},N={};R.forEach(B=>{N[B.key]=B});let P=[];return I.forEach(B=>{w[B.key]=!0;let M=N[B.key];if(M&&B.enable){let D=typeof B.name=="string"?B.name.trim():"";P.push({...M,name:D||M.name})}}),R.forEach(B=>{w[B.key]||P.push(B)}),v.video.sites=P,v},A=async x=>{let v=await m();return await h(x,v),v},g=x=>{let v=cTr(x.api);if(!v||Number(v.spiderType)!==3)return null;let I=uTr(x.key);return Mlt(i,[x.key,I],v),{module:I,ref:v}};a=async x=>{(await A(x)).video.sites.forEach(g)};let b=async x=>{let v=await A(x),I=Jw(x).replace(/\/$/,""),R=v.video.sites.map(w=>{let N=g(w);if(!N)return null;let P=N.module,B={key:`t4_${P}`,name:w.name,type:4,api:`${I}/api/${encodeURIComponent(P)}`,searchable:w.searchable??1,quickSearch:w.quickSearch??0,filterable:w.filterable??1};return w.ext!==void 0&&w.ext!==null&&w.ext!==""&&(B.ext=w.ext),B}).filter(Boolean);return{sites_count:R.length,sites:R,color:v.color||[]}},y=async(x,v)=>{let I=await A(x),R=Jw(x).replace(/\/$/,""),w=u(x),N=I.video.sites.map(P=>{let B=g(P);if(!B)return null;let M=B.module;return{module:M,name:P.name,scriptUrl:ylt(R,M,w),t4ApiUrl:Alt(R,M,w)}}).filter(Boolean);v.send(blt(N))};p.get("/config",async function(x,v){let I=await A(x);I.video.danmuSearchUrl=`http://127.0.0.1:${x.server.address().port}/website/danmu/fe`,v.send(I)}),p.get("/t4",b),p.get("/uz",y),p.get("/full-config",m)}),t.get("/danmu-proxy",async(p,m)=>{try{let A=String(p.query?.format||"").toLowerCase()==="json",g=(J=200)=>{if(A){m.code(J).send({success:!1,comments:[],count:0,match:null});return}m.code(J).header("Content-Type","application/xml"),m.send('<?xml version="1.0" encoding="UTF-8"?><i/>')},b=await _M(p.server);if(!b?.autoPush){g();return}let{name:y,episodeNumber:x,originalName:v}=p.query,I=String(v||"").trim(),R=String(y||"").trim()||sA(I)||I,w=b.debug||!1;w&&(console.log("=== \u5F39\u5E55\u5339\u914D\u8C03\u8BD5\u4FE1\u606F ==="),console.log("\u4F20\u5165\u53C2\u6570:"),console.log(" - \u89C6\u9891\u540D\u79F0:",R||"(\u672A\u63D0\u4F9B)"),console.log(" - \u539F\u59CB\u540D\u79F0:",I||"(\u672A\u63D0\u4F9B)"),console.log(" - \u96C6\u6570:",x),console.log("\u914D\u7F6E\u7684\u5F39\u5E55\u6E90\u6570\u91CF:",b.urls.length));let N=1,B=(I||R).match(/第([一二三四五六七八九十\d]+)季/);if(B){let J=B[1];N={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u5341:10}[J]||parseInt(J)||1,w&&console.log("\u68C0\u6D4B\u5230\u5B63\u6570\u4FE1\u606F:",`\u7B2C${N}\u5B63`)}let M=`S${N}`,D=!x||x==="0",L=R;!D&&x&&(L=`${R} ${M}E${x}`),w&&console.log("\u6784\u9020\u7684\u6587\u4EF6\u540D:",L);let Z=async(J,se,oe)=>{w&&(console.log(`
\u6B63\u5728\u8BF7\u6C42\u5F39\u5E55\u6E90: ${J.name||J.address}`),console.log(`\u8BF7\u6C42URL: ${J.address}/api/v2/match`),console.log(`\u8BF7\u6C42\u9636\u6BB5: ${oe}`),console.log(`\u8BF7\u6C42\u6570\u636E: { fileName: "${se}" }`));let ue=await Ae.post(`${J.address}/api/v2/match`,{fileName:se},{headers:{"Content-Type":"application/json"},timeout:1e4});if(w&&(console.log(`
${J.name||J.address} \u8FD4\u56DE\u7ED3\u679C:`),console.log(" - \u5339\u914D\u6210\u529F:",ue.data?.success),console.log(" - \u662F\u5426\u5339\u914D:",ue.data?.isMatched),console.log(" - \u5339\u914D\u6761\u6570:",ue.data?.matches?.length||0)),ue.data?.success&&ue.data?.isMatched&&ue.data?.matches?.length>0){let Ie=ue.data.matches[0];return w&&(console.log(" - \u5339\u914D\u7ED3\u679C:"),console.log(" * \u96C6\u6570ID:",Ie.episodeId),console.log(" * \u96C6\u6570\u6807\u9898:",Ie.episodeTitle),console.log(" * \u52A8\u753B\u6807\u9898:",Ie.animeTitle)),{url:J,match:Ie,score:100}}return null},W=b.urls.map(async J=>{try{let se=await Z(J,L,"episode-aware");return!se&&!D&&x&&(w&&console.log(` - \u5206\u96C6\u5339\u914D\u5931\u8D25\uFF0C\u964D\u7EA7\u4EC5\u6807\u9898\u91CD\u8BD5: ${R}`),se=await Z(J,R,"title-only-fallback")),!se&&w&&console.log(" - \u672A\u627E\u5230\u7CBE\u786E\u5339\u914D"),se}catch(se){return w&&(console.log(`
${J.name||J.address} \u8BF7\u6C42\u5931\u8D25:`),console.log(" - \u9519\u8BEF\u4FE1\u606F:",se.message),se.response&&(console.log(" - \u54CD\u5E94\u72B6\u6001\u7801:",se.response.status),console.log(" - \u54CD\u5E94\u6570\u636E:",JSON.stringify(se.response.data)))),null}}),K=(await Promise.all(W)).filter(J=>J!==null);w&&console.log(`
\u5339\u914D\u7ED3\u679C\u6C47\u603B: \u5171 ${K.length} \u4E2A\u6709\u6548\u7ED3\u679C`);let j=null;if(K.length>0){let J=K[0];w&&(console.log("\u9009\u62E9\u7684\u5F39\u5E55\u6E90:",J.url.name||J.url.address),console.log("\u9009\u62E9\u7684\u96C6\u6570:",J.match.episodeTitle)),j={url:`${J.url.address}/api/v2/comment/${J.match.episodeId}?withRelated=true&chConvert=1`,sourceName:J.url.name||"\u5F39\u5E55\u6E90",episodeTitle:J.match.episodeTitle,match:{animeTitle:J.match.animeTitle||"",episodeTitle:J.match.episodeTitle||"",episodeId:J.match.episodeId||"",sourceName:J.url.name||"\u5F39\u5E55\u6E90"}},messageToDart({action:"toast",opt:{message:`\u5339\u914D\u5230 ${j.episodeTitle} - \u5F39\u5E55\u89E3\u6790\u4E2D......`,duration:3}})}else w&&console.log(`
\u6240\u6709\u5F39\u5E55\u6E90\u5747\u672A\u5339\u914D\u6210\u529F`);if(j){w&&(console.log(`
=== \u8BF7\u6C42\u5F39\u5E55\u6570\u636E ===`),console.log("\u5F39\u5E55URL:",j.url));let J=await Ae.get(j.url,{timeout:1e4});w&&(console.log("\u5F39\u5E55\u54CD\u5E94\u72B6\u6001:",J.status),console.log("\u5F39\u5E55\u6570\u636E:",J.data?.comments?.length||0,"\u6761"));let se=Array.isArray(J.data?.comments)?J.data.comments.filter(Ie=>Ie?.p&&String(Ie?.m||"").trim()!==""):[],oe=se.length;if(messageToDart({action:"toast",opt:{message:`\u901A\u8FC7 ${j.sourceName} - \u89E3\u6790\u5230 ${oe} \u6761\u5F39\u5E55`,duration:3}}),A){m.send({success:oe>0,comments:se,count:oe,match:j.match});return}let ue=`<?xml version="1.0" encoding="UTF-8"?>
<i>
`;for(let Ie of se){let we=String(Ie.m).trim();if(we){let qe=we.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;");ue+=` <d p="${Ie.p}">${qe}</d>
`}}ue+="</i>",w&&(console.log("\u8F6C\u6362\u540E\u7684\u5F39\u5E55\u6570\u91CF:",oe),console.log("XML\u6570\u636E\u5927\u5C0F:",ue.length,"\u5B57\u8282"),console.log("XML\u6570\u636E\u9884\u89C8:",ue.substring(0,500)),console.log(`=== \u5F39\u5E55\u5339\u914D\u5B8C\u6210 ===
`)),m.header("Content-Type","application/xml"),m.send(ue)}else messageToDart({action:"toast",opt:{message:"\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~",duration:3}}),g()}catch(h){console.error(`
=== \u5F39\u5E55\u5339\u914D\u53D1\u751F\u9519\u8BEF ===`),console.error("\u9519\u8BEF\u7C7B\u578B:",h.name),console.error("\u9519\u8BEF\u4FE1\u606F:",h.message),console.error("\u9519\u8BEF\u5806\u6808:",h.stack),console.error(`=========================
`),messageToDart({action:"toast",opt:{message:"\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~",duration:2}}),String(p.query?.format||"").toLowerCase()==="json"?m.code(500).send({success:!1,error:"Failed to fetch danmu content",comments:[],count:0,match:null}):m.code(500).send({error:"Failed to fetch danmu content"})}}),t.addHook("onSend",(p,m,h,A)=>{if(m.sent||m.raw?.headersSent||!p.url.endsWith("/detail")&&!p.url.endsWith("/play"))return A(null,h);let g=typeof h=="string"?h:Buffer.isBuffer(h)?h.toString():null;if(!g)return A(null,h);_M(p.server).then(b=>{if(!b?.autoPush)return A(null,h);try{if(p.url.endsWith("/detail")){let y=JSON.parse(g),x=Array.isArray(y?.list)?y.list[0]:null;if(!x||typeof x!="object")return A(null,h);let v=String(x.vod_play_from||""),I=String(x.vod_play_url||"");if(!v||!I)return A(null,h);let R=String(x.vod_name||"").trim(),N=String(sA(R)||"").trim()||R;eue={};let P=v.split("$$$").filter(Boolean);return I.split("$$$").filter(Boolean).forEach((B,M)=>{B.split("#").forEach(D=>{let[L,Z]=D.split("$");if(!Z)return;let W=P[M]||`\u7EBF\u8DEF${M+1}`;eue[`${W}_${Z}`]={name:N,originalName:R,episodeNumber:Vw(L)}})}),A(null,h)}if(p.url.endsWith("/play")){let y=JSON.parse(g);if((y.url||y.url?.length||y.urls?.length)&&!y?.extra?.danmaku){let x=p.body||{},v=`${x.flag||""}_${x.id||""}`,I=eue[v];if(I){y.extra||(y.extra={});let R=new URL(`http://127.0.0.1:${p.server.address().port}/danmu-proxy`);return R.searchParams.set("name",I.name),R.searchParams.set("episodeNumber",I.episodeNumber),I.originalName&&R.searchParams.set("originalName",I.originalName),y.extra.danmaku=R.toString(),A(null,JSON.stringify(y))}}}}catch(y){console.error(y)}return A(null,h)}).catch(b=>(console.error(b),A(null,h)))})}var c6=Re(adt(),1);var cdt=Re(S0(),1),s2=Re(Jn(),1);var $M="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",BE={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},odt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},rwr=async t=>{let e=s2.default.enc.Hex.stringify(s2.default.MD5(t.config.quark.cookie)).toString();return(await t.db.getObjectDefault("/quark",{}))[e]??""},nwr=async(t,e)=>{let r=s2.default.enc.Hex.stringify(s2.default.MD5(t.config.quark.cookie)).toString();await t.db.push(`/quark/${r}`,e)};async function Sue(t){t.get("/qrcode",async(r,n)=>{try{let s=await Ae.get("https://uop.quark.cn/cas/ajax/getTokenForQrcodeLogin?client_id=532&v=1.2",{headers:{"User-Agent":$M}}),i=s.data.data.members.token,a=hl(s.headers["set-cookie"]),o=odt.encode({token:i,cookies:a}),c="https://su.quark.cn/4_eMHBJ?token="+i+"&client_id=532&ssb=weblogin&uc_param_str=&uc_biz_str=S%3Acustom%7COPT%3ASAREA%400%7COPT%3AIMMERSIVE%401%7COPT%3ABACK_BTN_STYLE%400",u=await cdt.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("\u5938\u514B\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=odt.decode(s);if(!i)return n.send({code:0,data:{status:BE.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await Ae.get(`https://uop.quark.cn/cas/ajax/getServiceTicketByQrcodeToken?client_id=532&v=1.2&token=${a}`,{headers:{"User-Agent":$M}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:BE.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:BE.EXPIRED}}):c.data.status===50004001?n.send({code:0,data:{status:BE.NEW}}):n.send({code:0,data:{status:BE.NEW}})}catch(c){console.error("\u5938\u514B\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:BE.NEW}})}});async function e(r,n){let s=[...n],i=await Ae.get(`https://pan.quark.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":$M,Cookie:s.join("")}});i.headers["set-cookie"]&&(s=s.concat(hl(i.headers["set-cookie"])));let a=await Ae.get("https://drive-pc.quark.cn/1/clouddrive/share/sharepage/dir?pr=ucpro&fr=pc&uc_param_str=&aver=1",{headers:{"User-Agent":$M,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(hl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await rwr(r.server)})}),t.put("/cookie",async(r,n)=>{await nwr(r.server,r.body.cookie),n.send({code:0})})}var i2=Re(Jn(),1);var uA={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},udt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},swr=async t=>{let e=i2.default.enc.Hex.stringify(i2.default.MD5(t.config.uc.token)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},iwr=async(t,e)=>{let r=i2.default.enc.Hex.stringify(i2.default.MD5(t.config.uc.token)).toString();await t.db.push(`/uc/${r}`,e)};async function vue(t){t.get("/qrcode",async(e,r)=>{try{let n="/oauth/authorize",s=Math.floor(Date.now()/1e3).toString()+"000",i=Ec.DeviceID,a=Vv(i,s),o=U3("GET",n,s,Is.signKey),c={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":s,"x-pan-token":o,"x-pan-client-id":Is.clientID,...Ec.AccessToken?{Authorization:`Bearer ${Ec.AccessToken}`}:{}},u=await Ae.get(`${Is.api}${n}`,{params:{req_id:a,access_token:Ec.AccessToken,app_ver:Is.appVer,device_id:i,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Is.channel,auth_type:"code",client_id:Is.clientID,scope:"netdisk",qrcode:"1",qr_width:"460",qr_height:"460"},headers:c}),l=udt.encode({query_token:u.data.query_token,req_id:a});r.header("X-Session-Key",l),r.send(Buffer.from(u.data.qr_data,"base64"))}catch(n){console.error("UC-TV\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=udt.decode(n);if(!s)return r.send({code:0,data:{status:uA.EXPIRED}});let{query_token:i}=s;try{let a="/oauth/code",o=Math.floor(Date.now()/1e3).toString()+"000",c=Ec.DeviceID,u=Vv(c,o),l=U3("GET",a,o,Is.signKey),d={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":o,"x-pan-token":l,"x-pan-client-id":Is.clientID,...Ec.AccessToken?{Authorization:`Bearer ${Ec.AccessToken}`}:{}},f=await Ae.get(`${Is.api}${a}`,{params:{req_id:u,access_token:Ec.AccessToken,app_ver:Is.appVer,device_id:c,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Is.channel,client_id:Is.clientID,scope:"netdisk",query_token:i},headers:d,validateStatus:p=>p<500});if(f.data.status===0){let p="/token",m=Math.floor(Date.now()/1e3).toString()+"000",h=Vv(Ec.DeviceID,m),A=JSON.stringify({req_id:h,app_ver:Is.appVer,device_id:Ec.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Is.channel,code:f.data.code}),g=await Ae.post(`${Is.codeApi}${p}`,A,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"}});g.data.code===200?r.send({code:0,data:{status:uA.CONFIRMED,cookie:g.data.data.access_token}}):r.send({code:0,data:{status:uA.NEW}})}else f.data.errno===11003?r.send({code:0,data:{status:uA.NEW}}):f.data.status===-1||f.data.errno===11001?r.send({code:0,data:{status:uA.EXPIRED}}):r.send({code:0,data:{status:uA.NEW}})}catch(a){console.error("UC-TV\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",a),r.send({code:0,data:{status:uA.NEW}})}}),t.post("/token",async(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/token",async(e,r)=>{r.send({code:0,data:await swr(e.server)})}),t.put("/token",async(e,r)=>{await iwr(e.server,e.body.cookie),r.send({code:0})})}var ldt=async(t,e)=>(await t.db.getObjectDefault("/tyi",{}))?.[e]||"",ddt=async(t,e,r)=>{await t.db.push(`/tyi/${e}`,r)};async function Iue(t){t.get("/account",async(e,r)=>{let n=await ldt(e.server,"cloud_account"),s=await ldt(e.server,"cloud_password");r.send({code:0,data:{username:n,password:s}})}),t.put("/account",async(e,r)=>{await ddt(e.server,"cloud_account",e.body.username),await ddt(e.server,"cloud_password",e.body.password),r.send({code:0})})}var awr=["https://www.leijing1.com"],owr=async t=>(await t.db.getObjectDefault("/leijing",{}))?.urls||t.config.leijing?.urls||awr,cwr=async(t,e)=>{await t.db.push("/leijing/urls",e)},uwr=async t=>{await t.db.delete("/leijing/urls")};async function Cue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await owr(e.server)})}),t.put("/urls",async(e,r)=>{await cwr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await uwr(e.server),r.send({code:0})})}var fdt=async(t,e)=>(await t.db.getObjectDefault("/pan123",{}))?.[e]||"",pdt=async(t,e,r)=>{await t.db.push(`/pan123/${e}`,r)};async function Tue(t){t.get("/account",async(e,r)=>{let n=await fdt(e.server,"pan_passport"),s=await fdt(e.server,"pan_password");r.send({code:0,data:{username:n,password:s}})}),t.put("/account",async(e,r)=>{await pdt(e.server,"pan_passport",e.body.username),await pdt(e.server,"pan_password",e.body.password),r.send({code:0})})}var lA=async(t,e)=>(await t.db.getObjectDefault("/xun",{}))?.[e]||"",Zl=async(t,e,r)=>{await t.db.push(`/xun/${e}`,r)},wue=(t="")=>String(t||"").trim();async function Rue(t){t.get("/account",async(e,r)=>{let n=await lA(e.server,"xun_username"),s=await lA(e.server,"xun_password"),i=!!await lA(e.server,"xun_auth");r.send({code:0,data:{username:n,password:s,hasAuth:i}})}),t.put("/account",async(e,r)=>{await Zl(e.server,"xun_username",e.body.username||""),await Zl(e.server,"xun_password",e.body.password||""),await Zl(e.server,"xun_auth",""),await Zl(e.server,"xun_refresh_token",""),await Zl(e.server,"xun_user_id",""),r.send({code:0})}),t.get("/auth-status",async(e,r)=>{let n=!!await lA(e.server,"xun_auth");r.send({code:0,data:{hasAuth:n}})}),t.post("/login",async(e,r)=>{try{let n=wue(e.body?.username),s=wue(e.body?.password);if(!n){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u8D26\u53F7"});return}if(!s){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u5BC6\u7801"});return}await Zl(e.server,"xun_username",n),await Zl(e.server,"xun_password",s),await Zl(e.server,"xun_auth",""),await Zl(e.server,"xun_refresh_token",""),await Zl(e.server,"xun_user_id",""),await ib(e),await Vh.getDownload_auth();let i=!!await lA(e.server,"xun_auth");r.send({code:i?0:1,message:i?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u8D26\u53F7\u5BC6\u7801",data:{hasAuth:i}})}catch(n){console.warn("[xunlei] password login failed",{hasUsername:!!wue(e.body?.username),message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u8FC5\u96F7\u8D26\u53F7\u5BC6\u7801\u767B\u5F55\u5931\u8D25"})}}),t.post("/send-code",async(e,r)=>{if(await ib(e),!await lA(e.server,"xun_username")){r.send({code:1,message:"\u8BF7\u5148\u4FDD\u5B58\u8FC5\u96F7\u8D26\u53F7"});return}await Vh.getVerifyCode(),r.send({code:0,data:{sent:!0}})}),t.post("/verify-code",async(e,r)=>{await ib(e);let n=String(e.body?.code||"").trim();if(!n){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}await Vh.getVerify(n);let s=!!await lA(e.server,"xun_auth");r.send({code:s?0:1,message:s?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u9A8C\u8BC1\u7801",data:{hasAuth:s}})})}var gdt=Re(S0(),1),Nue=Re(Jn(),1),Adt=Re(rI(),1),ydt="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",va={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},mdt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},hdt=null;function xdt(t){return Nue.default.enc.Hex.stringify(Nue.default.MD5(t.config.ali.token)).toString()}var lwr=async t=>{let e=await t.db.getObjectDefault("/ali",{});return String(e.token||e[xdt(t)]||"").trim()},dwr=async(t,e)=>{let r=String(e||"").trim();await t.db.push("/ali/token",r),await t.db.push(`/ali/${xdt(t)}`,r)};function fwr(t){return{t:t.t,appName:"aliyun_drive",ck:t.ck,appEntrance:"web",isMobile:"false",lang:"zh_CN",returnUrl:"",navlanguage:"zh-CN",navPlatform:"MacIntel",fromSite:"52",bizParams:""}}function pwr(t){let e=String(t||"").toUpperCase();return e===va.CONFIRMED?va.CONFIRMED:e===va.SCANNED||e==="SCANED"?va.SCANNED:e===va.CANCELED||e==="CANCELLED"?va.CANCELED:e===va.NEW?va.NEW:va.EXPIRED}async function mwr(){return(await Ae.get("https://passport.aliyundrive.com/newlogin/qrcode/generate.do?appName=aliyun_drive&fromSite=52&appName=aliyun_drive&appEntrance=web&isMobile=false&lang=zh_CN&returnUrl=&bizParams=&_bx-v=2.2.3",{headers:{"User-Agent":ydt}})).data?.content?.data}async function hwr(t){return(await Ae.post("https://passport.aliyundrive.com/newlogin/qrcode/query.do?appName=aliyun_drive&fromSite=52&_bx-v=2.2.3",Adt.default.stringify(fwr(t)),{headers:{"content-type":"application/x-www-form-urlencoded","User-Agent":ydt,referer:"https://www.aliyundrive.com/"}})).data?.content?.data||null}function gwr(t){let e=t?.bizExt;if(!e)return"";let r=Buffer.from(e,"base64").toString("utf8");try{return JSON.parse(r)?.pds_login_result?.refreshToken||""}catch{return JSON.parse(decodeURI(r))?.pds_login_result?.refreshToken||""}}async function Awr(t){let e=await hwr(t);if(!e)return{status:va.EXPIRED};let r=pwr(e.qrCodeStatus);if(r!==va.CONFIRMED)return{status:r};let n=gwr(e);return n?{status:va.CONFIRMED,cookie:n}:{status:va.EXPIRED}}async function Oue(t){t.get("/qrcode",async(e,r)=>{try{let n=await mwr();if(!n?.ck||!n?.t||!n?.codeContent)throw new Error("\u4E8C\u7EF4\u7801\u5185\u5BB9\u7F3A\u5931");hdt={ck:n.ck,t:n.t};let s=mdt.encode(hdt),i=await gdt.default.toBuffer(n.codeContent,{width:300,height:300});r.header("X-Session-Key",s),r.send(i)}catch(n){console.error("\u963F\u91CC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=mdt.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:va.EXPIRED}});try{let s=await Awr(n);r.send({code:0,data:s})}catch(s){console.error("\u963F\u91CC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:va.EXPIRED}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await lwr(e.server)})}),t.put("/token",async(e,r)=>{let n=e.body?.cookie??e.body?.data?.token??"";await dwr(e.server,n),r.send({code:0})})}var T0n=Re(S0(),1),R0n=Re(Jn(),1);var LE="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",dA={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},bdt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},ywr=async t=>(await t.db.getObjectDefault("/baidu",{}))["baidu_cookie"]??"",Pue=async(t,e)=>{await t.db.push("/baidu/baidu_cookie",e)};function xwr(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){let e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})}async function kue(t){t.get("/qrcode",async(r,n)=>{try{let s=xwr(),i=new Date().getTime().toString(),a=Math.floor(new Date().getTime()/1e3).toString(),o=`tangram_guid_${i}`,u=(await he.get("https://passport.baidu.com/v2/api/getqrcode",{params:{lp:"pc",qrloginfrom:"pc",gid:s,callback:o,apiver:"v3",tt:a,tpl:"netdisk",_:i},headers:{"User-Agent":LE,Referer:"https://pan.baidu.com","sec-ch-ua-platform":'"Windows"',DNT:"1"}})).data;if(typeof u=="string"){u=u.replace(/^[^(]*\(/,"").replace(/\);?$/,"");let l=JSON.parse(u);if(l.errno===0){let d=bdt.encode({sign:l.sign,channel_id:l.channel_id}),f="https://"+l.imgurl,p=await he.get(f,{responseType:"arraybuffer",headers:{"User-Agent":LE}});n.header("X-Session-Key",d),n.send(p.data)}else throw new Error(`\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25: ${l.errmsg||"\u672A\u77E5\u9519\u8BEF"}`)}else throw new Error("\u54CD\u5E94\u683C\u5F0F\u9519\u8BEF")}catch(s){console.error("\u767E\u5EA6\u4E8C\u7EF4\u7801\u83B7\u53D6\u5931\u8D25:",s),n.status(500).send({code:-1,message:s?.message||"\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=bdt.decode(s);if(!i)return n.send({code:0,data:{status:dA.EXPIRED}});let{sign:a}=i;try{let o=new Date().getTime().toString(),c=`tangram_guid_${o}`,l=(await he.get("https://passport.baidu.com/channel/unicast",{params:{channel_id:a,tpl:"netdisk",apiver:"v3",tt:Math.floor(new Date().getTime()/1e3).toString(),callback:c,_:o},headers:{"User-Agent":LE,Referer:"https://pan.baidu.com"}})).data;if(typeof l=="string"){l=l.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let d=JSON.parse(l);if(d.errno===0&&d.channel_v){let f=JSON.parse(d.channel_v);if(f.status===1)return n.send({code:0,data:{status:dA.SCANNED}});if(f.status===0&&f.v){let p=await e(f.v,r.server);return n.send({code:0,data:{status:dA.CONFIRMED,cookie:p}})}}else{if(d.errno===1)return n.send({code:0,data:{status:dA.NEW}});if(d.errno===2)return n.send({code:0,data:{status:dA.EXPIRED}})}}n.send({code:0,data:{status:dA.NEW}})}catch(o){console.error("\u767E\u5EA6\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",o),n.send({code:0,data:{status:dA.NEW}})}});async function e(r,n){let s=new Date().getTime().toString(),i=Math.floor(new Date().getTime()/1e3).toString(),o=(await he.get("https://passport.baidu.com/v3/login/main/qrbdusslogin",{params:{v:s,bduss:r,u:"https://pan.baidu.com/disk/main#/index?category=all",loginVersion:"v5",qrcode:"1",tpl:"netdisk",maskId:"",fileId:"",apiver:"v3",tt:s,traceid:"",time:i,alg:"v3",elapsed:"1"},headers:{"User-Agent":LE,Referer:"https://pan.baidu.com/","Accept-Language":"zh-CN,zh;q=0.9"},timeout:3e4})).data;if(typeof o=="string"){o=o.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let c=o.match(/"bduss":\s*"([^"]+)"/),u=o.match(/"stoken":\s*"([^"]+)"/),l=o.match(/"ptoken":\s*"([^"]+)"/),d=o.match(/"ubi":\s*"([^"]+)"/);if(c&&u&&l&&d){let f=c[1],p=u[1],m=l[1],h=encodeURIComponent(d[1]),g=Object.entries({newlogin:"1",UBI:h,STOKEN:p,BDUSS:f,PTOKEN:m,BDUSS_BFESS:f,STOKEN_BFESS:p,PTOKEN_BFESS:m,UBI_BFESS:h}).map(([x,v])=>`${x}=${v}`).join("; "),y=(await he.get("https://passport.baidu.com/v3/login/api/auth/?return_type=5&tpl=netdisk&u=https://pan.baidu.com/disk/home",{headers:{"User-Agent":LE,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:x=>x===302||x===200})).headers.location;if(y){let v=(await he.get(y,{headers:{"User-Agent":LE,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:w=>w===302||w===200})).headers["set-cookie"],I="";if(v){let w=v.find(N=>N.toLowerCase().includes("stoken"));w&&(I=w.split(";")[0])}let R=I?`BDUSS=${f};${I};`:`BDUSS=${f};STOKEN=${p};`;return await Pue(n,R),R}else{let x=`BDUSS=${f};STOKEN=${p};`;return await Pue(n,x),x}}}throw new Error("Cookie\u89E3\u6790\u5931\u8D25")}t.post("/cookie",async(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await ywr(r.server)})}),t.put("/cookie",async(r,n)=>{await Pue(r.server,r.body.cookie),n.send({code:0})})}var vdt=require("crypto");var Idt=Re(S0(),1),Cdt="https://account.guangyapan.com",Due="aMe-8VSlkrbQXpUR",Edt="0123456789abcdef0123456789abcdef",Xf={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},bwr="urn:ietf:params:oauth:grant-type:device_code",_dt={encode(t,e=12e4){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},FM=async(t,e)=>(await t.db.getObjectDefault("/guangyapan",{}))?.[e]||"",a2=async(t,e,r)=>{await t.db.push(`/guangyapan/${e}`,r)};function Tdt(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{message:t}}return t}function Xi(t){return String(t||"").trim()}function Ewr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}async function _wr(t){let e=Ewr(await FM(t,"device_id"));if(e)return e;let r=Edt;try{r=(0,vdt.randomBytes)(16).toString("hex")}catch{r=Edt}return await a2(t,"device_id",r),r}function wdt(t){return{Accept:"application/json, text/plain, */*","Content-Type":"application/json","X-Client-Id":Due,"X-Client-Version":"0.0.1","X-Device-Id":t,"X-Device-Model":"chrome%2F147.0.0.0","X-Device-Name":"PC-Chrome","X-Device-Sign":`wdi10.${t}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,"X-Net-Work-Type":"NONE","X-OS-Version":"Win32","X-Platform-Version":"1","X-Protocol-Version":"301","X-Provider-Name":"NONE","X-SDK-Version":"9.0.2"}}function Swr(t){let e=Xi(t?.access_token||t?.accessToken),r=Xi(t?.refresh_token||t?.refreshToken);return{accessToken:e,refreshToken:r}}function vwr(t,e){let{accessToken:r,refreshToken:n}=Swr(e);if(t>=200&&t<300&&(n||r))return{status:Xf.CONFIRMED,accessToken:r,refreshToken:n};let s=Xi(e?.error).toLowerCase();return s==="authorization_pending"||s==="slow_down"?{status:Xf.NEW}:s==="access_denied"?{status:Xf.CANCELED}:s.includes("expired")||s==="invalid_grant"?{status:Xf.EXPIRED}:{status:Xf.NEW}}function Iwr(t){let e=Xi(t?.refreshToken);return e||Xi(t?.accessToken)}async function Cwr(t){let e=await Ae.post(`${Cdt}/v1/auth/device/code`,{scope:"user",client_id:Due},{headers:wdt(t),validateStatus:()=>!0}),r=Tdt(e.data),n=Xi(r?.device_code),s=Xi(r?.verification_uri_complete||r?.verification_url),i=Number(r?.expires_in||120);if(e.status<200||e.status>=300||!n||!s)throw new Error(r?.error_description||r?.message||`status=${e.status}`);return{deviceCode:n,verifyUrl:s,expiresIn:i}}async function Twr(t){let e=await Ae.post(`${Cdt}/v1/auth/token`,{grant_type:bwr,device_code:t.deviceCode,client_id:Due},{headers:wdt(t.deviceId),validateStatus:()=>!0});return vwr(e.status,Tdt(e.data))}async function Sdt(t,e){let r=Xi(e?.accessToken),n=Xi(e?.refreshToken);n&&await a2(t,"refresh_token",n),r&&await a2(t,"access_token",r)}function wwr(t){let e=Xi(t?.cookie),r=Xi(t?.accessToken||t?.data?.accessToken),n=Xi(t?.refreshToken||t?.data?.refreshToken),s=!1;if(!r&&!n&&e)try{let i=JSON.parse(e);s=!0,r=Xi(i?.accessToken||i?.access_token),n=Xi(i?.refreshToken||i?.refresh_token)}catch{n=e}return!s&&!n&&e&&(n=e),{accessToken:r,refreshToken:n}}async function Bue(t){t.get("/qrcode",async(e,r)=>{try{let n=await _wr(e.server),s=await Cwr(n),i=_dt.encode({deviceCode:s.deviceCode,deviceId:n},Math.max(1e3,s.expiresIn*1e3)),a=await Idt.default.toBuffer(s.verifyUrl,{width:300,height:300});r.header("X-Session-Key",i),r.type("image/png").send(a)}catch(n){console.error("\u5149\u9E2D\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=_dt.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:Xf.EXPIRED}});try{let s=await Twr(n);if(s.status===Xf.CONFIRMED)return await Sdt(e.server,s),r.send({code:0,data:{status:Xf.CONFIRMED,cookie:Iwr(s)}});r.send({code:0,data:s})}catch(s){console.error("\u5149\u9E2D\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:Xf.NEW}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await FM(e.server,"refresh_token")})}),t.put("/token",async(e,r)=>{await Sdt(e.server,wwr(e.body||{})),r.send({code:0})}),t.get("/account",async(e,r)=>{r.send({code:0,data:{accessToken:await FM(e.server,"access_token"),refreshToken:await FM(e.server,"refresh_token")}})}),t.put("/account",async(e,r)=>{await a2(e.server,"access_token",Xi(e.body?.accessToken)),await a2(e.server,"refresh_token",Xi(e.body?.refreshToken)),r.send({code:0})})}var UM=Re(require("crypto"),1),ho=Re(Jn(),1),Pdt="https://user-njs.yun.139.com/user",Wue="7.17.4",Rwr="mCloud_4.3.0_536",Lue=670,Nwr=292,kdt=ho.default.enc.Utf8.parse("h7DLzCTAjn+altjy2a9E9FSt7AC6pmx1"),Rdt=`||9|${Wue}|chrome||0||windows 10||zh-CN|||`,$ue=(t="")=>String(t||"").replace(/^Basic\s+/i,"").trim(),Ia=(t="")=>String(t||"").trim(),Mue=(t="")=>UM.default.createHash("md5").update(String(t)).digest("hex"),Owr=(t="")=>UM.default.createHash("sha1").update(String(t)).digest("hex"),Pwr=t=>{try{return JSON.stringify(t)}catch{return String(t)}},kwr=t=>{try{return JSON.parse(t)}catch{return null}},Ndt=(t="",e=160)=>String(t).replace(/\s+/g," ").slice(0,e),Dwr=(t,e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>typeof t=="string"?t||e:t&&typeof t=="object"?t.message||t.msg||t.desc||t.resultDesc||Pwr(t):t==null?e:String(t),ME=(t="")=>{let e=Ia(t);return e.length<7?e?"***":"":`${e.slice(0,3)}****${e.slice(-4)}`},Fue=(t={},e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>{let r=String(t.code??t.status??t.resultCode??t.resultcode??""),n=Dwr(t.message??t.msg??t.desc??t.resultDesc??t.errorMessage,r?`${e}\uFF1A${r}`:e),s=new Error(r?`${n}\uFF08${r}\uFF09`:n);return s.yidongCode=r,s.yidongData=t.data,s.yidongResult=t,s.statusCode=t.statusCode,s},Bwr=t=>{let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r="";for(let n=0;n<t;n+=1)r+=e[Math.floor(Math.random()*e.length)];return r},Lwr=(t={})=>encodeURIComponent(JSON.stringify({...t})).split("").sort().join(""),Mwr=(t={})=>{let e=String(Date.now()),r=Bwr(16),n=Mue(Buffer.from(Lwr(t)).toString("base64")),s=Mue(`${e}:${r}`);return`${e},${r},${Mue(n+s).toUpperCase()}`},Wwr=(t={},e={})=>({caller:"web","Content-Type":"application/json;charset=UTF-8","CMS-DEVICE":"default","X-Deviceinfo":`||9|${Wue}|chrome||0||windows 10||zh-CN|||`,"x-yun-channel-source":"10000034","x-huawei-channelSrc":"10000034","x-yun-svc-type":"1","x-SvcType":"1","x-m4c-caller":"PC","x-m4c-src":"10002","x-inner-ntwk":"2","mcloud-route":"001","mcloud-version":Wue,"mcloud-channel":"1000101","mcloud-client":"10701","mcloud-sign":Mwr(t),"mcloud-skey":"","INNER-HCY-ROUTER-HTTPS":"1",...e}),Ddt=t=>{let e=t?.data||{},r=String(e.code??e.status??e.resultCode??e.resultcode??"");if(e.success===!1||r&&r!=="0"&&r!=="0000")throw Fue(e);return e},$wr=(t={})=>{let e=ho.default.lib.WordArray.random(16),r=ho.default.enc.Utf8.parse(typeof t=="string"?t:JSON.stringify(t)),n=ho.default.AES.encrypt(r,kdt,{iv:e,mode:ho.default.mode.CBC,padding:ho.default.pad.Pkcs7});return ho.default.enc.Base64.stringify(e.concat(n.ciphertext))},Fwr=(t="")=>{let e=ho.default.enc.Base64.parse(String(t)),r=e.clone(),n=r.words.splice(4);r.init(r.words),e.init(n);let s=ho.default.AES.decrypt(ho.default.enc.Base64.stringify(e),kdt,{iv:r,mode:ho.default.mode.CBC,padding:ho.default.pad.Pkcs7}).toString(ho.default.enc.Utf8);return JSON.parse(s)},Bdt=(t="")=>{if(typeof t!="string")return t;try{return Fwr(t)}catch(e){let r=kwr(t);return r&&typeof r=="object"?r:(console.warn("[yidong] cool response decrypt failed",{dataLength:String(t).length,dataPreview:Ndt(t),message:e?.message||String(e)}),{success:!1,code:"COOL_DECRYPT_FAILED",message:`\u79FB\u52A8\u4E91\u76D8\u52A0\u5BC6\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${Ndt(t)||e?.message||String(e)}`})}},Uwr=t=>{let e=Bdt(t?.data);return Ddt({data:e})},qwr=t=>{let e=UM.default.createDecipheriv("aes-128-ecb",Buffer.from("qPqDw263XgFgL3u8"),null);return e.setAutoPadding(!0),Buffer.concat([e.update(Buffer.from(t,"hex")),e.final()]).toString("utf8")},jwr=t=>{if(typeof t!="string")return t||{};try{return JSON.parse(qwr(t))}catch{try{return JSON.parse(t)}catch{throw new Error("\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u7ED3\u679C\u89E3\u6790\u5931\u8D25")}}},Hwr=(t,e)=>!t||!e?"":Buffer.from(`pc:${t}:${e}`,"utf8").toString("base64"),Odt=async(t,e,r={})=>{try{let n=await Ae.post(`${Pdt}${t}`,e,{timeout:3e4,headers:Wwr(e,r)});return Ddt(n)}catch(n){if(n?.response?.data){let s=n.response.data;throw Fue(s,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw n}},Qwr=async(t,e,r={})=>{let{clientInfo:n,...s}=r;try{let i=await Ae.post(`${Pdt}${t}`,$wr(e),{timeout:3e4,headers:{"Content-Type":"application/json;charset=UTF-8","hcy-cool-flag":"1","x-Nationcode":e.nationCode||"+86","x-deviceinfo":n||Rdt,"x-yun-client-info":n||Rdt,"x-yun-app-channel":"10000034",...s}});return Uwr(i)}catch(i){if(i?.response?.data){let a=Bdt(i.response.data);throw Fue(a,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw i}},o2=async(t,e)=>(await t.db.getObjectDefault("/yidong",{}))?.[e]||"",ed=async(t,e,r)=>{let n=e==="authorization"?$ue(r):Ia(r);await t.db.push(`/yidong/${e}`,n),e==="authorization"&&(globalThis.YidongAuthorization=n)},Ldt=async t=>{globalThis.YidongAuthorization=$ue(await o2(t,"authorization"))};async function Uue(t){t.get("/authorization",async(e,r)=>{let n=$ue(await o2(e.server,"authorization")),s=Ia(await o2(e.server,"phone"));globalThis.YidongAuthorization=n,r.send({code:0,data:{authorization:n,phone:s,hasAuth:!!n}})}),t.put("/authorization",async(e,r)=>{await ed(e.server,"authorization",e.body.authorization),r.send({code:0})}),t.post("/send-code",async(e,r)=>{let n=Ia(e.body?.phone),s=Math.random();try{if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}let i={phoneNumber:n,reqType:3,random:s,nationCode:"+86",clientType:Lue},a=await Odt("/sms/getSmsCode",i,{"x-NationCode":"+86"}),o=Ia(a?.data?.random||a?.random||s);await ed(e.server,"phone",n),await ed(e.server,"smsRandom",o),await ed(e.server,"smsLoginRandom",s),console.info("[yidong] sms code sent",{phone:ME(n),reqType:i.reqType,randomLength:o.length}),r.send({code:0,data:{sent:!0}})}catch(i){if(console.warn("[yidong] send code failed",{phone:ME(e.body?.phone),code:i?.yidongCode,message:i?.message||String(i)}),i?.yidongCode==="200059554"){let a=Number(i?.yidongData?.captchaType||i?.yidongResult?.data?.captchaType||2);await ed(e.server,"phone",n),await ed(e.server,"smsLoginRandom",s),console.info("[yidong] sms code requires captcha",{phone:ME(n),captchaType:a}),r.send({code:0,data:{captchaRequired:!0,captchaType:a}});return}r.send({code:1,message:i?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/send-code-captcha",async(e,r)=>{try{let n=Ia(e.body?.phone),s=Number(e.body?.captchaType||2),i=e.body?.puzzleVerfycode??e.body?.puzzleVerfyCode,a=Ia(e.body?.clientInfo);if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u8BF7\u5148\u5B8C\u6210\u6ED1\u5757\u9A8C\u8BC1"});return}let o=Ia(await o2(e.server,"smsLoginRandom")),c=Number(o),u=o&&Number.isFinite(c)?c:Math.random(),d=await Qwr("/sms/getSmsCode",{phoneNumber:n,reqType:3,random:u,nationCode:"+86",clientType:Lue,captchaType:s,puzzleVerfycode:i},a?{clientInfo:a}:{}),f=Ia(d?.data?.random||d?.random||u);await ed(e.server,"phone",n),await ed(e.server,"smsRandom",f),console.info("[yidong] sms code sent after captcha",{phone:ME(n),captchaType:s,randomLength:f.length}),r.send({code:0,data:{sent:!0}})}catch(n){console.warn("[yidong] send code after captcha failed",{phone:ME(e.body?.phone),code:n?.yidongCode,message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u6ED1\u5757\u9A8C\u8BC1\u540E\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/verify-code",async(e,r)=>{let n="";try{let s=Ia(e.body?.phone),i=Ia(e.body?.code);if(!/^1[3456789]\d{9}$/.test(s)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}n=Ia(await o2(e.server,"smsRandom"));let a={msisdn:s,random:"",dycpwd:i,cpid:Nwr,clienttype:Lue,version:Rwr,pintype:5,secinfo:Owr(`fetion.com.cn:${i}`).toUpperCase(),verType:2,loginMode:"0",extInfo:{ifOpenAccount:"1"}},o=await Odt("/thirdlogin",a,{"x-NationCode":"+86"}),c=jwr(o.data),u=Ia(c.account||s),l=Ia(c.token||c.authToken),d=Hwr(u,l);if(!d){r.send({code:1,message:"\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u6210\u529F\u4F46\u672A\u8FD4\u56DE\u6709\u6548 token"});return}await ed(e.server,"phone",s),await ed(e.server,"authorization",d),r.send({code:0,message:"\u767B\u5F55\u6210\u529F",data:{hasAuth:!0,authorization:d}})}catch(s){console.warn("[yidong] verify code failed",{phone:ME(e.body?.phone),codeLength:Ia(e.body?.code).length,smsRandomLength:n.length,message:s?.message||String(s)}),r.send({code:1,message:s?.message||"\u9A8C\u8BC1\u7801\u767B\u5F55\u5931\u8D25"})}})}var qM=[{key:"quark",name:"\u5938\u514B",enable:!0,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.a0d60e6a72806738e6f0b711a979bdf5?rik=lp5C9t5sYlkrLw&riu=http%3a%2f%2fpic.2265.com%2fupload%2f2020-10%2f202010151719492792.png&ehk=Pv6rq3JxJvKe2y1QsdzssyZ4Ez4cwiKWmIvK0aMgxi0%3d&risl=&pid=ImgRaw&r=0",chunkSize:512,poolSize:10,noSaveMode:!1},{key:"uc",name:"UC",enable:!0,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.421c96e47df7c9719403654ee4f7c281?rik=yiiEoGCTgDDc3w&riu=http%3a%2f%2fpic.9663.com%2fupload%2f2023-5%2f20235111411256277.png&ehk=R81N%2flXMrl%2bxpRlST8DtHXDfab6rzaMb83gihuD71Fk%3d&risl=&pid=ImgRaw&r=0",chunkSize:512,poolSize:10},{key:"ali",name:"\u963F\u91CC",enable:!0,pic:"https://inews.gtimg.com/newsapp_bt/0/13263837859/1000",chunkSize:128,poolSize:20},{key:"baidu",name:"\u767E\u5EA6",enable:!0,pic:"https://nd-static.bdstatic.com/m-static/v20-main/home/img/icon-home-new.b4083345.png"},{key:"xunlei",name:"\u8FC5\u96F7",enable:!0,pic:"https://img.geekie.site/i/2026/03/22/190713.png"},{key:"tianyi",name:"\u5929\u7FFC",enable:!0,pic:"https://is1-ssl.mzstatic.com/image/thumb/Purple211/v4/a8/fa/f0/a8faf032-0fa4-d9c5-ac70-920d9c84dff1/AppIcon-0-0-1x_U007emarketing-0-7-0-0-sRGB-85-220.png/350x350.png"},{key:"yidong",name:"\u79FB\u52A8",enable:!0,pic:"https://yun.139.com/w/static/img/LOGO.png"},{key:"123",name:"123",enable:!0,pic:"https://statics.123957.com/static/favicon.ico"},{key:"115",name:"115",enable:!0,pic:"https://img.pcsoft.com.cn/soft/202104/093230-608b5e2ed5912.jpg"},{key:"guangyapan",name:"\u5149\u9E2D",enable:!0,pic:"https://www.guangyapan.com/icon.png"}],que=async t=>{let r=(await t.db.getObjectDefault("/pans",{}))?.list||t.config.pans.list;return r.filter(n=>qM.some(s=>s.key===n.key)).concat(qM.filter(n=>!r.some(s=>s.key===n.key))).map(n=>({...qM.find(i=>i.key===n.key),...n}))},Gwr=async(t,e)=>{await t.db.push("/pans/list",e),globalThis.Pans=e},Kwr=async t=>{await t.db.delete("/pans/list"),globalThis.Pans=qM};async function jue(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await que(e.server)})}),t.put("/list",async(e,r)=>{await Gwr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await Kwr(e.server),r.send({code:0})})}var Mdt=Re(vv(),1);async function Hue(t){t.get("/",async(e,r)=>{r.header("Content-Disposition",`attachment; filename="config.${(0,Mdt.default)().format("YYYY-MM-DD")}.json"`);let n=await e.server.db.getData("/");r.send(JSON.stringify(n,null,4))}),t.put("/",async(e,r)=>{await e.server.db.push("/",e.body),r.send({code:0})})}var Wdt=Re(require("crypto"),1);function Ft(t=[],e=null){let r=Array.isArray(t)?t:[];return{Items:r,TotalRecordCount:typeof e=="number"?e:r.length}}function Xr(t,e,r=""){if(!t||typeof t!="object")return r;for(let n of e)if(t[n]!==void 0&&t[n]!==null)return t[n];return r}function Que(t,e){return typeof t!="string"||!t.trim()?[]:t.split(e).map(r=>String(r||"").trim()).filter(Boolean)}function Vwr(t){let e=String(t||""),r=e.lastIndexOf("$");return r<=0?{name:e||"\u64AD\u653E",playId:""}:{name:e.slice(0,r).trim()||"\u64AD\u653E",playId:e.slice(r+1).trim()}}function go(t,e){let r=Que(t,"$$$"),n=Que(e,"$$$"),s=Math.max(r.length,n.length),i=[];for(let a=0;a<s;a++){let c=Que(n[a]||"","#").map(Vwr).filter(u=>u.playId);i.push({flag:r[a]||`\u7EBF\u8DEF${a+1}`,episodes:c})}return i}function fA(t,e=1){let r=Number.parseInt(Vw(String(t||"")),10);if(Number.isInteger(r)&&r>0)return r;let n=Number.parseInt(String(e||1),10);return Number.isInteger(n)&&n>0?n:1}function zwr(t,e=""){let r=[];for(let n=0;n<t.length;n+=2){let s=String(t[n]||"").trim(),i=Kue(t[n+1]||"");i&&r.push({label:s,url:i})}if(!r.length)return t.map(s=>Kue(s)).find(Boolean)||"";if(e){let n=r.find(s=>s.label===e);if(n)return n.url}return r[0].url}function Gue(t=""){return/^(https?:\/\/|push:\/\/)/i.test(String(t||"").trim())}function Kue(t=""){let e=String(t||"").trim();if(!e)return"";if(Gue(e))return e;let r=e.split("#").map(n=>String(n||"").trim()).filter(Boolean);for(let n of r){if(Gue(n))return n;let i=n.split(",").map(c=>String(c||"").trim()).filter(Boolean).find(c=>Gue(c));if(i)return i;let a=n.match(/(https?:\/\/[^\s,]+)/i);if(a?.[1])return a[1].trim();let o=n.match(/(push:\/\/[^\s,]+)/i);if(o?.[1])return o[1].trim()}return""}function um(t,e=""){let r=t?.url||"";Array.isArray(r)?r=zwr(r,e):r=Kue(r),typeof r!="string"&&(r="");let n={};return t?.header&&typeof t.header=="object"&&Object.keys(t.header).forEach(s=>{let i=t.header[s];i!=null&&(n[s]=String(i))}),{parse:Number(t?.parse||0),url:r.trim(),header:n}}function Pu(t,e=60){let r=Number(t);return!Number.isFinite(r)||r<=0?e:Math.min(200,r)}function Ca(t=[],e=0,r=60){let n=Array.isArray(t)?t:[],s=Math.max(0,Number(e)||0),i=Pu(r,60);return n.slice(s,s+i)}function ss(t={}){return{IsFavorite:!1,Played:!1,PlayCount:0,PlaybackPositionTicks:0,...t}}function WE(t={}){let e=`${t?.vod_name||""} ${t?.vod_remarks||""}`;return/(更新|第\s*\d+\s*[集话期]|连载|season|s\d+e\d+)/i.test(e)?"Series":"Movie"}function $s(){return new Date().toISOString()}function Ywr(t={}){if(typeof t=="string")try{t=JSON.parse(t)}catch{t={}}return{username:String(t?.username||t?.Username||t?.name||t?.Name||""),password:String(t?.pw||t?.Pw||t?.password||t?.Password||"")}}function Jwr(t=""){let e={};return String(t).replace(/^MediaBrowser\s+/i,"").replace(/^Emby\s+/i,"").replace(/,\s+/g,",").split(",").forEach(n=>{let[s,i]=n.split("="),a=String(s||"").trim().toLowerCase(),o=String(i||"").replace(/"/g,"").trim();a&&o&&(e[a]=o)}),e}function Xwr(t){let e=t.query||{},r=Jwr(t.headers?.["x-emby-authorization"]||t.headers?.authorization||"");return{client:r.client||String(e["x-emby-client"]||e["X-Emby-Client"]||""),device:r.device||String(e["x-emby-device-name"]||e["X-Emby-Device-Name"]||""),deviceId:r.deviceid||String(e["x-emby-device-id"]||e["X-Emby-Device-Id"]||""),version:r.version||String(e["x-emby-client-version"]||e["X-Emby-Client-Version"]||"")}}function Zwr(t){let e=$s();return{Name:t.user.name,ServerId:t.config.serverId,Id:t.user.id,HasPassword:!0,HasConfiguredPassword:!0,HasConfiguredEasyPassword:!1,EnableAutoLogin:!1,LastLoginDate:e,LastActivityDate:e,Policy:{IsAdministrator:!0,IsHidden:!1,IsDisabled:!1,EnableRemoteAccess:!0,EnableContentDeletion:!1,EnableContentDownloading:!0,EnableSyncTranscoding:!0,EnableMediaPlayback:!0,EnableAudioPlaybackTranscoding:!0,EnableVideoPlaybackTranscoding:!0,EnablePlaybackRemuxing:!0,EnableSubtitleManagement:!1,AuthenticationProviderId:"Emby.Server.Implementations.Library.DefaultAuthenticationProvider"},Configuration:{PlayDefaultAudioTrack:!0,DisplayMissingEpisodes:!1,SubtitleMode:"Default",EnableLocalPassword:!1,HidePlayedInLatest:!0,RememberAudioSelections:!0,RememberSubtitleSelections:!0}}}function e2r(t,e,r){let n=$s();return{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SubtitleOffset:0,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:e.Id,ServerId:t.config.serverId,UserId:e.Id,UserName:e.Name,Client:r.client,LastActivityDate:n,DeviceName:r.device,InternalDeviceId:0,DeviceId:r.deviceId,ApplicationVersion:r.version||t.config.version,SupportedCommands:[],SupportsRemoteControl:!1}}async function Vue(t){let e=new Map,r=5,n=60*1e3;function s(a){let o=Date.now(),c=e.get(a);return!c||o-c.windowStart>n?!1:c.count>=r}function i(a){let o=Date.now(),c=e.get(a);!c||o-c.windowStart>n?e.set(a,{count:1,windowStart:o}):c.count++}t.get("/Public",async()=>[]),t.post("/AuthenticateByName",async(a,o)=>{let c=t.embyContext;if(!c.config.enable)return o.code(503),"Emby disabled";let u=a.ip||"unknown";if(s(u))return o.code(429),"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5";let l=Ywr(a.body||{});if(console.log("[Emby Auth] login attempt:",JSON.stringify({username:l.username,hasPassword:!!l.password,ip:u})),l.username!==c.config.username||l.password!==c.config.password)return i(u),o.code(401),"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF";let d=Wdt.default.randomBytes(24).toString("hex"),f=Xwr(a),p=Date.now(),m=c.config.tokenTtlMs>0?p+c.config.tokenTtlMs:0;c.tokens.set(d,{token:d,userId:c.user.id,userName:c.user.name,createdAt:p,lastUsedAt:p,expireAt:m,device:f});let h=Zwr(c),A=e2r(c,h,f);return{User:h,SessionInfo:A,AccessToken:d,ServerId:c.config.serverId}}),t.post("/Logout",{preHandler:t.embyRequireAuth},async(a,o)=>{a.embyToken&&t.embyContext.tokens.delete(a.embyToken),o.code(204).send()}),t.get("/Me",{preHandler:t.embyRequireAuth},async a=>({Name:a.embyUser?.Name||t.embyContext.user.name,Id:a.embyUser?.Id||t.embyContext.user.id,ServerId:t.embyContext.config.serverId,Policy:{},Configuration:{},EnableAutoLogin:!1,LastLoginDate:$s(),LastActivityDate:$s()}))}async function zue(t){t.get("/Info/Public",async()=>{let e=t.embyContext.config;return{LocalAddresses:[],RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Info",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config;return{SystemUpdateLevel:"Release",OperatingSystemDisplayName:"Node.js",HasPendingRestart:!1,IsShuttingDown:!1,HasImageEnhancers:!1,SupportsLibraryMonitor:!1,SupportsLocalPortConfiguration:!1,SupportsWakeServer:!1,CanSelfRestart:!1,CanSelfUpdate:!1,CanLaunchWebBrowser:!1,ProgramDataPath:"/",ItemsByNamePath:"/metadata",CachePath:"/cache",LogPath:"/logs",InternalMetadataPath:"/metadata",TranscodingTempPath:"/tmp",HttpServerPortNumber:8096,SupportsHttps:!1,HttpsPortNumber:8920,HasUpdateAvailable:!1,SupportsAutoRunAtStartup:!1,HardwareAccelerationRequiresPremiere:!1,WakeOnLanInfo:{MacAddress:"",BroadcastAddress:"",Port:0},IsInMaintenanceMode:!1,LocalAddress:"",LocalAddresses:[],WanAddress:"",RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Ping",async(e,r)=>(r.type("text/plain; charset=utf-8"),"MyCatPaw Emby")),t.get("/Endpoint",async()=>({IsInNetwork:!0}))}var $dt=new Set(["lib","cat","vod","sea","ep","img","media"]);function wn(t,e={}){if(!$dt.has(t))throw new Error(`Unsupported item type: ${t}`);let r=JSON.stringify(e||{}),n=Buffer.from(r,"utf8").toString("base64url");return`${t}:${n}`}function Fs(t){if(typeof t!="string")return null;let e=t.indexOf(":");if(e<=0)return null;let r=t.slice(0,e);if(!$dt.has(r))return null;let n=t.slice(e+1);if(!n)return null;try{let s=Buffer.from(n,"base64url").toString("utf8"),i=JSON.parse(s);return!i||typeof i!="object"?null:{type:r,payload:i}}catch{return null}}function Yue(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,ServerId:e,Id:r,Guid:r,Etag:r,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,CanDelete:!1,CanDownload:!1,DisplayPreferencesId:r,UserData:ss(),ImageTags:{Primary:r},BackdropImageTags:[],ChildCount:0}}async function Jue(t){t.get("/MediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Jl(t);return Ft(r.map(n=>Yue(n,e)))}),t.get("/VirtualFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId;return(await Jl(t)).map(n=>{let s=Yue(n,e);return{Name:s.Name,Locations:[],LibraryOptions:{},ItemId:s.Id,Id:s.Id,Guid:s.Guid}})}),t.get("/SelectableMediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Jl(t);return Ft(r.map(n=>{let s=Yue(n,e);return{Name:s.Name,Id:s.Id,Path:"",Type:"Virtual"}}))}),t.post("/Refresh",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()}),t.post("/RefreshMediaLibrary",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()})}var t2r="/embyPlayback",r2r=.92,n2r=1500;function jM(t,e=0){let r=Number(t);return Number.isFinite(r)?r:e}function Xue(t,e=!1){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e}function s2r(t){if(t instanceof Date){let n=t.getTime();return Number.isFinite(n)?new Date(n).toISOString():""}let e=String(t||"").trim();if(!e)return"";let r=Date.parse(e);return Number.isFinite(r)?new Date(r).toISOString():""}function HM(t){let e=t&&typeof t=="object"?t:{};return{users:e.users&&typeof e.users=="object"?e.users:{}}}function lm(t){let e=t?.embyContext;return!e||typeof e!="object"?HM(null):((!e.playbackState||typeof e.playbackState!="object")&&(e.playbackState=HM(null)),(!e.playbackState.users||typeof e.playbackState.users!="object")&&(e.playbackState.users={}),e.playbackState)}function pA(t,e){let r=String(e||"").trim();return r?((!t.users[r]||typeof t.users[r]!="object")&&(t.users[r]={items:{}}),(!t.users[r].items||typeof t.users[r].items!="object")&&(t.users[r].items={}),t.users[r]):null}function Zf(t,e=""){let r=t&&typeof t=="object"?t:{};return{itemId:String(e||r.itemId||"").trim(),name:String(r.name||"").trim(),isFavorite:!!r.isFavorite,played:!!r.played,playCount:Math.max(0,Math.floor(jM(r.playCount,0))),playbackPositionTicks:Math.max(0,Math.floor(jM(r.playbackPositionTicks,0))),lastPlayedDate:s2r(r.lastPlayedDate),mediaSourceId:String(r.mediaSourceId||"").trim()}}function Fdt(t={}){return Date.parse(String(t?.lastPlayedDate||""))||0}function i2r(t=""){let e=String(t||"").trim();return e?e.match(/\d{4}/)?.[0]||e:""}function qdt(t={}){let e=String(t.k||"").trim(),r=String(t.v||"").trim();if(!e||!r)return null;let n=i2r(t.y);return{k:e,t:Number(t.t||3),v:r,...t.n?{n:String(t.n||"")}:{},...t.u?{u:String(t.u||"")}:{},...t.r?{r:String(t.r||"")}:{},...n?{y:n}:{}}}function a2r(t={}){let e=qdt(t);return e?{...e,l:Number(t.l||0)}:null}function o2r(t={}){let e=qdt(t);return e?wn("vod",e):""}function c2r(t={}){let e=a2r(t);return e?wn("sea",e):""}function jdt(t){return t?.type==="ep"||t?.type==="media"}function u2r(t,e){if(!jdt(t)||!["vod","sea"].includes(e?.type))return!1;let r=t.payload||{},n=e.payload||{};return!(String(r.k||"")!==String(n.k||"")||Number(r.t||3)!==Number(n.t||3)||String(r.v||"")!==String(n.v||"")||e.type==="sea"&&Number(r.l||0)!==Number(n.l||0))}function Hdt(t,e,r,n={}){let s=Fs(String(r||""));if(!["vod","sea"].includes(s?.type))return[];let i=lm(t),a=pA(i,e);if(!a)return[];let o=!!n?.includePlayed;return Object.entries(a.items||{}).map(([c,u])=>({record:Zf(u,c),decoded:Fs(c)})).filter(({record:c,decoded:u})=>!u2r(u,s)||c.playbackPositionTicks<=0?!1:o||!c.played).sort((c,u)=>Fdt(u.record)-Fdt(c.record))}function c2(t,e,r,n={}){return Hdt(t,e,r,n)[0]||null}async function Udt(t){try{if(!t?.db?.push)return;await t.db.push(t2r,lm(t))}catch{}}function QM(t,e=!1){let r=t?.embyContext;if(!(!r||typeof r!="object")){if(e){r.playbackPersistTimer&&(clearTimeout(r.playbackPersistTimer),r.playbackPersistTimer=null),Udt(t);return}r.playbackPersistTimer||(r.playbackPersistTimer=setTimeout(async()=>{r.playbackPersistTimer=null,await Udt(t)},n2r))}}function l2r(t={},e=""){let r=[t?.ItemId,t?.itemId,t?.NowPlayingItem?.Id,t?.nowPlayingItem?.Id,t?.PlayingItemId,t?.playingItemId,t?.PlayableItemId,t?.playableItemId,e];for(let n of r){let s=String(n||"").trim();if(s)return s}return""}function d2r(t={}){let e=[t?.PositionTicks,t?.positionTicks,t?.PlaybackPositionTicks,t?.playbackPositionTicks,t?.Position,t?.position];for(let r of e){let n=Math.floor(jM(r,NaN));if(Number.isFinite(n)&&n>=0)return n}return 0}function f2r(t={}){let e=[t?.RunTimeTicks,t?.runTimeTicks,t?.NowPlayingItem?.RunTimeTicks,t?.nowPlayingItem?.runTimeTicks];for(let r of e){let n=Math.floor(jM(r,NaN));if(Number.isFinite(n)&&n>0)return n}return 0}function p2r(t,e,r,n){return Xue(t?.Played,!1)||Xue(t?.IsPlayed,!1)||e==="played"?!0:e!=="stopped"||n<=0?!1:r/n>=r2r}function m2r(t,e,r){let n=String(r||"").trim();if(!n)return null;let s=lm(t),i=pA(s,e);if(!i)return null;let a=i.items[n];return!a||typeof a!="object"?null:Zf(a,n)}function Uo(t,e,r,n={}){let s=String(r||"").trim();if(!s)return ss(n);let i=m2r(t,e,s),o=c2(t,e,s)?.record||null||i;return o?ss({...n,IsFavorite:!!(i?.isFavorite||o.isFavorite),Played:o.played,PlayCount:o.playCount,PlaybackPositionTicks:o.playbackPositionTicks,...o.lastPlayedDate?{LastPlayedDate:o.lastPlayedDate}:{}}):ss(n)}function Us(t,e,r=[]){return!Array.isArray(r)||!r.length||r.forEach(n=>{!n||!n.Id||(n.UserData=Uo(t,e,String(n.Id||""),n.UserData||{}))}),r}async function u2(t,e,r={},n="progress"){let s=l2r(r);if(!s)return null;let i=lm(t),a=pA(i,e);if(!a)return null;let o=Zf(a.items[s],s),c=d2r(r),u=f2r(r),l=p2r(r,n,c,u),d=Zf(o,s);d.lastPlayedDate=$s(),c>0&&(d.playbackPositionTicks=c);let f=String(r?.ItemName||r?.itemName||r?.Name||r?.name||r?.NowPlayingItem?.Name||"").trim();f&&(d.name=f);let p=String(r?.MediaSourceId||r?.mediaSourceId||"").trim();return p&&(d.mediaSourceId=p),l?(d.played=!0,d.playCount=Math.max(1,d.playCount+(o.played?0:1)),d.playbackPositionTicks=0):n!=="ping"&&(c>0||n==="stopped"||n==="progress"||n==="playing")&&(d.played=!1),(r?.IsFavorite!==void 0||r?.isFavorite!==void 0)&&(d.isFavorite=Xue(r?.IsFavorite??r?.isFavorite,d.isFavorite)),a.items[s]=d,QM(t,n==="stopped"),d}async function Qdt(t,e,r,n){let s=String(r||"").trim();if(!s)return ss();let i=lm(t),a=pA(i,e);if(!a)return ss();let o=Zf(a.items[s],s),c=Zf(o,s);return c.played=!!n,c.lastPlayedDate=$s(),c.played&&(c.playCount=Math.max(1,c.playCount+(o.played?0:1))),c.playbackPositionTicks=0,a.items[s]=c,QM(t,!0),Uo(t,e,s)}async function Gdt(t,e,r,n){let s=String(r||"").trim();if(!s)return ss();let i=lm(t),a=pA(i,e);if(!a)return ss();let o=Zf(a.items[s],s);return o.isFavorite=!!n,o.lastPlayedDate=$s(),a.items[s]=o,QM(t,!0),Uo(t,e,s)}async function Kdt(t,e,r){let n=String(r||"").trim();if(!n)return ss();let s=lm(t),i=pA(s,e);if(!i)return ss();let a=new Set([n,...Hdt(t,e,n).map(({record:o})=>o.itemId)]);for(let o of a){let c=Zf(i.items[o],o);c.played=!1,c.playbackPositionTicks=0,c.lastPlayedDate=$s(),i.items[o]=c}return QM(t,!0),Uo(t,e,n)}function h2r(t=""){let e=Fs(String(t||""));return e?e.type==="vod"?{type:"Series",isFolder:!0,canPlay:!1,mediaType:"Video"}:e.type==="sea"?{type:"Season",isFolder:!0,canPlay:!1,mediaType:void 0}:e.type==="ep"||e.type==="media"?{type:"Episode",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}}function g2r(t){if(t?.name)return String(t.name);let e=Fs(String(t?.itemId||"")),r=String(e?.payload?.n||"").trim();return r||"\u7EE7\u7EED\u64AD\u653E"}function A2r(t,e,r,n){let s=Fs(String(n?.itemId||""));if(jdt(s)){let a=o2r(s.payload||{});if(a){let o=c2r(s.payload||{});return{Name:String(s?.payload?.n||n?.name||"").trim()||"\u7EE7\u7EED\u64AD\u653E",Id:a,ServerId:r,IsFolder:!0,Type:"Series",MediaType:"Video",CollectionType:"tvshows",...o?{SeasonId:o}:{},DateCreated:n.lastPlayedDate||$s(),ImageTags:{Primary:a},BackdropImageTags:[],UserData:Uo(t,e,a)}}}let i=h2r(n.itemId);return{Name:g2r(n),Id:n.itemId,ServerId:r,IsFolder:i.isFolder,Type:i.type,...i.mediaType?{MediaType:i.mediaType}:{},...i.canPlay?{CanPlay:!0}:{},DateCreated:n.lastPlayedDate||$s(),ImageTags:{Primary:n.itemId},BackdropImageTags:[],UserData:Uo(t,e,n.itemId)}}function y2r(t={}){let e=Fs(String(t?.Id||"")),r=e?.payload||{},n=String(r.k||"").trim(),s=String(r.v||"").trim();return e?.type==="vod"&&n&&s?`series:${n}:${Number(r.t||3)}:${s}`:e?.type==="sea"&&n&&s?`season:${n}:${Number(r.t||3)}:${s}:${Number(r.l||0)}`:`item:${String(t?.Id||"")}`}function Vdt(t,e,r){let n=lm(t),s=pA(n,e);if(!s)return[];let i=Object.entries(s.items||{}).map(([c,u])=>Zf(u,c)).filter(c=>c.playbackPositionTicks>0&&!c.played).sort((c,u)=>{let l=Date.parse(String(c.lastPlayedDate||""))||0;return(Date.parse(String(u.lastPlayedDate||""))||0)-l}),a=new Set,o=[];for(let c of i){let u=A2r(t,e,r,c),l=y2r(u);!u?.Id||a.has(l)||(a.add(l),o.push(u))}return o}var x2r="https://api.themoviedb.org/3",zdt=8e3,b2r=2,Ydt=20,Jdt=20;function Xdt(t=0){return new Promise(e=>setTimeout(e,Math.max(0,Number(t)||0)))}function l2(t){let e=t.embyContext?.config||{},r=String(e.tmdbApiKey||"").trim();return!e.tmdbEnable||!r?null:{apiKey:r,language:String(e.tmdbLanguage||"zh-CN"),imageBase:String(e.tmdbImageBase||"https://image.tmdb.org/t/p/original").replace(/\/+$/,""),timeoutMs:zdt}}function Zdt(t="zh-CN"){let e=String(t||"zh-CN").trim().split(/[-_]/)[0].toLowerCase(),r=new Set;return e&&r.add(e),r.add("en"),r.add("null"),Array.from(r).join(",")}function E2r(t){let e=t.embyContext;return e.tmdbClientState||(e.tmdbClientState={tokens:Jdt,lastRefillAt:Date.now()}),e.tmdbClientState}function _2r(t){let e=Date.now(),r=Math.max(0,e-t.lastRefillAt)/1e3;r<=0||(t.tokens=Math.min(Jdt,t.tokens+r*Ydt),t.lastRefillAt=e)}async function S2r(t){let e=E2r(t);for(;;){if(_2r(e),e.tokens>=1){e.tokens-=1;return}let r=Math.max(0,1-e.tokens),n=Math.max(50,Math.ceil(r/Ydt*1e3));await Xdt(n)}}function v2r(t){let e=Number(t?.response?.status||0);return!e||e===429||e>=500}function I2r(t,e=0){let r=Number(t?.response?.headers?.["retry-after"]||0);return Number.isFinite(r)&&r>0?r*1e3:Math.min(4e3,500*(e+1))}function mA(t){return!!l2(t)}function d2(t,e=""){let r=String(e||"").trim();return r?/^https?:\/\//i.test(r)?r:`${l2(t)?.imageBase||"https://image.tmdb.org/t/p/original"}${r.startsWith("/")?"":"/"}${r}`:""}async function f2(t,e,r={},n={}){let s=l2(t);if(!s)return null;let i={...r||{}};i.language||(i.language=s.language);let a=Math.max(0,Number(n.maxRetries??b2r)||0);for(let o=0;o<=a;o+=1){await S2r(t);try{return(await Ae.get(`${x2r}${e}`,{params:{api_key:s.apiKey,...i},timeout:Number(n.timeoutMs||s.timeoutMs||zdt),headers:{Accept:"application/json"}})).data||null}catch(c){if(o>=a||!v2r(c))return null;await Xdt(I2r(c,o))}}return null}async function eft(t,e,r=null){return f2(t,"/search/tv",{query:e,...r?{first_air_date_year:r}:{}})}async function tft(t,e,r=null){return f2(t,"/search/movie",{query:e,...r?{primary_release_year:r}:{}})}async function rft(t,e){let r=l2(t);return f2(t,`/tv/${Number(e)}`,{append_to_response:"external_ids,content_ratings,images,credits",include_image_language:Zdt(r?.language||"zh-CN")})}async function nft(t,e){let r=l2(t);return f2(t,`/movie/${Number(e)}`,{append_to_response:"external_ids,release_dates,images,credits",include_image_language:Zdt(r?.language||"zh-CN")})}async function sft(t,e,r){return f2(t,`/tv/${Number(e)}/season/${Number(r)}`)}function Mn(t=""){return String(t||"").trim()}function ift(t=[]){let e=[],r=new Set;for(let n of t){let s=Mn(n);!s||r.has(s)||(r.add(s),e.push(s))}return e}function C2r(t=""){let e=Mn(t);if(!e)return null;let r=e.replace(/[·•::\-_.!!??,,'"/\\()[\]{}【】《》\s]+$/g,"");if(!r)return null;let n=r.match(/([1-9]\d{0,2})$/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return!Number.isInteger(s)||s<=0||s>50?null:s}function oft({explicitSources:t=[],suffixSources:e=[]}={}){for(let r of ift(t)){let n=Number.parseInt(Bce(r),10);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"pattern"}}for(let r of ift(e)){let n=C2r(r);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"title_suffix"}}return{seasonNumber:null,explicit:!1,strategy:"none"}}function T2r(t="",e={},r="tv"){let n=String(t||"");if(r!=="tv"||!n||String(e?.seasonHintStrategy||"")!=="title_suffix")return"";let s=Number.parseInt(String(e?.seasonNumber||""),10);if(!Number.isInteger(s)||s<=0)return"";let i=String(s);if(!n.endsWith(i))return"";let a=n.slice(0,Math.max(0,n.length-i.length));return a.length>=2?a:""}function aft(t="",e=""){return!t||!e?0:t===e?1:t.includes(e)||e.includes(t)?Math.min(.95,Math.min(t.length,e.length)/Math.max(t.length,e.length)+.15):RQ(t,e).length/Math.max(t.length,e.length)}function hA(t=""){let e=Mn(t).match(/\b(19|20)\d{2}\b/);return e?.[0]?Number(e[0]):null}function Zue(t=""){let e=Mn(t);return Mn(sA(e)||e).toLowerCase().replace(/[·•::\-_.!!??,,'"/\\()[\]{}【】《》\s]+/g,"").replace(/第[一二三四五六七八九十百千万亿\d]+季/g,"").replace(/年番总集篇|年番合集篇|总集篇|合集篇|年番/g,"")}function cft(t={}){let e=Mn(t?.tmdbHintTitle||t?.vod_name||t?.name||""),r=Mn(sA(e)||e),n=Mn(t?.tmdbHintRemarks||t?.vod_remarks||""),s=oft({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),e,n,Mn(t?.vod_name),Mn(t?.vod_remarks)],suffixSources:[e,r,Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return{rawTitle:e,cleanedTitle:r,normalizedTitle:Zue(r||e),altTitle:n,year:hA(t?.tmdbHintYear||t?.vod_year),seasonNumber:s.seasonNumber,seasonHintStrategy:s.strategy}}function ele(t={},e=null){let r=oft({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),Mn(t?.vod_name),Mn(t?.vod_remarks),Mn(e?.flag)],suffixSources:[Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return Number.isInteger(r.seasonNumber)&&r.seasonNumber>0?{seasonNumber:r.seasonNumber,explicit:r.explicit,strategy:r.strategy}:{seasonNumber:1,explicit:!1,strategy:"default"}}function uft(t={},e="tv"){return Mn(e==="movie"?t?.title||t?.original_title||t?.name||t?.original_name||"":t?.name||t?.original_name||t?.title||t?.original_title||"")}function w2r(t={},e="tv"){return hA(e==="movie"?t?.release_date:t?.first_air_date)}function R2r(t,e,r){let n=Zue(t?.cleanedTitle||t?.rawTitle||""),s=T2r(n,t,r),i=Zue(uft(e,r)),a=aft(n,i),o=aft(s,i);return Math.max(a,o)}function N2r(t,e,r){let n=r==="tv"&&String(t?.seasonHintStrategy||"")==="title_suffix"&&Number.parseInt(String(t?.seasonNumber||""),10)>1;if(!t?.year)return .5;let s=w2r(e,r);if(!s)return n?.5:.2;let i=Math.abs(t.year-s);return n&&i>=2?.5:i===0?1:i===1?.7:i===2?.4:0}function O2r(t,e,r){if(r!=="tv"||!t?.seasonNumber)return .5;let n=Number.parseInt(Bce(uft(e,r)),10)||null;return n?n===t.seasonNumber?1:.2:.5}function P2r(t,e,r="tv"){let n=R2r(t,e,r),s=N2r(t,e,r),i=O2r(t,e,r),a=Math.min(Number(e?.popularity||0)/100,1),o=Math.min(Number(e?.vote_average||0)/10,1),c=Math.max(a,o),u=Number((n*.7+s*.2+i*.05+c*.05).toFixed(4));return{title:Number(n.toFixed(4)),year:Number(s.toFixed(4)),season:Number(i.toFixed(4)),heat:Number(c.toFixed(4)),score:u}}function lft(t,e=[],r="tv"){let n=(Array.isArray(e)?e:[]).map(i=>{let a=P2r(t,i,r);return{candidate:i,score:a.score,breakdown:a}}).sort((i,a)=>a.score-i.score),s=n[0]||null;return!s||s.score<.5?{status:"NO_MATCH",best:null,candidates:n.slice(0,3)}:s.score<.8?{status:"CANDIDATE",best:s,candidates:n.slice(0,3)}:{status:"MATCH",best:s,candidates:n.slice(0,3)}}function GM(t={},e=null,r=0){return ele(t,e).seasonNumber}var AA={BINDING:30*24*60*60*1e3,DETAIL:7*24*60*60*1e3,SEASON:7*24*60*60*1e3,NO_MATCH:24*60*60*1e3,FAILURE:10*60*1e3};function rle(t){let e=t.embyContext;return e.tmdbStore||(e.tmdbStore={memory:vM({max:1200}),pending:new Map}),e.tmdbStore}function tle(t=""){return`/embyTmdb/${Buffer.from(String(t||""),"utf8").toString("base64url")}`}function k2r(t,e=0){return{value:t,expireAt:e>0?Date.now()+e:0}}function D2r(t=null){return!!(t&&t.expireAt>0&&t.expireAt<=Date.now())}async function B2r(t,e){try{let r=await t.db?.getObjectDefault(tle(e),null);return!r||typeof r!="object"?null:D2r(r)?(t.db?.delete&&await t.db.delete(tle(e)).catch(()=>{}),null):r}catch{return null}}async function gA(t,e,r={}){let n=rle(t),s=n.memory.get(e);if(s!==void 0)return s;if(r.persist===!1)return null;let i=await B2r(t,e);if(!i)return null;let a=i.expireAt>0?Math.max(1e3,i.expireAt-Date.now()):0;return n.memory.set(e,i.value,a),i.value}async function $E(t,e,r,n=0,s={}){if(rle(t).memory.set(e,r,n),s.persist===!1)return r;try{t.db?.push&&await t.db.push(tle(e),k2r(r,n))}catch{}return r}async function nle(t,e,r,n,s={}){let i=await gA(t,e,s);if(i!==null)return i;let a=rle(t);if(a.pending.has(e))return a.pending.get(e);let o=(async()=>{try{let c=await gA(t,e,s);if(c!==null)return c;let u=await n();return u!=null?$E(t,e,u,r,s):null}finally{a.pending.delete(e)}})();return a.pending.set(e,o),o}function ku(t=""){return String(t||"").trim()}function L2r(t=""){let e=hA(t);return e?String(e):""}function yA(t={},e={}){let r=t&&typeof t=="object"?t:{},n=ku(e?.n),s=ku(e?.r),i=L2r(e?.y||e?.vod_year),a=ku(e?.u);return n&&(r.tmdbHintTitle=n),s&&(r.tmdbHintRemarks=s),i&&(r.tmdbHintYear=i),!ku(r.vod_name)&&n&&(r.vod_name=n),!ku(r.vod_remarks)&&s&&(r.vod_remarks=s),!ku(r.vod_year)&&i&&(r.vod_year=i),!ku(r.vod_pic)&&a&&(r.vod_pic=a),r}function M2r(t={}){let e=ku(t?.v);return e?yA({vod_id:e,vod_name:"",vod_pic:"",vod_remarks:"",vod_year:""},t):null}function Kn(t={}){let e={};return Object.entries(t).forEach(([r,n])=>{n!=null&&(typeof n=="string"&&!n.trim()||Array.isArray(n)&&n.length===0||!Array.isArray(n)&&typeof n=="object"&&Object.keys(n).length===0||(e[r]=n))}),e}function ile(t){let e=Number(t);return Number.isFinite(e)&&e>0?Number(e.toFixed(1)):void 0}function ale(t=""){let e=String(t||"").trim();return/^\d{4}-\d{2}-\d{2}$/.test(e)?`${e}T00:00:00.000Z`:void 0}function W2r(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.round(e*60*1e7):void 0}function $2r(t=[]){return(Array.isArray(t)?t:[]).map(e=>String(e?.name||"").trim()).filter(Boolean)}function F2r(t=[]){return(Array.isArray(t)?t:[]).filter(e=>e?.name).map(e=>({Name:String(e.name),Id:String(e.id||e.name)}))}function U2r(t={},e="tv"){return e==="movie"?{name:String(t?.title||t?.original_title||"").trim(),originalTitle:String(t?.original_title||t?.title||"").trim()}:{name:String(t?.name||t?.original_name||"").trim(),originalTitle:String(t?.original_name||t?.name||"").trim()}}function q2r(t=""){return String(t||"").trim().toLowerCase()}function j2r(t={}){let e=Array.isArray(t?.images?.logos)?t.images.logos:[];if(!e.length)return[];let r=e.map((n,s)=>{let i=q2r(n?.iso_639_1),a=String(n?.file_path||"").trim(),o=Number(n?.vote_average||0),c=Number(n?.vote_count||0),u=Number(n?.width||0),l=i?i==="en"?2:3:1;return{index:s,filePath:a,voteAverage:Number.isFinite(o)?o:0,voteCount:Number.isFinite(c)?c:0,width:Number.isFinite(u)?u:0,languageScore:l}}).filter(n=>n.filePath);return r.sort((n,s)=>s.languageScore-n.languageScore||s.voteAverage-n.voteAverage||s.voteCount-n.voteCount||s.width-n.width||n.index-s.index),r}function KM(t={}){let e=j2r(t);return e.length&&e[0]?.filePath||""}function H2r(t="",e="",r=0){let n=Kn({n:String(t||"").trim(),u:String(e||"").trim()||void 0,pid:Number(r||0)>0?String(r):void 0});return wn("img",n)}function Q2r(t,e={},r={}){let n=String(e?.name||e?.original_name||"").trim();if(!n)return null;let s=d2(t,e?.profile_path||""),i=Number(e?.id||0),a=H2r(n,s,i),o=String(r.role||"").trim(),c=String(r.type||"Actor").trim();return Kn({Name:n,Id:a,Role:o||void 0,Type:c||void 0,PrimaryImageTag:s?a:void 0,ImageTags:s?{Primary:a}:void 0})}function G2r(t={},e){let r=Array.isArray(t?.credits?.cast)?t.credits.cast:[],n=[],s=new Set,i=(o,c="")=>{if(!o)return;let u=String(c||`${o.Name}:${o.Role||""}`);s.has(u)||(s.add(u),n.push(o))};return[...r].map((o,c)=>({person:o,index:c,order:Number(o?.order??c),popularity:Number(o?.popularity||0)})).sort((o,c)=>o.order-c.order||c.popularity-o.popularity||o.index-c.index).slice(0,24).forEach(o=>{let c=Number(o.person?.id||0),u=String(o.person?.character||"").trim()||"\u6F14\u5458";i(Q2r(e,o.person,{role:u,type:"Actor"}),c>0?`cast:${c}`:`cast:${o.person?.name||""}:${u}`)}),n.slice(0,24)}function K2r(t={}){let e={};return t?.id&&(e.Tmdb=String(t.id)),t?.external_ids?.imdb_id&&(e.Imdb=String(t.external_ids.imdb_id)),t?.external_ids?.tvdb_id&&(e.Tvdb=String(t.external_ids.tvdb_id)),Object.keys(e).length>0?e:void 0}function dft(t=[]){let e=(Array.isArray(t)?t:[]).map(r=>({country:String(r?.iso_3166_1||"").trim().toUpperCase(),certification:String(r?.certification||r?.rating||"").trim()})).filter(r=>r.certification);for(let r of["US","CN","GB","HK","TW"]){let n=e.find(s=>s.country===r);if(n)return n.certification}return e[0]?.certification||void 0}function V2r(t={},e="tv"){if(e==="movie"){let r=[];return(Array.isArray(t?.release_dates?.results)?t.release_dates.results:[]).forEach(s=>{(Array.isArray(s?.release_dates)?s.release_dates:[]).forEach(a=>{r.push({iso_3166_1:s?.iso_3166_1,certification:a?.certification})})}),dft(r)}return dft(Array.isArray(t?.content_ratings?.results)?t.content_ratings.results:[])}function z2r(t,e){return`binding:${String(t?.spiderKey||"")}:${Number(t?.spiderType||3)}:${String(t?.apiBase||"")}:${String(e?.vod_id||"")}`}function Y2r(t,e,r){return`detail:${String(t||"")}:${Number(e||0)}:${String(r||"zh-CN")}`}function J2r(t,e,r){return`season:${Number(t||0)}:${Number(e||0)}:${String(r||"zh-CN")}`}function X2r(t){return`no-match:v2:${String(t?.normalizedTitle||"")}:${String(t?.year||"")}:${String(t?.seasonNumber||"")}:${String(t?.seasonHintStrategy||"")}`}function pft(t){return`failure:${t}`}function ep(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function mft(t={},e="tv"){return e==="movie"?String(t?.title||t?.original_title||t?.name||t?.original_name||"").trim():String(t?.name||t?.original_name||t?.title||t?.original_title||"").trim()}function hft(t={},e="tv"){return String(e==="movie"?t?.release_date||"":t?.first_air_date||"").trim()}function sle(t={}){let e=typeof t?.year=="number"&&Number.isFinite(t.year)?t.year:void 0,r=typeof t?.seasonNumber=="number"&&Number.isFinite(t.seasonNumber)?t.seasonNumber:void 0,n=String(t?.seasonHintStrategy||"").trim()||void 0;return Kn({rawTitle:String(t?.rawTitle||""),cleanedTitle:String(t?.cleanedTitle||""),normalizedTitle:String(t?.normalizedTitle||""),altTitle:String(t?.altTitle||""),year:e,seasonNumber:r,seasonHintStrategy:n})}function Z2r(t=[],e="tv",r=3){return(Array.isArray(t)?t:[]).slice(0,Math.max(0,Number(r)||0)).map(n=>{let s=n?.candidate||{},i=n?.breakdown||{};return Kn({id:Number(s?.id||0)||void 0,title:mft(s,e),date:hft(s,e),popularity:Number.isFinite(Number(s?.popularity))?Number(s.popularity):void 0,voteAverage:Number.isFinite(Number(s?.vote_average))?Number(s.vote_average):void 0,score:Number.isFinite(Number(n?.score))?Number(n.score):void 0,breakdown:Kn({title:Number.isFinite(Number(i?.title))?Number(i.title):void 0,year:Number.isFinite(Number(i?.year))?Number(i.year):void 0,season:Number.isFinite(Number(i?.season))?Number(i.season):void 0,heat:Number.isFinite(Number(i?.heat))?Number(i.heat):void 0})})})}function fft(t=null){if(!t?.candidate)return null;let e=t.candidate;return Kn({mediaType:String(t.mediaType||""),status:String(t.status||""),score:Number.isFinite(Number(t.score))?Number(t.score):void 0,candidate:Kn({id:Number(e?.id||0)||void 0,title:mft(e,t.mediaType||"tv"),date:hft(e,t.mediaType||"tv")}),breakdown:Kn({title:Number.isFinite(Number(t?.breakdown?.title))?Number(t.breakdown.title):void 0,year:Number.isFinite(Number(t?.breakdown?.year))?Number(t.breakdown.year):void 0,season:Number.isFinite(Number(t?.breakdown?.season))?Number(t.breakdown.season):void 0,heat:Number.isFinite(Number(t?.breakdown?.heat))?Number(t.breakdown.heat):void 0})})}function eRr(t={},e={}){let r=String(e.preferredMediaType||"").trim().toLowerCase();return r==="tv"?e.allowFallback===!1?["tv"]:["tv","movie"]:r==="movie"?e.allowFallback===!1?["movie"]:["movie","tv"]:WE(t)==="Series"?e.allowFallback===!0?["tv","movie"]:["tv"]:["movie","tv"]}async function tRr(t,e,r){let n=[...new Set([e?.cleanedTitle,e?.rawTitle].map(c=>String(c||"").trim()).filter(Boolean))],s=new Map,i=[],o=r==="tv"&&Number.parseInt(String(e?.seasonNumber||""),10)>1&&String(e?.seasonHintStrategy||"")==="title_suffix"?null:e?.year;for(let c of n){let u=r==="movie"?await tft(t,c,e?.year):await eft(t,c,o),l=Array.isArray(u?.results)?u.results:[],d=0;if(l.forEach(f=>{let p=Number(f?.id||0);p>0&&!s.has(p)&&(s.set(p,f),d+=1)}),i.push(Kn({query:c,resultCount:l.length,acceptedCount:d,collectedCount:s.size})),s.size>=5)break}return{results:Array.from(s.values()),queryLogs:i}}async function FE(t,e,r,n={}){if(!mA(t)||!e?.spiderKey||!r?.vod_id)return null;let s={spiderKey:String(e?.spiderKey||""),spiderType:Number(e?.spiderType||3),vodId:String(r?.vod_id||"")},i=z2r(e,r),a=String(n.preferredMediaType||"").trim().toLowerCase(),o=await gA(t,i);if(o?.tmdbId&&o?.mediaType)return a&&n.allowFallback===!1&&o.mediaType!==a?(ep(t,"tmdb.match.binding.cache.reject",Kn({...s,cachedMediaType:String(o.mediaType||""),preferredMediaType:a})),null):(ep(t,"tmdb.match.binding.cache.hit",Kn({...s,mediaType:String(o.mediaType||""),tmdbId:Number(o.tmdbId||0)||void 0,score:Number.isFinite(Number(o.score))?Number(o.score):void 0})),o);let c=cft(r),u=typeof n.allowFallback=="boolean"?n.allowFallback:void 0;if(ep(t,"tmdb.match.input",Kn({...s,input:sle(c),preferredMediaType:a||void 0,allowFallback:u})),!c?.normalizedTitle)return ep(t,"tmdb.match.skip.invalid_input",Kn({...s,input:sle(c)})),null;let l=X2r(c),d=await gA(t,l);if(d)return ep(t,"tmdb.match.skip.no_match_cache",Kn({...s,status:String(d?.status||""),score:Number.isFinite(Number(d?.score))?Number(d.score):void 0})),null;let f=null;for(let m of eRr(r,n)){let{results:h,queryLogs:A}=await tRr(t,c,m),g=lft(c,h,m);if(ep(t,"tmdb.match.round",Kn({...s,mediaType:m,queryLogs:A,resultCount:h.length,status:g.status,bestScore:Number.isFinite(Number(g?.best?.score))?Number(g.best.score):void 0,topCandidates:Z2r(g.candidates,m,3)})),g.best&&(!f||g.best.score>f.score)&&(f={mediaType:m,...g.best,status:g.status}),g.status==="MATCH"&&g.best?.candidate?.id){let b=g.best.candidate,y=Kn({mediaType:m,tmdbId:Number(b.id),score:g.best.score,matchedTitle:String(m==="movie"?b.title||b.original_title||"":b.name||b.original_name||""),matchedYear:m==="movie"?hA(b.release_date):hA(b.first_air_date),updatedAt:Date.now()});return await $E(t,i,y,AA.BINDING),ep(t,"tmdb.match.binding.set",Kn({...s,mediaType:m,tmdbId:Number(y.tmdbId||0)||void 0,score:Number.isFinite(Number(y.score))?Number(y.score):void 0,matchedTitle:String(y.matchedTitle||""),matchedYear:Number.isFinite(Number(y.matchedYear))?Number(y.matchedYear):void 0,best:fft({mediaType:m,...g.best,status:g.status})})),y}}let p={status:f?.score>=.5?"CANDIDATE":"NO_MATCH",score:Number(f?.score||0),checkedAt:Date.now()};return await $E(t,l,p,f?.score>=.5?15*60*1e3:AA.NO_MATCH),ep(t,"tmdb.match.no_match_set",Kn({...s,noMatch:p,best:fft(f),input:sle(c)})),null}async function gft(t,e={},r={}){try{if(!mA(t))return null;let n=Xl(e),s=M2r(e);return!n?.spiderKey||!s?.vod_id?null:Sft(t,{spiderRef:n,vod:s,options:r})}catch{return null}}async function UE(t,e){if(!e?.tmdbId||!e?.mediaType)return null;let r=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),n=Y2r(e.mediaType,e.tmdbId,r),s=pft(n);if(await gA(t,s))return null;let i=await nle(t,n,AA.DETAIL,async()=>{let a=e.mediaType==="movie"?await nft(t,e.tmdbId):await rft(t,e.tmdbId);return a?.id?a:null});return i?.id?i:(await $E(t,s,{failedAt:Date.now()},AA.FAILURE),null)}async function rRr(t,e,r){if(!e?.tmdbId||e?.mediaType!=="tv")return null;let n=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),s=J2r(e.tmdbId,r,n),i=pft(s);if(await gA(t,i))return null;let a=await nle(t,s,AA.SEASON,async()=>{let o=await sft(t,e.tmdbId,r);return o?.season_number!=null?o:null});return a?.season_number!=null?a:(await $E(t,i,{failedAt:Date.now()},AA.FAILURE),null)}function nRr(t={},e=null){let r=[ku(t?.tmdbHintTitle||t?.vod_name),ku(t?.tmdbHintRemarks||t?.vod_remarks),ku(e?.flag)].filter(Boolean).join(" ");return/年番/i.test(r)}function sRr(t=""){let e=String(t||"").trim();if(!e)return null;let r=Number.parseInt(e,10);if(Number.isInteger(r)&&r>0)return r;let n=e.match(/(\d{1,4})/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return Number.isInteger(s)&&s>0?s:null}function iRr(t=null){let r=(Array.isArray(t?.episodes)?t.episodes:[]).map(n=>sRr(n?.name)).filter(n=>Number.isInteger(n)&&n>0);return r.length?{count:r.length,min:Math.min(...r),max:Math.max(...r)}:{count:0,min:0,max:0}}function Aft(t={}){return(Array.isArray(t?.seasons)?t.seasons:[]).map(e=>({seasonNumber:Number(e?.season_number||0),episodeCount:Number(e?.episode_count||0),name:String(e?.name||"").trim()})).filter(e=>Number.isInteger(e.seasonNumber)&&e.seasonNumber>0)}function aRr(t={},e={},r=null,n={seasonNumber:1,explicit:!1}){let s=Aft(t),i=Number(n?.seasonNumber||1),a=Number.isInteger(i)&&i>0?i:1,o=!!n?.explicit,c=nRr(e,r),u=iRr(r),l=d=>{let f=Number(d||0);return!Number.isInteger(f)||f<=0?[]:s.filter(p=>p.episodeCount>=f).sort((p,m)=>m.seasonNumber-p.seasonNumber||m.episodeCount-p.episodeCount)};if(!s.length)return{seasonNumber:a,reason:"no_tmdb_seasons",explicit:o,yearFan:c,episodeStats:u,seasons:[]};if(o&&s.some(d=>d.seasonNumber===a))return{seasonNumber:a,reason:"explicit_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s};if(c){let d=l(u.max);return d.length?{seasonNumber:d[0].seasonNumber,reason:"yearfan_episode_cap",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((p,m)=>m.episodeCount-p.episodeCount||m.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"yearfan_largest_season",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(u.max>=6&&u.count>=u.max){let d=s.filter(f=>f.episodeCount===u.max);if(d.length===1)return{seasonNumber:d[0].seasonNumber,reason:"episode_count_exact_unique",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(!o&&u.max>=100){let d=l(u.max);if(d.length)return{seasonNumber:d[0].seasonNumber,reason:"high_episode_secondary",explicit:o,yearFan:c,episodeStats:u,seasons:s}}return s.some(d=>d.seasonNumber===a)?{seasonNumber:a,reason:o?"explicit_hint":"default_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((f,p)=>f.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"fallback_first_available",explicit:o,yearFan:c,episodeStats:u,seasons:s}}async function p2(t,e,r={},n=null,s=0,i=null){if(e?.mediaType!=="tv")return{seasonNumber:null,seasonDetail:null,detail:null};let a=i||await UE(t,e);if(!a)return{seasonNumber:null,seasonDetail:null,detail:null};let o=ele(r,n),c=aRr(a,r,n,o),u=Number(c?.seasonNumber||0);if(!Number.isInteger(u)||u<=0)return{seasonNumber:null,seasonDetail:null,detail:a};let l=await rRr(t,e,u);return ep(t,"tmdb.match.season_resolve",Kn({spiderKey:String(e?.spiderKey||""),tmdbId:Number(e?.tmdbId||0)||void 0,lineIndex:Number.isInteger(Number(s))?Number(s):void 0,chosenSeason:u,reason:String(c?.reason||""),explicitHint:c?.explicit===!0?!0:void 0,yearFanHint:c?.yearFan===!0?!0:void 0,episodeMax:Number(c?.episodeStats?.max||0)||void 0,seasonCandidates:Array.isArray(c?.seasons)?c.seasons.map(d=>Kn({seasonNumber:Number(d?.seasonNumber||0)||void 0,episodeCount:Number(d?.episodeCount||0)||void 0,name:String(d?.name||"")})):void 0})),{seasonNumber:u,seasonDetail:l&&l?.season_number!=null?l:null,detail:a}}async function yft(t,e,r={},n=null){let s=await p2(t,e,r,null,0,n);return{seasonNumber:s.seasonNumber,seasonDetail:s.seasonDetail}}function oRr(t,e,r,n=null){let s=e?.mediaType==="movie"?"movie":"tv",i=s==="tv"?Aft(t).length:0,a=Number(n?.seasonNumber||0),o=n?.seasonDetail||null,c=s==="tv"&&Number.isInteger(a)&&a>0&&o?.season_number!=null,u=s==="movie"?t?.release_date:o?.air_date||t?.first_air_date,l=s==="movie"?Number(t?.runtime||0):Array.isArray(t?.episode_run_time)?t.episode_run_time.find(m=>Number(m)>0):0,d=U2r(t,s),f=KM(t),p=c?o?.poster_path||t?.backdrop_path||t?.poster_path||"":t?.backdrop_path||t?.poster_path||"";return Kn({Name:d.name||void 0,OriginalTitle:d.originalTitle||void 0,Overview:String(t?.overview||"").trim()||void 0,Taglines:t?.tagline?[String(t.tagline)]:void 0,Genres:$2r(t?.genres),GenreItems:F2r(t?.genres),People:G2r(t,r),ProviderIds:K2r(t),CommunityRating:ile(t?.vote_average),RunTimeTicks:W2r(l),OfficialRating:V2r(t,s),PremiereDate:ale(u),ProductionYear:hA(u)||void 0,SeasonCount:i>0?i:void 0,ChildCount:i>0?i:void 0,BackdropImageTags:p?["tmdb"]:void 0,ImageTags:f?{Logo:"tmdb"}:void 0})}function cRr(t,e){return Kn({Overview:String(t?.overview||"").trim()||void 0,PremiereDate:ale(t?.air_date),CommunityRating:ile(t?.vote_average)})}function uRr(t,e,r,n){return Kn({Name:String(e?.name||"").trim()||void 0,Overview:String(e?.overview||"").trim()||void 0,CommunityRating:ile(e?.vote_average),PremiereDate:ale(e?.air_date),BackdropImageTags:e?.still_path?["tmdb"]:void 0})}function xft(t,e,r=-1){let n=Array.isArray(t?.episodes)?t.episodes:[],s=n.find(i=>Number(i?.episode_number||0)===Number(e||0));return s||(r>=0&&r<n.length?n[r]:null)}function bft(t,e,r){let n=fA(t,Number(e||0)+1),s=String(t||"").trim(),i=Number.parseInt(s,10);if(/^\d{3,4}$/.test(s)&&Number.isInteger(i)&&r>0){let a=Math.floor(i/100),o=i%100;if(a===r&&o>0)return o}return n}async function Eft(t,e={}){if(!mA(t))return null;let r=await FE(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await p2(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),null);return!n?.seasonDetail||!n?.seasonNumber?null:{seasonNumber:n.seasonNumber,seasonDetail:n.seasonDetail}}function _ft(t,e={}){if(!t?.seasonDetail||!t?.seasonNumber)return null;let r=bft(e?.episode?.name,e?.episodeIndex,t.seasonNumber),n=xft(t.seasonDetail,r,Number(e?.episodeIndex||0));return n?uRr(t.seasonDetail,n,t.seasonNumber,r):null}async function lRr(t,e){let r=e?.payload||{},n=Xl(r),s=String(r.v||"");if(!n?.spiderKey||!s)return null;let i=await Pc(t,n,s).catch(()=>null),a=yA({vod_id:s,vod_name:String(r.n||""),vod_pic:String(r.u||""),vod_remarks:String(r.r||""),vod_year:String(r.y||"")},r),o=kc(i)||a;return yA(o,r),!String(o?.vod_name||"").trim()&&r?.n&&(o.vod_name=String(r.n||"").trim()),!String(o?.vod_pic||"").trim()&&r?.u&&(o.vod_pic=String(r.u||"").trim()),{spiderRef:n,vod:o,lines:go(o?.vod_play_from,o?.vod_play_url)}}function dRr(t,e="primary",r=null){let n=String(e||"primary").trim().toLowerCase(),s=r?.seasonDetail||null,i=String(s?.poster_path||"").trim();return n==="logo"?KM(t):["backdrop","thumb","banner"].includes(n)?i||t?.backdrop_path||t?.poster_path||"":i||t?.poster_path||t?.backdrop_path||""}function fRr(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?KM(t):["backdrop","thumb","banner"].includes(n)?t?.backdrop_path||e?.poster_path||t?.poster_path||"":e?.poster_path||t?.poster_path||t?.backdrop_path||""}function pRr(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?KM(t):["backdrop","thumb","banner"].includes(n)?e?.still_path||t?.backdrop_path||t?.poster_path||"":e?.still_path||t?.poster_path||t?.backdrop_path||""}async function Sft(t,e={}){try{if(!mA(t))return null;let r=await FE(t,e?.spiderRef,e?.vod,e?.options||{});if(!r)return null;let n=await UE(t,r);if(!n)return null;let s=await yft(t,r,e?.vod||{},n);return oRr(n,r,t,s)}catch{return null}}async function mRr(t,e={}){try{if(!mA(t))return null;let r=await FE(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await UE(t,r);if(!n)return null;let s=await p2(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),n);return s?.seasonDetail?cRr(s.seasonDetail,s.seasonNumber):null}catch{return null}}async function m2(t,e={}){try{let r=await Eft(t,e);return r?_ft(r,e):null}catch{return null}}async function VM(t,e={}){let r=Array.isArray(e?.episodes)?e.episodes:[];if(!r.length)return[];try{let n=await Eft(t,e);if(!n)return r.map(()=>null);let s=Number(e?.episodeOffset||0);return r.map((i,a)=>_ft(n,{episode:i,episodeIndex:s+a}))}catch{return r.map(()=>null)}}async function zM(t,e,r={}){return e==="vod"?Sft(t,r):e==="season"?mRr(t,r):e==="episode"?m2(t,r):null}async function vft(t,e,r="Primary"){try{if(!mA(t))return"";if(e?.type==="img")return String(e?.payload?.u||"");let n=await lRr(t,e);if(!n)return"";let{spiderRef:s,vod:i,lines:a}=n,o=String(r||"Primary").trim().toLowerCase();if(e?.type==="vod"){let c=await FE(t,s,i,{});if(!c)return"";let u=await UE(t,c);if(!u)return"";let l=await yft(t,c,i,u);return d2(t,dRr(u,o,l||null))}if(e?.type==="sea"){let c=await FE(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await UE(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),f=(await p2(t,c,i,a?.[l]||null,l,u))?.seasonDetail||null;return u&&f?d2(t,fRr(u,f,o)):""}if(e?.type==="ep"||e?.type==="media"){let c=await FE(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await UE(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),d=Number(e?.payload?.e||0),f=a?.[l],p=f?.episodes?.[d],m=await p2(t,c,i,f||null,l,u),h=Number(m?.seasonNumber||0),A=m?.seasonDetail||null;if(!A)return"";let g=bft(p?.name,d,h),b=xft(A,g,d);return b?d2(t,pRr(u,b,o)):""}return""}catch{return""}}var Rft=!0,hRr=new Set(["tgchannel","tgsou","pansou","panta"]),gRr=!1,ARr=8e3;function yRr(t){return hRr.has(String(t||""))}function xRr(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function bRr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function Ift(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function YM(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,Id:r,ServerId:e,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:r},BackdropImageTags:[],UserData:ss()}}function ERr(t,e,r,n){let s=String(e.type_name||e.type_id||""),i=wn("cat",{k:t.spiderKey,t:t.spiderType,c:String(e.type_id),...s?{n:s}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:s,Id:i,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:i},BackdropImageTags:[],UserData:ss()}}var Nft=new Set(["movie","series","video","episode","musicvideo"]);function Cft(t=""){return String(t||"").split(",").map(e=>e.trim().toLowerCase()).filter(Boolean)}function _Rr(t=[],e=!1){return e?!0:t.some(r=>Nft.has(r))}function SRr(t=[]){return t.some(e=>Nft.has(e))}function vRr(t=[],e=!1,r=""){return e?!1:t.includes("folder")?!0:/(^|,)isfolder(,|$)/i.test(String(r||""))}function IRr(t,e=[]){if(!e.length)return!0;let r=String(t?.Type||"").toLowerCase();return!!(e.includes(r)||e.includes("video")&&["movie","video","episode"].includes(r)||e.includes("folder")&&t?.IsFolder)}function g2(t=[],e=[]){return e.length?t.filter(r=>IRr(r,e)):t}function h2(t,e,r){return!r||!r.Id||(r.UserData=Uo(t,e,String(r.Id||""),r.UserData||{})),r}function Tft(t=[]){let e=[],r=t.filter(s=>Array.isArray(s)&&s.length),n=r.reduce((s,i)=>Math.max(s,i.length),0);for(let s=0;s<n;s+=1)r.forEach(i=>{i[s]&&e.push(i[s])});return e}function wft(t){let e=null,r=new Promise((n,s)=>{e=setTimeout(()=>s(new Error("timeout")),ARr)});return Promise.race([t,r]).finally(()=>{e&&clearTimeout(e)})}async function ZM(t,e,r,n,s,i,a,o=[],c=null){let u=Math.max(0,Number(n)||0),l=Math.max(1,Number(s)||1),d=await RE(t,e,r,1,{},c).catch(()=>null),f=Array.isArray(d?.list)?d.list:[],p=Number(d?.limit||0),m=Math.max(1,p||f.length||l),h=Math.floor(u/m)+1,A=u%m,g=[],b=h,y=!1,x=!1,v=Number(d?.pagecount||0),I=Number(d?.total||0),R=h+Math.max(3,Math.ceil((A+l)/m)+2);for(;g.length<l&&b<=R;){let M=b===1?d:await RE(t,e,r,b,{},c).catch(()=>null),D=Array.isArray(M?.list)?M.list:[],L=g2(D.map(ue=>t6(e,ue,i,a)),o),Z=Number(M?.pagecount||0);Z>0&&(v=Math.max(v,Z));let W=Number(M?.total||0);W>0&&(I=Math.max(I,W));let F=b===h?A:0,K=L.slice(F),j=l-g.length;g.push(...K.slice(0,j));let J=Math.min(K.length,j);y=F+J>=L.length;let se=L.length===0,oe=v>0&&b>=v&&y;if(se||oe){x=!0;break}if(g.length>=l)break;b+=1}let w=Number.isFinite(I)&&I>0&&I<9e3,N=g.length>=l;N&&x&&(N=!1),N&&v>0&&b>=v&&y&&(N=!1),N&&w&&u+g.length>=I&&(N=!1);let P=u+g.length+(N?1:0),B=P;return w&&(B=Math.max(I,u+g.length),N&&(B=Math.max(B,P))),{rows:g,totalRecordCount:B}}async function ole(t,e,r,n,s=[],i=0,a=16,o=null){let c=await zw(t,e,o).catch(()=>null),u=Array.isArray(c?.class)?c.class.filter(f=>String(f?.type_id||"").trim()):[];if(u.length){let f=String(u[0].type_id||"");if(f)return ZM(t,e,f,i,a,r,n,s,o)}let l=Array.isArray(c?.list)?c.list:[],d=g2(l.map(f=>t6(e,f,r,n)),s);return{rows:Ca(d,i,a),totalRecordCount:d.length}}function Oft(t={}){return String(t?.siteName||t?.spiderKey||"").trim()}function Pft(t={}){let e=String(t?.vod_tag||"").trim().toLowerCase(),r=t?.cate&&typeof t.cate=="object"?t.cate:null,n=String(r?.id||"").trim(),s=String(t?.vod_id||"").trim();return n||(e==="folder"&&s?s:"")}function CRr(t,e,r,n,s={}){let i=!!s?.includeSourcePrefix,a=Pft(e),o=String(e.vod_pic||"").trim(),c=String(e.vod_remarks||"").trim(),u=String(e.vod_year||"").trim(),l=Oft(t),d=String(e.vod_name||e?.cate?.name||a||"").trim(),f=d||"\u672A\u547D\u540D\u76EE\u5F55",p={k:t.spiderKey,t:t.spiderType,c:a,...t.apiBase?{a:t.apiBase}:{}};o&&(p.u=o),d&&(p.n=d),c&&(p.r=c),u&&(p.y=u);let m=wn("cat",p);return{Name:i&&l?`${l} \xB7 ${f}`:f,Id:m,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",Overview:c,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:m},BackdropImageTags:[],UserData:ss()}}function t6(t,e,r,n,s={}){if(Pft(e))return CRr(t,e,r,n,s);let i=!!s?.includeSourcePrefix,a=String(e.vod_pic||""),o=String(e.vod_remarks||"").trim(),c=String(e.vod_year||"").trim(),u=Oft(t),l=String(e.vod_name||"").trim(),d=l||"\u672A\u547D\u540D",f={k:t.spiderKey,t:t.spiderType,v:String(e.vod_id),...t.apiBase?{a:t.apiBase}:{}};a&&(f.u=a),l&&(f.n=l),o&&(f.r=o),c&&(f.y=c);let p=wn("vod",f),h=Rft?"Series":WE(e);return{Name:i&&u?`${u} \xB7 ${d}`:d,Id:p,ParentId:r,ServerId:n,IsFolder:h==="Series",Type:h,MediaType:"Video",Overview:String(e.vod_remarks||""),PrimaryImageAspectRatio:.6667,ImageTags:{Primary:p},BackdropImageTags:[],UserData:ss()}}async function TRr(t,e,r,n,s,i){let a=String(r?.vod_name||"").trim(),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;f<n.length;f+=1){let p=n[f],m={k:e.spiderKey,t:e.spiderType,v:String(r.vod_id),l:f,...e.apiBase?{a:e.apiBase}:{}};a&&(m.n=a),o&&(m.u=o),c&&(m.r=c),u&&(m.y=u);let h=wn("sea",m),A={Name:p.flag||`\u7EBF\u8DEF${f+1}`,Id:h,ParentId:s,ServerId:i,IsFolder:!0,Type:"Season",IndexNumber:f+1,SeriesId:s,SeriesName:a,ChildCount:p.episodes.length,ImageTags:{Primary:h},BackdropImageTags:[],UserData:ss()},b=`s${GM(r,p,f)}`,y=d.get(b);y===void 0&&(y=await zM(t,"season",{spiderRef:e,vod:r,line:p,lineIndex:f})||null,d.set(b,y)),y&&Object.assign(A,y),l.push(A)}return l}async function wRr(t,e,r,n,s,i,a,o){let c=s[i];if(!c)return[];let u=[],l=String(n?.vod_name||"").trim(),d=String(n?.vod_pic||"").trim(),f=String(n?.tmdbHintRemarks||n?.vod_remarks||"").trim(),p=String(n?.tmdbHintYear||n?.vod_year||"").trim(),m=Array.isArray(c?.episodes)?c.episodes:[],h=await VM(t,{spiderRef:r,vod:n,line:c,lineIndex:i,episodes:m,episodeOffset:0});for(let A=0;A<m.length;A+=1){let g=m[A],b=fA(g?.name,A+1),y={k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:i,e:A,f:c.flag,p:g.playId,...r.apiBase?{a:r.apiBase}:{}};l&&(y.n=l),d&&(y.u=d),f&&(y.r=f),p&&(y.y=p);let x=wn("ep",y),v=await ule(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:String(n.vod_id),l:i,e:A,f:c.flag,p:g.playId},String(c.flag||`\u7EBF\u8DEF${i+1}`));u.push({Name:g.name||`\u7B2C${A+1}\u96C6`,Id:x,ParentId:a,ServerId:o,IsFolder:!1,Type:"Episode",MediaType:"Video",SeriesName:String(n.vod_name||""),IndexNumber:b,ParentIndexNumber:i+1,CanPlay:!0,PrimaryImageAspectRatio:.6667,ImageTags:{Primary:x},BackdropImageTags:[],UserData:ss(),MediaSources:[v],...h[A]||{}})}return u}function qE(t={}){return{spiderKey:String(t.k||""),spiderType:Number(t.t||3),apiBase:String(t.a||"")}}function JM(t={}){return{Overview:"",Taglines:[],Genres:[],GenreItems:[],People:[],Tags:[],ProviderIds:{},ProductionLocations:[],CommunityRating:0,CriticRating:0,RunTimeTicks:0,OfficialRating:"",...t}}function e6(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function cle(t={},e=""){let r=go(t.vod_play_from,t.vod_play_url).filter(i=>Array.isArray(i?.episodes)&&i.episodes.length>0),n=r.reduce((i,a)=>Math.max(i,a.episodes.length),0),s=Rft?r.length>0:r.length>1||n>1||WE(t)==="Series";return{lines:r,isSeries:s}}function RRr(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function NRr(t,e,r="mkv"){return`${RRr(t)}/emby${kft(t,e,r,!0)}`}function kft(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function ule(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=yRr(r?.k)?"m3u8":"mkv",a=Ift(String(r?.p||""),i),o=NRr(e,s,a),c=kft(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(gRr&&xRr(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await am(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=um(m||{},String(n||""));h.url&&bRr(h.url)&&(a=Ift(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function ORr(t,e,r,n,s=[]){let i=String(n?.vod_id||"");return!r?.spiderKey||!i?[]:(await Promise.all(s.map(async(o,c)=>{let u=o?.episodes?.[0];return u?.playId?ule(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:i,l:c,e:0,f:String(o.flag||""),p:String(u.playId)},String(o.flag||`\u7EBF\u8DEF${c+1}`)):null}))).filter(Boolean)}function PRr(t={},e={}){let r=String(t?.vod_name||"").trim();if(r)return r;let n=String(e?.n||"").trim();if(n)return n;let s=go(t?.vod_play_from,t?.vod_play_url),i=String(s?.[0]?.episodes?.[0]?.name||"").trim();if(i)return i;let a=String(t?.vod_remarks||"").trim();return a||"\u672A\u547D\u540D"}async function XM(t,e,r=null){let n=qE(e);if(!n.spiderKey||!e.v)return null;let s=await Pc(t,n,String(e.v),r).catch(()=>null),i=kc(s);if(!i)return null;yA(i,e),!String(i?.vod_pic||"").trim()&&e?.u&&(i.vod_pic=String(e.u||"").trim()),i.vod_name=PRr(i,e);let{lines:a,isSeries:o}=cle(i,n.spiderKey);return e6(t,"vod.source",{spiderKey:n.spiderKey,spiderType:n.spiderType,vodId:String(i.vod_id||e.v||""),vodName:String(i.vod_name||""),vodRemarks:String(i.vod_remarks||""),guessVideoType:WE(i),isSeriesByRule:o,lineCount:a.length,episodeCountPerLine:a.map(c=>c.episodes.length).slice(0,10)}),{spiderRef:n,vod:i}}async function lle(t){t.get("/:userId",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext,r=$s();return{Name:e.user.name,ServerId:e.config.serverId,Id:e.user.id,LastActivityDate:r,LastLoginDate:r}}),t.get("/:userId/Views",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Jl(t);return Ft(r.map(n=>YM(n,e)))}),t.get("/:userId/Items/Resume",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=Number(Xr(r,["StartIndex","startindex"],0)),s=Pu(Xr(r,["Limit","limit"],50),50),i=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),a=Vdt(t,i,t.embyContext.config.serverId);return Ft(Ca(a,n,s),a.length)}),t.get("/:userId/Items/Latest",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Xr(r,["ParentId","parentid"],"")),a=Pu(Xr(r,["Limit","limit"],16),16),o=Cft(Xr(r,["IncludeItemTypes","includeitemtypes"],"")),c=String(Xr(r,["MediaTypes","mediatypes"],"")).toLowerCase();!o.length&&c.includes("video")&&(o=["movie","series","video"]);let u=await Jl(t),l=Fs(i);if(l?.type==="lib"){let h=qE(l.payload),A=aA(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await ole(t,A,i,n,o,0,a,e);return Us(t,s,g.rows)}if(l?.type==="cat"){let h=qE(l.payload),A=aA(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await ZM(t,A,String(l.payload.c||""),0,a,i,n,o,e);return Us(t,s,g.rows)}let d=Math.min(Math.max(a,6),20),p=(await Promise.allSettled(u.map(h=>wft(ole(t,h,YM(h,n).Id,n,o,0,d,e))))).filter(h=>h.status==="fulfilled").map(h=>h.value.rows),m=Tft(p).slice(0,a);return Us(t,s,m)}),t.get("/:userId/Items",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Xr(r,["SortBy","sortby"],""));if(i.includes("IsFavoriteOrLiked"))return Ft([]);let a=String(Xr(r,["ParentId","parentid"],"")),o=String(Xr(r,["SearchTerm","searchterm","NameStartsWith","namestartswith"],"")).trim(),c=Number(Xr(r,["StartIndex","startindex"],0)),u=Pu(Xr(r,["Limit","limit"],60),60),l=Number(Xr(r,["Page","page"],Math.floor(Math.max(0,c)/u)+1))||1,d=Cft(Xr(r,["IncludeItemTypes","includeitemtypes"],"")),f=String(Xr(r,["Recursive","recursive"],"")).trim().toLowerCase()==="true",p=String(Xr(r,["MediaTypes","mediatypes"],"")).toLowerCase(),m=await Jl(t);if(o){let g=t.embyContext?.config?.searchSourcePrefix!==!1,b=[];await Promise.allSettled(m.map(async x=>{try{let v=await Promise.race([mlt(t,x,o,l),new Promise((R,w)=>setTimeout(()=>w(new Error("timeout")),8e3))]);(Array.isArray(v?.list)?v.list:[]).forEach(R=>b.push(t6(x,R,"0",n,{includeSourcePrefix:g})))}catch{}}));let y=Us(t,s,g2(b,d));return Ft(Ca(y,c,u),y.length)}if(!a&&f&&(SRr(d)||p.includes("video"))){let A=d.length?d:["movie","series","video"],g=Math.min(Math.max(u,6),20),y=(await Promise.allSettled(m.map(v=>wft(ole(t,v,YM(v,n).Id,n,A,0,g,e))))).filter(v=>v.status==="fulfilled").map(v=>v.value.rows),x=Us(t,s,Tft(y));return Ft(Ca(x,c,u),x.length)}if(!a){let A=Us(t,s,m.map(g=>YM(g,n)));return Ft(Ca(A,c,u),A.length)}let h=Fs(a);if(!h)return Ft([]);if(h.type==="lib"){let A=qE(h.payload),g=aA(m,A.spiderKey,A.spiderType,A.apiBase)||{siteName:A.spiderKey,spiderKey:A.spiderKey,spiderType:A.spiderType,apiBase:A.apiBase},b=await zw(t,g,e).catch(()=>null),y=Array.isArray(b?.class)?b.class.filter(R=>String(R?.type_id||"").trim()):[];if(y.length&&(vRr(d,f,i)||!_Rr(d,f))){let R=y.map(N=>ERr(g,N,a,n)),w=Us(t,s,g2(R,d));return Ft(Ca(w,c,u),w.length)}if(y.length){let R=String(y[0].type_id||"");if(R){let w=await ZM(t,g,R,c,u,a,n,d,e);return Us(t,s,w.rows),Ft(w.rows,w.totalRecordCount)}}let v=(Array.isArray(b?.list)?b.list:[]).map(R=>t6(g,R,a,n)),I=Us(t,s,g2(v,d));return Ft(Ca(I,c,u),I.length)}if(h.type==="cat"){let A=qE(h.payload),g=aA(m,A.spiderKey,A.spiderType,A.apiBase)||{siteName:A.spiderKey,spiderKey:A.spiderKey,spiderType:A.spiderType,apiBase:A.apiBase},b=String(h.payload.c||""),y=await ZM(t,g,b,c,u,a,n,d,e);return Us(t,s,y.rows),Ft(y.rows,y.totalRecordCount)}if(h.type==="vod"){let A=await XM(t,h.payload,e);if(!A)return Ft([]);let{spiderRef:g,vod:b}=A,{lines:y,isSeries:x}=cle(b,g.spiderKey);if(!y.length)return Ft([]);if(x){let v=await TRr(t,g,b,y,a,n);return Us(t,s,v),Ft(Ca(v,c,u),v.length)}return Ft([])}if(h.type==="sea"){let A=await XM(t,h.payload,e);if(!A)return Ft([]);let{spiderRef:g,vod:b}=A,y=go(b.vod_play_from,b.vod_play_url);if(!y.length)return Ft([]);let x=Number(h.payload.l||0),v=await wRr(t,e,g,b,y,x,a,n);return Us(t,s,v),Ft(Ca(v,c,u),v.length)}return Ft([])}),t.get("/:userId/Items/:itemId",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=Fs(e.params.itemId);if(!n)return r.code(404),{};let s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);if(n.type==="ep"){let i=await XM(t,n.payload,e),a=String(i?.vod?.vod_name||"\u64AD\u653E"),o=Number(n?.payload?.l||0),c=Number(n?.payload?.e||0),u=go(i?.vod?.vod_play_from,i?.vod?.vod_play_url),l=u?.[o]?.episodes?.[c]?.name||"",d=u?.[o]||null,f=d?.episodes?.[c]||null,p=fA(l,c+1),m=wn("vod",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),h=wn("sea",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),l:o,...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),A=n.payload?.k&&n.payload?.v&&n.payload?.f&&n.payload?.p?[await ule(t,e,{k:String(n.payload.k||""),t:Number(n.payload.t||3),v:String(n.payload.v||""),l:Number(n.payload.l||0),e:Number(n.payload.e||0),f:String(n.payload.f||""),p:String(n.payload.p||""),...n.payload.a?{a:String(n.payload.a||"")}:{}},String(n.payload.f||"\u9ED8\u8BA4"))]:[];return e6(t,"item.detail.ep",{itemId:e.params.itemId,sourceType:n.type,vodName:String(i?.vod?.vod_name||""),mediaSourceCount:A.length,canPlay:!0}),h2(t,s,{Name:a,Id:e.params.itemId,Type:"Episode",IsFolder:!1,MediaType:"Video",CanPlay:!0,SeriesId:m,SeriesName:a,SeasonId:h,SeasonName:String(n?.payload?.f||`\u7EBF\u8DEF${o+1}`),IndexNumber:p,ParentIndexNumber:o+1,DateCreated:$s(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Uo(t,s,e.params.itemId),...JM(),...f?await m2(t,{spiderRef:qE(n.payload),vod:i?.vod||{},line:d,lineIndex:o,episode:f,episodeIndex:c})||{}:{},MediaSources:A})}if(n.type==="sea"){let i=Number(n?.payload?.l||0);return h2(t,s,{Name:`\u7EBF\u8DEF${i+1}`,Id:e.params.itemId,Type:"Season",IsFolder:!0,IndexNumber:i+1,DateCreated:$s(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Uo(t,s,e.params.itemId),...JM()})}if(n.type==="cat"){let i=String(n.payload?.n||n.payload?.c||n.payload?.k||"\u76EE\u5F55");return h2(t,s,{Name:i,Id:e.params.itemId,Type:"Folder",IsFolder:!0,ServerId:t.embyContext.config.serverId,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Uo(t,s,e.params.itemId),...JM({Overview:String(n.payload?.r||"")})})}if(n.type==="vod"){let i=gft(t,n.payload).catch(()=>null),a=await XM(t,n.payload,e);if(!a)return r.code(404),{};let{lines:o,isSeries:c}=cle(a.vod,a.spiderRef.spiderKey),u=c?"Series":"Movie",[l,d]=await Promise.all([ORr(t,e,a.spiderRef,a.vod,o),i]),f=d&&typeof d=="object"?{...d}:{},p={Primary:e.params.itemId,...f.ImageTags&&typeof f.ImageTags=="object"?f.ImageTags:{}};delete f.ImageTags;let m=c?[]:l,h=c?l.length>0:m.length>0;return e6(t,"item.detail.vod",{itemId:e.params.itemId,spiderKey:a.spiderRef.spiderKey,spiderType:a.spiderRef.spiderType,vodId:String(a.vod.vod_id||""),vodName:String(a.vod.vod_name||""),type:u,isFolder:c,canPlay:h,lineCount:o.length,mediaSourceCount:m.length,firstMediaSource:m[0]?{name:m[0].Name,path:m[0].Path,id:m[0].Id}:null}),h2(t,s,{Name:String(a.vod.vod_name||""),Id:e.params.itemId,IsFolder:c,Type:u,MediaType:"Video",CollectionType:c?"tvshows":void 0,CanPlay:h,DateCreated:$s(),PrimaryImageAspectRatio:.6667,ProductionYear:Number(a.vod.vod_year||0)||void 0,ImageTags:p,BackdropImageTags:[],UserData:Uo(t,s,e.params.itemId),ChildCount:c?o.length>1?o.length:o[0]?.episodes?.length||0:void 0,SeasonCount:c?o.length:void 0,RecursiveItemCount:c?o.reduce((A,g)=>A+(g?.episodes?.length||0),0):void 0,...JM({Overview:String(a.vod.vod_content||"")}),...f,MediaSources:m})}return h2(t,s,{Name:String(n.payload?.k||""),Id:e.params.itemId,IsFolder:!0,Type:"Folder",ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Uo(t,s,e.params.itemId)})}),t.get("/:userId/Items/:itemId/LocalTrailers",{preHandler:t.embyRequireAuth},async()=>[]),t.get("/:userId/Items/:itemId/SpecialFeatures",{preHandler:t.embyRequireAuth},async()=>[]),t.all("/:userId/Items/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=new URLSearchParams,s=e.query||{};Object.keys(s).forEach(d=>{let f=s[d];f!=null&&n.set(d,String(f))});let i=n.toString(),a=`/emby/Items/${encodeURIComponent(String(e.params.itemId||""))}/PlaybackInfo${i?`?${i}`:""}`;e6(t,"playback.alias",{from:e.raw.url,to:a,method:e.method});let o={};e.embyToken&&(o["x-emby-token"]=e.embyToken);let c=e.method==="POST"?e.body||{}:void 0,u=await t.inject({method:e.method,url:a,headers:o,payload:c});r.code(u.statusCode);let l=u.headers?.["content-type"];if(l&&r.header("content-type",l),!u.body)return"";if(String(l||"").includes("application/json"))try{return JSON.parse(u.body)}catch{return u.body}return u.body}),t.post("/:userId/Items/:itemId/HideFromResume",{preHandler:t.embyRequireAuth},async e=>{let r=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return Kdt(t,r,String(e.params.itemId||""))}),t.all("/:userId/FavoriteItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return Gdt(t,n,String(e.params.itemId||""),e.method==="POST")}),t.all("/:userId/PlayedItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return Qdt(t,n,String(e.params.itemId||""),e.method==="POST")})}var kRr=30*60*1e3,jE=16/9,A2=960,DRr=1920,BRr=360,LRr=9,Fft=24,MRr=12e3,ple=9e3,Dft=5*1024*1024,Bft=80,Lft=24,Mft=[["#556b2f","#bed98a"],["#5b3a82","#b37bd9"],["#235f73","#8fd2dc"],["#7a3341","#d98498"],["#2f5c43","#9ac78d"],["#6f4a2f","#d39a5d"],["#354f7d","#91aee6"],["#73395f","#cb87af"]],dle=null;function fle(t=""){return String(t||"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}function Uft(t,e,r){return Math.max(e,Math.min(r,t))}function WRr(t=""){let e=2166136261,r=String(t||"");for(let n=0;n<r.length;n+=1)e^=r.charCodeAt(n),e=Math.imul(e,16777619);return e>>>0}function qft(t){return Uft(Math.round(Number(t)||0),0,255)}function Wft(t=[]){return`#${t.slice(0,3).map(e=>qft(e).toString(16).padStart(2,"0")).join("")}`}function $ft(t=[],e=[],r=.5){return[0,1,2].map(n=>qft((t[n]||0)*(1-r)+(e[n]||0)*r))}function $Rr(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}function mle(t,e,r=null){let n=null,s=new Promise(i=>{n=setTimeout(()=>i(r),e)});return Promise.race([t,s]).finally(()=>{n&&clearTimeout(n)})}function y2(t=[]){let e=new Set,r=[];for(let n of t){let s=String(n||"").trim();!s||e.has(s)||(e.add(s),r.push(s))}return r}function jft(t=""){let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return["http:","https:"].includes(r.protocol)?r.toString():""}catch{return""}}function FRr(t="",e="\u5A92\u4F53\u5E93"){return String(t||"").trim().replace(/^(?:「[^」]*」\s*)+/,"").trim()||e}function hle(t=[]){return y2((Array.isArray(t)?t:[]).map(e=>jft(e?.vod_pic)).filter(Boolean))}async function URr(t,e={}){let r=$Rr(e);if(!r.spiderKey)return null;let n=await Jl(t).catch(()=>[]);return aA(n,r.spiderKey,r.spiderType,r.apiBase)||{siteName:String(e.n||r.spiderKey),spiderKey:r.spiderKey,spiderType:r.spiderType,apiBase:r.apiBase}}async function qRr(t,e,r){let n=await mle(zw(t,e,r).catch(()=>null),ple,null),s=hle(n?.list||[]);if(s.length>=Fft)return s;let i=Array.isArray(n?.class)?n.class.filter(c=>String(c?.type_id||"").trim()):[];if(!i.length)return s;let a=i.slice(0,5).map(c=>mle(RE(t,e,String(c.type_id||""),1,{},r).then(u=>hle(u?.list||[])).catch(()=>[]),ple,[]));return(await Promise.allSettled(a)).forEach(c=>{c.status==="fulfilled"&&s.push(...c.value)}),y2(s)}async function jRr(t,e,r={},n){let s=[],i=jft(r.u);i&&s.push(i);let a=String(r.c||"").trim();if(!a)return y2(s);let o=await mle(RE(t,e,a,1,{},n).catch(()=>null),ple,null);return s.push(...hle(o?.list||[])),y2(s)}async function HRr(t,e,r){let n=await URr(t,e?.payload||{});if(!n)return{spider:null,posterUrls:[]};let s=[];return e?.type==="lib"?s=await qRr(t,n,r):e?.type==="cat"&&(s=await jRr(t,n,e.payload||{},r)),{spider:n,posterUrls:s}}function QRr(t,e=0){let r=t?.payload||{},n=FRr(r.n||r.name||r.k,"\u5A92\u4F53\u5E93"),s=t?.type==="cat"?"FOLDER":"LIBRARY";return{title:n,subtitle:s,countText:e>0?`${e} IMAGES`:"MYCATPAW"}}function GRr(t={}){let e=Number(t.Width||t.width||t.MaxWidth||t.maxWidth||0),r=Number(t.Height||t.height||t.MaxHeight||t.maxHeight||0),n=A2,s=Math.round(A2/jE);if(e>0&&r>0){let i=Math.min(e/A2,r/(A2/jE));n=Math.round(A2*i),s=Math.round(n/jE)}else e>0?(n=Math.round(e),s=Math.round(n/jE)):r>0&&(s=Math.round(r),n=Math.round(s*jE));return n=Uft(n,BRr,DRr),s=Math.round(n/jE),{width:n,height:s}}async function KRr(){return dle||(dle=import("sharp").then(t=>t.default||t).catch(()=>null)),dle}function r6(t=""){return Mft[WRr(t)%Mft.length]}function VRr(t,e=3){let r=Math.max(3,Number(e)||3),n=Math.floor(t.length/r);if(!n)return!0;let s=0,i=0,a=0,o=0,c=0,u=0,l=0,d=0,f=0,p=new Set;for(let v=0;v<t.length;v+=r){let I=t[v]||0,R=t[v+1]||0,w=t[v+2]||0,N=I*.299+R*.587+w*.114,P=Math.max(I,R,w),B=Math.min(I,R,w);s+=I,i+=R,a+=w,o+=I*I,c+=R*R,u+=w*w,l+=N,d+=N*N,f+=P-B,p.add(`${I>>4}:${R>>4}:${w>>4}`)}let m=s/n,h=i/n,A=a/n,g=l/n,b=Math.sqrt(Math.max(0,d/n-g*g)),y=(Math.sqrt(Math.max(0,o/n-m*m))+Math.sqrt(Math.max(0,c/n-h*h))+Math.sqrt(Math.max(0,u/n-A*A)))/3,x=f/n;return b<8&&y<8||(g>242||g<16)&&b<12&&y<12||x<7&&b<10||p.size<=3||p.size<=6&&b<20&&x<12}async function zRr(t,e){try{let r=await t(e).metadata();if(!r?.width||!r?.height||r.width<Bft||r.height<Bft)return!1;let{data:n,info:s}=await t(e).resize(Lft,Lft,{fit:"cover"}).removeAlpha().raw().toBuffer({resolveWithObject:!0});return!VRr(n,s?.channels||3)}catch{return!1}}async function YRr(t,e){try{return await t(e).rotate().resize({width:420,height:620,fit:"cover",withoutEnlargement:!0}).flatten({background:"#f2f4f7"}).jpeg({quality:82,mozjpeg:!0}).toBuffer()}catch{return null}}async function JRr(t,e=null){try{let r=new URL(t),n=await Ae.get(r.toString(),{responseType:"arraybuffer",timeout:MRr,maxContentLength:Dft,headers:{Accept:"image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8",Referer:`${r.protocol}//${r.host}/`,"User-Agent":"Mozilla/5.0 EmbyDynamicCover/1.0"},validateStatus:o=>o>=200&&o<300}),s=String(n.headers?.["content-type"]||"").split(";")[0].trim().toLowerCase(),i=s&&s.startsWith("image/")?s:"image/jpeg",a=Buffer.from(n.data||[]);if(!a.length||a.length>Dft)return null;if(e){if(!await zRr(e,a))return null;let o=await YRr(e,a);return o?.length?{dataUri:`data:image/jpeg;base64,${o.toString("base64")}`,buffer:o}:null}return{dataUri:`data:${i};base64,${a.toString("base64")}`,buffer:a}}catch{return null}}async function XRr(t=[],e=null){let n=y2(t).slice(0,Fft).map(a=>JRr(a,e));return(await Promise.allSettled(n)).filter(a=>a.status==="fulfilled"&&a.value?.dataUri).map(a=>a.value).slice(0,LRr)}async function ZRr(t,e=[],r=""){let n=e.find(s=>s?.buffer);if(!n)return r6(r);try{let i=((await t(n.buffer).resize(24,24,{fit:"cover"}).stats()).channels||[]).slice(0,3).map(c=>c.mean||0),a=$ft(i,[0,0,0],.38),o=$ft(i,[255,255,255],.48);return[Wft(a),Wft(o)]}catch{return r6(r)}}function eNr(t=""){let e=String(t||"\u5A92\u4F53\u5E93").trim()||"\u5A92\u4F53\u5E93";if(e.length<=8)return[e];if(/[\u4e00-\u9fff]/.test(e)){let i=e.slice(0,8),a=e.slice(8,16);return a?[i,a]:[i]}let r=e.split(/\s+/).filter(Boolean);if(r.length<=1)return[e.slice(0,16)];let n=[],s="";return r.forEach(i=>{let a=s?`${s} ${i}`:i;if(a.length>12&&s){n.push(s),s=i;return}s=a}),s&&n.push(s),n.slice(0,2)}function Hft(t=[],e,r){let n=e*.16,s=n*1.48,i=e*.025,a=e*.52,o=-r*.16,c=3;return[2,0,1,3,4,5,8,6,7].map((l,d)=>{let f=Math.floor(d/c),p=d%c,m=a+f*(n+i),h=o+p*(s+i),A=`posterClip${d}`,g=t[l%t.length];return{x:m,y:h,w:n,h:s,r:e*.015,clipId:A,href:g?.dataUri||""}})}function tNr(t,e,r=""){let n=Hft([{dataUri:""}],t,e),s=r6(r);return n.map((i,a)=>{let o=.18+a%3*.08;return`
<rect x="${i.x.toFixed(1)}" y="${i.y.toFixed(1)}"
width="${i.w.toFixed(1)}" height="${i.h.toFixed(1)}"
rx="${i.r.toFixed(1)}" fill="${s[a%s.length]}" opacity="${o.toFixed(2)}"/>
<path d="M ${i.x+i.w*.22} ${i.y+i.h*.42}
h ${i.w*.56} v ${i.h*.22} h ${-i.w*.56} z"
fill="rgba(255,255,255,0.28)"/>
`}).join("")}function rNr({width:t,height:e,title:r,subtitle:n,countText:s,posterImages:i,palette:a}){let o=eNr(r),c=o.some(h=>h.length>8)?t*.082:t*.105,u=t*.034,l=c*1.08,d=i.length?Hft(i,t,e):[],f=d.map(h=>`
<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(""),p=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(""),m=o.map((h,A)=>`
<text x="${(t*.07).toFixed(1)}" y="${(e*.47+A*l).toFixed(1)}"
class="title">${fle(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: 800;
font-size: ${c.toFixed(1)}px;
}
.subtitle {
fill: rgba(255,255,255,0.88);
font-family: Arial, Helvetica, sans-serif;
font-weight: 500;
font-size: ${u.toFixed(1)}px;
}
.meta {
fill: rgba(255,255,255,0.52);
font-family: 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?p:tNr(t,e,r)}
</g>
<rect x="${(t*.067).toFixed(1)}" y="${(e*.58).toFixed(1)}"
width="${(t*.014).toFixed(1)}" height="${(e*.054).toFixed(1)}"
fill="rgba(255,255,255,0.32)"/>
${m}
<text x="${(t*.096).toFixed(1)}" y="${(e*.63).toFixed(1)}" class="subtitle">${fle(n)}</text>
<text x="${(t*.07).toFixed(1)}" y="${(e*.86).toFixed(1)}" class="meta">${fle(s)}</text>
</svg>`}function nNr(t=""){return String(t||"Primary").trim().toLowerCase()==="primary"}function gle(t,e="Primary"){return nNr(e)&&["lib","cat"].includes(t?.type)}async function Qft(t,e,r){if(!gle(e,r?.params?.imageType||"Primary"))return null;let{width:n,height:s}=GRr(r?.query||{}),i=im(["emby","dynamic-cover-v2",e.type,JSON.stringify(e.payload||{}),n,s]);return Jf(t.embyContext?.cache,i,kRr,async()=>{let a=await HRr(t,e,r),o=await KRr(),c=o?await XRr(a.posterUrls,o):[],u=QRr(e,o?c.length:a.posterUrls.length),l=o?await ZRr(o,c,u.title):r6(u.title),d=rNr({width:n,height:s,title:u.title,subtitle:u.subtitle,countText:u.countText,posterImages:c,palette:l});return o?{buffer:await o(Buffer.from(d,"utf8"),{density:96}).png({compressionLevel:8,adaptiveFiltering:!0}).toBuffer(),contentType:"image/png"}:{buffer:Buffer.from(d,"utf8"),contentType:"image/svg+xml; charset=utf-8"}})}var sNr=!1;function iNr(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}async function Gft(t,e={}){if(e.u)return String(e.u);let r=Xl(e),n=String(e.v||"");if(!r.spiderKey||!n)return"";let s=await Pc(t,r,n).catch(()=>null),i=kc(s);return String(i?.vod_pic||"")}function aNr(t,e="Primary",r={}){let n=String(e||"Primary").trim().toLowerCase();return String(r?.tag||r?.Tag||"").trim().toLowerCase()==="tmdb"||t?.type!=="vod"?!0:["backdrop","thumb","banner","logo"].includes(n)}async function oNr(t,e,r="Primary",n={}){if(e?.type==="vod"&&!aNr(e,r,n)){let i=await Gft(t,e?.payload||{});if(i)return i}let s=await vft(t,e,r).catch(()=>"");return s||(e?.type==="img"?String(e?.payload?.u||""):Gft(t,e?.payload||{}))}function Kft(t){if(!t?.payload||typeof t.payload!="object")return null;let e=t.payload;return t.type==="media"||t.type==="ep"?{k:String(e.k||""),t:Number(e.t||3),v:String(e.v||""),l:Number(e.l||0),e:Number(e.e||0),f:String(e.f||""),p:String(e.p||""),a:String(e.a||"")}:null}async function cNr(t,e,r=""){let n=Kft(e);if(n)return n;if(r&&["vod","sea"].includes(e.type)){let p=c2(t,r,wn(e.type,e.payload||{})),m=Kft(p?.decoded);if(m?.k&&m?.f&&m?.p)return m}let s=e.payload||{};if(!["vod","sea"].includes(e.type))return null;let i=Xl(s),a=String(s.v||"");if(!i.spiderKey||!a)return null;let o=await Pc(t,i,a).catch(()=>null),c=kc(o);if(!c)return null;let u=go(c.vod_play_from,c.vod_play_url);if(!u.length)return null;let l=e.type==="sea"?Number(s.l||0):0,d=u[l]||u[0];if(!d||!d.episodes.length)return null;let f=d.episodes[0];return{k:i.spiderKey,t:i.spiderType,v:a,l,e:0,f:String(d.flag||""),p:String(f.playId||""),...i.apiBase?{a:i.apiBase}:{}}}function uNr(t=""){let e=String(t||"").trim();if(!e)return"mkv";if(/\.m3u8($|\?)/i.test(e))return"m3u8";try{let n=new URL(e).pathname.match(/\.([a-z0-9]{2,6})$/i);if(n?.[1])return n[1].toLowerCase()}catch{}return"mkv"}function lNr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}async function dNr(t,e,r){let n={spiderKey:e.k,spiderType:Number(e.t||3),apiBase:String(e.a||"")},s=await am(t,n,e.f,e.p,r).catch(()=>null),i=um(s||{},""),a=String(i.url||"");return{container:uNr(a),requiredHeaders:i.header||{},directUrl:a,useDirectUrl:sNr&&lNr(a)}}function fNr(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function pNr(t="mkv"){return/^[a-z0-9]{2,8}$/i.test(String(t||""))?String(t).toLowerCase():"mkv"}function Vft(t,e,r="mkv",n=!1){let s=pNr(r),i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}function mNr(t,e,r="mkv",n=!0){return`${fNr(t)}/emby${Vft(t,e,r,n)}`}async function Ale(t){t.get("/",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=e.query||{},s=String(n.userid||n.UserId||e.embyUser?.Id||t.embyContext.user.id),i=new URLSearchParams;Object.keys(n).forEach(c=>{if(c==="userid"||c==="UserId")return;let u=n[c];u!=null&&i.set(c,String(u))});let a=`/emby/Users/${encodeURIComponent(s)}/Items`,o=i.toString();o&&(a+=`?${o}`),r.redirect(301,a)}),t.get("/:itemId/Images/:imageType",async(e,r)=>{let n=Fs(e.params.itemId);if(!n)return r.code(404),"";if(gle(n,e.params.imageType||"Primary")){let i=await Qft(t,n,e).catch(()=>null);if(i?.buffer?.length)return r.header("Content-Type",i.contentType||"image/png"),r.header("Cache-Control","public, max-age=1800"),r.header("Content-Length",String(i.buffer.length)),r.send(i.buffer)}let s=await oNr(t,n,e.params.imageType||"Primary",e.query||{});if(!s)return r.code(404),"";try{let i=new URL(s);if(!["http:","https:"].includes(i.protocol))return r.code(403),""}catch{return r.code(404),""}try{let i=await Ae.get(s,{responseType:"stream",timeout:1e4,headers:{"User-Agent":"Mozilla/5.0 EmbyImageProxy"}}),a=i.headers?.["content-type"]||"image/jpeg";return r.header("Content-Type",a),r.header("Cache-Control","public, max-age=86400"),i.headers?.["content-length"]&&r.header("Content-Length",i.headers["content-length"]),r.send(i.data)}catch{return r.code(502),""}}),t.all("/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=e.params.itemId,s=Fs(n);if(!s)return r.code(404),{};let i=e.embyUser?.Id||t.embyContext.user.id,a=await cNr(t,s,i);if(!a||!a.k||!a.f||!a.p)return r.code(404),{};let o=wn("media",{k:String(a.k||""),t:Number(a.t||3),v:String(a.v||""),l:Number(a.l||0),e:Number(a.e||0),f:String(a.f||""),...a.a?{a:String(a.a||"")}:{}}),c=await dNr(t,a,e),u=mNr(e,o,c.container,!0),l=c.useDirectUrl&&c.directUrl?c.directUrl:u,d=c.useDirectUrl&&c.directUrl?c.directUrl:Vft(e,o,c.container,!0),f=!1,p=c.useDirectUrl?c.requiredHeaders||{}:{};return iNr(t,"playback.info",{itemId:n,mediaId:o,spiderKey:a.k,lineFlag:a.f,container:c.container,useDirectUrl:c.useDirectUrl,streamUrl:l,directStreamUrl:d,hasRequiredHeaders:Object.keys(p).length>0,addApiKeyToDirectStreamUrl:f}),{MediaSources:[{Id:o,Name:"\u9ED8\u8BA4",Type:"Default",Protocol:"Http",Container:c.container,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,RequiresOpening:!1,RequiresClosing:!1,RequiresLooping:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:p,Path:l,DirectStreamUrl:d,AddApiKeyToDirectStreamUrl:f,ItemId:o}],PlaySessionId:n}}),t.get("/:itemId/Similar",{preHandler:t.embyRequireAuth},async()=>Ft([])),t.get("/Counts",{preHandler:t.embyRequireAuth},async()=>({MovieCount:0,SeriesCount:0,EpisodeCount:0,GameCount:0,ArtistCount:0,ProgramCount:0,GameSystemCount:0,TrailerCount:0,SongCount:0,AlbumCount:0,MusicVideoCount:0,BoxSetCount:0,BookCount:0,ItemCount:0}))}var hNr=new Set(["tgchannel","tgsou","pansou","panta"]);function yle(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function gNr(t=""){let e=String(t||""),r=[e,yle(e),yle(yle(e))];for(let n of r){let s=Fs(n);if(s)return s}return null}function ANr(t={}){return{k:String(t.k||""),t:Number(t.t||3),v:String(t.v||""),l:Number(t.l||0),e:Number(t.e||0),f:String(t.f||""),p:String(t.p||""),a:String(t.a||"")}}async function yNr(t,e={}){let r=ANr(e);if(!r.k||!r.v)return null;if(r.f&&r.p)return r;let n={spiderKey:r.k,spiderType:r.t,apiBase:r.a},s=await Pc(t,n,r.v).catch(()=>null),i=kc(s);if(!i)return null;let a=go(i.vod_play_from,i.vod_play_url).filter(f=>Array.isArray(f?.episodes)&&f.episodes.length>0);if(!a.length)return null;let o=Math.max(0,Math.min(a.length-1,Number(r.l||0))),c=a[o],u=Array.isArray(c?.episodes)?c.episodes:[];if(!u.length)return null;let l=Math.max(0,Math.min(u.length-1,Number(r.e||0))),d=u[l];return d?.playId?{...r,l:o,e:l,f:r.f||String(c.flag||""),p:String(d.playId||"")}:null}async function xNr(t,e){if(!e)return null;if(e.type==="media"||e.type==="ep")return yNr(t,e.payload||{});if(!["vod","sea"].includes(e.type))return null;let r=e.payload||{},n=Xl(r),s=String(r.v||"");if(!n.spiderKey||!s)return null;let i=await Pc(t,n,s).catch(()=>null),a=kc(i);if(!a)return null;let o=go(a.vod_play_from,a.vod_play_url);if(!o.length)return null;let c=e.type==="sea"?Number(r.l||0):0,u=o[c]||o[0];if(!u||!u.episodes.length)return null;let l=u.episodes[0];return{k:n.spiderKey,t:n.spiderType,v:s,l:c,e:0,f:String(u.flag||""),p:String(l.playId||""),...n.apiBase?{a:n.apiBase}:{}}}function bNr(t,e={}){let r={"User-Agent":t.headers?.["user-agent"]||"Mozilla/5.0 EmbyVideoProxy"};return t.headers?.range&&(r.Range=t.headers.range),e&&typeof e=="object"&&Object.keys(e).forEach(n=>{let s=e[n];s!=null&&(r[n]=String(s))}),r}async function zft(t,e,r,n){let s=await Ae.get(r,{responseType:"stream",timeout:3e4,maxRedirects:5,validateStatus:()=>!0,headers:bNr(t,n)}),i=["content-type","content-length","accept-ranges","content-range","cache-control","etag","last-modified"];return e.code(s.status),i.forEach(a=>{let o=s.headers?.[a];o!=null&&e.header(a,o)}),e.send(s.data)}function ENr(t={},e=""){if(hNr.has(String(t.k||"")))return!0;try{let r=String(new URL(String(e||"")).hostname||"").toLowerCase();return r.includes("mcloud.139.com")||r.includes("yun.139.com")}catch{return!1}}function _Nr(t=""){try{return new URL(String(t||"")).toString()}catch{return String(t||"")}}async function xle(t,e,r,n=""){let s=gNr(e.params.mediaId);if(!s)return r.code(404),"";let i=await xNr(t,s);if(!i||!i.k||!i.f||!i.p)return r.code(404),"";let a={spiderKey:i.k,spiderType:i.t,apiBase:String(i.a||"")},o=await am(t,a,i.f,i.p,e).catch(()=>null),c=um(o||{},String(e.query?.line||""));if(!c.url)return r.code(404),"";let u=String(n||"").trim(),l=u;try{let d=String(e.raw?.url||""),f=`/${String(e.params.mediaId||"")}/`,p=d.indexOf(f);if(p>=0){let m=d.slice(p+f.length).trim();m&&(l=m)}}catch{}if(u&&!/^stream\./i.test(u))try{let d=new URL(c.url),f=new URL(l||u,d);return zft(e,r,f.toString(),c.header)}catch{return r.code(400),""}try{let d=new URL(c.url);if(!["http:","https:"].includes(d.protocol))return r.code(403),""}catch{return r.code(400),""}return ENr(i,c.url)||Object.keys(c.header||{}).length>0?zft(e,r,c.url,c.header):r.redirect(307,_Nr(c.url))}async function ble(t){let e=async(r,n)=>{t.embyExtractToken(r)&&await t.embyRequireAuth(r,n)};t.get("/:mediaId/AdditionalParts",{preHandler:e},async()=>Ft([])),t.get("/:mediaId/stream.mkv",{preHandler:e},async(r,n)=>xle(t,r,n,"stream.mkv")),t.get("/:mediaId/:fileName",{preHandler:e},async(r,n)=>xle(t,r,n,String(r.params.fileName||""))),t.get("/:mediaId/*",{preHandler:e},async(r,n)=>xle(t,r,n,String(r.params["*"]||""))),t.get("/:mediaId/subtitles/:subtitleId",{preHandler:e},async(r,n)=>(n.code(404),""))}var SNr=new Set(["tgchannel","tgsou","pansou","panta"]),vNr=!1;function INr(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function CNr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function Yft(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function TNr(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function wNr(t){let r=String(t?.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t?.protocol||"http",s=String(t?.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t?.headers?.host||"127.0.0.1";return`${r}://${s}`}function RNr(t,e,r="mkv"){return`${wNr(t)}/emby${Zft(t,e,r,!0)}`}function Zft(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t?.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function NNr(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=SNr.has(String(r?.k||""))?"m3u8":"mkv",a=Yft(String(r?.p||""),i),o=RNr(e,s,a),c=Zft(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(vNr&&INr(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await am(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=um(m||{},String(n||""));h.url&&CNr(h.url)&&(a=Yft(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function ONr(t,e,r,n,s,i){let a=String(r?.vod_name||""),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;f<n.length;f+=1){let p=n[f],m={k:e.spiderKey,t:e.spiderType,v:String(r.vod_id),l:f,...e.apiBase?{a:e.apiBase}:{}};a&&(m.n=a),o&&(m.u=o),c&&(m.r=c),u&&(m.y=u);let h=wn("sea",m),A={Name:p.flag||`\u7B2C${f+1}\u5B63`,Id:h,ParentId:s,SeriesId:s,SeriesName:a,IndexNumber:f+1,ChildCount:p.episodes.length,ServerId:i,IsFolder:!0,Type:"Season",ImageTags:{Primary:h},BackdropImageTags:[],UserData:ss()},b=`s${GM(r,p,f)}`,y=d.get(b);y===void 0&&(y=await zM(t,"season",{spiderRef:e,vod:r,line:p,lineIndex:f})||null,d.set(b,y)),y&&Object.assign(A,y),l.push(A)}return l}async function PNr(t,e,r,n,s,i,a,o=0,c=void 0){let u=String(n?.vod_name||""),l=String(n?.vod_pic||"").trim(),d=String(n?.tmdbHintRemarks||n?.vod_remarks||"").trim(),f=String(n?.tmdbHintYear||n?.vod_year||"").trim(),p=s?.line,m=Number(s?.lineIndex||0),h=Number(s?.episodeOffset||0),g=(Array.isArray(p?.episodes)?p.episodes:[])[o];if(!p||!g?.playId)return null;let b=h+o,y=fA(g?.name,b+1),x={k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:m,e:b,f:p.flag,p:g.playId,...r.apiBase?{a:r.apiBase}:{}};u&&(x.n=u),l&&(x.u=l),d&&(x.r=d),f&&(x.y=f);let v=wn("ep",x),I=await NNr(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:String(n.vod_id),l:m,e:b,f:p.flag,p:g.playId},String(p.flag||`\u7EBF\u8DEF${m+1}`)),R={Name:g.name||`\u7B2C${b+1}\u96C6`,Id:v,ParentId:i,SeasonId:wn("sea",{k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:m,...r.apiBase?{a:r.apiBase}:{},...u?{n:u}:{},...l?{u:l}:{},...d?{r:d}:{},...f?{y:f}:{}}),SeriesId:i,SeriesName:u,SeasonName:p.flag||`\u7B2C${m+1}\u5B63`,IndexNumber:y,ParentIndexNumber:m+1,ServerId:a,IsFolder:!1,Type:"Episode",MediaType:"Video",CanPlay:!0,PrimaryImageAspectRatio:.6667,ImageTags:{Primary:v},BackdropImageTags:[],UserData:ss(),MediaSources:[I]};if(c!==void 0)return c&&Object.assign(R,c),R;let w=await m2(t,{spiderRef:r,vod:n,line:p,lineIndex:m,episode:g,episodeIndex:b});return w&&Object.assign(R,w),R}function kNr(t=[]){return t.reduce((e,r)=>e+(Array.isArray(r?.line?.episodes)?r.line.episodes.length:0),0)}async function ept(t,e,r,n,s,i,a,o=1/0){let c=[],u=Number(o),l=Number.isFinite(u)&&u>0?Math.floor(u):1/0;for(let d of s){let f=Array.isArray(d?.line?.episodes)?d.line.episodes:[],p=Number(d?.episodeOffset||0),m=await VM(t,{spiderRef:r,vod:n,line:d?.line,lineIndex:Number(d?.lineIndex||0),episodes:f,episodeOffset:p});for(let h=0;h<f.length;h+=1){let A=await PNr(t,e,r,n,d,i,a,h,m[h]??null);if(A&&c.push(A),c.length>=l)return c}}return c}function tpt(t,e){if(!t?.payload||typeof t.payload!="object"||t.type==="vod")return e;let r=t.payload,n=String(r.k||""),s=String(r.v||"");return!n||!s?e:wn("vod",{k:n,t:Number(r.t||3),v:s,...r.a?{a:String(r.a||"")}:{},...r.n?{n:String(r.n||"")}:{},...r.u?{u:String(r.u||"")}:{}})}function rpt(t=[],e={},r=null){let n=String(Xr(e,["seasonid","SeasonId","seasonId"],""));if(n){let i=Fs(n);if(i?.type==="sea"){let a=Number(i.payload?.l||0),o=t[a];return o?[{line:o,lineIndex:a}]:[]}}let s=Number(Xr(e,["season","Season"],NaN));if(Number.isFinite(s)&&s>0){let i=s-1,a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="sea"){let i=Number(r.payload?.l||0),a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="ep"){let i=Number(r.payload?.l||0),a=Number(r.payload?.e||0),o=t[i];return!o||!o.episodes[a]?[]:[{line:{...o,episodes:[o.episodes[a]]},lineIndex:i,episodeOffset:a}]}return t.map((i,a)=>({line:i,lineIndex:a}))}function DNr(t,e,r,n=[]){let i=c2(t,e,r)?.decoded?.payload||null;if(!i)return n;let a=Number(i.l||0),o=Number(i.e||0),c=n.find(l=>Number(l?.lineIndex||0)===a),u=Array.isArray(c?.line?.episodes)?c.line.episodes:[];return u[o]?[{...c,episodeOffset:o,line:{...c.line,episodes:u.slice(o)}}]:n}async function Ele(t,e){let r=Fs(e);if(!r||!["vod","sea","ep"].includes(r.type))return null;let n=r.payload||{},s=Xl(n),i=String(n.v||"");if(!s.spiderKey||!i)return null;let a=await Pc(t,s,i).catch(()=>null),o=kc(a);if(!o)return null;yA(o,n),!String(o?.vod_pic||"").trim()&&n?.u&&(o.vod_pic=String(n.u||"").trim());let c=go(o.vod_play_from,o.vod_play_url);return c.length?{decoded:r,spiderRef:s,vod:o,lines:c}:null}async function Jft(t,e,r={},n=null){let s=await Ele(t,e);if(!s)return[];let{decoded:i,spiderRef:a,vod:o,lines:c}=s,u=rpt(c,r,i);if(!u.length)return[];let l=tpt(i,e);return ept(t,n,a,o,u,l,t.embyContext.config.serverId)}async function Xft(t,e){let r=await Ele(t,e);if(!r)return[];let{spiderRef:n,vod:s,lines:i}=r;return ONr(t,n,s,i,e,t.embyContext.config.serverId)}async function _le(t){let e={preHandler:t.embyRequireAuth};t.get("/Persons",e,async()=>Ft([])),t.get("/Genres",e,async()=>Ft([])),t.get("/Tags",e,async()=>Ft([])),t.get("/OfficialRatings",e,async()=>Ft([])),t.get("/Years",e,async()=>Ft([])),t.get("/Studios",e,async()=>Ft([])),t.get("/Shows/NextUp",e,async r=>{let n=r.query||{},s=String(Xr(n,["SeriesId","seriesId"],"")).trim(),i=Pu(Xr(n,["Limit","limit"],1),1),a=r.embyUser?.Id||t.embyContext.user.id;if(!s)return Ft([]);let o=await Ele(t,s);if(!o)return Ft([]);let{decoded:c,spiderRef:u,vod:l,lines:d}=o,f=tpt(c,s),p=DNr(t,a,f,rpt(d,n,c));if(!p.length)return Ft([]);let m=kNr(p),h=Us(t,a,await ept(t,r,u,l,p,f,t.embyContext.config.serverId,i));return TNr(t,"nextup.result",{seriesId:s,total:m,first:h[0]?{id:h[0].Id,type:h[0].Type,canPlay:h[0].CanPlay,mediaSourceCount:Array.isArray(h[0].MediaSources)?h[0].MediaSources.length:0}:null}),Ft(h,m)}),t.get("/Shows/:seriesId/Seasons",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Us(t,o,await Xft(t,a));return Ft(Ca(c,s,i),c.length)}),t.get("/Shows/:seriesId/Episodes",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Us(t,o,await Jft(t,a,n,r));return Ft(Ca(c,s,i),c.length)}),t.get("/Items/:itemId/Seasons",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Us(t,o,await Xft(t,a));return Ft(Ca(c,s,i),c.length)}),t.get("/Items/:itemId/Episodes",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Us(t,o,await Jft(t,a,n,r));return Ft(Ca(c,s,i),c.length)}),t.get("/Sessions",e,async r=>[{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SleepTimerMode:"None",SubtitleOffset:0,Shuffle:!1,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",Protocol:"HTTP/1.1",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:t.embyContext.config.serverId,ServerId:t.embyContext.config.serverId,UserId:r.embyUser?.Id||"",UserName:r.embyUser?.Name||"",Client:"",LastActivityDate:$s(),DeviceName:"",InternalDeviceId:0,DeviceId:"",ApplicationVersion:t.embyContext.config.version,SupportedCommands:[],SupportsRemoteControl:!1}]),t.post("/Sessions/Playing",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await u2(t,s,r.body||{},"playing"),n.code(204).send()}),t.post("/Sessions/Playing/Progress",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await u2(t,s,r.body||{},"progress"),n.code(204).send()}),t.post("/Sessions/Playing/Stopped",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await u2(t,s,r.body||{},"stopped"),n.code(204).send()}),t.post("/Sessions/Playing/Ping",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await u2(t,s,r.body||{},"ping"),n.code(204).send()}),t.get("/DisplayPreferences/Usersettings",e,async()=>({Id:"usersettings",CustomPrefs:{},SortOrder:"Ascending"})),t.get("/Environment/DefaultDirectoryBrowser",e,async()=>Ft([]))}function npt(t){return t&&String(t).match(/Token="?([^",\s]+)"?/i)?.[1]||""}var Sle=Symbol("embyLogStartAt"),BNr=/(token|password|passwd|pwd|pw|authorization|cookie|api[_-]?key|session)/i;function n6(t){let e=String(t??"");return e?e.length<=6?"***":`${e.slice(0,2)}***${e.slice(-2)}`:""}function HE(t,e=0,r=new WeakSet){if(t==null)return t;if(typeof t=="string")return t.length>240?`${t.slice(0,240)}...(truncated)`:t;if(typeof t!="object")return t;if(r.has(t))return"[Circular]";if(e>=3)return"[MaxDepth]";if(r.add(t),Array.isArray(t))return t.slice(0,10).map(s=>HE(s,e+1,r));let n={};for(let[s,i]of Object.entries(t)){if(BNr.test(s)){n[s]=n6(i);continue}n[s]=HE(i,e+1,r)}return n}function LNr(t){return t.routeOptions?.url||t.url||t.raw?.url||""}function vle(t,e){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["0","false","off","no"].includes(r)?!1:["1","true","on","yes"].includes(r)?!0:e}function MNr(t,e,r){let n=String(e||"").trim();if(!n){r(null,{});return}try{r(null,JSON.parse(n))}catch(s){s.statusCode=400,r(s)}}function x2(t={}){let e=String(process.env.EMBY_TMDB_API_KEY||t.tmdbApiKey||"");return{enable:t.enable!==!1,username:String(process.env.EMBY_USERNAME||t.username||"CatPawPlay"),password:String(process.env.EMBY_PASSWORD||t.password||"CatPawPlay"),serverName:String(process.env.EMBY_SERVER_NAME||t.serverName||"CatPawPlay"),serverId:String(process.env.EMBY_SERVER_ID||t.serverId||"mycatpaw"),version:String(process.env.EMBY_VERSION||t.version||"4.8.0.80"),apiKey:String(process.env.EMBY_API_KEY||t.apiKey||""),searchSourcePrefix:vle(process.env.EMBY_SEARCH_SOURCE_PREFIX,t.searchSourcePrefix!==!1),tokenTtlMs:Number(t.tokenTtlMs||30*24*60*60*1e3),requestLog:vle(process.env.EMBY_REQUEST_LOG,process.env.NODE_ENV==="development"?t.requestLog!==!1:t.requestLog===!0),recoverToken:t.recoverToken!==!1&&process.env.EMBY_RECOVER_TOKEN!=="0",tmdbEnable:vle(process.env.EMBY_TMDB_ENABLE,t.tmdbEnable!==!1&&!!e),tmdbApiKey:e,tmdbLanguage:String(process.env.EMBY_TMDB_LANGUAGE||t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(process.env.EMBY_TMDB_IMAGE_BASE||t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function Ile(t){let e=null;try{e=await t.db?.getObjectDefault("/emby",null)}catch{}let r=null;try{r=await t.db?.getObjectDefault("/embyPlayback",null)}catch{}let n=x2({...t.config?.emby||{},...e&&typeof e=="object"?e:{}}),s={config:n,cache:vM({max:1200}),tmdbStore:null,tmdbClientState:null,tokens:new Map,user:{id:"emby-user-001",name:n.username},playbackState:HM(r),playbackPersistTimer:null};globalThis.__catpawEmbyRuntime=s,t.addContentTypeParser("application/json",{parseAs:"string"},MNr),t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(i,a,o)=>{try{let c=new URLSearchParams(String(a)),u={};for(let[l,d]of c.entries())u[l]=d;o(null,u)}catch(c){o(c)}}),t.decorate("embyContext",s),t.decorate("embyExtractToken",function(a){let o=a.query||{};return o["x-emby-token"]||o.api_key||o["X-Emby-Token"]||a.headers?.["x-emby-token"]||npt(a.headers?.["x-emby-authorization"])||npt(a.headers?.authorization)||""}),t.decorate("embyRequireAuth",async function(a,o){if(!s.config.enable){o.code(503).send("Emby disabled");return}let c=t.embyExtractToken(a);if(!c){o.code(401).send("Unauthorized");return}if(s.config.apiKey&&c===s.config.apiKey){a.embyToken=c,a.embyUser={Id:s.user.id,Name:s.user.name};return}let u=s.tokens.get(c);if(!u){if(!s.config.recoverToken){o.code(401).send("Unauthorized");return}let l=Date.now();u={token:c,userId:s.user.id,userName:s.user.name,createdAt:l,lastUsedAt:l,expireAt:s.config.tokenTtlMs>0?l+s.config.tokenTtlMs:0,device:{client:"RecoveredClient",device:"RecoveredDevice",deviceId:"",version:s.config.version}},s.tokens.set(c,u),s.config.requestLog&&console.warn(`[Emby Auth] recovered token session token=${n6(c)} path=${a.raw?.url||a.url}`)}if(u.expireAt>0&&u.expireAt<=Date.now()){s.tokens.delete(c),o.code(401).send("Unauthorized");return}u.lastUsedAt=Date.now(),a.embyToken=c,a.embySession=u,a.embyUser={Id:u.userId,Name:u.userName}}),t.addHook("preHandler",async i=>{if(!s.config.requestLog)return;i[Sle]=process.hrtime.bigint();let a=LNr(i),o=HE(i.query||{}),c=i.body===void 0?void 0:HE(i.body),u=t.embyExtractToken(i),l=u?n6(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.log(`[Emby Req] #${i.id} ${i.method} ${i.raw.url} route=${a}${d}${f} token=${l}`)}),t.addHook("onError",async(i,a,o)=>{if(!s.config.requestLog)return;let c=i[Sle],u=typeof c=="bigint"?(Number(process.hrtime.bigint()-c)/1e6).toFixed(1):"-",l=a.statusCode||o.statusCode||500;console.error(`[Emby Err] #${i.id} ${i.method} ${i.raw?.url||i.url} status=${l} cost=${u}ms message=${o.message}`)}),t.addHook("onResponse",async(i,a)=>{if(!s.config.requestLog)return;let o=i[Sle],c=typeof o=="bigint"?(Number(process.hrtime.bigint()-o)/1e6).toFixed(1):"-";console.log(`[Emby Res] #${i.id} ${i.method} ${i.raw.url} status=${a.statusCode} cost=${c}ms`)}),t.setNotFoundHandler((i,a)=>{if(s.config.requestLog){let o=HE(i.query||{}),c=i.body===void 0?void 0:HE(i.body),u=t.embyExtractToken(i),l=u?n6(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.warn(`[Emby 404] ${i.method} ${i.raw.url}${d}${f} token=${l}`)}a.code(404).send("Not Found")}),t.addHook("onClose",async()=>{s.tokens.clear(),s.cache.clear(),s.tmdbStore?.memory?.clear?.(),s.tmdbStore?.pending?.clear?.(),s.tmdbStore=null,s.tmdbClientState=null,s.playbackPersistTimer&&(clearTimeout(s.playbackPersistTimer),s.playbackPersistTimer=null),globalThis.__catpawEmbyRuntime===s&&(globalThis.__catpawEmbyRuntime=null)}),t.register(zue,{prefix:"/System"}),t.register(Vue,{prefix:"/Users"}),t.register(Jue,{prefix:"/Library"}),t.register(lle,{prefix:"/Users"}),t.register(Ale,{prefix:"/Items"}),t.register(ble,{prefix:"/Videos"}),t.register(_le)}function Cle(t={},e={}){let r=e.includeSecrets===!0;return{enable:t.enable!==!1,username:String(t.username||""),password:String(t.password||""),serverName:String(t.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,...r?{tmdbApiKey:String(t.tmdbApiKey||"")}:{},tmdbLanguage:String(t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function spt(t){let e=await t.db.getObjectDefault("/emby",null);return e&&typeof e=="object"?e:{}}function ipt(){let t=globalThis.__catpawEmbyRuntime;return t&&typeof t=="object"?t:null}function apt(t={}){let e=ipt();if(!e?.config)return;let r=String(e.config.username||""),n=String(e.config.password||""),s=String(e.config.tmdbApiKey||""),i=Object.prototype.hasOwnProperty.call(t,"tmdbApiKey"),a=String(t.username||r),o=String(i?t.tmdbApiKey||"":e.config.tmdbApiKey||"");Object.assign(e.config,{enable:t.enable!==!1,username:a,password:String(t.password||""),serverName:String(t.serverName||e.config.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,tmdbApiKey:o,tmdbLanguage:String(t.tmdbLanguage||e.config.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||e.config.tmdbImageBase||"https://image.tmdb.org/t/p/original")}),e.user.name=a,r!==e.config.username||n!==e.config.password?e.tokens?.clear():e.tokens?.size&&e.tokens.forEach(l=>{l.userName=e.config.username}),s!==o&&(e.tmdbStore?.memory?.clear?.(),e.tmdbStore?.pending?.clear?.(),e.tmdbClientState=null)}var WNr=async t=>{let e=await spt(t),r=x2({...t.config?.emby||{},...e});return Cle(r,{includeSecrets:!0})},$Nr=async(t,e)=>{let r=await spt(t),n=x2({...t.config?.emby||{},...r,...e&&typeof e=="object"?e:{}}),s=Cle(n,{includeSecrets:!0});return await t.db.push("/emby",s),apt(s),s},FNr=async t=>{await t.db.delete("/emby");let e=Cle(x2(t.config?.emby||{}),{includeSecrets:!0});return apt(e),e},UNr=async t=>{let e=ipt();e?.tmdbStore?.memory?.clear?.(),e?.tmdbStore?.pending?.clear?.(),e&&(e.tmdbStore=null,e.tmdbClientState=null),await t.db.delete("/embyTmdb").catch(()=>{})};async function Tle(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await WNr(e.server)})}),t.put("/setting",async(e,r)=>{await $Nr(e.server,e.body||{}),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await FNr(e.server),r.send({code:0})}),t.post("/tmdb/cache/clear",async(e,r)=>{await UNr(e.server),r.send({code:0})})}var qNr=t=>{let e=Jw(t,{includePrefix:!1}).replace(/\/$/,""),r=TM()?CM():null;return[{key:"t4",name:"T4 \u8BA2\u9605",url:Xw(e,"/t4")},{key:"uz",name:"UZ \u8BA2\u9605",url:Xw(e,"/uz")},{key:"cat",name:"\u732B\u6E90\u8BA2\u9605",url:Xw(e,"/index.js.md5",r)},{key:"emby",name:"Emby \u670D\u52A1\u5668",url:Xw(e,"/emby")}]};async function wle(t){t.get("/",(e,r)=>{r.type("text/html").send(`
<!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:qNr(e)}})}),t.register(Sue,{prefix:"/quark"}),t.register(sK,{prefix:"/uc"}),t.register(vue,{prefix:"/uc-tv"}),t.register(GK,{prefix:"/115"}),t.register(oae,{prefix:"/muou"}),t.register(pV,{prefix:"/duoduo"}),t.register(dae,{prefix:"/labi"}),t.register(hae,{prefix:"/shandian"}),t.register(xae,{prefix:"/ouge"}),t.register(Sae,{prefix:"/erxiao"}),t.register(Lae,{prefix:"/huban"}),t.register(Fae,{prefix:"/xiaoban"}),t.register(Iue,{prefix:"/tianyi"}),t.register(eoe,{prefix:"/wanou"}),t.register(Cue,{prefix:"/leijing"}),t.register(noe,{prefix:"/zhizhen"}),t.register(boe,{prefix:"/tgsou"}),t.register(Ooe,{prefix:"/pansou"}),t.register(Tue,{prefix:"/pan123"}),t.register(Rue,{prefix:"/xunlei"}),t.register(Oue,{prefix:"/ali"}),t.register(kue,{prefix:"/baidu"}),t.register(Bue,{prefix:"/guangyapan"}),t.register(Uue,{prefix:"/yidong"}),t.register(loe,{prefix:"/tgchannel"}),t.register(Soe,{prefix:"/tgfilebot"}),t.register(Oce,{prefix:"/sites"}),t.register(jue,{prefix:"/pans"}),t.register(Hue,{prefix:"/backup"}),t.register(kce,{prefix:"/danmu"}),t.register(Tle,{prefix:"/emby"}),t.register(gce,{prefix:"/emby-spider"}),t.register(Tce,{prefix:"/alist-video"}),t.register(Mce,{prefix:"/t4"}),t.register(Hce,{prefix:"/cms"}),t.register(Boe,{prefix:"/live2vod"}),t.register(Pae,{prefix:"/123ypzysq"})}var jr=null,Rle="__catpawProfile",s6=Number.parseInt(process.env.CATPAW_LOG_LIMIT||"1500",10)||1500,jNr=Number.parseInt(process.env.CATPAW_LOG_TEXT_LIMIT||"4096",10)||4096,xA=[],dpt=["log","info","warn","error","debug"],b2={},i6=!1;function Du(t,e=jNr){let r=String(t||"");if(!Number.isFinite(e)||e<=0||r.length<=e)return r;let n=Math.max(0,Math.floor(e*.75)),s=Math.max(0,e-n);return`${r.slice(0,n)}...(truncated ${r.length-e} chars)...${r.slice(-s)}`}function HNr(t){if(typeof t=="string")return Du(t);if(t instanceof Error)return Du(JSON.stringify(a6(t)));try{return Du(JSON.stringify(E2(t)))}catch{try{return Du(String(t))}catch{return"[Unserializable]"}}}function fpt(t,e=2,r=2){let n=String(t||"");return n?n.length<=e+r?"*".repeat(n.length):`${n.slice(0,e)}***${n.slice(-r)}`:""}function E2(t,e=0){if(t==null)return t;if(e>=2)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).length})]`:t;if(Array.isArray(t))return{type:"array",length:t.length,sample:t.slice(0,3).map(r=>E2(r,e+1))};if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t)){let i=n.toLowerCase();if(["cookie","cookies","token","authorization","auth","passwd","password","session","sess"].some(a=>i.includes(a))){s&&typeof s=="object"&&!Array.isArray(s)?r[n]={type:"object",keys:Object.keys(s).length,sampleKeys:Object.keys(s).slice(0,3)}:r[n]=fpt(s);continue}r[n]=E2(s,e+1)}return r}return typeof t=="string"&&t.length>120?`${t.slice(0,40)}...(${t.length} chars)...${t.slice(-12)}`:t}function ppt(t){if(!t||typeof t!="object")return{};let e=typeof t.toJSON=="function"?t.toJSON():t,r={};for(let[n,s]of Object.entries(e||{})){let i=n.toLowerCase();["cookie","authorization","token","secret","password"].some(a=>i.includes(a))?r[n]=fpt(s):r[n]=Du(s,260)}return r}function QNr(t){if(!(!t||typeof t!="object"))return{method:t.method,url:Du(t.url||"",500),baseURL:Du(t.baseURL||"",260),timeout:t.timeout,maxContentLength:t.maxContentLength,maxBodyLength:t.maxBodyLength,proxy:t.proxy,headers:ppt(t.headers)}}function GNr(t){if(!(!t||typeof t!="object"))return{method:t.method,protocol:t.protocol,host:t.host||t.hostname,path:Du(t.path||t.pathname||"",500),currentUrl:Du(t._currentUrl||"",500)}}function KNr(t){if(!t||typeof t!="object")return;let e=t.data;return{status:t.status,statusText:t.statusText,headers:ppt(t.headers),data:typeof e=="string"?Du(e,1e3):E2(e)}}function a6(t){if(!t||typeof t!="object")return t;let e={name:t.name,message:t.message||String(t),code:t.code,status:t.status,statusCode:t.statusCode,stack:Du(t.stack||"",4e3)},r=QNr(t.config),n=GNr(t.request),s=KNr(t.response);return r&&(e.config=r),n&&(e.request=n),s&&(e.response=s),e}function VNr(t){return t instanceof Error?a6(t):t}function zNr(){return process.env.NODE_ENV==="development"?!1:{serializers:{err:a6,error:a6}}}function YNr(t){if(!t||typeof t!="object")return t;let e={action:t.action||"-"};if(t.action==="saveProfile"&&t.opt&&typeof t.opt=="object"){let r=t.opt;return e.opt={keys:Object.keys(r),sitesCount:Array.isArray(r.sites?.list)?r.sites.list.length:void 0,pansCount:Array.isArray(r.pans?.list)?r.pans.list.length:void 0,quarkKeys:r.quark&&typeof r.quark=="object"?Object.keys(r.quark).length:void 0,ucKeys:r.uc&&typeof r.uc=="object"?Object.keys(r.uc).length:void 0},e}return E2(t)}function JNr(t,e){xA.push({ts:new Date().toISOString(),level:t,msg:e.map(HNr).join(" ")}),xA.length>s6&&xA.splice(0,xA.length-s6)}function XNr(){i6||(dpt.forEach(t=>{let e=console[t];typeof e=="function"&&(b2[t]=e.bind(console),console[t]=(...r)=>{JNr(t,r),Cit()||b2[t](...r.map(VNr))})}),i6=!0)}function ZNr(){i6&&(dpt.forEach(t=>{b2[t]&&(console[t]=b2[t],delete b2[t])}),i6=!1)}function eOr(t){t.get("/api/catpaw-logs",async e=>{let r=Number.parseInt(e.query?.limit,10),n=Number.isFinite(r)&&r>0?Math.min(r,s6):s6,s=xA.slice(-n);return{success:!0,total:xA.length,count:s.length,logs:s}}),t.post("/api/catpaw-logs/clear",async()=>(xA.length=0,{success:!0}))}function o6(...t){}function _2(t){return Object.prototype.toString.call(t)==="[object Object]"}function tOr(t){let e=t?.[Rle];return _2(e)?e:null}function opt(t){if(!_2(t))return{};if(!(Rle in t))return t;let{[Rle]:e,...r}=t;return r}function Nle(t){return _2(t)&&Object.keys(t).length>0}function cpt(t){if(t===void 0)return t;try{return JSON.parse(JSON.stringify(t))}catch{return t}}function upt(t,e){if(!Nle(t))return{found:!1};let r=String(e||"/");if(r==="/"||r==="")return{found:!0,value:t};let n=r.split("/").filter(Boolean),s=t;for(let i of n){if(!_2(s)&&!Array.isArray(s))return{found:!1};if(!Object.prototype.hasOwnProperty.call(s,i))return{found:!1};s=s[i]}return{found:!0,value:s}}function rOr(t,e){return{...t,...e}}function nOr(t,e){if(!Nle(e))return;let r=t.getData.bind(t),n=typeof t.getObjectDefault=="function"?t.getObjectDefault.bind(t):null;t.getData=async s=>{let i=upt(e,s);return i.found?cpt(i.value):r(s)},n&&(t.getObjectDefault=async(s,i)=>{let a=upt(e,s);return a.found?cpt(a.value):n(s,i)})}async function sOr(t){let e=tOr(t),r=Nle(e),n=r?rOr(opt(t),e):opt(t);jr=(0,lpt.default)({serverFactory:catServerFactory,forceCloseConnections:!0,caseSensitive:!1,logger:zNr(),maxParamLength:10240}),XNr(),eOr(jr),globalThis.messageToDart=jr.messageToDart=async u=>{try{console.log("messageToDart",YNr(u));let l=catDartServerPort();return l==0?null:(await Ae.post(`http://127.0.0.1:${l}/msg`,u)).data}catch(l){return console.error(l),null}},jr.address=function(){let u=this.server.address();return u.url=`http://${k0()}:${u.port}`,u.dynamic="js2p://_WEB_",u},jr.addHook("onError",async(u,l,d)=>(console.error("[fastify-error]",d),d.statusCode||(d.statusCode=500),d)),jr.addHook("onRequest",async u=>{if(process.env.NODE_ENV!=="development")return;let l=String(u.raw?.url||u.url||"");if(/stream\.(m3u8|mkv)|\/videos\//i.test(l)){let d=String(u.headers?.host||"-");console.log(`[Stream Probe] ${u.method} ${l} host=${d}`)}}),jr.stop=!1,jr.config=n;let s=9321;o6("before start()",{danmuPort:s,node:process.version,platform:`${process.platform}/${process.arch}`}),wit(s),o6("after start()",{danmuPort:s}),jr.db=new c6.JsonDB(new c6.Config((process.env.NODE_PATH||".")+"/default.db.json",!0,!0,"/",!0));let i=jr.db.getData.bind(jr.db);r&&nOr(jr.db,n);let a=jr.db.push.bind(jr.db);jr.db.push=async(...u)=>{let l=await a(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l};let o=jr.db.delete.bind(jr.db);jr.db.delete=async(...u)=>{let l=await o(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l},r||jr.messageToDart({action:"queryProfile"}).then(u=>{if(u&&Object.keys(u).length>0){let l=_2(u)?u:{};a("/",l)}}),jr.register(iue,{db:jr.db,config:n}),jr.register(wle,{prefix:"/website"}),jr.register(Ile,{prefix:"/emby"}),globalThis.Pans=await que(jr),await Ldt(jr),globalThis.getPanName=u=>globalThis.Pans.find(l=>l.key===u)?.name,globalThis.getPanEnabled=u=>globalThis.Pans.find(l=>l.key===u)?.enable;let c=(u,l=!0)=>{let d=l&&process.env.DEV_HTTP_PORT?process.env.DEV_HTTP_PORT:u;jr.listen({port:d,host:"0.0.0.0"},(f,p)=>{f?(console.error(f),f.code==="EADDRINUSE"&&(console.log(`Port ${d} is already in use. Trying next available port...`),c(u+1,!1))):console.log(`Server listening on ${p}`)})};c(2333)}async function iOr(){o6("before stop()"),Rit(),o6("after stop()"),jr&&(jr.close(),jr.stop=!0),ZNr(),jr=null}0&&(module.exports={start,stop});
/*! 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 *)
*/